5.2. Optimization basics#

General components of an optimization problem#

In general you have the following linear (simplest) structure for a mathematical programming problem. The first equation is the objective function:

\[\underbrace{\text{Max (Min) }Z}_{\text{objective function}}=\underbrace{c_1x_1+c_2x_2+...+c_nx_n}_{\text{objective function coefficients}}\]

this objective function is subject to a set of constraints given by:

\[\begin{split}\begin{cases}a_{11}x_1+a_{12}x_2+...+a_{1n}x_n(\leq,=,\geq)b_1\\a_{21}x_1+a_{22}x_2+...+a_{2n}x_n(\leq,=,\geq)b_2\\...\\ a_{m1}x_1+a_{m2}x_2+...+a_{mn}x_n(\leq,=,\geq)b_m\end{cases}\end{split}\]

In this case \(a_{ij}\) refer to technology coefficients that measure the usage of a resource, \(x\) refers to the decision variables, \(b_m\) is an independent term, which usually translates as an available resource, \(n\) is the number of variables, and \(m\) is the number of constraints.

Optimization vs Simulation#

Optimization

Some modeling approaches attempt to provide optimal answers for problems (e.g., mathematical programming) or near optimum answers (e.g., heuristic and meta-heuristic methods). That’s what this week is all about.

Simulation

A simulation model predicts the performance of a system under a specific set of inputs (experimental parameters).In general, with simulation, we are not searching for an optimal solution but for the system’s performance under different scenarios that are selected according to their importance or likelihood.

Understanding the difference between both

Imagine the case of planning a bus line through simulation. You have your route defined (the streets where it’s going to go through) and the demand around that route is dependent on the frequency of the buses and the bus stop distance. You want to simulate the bus operation in order to maximize your profit.

The variables involved are the bus fleet size, \(b\), and the number of stops in the line, \(s\). They can be bounded to form a range:

  • \(5 \leq b \leq 15\) -> we have 11 bus fleet dimensions to test in a simulation model;

  • \(10 \leq s \leq 30\) -> we have 21 possible stops dimensions

Therefore, we have to test a total of \(b\cdot s=231\) combinations, which is still a manageable number of combinations to simulate.

But what if we are talking about a route line that was not designed yet? Then, for each combination of fleet and number of stops you would have to test the factorial of the number of stops (all the combinations of stops that form a path), \(\frac{(n-1)!}{2}\).

This leads to an impractical number of scenarios to test in simulation! This problem would be better studied using optimization techniques in the so-called network design problems which can be solved, to a certain extent, with mathematical programming as well.

Optimization: why and how?#

The typical workflow of an optimization process looks like the schematic shown below:

workflow

Why optimization?#

Many problems require the identification of the best (or worst) solution, decision or design.

Note

Warning!

This is a concept that is usually misused. Stating something like “optimizing the design of a bridge” to refer to the improvement of the design does not mean we are aiming for the best design, just for a better one.

Optimization techniques have multiple applications as part of other mathematical tools (as LS, MLE, or ML), but also direct applications as optimal structural design, resource distribution, logistics, etc. Let us take a deeper look into some of these examples

What is included under the concept of optimization?#

https://files.mude.citg.tudelft.nl/concept.png

Examples of optimization problems#

In this section, you can find a few examples of optimization problems with their respective goals.

Attribution

This chapter is written by Gonçalo Homem de Almeida Correia, Maria Nogal Macho, Jie Gao and Bahman Ahmadi. Find out more here.