PROGRAMMAZIONE LINEARE Una pccola ntroduzone R. Tade R. Tade 2 LA PROGRAMMAZIONE LINEARE L obettvo del captolo consste nel fornre lo scheletro d un problema d programmazone lneare e gl strument concettual per utlzzarlo. S suppone qund d avere gà superato le dffcoltà presentate dalla prma fase che l problema d decsone comporta, quella d modellzzazone del problema. Il modo mglore per comncare è la presentazone d un tpco esempo d programmazone lneare che, per quanto molto semplce, contene n sé gà tutt gl element che rtroveremo quando dovremo affrontare problem pù complcat. Qund vedremo tutte le defnzon e le consderazon che saranno ndspensabl per affrontare con charezza l captolo seguente dedcato all algortmo del smplesso, che rsolve tutta questa classe d problem. In partcolare vedremo: una ntroduzone, tramte un semplce esempo, del problema della programmazone lneare, la defnzone d forma standard d un problema d P.L. e le possbl procedure per rdurre un qualsas problema n questa forma, la defnzone d soluzone d base, l teorema fondamentale della programmazone lneare, l teorema d equvalenza tra punt d estremo e soluzon d base, la defnzone della forma canonca, e un possble metodo per rcondurvs, l metodo del pvot, utle per poter varare la soluzone d base, ntrodotto dapprma con una nterpretazone pù operatva, e, n seguto, con una seconda nterpretazone pù formale, un crtero per determnare l vettore che deve uscre dalla base, R. Tade 3 R. Tade 4 P. L. /
la determnazone d quale vettore è pù utle far entrare n base, la condzone d ottmaltà se la soluzone d base ottenuta è anche ammssble, un tpco esempo, quello delle deta. Un semplce esempo d Programmazone Lneare Un'mpresa produce due tp d televsor A e B. La capactà della lnea d produzone A è d 60 pezz/gorno e della B 50 pezz/gorno. Un televsore d tpo A rchede ora d manodopera, quello d tpo B 2 ore. È a dsposzone un massmo d 20 ore d manodopera/gorno da utlzzare per la produzone d A e B. Il proftto d A è d 20$, quello d B d 30$. Qual è la produzone gornalera che massmzza l proftto? max20a + 30B soggetto a: A 60 (capactà lnea A) B 50 (capactà lnea B) A+ 2B 20 (manodopera) R. Tade 5 R. Tade 6 B 30 Isoproftto = 800 B 60 50 50 Regone d ammssbltà de vncol A capactà lnea A 60 90 20 A Manodopera capactà lnea B Soluzone ottma: A = 60 B = 30 Proftto = 200$/gorno 60 R. Tade 7 Quanto llustrato nelle slde precedent è un tpco esempo d modello d programmazone lneare che consste n: - una funzone obettvo: MAX(20A+30B); - sstema de vncol a qual le ncognte del nostro problema devono sottostare: n questo caso d capactà e manodopera Inoltre l nseme de vncol rappresenta geometrcamente la regone d ammssbltà del problema; per ultma, la funzone obettvo è una funzone delle ncognte del problema (varabl d controllo) che no dobbamo cercare, n modo opportuno, d massmzzare. R. Tade 8 P. L. / 2
Qualsas problema d Programmazone Lneare (P. L.) può essere scrtto nella forma seguente che per defnzone denomnamo forma standard : mn( c x + c2x2+... + cnxn) st.. 2 2... nxn a2x + a22x2+... + a2nxn 2... =.. am x + am2x2+... + amnxn m x 0, x 0,..., x 0; 2 S assume b 0 (se necessaro, moltplcare per -) n Oppure n forma matrcale equvalente ma pù compatta: T mnc x st.. Ax x 0 x c T A b x 0 : vettore colonna n-dm. : vettore rga n-dm (cost delle varabl d controllo) : matrce m n : vettore colonna m-dm. sgnfca che tutte le component d x sono non negatve. R. Tade 9 R. Tade 0 Conversone d P. L. n forma standard a. Varabl d slack Se l -esmo vncolo è nella forma Qund l vncolo dventa: ax b aggungere y j 0 che è del tutto equvalente al precedente. ax+ y j a. Varabl d surplus Se l -esmo vncolo è nella forma ax b Qund l vncolo dventa: sottrarre y j 0 che è del tutto equvalente al precedente. ax y j R. Tade R. Tade 2 P. L. / 3
c. Varabl lbere: Se l problema ha delle varabl lbere x < >0 c. x =u -v, ove x è lbera e u 0, v 0 c2. elmnazone d x per sosttuzone; è noto nfatt che un numero reale s può esprmere tramte la dfferenza d due numer real postv. Per ultmo, se l problema fosse d massmo, per smmetra : ovvero f.o: MAX(f(x)) = MIN(-f(x)) max (c x) mn - (c x) R. Tade 3 R. Tade 4 Esempo: Il modello ottenuto dalle specfche del problema rsulta: ( ) max( 3x + 5x 7x) 2 3 I st.. 3 x + 7x + 6x 5 2 3 II 3 x + x 3 III x, x 0, x lbera IV 2 3 ( ) ( ) ( ) I) La funzone obettvo non è n forma standard, pochè è del tpo MAX(f(x)); Qund MAX(f(x)) MIN(-f(x)), ovvero: mn( 3x 5x + 7x ); 2 3 R. Tade 5 R. Tade 6 P. L. / 4
II) La varable x 3 è lbera la sosttusco, III) Il vncolo è d < aggungo una varable d e l problema dventa : mn( 3x 5x + 7( u v)); st.. 2 3x + 7x + 6( u v) 5; 2 3x + ( u v) ; x, x, u, v 0; 2 slack y ; l vncolo corrspondente dventa: 3x + 7x + 6u 6v + y = 5; 2 R. Tade 7 R. Tade 8 IV) Il vncolo è d > qund sottraggo una varable d surplus y 2 3x + u v y = 2 Rassumendo: l problema ha assunto la forma standard: mn( 3x 5x2 + 7u 7v); st.. 3x + 7x2 + 6u 6v + y = 5; 3x + u v y2 = ; x, x, u, v, y, y 0; 2 2 Infatt tutte le varabl sono postve, vncol sono tutt d uguaglanza, la funzone obettvo è del tpo mn(f(x)); R. Tade 9 R. Tade 20 P. L. / 5
Esemp mportant d P. L.: Problema della deta; Problema de trasport; Soluzon d base A x x : dm n (.) b : dm m A : dm m n Estraamo da A m vettor colonna l.. (esstono se l rango d A è m) ottenendo B d dm m m. B è non sngolare(*) e s può rsolvere n modo unvoco l sstema d equazon : B x B x B : dm m ; varabl d base (la base è B), varabl corrspondent alle colone d B Ponendo x = (x B, 0) s ottene una soluzone d A x (*) Matrce non sngolare (o regolare) : matrce quadrata d ordne m, con rango r=m. R. Tade 2 R. Tade 22 Naturalmente, (.) può non avere soluzon d base. Per evtare cò s fanno assunzon su A:. n > m 2. le rghe d A sono m equazon l.. (altrment rdondanza o contraddzone ne vncol) Defnzone: Se una o pù varabl d base n una sol. base sono nulle, quella sol. base è detta: Soluzone d base degenere Defnzone: x che soddsfa A x x 0 èdetta Soluzone ammssble Ne consegue che:: Se è anche d base: sol. base ammssble Se è d base degenere: sol. base ammssble degenere. R. Tade 23 Teorema fondamentale della P. L. mn st.. c T x Ax x 0 A: matrce m n d rango m (.2) ) se soluzone ammssble soluzone ammssble d base ) se soluzone ammssble ottma soluzone ammssble ottma d base R. Tade 24 P. L. / 6
Dm. d ) Hp: x = (x, x 2,..., x n ) soluzone ammssble A = a... a n x a + x 2 +... + x n a n x > 0, =, 2,..., p (p maggore, mnore o uguale a m); assumo qund; x = 0, = p+, p+2,..., n Studo l sstema con p; x a + x 2 +... + x p a p (.3) R. Tade 25 Caso : a,,..., a p sono l.. p m (perché A ha rango m) se p = m : la soluzone è d base per defnzone (c.v.d.); se p < m : sccome A ha rango m, allora c sono, oltre le p colonne, altr m-p vettor colonna l.. da restant n-p vettor ; l selezono e l affanco a p vettor colonna precedent: ho ndvduato m vettor l.. ; per le assunzon fatte n precedenza, le famose m-p varabl sono nulle ; soluzone ammssble d base (degenere perchè l vettore x b ha m-p component nulle) (c.v.d.); R. Tade 26 Caso 2: a,,..., a p sono l. d.; posso scrvere lo zero come loro combnazone lneare tale che y sa dverso dal vettore nullo conalmenouny >0 y a + y 2 +... + y p a p =0 (.4) moltplco per ε e sottraggo da (.3) (x - ε y )a + (x 2 - ε y 2 ) +... + (x p - ε y p )a p (.5) x - ε y è soluzone della (.5) ε,non necessaramente ammssble pochè può essere che (x - ε y 0) Sa y = (y, y 2,..., y p, 0, 0,..., 0) n-p ε, x - ε y è soluzone della (.5) (.6) R. Tade 27 Se y > 0, (x - ε y ) decresce al crescere d ε > 0; per rendere ammssble la soluzone devo avere (x - ε y ) > 0, e con : x ε = mn : > y y almeno una (x - ε y ) sarà azzerata. Se y < 0, (x - ε y ) è scuramente >0 e non c sono problem; Per l ε trovato, la soluzone (.6) è ammssble ed ha al pù p- varabl postve, perchè almeno una è stata azzerata. Se vettor corrspondentalle varabl postv sono ancora l.d. allora rpeto l caso 2, altrment rcado nel caso. (c.v.d.) 0 R. Tade 28 P. L. / 7
Dm. d ) Hp: x = (x, x 2,..., x n ) soluzone ammssble ottma x > 0, x = 0, =, 2,..., p = p+, p+2,..., n Caso : a,,..., a p sono l.. Analogo al precedente Caso 2: a,,..., a p sono l. d. Analogo al precedente Per assurdo : se c T y 0, ε /c T x - ε c T y < c T x pur restando (x - ε y) ammssble. Verrebbe volata l'assunzone d ottmaltà d x (coè c T x è mnmo) dev'essere c T y = 0. (c.v.d.). Notare che: ε, ε x - ε y della (.6) è soluzone ottma. Per mostrare questo consderamo l valore della f.o. nella soluzone ottma c T x - ε c T y occorre mostrare che c T y = 0, pochè c T x è mnmo! R. Tade 29 R. Tade 30 Hp: A b K Teorema: equvalenza tra punt d estremo e le soluzon d base : matrce m n d rango m : vettore dm m : poledro convesso costtuto da vettor d dm n che soddsfano Ax (.7) x 0 Rcham d geometra. Combnazone convessa d 2 punt, x e x 2 : x = λ x + ( - λ ) x 2, 0 < λ < Geometrcamente essa è l segmento [x,x 2 ] Un nseme K è convesso se pres comunque due suo punt x e x 2, la combnazone convessa appartene a K. Es.: s no Th: Un vettore x è punto estremo o vertce d k se e solo se x è una soluzone ammssble d base della (.7) s no R. Tade 3 R. Tade 32 P. L. / 8
Dm: ( equv. tra punt d estrem e soluz. d base ) SE Per potes, x=(x, x 2,..., x m, 0,..., 0) è soluzone d base della (.7) Allora x a + x 2 +... + x m a m (.8) ove a,,..., a m sono lnearmente ndpendent. Procedamo ora alla dmostrazone per assurdo. Ammettamo che x non sa punto d estremo dell nseme convesso K; qund l vettore x può essere espresso come combnazone convessa d due vettor qualsas y e z appartenent a K. R. Tade 33 Gova nfatt rcordare che la condzone d combnazone convessa è verfcata solo se l vettore non è punto d estremo dell nseme convesso. Per defnzone d combnazone convessa: x = α y + ( - α) z 0 < α < y z y, z k; x, y, z 0, 0 < α < n-m component d y e z = 0 y,z k sono soluzon ammssbl per potes precedente ; Qund y a + y 2 +... + y m a m z a + z 2 +... + z m a m per defnzone. Ma se sottraggo una d queste due alla (.8), trovo una combnazone lneare de vettor a,,..., a m uguale a 0 : cò sgnfca che quest vettor colonna sono l.d., contraddcendo le potes. Allora x = y = z x punto d estremo d K, perchè non soddsfa la condzone d combnazone convessa. (c.v.d.) R. Tade 34 SOLO SE Per potes, x è punto d estremo d K. Supponamo che le prme k component d x sano maggor d 0, ovvero abbamo una soluzone ammssble: x a + x 2 +... + x k a k, x > 0, =,..., k Se dmostramo che a,,..., a k sono l.. allora x è soluzone d base. Per assurdo: a,,..., a k sano lnearmente dpendent. Allora y a + y 2 +... + y k a k = 0 (con almeno un y > 0). Defnamo y = (y, y 2,..., y k, 0,..., 0). Essendo x > 0, k, è possble trovare ε tale che x + ε y 0, x - ε y 0 x ε = mn y Allora s ha x = ½(x + ε y) + ½(x - ε y) x è combnazone convessa d due vettor d k cò contraddce l'potes. (c.v.d) R. Tade 35 Forma canonca Dato un sstema d vncol n forma standard, è sempre possble rcondurlo alla FORMA CANONICA seguente: x + y, m+ x m+ + + ynx n = y0 x2 + y2, m+ xm+ + + y2nxn = y20 x +... + +... =... xm + ym, m+ xm+ + + ymnxn = ym0 dove: x,..., x m : varabl d base x m+,..., x n : varabl non d base Corrspondente soluzone d base: x = y 0,..., x m = y m0,x m+ = 0,..., x n = 0 x = (y 0, 0) R. Tade 36 P. L. / 9
Se l sstema nzale non è n forma canonca: Esempo: x + x2 x3 = 5 2x 3x2 + x3 = 3 x + 2x2 x3 = s trasforma n forma canonca, con base nzale assocata a vettor e, e 2, e 3 e e2 e3 a a2 a3 b 0 0 5 0 0 2 3 3 0 0 2 E subto evdente una soluzone d base, coè: e =5; e 2 =3; e 3 =- ; L utltà d questo passaggo verrà subto spegata. R. Tade 37 Tableau Il tableau non è altro che la matrce del sstema espresso n forma standard. Se l sstema è stato rcondotto alla forma canonca, l corrspondente tableau assume la forma seguente: 0 0 0 y.. y y, m+ n 0 0 0 0 y.. y y 2, m+ 2n 20................ 0 0 0 y.. y y mm, + mn m0 R. Tade 38 (.9) NOTA BENE: Il passaggo ntrodotto nella slde precedente può sembrare artfcoso, ma offre l ndubbo vantaggo d fornre mmedatamente una soluzone d base del problema. Precedentemente abbamo dmostrato che se esste una soluzone ottma, scuramente sarà una soluzone d base. Qund possamo cercare la soluzone ottma cercando d varare opportunamente la base. Una chave per rsolvere l problema è data dal metodo del pvot, che ora llustramo. R. Tade 39 Pvot (cardne) Prma nterpretazone ax+... + anxn... amx+... + amnxn m m n Ax (.0) (.) a: rga - esma d A ax M (.2) amx= b m R. Tade 40 P. L. / 0
E opportuno fare qualche rflessone: Se tutte le equazon d (.2) sono l.. ogn rga è sosttuble con un multplo d se stessa pù una combnazone lneare delle altre equazon. Possamo agre n modo tale da ottenere l sstema (.0) n forma canonca, secondo la defnzone precedentemente ntrodotta. Inoltre è charo che ad ogn colonna è assocata una varable del problema; essa è n base se la corrspondente colonna ha una sola componente dversa da 0 e par ad. Scopo del pvot è quello d generare, combnando le rghe, una nuova colonna avente le caratterstche d una colonna d base (tutt 0 ed un solo ). Operazone d pvot L operazone d pvot serve per passare da una soluzone d base ad un altra, ovvero s fa entrare nella soluzone d base la varable x q, facendo uscre x p. Se ammettamo d partre da una forma canonca, l pvot y pq deve essere 0 Lo scopo è quello d ottenere che la colonna q aggornata, abba tutt 0 eccetto l termne (p, q) = ; Gl element del tableau aggornato s trovano così: y' y' j pj ypj = yj y y p pq q, ypj = y pq PIVOT R. Tade 4 R. Tade 42 SUGGERIMENTO. Quando s devono fare operazon d pvot, s possono usare due approcc : ) metodo del rettangolo, coè per valore, n cu s aggorna l tableau selezonando un elemento alla volta : a a 3 2 3 ad esempo, l valore aggornato d 3 s calcola come a = a 23 23 a a a 3 2 e quando l rettangolo dventa degenere, ottengo a = a a a 2 2 2 a R. Tade 43 = 0 nfatt la colonna del pvot deve essere formata da tutt zer, escluso l pvot che deve valere ; nfne, cascun elemento della rga del pvot deve essere dvso per l pvot stesso. 2) ragonamento per rghe, n cu, come prma, la rga del pvot aggornata, s trova semplcemente dvdendo la rga per l pvot stesso; le altre rghe s trovano semplcemente sottraendo dalla rga corrente, la rga d pvot aggornata e moltplcata per l termne ntersezone tra la rga corrente e la colonna del pvot, coè moltplcata per y q ; R. Tade 44 P. L. /
ESEMPIO: Voglamo far entrare n base la varable x 4 facendo uscre la varable x l pvot è ; x + x4 + x5 x6 = 5 x2 + 2x4 3x5 + x6 = 3 x3 x4 + 2x5 x6 = Trovare sol. d base con x 4, x 5, x 6 = varabl d base Aggornamo l tableau del sstema: x x x x x x 2 3 4 5 6 0 0 5 2 0 0 5 3 7 0 0 3 2 4 S procede analogamente per le varabl x 5 e x 6, aggornando ogn volta l tableau fno a trovare come soluzone d base: [x 4 = 4, x 5 = 2, x 6 = ] R. Tade 45 R. Tade 46 Seconda nterpretazone a,..., a n colonne d A (.0) dventa: x a + x 2 +... + x n a n (.3) m<n, soluzone non unca Supponamo d partre con l sstema n forma canonca ed l relatvo tableau. I prm m vettor formano una base. Dunque a j = y j a + y 2j +... + y mj a m, j (.4) La j-esma colonna del tableau è la rappresentazone del vettore a j. La rappresentazone d b, nella base, è l'ultma colonna. R. Tade 47 Sostture a p con a q Sosttuendo (.5) n (.4): a = y a + y a a m q q = p p y a m y = q y pq = p m m y a j = yja + ypjap = yj = = y p p R. Tade 48 y' j pq q pq q pq y p a pj (.5) y a + y pj pq y' pj a q P. L. / 2
Il pvot fa passare da una soluzone d base ad un'altra, ma non garantsce la non negatvtà (ammssbltà) della soluzone. Devono essere soddsfatte alcune condzon. Vedamo come sceglere l pvot n modo da passare da una soluzone ammssble d base ad un'altra soluzone ammssble d base. Assunzone: ogn soluzone ammssble d base d Ax x 0 è non degenere. E` lbera la scelta d quale varable far entrare n base. Esstono condzon per la scelta d qual varabl far uscre dalla base. R. Tade 49 Determnazone del vettore che lasca la base x = (x,..., x m, 0,..., 0) soluzone ammssble d base x a +... + x m a m x > 0, =,..., m : assunzone d non degenerazone a q (q >m) deve entrare n base a q = y q a +... + y mq a m Moltplco (.7) per ε 0 e sottraggo da (.6) (x - ε y q )a +... + (x m - ε y mq )a m + ε a q Per ε suffcentemente pccolo, ma dverso da 0, (.8) fornsce soluzone ammssble ma non necessaramente d base, pochè la base è costtuta da m vettor e per poter farv entrare a q devo necessaramente azzerare l coeffcente d un a n base. Con (.6) (.7) (.8) x ε= mn : yq > 0 (.9) yq R. Tade 50 s ha una nuova soluzone ammssble d base, con a p sosttuto da a q pochè (x p - ε y pq ) = 0 e (x - ε y q ) >0 <>p. Se (.9) è verfcato da pù d un soluzone degenere n quanto sostture due vettor della base con uno solo. Se y q 0, non esstono nuove soluzon ammssbl d base, pochè non è possble sostture un vettore d base con uno fuor; noltre esstono soluzon ammssbl con coeffcent grand quanto s vuole l'nseme K delle soluzon ammssbl è llmtato pochè è possble sceglere ε >0 grande quanto s vuole mantenendo l ammssbltà. Data una soluzone ammssble d base ed un vettore arbtraro a q. c'è una nuova soluzone ammssble d base con a q n base, oppure 2. l'nseme delle soluzon ammssbl è llmtato. R. Tade 5 Esempo: Ax x 0 2 x + x 2 2 x 3 = 4 x x 2 = x 0, x 2 0, x 3 0 Isolo una soluzone ammssble d base che n questo caso è evdente: 2x + x2 2x3 = 4 2x + x2 = 4 x x2 = x x2 = sol. amm. base x = (x, x 2, 0) x a + x 2 R. Tade 52 P. L. / 3
a = 2 a2 =, Un vettore può essere scrtto come combnazone lneare de vettor d base: In questo caso: ( 2 2 0 ) = y3( ) + y23( ) 2= 2y 3 + y 23 = y y 0 3 23 2 y 23 = 3 y = y 3 23 Sono vettor d base; aq = yqa + y2qa2 + Κ+ ymqa m a3 = y3a + y23a2 Facendo cont: R. Tade 53 y = 2 2, y 3 = 3 3 23 Entrambe negatve Inseme K delle sol. ammssbl è llmtato Esempo d a a2 a3 a4 a5 a6 b 0 0 2 4 6 4 0 0 2 3 3 0 0 2 d scelta del pvot Decdo d far entrare a 4 n base. Ch esce??? x ε= mn : yq > 0 y q Una soluzone d base è: x = (4, 3,, 0, 0, 0) ε = 4/2 = 2 ε 2 =3/ = 3 Esce. Pvot è l elemento (,4) del tableau; R. Tade 54 Il seguente tableau è ottenuto applcando l metodo del pvot sull elemento (,4) che c permette d far uscre dalla base x e d far entrare x 4 : a a2 a3 a4 a5 a6 b 0 0 2 3 2 2 0 0 0 0 2 0 0 4 4 3 2 La nuova soluzone d base rsulta: x = (0,, 3, 2, 0, 0) R. Tade 55 Come sceglere la colonna d pvot Nel passaggo da una soluzone ammssble ad un'altra, deve dmnure l valore della funzone obettvo (x B, 0) = (y 0, y 20,..., y m0, 0, 0,..., 0) a... a a... a b m m+ n... 0 y, m+... y, n y, 0 0... 0........................... 0... y... y y m, m + m, n m, 0 (.20) R. Tade 56 P. L. / 4
Valore della funzone obettvo per qualsas soluzone x: z = c x + c 2 x 2 +... + c n x n (.2) per la soluzone d base: z 0 =c B x B (.22) dove c B = [c, c 2,..., c m ] (.23) Se vengono assegnat valor arbtrar a x m+,..., x n s ha n x = y y x 0 j j j= m+ M (.24) x = y y x m m 0 mj j j= m+ R. Tade 57 n Usando le (.24) posso scrvere z n funzone degl element non d base, coè elmnando x, x 2,..., x m dalla (.2) : z = f ( x m+,..., x n ) Ottenamo : n n [ ( ) ]... ( ) = m+ m mo = m+ m [ ] z= c y y x + + c y y x + 0 + c x +... + cx = m+ m+ n n = ( cy +... + c y ) + x ( c cy... cy m m m m m m mm ) + 0 0 + +, +, + + x ( c cy... c y m m m m mm ) + + 2 + 2, + 2, + 2 +... + + x c cy... c y n( n, n m mn, ) R. Tade 58 m 0 m+ =, m+ ( ) z = z + c c y x +... + chamo (, ) + c cy x n n n m+ m z = cy j = m+,..., n j =, j Allora z = cx = z 0 + (c m+ -z m+ )x m+ +... + (c n -z n )x n (.25) Questa dà l valore della funzone obettvo per ogn soluzone Ax n termn delle varabl x m+,..., x n. In conclusone, c chedamo : c'è vantaggo a scambare una varable d base con una non d base? S, se j, / m+ j n / c j -z j < 0 R. Tade 59 Teorema (mgloramento della sol. amm. base) Hp: Data una soluzone ammssble d base non degenere f.o.=z 0 j / c j -z j < 0, m+ j n Th: Esste una soluzone ammssble con funzone obettvo z < z 0. Se a j può essere sosttuta nella base esste una soluzone ammssble d base con f.o. z < z 0 Se a j non può essere sosttuta nella base l'nseme delle soluzon ammssbl è llmtato e la f. o. - R. Tade 60 P. L. / 5
Dmostrazone: Hp: (x,.., x m, 0,..., 0): sol. amm. base con f.o. z 0, c m+ -z m+ <0 E` possble costrure delle nuove soluzon ammssbl dalla forma: (x',..., x' m,x' m+, 0,..., 0) con x' m+ > 0 Sosttuendo n (.25): z = z 0 + (c m+ -z m+ )x' m+ z - z 0 = (c m+ -z m+ )x' m+ < 0 z < z 0 < 0 > 0 Convene avere x' m+ l pù grande possble. Se x' m+ cresce, le altre component x',..., x' m crescono, rmangono costant o decrescono. Allora x' m+ può essere aumentato fno a quando un x' = 0, m, ottenendo una nuova soluzone ammssble d base. Se nessun x' = 0, x' m+ può essere aumentato senza lmt e la funzone obettvo - c. v. d. Questone fnale: c j -z j 0, j sgnfca ottmaltà?? R. Tade 6 R. Tade 62 Teorema (condzone d ottmaltà) Se per una soluzone ammssble d base c j -z j 0, j, allora quella soluzone è ottma. Dmostrazone: Segue mmedatamente dalla (.25), dal momento che ogn altra soluzone ammssble deve avere x 0, e qund z - z 0 0 R. Tade 63 Coeffcent d costo relatvo r j =c j -z j Quest coeffcent msurano l costo d una varable con rfermento ad una base data (r j per una varable d base è 0, poché z j =c j ). Interpretazone economca de coeffcent d costo relatvo problema della deta: mn cx st.. Ax ( = nvece d ) x 0 Una colonna d A fornsce l'equvalente nutrtvo d un'untà d un dato cbo. R. Tade 64 P. L. / 6
Esempo: (dal problema della deta) Se le carote non sono nella base, usando l tableau posso costrure delle carote sntetche, equvalent come nutrmento alle carote, medante una combnazone de cb della base. Per vedere se la soluzone ammssble corrente è ottma, consderamo un cbo (le carote) non n base e vedamo se convene portarlo n base. Cò s fa faclmente confrontando l costo delle carote real con l costo d quelle sntetche. Rassumendo c j : costo carote real m zj = cyj: costo carote sntetche = Se r j = c j -z j < 0 convene usare carote vere al posto d quelle sntetche e qund le carote vengono portate n base. R. Tade 65 R. Tade 66 LA PROGRAMMAZIONE LINEARE Abbamo ntrodotto con un semplce esempo l problema della programmazone lneare, (slde 6-8), per arrvare po alla defnzone d forma standard d un problema P.L. e alla descrzone d possbl procedure per rdurre un qualsas problema n questa forma (slde 9-2). Successvamente, abbamo defnto l concetto d soluzone d base e dmostrato l mportante teorema che, ammettendo l esstenza d una soluzone ammssble, afferma la necessara esstenza d una soluzone ammssble d base: qund dovremo cercare la soluzone ottma del problema non nell'nseme d tutte le possbl soluzon ammssbl, bensì nel solo sottonseme delle soluzon ammssbl d base (slde 22-30). Il teorema sulla corrspondenza tra punt d estremo e soluzon d base conclude l dscorso, n quanto sancsce che la soluzone ottma d base del problema s trova su un vertce del poledro delle soluzon ammssbl(slde 3-35). R. Tade 67 Abbamo po defnto la forma canonca e un metodo possble per rcondurvs: la sua mportanza è nel permetterc d dentfcare mmedatamente una soluzone d base (slde 36-38). Infne, abbamo ntrodotto l metodo del pvot, che c serve per poter passare da una soluzone d base ad un'altra; la prma nterpretazone è pù operatva, nel senso che c dce che tramte combnazon lnear delle rghe del tableau, ruscamo a scrvere una qualsas colonna nella forma tutt 0 ed un solo, coè ruscamo a farla entrare nella soluzone d base (slde 40-46). La seconda nterpretazone è pù formale e sfrutta prncp d base dell algebra lneare: essenzalmente c dce che dato un K-spazo vettorale è possble esprmere ogn vettore dello spazo stesso come combnazone lneare d un numero m d vettor lnearmente ndpendent che vengono dett base dello spazo; n questa chave ogn colonna del tableau rappresenta le component del vettore colonna d partenza rspetto alla base corrente; dovrebbe essere charo ora perché quelle che abbamo chamato colonne d base sono scrtte nella forma tutt 0 un solo (slde 47-49). R. Tade 68 P. L. / 7
Dopo aver dmostrato che è possble far entrare n base un vettore a scelta, abbamo dato un crtero per determnare quello che deve uscre; la dmostrazone è operatva n quanto fornsce drettamente l metodo da usare (slde 50-55). Abbamo nfne determnato quale vettore è pù utle far entrare n base e la condzone d ottmaltà se la soluzone d base ottenuta è anche ammssble, ovvero c j -z j 0, per ogn j (slde 56-63). Infne, abbamo concluso con un tpco esempo, quello delle deta (slde 64-65). R. Tade 69 P. L. / 8