Optimizacijske metode

« nazaj

Optimizacijske metode - vaje 19.2.2021


Optimizacijske naloge

Zapišite naslednje probleme kot optimizacijsko nalogo $(D, f, \mathrm{opt})$.


Ekstrem

Poiščite minimum funkcije $f(x) = -x^2 + 2x + 5$.


Imamo kvadratno funkcijo z negativnim vodilnim členom, nima minimuma - problem je neomejen!

Maksimum poiščemo z odvajanjem:


Vezani ekstrem

Poiščite valj z največjim volumnom pri dani površini $P$.


Rešitev:


Preprosti nahrbtnik

Imamo nahrbtnik s prostornino $V$ ter $n$ predmetov s prostorninami ${V_1}, \dots, {V_n}$ in cenami ${c_1}, \dots, {c_n}$. Katere predmete in s kakšnim deležem (predmete lahko režemo) naj vzamemo, da bo skupna cena čim večja?


Rešitev:


0-1 nahrbtnik

Enak problem kot preprosti nahrbtnik, le da predmetov ne smemo rezati.


Primer: $V = 4$, ${V_1} = 3$, ${V_2} = {V_3} = 2$, ${c_1} = 7$, ${c_2} = {c_3} = 4$.

Težek problem! Ne poznamo učinkovite rešitve.


Problem particije

Imamo $2 n$ jabolk s težami ${t_1}, \dots, {t_{2n}}$. Kako jih razdelimo v dve košari s po $n$ jabolki, da bo v obeh košarah čim bolj podobna teža?


Težek problem! Ne poznamo učinkovite rešitve.


Najmanjša krogla

Imamo množico točk $A = \lbrace {x_1}, \dots, {x_k} \rbrace \subset \mathbb{R}^n$. Poiščite najmanjšo kroglo, ki vsebuje vse točke v $A$.


Rešitev:


Kovanci

Imamo $n$ centov. Kako jih lahko razdelimo na kovance po $1, 2, 5, 10, 20, 50$, da bodo kovanci čim bolj enakomerno zastopani? (Kaj to pomeni?)


Rešitev:

$n$ 1 2 5 10 20 50
0 0 0 0 0 0 0
1 1 0 0 0 0 0
2 0 1 0 0 0 0
3 1 1 0 0 0 0
4 2 1 0 0 0 0
5 0 0 1 0 0 0
           
87 0 1 1 1 1 1

Maksimalni prerez

Imamo neusmerjen enostaven graf $G = (V, E)$. Iščemo razdelitev $V = A \cup B$, $A \cap B = \emptyset$, da bo število povezav med $A$ in $B$ čim večje.


Težek problem!


Problem trgovskega potnika

Dano imamo množico $M = \lbrace {m_i} \mid 1 \le i \le n \rbrace$ mest in funkcijo $d : M^2 \rightarrow \mathbb{R}$ razdalj med njimi. Iščemo najkrajši cikel, ki bo obiskal vsako mesto natanko enkrat.


Težek problem!


Minimalno vpeto drevo

Imamo enostaven neusmerjen graf $G = (V, E)$ in funkcijo cene povezave $c : E \rightarrow \mathbb{R}$. Iščemo vpeto drevo z najmanjšo ceno.


$T$ vpeto drevo v $G = (V, E)$: $T = (V, E’)$, $E’ \subseteq E$, $T$ drevo

Rešujemo s Primovim ali Kruskalovim algoritmom.


Linearni programi

Linearni program v standardni obliki:

Pretvorba v standardno obliko:

\[\begin{aligned} \min c^\top x &\quad \to \quad \max -c^\top x \\ {a_i} x \ge {b_i} &\quad \to \quad -{a_i} x \le -{b_i} \\ {a_i} x = {b_i} &\quad \to \quad {a_i} x \le {b_i}, \ -{a_i} x \le -{b_i} \\ {x_i} \le 0 &\quad \to \quad {x_i} = -{x'_i}, \ {x'_i} \ge 0 \\ {x_i} \text{ neomejena} &\quad \to \quad {x_i} = {x^+_i} - {x^-_i}, \ {x^+_i}, {x^-_i} \ge 0 \end{aligned}\]