What you'll learn:
- Basic Concepts and Terms Related to Optimization
- How to Formulate a Mathematical Problem
- Linear Programming and Coding LP Problems in Python Using Pyomo
- Mixed Integer Linear Programming (MILP) and Coding MILP Problems in Python Using Pyomo
- Non-Linear Programming (NLP) and Coding NLP Problems in Python Using Pyomo
- Mixed Integer Non-Linear Programming (MINLP) and Coding MINLP Problems in Python Using Pyomo
Mathematical Optimization is getting more and more popular in most quantitative disciplines, such as engineering, management, economics, and operations research. Furthermore, Python is one of the most famous programming languages that is getting more attention nowadays. Therefore, we decided to create a course for mastering the development of optimization problems in the Python environment. In this course, you will learn how to deal with various types of mathematical optimization problems as below:
Linear Programming (LP)
Mixed Integer Linear Programming (MILP)
Non-Linear Programming
Mixed Integer Non-Linear Programming
Since this course is designed for all levels (from beginner to advanced), we start from the beginning that you need to formulate a problem. Therefore, after finishing this course, you will be able to find and formulate decision variables, objective function, constraints and define your parameters. Moreover, you will learn how to develop the formulated model in the Python environment (using the Pyomo package).
Here are some of the important skills that you will learn when using Python in this course:
Defining Sets & Parameters of the optimization model
Expressing the objective function and constraints as Python function
Import and read data from an external source (CSV or Excel file)
Solve the optimization problem using various solvers such as CPLEX, IPOPT, COUENNE &, etc.
In this course, we solve simple to complex optimization problems from various disciplines such as engineering, production management, scheduling, transportation, supply chain, and ... areas.
This course is structured based on 3 examples for each of the main mathematical programming sections. In the first two examples, you will learn how to deal with that type of specific problem. Then you will be asked to challenge yourself by developing the challenge problem into the Python environment. Nevertheless, even the challenge problem will be explained and solved with details.