4.6 Dualtà n Programmazone Lneare Ad ogn PL n forma d mn (max) s assoca un PL n forma d max (mn) Spaz e funzon obettvo dvers ma n genere stesso valore ottmo! Esempo: l valore massmo d un flusso ammssble è uguale alla capactà mnma d un taglo che separa la sorgente s dalla destnazone t. E. Amald Fondament d R.O. Poltecnco d Mlano 1
Sa Motvazone: stma del valore ottmo max z = 4x 1 + x 2 + 5x 3 + 3x 4 x 1 x 2 x 3 + 3x 4 1 5x 1 + x 2 + 3x 3 + 8x 4 55 -x 1 + 2x 2 + 3x 3 5x 4 3 x 0 =1,, 4 stmamo l valore ottmo z *. Per dfetto: (0,0,1,0) z * 5 (2,1,1,1/3) z * 15 (3,0,2,0) z * 22 anche se fortunat non samo cert che sa la soluzone ottma! E. Amald Fondament d R.O. Poltecnco d Mlano 2
Per eccesso? Moltplcando l 2 vncolo per 5/3 s ottene una dsequazone che domna la funzone obettvo: 4x 1 + x 2 + 5x 3 + 3x 4 25/3x 1 + 5/3x 2 + 5x 3 + 40/3x 4 275/3 soluzone ammssble z * 275/3 Sommando 2 e 3 vncolo s ottene: 4x 1 + 3x 2 + 6x 3 + 3x 4 58 z * 58 stma mglore E. Amald Fondament d R.O. Poltecnco d Mlano 3
Stratega generale: combnare lnearmente vncol con fattor moltplcatv non negatv ( -esmo vncolo moltplcato per y 0 ) prmo caso: y 1 =0, y 2 =5/3, y 3 =0 secondo caso: y 1 =0, y 2 =1, y 3 =1 In generale: y 1 (x 1 x 2 x 3 +3x 4 ) + y 2 (5x 1 + x 2 + 3x 3 + 8x 4 ) + y 3 (-x 1 + 2x 2 + 3x 3 5x 4 ) y 1 + 55y 2 + 3y 3 E. Amald Fondament d R.O. Poltecnco d Mlano 4
che equvale a: (y 1 + 5y 2 y 3 ) x 1 + (-y 1 + y 2 + 2y 3 ) x 2 + (-y 1 + 3y 2 + 3y 3 ) x 3 (*) + (3y 1 + 8y 2 5y 3 ) x 4 y 1 + 55y 2 + 3y 3 NB: y 0 altrment camba l verso delle dsequazon Per poter utlzzare l termne d snstra d (*) come lmte superore su z = 4x 1 + x 2 + 5x 3 + 3x 4 E. Amald Fondament d R.O. Poltecnco d Mlano 5
bsogna avere z = 4x 1 + x 2 + 5x 3 + 3x 4 y 1 + 5y 2 y 3 4 -y 1 + y 2 + 2y 3 1 -y 1 + 3y 2 + 3y 3 5 3y 1 + 8y 2 5y 3 3 y 0, =1, 2, 3 In tale caso, qualsas soluzone ammssble x soddsfa n partcolare: 4x 1 + x 2 + 5x 3 + 3x 4 y 1 + 55y 2 + 3y 3 z * y 1 + 55y 2 + 3y 3 E. Amald Fondament d R.O. Poltecnco d Mlano 6
Vsto che cerchamo una stma per eccesso d z * mglore possble: (D) mn y 1 + 55y 2 + 3y 3 y 1 + 5y 2 y 3 4 -y 1 + y 2 + 2y 3 1 -y 1 +3y 2 + 3y 3 5 3y 1 +8y 2 5y 3 3 y 0 =1, 2, 3 Il problema (D) s chama problema duale, quello orgnale s chama problema prmale E. Amald Fondament d R.O. Poltecnco d Mlano 7
In forma matrcale: Prmale (P) max z = c T x Ax b x 0 mn w=b T y Duale (D) A T y c o y T A c T y 0 E. Amald Fondament d R.O. Poltecnco d Mlano 8
Problema duale max z = c T x mn w=b T y (P) Ax b x 0 (D) A T y c y 0 Duale forma per standard? mn z = c T x Ax = b x 0 E. Amald Fondament d R.O. Poltecnco d Mlano 9
Forma standard: mn z = c T x max -c T x (P) Ax = b x 0 A x b -A -b x 0 A x b con A matrce m n duale A T mn (b T b T ) y 1 y 2 y 1 y 2 (A T A T ) -c y 1 0, y 2 0 y = y 1 y 2 E. Amald Fondament d R.O. Poltecnco d Mlano 10
mn (b T b T ) y 1 y 2 y 1 y 2 (A T A T ) -c y 1 0, y 2 0 (D) max w=b T y A T y c y m lbere y y 2 y 1 lbere! mn -b T (y 2 y 1 ) -A T (y 2 y 1 ) -c y 1 0, y 2 0 E. Amald Fondament d R.O. Poltecnco d Mlano 11
Regole general d trasformazone Prmale (mn) m vncol n varabl coeffcent f. obettvo termn not A vncol d = varabl lbere vncol d ( ) varabl 0 ( 0) Duale (max) m varabl n vncol termn not coeffcent f. obettvo A T varabl lbere vncol d = varabl 0 ( 0) vncol d ( ) E. Amald Fondament d R.O. Poltecnco d Mlano 12
Esempo: mn x 1 + x 2 x 1 x 2 2 (P) 3x 1 + 2x 2 12 x 1, x 2 0 duale max 2y 1 + 12y 2 y 1 + 3y 2 1 -y 1 + 2y 2 1 y 1 0, y 2 0 y~ 1 -y 1 max -2y~ 1 + 12y 2 -y~ 1 + 3y 2 1 y~ 1 + 2y 2 1 ~ y 1 0, y 2 0 E. Amald Fondament d R.O. Poltecnco d Mlano 13
oppure: mn x 1 + x 2 x 1 x 2 2 (P) 3x 1 + 2x 2 12 x 1, x 2 0 mn x 1 + x 2 -x 1 + x 2-2 3x 1 + 2x 2 12 x 1, x 2 0 duale max -2y 1 + 12y 2 -y 1 + 3y 2 1 y 1 + 2y 2 1 y 1, y 2 0 E. Amald Fondament d R.O. Poltecnco d Mlano 14
Eserczo: (P) mn 10x 1 + 20x 2 + 30x 3 2x 1 x 2 1 x 2 + x 2 3 x 1 x 3 = 3 x 1 0, x 2 0, x 3 lbera Duale? E. Amald Fondament d R.O. Poltecnco d Mlano 15
Propretà: l duale del problema duale concde con l problema prmale. NB: non mporta quale è d max o d mn mn z = c T x max w = b T y (P) Ax b x 0 (D) A T y c y 0 E. Amald Fondament d R.O. Poltecnco d Mlano 16
Teorema d dualtà debole Sano X {x : Ax b, x 0} ø e Y {y : A T y c, y 0} ø, per ogn soluzone ammssble x X d (P) e ogn soluzone ammssble y Y d (D) s ha che b T y c T x E. Amald Fondament d R.O. Poltecnco d Mlano 17
E. Amald Fondament d R.O. Poltecnco d Mlano 18 Dat x X e y Y, s ha Ax b, x 0 e A T y c, y 0 x T A T ossa c b T y x T A T y x T c = c T x = = = = = = = n m n n m m y c x y a y x a b y 1 1 1 1 1 1 Dm.
Conseguenza: Se x * è ammssble per l problema prmale (P) ( x * X ), y * è ammssble per l problema duale (D) ( y * Y ), e valor delle rspettve funzon obettvo concdono c T x * = b T y *, allora x * è ottma per (P) e y * è ottma per (D). E. Amald Fondament d R.O. Poltecnco d Mlano 19
Teorema d dualtà forte Se X = {x : Ax b, x 0} ø e mn{c T x : x X} fnto esstono x * X e y * Y tal che c T x * = b T y *. mn{ c T x : x X } = max{ b T y : y Y } ottme z = c T x x X ammssble per (P) z * = w * w = b T y y Y ammssble per (D) E. Amald Fondament d R.O. Poltecnco d Mlano 20
Dm. Rcavare soluzone d (D) da soluzone d (P) Sano mn c T x max y T b (P) Ax = b x 0 (D) y T A c T y m e x* soluzone d base ammssble ottma d (P) x x* = * B x * con N x * B = B-1 b x * N = 0 fornta (dopo # fnto d terazon) da metodo del smplesso con regola d Bland. E. Amald Fondament d R.O. Poltecnco d Mlano 21
Consderamo y T c T B B-1 y è soluzone ammssble d (D): c T N = ct N (ct B B-1 )N = c T N yt N 0 T cost rdott delle varabl fuor base ottmaltà d x * y T N c T N E. Amald Fondament d R.O. Poltecnco d Mlano 22
c T B = ct B (ct B B-1 )B = c T B yt B = 0 T y T B c T B cost rdott delle varabl n base I y è ottma per (D): y T b = (c T B B-1 )b = c T B (B-1 b) = c T B x* B = ct x * qund y = y * E. Amald Fondament d R.O. Poltecnco d Mlano 23
Corollaro Data una coppa d problem dual (P) e (D), sono possbl solo 4 cas: P D ottmo PL llmtato PL namms. ottmo 1) PL llmtato PL namms. 2) 3) 4) E. Amald Fondament d R.O. Poltecnco d Mlano 24
Teorema dualtà forte 1) Teorema dualtà debole 2) e 3) 4) non è escluso: mn -4x 1 2x 2 -x 1 + x 2 2 (P) x 1 x 2 1 x 1, x 2 0 max 2y 1 + y 2 -y 1 + y 2-4 (D) y 1 y 2-2 y 1, y 2 0 regon ammssbl vuote E. Amald Fondament d R.O. Poltecnco d Mlano 25
Interpretazone economca Immagnare una stuazone d competzone fra due agent n un mercato Problema della deta: n alment =1,, n m sostanze nutrtve =1,, m (vtamne, ) a b c quanttà d -esma sostanza n untà d -esmo almento fabbsogno d -esma sostanza costo d una untà d -esmo almento E. Amald Fondament d R.O. Poltecnco d Mlano 26
E. Amald Fondament d R.O. Poltecnco d Mlano 27 n x m b x a x c n n 1,..., 0 1,..., 1 1 = = = = (P) (D) mn max m y n c y a y b m m 1,..., 0 1,..., 1 1 = = = =
Interpretazone duale: Una azenda che sntetzza drettamente le m sostanze nutrtve deve decdere l prezzo untaro y per cascuna n modo da massmzzare l proftto. Se l consumatore compra sostanze sntetche ne compra b untà per ogn, 1 m Il costo delle sostanze sntetche deve essere compettvo: m a y c = 1,..., n = 1 costo sostanze sntetche par a 1 untà d -esmo almento E. Amald Fondament d R.O. Poltecnco d Mlano 28
Se programm lnear (P) e (D) sono ammssbl, teorema d dualtà forte z * = w * stuazone d equlbro (due alternatve dello stesso costo) NB: Legame con Teora de goch (goch a somma zero) E. Amald Fondament d R.O. Poltecnco d Mlano 29
Condzon d ottmaltà Dat mn z = c T x max w=b T y (P) X Ax b x 0 (D) Y y T A c T y 0 soluzone ammssble x * X e y * Y sono ottme y *T b = c T x * una equazone n n+m ncognte E. Amald Fondament d R.O. Poltecnco d Mlano 30
Vsto che y *T b y *T Ax * c T x *, abbamo Ax * c T y *T b = y *T Ax * e y *T Ax * = c T x * coè y *T (Ax * -b) = 0 e (c T -y *T A) x * = 0 0 T 0 0 T m+n equazon n n+m ncognte 0 Condzon necessare e suffcent d ottmaltà! E. Amald Fondament d R.O. Poltecnco d Mlano 31
Teorema (degl scart complementar) x * X e y * Y sono ottme se e solo se -esma rga d A scarto s del -esmo vncolo d (P) y * (at x* -b ) = 0 = 1,, m (c T y*t A ) x * = 0 = 1,, n scarto -esmo vncolo d (D) -esma colonna d A All ottmo l prodotto d ogn varable e della varable d scarto corrspondente del problema duale è = 0. E. Amald Fondament d R.O. Poltecnco d Mlano 32
n a = 1 Interpretazone per l problema della deta x * > b y * = 0 Se deta ottma contene un eccesso d -esma sostanza, consumatore non accetterà d pagare y * > 0 * n =1 * y > 0 a x = b Se azenda fssa un prezzo y * > 0 è che l consumatore non ha un surplus d -esma sostanza E. Amald Fondament d R.O. Poltecnco d Mlano 33
m y = 1 * a < c prezzo sostanze contenute n un untà d -esmo almento x * = 0 al consumatore non convene comprare l almento * m =1 * x > 0 y a = c Se l consumatore nclude l -esmo almento nella deta ottma vuol dre che l azenda ha scelto de prezz y * t.c. l prezzo delle sostanze contenute n una untà d -esmo almento non è nferore a c E. Amald Fondament d R.O. Poltecnco d Mlano 34
Esempo: mn 13x 1 + 10x 2 + 6x 3 s.v. 5x 1 + x 2 + 3x 3 = 8 (P) 3x 1 + x 2 = 3 x 1, x 2, x 3 0 max 8y 1 + 3y 2 s.v. 5y 1 + 3y 2 13 (D) y 1 + y 2 10 3y 1 6 Verfcare che x * = (1, 0, 1) ammssble è una sol. ottma non degenere d (P). Supporre che sa vero e dervare, medante le condzon degl scart complementar, la sol. ottma corrspondente d (D). E. Amald Fondament d R.O. Poltecnco d Mlano 35
Poché (P) è n forma standard, le condzon y * (a T x* -b ) = 0 sono automatcamente soddsfatte, 1 2. Quella (c T y*t A ) x * = 0 loèper = 2 vsto che x* 2 = 0. Poché x * 1 > 0 e x* 3 > 0, ottenamo le condzon: 5y 1 + 3y 2 = 13 3y 1 = 6 e qund la soluzone ottma y * 1 = 2 e y * 2 = 1 d (D) con b T y * =19 = c T x *. E. Amald Fondament d R.O. Poltecnco d Mlano 36