Releases: GAMS-dev/gamspy
Releases · GAMS-dev/gamspy
1.18.3
GAMSPy 1.18.3 (2025-12-19)
New features
- #712: Integrate mps2gms to gamspy cli.
Improvements in existing functionality
- #730: Read the values of most model attributes from the trace file. Lazily read others if requested.
- #740: Improve the alignment of constraints in the result of model.toLatex call.
Bug fixes
- #742: Do not perform definition valiation on MPSGE equations since they are generated on the GAMS side.
- #743: Use gp.Number instead of a Python variable in nonbinding equations of MCP models.
- #745: Retrieve universe alias name from stack in case it's not provided instead of autogenerating a name.
1.18.2
GAMSPy 1.18.2 (2025-12-09)
Improvements in existing functionality
- #738: Allow renaming in toLatex function. Support Greek letters in LaTeX format.
Bug fixes
- #739: Fix evaluation of math expression where container is not available in any of the input symbols.
1.18.1
GAMSPy 1.18.1 (2025-12-03)
Improvements in existing functionality
- #736: Add -a shortcut for gamspy install solver --install-all-solvers command. Add -a shortcut for gamspy uninstall solver --install-all-solvers command.
Bug fixes
- #735: Remove number of miro symbols check since there might be containers with no miro symbols.
1.18.0
GAMSPy 1.18.0 (2025-12-01)
Improvements in existing functionality
- #727: Accept the path of an existing solver options file as a valid "solver_options" argument in model.solve and container.writeSolverOptions.
Bug fixes
- #728: Decouple container and socket connection to allow pickling of symbols and containers.
- #729: Fix name mapping of GAMSDict and GAMSDictMap file formats in model.convert function.
- #732: Fix model and path issues of "gamspy run miro" command on Windows.
Miscellaneous internal changes
- #731: Change expected type of the "output" argument to TextIO instead of TextIOWrapper in model.solve.
1.17.2
GAMSPy 1.17.2 (2025-11-10)
New features
- #685: Add FormulationResult class for better accessibility into formulations.
- #718: Add formulation for ReLU activation function with equilibrium constraints.
Bug fixes
- #723: Fix autoretrieval of python name in addX syntax.
Improved documentation
- #685: Add docs for FormulationResult class.
- #718: Add docs for ReLU with equilibrium activation function.
1.17.1
GAMSPy 1.17.1 (2025-10-30)
New features
- #713: Implement softplus activation function
Bug fixes
- #713: Fix bug in
lse_max_scwhere order of arguments were incorrectly put. - #719: Fix handling paths with empty spaces in model.toGams, model.toLatex and model.convert functions.
Improved documentation
- #713: Update docs for softplus activation function.
CI/CD changes
- #714: Add a new scheduled job to automatically upgrade pre-commit dependency versions.
Miscellaneous internal changes
- #715: Do not install extras of gamsapi and add a direct dependency to pandas.
- #716: Add stdcge (a standard cge model) to the test suite.
1.17.0
GAMSPy 1.17.0 (2025-10-10)
Improvements in existing functionality
- #701: Show licensed solvers in the output of "gamspy show license"
- #703: Start using griffe to ensure backward compatibility.
Bug fixes
- #668: Fix synchronization bug in expert sync mode when there are other symbols defined after setting the synchronize flag.
Improved documentation
- #710: Add Google Collab links into examples and reorder examples for better flow.
Dependencies
- #707: Replace urllib3 with requests for network calls.
Miscellaneous internal changes
- #566: Add indus89 to the model library.
- #709: Change the default value of 'USE_PY_VAR_NAME' to 'yes-or-autogenerate'.
1.16.0
GAMSPy 1.16.0 (2025-09-16)
New features
- #679: Now sets with single element generated using
dimare singleton sets.
Improvements in existing functionality
- #639: Use temporary sets instead of temporary parameters to get the result of set-based expressions.
- #690: Improve model generation speed for RandomForest and GradientBoosting.
- #698: If no indices are provided in an assignment, assume that the operation is over the whole domain.
- #699: Allow the definition of a nonbinding equation without an equality operator. GAMSPy will automatically add == 0 at the end of the expression.
- #702: Use ProxyManager in case the user specifies HTTPS_PROXY or HTTP_PROXY.
Bug fixes
- #683: Fix records filtering bug for subset indices.
- #684: In model.toGams call, write aliased set to the .gms file as well in case an alias is used as a domain.
Improved documentation
- #679: Update matrix operations document for scalar extraction and style changes.
- #692: Add Traveling Saleman Problem (TSP) in Notebook examples.
- #697: Add documentation for model types required for formulations.
Dependencies
- #679: Upgrade gamspy_base and gamsapi to 51.1.0.
Miscellaneous internal changes
- #695: .records call will return either a DataFrame or None. It will stop squeezing single rows into a float.
1.15.1
GAMSPy 1.15.1 (2025-08-30)
New features
- #642: Add RandomForest formulation.
- #655: Add GradientBoosting formulation.
- #682: - Introduce a convenience function for
tanhin gamspy.math.activations to generate the output variable and equations.- Add
init_weightsparameter inmake_variableforLinear,Conv1dandConv2dformulations.
- Add
Improvements in existing functionality
- #686: Allow specifying checkout duration through gamspy retrieve command to allow checking out network licenses.
Improved documentation
- #642: Add docs for RandomForest formulation.
- #655: Add docs for GradientBoosting formulation.
- #682: Update documentation for training NNs to showcase formulations.
- #688: Update documentation for ML formulations.
1.15.0
GAMSPy 1.15.0 (2025-08-14)
New features
- #653: Allow bulk setRecords via Container.setRecords function.
- #680: Add formulation for Leaky ReLU activation function.
Improvements in existing functionality
- #681: Allow redirecting generateGamsString output to a file.
Generate unique gdx files for each execution if the debugging level is set to "keep".
Bug fixes
- #674: Fix the bug that causes solve link option of one model to propagate to another model.
Improved documentation
- #680: Minor docs fix and add docs fix for Leaky ReLU activation function.
Miscellaneous internal changes
- #450: Add a new model (tsp) to the model library.