1 / 65

Il simplesso in forma tabellare

Il simplesso in forma tabellare. Cap 3.2.4 Fischetti pg 33-36. Il metodo del tableau.

Download Presentation

Il simplesso in forma tabellare

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Il simplesso in forma tabellare Cap 3.2.4 Fischetti pg 33-36

  2. Il metodo del tableau • E’ d’uso presentare l’algoritmo del simplesso come una sequenza di operazioni algebriche su una tabella che riporta la matrice dei vincoli, il vettore b e, come riga aggiuntiva, il vettore dei costi ridotti e il valore della funzione obiettivo nella soluzione corrente • Formato di riferimento forma standard Min cx: Ax=b, x0

  3. Formato iniziale del tableau x1 x2 .. xm xm+1 … xn z b Riga 0 Riga 1 .. .. Riga m Vettore dei costi 0 -1 0 0 0 0 0 0 Matrice A b

  4. Formato del tableau al passo k x1 x2 .. xmxm+1 … xn z AB-1b Riga 0 0 … 0 cN-cBAB-1AN Riga 1 .. .. Riga m -1 -cBAB-1b Riga 0 = Vettore dei costi ridotti AB-1 AB= I AB-1 AN B xB Le colonne sono opportunamente riordinate per affiancare a sx le colonne della base In rosso sono evidenziate le colonne in base ( B), in blu quelle fuori base ( N) Si aggiunge una colonna ausiliaria che evidenzia le variabili in base, mentre alla riga 0 nella colonna del termine noto compare il valore corrente della funzione obiettivo cambiato di segno, inteso come il vincolo cx –z = 0

  5. esempio • Min -13 x1 – 10 x2: • 3 x1 + 4 x2 + x3 = 24 • x1 + 4 x2 + x4 = 20 • 3x1 + 2 x2 + x5 = 18 • xi 0

  6. Esempio: usiamo i coloriper denotare le variabili in B e in N x1 x2x3x4 x5 z AB-1b c. red. -13 -10 0 0 0 -1 0 Riga 1 3 4 1 0 0 Riga 2 1 4 0 1 0 Riga 3 3 2 0 0 1 x3 x4 x5 24 20 18 La base corrente e’ data dagli indici {3,4,5} mentre sono fuori base x1 e x2. La soluzione di base associata ha valore x =[0,0,24,20,18] con costo pari a 0. La tabella e’ gia in forma canonica rispetto alla base corrente (premoltiplicata per l’inversa della matrice di base, e il vettore dei costi azzerato nelle componenti in B) Le operazioni utilizzabili sono quelle invarianti rispetto alle soluzioni.

  7. Entrambe le variabili fuori base hanno costo ridotto <0, scelgo la variabile con indice minore x1 (ininfluente) ☹ x1 x2x3x4 x5 z AB-1b c. red. -13 -10 0 0 0 -1 0 Riga 1 3 4 1 0 0 Riga 2 1 4 0 1 0 Riga 3 3 2 0 0 1 x3 x4 x5 24 20 18 Per determinare l’indice della variabile uscente devo calcolare il minimo rapporto tra il valore corrente della variabile i-esima della base e la componente i-esima della colonna della variabile entrante, per le sole componenti >0. Minimo {24/3, 20/1, 18/3} = 6  esce x5. Devo fare pivot su a31 in modo tale che la colonna entrante A1 prenda la forma della colonna uscente A5(dividere la III riga per 3, poi sommarla alla II moltiplicata per -1, e sommarla alla riga I moltiplicata per -3) e azzerare il costo ridotto (sommarla alla riga 0 moltiplicata per 13)

  8. Base corrente B={1,3,4} ☹ x1 x2x3x4x5 z AB-1b c. red. 0 -4/3 0 0 13/3 -1 78 Riga 1 0 2 1 0 -1 Riga 2 0 10/3 0 1 -1/3 Riga 3 1 2/3 0 0 1/3 x3 x4 x1 6 14 6 Facendo pivot su a31 ho trasformato A1 nella colonna 3 della matrice identita’ e azzerato il suo costo ridotto Ora solo x2 ha costo ridotto <0: entra x2 e devo calcolare il minimo rapporto per determinare la variabile uscente. Min {6/2, 14.3/10, 6.3/2}=3, esce x3 e faro’ pivot sull’elemento a12.

  9. Base corrente B={1,2,4} x1 x2 x3x4x5 z AB-1b c. red. 00 4/6 0 11/3 -1 82 Riga 1 0 1 1/2 0 -1/2 Riga 2 0 0 -10/6 1 8/6 Riga 3 1 0 -1/3 0 0 x2 x4 x1 3 4 4 Facendo pivot su a12 ho trasformato A2 nella colonna 1 della matrice identita’ e azzerato il suo costo ridotto Tutti i costi ridotti sono 0 la soluzione corrente x = [4,3,0, 4,0] e’ ottima, di costo -82.

  10. Min - 5x1 - 7x2: 2x1 + x2 8 x1 + 2x2  9 x1 + x2  5 x1,x2  0 Max 2x1 + 5x2: x1 - 4x2 8 -x1 + x2  6 -3x1 + 2x2  5 x1,x2  0 Esercizi:Risolvere con il metodo del tableau i seguenti problemi di PL:

  11. Compito Debugging del modello Validazione del modello Allocazione ottima delle risorse (vettore b) Valutare le stime dei parametri del modello Definire i trade-off tra i parametri del modello Obiettivo Trovare errori, mancanze e punti deboli del modello Dimostrarne la validita’ Destinare il giusto quantitativo di risorse a ciascuna attivita’ Individuare i parametri critici da stimare con maggiore precisione Trovare il miglior trade-off Analisi post ottimale Tecnica Riottimizzazione Soluzione di successive varianti Prezzi ombra Analisi di sensisitivita’ Programmazione lineare parametrica

  12. riottimizzazione • I problemi reali hanno dimensioni consistenti (O(104) variabili e vincoli) di cui puo’ essere necessario esaminare e risolvere diverse varianti, in fase di messa a punto (debugging) del modello. • Durante la fase di validazione si eseguiranno anche numerosi test su dati passati per confrontare le soluzioni del modello con quelle effettive, prese nella realta’

  13. riottimizzazione • Quando si devono risolvere numerose varianti di un modello tra loro leggermente diverse, anziche’ ripartire ogni volta da capo (from scratch), quando e’ possibile, risulta + conveniente effettuare una ripartenza a caldo (warm start), a partire dalla soluzione ottima del modello precedente x*. • se x* e’ ancora una soluzione di base ammissibile del nuovo modello ma non piu’ ottima (ad esempio, per l’introduzione di una nuova variabile) si applica il simplesso primale, altrimenti, se e’ ancora di base ma non ammissibile (ad esempio per l’introduzione di un nuovo vincolo) si applica il simplesso duale

  14. Introduzione di una nuova variabile xn+1: cosa cambia? • Aggiungo una colonna al tableau, la soluzione corrente e’ ancora ammissibile nel nuovo spazio Rn+1, intendendo la nuova variabile fuori base a valore 0. • Da x*  Rn passo a x’=[x*,0]  Rn+1 • Devo calcolare il costo ridotto di xn+1 per verificare se x’ e’ ottima. Se no, applico il simplesso primale

  15. Base corrente B={1,2,4} x1 x2 x3x4x5 z c. red. 00 4/6 0 11/3 -1 82 Riga 1 0 1 1/2 0 -1/2 Riga 2 0 0 -10/6 1 8/6 Riga 3 1 0 -1/3 0 0 -cB AB-1b x2 x4 x1 3 4 4 AB-1b la soluzione corrente x = [4,3,0, 4,0] in R5 e’ ottima, di costo -82.

  16. Inserisco una nuova variabile x6, di cui e’ nota la colonna A6 nella matrice originaria e il costo c6 x1 x2 x3x4x5x6 z c. red. 00 4/6 0 11/3 c6 -1 82 Riga 1 0 1 1/2 0 -1/2 a16 Riga 2 0 0 -10/6 1 8/6 a26 Riga 3 1 0 -1/3 0 0 a36 -cB AB-1b _ x2 x4 x1 3 4 4 AB-1b la colonna A6 puo’ essere aggiunta al tableau e portata nella forma AB-1A6 tramite le consuete operazioni elementari. il costo ridotto c6- cB AB-1A6 deve venire calcolato from scratch, e poi inserito in tabella. Se risolta <0 allora x6 entra in base altrimenti la soluzione ottima non cambia (x6=0)

  17. Aggiungo un nuovo vincolo am+1x=bm+1:cosa cambia?

  18. Consideriamo nuovamente la rappresentazione della regione ammissibile del problema della WinDoorGlass, con ottimo in x*. Introduco il vincolo a4 : e’ rispettato da x* che resta ottimo Se introduco il vincolo a5 poiche’ questo e’ violato da x*, allora x*diventa NON AMMISSIBILE ☹ devo applicare un passo delsimplesso duale per determinare il nuovo vertice ottimo x’ x2 10 8 a5:x1 + 5/6x2  6 (x7=0) a2: x2 6 (x4=0) X* 6 x’ a1:x1 4 (x3=0) a4: x1 - x2  3 (x6=0) 4 x1=0 2 a3: 3x1+2 x2 18 (x5=0) x1 x2=0 0 1 2 4 5 6 8

  19. Prezzi ombra • Interpretazione del problema come allocazione ottima di risorse limitate (1 vincolo   risorsa) in quantita’ b (rhs) • Il livello disponibile bi puo’ essere una decisione reversibile alla luce dell’impatto sulla soluzione ottima • ? Quanto sarei disponibile a pagare per ottenere 1 unita’ supplementare per la risorsa i? • In un sistema di equilibrio, il prezzo unitario e’ tanto quanto permette di migliorare il valore ottimo della funzione obiettivo  prezzo ombra della risorsa = suo valore marginale

  20. Primo caso:Risorsa eccedente nel punto di ottimo: valore marginale della risorsa NULLO (il vincolo relativo alla specifica risorsa non e’ aderente al punto di ottimo corrente): xB 10 traslare l’iperpiano associato al vincolo xA 4 (diventa xA5) non modifica le coordinate di x* 8 a2: xB 6 6 a1:xA 4 4 C = [ 3, 5 ] 2 a3: 3xA+2 xB 18 0 1 2 4 5 6 8 xA

  21. Secondo caso:Risorsa esaurita nel punto di ottimo • Se la slack della risorsa si annulla nell’ottimo x*, il vincolo e’ aderente al punto di ottimo. • Sia x’ l’ottimo disponendo di 1 unita’ supplemetare della risorsa i (spostando il vincolo i parallelo a se stesso, le coordinate del punto di ottimo cambiano da x* a x’).

  22. Risorsa esaurita nel punto di ottimo: (il vincolo della risorsa e’ aderente al punto di ottimo corrente): valore marginale della risorsa >0 xB 10 traslare l’iperpiano associato al vincolo xB 6(diventa xB7) modifica il punto di ottimo da x* a x’ (ma non la base, in questo caso, poiche’ restano attivi sia a2 che a3) 8 x’ a2: xB 6 6 x* a1:xA 4 4 C = [ 3, 5 ] 2 a3: 3xA+2 xB 18 xA 0 1 2 4 5 6 8

  23. Valutazione dell’incremento  della funzione obiettivo in seguito all’incremento unitario di una componente dei rhs Hp: la base ottima B non cambia quidi xN resta a 0 (i vincoli attivi in x* e in x’ sono i medesimi) il vettore dei rhs e’ cambiato da b a b’=(b+ei) quindi xB= AB-1 b’ La variazione della funzione obiettivo e’ data da d = cx’-cx* = c (x’-x*) = c ([AB-1 b’,0]T - [AB-1b,0]T) = cBAB-1(b’-b) = cBAB-1(b+ei-b) = cBAB-1ei = yi 0 Il prezzo ombra della risorsa e’ la componente i-esima del prodotto cBAB-1 (comando getdual(vincolo) in Mosel) Vedremo nel seguito come a questa quantita’ corrisponda una precisa variabile nello spazio duale

  24. EsercizioCalcolare i prezzi ombra y delle 3 risorse del problema della WindorGlass, verificando che sono nulli per le risorse che non si esauriscono nella soluzione ottima • Oss: • dato il sistema Ax=b, x0 portato in forma canonica Axb premoltiplicando per AB-1, dove B e’ la base ottima e x* la soluzione ottima associata, • dato y il vettore dei prezzi ombra delle risorse rispetto a B, ALLORA vale che (b-Ax*)y=0 Questo risultato nella teoria della dualita’ va sotto il nome di teorema degli SCARTI COMPLEMENTARI

  25. Analisi di sensitivita’ • I parametri del modello sono frutto di una stima • Vogliamo testare quanto la soluzione ottima sia robusta rispetto a tali stime • I parametri per cui si registra una maggiore variazione della soluzione ottima sono da stimare con maggiore accuratezza in fase di messa a punto del modello, e da monitorare attentamente durante il periodo di applicazione dei risultati, per verificare se i valori stimati si mantengono stabili. • I sw commerciali offrono strumenti per l’analisi di sensitivita’ per i singoli parametri (bi, cj principalmente) che rispondono alla domanda “entro quale range bi, cj puo’ variare mantenendo x* (o la base associata) come ottimo corrente?” • Comandi MOSEL: • XPRSrhssa fornisce lower e upper bound dell’intervallo in cui puo’ variare il singolo elemento del vettore dei termini noti mantenendo la stessa base nel punto di ottimo • XPRSobjsa fornisce lower e upper bound dell’intervallo in cui puo’ variare il singolo elemento del vettore dei costi mantenendo la stessa base nel punto di ottimo

  26. Programmazione lineare parametrica • Estende il concetto di analisi di sensitivita’ • Permette di stimare come varia la soluzione ottima quando + parametri variano simultaneamente all’interno di un intervallo, data una correlazione fra i parametri, per effetto di un unico fattore che ne governa il cambiamento (es. il tasso di crescita, l’euribor, etc. puo’ far cambiare insieme un costo di produzione e beneficio atteso)

  27. DUALITA’ HL cap 6 Risolvere il problema P:Min cx Ax=b, x0, vuol anche dire cercare la stima w il piu’ possibile esatta del valore ottimo cx*, vale a dire cercare w*, ovverosia il massimo valore w che sia non superiore a cx, xP Possiamo quindi definire il problema equivalente D: Max w: wcx, xP, wR. NB • Se P ha ottimo finito, l’ottimo di D non puo’ che avere uguale valore • D ha un numero infinito di vincoli del tipo wcx (dovendo limitare superiormente il costo di ogni soluzione x ammissibile di P) e assume valore in R, • cerchiamone formulazioni equivalenti + trattabili

  28. Poiche’ l’ottimo di P sta su un vertice del politopo P, allora possiamo trasformare il sistema formato dall’insieme infinito di vincoli wcx, xP in un sistema equivalente formato da un numero finito per i soli x vertici del politopo P, passando alla forma wcxv, vV(P) • Se P ha ottimo finito (z*=cx* > -) allora esiste una base ottima B tale che • c – cBAB-1A  0 (costi ridotti non negativi) • z* = cBAB-1b per cui posso riformulare il problema come: Max w: w cBAB-1b, cBAB-1A  c per ogni base B • Introduco yRm come la soluzione di base duale associata alla base B, y = cBAB-1, e riformulo il problema come determinare la y tale che • w  yb • yA  c

  29. w  cx,  xP  y  Rm: y A  c w  yb Teorema (dell’alternativa o lemma di Farkas): dato un problema di programmazione lineare z* = min {cx: xP} dove P={x: Ax=b, x0} allora vale che 

  30. w* = max w : w  cx,  xP, wR • Cercare • Equivale a cercare • Sono equivalenti i due problemi, P e D w* = max w : w  yb y A  c, y Rm z* = min cx : Ax = b x0, xRn w* = max yb : y A  c, y Rm

  31. Coppie di problemi primale-duale • Pillole per polli: l’allevatore • Ha a disposizione 2 tipi di mangimi, A,B di costo cA,cB, di cui conosce i valori nutrizionali di proteine, carboidrati e vitamine • Sono noti gli apporti nutrizionali minimi di una dieta per essere un “super=pollo” • L’allevatore vuole la dieta super-pollo di costo minimo

  32. Formalizzazione algebrica del problema • Variabili: xA, xB0 • Vincoli: per ogni principio nutritivo, occorre raggiungere la soglia minima carbA xA + carbB xB mincarb protA xA + protB xB minprot vitA xA + vitB xB minvit • Funzione obiettivo: minimizzare la spesa • Min cAxA + cBxB

  33. Esercizio: formulare il problema con i dati seguenti

  34. Il cugino chimico dell’allevatore ….. Sintetizza in garage pillole per polli di vitamine carboidrati e proteine… Che vuole vendere all’allevatore al massimo prezzo possibile Il cugino risolve un problema di equilibrio… Massimizzare il profitto restando sul mercato = essendo competitivo con i mangimi

  35. Il cugino chimico risolve il problema • Max mincarb yc + minprot yp + minvit yv : carbA yc + protA yp + vitA yv cA carbB yc + protB yp + vitB yv cB yc yp yv 0 Il vincolo 1 garantisce la concorrenza con il mangime A Il vincolo 2 garantisce la concorrenza con il mangime B

  36. I due problemi P, D sono EQUIVALENTI(Fischetti 4.2-4.4) ma lavorano in spazi decisionali diversi x  R2, y  R3 Relazioni: • A R3x2 e’ la matrice dei vincoli di P • ATR2x3 e’ la matrice dei vincoli di D • be’ il rhs di P, e il vettore dei costi di D • c e’il vettore dei costi di P e il rhs di D

  37. P (min cx) ai x  bi ai x  bi ai x = bi xj  0 xj 0 xj libera D (max yb) yi  0 yi 0 yi libera yAj  cj yAj  cj yAj = cj Tabella generale delle corrispondenze(duale in modo automatico) Una variabile Dper ogni vincolo P e una variabile P per ogni vincolo D

  38. esercizio • Costruire il duale del problema della WindoorGlass in base alla tabella. • Riusciamo a darne una interpretazione?

  39. WindoorGlass, primale e duale PRIMALE Min -3 xA -5 xB: xA + xC= 4 (a1 2 xB + xD= 12 (a2 3xA + 2 xB + xE= 18 (a3 xA, xB, xC, xD, xE  0 DUALE Max 4y1 + 12y2 + 18y3 y1 + 3y3≤ -3 (a1 2 y2 + 2y3≤ -5 (a2 y1≤ 0 (a3 y2≤ 0 (a4 y3≤ 0 (a5

  40. Ma anche…. PRIMALE Min 4y1 + 12y2 + 18y3 y1 + 3y3= 3 (a1 2 y2 + 2y3= 5 (a2 y1 , y2 , y3 0 DUALE Max 3 xA + 5 xB: xA≤ 4 (a1 2 xB≤ 12 (a2 3xA + 2 xB≤ 18 (a3 Attraverso passaggi equivalenti si trasforma la coppia di problemi in una coppia in cui riconosciamo un nuovo primale e un nuovo duale. Possiamo interpretare il problema di dx come l’acquisizione da parte di un soggetto esterno delle ore disponibili dei 3 impianti (4 del primo, 12 del secondo, 18 del terzo), a fronte della spesa minima che garantisce uguale reddito al produttore, affinche’ l’offerta del soggetto esterno sia competitiva con quanto il produttore guadagnerebbe se utilizzazze le ore disponibili per realizzare la propria produzione (equilibrio).

  41. Th dualita’ debole: xP, yD cxyb Th:idempotenzail duale del duale e’ il primale • Banalmente segue dalla tabella Per P= min {cx: Ax=b, x0}, D= max {yb: yAc} yb = yAx  cx Max yb   Min cx

  42. Th:dualita’ forte dati P= min {cx: Ax=b, x0}, D= max {yb: yAc} con ottimo finito, allora Min cx = Max yb Corollario: sia x ammissibile per P, y ammissibile per D, Se vale che cx=yb  x e’ ottima per P, y e’ ottima per D. Oss il costo di una soluzione ammissibile a uno dei due problemi fornisce una STIMA ottimistica del valore OTTIMO dell’altro Max yb  cx*=y*b  Min cx

  43. Casi possibili

  44. Th scarti complementari: anche detti “ condizioni di ortogonalita’ ”dati, xP, yD P= min {cx: Ax=b, x0}, D= max {yb: yAc}se(c-ya)x=0  x e y sono ottime generalizzando date x,y ammissibili per P= min {cx: Ax  b, x0}, D= max {yb: yAc, y0} (c-ya)x=0 e y(Ax-b)=0  x e y sono ottime Possiamo vedere in questa ottica il fatto che i prezzi ombra (variabili duali) delle risorse non esaurite all’ottimo siano 0

  45. Simplesso duale (cenni) (Fischetti 4.7) • Consideriamo la coppia di problemi P e D P: Min cx : Ax=b, x0 D: Max yb : yAc P: min D: max n m =  x0 c x y b Tale che: Tale che: c x A b AT y

  46. Ammissibilita’ e ottimalita’ duale • Data una base B posso calcolare y = cB AB-1 la soluzione di base duale  analizzo la soluzione di base complementare associata nello spazio primale x= [AB-1b, 0]) • Per costruzione y soddisfa gli m vincoli in B (detti vincoli attivi) yAB cB, come =  infatti i costi ridotti delle componenti in base della soluzione primale complementare x sono nulli per costruzione (cB - cB AB-1AB = 0) • y e’ duale ammissibile se sono soddisfatti anche i vincoli in N, AN y  cN  corrisponde a chiedere costi ridotti 0 nel primale per la soluzione di base complementare associata, x= [AB-1b, 0], quindi anche per le componenti xN Quindi l’ammissibilita’ duale di una soluzione di base yB equivale a chiedere la primale ottimalita’ della soluzione primale associata alla stessa base B • Condizione di ottimalita’ duale nello spazio duale (posso immaginare il politopo): secondo la geometria, la soluzione duale e’ ottima se il gradiente della funzione obiettivo duale (b)  cono dei gradienti dei vincoli attivi (cioe’ le righe in base)   x0, x  Rm, tale che ABx = b  da x posso costruire una soluzione primale ammissibile ponendo xB= x e completando il vettore nello spazio Rn con n-m elementi nulli (xN=0)

  47. Ammissibilita’ duale  ottimalita’ primale, Ammissibilita’ primale  ottimalita’ duale • Data una soluzione di base del duale y=cBAB-1 i gradienti dei vincoli non attivi hanno moltiplicatore 0  • posso costruire un vettore x = [x, 0] in Rn, che soddisfa A x = b, x 0.  ammissibilita’ primale • se y= cB AB-1 e’ duale ammissibile, significa: AT y c  c  cB AB-1 A  c 0  condizione di ottimalita’ primale sui costi ridotti _ Allora posso costruire un metodo che esplora le basi, mantiene la dualeammissibilita’ cercando la duale ottimalita’ e interpretarlo nello spazio primale Questo metodo si chiama SIMPLESSO DUALE

  48. Interpretazione del Simplesso dualenello spazio primale di Ax=b, x0 Data una soluzione di base corrente alla iterazione k, x(k)= [xB,0] dove xN=0 e xB= AB-1b tale che: • soddisfa i criteri di ottimalita’ primale (ammissibilita’ duale): ha costi ridotti non negativi: c  cBAB-1A • non e’ primale ammissibile nei soli vincoli di segno x  0 (non e’ ottimo duale): per costruzione x(k) soddisfa Ax=b, ma  almeno un vincolo i1..m tale che AB-1ai x(k) = (AB-1b ei) <0

  49. Si danno 2 casi • L’intera riga i di AB-1A ha componenti 0, per cui nessun vettore x 0 potra’ mai soddisfare contemporaneamente i vincoli Ax=b e x0  primale inammissibile e duale illimitato •  un componentej di AB-1aidi segno negativo (a’ij= AB-1aiej<0): utilizzando tale elemento a’ij come pivot posso moltiplicare per -1 il vincolo e eliminare la negativita’ della componente j in soluzione MA devo mantenere l’ottimalita’ primale: la scelta della componente i tra gli elementi negativi della riga AB-1aj deve minimizzare il valore assoluto del rapporto tra il costo ridotto di i e l’elemento selezionato a’ij : i = ArgMini=1..n { (ci-cBAB-1Ai) / |AB-1ai ej| tale che AB-1ai ej<0}

  50. Rappresentiamo la regione ammissibile del primale come il politopo P. Il simplesso duale si muove sui punti di intersezione di m vincoli, tali per cui c sta nel cono dei gradienti dei vincoli attivi (ottimalita’ primale = ammissibilita’ duale). Si muove su basi adiacenti cercando di soddisfare l’ammissibilita’ primale, che e’ la condizione di ottimalita’ del problema duale. In BLU le soluz di base DUALI ammissibili (costi ridotti 0) In ROSSO le soluz di base che NON sono DUALI ammissibili 8 Ad ogni step - l’algoritmo seleziona un vincolo non soddisfatto, - si muove su di vertice adiacente con un cambio di base verso l’ammissibilita’ primale, mantenedo l’ottimalita’ primale = tenendo c nel cono dei gradienti dei vincoli attivi 6 4 2 0 1 2 4 5 6 8 x1

More Related