
Please download the presentation where you will get all the slides presented in this tutorial
Explore a two-variable production optimization that maximizes profit under 160 machine hours and 200 kg of material, yielding about 66 B and no A for 1333.33 profit.
Learn to program in Python using the interactive shell, run scripts via the Python prompt, print statements, assign variables, perform math, and execute Python scripts with Spyder.
Explore Python control structures, including if statements, break, and continue, and use for loops to iterate ranges and print values divisible by three or five.
Learn how to create Python lists with different data types and perform core operations, including adding, slicing, getting length, appending, popping, inserting, reversing, and sorting.
Explore dictionaries in Python as hash tables of key-value pairs, learn how to retrieve, delete, overwrite, and insert entries, and access keys, values, and items.
Define the function name with a keyword of df, pass arguments, perform operations inside, and return the result with a return statement. See a gcd example returning 12 and 20.
Learn how to install solvers such as CBC, Glpk, and CIP for Python optimization, configure system paths and environment variables, and verify installation.
Explore Pyomo, an open source library, for modeling and solving optimization problems in Python. Leverage support for linear, integer, and nonlinear programming and integration with Gurobi, Cplex, and Glpk.
Explore Pyomo’s optimization framework, including sets, parameters, variables, constraints, and objectives. Build linear, quadratic, and nonlinear models with indexing and parametric optimization to maximize x + 5y.
Learn how to model optimization problems in Pyomo or pulp and solve them with solvers like CBC or Glpk, covering linear, mixed-integer, and non-linear formulations.
Investigate mixed integer linear programming with pyomo, where integer and fractional variables produce different optima as the constraint shifts from 24 to 23, yielding x=4 and y=4.75.
Explore nonlinear programming with Python by modeling nonlinear objectives and constraints in Pyomo, including sine and cosine terms, using Ipopt to obtain solutions and learn concrete versus abstract problem construction.
Demonstrates knapsack and warehouse location problems by formulating them in Pyomo, using concrete and abstract methods with binary decision variables to maximize value under a 14 weight limit.
Build and solve the knapsack problem in Pyomo using a concrete model with binary variables to maximize value under a weight constraint, then run a solver to reveal chosen items.
Learn to formulate and solve the knapsack problem using Pyomo's abstract model, declaring items, parameters, and a binary decision variable, then maximize value under weight constraints.
Formulate the warehouse location problem to minimize total transportation cost by selecting up to two warehouses, assigning customers to open warehouses, and ensuring every customer is served.
Formulate the warehouse location problem in abstract methodology with warehouses and customers, a distance parameter, a 0–1 opening variable, and proportion of demand variable, then minimize distance and shipped volume.
Use Pyomo to minimize total transportation cost by selecting airline hubs and routing city pairs through hubs with binary decision variables and data inputs.
Optimizes cost for two finished foods, granules and powder, produced from oats, maize, and molasses, detailing grinding, blending, granulating, and sieving under nutritional and demand constraints.
Explore assembly line balancing theory for an electronics amplifier, modeling 12 tasks with precedence constraints across four workstations to minimize cycle time, using binary decision variables and Pyomo.
Construct the data file with sets of tasks, workstations, arcs, and durations; model in Pyomo with binary assignment variables X[i,j], minimize total cycle time, and enforce arc precedence constraints.
Explore designing cutting patterns to extract required sheet pieces from large sheets. Formulate with pattern variables, meet demand, and minimize cost, preparing for Pyomo implementation.
Use pyomo to model cutting stock with pattern and size sets, demand and cost parameters, and variables and constraints to minimize large sheets, yielding 11 as the minimum.
Plan a seven-year early retirement scheme by investing in three bond types and savings at a guaranteed 3.2% yield, and minimize total invested capital while ensuring annual disbursements.
Explore planning an early retirement scheme using Pyomo to define sets and parameters indexed by years and loans, model bond values, rates, and durations, and minimize total capital investment.
Optimize the truck route to salt roads during snowfall, ensuring every street is traversed at least once while minimizing total distance under flow conservation for directed and bi directional arcs.
Implement a Pyomo model to optimize road traversal by defining intersections, arcs, and lengths, enforcing flow balance and at-least-once constraints, then solve and report the minimum distance and edge usage.
Model job shop scheduling with multiple machines and job sequences, enforcing precedence and disjunctive constraints to minimize total cycle time using big M formulations.
Define data and parameters for a pyomo based job shop schedule, formulate binary disjunctions and constraints, and solve to minimize total cycle time, printing start times and finish time.
Maximize water flow from reservoirs to cities through pumping stations, by transforming a graph with a fictitious source and sink, respecting capacities and node balance, and enabling Pyomo implementation.
Model batch-to-machine assignment in Pyomo by defining sets for batches and machines, and parameters duration, cost, and capacity with a binary assignment variable. Minimize cost under capacity and single-machine constraints.
Recap the key takeaways from optimization modeling with Pyomo, the Python library, including variables, constraints, and objectives, and explore linear, integer, and nonlinear programming across supply chain and production planning.
This course is designed to provide a comprehensive understanding of mathematical modeling and problem-solving techniques using Pyomo, a powerful optimization modeling language in Python.
In this course, you will embark on a journey to explore the exciting world of optimization, where you will learn how to formulate and solve complex problems to make optimal decisions. Through a combination of theoretical explanations, practical examples, and hands-on exercises, you will gain a solid foundation in optimization principles and the skills needed to apply them in real-world scenarios.
Starting with an introduction to optimization fundamentals, you will learn about objective functions, decision variables, and constraints. You will discover linear and nonlinear optimization problem formulations and understand their applications in diverse domains. With Pyomo as your toolkit, you will dive into the syntax, structure, and capabilities of this powerful optimization modeling language.
The course will cover various optimization techniques, including linear programming, mixed-integer linear programming and nonlinear programming. You will explore different solution methods, algorithms, and approaches to handle various optimization challenges. Through practical coding exercises and projects, you will gain hands-on experience in implementing optimization models using Pyomo and solving them with different solvers.
Moreover, the course will delve into result analysis and interpretation, enabling you to evaluate solution quality, perform sensitivity analysis, and make data-driven decisions based on optimization outcomes. You will also learn how to visualize and present optimization results effectively.
By the end of this course, you will have the knowledge and skills to confidently tackle complex optimization problems using Pyomo. Whether you are an aspiring data scientist, an operations researcher, or a decision-maker in any field that requires optimal decision-making, this course will empower you to unlock the potential of optimization and make informed choices that drive efficiency and productivity.
Join me on this optimization journey and take a step towards mastering mathematical modeling and problem-solving for real-world optimization challenges with Pyomo