Tesi Robotica Un coprocessore per Stereo-Matching: Profiling ... | Page 43
i
i
“MF_Tesi” — 2011/9/12 — 11:39 — page 43 — #43
i
3.2. ELEMENTI DELLA PROGRAMMAZIONE DINAMICA
i
43
una sotto-struttura ottimale, con buona probabilità è applicabile l’approccio della programmazione dinamica. Nella programmazione dinamica, costruiamo una
soluzione ottima al problema partendo da soluzioni ottime ai sotto-problemi.
Per individuare la sotto-struttura ottimale di un problema si possono seguire i
seguenti passi:
1. Mostrare che una soluzione al problema consiste nel fare una scelta. Tale
scelta consente di non dover più risolvere uno o più sotto-problemi.
2. Supporre che per un dato problema si è in possesso della scelta che porta
ad una soluzione ottima. Non è importante come è stata ottenuta la scelta.
3. Data la scelta, si determinano i sotto-problemi che ne seguono, e come
caratterizzare al meglio lo spazio dei sotto-problemi risultante. In generale conviene cercare di tenere lo spazio dei sotto-problemi il più semplice
possibile ed espanderlo solo se necessario.
4. Mostrare che le soluzioni ai sotto-problemi utilizzate all’interno della soluzione
ottimale al problema originario devono a loro volta essere ottimali. Si
suppone per assurdo che la soluzione al sotto-problema non è ottimale e
giungere ad un assurdo. In particolare, si esclude la soluzione non ottimale
al sotto-problema e se ne aggiunge una ottimale,