Numerical Optimization And Operations Research In Python

Posted By: ELK1nG

Numerical Optimization And Operations Research In Python
Published 1/2024
MP4 | Video: h264, 1920x1080 | Audio: AAC, 44.1 KHz
Language: English | Size: 2.24 GB | Duration: 4h 30m

Formulate real-world problems as mathematical optimization models and solve them using Python

What you'll learn

Gain proficiency in solving optimization problems using popular solvers, and learn to interpret and implement their results effectively

Learn and apply useful modeling techniques to classical operations research problems

Identify and formulate real-world problems as numerical optimization models

Complete a case study on how to combine operations research and software engineering to build powerful solutions

Requirements

Basic programming

No previous experience with optimization solvers is required

Student might have a better understanding of some sections if familiar with discrete mathematics and linear algebra

Description

Numerical Optimization and Operations Research in PythonLearn how to use data efficiently to support decision-making by using numerical optimization and operations research with this comprehensive course. It successfully combines theoretical foundations and practical applications, designed to empower you with the skills needed to tackle complex optimization problems in a professional or academic context.You will learn:Theory:Principles of Mathematical OptimizationLinear programming (LP)Integer and Mixed-integer linear programming (MILP)Handle infeasible scenariosMulti-objective hierarchical (lexicographic) formulationsConstructive Heuristics and Local SearchSoftware:PyomoGoogle OR-ToolsHiGHSStreamlitProblems:KnapsackProduct-MixTransportationLot-SizingJob-Shop SchedulingFacility DispersionTraveling SalesmanCapacitated Vehicle Routing ProblemIndustry-Grade Skills: By the end of this course, you'll have the skills to formulate and solve your own optimization problems, a highly sought-after competency in industries ranging from logistics to finance. You'll also be able to convert your models into scalable applications for your company or team even though they are not familiar with optimization.Who is this course for?Data scientists and engineers who want to add optimization skills to their toolkit.Professionals in logistics, supply chain management, or finance, who are looking to leverage optimization for decision-making.Academics and students seeking a practical application of operations research and optimization theories.Course Features:More than 4 hours of comprehensive video lectures explaining concepts in a clear and engaging manner.13+ Interactive Python notebooks for hands-on practice (and corresponding solutions).Carefully selected articles and external references to improve your learning experience.Access to a community forum for discussion and networking with fellow learners.Lifetime access to course materials, including future updates.Embark on this journey to master decision-making using optimization in Python. Whether you aim to advance your career, academically explore operations research, or simply enjoy the thrill of solving complex problems, this course is your gateway to new possibilities.

Overview

Section 1: Introduction

Lecture 1 Introduction

Lecture 2 Download Python

Lecture 3 Download VS Code

Lecture 4 Configure your project

Lecture 5 Selecting Python venv from Jupyter in VS Code

Lecture 6 The Elements of an Optimization Model

Lecture 7 Additional Notes on Constraints

Lecture 8 The Knapsack Problem - Definitions

Lecture 9 Pyomo basics

Lecture 10 Exercise - The Knapsack Problem

Lecture 11 The Knapsack Problem - Pyomo

Lecture 12 Usual Definitions in Numerical Optimization

Lecture 13 Additional Resource - Nonlinear Programming

Lecture 14 Course Overview

Section 2: Linear Programming

Lecture 15 Theory and Intuition

Lecture 16 The Product Mix Problem - Definitions

Lecture 17 Exercise - Product Mix

Lecture 18 The Product Mix Problem - Pyomo

Lecture 19 The Transportation Problem - Definitions

Lecture 20 Exercise - The Transportation Problem

Lecture 21 The Transportation Problem - Pyomo

Lecture 22 Handling Infeasibilities

Lecture 23 Infeasible Transportation - Pyomo

Section 3: Introducing Integer Variables

Lecture 24 Why Using Integer Variables?

Lecture 25 Logical Statements

Lecture 26 Conditional Expressions & Big M

Lecture 27 Branch & Bound Intuition

Section 4: Inventory Models

Lecture 28 Setup Costs & Batch Sizes

Lecture 29 Inventory Balance Over Discrete Planning Horizons

Lecture 30 The Dynamic Lot-Size Model - Definitions

Lecture 31 Exercise - Dynamic Lot-Size Model

Lecture 32 The Dynamic Lot-Size Model - Pyomo

Section 5: Sequence Models

Lecture 33 Sequences over Discrete Planning Horizons

Lecture 34 The Time-Indexed Job-Shop Scheduling Problem - Definitions

Lecture 35 Exercise - Time-Indexed Job-Shop Scheduling Problem

Lecture 36 The Time-Indexed Job-Shop Scheduling Problem - Pyomo

Lecture 37 Sequences and Precedence Constraints

Lecture 38 The Disjunctive Job-Shop Scheduling Problem - Definitions

Lecture 39 Exercise - Disjunctive Job-Shop Scheduling Problem

Lecture 40 The Disjunctive Job-Shop Scheduling Problem - Pyomo

Lecture 41 The Traveling Salesman Problem - MTZ Model Definitions

Lecture 42 Exercise - The Traveling Salesman MTZ

Lecture 43 The Time-Indexed Traveling Salesman Problem - MTZ Model Pyomo

Section 6: Dispersion Models

Lecture 44 Max-Min and Min-Max Formulations

Lecture 45 The Facility Dispersion Model - Definitions

Lecture 46 Exercise - Facility Dispersion Model

Lecture 47 The Facility Dispersion Model - Pyomo

Section 7: Routing Models

Lecture 48 Welcome to routing!

Lecture 49 The Traveling Salesman Problem with Subtour Elimination - Definition

Lecture 50 Exercise - Traveling Salesman Problem with Recursive Subtour Elimination

Lecture 51 The Traveling Salesman Problem with Subtour Elimination - Pyomo

Lecture 52 The Capacitated Vehicle Routing Problem - MIP Formulation

Lecture 53 Exercise - CVRP (MIP)

Lecture 54 The Capacitated Vehicle Routing Problem - Pyomo - Part 1

Lecture 55 The Capacitated Vehicle Routing Problem - Pyomo - Part 2

Lecture 56 Heuristics - Constructive and Local Search

Lecture 57 OR-Tools Routing Models

Lecture 58 The Capacitated Vehicle Routing Problem - OR Tools

Lecture 59 Congratulations!

Section 8: Bonus Section - The Optimization App

Lecture 60 Introducing the Optimization App

Lecture 61 Folder Structure

Lecture 62 Using Streamlit

Lecture 63 Local Execution

Lecture 64 Containerization with Docker

Lecture 65 Course Conclusion

Professionals in pursuit of essential quantitative decision-making skills,Academics eager to learn practical software skills to apply optimization theory