Elementi di programmazione lineare [1]
 8820711338, 9788820711337 [PDF]

  • 0 0 0
  • Gefällt Ihnen dieses papier und der download? Sie können Ihre eigene PDF-Datei in wenigen Minuten kostenlos online veröffentlichen! Anmelden
Datei wird geladen, bitte warten...
Zitiervorschau

F erd.inando Pezzella

ELEMENTI DI PROGRAMMAZIONE LINEARE Volume Primo Per il Corso di R icerea Operativa

Liguori Editore

Tutti i diritti sono riservati. Nessuna parte di questa pubblicazione può essere tradotta, riprodotta, copiata o traSIJlessa senza l'autorizzazione scritta dell'editore. L' AIDRO (Associazione Italiana pel" i Diritti di Riproduzione delle Opere dell'Ingegno), via delle Erbe 2, 20121 Milano, potrà concedere una licenza di riproduzione a pagamento per una porzione non superiore a un decimo del presente volume. Prima edizione italiana Ottobre 1981 Liguori Editore, Srl via Posillipo 394 1 80123 Napoli Copyright © Liguori Editore, S.r.l. 1981

Pezzella, Ferdinando : Elementi di programmazione lineare : Volume l/Ferdinando Pezzella Napoli : Liguori, 1981 ISBN 88 - 207 - 11 33 - 8 Ristampe:

9 8 7 6 5 4

2003 2002 2001 2000 1999 1998

Questo volume è stato stampato in Italia dalle Officine Grafiche Liguori - Napoli su carta inalterabile, priva di acidi. a PH neutro, conforme alle norme Iso 9706 oo.

.. -. PREMESSA.

In questi appunti è raccolta la prima parte delle lezioni del Corso di Ricerca Operativa che

svolgo per gli studenti del Corso di Laurea in

Matemat ica della Facoltà di Scienze Matematiche, Fisiche e Naturali dell'Univ. della Calabria. Scopo principale, nel redi ger~ questi appunti, è stato quello di fornire una introduzione allo studio della programmazione lineare. L'argomento infa tti non è trattato in maniera generale e completa , ma vengono esposti comunque

i conce tti fondamentali che costituiscono la base di questa importante metodologia della Ricerca Operativa . Rende, dicembre, 1980.

Versione provvisoria dei primi cavitoli del testo di "ELEMENTI DI PROGRAMHAZIONE LINEARE" di Ferdinando PEZZELLA

INDICE CAPITOLO l -

ALLA

INTRODUZIO~c

PROG~~ZIONE

LINEARE

1.1 - Il problema della programmazione lineare

pag.

l

grammazione lineare

pag.

l

Esempi di problemi di programmazione lineare

pag.

1.2 - Le ipotesi che stanno alla base della pro1.3

CAPITOLO 2 -

RICHIAMI 01

ALGEB~~

LINEARE E DI ANALISI CONVESSA

2 .l - t-1atrici

pag.

6

2.2- Calcolo dell'inversa

pag.

9

2.3

Insiemi convess1

pag.

11

2.4

Intersezione di insiemi convessi. lnvolucro conves.so di un insieme

pag.

12

Punti estremi di ur insieme convesso

pag.

13

2. 6 - Iperpiani e semispazi

pag.

13

2.7

pag.

15

2.8 - Politopi e coni poliedrici

pag.

17

2.9 - Rappresentazione di politopi

pag.

19

2 . 10--- :unzioni convesse

pag.

22

2. 11- Est remi locali e globali

pag.

23

pag.

25

3.2 - Soluzioni di oase

pag.

26

3.3 - Teoremi fondamentali della programmazione lineare

pag.

31

3.4 - Risoluzione

pag.

34

4 .1 - Introduzione

pag.

36

4.2 - La forma canonica

pag.

36

4.J - La matrice utableau"

pag.

37

pag.

39

pag .

41

4.6 - L'algoritmo del simplesso

pag.

42

4.7- Convergenza del metodo del simplesso

pag.

46

4.8 - Forma matriciale del metodo del simplesso

pag.

47

4.9 - Riduzione alla forma canonica

pag.

50

4.10- Metodo del simplesso revis ionato

pag.

55

2.5

CAPITOLO 3

-~

3.1

CAPITOLO 4 -

4 . 1.

Di rezioni estreme di insiemi convessi e eoni convessi

LA PROGRAMHAZIO}è'"E L1NEAR.E Forma staodard della programmazione lineare

geo~etrica

dellaprog2mmazione lineare

tL METODO DEL SIMPLESSO

L'operazione ài "pivot" e la matrice "pivot"

4.5 - Il teorema fondamentale del

simpless~

CAPITOLO 5 - TEORIA DELLA DUALITA' ED ANALISI DELLA SENSIBILITA'

5.1- Introduzione

pag. 59

5.2

pa~.

La dualità in progr8IIIn4zione lineare

60

5.3 - Fonuulazione dt!l problema duale

pag. 61

5. 4 - Teoremi connessi con i l prob tema duale

pag. 65

5.5 - Proprietà degli scarti

pag. 68

co~lementari

5.6 - Interpretazione economica delle variabili duali 5.7-

fra la risoluzione di un problema di P.L. e la risoluzione di un sistema di equazioni lineari con variabili non negative !q~ ivalenza

5.8 - Metodo duale del simplesso 5.9

pag. 70

Analisi della

pag . 71

sensibilit~

pag. 74

5.10- Esempi numerici

CAPITOLO 6 - PROGRAMMAZIONE

LINE~:

pag. 7l

pag. 77

ALCUNI PROBLEMI DI STRUTTURA PARTICOLARE

6.1 - Formulazione del problema dei trasporti

pag . 85

6.2 - Proprietà della matrice A

pag, 89

6.3 - Determinazione di una

soluzio~e

ammissibile iniziale

91

6.4 - Metodi per la determinazione di una "buona" solu:lione aumissibile iniziale pag. 92

6.5- Ricerca di una soluzione ottima: Dantzig 6.6- Il problema dell'assegnamento

BIBLIOGRAFIA

l'algoritmo di pag. 93 pag. 96 pag. 99

-l-

CAP-1- INTRODUZIONE ALLA PROGRAMMAZIONE LINEARE. 1.1 Il problema della programmazione lineare. Programmazione lineare significa ricerca del massimo o minimo valore (se esiste) che

una funzione di più variabili, lineare in tali variabili, acqui

sta in un insieme di valori di esse definito da "vincòli" espressi colDe equa_ zioni o disequazioni lineari algebriche. Durante e immediatamente dopo la seconda guerra mondiale e fino al 1947, le ricerche sull'impiego della programmazione lineare vennero condotte Lodipendentemente in vari settoriapplicativi. Nel 1947, lo sviluppo delle tecniche di

programmazio~e

lineare permise di unificare le r i cerche in settori

apparentemente diversi, fornendo un modello di riferimento matematico ed un metodo di calrolo, il cosidet:to "algoritmo del simplesso" proposto da George B. Dantzig, per formulare ésplicitamente ques ti

problemi e calcolare effi-

cientemente le soluzioni. La scoperta di questo nuovo metodo di calcolo coinaisè anche con

la éostruzione di elaboratori elettronici digi~al~ che pre-

sto divennero strumenti indispensabili per l'applicazione delle tecniche di programmazione lineare a problemi per cui non sarebbe stato possibile effet" tuare il calcolo manualmente . Inoltre la costat a zione che un congruo numero

di problemi militari, economici o industriali può essere espresso, e sattamente o con una ragionevole approssimazione, per mezzo di sistemi matematici di disequazioni e/o equazioni lineari ha contribuito a llo svi luppo

dell~

tecniche di programmazione lineare. 1.2 - Le ipotesi che struLìO alla base della programmazione lineare. Per meglio chiarire le ipotesi che s tanno alla base di un programma lineare ci serviamo del seguente esempio di programmazione aziendale. Un processo produttivo richiede due tipi di ri sorse: una certa materia prima e mano d'opera. I prodotti sono di due tipi dive rsi, e dalla lor o vendita si ricavano profitti netti

differenti.

La quantità di materia prima e di prodòtti sono misurati in quintali; quello di mano d'opera, in ore. Per ottenere l quintale di prodotto l o del prodotto 2 le risorse sono impegnate come indicato nella tabella seguente. La terza colonna mostra l'ammontare delle ri sorse a d;sposizione, e la ter1.a riga i profitti netti (in migliaia di lire) rela tivi alla quintale dell'uno o dell'altro prodotto .

produ~one

di l

-2-

l

l

materia prima

40

lavoro

l

.

5

profitti netti

l

2

disponibilità

20

2.200

2

320

40

1201

l

l

Su?poniamo sufficientemente aderenti alla realtà le due ipotesi: l ) proporzionelità: per ottenere x

2)

quintali del prodotto l, da solo, oc 1 ccrrono 40 x quintali di materia prima e 8 x ore di lavoro; per o~ 1 1 tenere x quintali del ~adotto 2, da solo, occorrono 20 x quinta li 2 2 di ~teria prima e 2 x ore di lavoro. Il profitto netto relativo al 2 la ?roèuzione di x quintali di l è 120 x ; quello relativo al la pr~ 1 1 duzione di x quintali dt 2 è 40 x . 2 2 additività: per ottenere x quin ta li del prodotto l e x quintali del 1 2 ?roèotto 2 occorrono 40 x + 20 x quintali di_materia pri~ e 8 x + 1 2 1 + 2 x ore cii lavoro. Il profitto netto totale relativo alla produzi~ 2 ne ùi x quintali di.l e x quintali di 2 risulta 120 x +~O x ( ~ 1 gliaia di lire).

1

2

2

Si chiede: quali quantità vanno prodotte, supposto cbe la produzione tale non

poss ~

t~

superare 100 quintali, in modo che il profitto netto tota

le sia mass ime? La

funz.lonc!:

viene detta "funzione obiettivo", :x In base

al~e

ipotesi i l problema

1

pu~

e x

2

"variabili di decisione".

essere formulato come il problema

di determinare le variabili di decisione, sottoposte a vincoli linear i , che massimizzano uòa funzione lineare cioè: 120 x

aax

+

40 x

2 20 x2 < 2.200 320 8 xl + 2 x2 < 100 xl + x2
o -

x2 > o

1.3- Esempi di problemi di programmazione lineare. A) P rob le.ma della dieta.

Formare una mistura alimentare per antmal i a partire da

~

prodotti

-3-

grezzi ( orzo, avena, semi di sesamo, fa rina di arachidi). Le protei ne ed i grassi contenuti per unità nei materiali

gr~i,

insie-

me al costo unitario, sono riportati nella seguente tabella: orzo

avena

semi di se samo

12

12

40

grassi

2

6

12

costi

24

30

40

prote1.ne

'

fari na di arachidi

l

requisiti nutritivi

60

20

2

5

50

Problema: Determinare la composizione della mistura elementare, soddi sfacente le esigenze nutritive, che sia di minimo costo. + 30 x + 40 x + SO :x4 2 1 3 12 xl + 12 x2 + 40 x + 60 x > 20 43 2 xl + 6 x2 + 12 x3 + 2 x4 ~ 5 X.'> o J = l, 2 •.... 4

mio

24 x

J-

B) Problema dei trasporti. Una compagnia ha delle

fabbric~nelle

località A, B, C e dei magazzini

nelle località D, E, F. In A, B, C la compagnia ha a disposizione ri spettivamente 40, 40 , 20 unità di una certa merce, mentre io D, E, F sono richieste rispettivamente 10, 60, 30 unità di tale merce. I costi unitari di trasporto (in guente tabella:

di lire) sono riportate nella se-

migliai~

MAGAZZINI

quantità

D

E

F

lQ

60

30

costi per unità À.

40

6

8

3

B

40

2

3

l

c

20

2

5

6

Problema: Determinare un piano di trasporto dalle fàbbricbe ai .m.agazz!_ 01.

che soddisfi le richieste e che sia di minimo costo.

- xll' x12' xl3 - x2l, x22' x23 x)l' x32' x33

unità di merce che da A va rispettivamente a .D, Il

Il

.. Il

"

..

"

..

~-"

B

"

"

"

"

" c

Il

Il

Il

"

"

F,

.

Il

-4-

40 xll + xl2 + xl3 x21 x22 + x23 .. 40 x31 + x32 + x 33 - 20

vincoli di disponibilità

21 + x31 • lO • 60 x12 + x22 ·~ xl3 + x23 + x 33 - 30

vincoli di richieste

...

xll +

1

x .. > l,J

o

i. j • l, 2, 3

C) Un problema di investiment o. Una compagnia finanziaria vuole investire L. 100.000.000.000 in titoli, mutui, obbligazioni, libretti di risparmio e beni immobili.

I

tassi di

interesse annuo relativi alle cinque scelte di investimento, sono r1 portati nella seguente tabella. tassi di interesse annuo % titoli

lO

mutui

8

obbligazioni

6

libretti di risparmio

5

beni iliiDObili

9

A

causa del rischio implicato, l'amministrazione decide le seguenti

norme operative: l'investimento nei titoli . non deve superare la somma totale investita nelle obbligazioni, libretti di risparmio e beni immobili. -l'investimento in mutui e beni immobili deve essere almeno uguale a quello relativo alle obbligazioni. !'investimento in

~tui

non deve essere superiore a quello dei librett i

di risparmio. Problema: Determinare il modo ottimo di investire nell'ipotesi che i tassi di interesse correnti restino stabili

per un certo periodo

di tempo. Indicando con x , x , x , x , x i capi t ali rispet tivamente investiti 2 3 4 1 5 in titoli, mutui. obbligazioni, libretti di risparmio e beni iv.mobili il problema può essere così fo rmulato:

-5-

max xl

~

O.lx + 0.08x + 0.06x + 0.0Sx + 0 . 09x 1 2 4 3 5 x3 + x4 + xS

x2 + xS ~ x3 x2 ~ x4 x + x

1

x

>o

j-

2

+

x j

3

+

x

~l,

4

+ x

5 2 . ... 5

= 100.000.000.000

-6-

2 - RICHIAMI DI ALGEBRA LINEARE E DI ANALISI CONVESSA

2. t - Matrici Def.2.l - Data una matrice A m x n e una matrice B n x p si definisce moltiplicazione fra la matrice A e B la nuova matrice C m x p con n

c. . • 1)

per i • l, ... m e j • l, ... p

1: a. k bkJ.

k•l

1

in altre parole l'elemento c .. di C è ricavato dal prodotto 1J

scalare della i-sima riga di A per l'j-sima colonna di B. Es:

-l

A•

-2

o -l

c-

Aa-

-2

o Si noti che se A è una matrice m x n e Buna matrice p x q

51

ha:

l) AB è definito solo se n • p. AB è allora una matrice m x q. 2) BA è definito solo se q • m. BA è una matrice p x n. 3) Se m • n - p - q allora

AB e RA non sono necessariamente

uguali. Def.2.2 - Una matrice quadrata n x n, si dice matrice identità 10 se ha tutti

gli elementi della diagonale principale uguali ad l e tutti . sli altri uguali a zero. Def.2.3 - Una .atrice n x n ai dice triangolare superiore se tutti gli ele.enti al di sotto della diagonale sono nulli. Viceversa per la .atrice triangolare inferiore. Si ricordi che per le matrici trasposte valgono i seguenti risultati:

l) (AT)T • A 2) Se A e B hanno uguali dimensioni (A + B)T • AT + BT 3) Se AB è definito allora (AB)T • BTAT Inoltre data una matrice A, m x n, si può ottenere una sua sottomatrice scegliendo alcune righe e/o colonne di A. Una matrice A può essere paE tizionata in aottomatrici. Si consideri per esempio:

-7-

A•

all

8

12

al3

al4

a21

a22

a23

8

8

31

8

a33

a34

8

41

a42

8

8

dove A

11

32



811

8

8

8

[

21

cioè

44 813

12

8

a41

8

8

A12 •

22

31

8

A21 •

43

24

32 A22

42]

-[

23

~1424 8

a33

8

8

8

43

La matrice A si dice partiziooata nelle

l

34 44]

quat~ro

sottomatrici

~l'

A , A , A • 22 12 21

Ora supponiamo di avere due matrici A e B partiziooate come segue: nl A=

ql

n2

F~~ • -A~2-] ml A22 m2 l l

B•

l l

A21

q2 8 12

[~11 T - l l

8 21

l l l

8

q3 l

l ~q]

-~-

22

l

l

8 23

pl

Pz

Allora AB è definito da:

AB• Per essere definito AB deve essere: e Operazioni elementari su matrici Data una matrice A, m x o, sono operazioni elementari su righe: l) Scambiare la riga i con la riga j. 2) Moltiplicare la riga i per

uno

scalare non nullo.

3) Sostituire alla riga i, la riga i più k volte la riga J· Operazioni elementari riga corrispondono a premo ltipl icare A per una opportuna matrice. Operazioni elementari colonna corrispondono a postmol tiplicare A per un'opportuna matrice. Esempio: Sia 2 A•

l

l

10

-1

2

l

8

l

-1

2

2

Di videodo per 2 l a prima

rig~,

aggiungendo la n.ga l ottenuta alla

-8-

seconda riga e sottraendo la riga l ottenuta alla terza riga si ha:

[~

1/2

1/ 2

5/Z

3/2

-3/2

3/2

:3]

-3

Moltiplicando la riga 2 per 2/5, moltiplicando la nuova riga per 3/2 e aggiungendo alla terza riga si ha:

[~

1/2

1/2

l

3/5

o

24/10

Dividendo la riga 3 per 24/10, si ba:

[~

1/2

1/2

l

3/5

o

l

2~:5 J

Risoluzione di sistemi di equazioni lineari con operazioni elementari di matrici

(~todo

Si ricordi

che Ax •

di riduzione· di. Gauss

)

bse e solo se A'x • b'dove (A', b') è ottenuto da

(A, b) mediante an numero finito di operazioni elementari righe. E.sea~pio:

x2 +

~-

lO

-~ + ~ +

x3 -

8

~ + ~-

2

~· ~·

(A,b) •

[-~

l

l

2

l

-l

2

1:]

(A' ,b ') •

[

~

1/2

1/2

5

l

3/5

26/5

o

l

2

J

5 ~ + 1/~ + l/~ •

%2 + 3/5x3 • 26/5 %3 • 2

Si oòti cbe A' ~ una aatrice triangolare superiore per cui per sosti ta.ziooe all 'illdietro si ba:

x3 - 2

~- 4

xl

- 2

Inveraa di una aatrice Sia A wa aatric.e .quadrata o.xnr.se esiste una matrice quadrata B n

li:

n tale che:

AB • I e BA • I allora B ~detta inversa d i A e ei i ndica con A- 1 . L'inYer•a ae eeiste

~unica.

Se A ~a l'inversa,

A~

det ta non singolare.

- Coodizioue di e•istenza dell'inversa. Qoa aatrice A, ns n, ammette

l ' inv~r • a s~ ~

$Ol o 5e le rithe sono

-9-

linearmente indipendenti c , equivalentemente, le colonne sono linearmen te indipendenti. 2. 2- Calcolo dell'inve rsa.

L' inversa di una matrice può essere ot tenuta mediant e un numero finito di operazioni elementari righe. Cioè mediante operazioni elementar i righe è poss ibi le ridurre le matri ce (A , I) alla matrice (I , A- 1 ), il che è equivalente a premoltiplicare per çl. Inoltre se (A , B) è ridotta a (I , F) mediante operazioni elementari ri -l

ghe, allora F • A B. Esempio:

(A-l esiste ) l

A

·[-: :] 2

-l

( A, I) •

[~l

l

l

l

o

2

l

o

l

-l

2

o

o

~]

Si divide per due la prima riga sommandola alla seconda

riga~

sottra

endola alla terza si ha:

1/2 l/2

o

5/ 2

1/2 3/2

-3 / 2

3/2

-1 /2

o

l/2

l

~]

Si moltiplica per 2/ 5 la seconda riga.poi la si moltiplica per -1/2 e li

somma alla prima , la si moltiplica per 3/ 2 e ai aggiunge alla ter%a. -1/5 l /5 2! 5 001 [

:

o

3/5

1/ 5

2/5

12/ 5

-I / 5

3/ 5

Moltiplicando la ter%a riga per 5/ 12 si ba:

[~

o

o

5/i2

-3 / 12

l

o

3/ 12

o

l

-1/12

3/12 3/12

Cio! -3

3 3

-1 / 12] -3/ 12 5/ 12

-lO-l.

Esempio: (A

A

. [~

nop esiste)

~l

l -l

2

,-

è facile verificare che mediante operazioni elementari su righe Sl o t

tiene:

u

o

l

1/3

1/3

l

l

2/3

-l/3

o

o

-S/3

1/3

n

Si noti che in questo caso l'inversa non esiste poichè

~

3 •

~l+ ~

2

Si ricordino inoltre i seguenti risultati: . l are. a l l ora AT e, non s1ngo . l are, (AT) -l , (A- l) T l . Se A è noh s1ngo

2. Se A e 8 sono matr1c1 n x n non singolari, allora AB è non singolare e (AB)-l • 8- lA-l 3. Una matrice triangolare (superiore o inferiore) con elementi non nul li sulla diagonale ammette l'inversa. 4. Se A è partizionata

A

·[-> - -~ -] l

nl

l

n2

come~egue,

e D è non singolare

allora A è non singolare, e

A-1-[~- •_::o=l-J O

l

D-l

- Rango di una matrice Si_co~ideri _ una

matLice A, m x n.

Rango riga della matrice è il massimo numero di righe linearmente indi pendenti. Rango colonna della matrice è il nass1mo numero di colonne linearmente indipendenti. Si può mostrare che il rango riga è uguale al rango colonna e quindi il rango di una matrice è il massimo numero di righe o colonne l inear mente indipendenti rango (A)

~

minimo (m, n)

Se rango (A) • minimo (m, n), A si dice a rango pieno .

-11-

convess~.

2.3- Insiemi Siano ~l' ~

2

due punti di S ~ Rn (spazio euclideo n-dimensionale).

t~ : ~ = ).~ 1

Def.2 .4 ·- L'insieme L= .

~

.,n

~n ~

passante per

Es: In R3 , posto~

c

e

(l-i.)~ 2 },

..-

ÀE

R, si definisce

.!.!!..-r(

__) 2. (Y, y, z), ~n base alla definizion~ si ha: ~l

w= À""' l + (1-À)w.?,

~

y"' Ày

(l-À)y ,

+

1

2

z • Àz 1 ..- (l- À)z. 2

che poste nella fonna w-"-'

y -

----2- c ~ wl

-

z

y2

2.2

-~

z - z2 l

y - y2 l

rappre sentano le equazioni della retta passante per (x ,y ,z ) 1

+

Se À>O l 'insieme L

{~

c

semiretta avente origine

:

~

1

1

À~l +



in~~·

..

Per 0< À < l l' ins ieme dei punti costituirà il segmento che congiunge

~l

~ .

2

ed

2

Def.2 . 5 - Il punto~"' À~l + (l-À)~ , O < À ~ l, si chiama comb{nazione convessa di ~l e ~ 2 ._

Se O < À < l il punto x convessa in senso Def .2.6 - Un insieme S

(0>"~6ttr-0. Quindi

-6

(l)

> -2

(2)

o

(3)

l

(4)

>

-

> >

e

o.

y À>

devono essere vere

:~) ~ (~)

1 - 2d

1

2

Oe d ~

~

2 O e d

O 1

-

d

2

~

O

(A

~ ~

Q)

1 ~ O e d 2 ~ O allora d 1 ~ 2d 2 implica d 1 > d2

Quindi(:~)

l una direzione di S se e eolo se:

.

(:~) (:) d

o

> 2-

ve H~ Def.2.14- Due vettori, ~l

e

~l

~

2

sono detti distinti o non equivalenti se

non può essere rappresentato come multiplo positivo di

Def.2.15 - Una

direzione~



~

0

2

~ .

di un insieme si dice combinazione positiva

di due distinte direzioni

~l

e

~

2 dell'insieme

se si puè

esprimere come:

Def.2.16

Una direzione estrema di un insieme convesso è una direzione dell'insieme che non può essere rappresentata come ne positiva di due distinte

cf,

f

combinazi~ ~

direzioni dell'insieme.

j

Def.2.17- Un cono convesso C è un insieme convessò che gode dell'ulteriore proprietà che ~~~e

C e

YÀ >O

Si noti che l'origine (À

~O)

! E C i l raggio { Àx

À

è

~letamente

allora Àx

e C

appartiene al cono conve sso e che per ogni

>O} appartiepe a C, inoltre un cono convesso

caratterizzato dalle sue di rezioni es t reme.

r"'

1 '~" \

J

-17-

Origine

Or igine

Fig. 6 - Alcuni esempi di coni convessi

::. :ol(~~r: i:2 c:n(~~~v:•:o{:::~t::~i:•::o~d::l: 1 d:r::~o::~:t:~de da Fig. 1 cono convesso

~

• IO. 11

{~] Fig. 7 - Caratterizzazioné di coni convessi in termini di direzioni e.st~ Def. 2 .18 · Dato un insieme di vettori .!l ...• , ~ noi chiamiamo cono convesso ( 0 v- o senerato da questi vettori il cono rappresent ato dalle zioni positive di .! .... , 1

c•

). . a . J

J

Àj ~ O

~cioè:

·per _ j • l. . .. k }

2. 8 -~litofÌ e coni 2ol~ici. Def . 2 . 19- L '..in~rs~zione di un.. num.e~c _finil:o di politofo convesso.

co~ina

.

-.

se~spaz~

c

h.



~usL

~

h.

J

e c lam&to ;-

Gli iperpiani che danno luogo ai semispazi

tb(, (c,?O Col.o.vQ~:;.~

sono chiamati iperpiani generanti del politopo convesso. Def.2.2o- 1Jn politopo ~nvesso rum vuoto e limitato si dice poliedr~.. Poichè un semispazio è un insieme convesso, ricordando che ogni intersezione di insiemi convessi è un insieme convesso , s i ba che il politopo è un insieme çonvesso.

rPvf. ~

J

._

1 .....

-18Inoltre essendo un semispazio chiuso rappresentato da una diseguaglianza del tipo

a

i

x< b.

ove

l.

a

-

i

• (a. , a. ..• a. ) l. 1 l 2 lO

il politopo è rappresencato dal!'i~sieme (~: A~~~} dove A è una erice m x n la cui i-sima riga è a

1

e b un vettore m x l .

Poichè un'equazione può essere scritta con due disequazioni,

un

può essere rappresentato da un numero tinito di disequazioni e/o

polibdpo equazi~

ni lineari. Es~mpio:

x < 4 2• x < 3 xl 2'1. 2 xl

(l)

o o

( 4)

-2 x

l

+

>

xl x2

....

L ' intersczione

(2)

{3) 1 S)

5 semispazi chiusi

~

mostrata

10

fig . 8.

Fig. 8 -Pdliedro. Gli iperpiani corrispondenti alla 2a, 3

3

'

4a' 5

3

disequazione si dicono \

facce del poliedro. Una speciale classe di insiemi poliedrici è il cono poliedrico . (()'r-

r..:;

~t.Jtt('-.



'?~

spazi chiusi, i cui iperpiani passano per l 'oTigine.

t

In altre parole :.C è un cono poliedrico se può essere rappresentato come: { .! : A !. ~ O } dove A è una matrice m x n.

Osservazione: Il cono ·poliedrico ·è convesso

-19-

Fig. 9 - Cono convesso non poliedrico

Fig. 10 - Cono convesso poliedrico

2. 9 - Rappresentazione di poli topi.

Un politopo convess o può

ess~re

rappresentato in modo alterna tivo mediante

i punti estremi e le direzioni estreme.



1n particolare ogni punto èi un poliedro può essere rappre sentato c,,roe comb i

f~cmato

dall ' Lntersezione di c inque

(vedi fig.ll) avente come punti estremi

2

3

convessa di

ze

~

~

estr~i

cioè:

a sua volta può essere

~\ rappresenta~come

comb inazione line re convessa

di ~ e .!z cioè:

o Sosti tuendo si ba:

5

può essere rappresentato come combinazione lineare

x ~

semi spaz~

~l' ~ • ~ , ~ e ~ .

Fig. 11 - Rappresentazione in termini di punti Notiamo che il punto

ot:;.

__)

nazioné convessa dei suoi punti estremi. Consideriamo un poli edro

~

(

< u < l

-zoove e

O
.!3

+

u~2

-21-

Teo. 2.3 - (Teorema della rappresentazione nel caso generale) Sia S •{ x : Ax • b, x > O} un politopo convesso non vuoto.

- - --

-

-

Allora l ' insieme dei punti estremi è non vuoto ed è costituito

1

~ , ~

da un numero fi nito di puEJi

2 ...... ~. Inoltre l'insieme

delle direzioni estreme è vuoto se e solo se $ è limitato. Se S non è limitato, allor a l'insieme delle direzioni estreme è non vuoto ed è costituito da un numero finito di vettori

~

1 .... ~ 1 .

In~ltre ~E

S se e solo se può essere espresso come combinazione

convessa di

~ ,~

1 2 •..• ~

e come combinazione non_negativa di

~

1 . .. ~ 1 ,

cioè:

.. k.t

x

t

>..

x . + l: lJ.d. J -J j•l J-J

j•l k

r

• l

À.

j•l

J

À. >

o

J lJ. > J

j • 1,2, .•.. k

-

j

-o

1,2, •.• . t

Dim. Vedi [l]. Esempio: Si conside r i il politopo . convesso f ormato dalle seguenti diseguaglianze: -3x. + x l

- x - x

l

1

< -2

2+ x


~l,

se-f(~)

.! E S, si ha: 2

è convessa.

E' importante notare che la convessità o la concavità di uca funzione è

{ definita solamente quando il suo dominio è

un insieme convesso.

l

l

l

••

.,

.,. .,

..

Fig. 14 - Esempi di funzioni convesse e c oncave: (a) funzion e convessa. (b) funzione concava, (c) nè convessa nè concava.

-23-

f(~)

Teo.2.4 - Se una fUnzione n

vesso S s R allora f o.~ +

(l -

è lineare ed è definita su un insieme con Y~

1 e .!,2 E S

(

À) ~2) - Àf(~l) + (l - À) f (~2) •

il che dimostra che ogni funzione lineare che è

l

defini~a

insieme convesso è una funzione convessa e concava

su un

contemyor~

\

neamente. Dim. 2.11-

E' lasciata al lettore.

Estremi locali e globali.

-· ( ù

_.,çs,

Def. 2. 2l- f(,!) si dice avere un minimo ·(massimo) globale in x E S se Y.! E

r .,6.~

~

f(~) ~ f(~) (

o

f(x) ~ f(!o)).

Def. 2. 2t,- f(_!) si dice avere un minimo (massimo) locale in x e S &e -o

'(

e.,c.Jt

esiste un intorno T di x tale che f(x) > f(x ) (f(x) < f(x )) -o - -o - -o Y~ES

(') T

La parola "estremi" è usata per indicare sia i massimi che i minimi. Si parlerà di minimi e massimi "forti" se le diseguaglianze sono valide in senso stretto. Teo.2.5 - Se f(~) è una funzione convessa definita su un insieme convesso ( S chiuso e limitato. allora un minimo locale di minimo globale di

f(~).

Inoltre se questo

mi~mo

f(~)

è anche un

si ottiene in __)

più di un punto. l'insieme dei punti di minimo è convesso.

Dim.

~ UR

Sia

minimo locale di f(,!), esiste cioè un intor-

no di xo .l-x - -o x l O

f(.!o) è un mini:oo globale punto per cui si ott iéne il minimo

·M, . ~ -

global~.

,.,. f\

1\ub.t..

f

-24-

Poichè y

o

è un punto di S che è un insieme convesso allora

sarà possibile trovare

~ f (x ) •

-o

f ( (l - À) x

-o

+ Àv )

-'"'()

Il che significa che il minimo è ottenuto per una zione convessa per cui

f(~)

di~

e

Zo

combin~

e cioè che l'insieme dei punti

è minimo è un insieme convesso.

-25-

CAP. 3 - LA PROGRAMMAZIONE LINEARE.

3.1 -Forma standard della programmazione lineare. Un problema di programmazione lineare (P.L .) è caratterizzato da una funzione ooiettivo lineare nelle incognit e ' e . Ba vincoli espressi da uguaglianze e/o di~guagli a nze Jineeri .

La forma di questi vincoli pu0 differire da un problema è mostrato in

se~ui c o ,

ogni

pro~ramma

all ' altr~

ma, come

linea re pu è ess e re trasf ormato nella

setuente forma standa rd; • z (min) d+ c x + c x ....... c x 2 2 0 0 1 1 con i vincoli a x + a x ... . . . . .. a nxn • b 12 2 1 11 1 1

• b

2

- b ID

ove b., c., d,a .. sono costanti r e ali e note, _ XJ·. variabili reali e z una l J lJ . funzione reale detta funzione obiett i vo. l coefficienti c , c 2 ,.~.cn sono dett i coefficienti di costo. In forma matriciale il problema in forma standar d diventa : T d +c x • z (mio)

con

1

vincoli

ove x è un vettore colonna a n dimensioni c è un

~ettore

colonna a n dimen-

sioni, A è una matrice mxn e b è un vet t ore colonna ad m dimensioni. S: noti

inoltre che nei problemi di programmazione lineare in forma standard

m < n e per ipo tesi rango (A,b): rango(A) • m cioè s i fa riferimento a sistemi consisten ti e non ridondanti. Poichè in generale un problema di programmazione lineare non è in forma standard per ottenere la forma standa rd si opera come segue:

":f.!'r

~

;)

~2er

trasforma r e un probl~ di massimizzazione i n un p~obl~ma di m.inimizzaz ione bas t a camb iare il segno alla f unzione ob i ettivo.

'

~ov~

~ '"(

~{~J .S " .f-

- 26-

b) Se l'insieme dei "vincoli è cardtterizzato da disequazioni lineari del tipo all xl + al2x2 + ••... + a 1pxp ~ b 1 a2lxl +

8

22x2 + ••••• + a 2pxp $ b 2

a mlxl + amlx2 + xl~

o

o

••••

x2 ~ o ...

o

+ a

•l't

x $ b mp P m

2:0

p

esso può essere espresso allxl

+

a2lxl +

al2x2+ 8

22x2+



o

••••

......

+ a ~

a

~ome

x

+ x

• b

x

+ x

-

1p p

2p p

p+ l

p+2

x

p+ 1

l

b..,

~o

introducendo delle nuove variabili non negative x

...

x

~o

p+m

. dette variabili ausi:iarie

~l

( variabili slack) che tramutanò le disequazioni in equazioni. o)

Se le disequazioni lineari sono del tipo anxl.:. + ai2x2 + ••••••• + a.l.p x p

~b.

i . • l, .... m

l.

queste sono equivalenti a 4

ilxl + ai2x2+ •••••••• aipxp- xp+i ·bi

i . l, .... m.

i•l, .... m ancll'esse dette variabili ausiliarie. ( ~L(f-p!~J ...JI / ;à> Ogni variabile libera xj viene sostituita con la differenza di due varia' · bili non negative ponendo cioè: eon

x. • x! J

J

x'! J

o :ve

x! J

~O ,

x'~~ O

J

3.2 - Soluzioni di base. 3.1 -

Ogni vettore x

che soddisfa Ax • b si dice soluzione del si-

stema di equazioni lineari. Una so l uz~i~o.~o.un.ue;:......~x.......su.i_~ c~ ammi ~sibi l e

...----

-----=

se soddis!a anche

x~

O.

-27-

, Si consideri il sistema Ax • b e x - ~ O ove A è una mat rice mxn

dtVt·Je~(

e t lllXl. Supponiamo che i l rango (A ,_!:) .. rango (A) "' m. Riordi-

niamo le colonne di A in modo che A ~[B:N)ove B è una matrice invertibi le~ ed

N

_:;.[:J r~IJ;;

La so lu>iooe

r

è una matrice mx(n-m), il sistema può es-

B~ + N~ •

sere seri t.to come

r'YV'.r' ~·(

b ed emmett:e

n-m

a)

se ~B) Q x è una soluzione di base ammissibile;

B è detta matrice di base ed N matrice non di base;

~

,

'.

)

soluzioni.

detta soluzione di base;

4



N_J

~ ~;e..;~O allora x è detta soluzione di base non degenere.

s

Se almeno una delle componenti d i x è uguale a zero la soluzio-B ---...-ne di base si c ice- d-e-gener-e.

Si noti che per un probl ema di programmazione lineare lO forma standard con n variabili ed m equazioni si possono avere al più n! m! (n- m)! soluzioni di base corrispondenti a tutte le possibili scelte di m fra n colonne.

' s~?cl

Def. 3.-3 - Una soluzione A~

c

J

non di base si chiama soluzione di base. Def. 3. k - Una s o luzione di base x si dice amnissibile se verifi ca

-x ) -O. f_.

Def. 3.5- Una soluzione di base x si dice degenere se a lmeno una delle va-

s.;)f &-~ C!U-r>

7

de~. Def. 4 .l

Un problema in forma standard si dice 1n forma canonica rispetto a lla sequenza di base S se: .. I

(_

ò.J\"r;f\'

m

o

8) c



Y) b

~Q

-s

~

Le variabili x

, ... .. . xs sono dette variabili di m

sl

\

base~

I l significato delle condizioni a, 8, y, è il seguente.

:=-

La condizione a afferma che il sistema di equazione Ax = h è stato riso lto _!1spetto alle variabili è i base x 5

B afferma

La condizione

tiVi a-I-n!-va-riabi h

dy

--------

~.

x m •

- - - - - -..

che nella funzione obiettivo i coefficien ti rela..aSe-sono ru:ti_L1.~-- - - -

-- -

i termini noti delle equazioni sono .non negativi .

·-

~--------

E' i mportante notare che in corrispondenza ad un problema in forma esiste uta soluzione ammissibile detta soluzione di base data da : x5 •

].

= b. o

x.

=

z

'"' d

J

i e { l ,2, .. .. . m}

].

j EG

4.3 La matrice tableau. Un problema di programmazione lineare s1 presenta come già si è detto, nella forma standard:

d +

cTx .. z Ax

(mi n)

•h

x >o Compiliamo la seguente tabella:

b

A

Questa tAbell a i n detta g l i o v1ene r appre sentata dal la matrice :

.,/

t

-38-

o

o

-d

cl

bl

..

...

all

..

k

J

c.

...

alj

..

J

i

. bi .. .

ai l

. . a 1).. ..

b

l)h

.. .

~l

..

m

b

a

..

H •

m

ml

~j &

mj

.. ..

n

. ..

~ 4

c

D

lk · · · al n

aik • · • a.1n ~k'" ~n

amk ••• a

mn

La matrice H detta matrice tableau, rappresenta simbolicamente

le equazioni del problema di programmazione lineare: così ad e~ sempio la prima riga della matrice M si legge ~

)

l Esempio:

z- d • c x + •••••••• +c x 1 1 nn l . .ma e a r1ga 1 come

bi • ailxl + ...•.•••••. +

3

inxn

Il pro gruma lineare in forma standard

- 120 x

l

- 40 x2

40 xl + 20 x2+ :x) 8 xl +

xl +

2 x2 :x

(mi n)

i

• 2.200 • 320

+ :x4 +

2

• 100

xs

può essere formalmente rappresentato mediante la

segu~nte

matri-

ce tableao

o

-120

-40

2200

40

20

320

8

2

100

l

l

o

o

o

l

o

o o

l

o o

o

l

Si noti che in questo caso la forma standard è anche forma canonica ed in corrispondenza vi è una soluzione ammissibile di base associata alla sequenza di base S = { 3,4,5 1 data da x • o x. ,. 100 x, • 320 x2 - o ) l

..

4.4 L'operazione di: . "pivot, e la matrice

Il



PlVOtw

L'operazione fondamen tale dell'algoritmo del simplesso è l'operazione ~O)

pivot. L'operazione di_ pivot in posizione (h ,k)(h,k do

~k

di~

è definita quan-

f O e consiste nelle ope razioni seguenti: a) si

divi~ono

b)

sommano opportuni multipli

s1

tutti gli elementi della riga h per ahk' della riga h a tutte le

righe in modo tale che tutti gli elementi della colonna k, ad eccezione di quello in posizione (h , k), diventino nulli. L'operazione di pivot in posizione (h , k) ha quindi il seguent e significato: si risolve l 'equazione h rispetto nare

~

=

lO

e si usa tale equazi one per elimi-

dalle altre equazioni e dalla funzione obiettivo . per~omodità

Ponendo a.

a~

b.

1.

i

di notazione a

= 1,2 , . .. m la

• - d, a.= c., j • 1,2 , ... n, 00

OJ

J

ma .. rice H, dopo aver fatto l'operazione di pivot

in posizione (h,k) diventa:

k

j (l) i

a!.

o

h

~j

l

l.J

M =

dove

~J·

a . j • O, l. .... n

• _J1]_

~k

a!. •a . . lJ lJ

a l. k.a.h].

Si noti che per J • k e Si

i • O, l. ... p; e i -f. h; j • O, l. ... n

~k 1

r

h si ha aik

=

O e per j "' k e· i"' h si ha ~k =l.

~uò facilmente verificare che la ma trice ti(l) ottenuta dalla matrice ~

con una operazione di pivot in posizione (h,k) è legata alla matrice M dalla relazione

1n cui la matrice Q non è singolare, di dimensioni (m+l) x(m+l), sce dalla matrice identità I

m+ 1

soto nella colonna h e d è data da:

differì-

-40-

o

l

o

l

o.... ~/~k

l

o

l. . .. ·-~ k /~k . . . . o •

Q '"' h

o

O· .

. . 1/ éihk

.o

m

o



·-Qmk,~k.

. l

h

m

ol

La matrice Q si chiama matrice pivot corrispondente all'operazione di pivot in posizione (h,k) e il vettore colonna in cui essa differisce dalla matrice identità corrisponde

alla posizione della riga in cui appare

l'elemento di pivot nella matrice M. Le matrici pivot appartengono alla classe delle mat rici chiamate matrici elementari.

~l~.-, C(

e~~.) f

( De t.

L

Una matrice elementare è una matrice quadrata non singolare che

4.2

è una matrice identità eccetto che per una colonna.

Parimenti si può. verificare che la

.,

~trice _M~~) attenuta da M dopo o opera-

zioni di pivot è legata dalla M dalla relazione M(t) .. Q(t)M dove la matrice non singolare Q(t) è, 1n eenerale, del dpo

dove

O è un vettore colonna di m zeri R(t) è un vettore riga ad m componenti

P (t) è una matrice mxm Si noti che la matrice Q(t) è ottenuta dalla moltiplicazione di t matrici pivot. Ìkf. 4 . 3

Due prograDID.i 'lineAri si dicono equi valenti quando gli insiemi delle soluzioni ammissibili coincidono ed in corrispondenza di ogni soluzione ammis sibile i valori

i"!ti

assu~ t i

dalle fun?.:on) obiet-

tivo coincidono. Teorema

4. l

Sia M(t) una matrice ottenuta da

M

dopo una serie di t operaz i, -

ni di pivot. (t\ I problemi di ? . !.... definiti da M e da ,.1 sono equivalenti

Dim.:

L'operazione di pivot consiste tn una ser 1e di oppor t une nazioni lineari

s~

co~i­

r ighe e quind i lo spaz 1o delle soluzioni non

• I no l tre per ogo1. so l uz1one . · l· l e x s ara~ z ( t ) ( x ). •z ( X J c amb 1a. Gmml· SS lO

infatti:

cioè: (t) T

~(t) l ed eguagliando membro a membro le matrici - d(t) c

= -

d

partiz~nate

si ha :

R(t)b

+

'

(t)T

e sostituendo in z(t)(~) • d(t)+c(t)Tx si ha

z(t)(~) • ·~~(t)~+ (~( t)T+~(t)A)~ 4.5

a

d+cTx + ~(t)(A~- ~)-d+~T~ •z (~).

Il teorema fondamentale del simplesso.

l

Teorema 4.2 Si consideri un programma lineare 1n forrua canontca rispetto gli indici di base S. Vale in tale caso una delle seguenti alternati ve.

s

a) se c. > O Y. rj S, allora la soluzione di base x J -

J

associata

alla forma canonica è ottima; b) se esiste un indice k

f S tale che

~
O, allora si può fare un'operazione pivot su un opportuno elemento della colonna k trasformando il problema in uno equivalente pure in forma canonica in cui, nella soluzione base associata, si ha z Dim. a)

S'

5

S

z .

Questa parte del teorema cos tituisce l a cosidetta prova di ottimalità. ln corrispondenza della forma canonica conside rata 5 si ha la z "' d . lligliorare i l valore de lla fun z ione obie ttivo significa

trovar~

un'altra

soluz~one

di base ammissi bile per

la quale il valore di z diminuisce . Dato che il passaggio da una soluzione base ammissibile alla successiva pu0 essere effettuato solo rendendo basica una variabile non basica (cioè facendole assumere, nell'i potesi posta di non negativit à, un valore positi vo diverso da

zer~)

e

s0stituendola ad una delle variabi li basi che già presenti , ri ducendo ques ta a zero (

cio~

non basica. affi nchè il numero

delle variabili basiche sia lo stesso) si deduce che se tutti i roeffic..ienti di costo sono poslt t vi o nul i si ha:

l

(

'-

zs ' =d+ c.x.>

J J-

cioè non è possibile trovare un'altra soluzione di base per cui la funzione obiettivo assume un val o re inferiore. b)

In corrispondenza ad una nuova soluzione di base ammissibile tale che

~

sia di base si ha:

'\ l

-d + \~

z è

~vidcn t~

che se varia

~

da zero ad un valore positivo senza

cambi are il valore delle altre

-'

vari~bili

non di base che è ugua-

le a zero allora il valore di : diminuisce. Mettendo in evidenza

o

solo le variabili non nulle per ciascuna variabile basica preesistente si ha: :
= ~ se e solo se si noti che si ha 4.6

~

O e / o bh

::

o.

L'algoritmo del simplesso.

Per applicare l'algoritmo del simplesso occorre che i l problema di P . L. s ia io forma canonica il che garantisce di ave r e una soluzione di bas e ammissibile iniziale . La procedura di risoluziooecoo l ' algoritmo del simpless o è la seguente :

-43-

l)

si esamina il segno dei coefficienti c., Y. E G J

J

la) se c. > O Y. E G allora la Si)luzione di base ammissibile ,f è J

J -

Una soluzione ottima ed il procedimento si arresta; .lb) se esiste un qualche j E G tale che c. < O, si sceglie tra questi J

l'indice a cui corrisponde un c. con il massimo valore assoluto, J

sia ck(~), e si procede al passo 2) 2)

si esamini il segno dei coefficienti aik' l 5

24) se aik

~

li~tata

O per l S i

~

i~

m.

m allora non esiste una soluzione ottiaa

ed il procedimento si arresta.

2b) se esiste qualche i tale che a.k > O ai procede al passo 3) l

3)



si eseguino i rapporti bi/aik solo in corrisfcnden%a degli aik>O e si dete~ina l'indice cui corrisponde il mini~ di Loli rapporti, sia h

l e stess e variabili di base e ssendo il numero di possibi li i nsiemi di

P~r i l teorema 4. 4 si ott erre bbero

indici di base al più(:) . due matrici

ug\~li rna

poichè per ipot esi d ' O. o X.

J

J

J

-49-

Esempio

Min z z .. xl

+ x2 -

4x

3

xl

+

x2 + 2x3

xl

+

x 2

x3 ~ 2

-xl

+

x2 +

x

,

xl, x2

3

x3

~

9

S

4

~

o

introducendo x ,x , x 4

5

6

come variabili ausiliarie s i ba la se-

guente forma standard Mio z

.. 9 2 4

xl, x2 . x3, x4, xs · x6 >o che è anche in forma canonica r ispe tto agli indici di base mi danno la base iniziale B • [~ ·~s·~ ]=l

S = {4 , S, 6} che

3

e la seguente tabella

o

l

9

l

l

2

2

l

l

-1

4

r-1

l

0

o

o

o

l

o

o

o o

l

o

o

l

applicando il metodo del simplesso si ha l'operazione di pivot

=

in a33 - l (B

16

f-)

1

KD

6

o

4

-1

[24 '~5 '~3])

5

o

o

o

-l

o

l

o -2

2

o

l

l

l

l

o o

o

l

4

e po1.

17

o

1/3

l -1/3

6

13/3

La soluzione o ttima è data da x•

l

2

-

l 3

4

o o x2*

a

o

l

o

2

o

- 2/3

2

o 1/3 o o

l

l

2/3

l 1/3

o

1/3

o x3* - 13/3 z*• - 17

(

_;:- )

\.__-.---

-

la base ottima B~': è data dalle colonne

_!

1

• .!s,

_!J

o l

cioè:

-2/3] l

o 1/3 4. 9 Riduzione alla• forma canonica.

Per applicare il metodo del simplesso è richiesta una soluzione ammissibile di base disponibile a partire da una forma canonica di partenza. Per determinare una soluzione ammissibile di base, quando essa non è disponibile, vi sono dei metodi che si basano sull'uso delle variabili artificiali. Definizione 4.3 Una variabile artificiale è una

vari~bi~e_ che vi~e

aggiunta

in uno o più vincoli del ·problema in forma standard al fine di ottenere una soluzione di base amDUssibile di partenza.

Si noti che nel problema di P.L., cosi come formulato all'origine, compaiono delle disequazioni, la sua strutturazione in forma standard prevede l'intraduzione in esse di variabili

slack, le quali per loro natura sono

caratterizzate dall'avere coefficiente unitario nella disequazione relativa e

coeffici~nte

slack, pur concettualmente

nullo altrove. Tali variabili

diverse dalle variabili artificiali, sono formalmente simili a queste, e pertanto non è necessario introdurre variabili artificiali nelle equazioni in cui compaiono variabili

slack.

ta una soluzione di base ammissibile

Inoltre si può dire che introducendo le variabili artificiali si

,---

iniziale, come richiesto,

~ottenu­

tr~sforman-

do però il problema P.L . originale in un altro non necessariamente colle-

gato in alcun modo al primo. Di conseguenza, utilizzare questa soluzione di base ammissibile iniziale per risolvere il problema P . L. dato

non

è possibile, a meno che non si riesca a rendere il nuovo problema P.L. ot-

tenuto artificialmente equivalente al primo. Se infatti i due sono equivalenti,

risolvere t'uno o l'altro porta agli stessi risultati.

Se tra tutte le soluzioni di base ammissibili del s i stema

aum~n tato

con

le variabili artificiali, ve ne è almeno una per la quale le variabili artificiali assumono valore nullo essa,

oltr~

che

esser~

una soluzione del

sistema aumentato è anche soluzione del sistema originario ed è

~uindi

uti-

lizzabile come soluzione di base ammQssibile iniziale di quest'ultimo. Per risolvere il suddetto problema è

neces s~ rio

dis por re dei

~roceèim~nt i

che permettano di conoscere se i l problema d"i P. L. i n forma standard atmlet-

,( -51-

te ~ no soluzioni ammissibili e, nel primo caso, di calcolare anche una soluzione èi base amuUssibile in modo da poter applicare il metodo del simplesso. Uno dei tal i procedimenti è costituito dal metodo delle due fasi. Si consideri il nuovo problema di P.L. ottenuto introducendo al più m variabili artificiali a. l

min P m

~1v

_,

p

-l:

a.l

i•l n

~"'

l:

' poichè a. l

-

a .. x. + a. • b.

j•l

lJ J

x. >

o

a. >

l

< m e x. J

J

b. l < l

l

l < i < m

l

l

o

-

.. o

l ~ j ~n è una soluzione di base aumis-

sibilc è possibile risolverl.o con l'algoritmo del simplesso. La risoluzione del suddetto problema costituisce la prima fase del metodo del simplesso e la funzione p si chiama

anch~

forma di inammissibilità.

Teorema 4.ì Data la funzione obiettivo da minimizzare m

P -

.I a.

i=l

l

allora il nuovo problema di progracmazione lineare ottenuto introducendo le variabili artificiali ammette semp re una soluzione ottima. Inoltre detto p* obiettivo si ha:

p~-;

il valo re ottimo della funzione

=O -se e solo se il problema di P.L. in for-

ma standard ammette soluzioni ammissibili. Dimostrazione: Il nuovo problema di P.L. ammette sempre soluzione ottima

10

quanto la sua regione di ammissibilità non è vuota ( esiste almeno una soluzione di base amnUssibile) ed inoltre

p~

O essendo

somma di variabili noc negative e quindi la funzione obi ettivo non è illimitata inferiormente. Se il problema di P.L. io forma standard ammette soluzioni ammissibili allo ra esistono soluzioni ammissibili al nuovo problema di P.L. con le variabili artificiali ponendo

~.~o l

i • l,2, ... m e cioè esistono soluzioni amr

missibili per cui p: O e quindi P* Se d'altra

e

~ioè

parte ~ *

~O

a

O.

ciò è possi bile so lo se a. • O i =1,2, .. m l

se il problema di P . L. i n forma standard ammette soluzio-

ni ammissibi li infatti in tal c aso una

s~l~zio ne

di base ammis-

-52-

sibile del nuovo P.L. lo è anche per il P.L. in forma standdrà. lo base al te orema applicando l'algoritmo del simplesso a l nuovo problema di P.L. con le variabili artificiali si possono verificare solo i seguenti casi: a)

o''

>

o

in tal caso il problema di P.L. in forma standard ha ragione di ammissibilità vuota cioè non ammet te soluzioni ammissibili;

b)

ç:':



o

in tal caso si possono verificare le seguenti possibilità

bl) tutte le variabili artificiali sono uscitè dalla base e quindi sono uguali a zero. In tal caso s i prende la soluzione di base ammissibi le fi nale della prima fase del metodo per ess ere utilizza-

ta come soluzione di base ammissibile i nizia le cui appli care l'algoritmo del simplesso per l ' e secuzione della seconda fase. b2) alcune variabili artificiali sono rimaste nella base ma sono ugualmente nulle in quanto ci troviamo in un caso degenere. In ta l cas o si fanno uscire dalla base tali variabili arc ifici al i mediante opportune operazioni di "pivot 11 in modo da ricondurci alla possibilità bl). Se ciò non è possibile significa che il p roblema di P . L. in forma standard è ridondante c ioè un'equazione è combinazione lineare delle altre.

Si noti che prima di procedere alla seconda fase del metodo del simplesso occorrerà: l) eliminare la forma di inammis s ibilità 2) eliminare dal sistema di equaz ion i tutte le variabili di base i

~ui

coefficienti di costo nella tabella ottima della pri-

ma fase sono positivi. In ta l modo ci si assi cura che che variabile artificiale rimane nell'insieme delle

s~

qual-

v3~tabili

di base (caso degenere ) il suo valore non ;:>otrà mat ess•!rc di·· verso da zero , come r ichiesto , durante l a todo.

seco~òa

fasè èel

~e ­

-53-

Esempio.

Sia dato il seguente problema di P.L. llllnZ

xl + x2

">

l

xl + x 2 ... 2 xl

-

x2

xl

-

x2 >-l O, x

')

xl

'

l

>

2-

o

La forma standard sarà: minz

z "'

=

l 2 l

+

x

6

x 1 ~ O , x 2 ~ O , x3 ~ O ,

= l

x 4 ~ O,

x5 ~ O , x6 ~ O

Il problema non è in forma canonica per cui per iniziare l a prima fase del metodo del simplesso occorre introdurre in corrispondenza della prima equazione una variabile x ; alle altre equazio7 ni esistono già delle variabili che godono della proprietà della basicità. In questo caso la forma di inammissibilità è p

= x7

ed occorre trovare quella particolare soluzione base ammissibile per il nuovo problema di P . L. che annulli il valore della variabile artificiale . Per applicare la prima fase del metodo del simplesso si noti che l)

= x7

l - xl- x2+ :x3 e s i arriva all a seguente tabella: x,

xs

x

l

o

o

o

o

-l

o

o

o

o

o

l

-l

o

o o o

l

o

l

o o o

l

l

o o

o

o

l

xl

x2

x

-l

-l

-l

o

o

l

2

CDl

l

l

-l

-1

l

l

l

3

...

6

x7

o o o

-54c l e non in a =l 11 31 si ha il vantaggio di fa r e usci.re alla prima i t erazione la va-

effettuando l ' ope r azi one di pivot in a

riabile x

dalla base e s i ottiene la seguente tabella:

7

x., 4

o o

o

o

ù

o

o

l

o o

-l

o

o

o

o

o

l

-l

o

o

l

o

l

l

·o o

-l

-2

l

l

-l

0

-l

o o

o o

o

l

l

l

l

o o o l

2

o

La soluzi one di ba se ammiss i bile t r ovata è ot t ima , ed èSsendo a~ssibili.

il problema originari o ammette soluzioni di base

~:·:

Eli-

minando la colonna r elativa alla variabile artificiale e la forma di inammissibilità s i no t a che la funzione obi et t i vo non è ottima per cui si e ff et tua l'ope r azione di pivot in a 42

l

o

o

-l

o

o

l

o

l

-i

o

l

o o o

o o o

CD

l

o o

-! o

o

o

l

o

l

- j

o

l

!

2 l

D

la cui s o luz ione base ammi ssibile non è ottima per

2 e si ottiene:

CUl

Sl

effet-

tua l' ope r a zione di pivot su a23 .,. l e si ottiene:

3/2

l 2

3/2

x4

x_

xl

x2

X~

o

o

o

o

l

l

o

o

o

o

o o

l

l

o

-l o

o o

o

l

o

l~

l

.>

.)



o

cui corrisponde la soluzione di base ammissibile

...

x:·1

• i

u

x2

. 3/2 x;·- l

•.. ,

x·;...

=

o

>:

x.)

..

2

x6

et ~ D

tti:a:

o z*=

-3!2

O

-555.10

}~todo

del simplesso revisionato.

Dall'illustrazione del metodo del simplesso si osserva che durante ogni iterazione solo una piccola parte delle

inform~zioni

contenute nella ta-

bella M(t) sono necessarie per applicare l'algoritmo e quindi non occorre calcolare tutta la matrice M(t). Si noti infatti che per effettuare il passo a) del metodo

del simplesso

occorre conoscere solo la riga zero di M(t), Se risulta cj ~ O per j E G allora l'algoritmo si arresta e basta calcolare la colonna zero per determinare il valore della soluzione ottima, altrimenti per effettuare il passo 2) occorre calcolare solo la colonna k-ma. Se si verifica il caso 2a) allora l'algoritmo si arresta, se invece si verifica i l caso 2b) allora occorre calcolare la colonna zero io modo da individuare la riga di pivot. Da ciò deriva che può risultare vantaggioso, sia rispetto al tempo di calcolo che

all'occupazione di memoria, evitare di calcolarsi, come fa il

metodo del simplesso, tutti i dati contenuti nella tabella M(t). Per il teorema 4.2 si ha : M(t) .. Q(t)M ove M è la matrice table~ iniziale e Q(t) è ot~eouta dal prodotto di t matrici "pivot 11 cioè: (t)

Q

=Q t . Qt- l .. ..... Ql

che è -facile da calcolarsi essendo le mat:rici "pivot .. matrici elementari. Dal punto di vista del tempo di calcolo, quelle che incidono maggiormente sono le operazioni di divisione e moltiplicazione che supporremo avere temr po di calcolo dello stesso ordine di grandezza. Def.. 4 .4~

Densità di una matrice, a, è il rapporto f ra il numero di elementi non nulli in essa presenti ed il numero totale di elementi.

Per una generica iterazione si avrà: a) metodo del simplesso ricordando la sequenza di operazioni che definisce una operazione di "pivot 11 si avranno in totale - sostituzione della riga Eh con Eh l

~k

; (n-m+l) divisioni

- prodotto -aikEh per tutte le m rimanen t i operazioni Ei ; m(n - m+l) moltiplicazioni - sosti tuzione di ciascuna Ei con Ei addizioni

= Ei

- aikEh

m{n - m)

-56-

Quindi trascurando le addizioni si ha: '~s = (n -

m+ l)( : tll + l)

Si noti che la generica iterazione considerata

è . successiva

ad un numero consistente di iterazioni precedenti per cui anche se all'inizio N contiene elementi nulli al crescere di cioè

t

a~

l,

N te&de a ''riempirsi''.

Dal punto di vista dello spazio di memoria ad ogni iterazione occorre memorizzare le tabelle di dimensioni (m+ l)(n- m+l)(giacchè non occorre memorizzare la matrice identità). b) Metodo del simplesso revisionato. ln questo caso si ragiona sulla tabella H di partenza e si fa l'ipotesi che la distribuzione di elementi nulli nella matrice N originaria sia uniforme, cioè la stessa densità a si ha per le singole colonne di N. Si ha; calcolo della riga O di M(t) richiede a m( n-m) prodotti Il Il a m2 colonna k di M(t) Il Il a m2 - colon.na O di M(t) Il Il (m+l) 2 calcolo di Q(t) Il totale delle operazioni sarà: 'lR • (m+l)

2

+ am(n+m)

Per lo spazio di memoria occorre memorizzare la matrice Q(t)di dimensioni {m+l)m (sennn si tien conto della prima coloana ) . Nel confronto fra i due metodi si ha che conviene la revisione del simplesso; rispetto al

total~

delle operazioni, se

'JR < '~s

da cui risulta che essa è sempre conveniente per

n~ ~3m 2 + 2m.

Rispetto all'occupazione di memori a si ha che conviene la revisione del simplesso se (m+l)m
2m- l.

E' interessante notare che nella generalità dei c asi con cre t i di P.L. si ba molto spess o n / m > 4

e a< Ot S

ed in particolare per problemi P.L. di grosse dimensi oni ( m

>

risulta abbastanza comune una dens ità media in t o rno al 5- lo: .

..

100)

-5 7-

Esempio:

Sia dato il seguente problema di P.L. z =-3x

mi n

-

l

Sx

2 +

xl

+

x2 3x x.

2x

+

1 '>

J

o

j

x

-s

o -3 l

6

o

18

3

02

.

x4

...

..

l . ....

6

xs

18

s

X~

3

)

o

o

o

l

o

o o

l

o o

o

l

o

4

M•

2

= 4

x3

si effettua l 'operazione di pivot in a

22

• l, la matrice pivot

sarà

Ql =

l

o

5

o

o o o

l

o

o o

l

o o

-2

l

la nuova matrice M(l ) sarà:

30 -3 4

l

6

o

o

0

o

o

s.

o

l

si effettua l'operazione di pi vot sarà:

l

o

l

~~ Q2=

o

(l

o

o

. -'--- -

t

quindi

o

l

o

-1/3

o

1/3

o

- -·- --

1n

a

31

= 3 , la mat rice pivot

-58-

Q(2) - Q

o

o

l

= o o

x Q

2

l

l

l

3

2/3 -1/ 3

o l o o -'213 l/3

da cui l

o. l l+

o o

3

l

o

-3

-5

2/3

-v

4

l

o

l

o

6

o

18

3

o o o

-2/3 1/3

da cui la soluzione ottima è

2

o

o

o

36

o

o

2

o

l

o

6

o

o

l

2

x* • 2 l

x* .. 6 x* • 2 2

3

z*• - 36.

L

\

-

---

l)

o o 3

x~'t=x'~

4

5

l

O

-59-

CAP. 5 - l TEORIA DELLA DUALITA ' ED 5.1

~~ALISI

DELLA SENSIBILI TA '

Introduzione .

La teoria della dualità p r oblemi di

gioca un ruclo cent rale nella riso luzione dei

p~ogrammazione

svilu~perà

lineare. In questo capitolo si

la teo ria della dualità a partire dal seguente problema di programmazione (P)

f(~)

min

Q

g(~) ~

n

~E X

n

ove f: R

~

e

R

C R

-. 1

g(~) "' [ g (~) ,

.. • .

sm(x) ) -

n m una funzione daR · a R , e X. '

un insieme non vuot o . D' ora in pòi chiameremo (P) problema primale .

.

I vincoli dE l problema (P) sor.o di due tipi:

v~coli

('JJJ

espliciti g (x) O (pena l ità per _x che vio la il v incolo)

- l

l

-

b) se x soddisfa l 'i-mo vincolo si h a ch e r,.( x ) l

che y. g, l

l

(x)~ -

O (premi o per

~

-

~O

e ci ò implica

ch e soddisfa il vincolo) .

Applicand o gli stess i ragiooamen t i si vede subi t o che se g(!) ) ve es::e r e

~ ~

Q f se

~ (_~)=()

a llo r a v è non vi ncol ato 1.n seroo.

Q a llora de-

-60-

(RL(~))

Per il problema

valgono le seguenti proprietà di immediata di-

lllOStrazione P ) 1

X.2 S

·ove S è l'insieme &rnDUssibile del problema (P) e X l'insieme ammissible del problema (RL(l)); Y~

doè la

fun~ione

obiettivo

E S

d~l

RL(~) è

problema

minore o uguale

alla funzione obiettivo del problema P. Il valore ottimo del problema (RL(l)) varierà al variare di lo si indicherà con

~)Q

problema RL(z) t~(y) ~

ove

z• è

~(y)

(funzione

duale~

y

per cui

In base alla proprietà P del 2

si ha la seguente condizione (dualità debole).

z*

il minimo della funzione obiettivo del problema primale.

Quindi v(z.) t qualunque sia .z._~ _Q , è una stima e.er difettQ_di z*" e tale stima è

(D)

~to

"• = max

più accurata v(z)

q~~o

maggiaxe

=

conduce al problema:

max ( min

-y~O-

1. ~.Q. (D)

è_ y~.Ciò

! EX

viene chiamato il problema duale del pr oblema primale (r). Chiaramente v*\< z* t cioè il valore ottimo del duale è minore o uguale del valore ottimo del primalet e in generale v*< z*; la

differenza 6. = z•- .-si chiama gap di dualità. 5.2

La dualità in programmazione lineare.

Si consideri il seguente problema di programmazione lineare max

c

T

x

/

• X Se pon1amo

=

Rn_={ +

n

~ E R

1 : ~ ~ .Q_ } , f (~) =-c x

allora il problema di programmazione lineare consid e rato è un caso particolare del problema (P).

-61-

.:; . -c..!. -l-)' A:!. -)-t~

'

--- ~-

In questo caso introducendo la funzio~lagrangiana si ha T T / T T T < L(~,y) • - ~ ~ + ~ (~ - ~) • - y ~ + (~ A - ~ )~ y r_~J

dove La

è il vettore dei moltiplicatori.

funzione duale sarà definita come:

.-

• min

T

(y

A

affinchè abbia senso la massimizzazione della funzione duale rispetto a T T y ~O dovrà essere (y A- c)~ O infatti in tal caso, poichè ~~Q,

-- - -

-- -

-

il minimo si otterrà per x • O e

altrimenti in caso contrario se esiste ùn indice j tale che

T

(I

A

T

c ).. .

Si può quindi per il problema

~progra1tlllazione

lineare (l) definire

il suo problema duale come: ma x

v

{-

.. max

y~Q

ò

l.

T

r

~

T

yA - c

T

~Q



n altri termini:

.--

- mio

T ~y T Ar~~

J

/

.l~Q

S.3

Formulazione del problema duale.

Ad cgni

problem~

di P.L. può essere associato un altro problema di P.L.

r. iamato problema duale. oa~o

un

pro~lem~

T

max c x

di ?.L. , che

chia~remo ~rimale

nella

f~rma:

-62-

allora il problema

dua~e

è de fini to,in base alle consideraz~oni svolte

nei paragrafi 5.1 e 5.2, da : T

min~y

T A

~el G

1. ~~

c3so Ln cui tutti i vincoli del primate sono del tipo $ il problema

duale si dice simmetrico. le relazioni fra il primale e duale

si~tric0

sono:

l) il duale ha una variabile per ogni vincolo presente nel problema primale. 2)

Il

d~ale

--

ha tanti vincoli quante sono le incçgnite del problema --...

primate. 3)

Il duale di un problema di massimo è un problema di minimo e viceversa.

4) I coefficienti della funzione obiet civo del problema primale sono

i termini noti del duale e i termini noti delle originali disuguaglianze sono i coefficienti della funzione obiettivo del duale. 5) I coefficienti di una singola variabile nei vinco li originali diven-

tana i coefficienti di una singola espressione de i vincoli del duale. 6) Il senso delle disuguaglianze è invertito, la condiz ione di non negatività delle variabili resta. Il problema duale di ogni P. L. può essere trovato ripo rtandos i alla forma del problema primale di P.L. sopra i ndicata ed applicando le relazioni fra il primale e duale

si~trico.

-63-

s~

nel prob lema primale appaionovincoli di uguaglianza cioè: T

max c x Ax = b

-x



~o

~-

esso può essere riscritto nella fo rma equiva lente T max c x Ax < b -Ax < -b

al quale possono esse r e applicate le relazioni del duale simmetrico considerando la matrice(.:À·) e il vettore delle variabili dua li parti-

(~·)

z.ionato come

da cui

v ~o

e ponendo Y.... • v - u bT aun _y_ T

Ay_

si ha:

~~

Se il p robl ema

primal~

contiene variabili non vinco late

del tipo T

max c x A~

.S. b

si può por r e x = t - w ma x

(~ :

Qe w > O e

si avrà:

_E_T )(.~·)

(A: -

A) (

òa .:ui ponendo y_ min

con~~

~TY....

-~·)~ ~

=(.~.)

t

s1 ha:

>

o

.....

') o

~n

segno cioè

-04-

Poìchè le precedenti situazioni possono verificarsi contemporaneamente nello stesso problema di P. L. le regole che permettono di 'passare direttamente dal problema primale a quello duale sono :

Prob1ema prima le

Problema duale

ma x

mi n

' o

vincolo

vari ab i le ~ o vincolo

vincolo variabile~

O

vincolo

variab i le~

O

variabile

matrice A (m x n)

matrice AT (n x m)

termini noti b

termini noti c

coefficienti di costo c

coefficienti di costo b

Tabel l a 5.1 Corrispondenze primali- duali Risulta evidente che le corrispondenze fissate in tabella 5.1 si invertono se risultano invertite le caratteristiche del primale ( o del duale) . Se ad esempio il primale si basa su una minimizzazione il duale e un problema di massimizzazione; se i vincoli del primale sono del tipo > le variabili del duale sono del tipo

le Esempio:

sono del tipo

2

2 ;

se le variabili del prima-

i vincoli del duale sono del tipo

~

.

Si consideri il seguente programma lineare max 8x + 3x2 1

xl - 6x2 Sx x

1 + 7x~ 1 x

2

~

2

=

-4

~

O

~

O

il suo duale sarà mio 2y

2yl - 4y 2 ( 8 -6y + 7y ~ 3 l 2 yl

~

o

y2 ~o

l

- 4y

2

sottoposto ai vincoli:

..

- 655. 4 Teoremi connessi con i l problema duale . Teorema 5. l Il duale de l problema duale è i l problema prima le



Dimostrazione: Si consideri il seguente prob l ema p rimale T max c x Ax.


b

Q

il suo duale sar à lnl.O

_bi'1.. T Al.

:t.

> c >

o

che si può anche scrivere come:

max - bTY T

-Az.~-;;.

il

c~~

duale sarà

x' > O e ponendo

~· ~

x si ha

T

max c x Ax < b

.!>Q

cioè il problema primale Teorema 5.2 Si consideri una coppia di problemi di P. L. l ' uno duale dell ' alt r o entrambi dotati di soluzioni ammissibili x ' e z(~' )

x'

allora si ha :

< 'II(I_')

ove z è la funzione obiettivo del problema primale (max) e v la funzione obie ttivo del problema duale ( min ) . "'. . . _tmos:raztone: Essenao

~'

. . e y ' so l uz~Onl

l' amro~. ss1. b.l~

s ara~ z '

= ~T~ '

bT ' .

' v=-~

e

~oltiplicando ambo i membri del l a relazi one ~· < ~ per y ' T si ha. ri cordando che t'T> O, r ' T(A~ ') 2 z' I~ · Analogamente molti. T , ?llcando A 'i.

~

s.

per !

, T(

con .!

,T

In base alla relazione trovat a si

O)

2:_ _

ha~ .

. .

s t na

. , T T)y'

(~

A _

~~

,T

.f. ·

-66-



z(x ' )•c Tx'=x' Tc o --

il suo duale sarà: T

"'È.Z T

Ay_5:_!:;_ z~Q

in corrispondenza della base ottima B la t abella canonica del metodo del simplesso sarà:

- eT B- l b -B B-l b

-

OT

-

I

T

T

-l

~-!::.aB

-t

B

N

N

I coefficienti di costo in corri spondenza dell'ot t imo saranno

c*

T

"'-T

T -1 B A. -B

• c• - c -

Per il criterio di ottimalità la base è ottima solo s e

lr

*T

T

-l

-c • -c - c B (i! B-l)A _:: f:.T

A > O cioè

~

Dalla tabella si nota che il valore octimo della funzione obiettivo è (~~B -l).Q Se noi definiamo 4vT • ~BT8 -l a .11 ora a bb tamo · · mo d o che TA 2 ~ T o 1n equivalente ATz

1

2~ e ~Tl ·rT~ ={f:.!B- )~ che

z

è uguale o ttimo del

problema primate. Per la sufficienza ~t è una soluzione ottima ~

del problema ~. In generale si ricordi che ognt problema di P.L. si può ricondurre alla forma standard e che i duali di problemi P . L. equivalenti sono equivalenti.

Corollario:

a~s­

Se una coppia di P.L. primali e duali ammettono soluzioni

sibili. allora entr~i hanno soluzioni ammissibili ottime, ed all'ottimo i valori assunti dalle funzioni obiettivo sono uguali. Dimostrazione: E' immediata applicando il teorema 5 . 2 e 5.6. deg~~

5.5 Proprietà Teorema 5.7

scarti complementari.

Condizione neces sar ia e sufficiente affinchè due soluzioni x

·~

e y

che risulti:

y_* T

~)

(È_ -

xitT (ATy* -

~*)

"' O

{l )

• O

(2)

Dimost r azione: (Necessarietà) Si consideri la differenz a z ~ - cTx essa ?uò 1

essere riscritta come 1 I~

-

T

c x +

~T(b -

- -

I

T

~

- I

T

A~ •

1

I

T

(~

-

~) +

o -x -

1. .:_

2

~*,

-::. .' : )

o

u >

è una soluzi one ammissibile del sistema allora

x:': è soluzione ot t ima del priCJale e Viceversa se -

t~ma

~* è

o

x_*T è la soluzione ottima del duale.

una soluzione ottima del primate e y* è una soluzione ot-

d e l d ua l e e v''= .~ b - Ax·'· _ ~, .

...

~ ~ =A

T'i..".·. S. a 11 ora (

., ..

...

.~ ,-::_" ... ) e'

~ ,:t_",~ ..

am-

missibile per il sistema. Quindi ogni algoritmo

~tto

a risolvere un s istema di equazioni l ineari si-

multanee con variabili non negative può essere usato per risolvere un problema di P.L. Viceversa risolvendo la prima fase del metodo del simplesso si ottiene la risoluzione del sistema di equa zioni lineari simultanee. \ 5 . 8 ~etodo duale del simplessp. ~el

metodo del simplesso

espO§ tJLC':.~ l

capitoLo...-4-s-i--p.ar.t;;e- da una sol uzione·

di base ammissib ile e si cerca di imporre l ' o ttimali tà (ammissibilità del duale), il metodo duale del simplesso parte da una so luz i one di base non ammissibile del primale ma d1 base ammissibile per i l duale ed evolve verso la ricerca di una soluzione di base ammis sib ile ottima. Io ~tre _par ole il metodo del simplesso parte da una soluzione di base ammiasibile ma non ottima ( È.

~Q,

_s

~Q

) pe r arrivare ad una spluzione di base ammissibile

-72-

ottima (~*~O, ~*~Q) mentre il metodo duale del simplesso parte àa una soluzione di base ottima ma non ammissibile (~~Q, ~~Q) per arrivare ad una soluzione di base ottima e ammissibile (~*~O,~*~ Q). Il metodo duale del simplesso si usa quando: a)

la determinazione di una soluzione ammissibile di base richiede l'introduzione di un gran numero di variabili artificiali;

-

b) quando alcuni

p~rametri

del modello subiscono delle modifiche

tali che la soluzione ottima non è più 8mnUssibile.

Dato un problema di P.L. in forma canonica debole rispetto alla sequenza di base S tale cioè che:

> o --

c

ai. :b . < l

( condizione di ottimalità )

o

( non ammissibilità )

cioè è inizialmente disponibile una soluzione di base ammissibile per il duale, allora il metodo duale del simplesso evolve secondo i seguenti pas si: l)

si esamina i l segno dei coefficienti b., l < i < m

-

l

la) se b. > l-

~

o, l < i < m, allora

-

è una soluzione anunissibi le

~

ed ottima.

-

lb) Se esiste qualche i, l < i < m, tale che b. < O, si determi-

-

].

= max{lb.l l:b. ù Yj il soluzioni 8mnUssibili infatti

~

• bh

pro~lema

- .~

3 1

sempre minore di zero. ~.

2b) Se qualche coefficiente

~

di p i vot scegliendo

J l&

-ahk

non ammette

ah ;X; risulta J

·'

< O si determina la colonna k c mi n { _j_ : Y. : ah .... O } j -~j J J

Questa scelta del pivot mantiene la condizione di ah· tà cioè c~ a c. - c. :!!..L > O Y. j S da cui .: . > J

-

]

k

]

~k-

o in modo equivalente c. > c ] -

sceglie k in modo che

-

C}
o} j:a*. < O} e a =~n{ -.:::.!. posto dunque a • max{ ~ a*.' · ej 2 1 e) J e) J eJ a

o

o}

b~

{-

mi. n l

--.qih l

affiucbè la soluzione rimanga ammissibile deve risultare

6 < 6 l-

6


o e quindi y > oh -

~ -~ qoh

k ES* la perturbazione y distrugge l a f orma canoni ca della tabella

ottima.

-77-

Introduzione di una nuova variabilP.. L'aggiunta di una variabile x è accompagnata dall'aggiunta alla man+ 1 trice A di una colonna a e alla riga dei ~oef ficienti di costo di c . -n+ 1 n+ 1 La soluzione di base ottima resta una soluzione di base ammissibile ma può non essere ottima. Ricordando che

:!:T

~

T -1 T. = ~BB A ~ ~ ,per la n+l-sima compo-

nente si ha T -l cB B 41+ a l -

a) se c•'~'

n+ l

-c

n+ l

~

O la soluzione originale ottima è

ancora la soluzione ottima del problema modificato dall'aggiunta della variabile. b)

Se c* < O occorrerà introdurre nella base la nuova variabile n+ 1 x mediante il metodo del simplesso. n+ 1

Introduzione di un ulteriore vinco l o. L'introduzione di un

ult~riore

vincolo riduce in gene rale la regione am-

missibile . Detta cioè S la regione ammissibile del problema di P.L. ed S' la regione ammissibile che si ottiene introducendo il nuovo vincolo, sarà 1n generale:

S'~

S

Pertanto il valore della nuova s~luzione ot tima non può essere migliore del precedente. Se allora la soluzione ottima trovata soddisfa anche ·il nuovo vincolo essa sarà una soluzione ottima anche del nuovo probl ema . Se ciò non avviene occorrerà espandere la m~trice W~ con i coefficienti corrispondenti al vincolo aggiunto, ripristinare la prima canonica ed eventualmente applicare i l metodo duale del simp,lesso. 5.loEsempi numerici. a) Si risolvino i seguenti problemi di P . L. duali tra loro. max 120 x 40 x

8 x

1 1 l

+

40x

+ 20x

2 2

~

2. 200

y3 ~ 40

+

x , x 1 2

y 3 ~ 120

~

O

Introducendo le variabili ausili ari e e le variabili artificiali i problemi divengono in forma canoni ca:

-78-

mi" -120x 1 - 40x2 40x + 20x + x3 1 2 8x

1

+

xl +

2x

2200

x2

40y • 8y2+ YJ - y4 l

..

320

20yl + 2y2+ YJ

+x =

100

yl, y2' y3' y4,

+x4

2

2200y l + 320y 2 + 100y2

!IUO

5

= 120

+ y6

- Ys

+ y "'

7

40

Y7 ~o

Ys· Y6'

x , x , x , x , x ";li O 4 1 2 3 5

Risolvendo con il melodo del simplesso

ottengono le seguenti

SL

tabelle

Problema primale

o M

1-120

-40

2200

40

20

= 320

0

2

l

l

100

Problema dual.e

o o o o o o l o M:a o o l l

4800

o

-lO

o

600

@

l -5

l/4

o 1/8

o o

60

o o o

3/4

o o

l

5400

o

o

60

o

l

25

l

o

15

o

o -3/40

40

-2

o

220J

320

100

120

40

8

l

-l

o

40

@)

2

l

o

-l

o

- 40

o

-4

l

l

~

l)

4400

o o

':'

40 2

l

100

-lO

0 1/10

-l

l

l

o o o o

-2

l

o

o

l

o

3

o l/10 o l/10 -l 2 l -2

1/20

o

-1/20 o 1/20

o

o

1/10 -1/2 o k~ 5400 l

o

15

25

60

-25

lO

o

-1/4

-1/4

1/2

1/4

-1/2

-1/40

ed all'ottimo risulta:

CD

-lO

l

l

da cui si nota che

x* ..

15

o o

-60

-160

10

o

1/4

o

1/4 l

zi:=

v*

10

o

l

l

l

o

5 . 400

o

o

o

l

3/40 1/40 -i/W -1/40 1/10

-79-

Dalla tabella

ottima si nota che i valori delle variabili ausiliarie x ,x ,x

3

4 5

uguagliano i coefficienti di costo relativi alle variabili y ,y ,y nel 1 2 3 duale, mentre i coefficienti di costo relativi alle variabili x ,x del 1 2 primale eguagliano i valori delle ausiliarie y4 ,y del duale. 5

Vi è

cio~

una corrispondenza biunivoca fra le variabili del primale e del

duale:

x4

.-.y2

xs-Y3 xl -Y 4 x

2

-

Y

5

e,più 1n generale, se indichiamo con x., i • l .... n le variabili del pri1

male, con x . j•l ... m le variabili ausiliarie del primale, con y., j•l ... m n+J J le variabili del duale e con ym+i , i=l ... n, le variabili ausilarie del duale, vale la corrispondenza: xm+ i - y i

ovvero alla i -ma una vari ab i le di scarto de,l prima le

i=l . .. m

corrisponde la i-ma variabile del duale e viceversa.

x.--y J

.

m+J

j=l ... n

ovvero alla i-ma variabile del primale corrisponde la j -ma variabile di scarto del duale e viceversa.

Ne viene di conseguenza che il problema duale può essere risolto tramite il principale e viceversa, infatti sarà

.~

c·: J

E' inoltre immediato verificare che all'ottimo vale il teorema dello scarto complementare io quanto

.. o

( x'"

l'

~d

x*2 )

...

(

Y4 ) "' o y* 5

inoltre il corollario del teorema dello scarto complementare:

- 8.)-

x* >

~y~~ •

x;

o.:::;>y) • o

O

l 4 x~ > o.::;> y~ .. o .~

>

.t.

>o~~ ·o y* > 0-=0> x* • O

yf

2

4

b) Si consideti il seguente problema di P.L. max z • 8x x 2x 7x

1 1 1 1

+

9x

+

x

+

3x

+ 6x

x ,x 2 ,x 1 3

2 2 2 2

+

4x

+

2x

+

4x

3 3

2

2

2 3 2x 2 8 3

+

3

~O

il suo duale sarà min

~

• 2y

1

+ 3y

2

8y

+

3

yl + 2y2 + 7y3 ~ 8 yl + 3y2 + 6y3 ~ 9 2yl + 4y2 + 2y3 ~ 4 yl t y2 t y3 ~ o risolvendo il problema primale con il metodo del simplesso si avrà:

M(2) ..

o

-8

-9

-4

o

o

o

2

l

l

l

o

3

2

0

2 4

o

l

o o

8

7

6

2

o

o

l

9

-2

o

8

o

3

o

l

1/3

o

2/3

l -1/3

l

2/3

l

4/3

o 1/3 o

2KD

o

-6

o

-2

o

5/3 2/3

o l

~31/3

o

o

4

7/9

O

o

4/3

l -1/9 -1 / 9

'l

5/9 2/3

o

l

8/3

o

~,

l

o

-2

o -2/3

7/9 -2 / 9 1/ 3

dalla quale è possibile legger dirett amente la s oluzione ot t ima

81-

del duale . T ( ' ,,..,.,

1 :; (0 9 8 )(l l l -) =(0 9 8)(1 -l/9 -1/9)•(0 5/3 2/3)

.)

:f:' = Y'i u '1 ' Y)

o o

o o

3 2 6 7

7/9 - 2/9 1/3

-2/3

che sostituite nel problema duale danno luogo a y2 • O , y; • O

yg ..

4

~)•

Ricordando che v (y'') • 'L'' T È = (O 5/3 2/3) ( z(~()

=

31/) cioè

v((':)

c) Pe r meglio comprendere le relazioni esistenti f r a un problema ed un suo duale risolviamo in parallelo i seguenti problemi duali

fra loro ma x z= 8x +2lx 1

2x

mi n " • Yl"*'Y2

2

+ 3x

l

~

8

~

2yl + y2

2 xl + 7x2~ l

1

3yl +7y2 ~ 21

introducendo le variabili ausiliarie si ha: mi n

-z

-8x

2x

1

+

3x

l

- 2lx

min v

2

=l

-2y

+ x 4-l

-3y

2 + x3

xl + 7x 2 xl, x2' x3, x4

l l

yl + y2 y2 + y3

-

.. - 8

+ >' 4= - 21

- 7y2

o

yl, >'z• y3' y4 >

~o

Risolvendo il primale con il metodo del simplesso ed il duale con il metodo duale del simplesso si hanno.le seguenti tabelle:

M=

o

8

-21

l

2

3

l

l

3

-s

0 o

M(l)= 4/7 11/7 O 1/ì

1/7 l

o o l

o

o

l

o

1/7

l

l

o

o

-8

-2

-l

l

o

o

l

-21 -3

M(l)=

e



4/7

o

o

1/7

-5 f-11/7

o

l

-1/7

l

o

-1/7

-3

3

l -3/7

o

M=

o

-- ------------------3

3/7

-6 2-

53/11

o

o

35/!1 18 / 11 1

4/11

l

o

7/11

7/11

o

l

-1 /11

da cui

z r.

•*

~

~

-5 3/11

o

35/11 l

- 3/11 J- 2) 2/11 =

:1..8/11

*T

53 l 11

o Gi ll

o

~

=

o

l

l

1/ll

-7 /11 1/11 3/11-2/ll

(4/11, 7/11, O, O) e

T

y*- ( 35/11,18/11, o, 0). Inoltre si possono notare da questo esempio le seguent i ulteric r i diffe-

-..'\0~

,-

renze fra il metodo del simplesso e il metodo duale del simpless o : l) nelmetodo del simplesso , si sceglie prima la variabile che en-

~

de~mmina

tra nella base e si

poi la variabile che deve uscire

dalla base. L'operazione di pivot si effettua su un element o positivo. Il metodo duale sceglie prima la variabile che esce di base e determina poi la variabile che entra in base . L'operazione di pivot viene eseguita su un elemento negativo . --~

2) Nel metodo del simplesso , in assenza di degenerazione

(~>Q),

il valore della funzione obiettivo diminuis ce ad ogni ite razi o~n

ne; nel metodo duale,

assenza di degenerazione

(~ >

Q) il

valore della funzione obiettivo aumenta ad ogni i terazione. d)

Si consideri il seguente max 4x x

7x 3x

1

l l 1

+

Sx

+

x

+

Sx

+ 5x

9x

+

2

+ x

2

+10x

2

x • x , x , x

1

2

3

3x

+

2

3

3

4

llx

+ +

4

x4

2

15

2x .=:.t2o

+

4

3 3

problema di P.L.

+ 1Sx 2100 4

~O

La tabella iniziale di questo problema è :

o

-4

-5

-9

15

l

l

120 100

7

5

3

5

sviluppando

1

-11

o

o

o

l

l

l

o

3 lO

2

o

l

o o

15

o

o

l

calcol i la tabe lla finale r 1sulta la seguente:

-83-

695/7 50/7

o

3/7

o

ll / 7

13/7

o

5/7

l

5/7

o o

-S/7

10/7

o

-1/7

13/7

-6/7

l

4/7

l

12/7

-3/7

o

1/7

o -6/7 o 2/7

325/7 55/7

Supponiamo di incrementare c , costo relativo ad una variabile non di base 2 di una quantità o (con o>O). Il relativo valore c~ nella tabell a ottima as-

~--o.

sume il valore di

~è c~

c

t- o~O

e cioè 02_

Se invece risultasse o>

f allora la soluzione

trovata resta anche ottima.

t e quindi ci'=< O allora occorrerebbe applicare :nco-

ra alla soluzione trovata il metodo del simplesso per determinare la

n~ova

soluzione ottima. Si consideri ora l'incremento di c

1

relativo a l la variabile di base x ; c

assume quindi il valore c = 4 + a. Nella tabella ottimale avremo cl~ 1 e non si è più nella forma canonica •

.Per

1

1

=-

o

riottenere la forma canonica si procederà sommando alla riga zero la

prima riga moltiplicata per o e si avrà: 695 + so ~· o . l + 10. o 1 7 v, ' 7 7 '

-

11

7

-

s

-::(J.

1 '

13

10

7 +T

a;

o

la 7

5 1

e imponendo la condizione di ottimalità dovrà essere:

a< !!.. a - 13 lO

da cui deriva:

La nuova soluzione ottima sarà

695 + 50 a 1

7 di O 2 la colonna

Consideriamo ora le variazioni sulle bi ed esat tamente incrementiamo b cioè b 2 = 120 + o. Notando che b:' = bf + q~ 6 e che q~ 2 2 zero della tabella finale assumerà la forma 695 1 50

T

+

o6

+

oo

2

a1

6

325 + l 6

1

55

T

+

oo

325 La soluzione trovata rimarrà a.'ll!IÙ ssibile e quind.i o t ti-oa se e solo se - 7- +6>0

-84-

325

cioè é
O cioè-5 < ò < 55 -

~

3

Si consideri ora un incremento Y al coefficiente a

avrà af2 ; af2

+

qt2·Y

a

af2

cioè a)

32

2

5 +; . si

a!7·Y

+

In questo caso essendo la perturbazione effettuata su un coefficente corrispondente nella tabella finale ad una colonna non di base basterà imporre: a * ' 02

=

5

c*'> O cioè l + 2y > O da cui y_ > --~ altrimenti bisognerà riap2 7 7 -

plicare il metodo del simplesso.

~ Nel caso che si consideri l'introduzione di un ulteriore vincolo s i control la se la soluzione ottima soddisfa il nuovo vincolo. Se i l nuovo vincolo è 2 2 10 si nota che la soluzione ottima x

1

+ x

x~

l

50 7

,c

2

O soddi s f a il nuovo vi nco l o

e quindi è anche ottima per il nuovo problema di P . L. Se i l vincolo è

x

+ x < 5 • 1 2 La soluzione ottima non soddisfa il nuovo vincolo per cui lo s i

ag v. iung~

alla tabella finale. Al fine di ripristinare la forma canon1 ca oc co rrcr3 azzerare a

mediante sottrazione della riga l alla 41 tal uvdo come riga 4

5

50 7

• o •

l -

75 • o, 75 •

10 7

, o ,

riga~.

Si otterrà in

l +7 • l

e si otterrà una soluzione di base non amnùssibile 1n quant o 5 per cui bisognerà applicare il metodo dual e del simpl e sso .

50 7

< O

-esCAP. 6 - PROGRAMMA.ZIO'fljt: LINEARE: ALCUNI PROBLEMI DI STRUTTURA PARTICOLARE

6.1 Formulazione del Date

proble~a

dei trasporti.

m origini A.(i= l, 2, .... m) che producono le quantità a,(> O) l

l

ed n destinazioni B.(jc 1,2, .... n ) che consumano le quantità b.(> O) J

J

n iflai=j~lbj,determinare t!l

di una stessa merce,

con

le quantità di merce

da spedire da ogni A. ad ogni B. in modo da soddisfare le domande al J

l

minimo costo totale. Chiamando x .. (i=l , . . . m; j• l, ... n) le quantità incognite di merce da l.J

~d

spedire da ogni A.

l

ogni B. e c .. i costi unitari di spedizione J

lJ

da A. a Bj · il problema si formula analiticamente come: 1 min z .. ~ c .. x .. i•l j•l lJ l.J

t

n

,r

x ..

lJ

]''"l

m

..

a.

i • l, ... . m

l

x .. ,. b. lJ J

. L.

l"'l.

x .. > lJ

j

o

=

l, .... n

Yi ,

Yj

Il problema dei trasporti può essere risolto con i metodi genera l i · di risoluzione visti finora. Tuttavia, data la sua particolare st r uttura, esistono dei metodi specifici che ne semplificano la soluzione. Inoltre nella suddetta formulazione si . possono far rientrare i casi n

in cui i vincoli di origine ( . i

J =1

m

= a. , i

x .. lJ

l

l, .... m) o i vincoli

=

di destinazione(.[ x .. =b., j =l ... . . n) siano espressi come disugua1.= 1 l]

J

glianze. Si supponga infatti ad esempio che sia x .. < b. l.J -

m

j • l, ..... n

J

n

.E

a.< .E b. l•1 l J'"' 1 J

cioè l'ammontare totale dell'offerta è inferiore all ' ammontare totale della domanda, allora int r oducendo nelle disuguaglianze le variabili ausiliarie x

. > O

m+l,J

m+ l

j=l ... n si ottiene .E

l"' 1

x .. • b. J

l.)

j~l,2,

. .. n

n

o in modo equivalente .E

J•l

-~lxm+ l ,J·=-~l J

J•

0

x.

.

l,J

b.-.Pl.El .. -= J= -~lb J. J j= le x lJ

j .. l. .. . n da cu1

. • b.

+x

m+l,J

J

1~1 =

8

a l.. "'

cioè si è introdotta una sorgente fittizia A

m+ l

m+ 1

di capacità a

m+ 1

tale

-86che risulti n

m+l

.[

J.. 1

dove c

. m+ 1 •J

b. •.E

a.

l

o

Si noti inoltre che il problema dell'assegnamento è un problema di trasporto m-1

volte degenere

ta da m componenti uguali

1n quanto ogni soluzione di base sarà costituil e tutte le altre uguali a zero.

a~

L'algoritmo per la determinazione dell'assegnamento ottimo opera unicamente sulla matrice dei costi C={cij}· L'alr,oritmo si articola nei seguenti passi: l) Si sottrae ad ogni riga di C il suo elemento minimo. 2)Si sottrae ad ogni colonna della matrice ottenuta il suo elemento minimo. 3) Si effettua il maggior numero

possibile di assegnamenti k in

corrispondenza agli zeri della matrice C. 3a) Se kcm allora si è determinato l'assegnamento ottimo. 3b) Se k