Post on 09-Dec-2014
description
di Loprete Francesco
Cos'è la Ricerca Operativa
Un po' di storia...
Campi di applicazione
Viene applicata in Logistica, Trasporti, Finanza, Gestione delle Risorse Umane, Gestione dei Servizi Sanitari, Telecomunicazioni, Progettazione Industriale, Data Mining, Bio-informatica
Può essere utilizzata in:
Ottimizzazione
Modelli di Programmazione Lineare
Metodo grafico
Esempio di problema di PL
Algoritmo del simplessoL'Algoritmo del simplesso è un metodo per
risolvere problemi di programmazione lineare.
Si vuole massimizzare o minimizzare una funzione lineare con delle restrizioni (vincoli) anch'esse lineari per i valori delle variabili, che possono assumere valori positivi.
George Dantzig (Portland, Oregon, USA, 8
novembre 1914 – Palo Alto, California, USA, 13 maggio
2005)
I vincoli definiscono la regione ammissibile.
Nel caso della programmazione lineare la regione ammissibile è un insieme poliedrico, il quale può essere vuoto, limitato o illimitato.
L'algoritmo del simplesso è in grado di determinare di che tipo di poliedro si tratta e trova la soluzione ottima, che è un vertice del poliedro.
Come funziona il Simplesso
X1 X2 X3 X4 X5X1 8
1 0 0 -0,046
0,25 9
X2 4 0 1 0 -0,375
-0,25 3
X3 2 0 0 1 0,046
-0,25 1
Cr 8 4 2 0 0 88
Δr 0 0 0 2,25 -0,5
Caso di partenza
925,0046,01125,0046,01325,0375,01
min248
541
543
542
321
xxxxxxxxx
xxx
Si genera la prima tabella con i dati del sistema.
X1 X2 X3 X4 X5X2 4 1 1 0 -
0,042
0 12
X3 2 1 0 1 0 0 10X5 0 4 0 0 -0,18 1 36Cr 8 4 2 0 0 68
Δr 2 0 0 1,68 0
I ∆r si calcolano moltiplicando il coefficienti delle variabili in base per la rispettiva colonna del ∆r, sottraendo il risultato al Cr.
Il medesimo ragionamento si applica alla Z.
Dato che il problema è di minimo la variabile ad entrare in base è quella con il ∆r minore.
Si arriva alla soluzione finale quando tutti i ∆r sono maggiori di zero.
Algoritmo di DijkstraL'algoritmo di Dijkstra permette di trovare i cammini
minimi in un grafo.
In particolare l'algoritmo può essere utilizzato per trovare:
cammino minimo che unisce due nodi del grafo, quelli che uniscono un nodo d'origine a tutti gli altri tutti i cammini minimi da ogni nodo ad ogni altro
nodo.
Tale algoritmo trova applicazione in molteplici contesti.
Per esempio permette, dato un grafo che rappresenta un'ipotetica "mappa" di condotte di approvvigionamento idrico di una città. Esempio analogo può essere fatto considerando il "problema" di trovare il collegamento meno dispendioso, in termini di potenza dissipata, nella realizzazione di un circuito elettrico.
Edsger Dijkstra (Rotterdam, 11 maggio
1930 - Nuenen, 6 agosto 2002)
Come funziona DijkstraCaso di partenza
Una volta raggiunto il nodo di arrivo è sufficiente ripercorrere all’indietro il percorso individuato per avere il percorso minimo.
L’algoritmo partendo dal nodo di origine trova ad ogni passaggio il nodo adiacente con peso minore e lo aggiunge alla coda, e aggiorna man mano il peso dei nodi adiacenti.
•Ogni nodo ha, all'inizio potenziale ∞•Il nodo di partenza ha potenziale 0•Ogni volta si sceglie il nodo con potenziale minore e lo si rende definitivo e si aggiornano i nodi adiacenti•Il potenziale di un nodo è dato dalla somma del potenziale del nodo precedente + il costo del collegamento•Non si aggiornano i potenziali dei nodi resi definitivi•I potenziali definitivi indicano la distanza di quel nodo da quello di partenza•Quando si aggiorna il potenziale di un nodo si lascia quello minore
Funzioni di due variabili),( yxfz 2R
lyxf
yyxx
),(lim
00
Fonti utilizzate
Lezioni di Ricerca Operativadipartimento di Informatica e Sistemistica
Università di Roma “La Sapienza”
Matematica generale 3Di L. Tonolini – F. Tonolini – A. Manenti Calvi
www.matematicamente.it
www.wikipedia.org