Skip to content

Legacy version — EPM v8.5 (Excel)

Before version 9, EPM ran from an Excel workbook driving a set of GAMS files. That generation is archived here for teams that still maintain a v8.5 model.

Archived — not maintained

v8.5 receives no fixes, no support and no new features. Use it only to read or re-run an existing study. For anything new, use the current version — see Installation.


Get the pack

Not published yet

The archive is being prepared for release. Contact the EPM team for a copy in the meantime — there is no download link yet.

Folder Contents
Generic model/ WB_EPM_8_5.xlsb — the blank template — plus the three .gms files
Ghana example/ WB_EPM_8_5_Ghana_Example.xlsb, the .gms files, cplex.opt, README.txt
Running EPM/ How to run the model, how to build base.g00, and the Engine looping tool manual

That is everything needed to run v8.5: a blank workbook to start from, a worked example to compare against, and the original run instructions — which this page summarizes below.

Slide decks, the 2023 reference PDF and the Ghana country study are not in the archive, and neither is the GAMS licence file that shipped in the original folder — bring your own licence. Ask the EPM team if you need the reference PDF.

Earlier releases are archived on Zenodo.


Which version should I use?

  • EPM 9 — CSV + Python (current)


    Inputs as CSV files, orchestrated by Python, solved in GAMS. Full feature set: scenarios, parallel runs, sensitivity and Monte-Carlo analysis, H2 module, automated postprocessing, version control.

    Some familiarity with Python and GAMS helps and unlocks customization, but is not required for a standard run.

    → Get started

  • EPM v8.5 — Excel (legacy)


    All inputs in one .xlsb workbook, launched from GAMS Studio, results written back into Excel. No Python involved — the whole model is driven from the spreadsheet.

    Frozen feature set, and no way to track changes in git.

    → Contents of the pack


How v8.5 works

One Excel workbook holds every input. Three GAMS files do the work:

File Role
WB_EPM_v8_5_main.gms Entry point — reads the workbook, drives the solve
WB_EPM_v8_5_base.gms Core equations (equivalent of today's base.gms)
WB_EPM_v8_5_Report.gms Result extraction back to Excel
flowchart TD
    STUDIO["<b>GAMS Studio</b>\n--XLS_INPUT"]
    BUTTON["<b>RUN button</b>\nin the workbook"]

    XLSB[("<b>WB_EPM_8_5.xlsb</b>\nAll inputs")]

    subgraph gams ["GAMS"]
        direction TB
        MAIN["<b>_main.gms</b>\nreads the workbook"]
        BASE["<b>_base.gms</b>\nequations · CPLEX"]
        REP["<b>_Report.gms</b>\nextraction"]
        MAIN --> BASE --> REP
    end

    OUT[("<b>EPMRESULTS</b>\nExcel results")]

    STUDIO -->|launch| XLSB
    BUTTON -->|launch| XLSB
    XLSB --> MAIN
    REP --> OUT

There is no command line and no scenario system: one workbook is one run. A variant means a separate copy of the whole file — there is nothing equivalent to today's scenarios.csv.


Running it

Two routes. Both need the three .gms files and the workbook in the same folder.

  1. Open the three .gms files together — File → Open in new group.
  2. Set WB_EPM_v8_5_main.gms as the main file (green triangle on its name).
  3. In the argument bar, pass the workbook:
    --XLS_INPUT WB_EPM_8_5.xlsb
    
  4. Run. The Process Log reports progress and tells you when the solve ends.

Step 1 is done once. After that you never leave Excel.

  1. In GAMS Studio, set WB_EPM_v8_5_base.gms as the main file, put s=base in the argument bar and compile. This writes base.g00 — the precompiled model — next to the sources.
  2. Open the workbook, go to the Home tab, and check that every status reads OK and that the GAMS path is right.
  3. Set Output → where results are written. Set Model → pick WB_EPM_v8_5_main.gms.
  4. RUN. A console window tracks the solve and closes on its own; the result file opens automatically, named after Scenario name on the Home tab.

Results are overwritten

From GAMS Studio the output is always written to EPMRESULTS in the model folder, and the next run overwrites it. Rename it after every run you want to keep.


Requirements

  • Windows — the workbook relies on Excel macros
  • Excel able to open .xlsb files, with macros enabled
  • GAMS with a valid CPLEX license, and GAMS Studio to launch runs

Compatibility not guaranteed

v8.5 was last touched in 2024 and has not been tested against recent GAMS releases. It may need adjustment on a current GAMS installation. No support is provided if it does not run.


Archived documentation

Two distinct things carry the "v8.5" name — don't confuse them:

What it is Where
v8.5 Excel The workbook-driven model described on this page. Never on GitHub. Starter pack (see below)
v8.5 git tag The transition era: GAMS files still named WB_EPM_v8_5_*.gms, but already wrapped in Python with CSV inputs. Not an ancestor of main. tree/v8.5/docs

The tag preserves documentation pages that were dropped from this site, notably old/step_by_step.md (adapting the WB_EPM_v8_5_*.gms files by hand) and engine_looping_tool.md (the Engine looping tool, now superseded by Advanced Python Options).


Moving to version 9

The current version expects CSV inputs. See From Excel to CSV for how to port an existing workbook.