Mathematical optimization in Python, powered by the high-performance GAMS execution system.
GAMSPy bridges the expressive Python ecosystem and the robust GAMS system. Build algebraic optimization models, prepare and transform data, solve efficiently, and postprocess results in one intuitive Python workflow.
GAMSPy keeps optimization modeling close to Python while preserving the algebraic clarity, solver access, and performance of GAMS.
Move from data preparation to model execution and result analysis in one environment.
Use Python libraries such as NumPy, Pandas for data workflows.
Implement mathematical models and solve them with the GAMS execution system, locally, on NEOS Server, or on GAMS Engine for centralized execution.
Postprocess, visualize, export, and connect results to applications.
Write optimization models directly in Python while keeping the structure readable and close to the mathematics.
Offload the heavy lifting to the efficient GAMS backend and choose the solver that fits your model.
GAMSPy helps teams move from prototype to production faster by reducing modeling friction, rework, and deployment overhead.
Practical tools help teams document, share, reuse, and solve optimization models in modern Python workflows.
Start from proven formulations and learn from runnable examples in the public model library.
View examplesSolve optimization models remotely without local solver installations, useful for teaching, research, and quick experimentation.
Learn about NEOSMove from model development to shared applications and centralized execution without leaving the broader GAMS ecosystem.
Explore deploymentOpen runnable notebooks directly in Google Colab and explore representative optimization models without local setup.
For advanced use cases, GAMSPy can bring trained machine learning models directly into optimization workflows instead of treating them as external black boxes.
GAMSPy offers a set of machine learning capabilities for teams that want to combine prediction models with algebraic decision models in one Python environment.
This includes neural network formulations, classic machine learning formulations, and workflows for embedding pretrained models so solvers can reason over them as part of the optimization problem.
Explore ML documentationUse documented formulations for layers, activations, convolution, pooling, and related matrix operations to express neural networks inside GAMSPy models.
Bring pretrained PyTorch networks into optimization models so outputs, constraints, and decisions can be handled in one solver-driven workflow.
Integrate tree-based models such as regression trees, random forests, and gradient boosting directly into optimization formulations.
Support advanced applications such as robustness verification, adversarial input generation, and surrogate modeling within larger optimization pipelines.
Start with the documentation, browse examples, or join the forum for GAMSPy questions and support.
Read the GAMSPy documentation and follow the installation and getting-started guides.
Open docsBrowse runnable examples and practical model references for learning, testing, and benchmarking.
View GitHubUse the GAMSPy section of the GAMS forum for questions, support, and workflow discussions.
Visit forumContact our team if you would like to discuss licensing, solver options, deployment with GAMS Engine, or how GAMSPy fits into your Python optimization workflow.