FA-0223Software Development
GAMS Optimization and Programming
Introduction
Why this course
General Algebraic Modeling System (GAMS) is used to model and analyze mixed-integer, linear, and nonlinear optimization problems. It is one of the best tools to analyze large and complex systems. Although the GAMS tool is widely used to solve various power and energy systems complex optimization problems, it can be used in any field to mathematically formulate and find optimal solutions.
This course shall use a trial version of GAMS python coding using the free package Pyomo.
Learning Outcome
By the end of this course, the learner may be expected to:
- Read a problem statement and build an optimization model
- Be able to identify the objective function, decision variables, constraints, and parameters
- Code an optimization model in GAMS
- Define sets, variables, parameters, scalars, equations
- Use different solvers in GAMS
- Import data from text, gdx, and spreadsheet files
- Export data to text, gdx, and spreadsheet files
- Impose different variable ranges, and bounds
- Code an optimization model in Pyomo
- Define models, sets, variables, parameters, constraints, and objective function
- Use different solvers in Pyomo
Course Stats
- Duration:
- 1 day
- 9 am to 5pm,
- 1 hour lunch break and
- A maximum of 2 x 15 minute breaks
- Assessment: In-course assessment
- Intensity: High
- Type: Hands-on
- Medium of lecture: English
Prerequisites
Prerequisites
- Root Access to OS
- Internet connection
- External resource access (google and kaggle)
- GAMS Software (trial version would suffice)
- Google Colab access
- Understanding of linear and non-linear mathematics
Training outline
5 modules
·
01Introduction5 topics
- Mathematics recap
- Algorithms and programming overview
- Scope determination
- Software
- Access and linking
02Linear Programming4 topics
- GAMS usage
- Python integration
- Pymo Usage
- Mixed Integer Linear Programming
03Nonlinear Programming3 topics
- GAMS usage
- Pymo Usage
- Mixed Integer nonlinear Programming
04GAMS independent (integrated in all of the above topics)3 topics
- Multi-Object Optimization
- SLGP
- Flow Control
05Assessment0 topics
A programme built around your team.
Share your training goals and requirements.