Engineering Optimization (工程优化)
Course information
- Course name: Engineering Optimization
- Course ID: 074090.01
- Location: 环_301(Wednesday); 化_106(Friday)
- Lectures: 10:10-11:50 (Wednesday, odd week); 14:00-15:40 (Friday, every week);
- Instructor: Yanjie Zhou
- Email: ieyjzhou@zzu.edu.cn
- TA: Yaohui Li 李耀辉 (Email:zgyhli@163.com), Zehao Qian 钱泽昊 (Email:QianZeHao123@outlook.com)
Prerequisites
- Calculus I and II
- Linear algebra
- Operation research
- Data structure
- Programming language (familiar with one programming language): C/C++; Python; Java; Matlab; Julia
Coursework
- Homework (50%)
- Final project (50%)
Introduction
The course is designed for undergraduate (graduate) students from Zhengzhou University to provide a view of optimization methods for solving engineering problems. Students with a background in industrial engineering, logistics management, computer science, mechanical engineering, electrical engineering, etc., are welcome to join this course. This course covers exact algorithms and meta-heuristics for solving linear programming, integer programming, nonlinear programming, multiple objective optimization, bi-level programming, and robust optimization. The source code of branch and bound, genetic algorithm, neighborhood search heuristic, genetic programming, etc., are provided to help students understand the related theories. Advanced optimization methods for solving the combinatorial optimization problem, such as reinforcement Learning, will also be provided.
Schedule (tentative)
Week | Date | Topic | PPT | Note | Code | Material |
---|---|---|---|---|---|---|
1 | 15, Feb. | Introduction | PPT | |||
17, Feb. | Introduction | PPT | —— | |||
2 | 24, Feb. | Root finding | —— | —— | ||
3 | 01, Mar. | Root finding | —— | |||
03, Mar. | System of equations | —— | ||||
4 | 10, Mar. | Linear programming | —— | |||
5 | 15, Mar. | Branch and bound | —— | |||
17, Mar. | Branch and bound | —— | ||||
6 | 24, Mar. | Non-linear programming | —— | |||
7 | 29, Mar. | Non-linear programming | —— | |||
31, Mar. | Non-linear programming | —— | ||||
8 | 07, Apr. | Roubust optimization | —— | |||
9 | 12, Apr. | Roubust optimization | —— | —— | ||
14, Apr. | Multiple objective optimization | —— | —— | |||
10 | 21, Apr. | Multiple objective optimization | —— | —— | ||
11 | 26, Apr. | Multiple level optimization | —— | —— | ||
28, Apr. | Nash equilibrium | —— | —— | |||
12 | 05, May | Single solution based heuristics | —— | |||
13 | 10, May | Simulated annealing | —— | |||
12, May | Iterated local search | —— | ||||
14 | 19 , May | Variable neighborhood search | —— | |||
15 | 24, May | Greedy randomized adaptive search procedure | —— | |||
26, May | Population based heuristics | —— | ||||
16 | 02, Jun. | Genetic algorithms | —— | |||
17 | 07, Jun. | Particle swarm optimization | —— | |||
09, Jun. | Harmony search algorithm | —— | ||||
18 | 16, Jun. | Reinforcement Learning | —— | |||
19 | Final Exam | —— |
Homework
- Using Python-MIP package to implement the mathematical formulation of the Sudoku game.