
Engage with a structured course flow: review basic concepts, solve two examples of increasing difficulty, tackle a challenge problem, and pause to attempt solutions before coding.
Explore the fundamentals of optimization, including objective functions, constraints, and decision variables, with a tour of linear, nonlinear, and mixed-integer programming and convexity, feasibility, and applications.
Define decision variables x1 and x2 for deluxe and regular builds, and maximize profit: 4x1 + 3x2, subject to leather and labor constraints with x1, x2 ≥ 0.
Formulate a linear programming model to maximize revenue from desks, tables, and chairs using decision variables and sets subject to lumber, finishing, and carpentry constraints, including a cap on tables.
Hi there,
In the following video, the below line needs to be added to the code for the last constraint (Please note that this change does not impact the final result)
model.Const4 = pyo.Constraint(model.i,rule = Constraint4)
Thanks!
Navid
Learn to solve a MILP challenge in Python with Pyomo, reading Excel or CSV data with Pandas, defining I and J sets, binary x(i,j) and nonnegative u(i) with subtour elimination.
Formulate a nonlinear programming model to maximize the walkway area around a central 10-by-18 void, using outer dimensions x1 and x2 with equal-width and 250 m handrail constraints.
Learn to model and solve a MINLP challenge in Python with Pyomo, reading data from Excel, defining sets, parameters, and variables, and minimizing costs using a Cohen solver.
Wrap up the course by recapping the five optimization steps—understanding the problem, formulating it, modeling in Python with data from Excel or CSV, solving with a solver, and reporting results.
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.