Optimization and Simulation for Industrial Automation
01HZPQW, 01HZPOV
A.A. 2025/26
Course Language
Inglese
Degree programme(s)
Master of science-level of the Bologna process in Mechatronic Engineering (Ingegneria Meccatronica) - Torino Master of science-level of the Bologna process in Ingegneria Informatica (Computer Engineering) - Torino
Optimization and Simulation are powerful software tools for automation that can be applied at different abstraction levels: from supply chain management, logistics and long-term production planning to the scheduling and control of a single station or robot. Objective of this module is to provide methods for modeling, simulating, and optimizing systems of different types, mostly for automation applications.
The first part of the module will focus on the development of simulation models, mainly for stochastic dynamical discrete-event systems, providing methods for reaching a better understanding of how systems operate and respond to input changes.
The second part will focus on optimization, introducing methods for formalizing optimization problem (Linear Programming Models) and methods for solving them (both exact and approximate).
Optimization and Simulation are powerful software tools for automation that can be applied at different abstraction levels: from supply chain management, logistics and long-term production planning to the scheduling and control of a single station or robot. Objective of this module is to provide methods for modeling, simulating, and optimizing systems of different types, mostly for automation applications.
The first part of the module will focus on the development of simulation models, mainly for stochastic dynamical discrete-event systems, providing methods for reaching a better understanding of how systems operate and respond to input changes.
The second part will focus on optimization, introducing methods for formalizing optimization problem (Linear Programming Models) and methods for solving them (both exact and approximate).
- To identify problems that can be tackled through simulation or optimization in the context of different areas of application.
- To know the basics of discrete event simulation, with the goal of simulating a production system.
- To apply to simulation experiments the main mathematical and statistical tools, and quantitative methods in general, in order to derive from raw data meaningful figures of merit for the simulated systems.
- To build simulation models, design and carry out a whole simulation project.
- To know how to model a combinatorial optimization problem through a linear programming model.
- To understand the basic optimization concepts and the most adequate optimization techniques (exact, heuristic) for different problem types.
- To learn to use the Matlab simEvents package to carry out the simulation of a discrete-event system.
- To learn to use a mathematical programming solver (Xpress Solver, Matlab Optimization Toolbox, etc.) for solving combinatorial optimization problems.
- To identify problems that can be tackled through simulation or optimization in the context of different areas of application.
- To know the basics of discrete event simulation, with the goal of simulating a production system.
- To apply to simulation experiments the main mathematical and statistical tools, and quantitative methods in general, in order to derive from raw data meaningful figures of merit for the simulated systems.
- To build simulation models, design and carry out a whole simulation project.
- To know how to model a combinatorial optimization problem through a linear programming model.
- To understand the basic optimization concepts and the most adequate optimization techniques (exact, heuristic) for different problem types.
- To learn to use the Matlab simEvents package to carry out the simulation of a discrete-event system.
- To learn to use a mathematical programming solver (Xpress Solver, Matlab Optimization Toolbox, etc.) for solving combinatorial optimization problems.
Basic use of Matlab.
Basic use of Matlab.
- Introduction: Automation, Simulation, Optimization.
- Basics of Simulation: modelling and different types of simulation techniques (Continuous, Discrete, Discrete Event).
- Discrete Event Simulation.
- Techniques for the analysis of the output data of a discrete event simulator.
- The fundamentals of the Matlab SimEvents package.
- Laboratory exercises: simulate discrete event systems with SimEvents.
- Combinatorial Optimization and Linear Programming models.
- Exact algorithms (Branch and Bound) and heuristic algorithms (Greedy, Local Search, Metaheuristics, Tabu Search, Genetic Algorithms, Matheuristics).
- Real world optimization applications.
- Laboratory exercises: model and solve linear programming models using different tools (Xpress Solver, Matlab Optimization Toolbox).
- Introduction: Automation, Simulation, Optimization.
- Basics of Simulation: modelling and different types of simulation techniques (Continuous, Discrete, Discrete Event).
- Discrete Event Simulation.
- Techniques for the analysis of the output data of a discrete event simulator.
- The fundamentals of the Matlab SimEvents package.
- Laboratory exercises: simulate discrete event systems with SimEvents.
- Combinatorial Optimization and Linear Programming models.
- Exact algorithms (Branch and Bound) and heuristic algorithms (Greedy, Local Search, Metaheuristics, Tabu Search, Genetic Algorithms, Matheuristics).
- Real world optimization applications.
- Laboratory exercises: model and solve linear programming models using different tools (Xpress Solver, Matlab Optimization Toolbox).
The course is based on classes, where theory and examples will be presented, and laboratory activities.
In the laboratory the students will use different softwares for implementing optimization and simulation models: “Matlab simEvents” for simulating discrete events systems, and “Matlab Optimization Toolbox”+“Xpress Solver” for solving combinatorial optimization problems.
During the last weeks the students will use the acquired skills developing a group project which will be considered in the assessment and grading criteria.
The course is based on classes, where theory and examples will be presented, and laboratory activities.
In the laboratory the students will use different softwares for implementing optimization and simulation models: “Matlab simEvents” for simulating discrete events systems, and “Matlab Optimization Toolbox”+“Xpress Solver” for solving combinatorial optimization problems.
During the last weeks the students will use the acquired skills developing a group project which will be considered in the assessment and grading criteria.
Slides and other learning material provided by the instructor.
A list of relevant books on the course topics:
D. J. Luenberger, "Linear and Nonlinear Programming", Springer, 3rd ed., 2008.
G.L. Nemhauser, L.A. Wolsey, "Integer and Combinatorial Optimization", Wiley, 1999.
G. Ausiello, A. Marchetti-Spaccamela, P. Crescenzi, G. Gambosi,M. Protasi, V. Kann,
"Complexity and Approximation: Combinatorial Optimization Problems and
Their Approximability Properties", Springer, 2003, 2nd edition.
R. Tadei, F. Della Croce, "Elementi di Ricerca Operativa", Editrice Esculapio.
R. Tadei, F. Della Croce, A. Grosso, "Fondamenti di Ottimizzazione", Editrice Esculapio.
M. Ghirardi, A. Grosso, G. Perboli, "Esercizi di Ricerca Operativa", Editrice Esculapio.
A.M. Law, "Simulation Modeling and Analysis", McGraw-Hill, 2015.
Cassandras, Lafortune, "Introduction to Discrete Event Systems", Springer.
Simulation Modeling Handbook: A Practical Approach, Christopher A. Chung (Ed.) CRC Press: New York, NY., 2004
Discrete-Event System Simulation, Jerry Banks, at al., Prentice Hall: Upper Saddle River, NJ., 2005
Principles of Modeling and Simulation: A Multidisciplinary Approach, John A. Sokolowski (Editor), Catherine M. Banks (Editor) John Wiley & Sons, 2009
Slides and other learning material provided by the instructor.
A list of relevant books on the course topics:
D. J. Luenberger, "Linear and Nonlinear Programming", Springer, 3rd ed., 2008.
G.L. Nemhauser, L.A. Wolsey, "Integer and Combinatorial Optimization", Wiley, 1999.
G. Ausiello, A. Marchetti-Spaccamela, P. Crescenzi, G. Gambosi,M. Protasi, V. Kann,
"Complexity and Approximation: Combinatorial Optimization Problems and
Their Approximability Properties", Springer, 2003, 2nd edition.
R. Tadei, F. Della Croce, "Elementi di Ricerca Operativa", Editrice Esculapio.
R. Tadei, F. Della Croce, A. Grosso, "Fondamenti di Ottimizzazione", Editrice Esculapio.
M. Ghirardi, A. Grosso, G. Perboli, "Esercizi di Ricerca Operativa", Editrice Esculapio.
A.M. Law, "Simulation Modeling and Analysis", McGraw-Hill, 2015.
Cassandras, Lafortune, "Introduction to Discrete Event Systems", Springer.
Simulation Modeling Handbook: A Practical Approach, Christopher A. Chung (Ed.) CRC Press: New York, NY., 2004
Discrete-Event System Simulation, Jerry Banks, at al., Prentice Hall: Upper Saddle River, NJ., 2005
Principles of Modeling and Simulation: A Multidisciplinary Approach, John A. Sokolowski (Editor), Catherine M. Banks (Editor) John Wiley & Sons, 2009
Slides; Esercitazioni di laboratorio; Esercitazioni di laboratorio risolte;
Lecture slides; Lab exercises; Lab exercises with solutions;
Modalità di esame: Prova scritta (in aula); Elaborato progettuale in gruppo;
Exam: Written test; Group project;
...
The exam is written, and based on a set of questions and exercises, with the objective of verifying the above mentioned competences (Expected Learning Outcomes). The exam duration is 1,5 hours. It is not possible to consult texts, lecture notes and forms. The exam gives a maximum of 27 points (minimum 18 for passing).
A bonus to the final exam mark is given by a mandatory laboratory group project, giving a maximum of 6 points. The final evaluation is the sum of the points obtained with the exam and the laboratory project (with 31 being still 30, and 32 being 30L).
Laboratory marks are kept valid for duration of the academic year, in the case a student did not pass the written exam.
Gli studenti e le studentesse con disabilità o con Disturbi Specifici di Apprendimento (DSA), oltre alla segnalazione tramite procedura informatizzata, sono invitati a comunicare anche direttamente al/la docente titolare dell'insegnamento, con un preavviso non inferiore ad una settimana dall'avvio della sessione d'esame, gli strumenti compensativi concordati con l'Unità Special Needs, al fine di permettere al/la docente la declinazione più idonea in riferimento alla specifica tipologia di esame.
Exam: Written test; Group project;
The exam is written, and based on a set of questions and exercises, with the objective of verifying the above mentioned competences (Expected Learning Outcomes). The exam duration is 1,5 hours. It is not possible to consult texts, lecture notes and forms. The exam gives a maximum of 27 points (minimum 18 for passing).
A bonus to the final exam mark is given by a mandatory laboratory group project, giving a maximum of 6 points. The final evaluation is the sum of the points obtained with the exam and the laboratory project (with 31 being still 30, and 32 being 30L).
Laboratory marks are kept valid for duration of the academic year, in the case a student did not pass the written exam.
In addition to the message sent by the online system, students with disabilities or Specific Learning Disorders (SLD) are invited to directly inform the professor in charge of the course about the special arrangements for the exam that have been agreed with the Special Needs Unit. The professor has to be informed at least one week before the beginning of the examination session in order to provide students with the most suitable arrangements for each specific type of exam.