# GUSEK (GLPK Under Scite Extended Kit)

pt-br | us-en

©2008-2018 Luiz Bettoni <bettoni@sollve.com.br>

http://gusek.sourceforge.net

## Index

- Introduction

> - License

- Download and Install
- Quick Guide

> - User Interface
> - GMPL Models

> > - Single File Model
> > - Multiple Files Model

> - MPS/LP Models

- References
- Changelog

## Introduction

GUSEK provide an open source LP/MILP IDE for Win32, packing a custom version of the SciTE editor linked to the GLPK standalone solver.

Please note that the GUSEK is in beta version. It may be unstable, use at your own risk. Advices and questions can be reported to the author.

### License

This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but without any warranty See the GNU General Public License for more details.

## Download and Install

The GUSEK Project content is hosted at sourceforge.net/projects/gusek. The source can be reached by SVN: `https://gusek.svn.sourceforge.net/svnroot/gusek/trunk`.

To install GUSEK:

- Download the latest release from sourceforge: GUSEK Download
- Unzip it to any folder, at your option (GUSEK is a portable application)
- Open it running the `gusek.exe` file

Notes: GUSEK can be added to Windows Explorer contextual menu and associated to GMPL model extensions. See `Tools > Windows Integration` for options. Warnings: some Windows editions may require GUSEK running with Administrator rights to do the integration. If you move the GUSEK folder you need select this options again to register the new path.

## Quick Guide

### User Interface

GUSEK can open multiple files simultaneously, using file extensions to identify them:

- `.mod`: GMPL Model file (can contain problem data too);
- `.dat`: GMPL Data file;
- `.out`: GLPK Output file;
- `.mps`: Free MPS / Fixed MPS Model file;
- `.glp`: GLPK LP/MIP Model file;
- `.lp`: Cplex LP Model file;

Specific resources for GLPK models development are in the `Tools` menu. All others resources are from standard SciTE editor. The most useful commands can be called from keyword shortcuts, toolbar buttons and tab contextual menus. They are:

- `Compile`: Verify model / data sintax;
- `Go`: Solve current model;
- `Build GLPK LP/MIP`: Build the problem in GLPK LP/MIP format;
- `Build Cplex LP`: Build the problem in Cplex LP format;
- `Build MPS`: Build the problem in Free MPS format;
- `Use External .dat`: Enable / disable use of external data files (see GMPL Models);
- `Set as Default .dat File`: Set the actual data file as “default data file”, forcing it use in model runs ;
- `Add as Extra .dat File`: Add the actual data file as "extra data file" (only used for multiple data files);
- `Clear Extra .dat Files`: Clear the register of "extra data files" (only used for multiple data files);
- `Generate Output File on Go`: Enable / disable the output file creation and display after solve;
- `Generate LP Sensitivity Analysis`: Enable / disable the sensitivity analysis file creation and display after solve (only LP);
- `Use Improved MILP (All Cuts)`: Enable / disable use of cuts to improve MILP solving (include all cuts). Advanced GLPK users: run parameters can be modified at field 1 in `View > Parameters`;
- `Use with Free MPS Format`: Use "Free MPS" format instead "Fixed MPS" for read/write MPS files;

### GMPL Models

The models are developed using the default GLPK model language, the GMPL (GNU MathProg Language). Some examples from the original GLPK package are in the GUSEK "examples" folder. The model can be developed in two ways:

#### Single File Model

Model and data are in a single file with `.mod` extension. Good for didatic models or single data sets problems.

Before run see if `Tools > Use External .dat` is unchecked (default).

#### Multiple Files Model

Model is in a `.mod` file, but data are in a distinct `.dat` file. Useful for complex models and dinamic data set problems.

To run it you need check the `Tools > Use External .dat` menu item. In this way the model and data file need to have the same name with their respective extensions (like `prob1.mod` and `prob1.dat`). You can compile, build or go from an opened model or data file.

##### Using a Default Data File

To make easy handling multiple data files with different names you can use the "default data file" resource. It set one data file to all runs, until you unset it or define another default data file. In this way you can compile, build or go only from an opened model file. To use it:

- Open the model and data files to be used;
- Select a data file. Select `Tools > Set as Default .dat File` (present in tab contextual menu too);
- Switch to model file and run it;
- Repeat previous steps to run each set of model/data files.

> Notes:

> - To go back to "same name" model and data file you need to uncheck and check the menu item `Tools > Use External .dat`;
> - You can set multiple extra data files: activate each data file to be used and select `Tools > Add as Extra .dat File`. You cannot repeat data in data files. To disable extra dat files use `Tools > Clear Extra .dat Files`;
> - To help, if you are testing parameters or using multiple data files: you can toggle the status bar (clicking on it) to "edit status" mode or "GLPK parameters" mode.
> - To advanced users: the "default data" and "extra data" filenames parameters can be edited in `View > Parameters`, fields 2 and 3, respectively.

### MPS/LP Models

Gusek also support develop of MPS, GLPK LP/MIP and Cplex LP Models. You can edit, check, run and convert between these formats using the `Tools` menu items.

Default MPS format is "Fixed MPS". You can check `Tools > Work with Free MPS` to to run your "Free MPS" models. This item also defines the type of MPS files builded from GMPL and LP.

## References

GLPK - the GNU LP / MILP solver Kit ©2000 Andrew Makhorin

GLPK for Windows - GLPK command prompt executables for Windows

GLPK Wikibook - Unofficial wide documentation about GLPK and related projects

MinGW - a minimalist GNU port for Windows

PyMathProg - GLPK modelling in Python

Sc1 - a single file executable from SciTE (SCIntilla based Text Editor) ©1998 Neil Hodgson

SciTE Ru-Board Edition - patchs and enhancements to SciTE code

## Changelog

GUSEK 0.2.24 (19/03/2018)

GLPK updated to 4.65.

GUSEK 0.2.23 (04/12/2017)

GLPK updated to 4.64.

GUSEK 0.2.22 (01/12/2017)

Minor fixes on run and convert models.

GUSEK 0.2.21 (02/08/2017)

GLPK updated to 4.63.

GUSEK 0.2.20 (08/04/2016)

GLPK updated to 4.60.

GUSEK 0.2.19 (11/11/2015)

GLPK updated to 4.57.

GUSEK 0.2.18 (26/08/2014)

GLPK updated to 4.55.

GUSEK 0.2.17 (01/04/2014)

GLPK updated to 4.54.

GUSEK 0.2.16 (14/02/2014)

GLPK updated to 4.53.

GUSEK 0.2.15 (19/07/2013)

GLPK updated to 4.52.

GUSEK 0.2.14 (09/07/2013)

GLPK updated to 4.51.

GUSEK 0.2.13 (16/08/2012)

GLPK updated to 4.47.

GUSEK 0.2.12 (15/03/2011)

GLPK updated to 4.45.

GUSEK 0.2.11 (07/06/2010)

GLPK updated to 4.44.

GUSEK 0.2.10 (22/02/2010)

Added support to GLPK LP/MIP format. Some tools itens modified (names, order and shortcuts). GLPK updated to 4.43.

GUSEK 0.2.9 (14/01/2010)

GLPK updated to 4.42.

GUSEK 0.2.8 (30/12/2009)

GLPK updated to 4.41. Added Java files support (as in native SciTE). Added gnuplot files support (testing - thanks to Noli Sicad).

GUSEK 0.2.7 (26/11/2009)

GLPK updated to 4.40 - now GUSEK uses GLPK for Windows pre-build GLPK binaries (thanks to Xypron). Added tips folder (gusek_tips), introducing useful samples to gusek users. Added python files support (as in native SciTE) for PyMathProg modelling (testing).

GUSEK 0.2.6 (27/07/2009)

GLPK updated to 4.39. Minor fix in windows integration.

GUSEK 0.2.5 (05/05/2009)

GLPK updated to 4.38.

GUSEK 0.2.4 (03/04/2009)

Bug correction: now "Stop Execution" really finish glpsol.exe process. GLPK updated to 4.37.

GUSEK 0.2.3 (06/02/2009)

GLPK updated to 4.36.

GUSEK 0.2.2 (23/01/2009)

Added sensitivity bounds menu option (thanks to Wendel de Melo for suggestion). GLPK updated to 4.35.

GUSEK 0.2.1 (10/12/2008)

Improved output panel refresh time (thanks to Andrew Makhorin for GLPK patch). Improved support to MPS / Cplex LP files. Minor fixes and improvements. GLPK Reference Manual included for MPS and Cplex LP helps

GUSEK 0.2.0 (06/12/2008)

First public release. Using GLPK 4.34.

Last changed in 03/2018 by Luiz Bettoni

Project Web Hosted by