Cercetari Operationale, Probabilitati, Criptologie. Aplicatii

Embed Size (px)

DESCRIPTION

Informatics students

Citation preview

  • 7/16/2019 Cercetari Operationale, Probabilitati, Criptologie. Aplicatii

    1/322

  • 7/16/2019 Cercetari Operationale, Probabilitati, Criptologie. Aplicatii

    2/322

    Emil Simion Mircea AndraiuDavid Naccache Gheorghe Simion

    CERCETRI OPERAIONALE,PROBABILITI I CRIPTOLOGIE

    APLICAII

    EDITURA ACADEMIEI TEHNICE MILITARE

    Bucureti, 2011

  • 7/16/2019 Cercetari Operationale, Probabilitati, Criptologie. Aplicatii

    3/322

    Refereni tiinifici:

    Prof. univ. dr. Octavian STNILProf. univ. dr. Victor-Valeriu PATRICIU

    Conf. univ. dr. OvidiuANDRU

    Descrierea CIP a Bibliotecii Naionale a RomnieiCercetri operaionale, probabiliti i criptologie: aplicaii / Emil Simion,

    Mircea Andraiu, David Naccache, Gheorghe Simion. - Bucureti : Editura

    Academiei Tehnice Militare, 2011

    Bibliogr.

    ISBN 978-973-640-208-1

    I. Simion, Emil

    II. Andraiu, Mircea

    III. Naccache, David

    IV. Simion, Gheorghe

    004.056.55

    621.928

    Editat: Academia Tehnic Militar

    Redactor-ef:lt. col. ing.Stelian SPNU

    Corectur:Mihaela ZAHARIOIUOperaiuni tipografice:plt. adj.Petru ANTOCHI,Silvia STROE, Viorica TOMA,Adrian STNIC

    Bun de tipar: 08.08.2011

    Hrtie ofset: 70 100 Format: 32 / 70 100Coli tipar: 18,4 Coli editur: 9,2

    Tiparul:Academia Tehnic MilitarLucrarea conine 292 pagini

    0208 C. C-8

  • 7/16/2019 Cercetari Operationale, Probabilitati, Criptologie. Aplicatii

    4/322

    i

    Cuvant nainteCercetarea Operationala a aparut ca disciplina prin formularea, n perioda celei de a

    doua conflagratii mondiale, a problemei de transport cand s-a pus problema alocarii eficientea resurselor catre unitatile combatante. Ulterior, aceste probleme si-au gasit utilitatea si nactivitatea de management a unitatilor economice. Un rol important n dezvoltarea acesteiteorii l-a avut George Dantzig (1953).

    Teoria grafurilor si analiza fluxului maxim sunt modele pentru o serie de probleme detransport sau de optimizare a traficului ntre procesoare (n cadrul aplicatiilor de multi-processing n care avem si un cost de comunicare). Problemele concrete de optimizare acosturilor de aprovizionare, transport si stocare se pot rezolva cu ajutorul acestor modelematematice. Optimizarea acestor costuri poate duce la economii substantiale n cadrul uneifirme care are ca obiect de activitate astfel de probleme.

    Gestiunea optima a stocurilor este o componenta esentiala n planificarea si realizarea

    unui plan de marketing si este o componenta de nenlocuit a conducerii economice modernen cadrul unei economii de piata. Aceasta teorie si-a gasit mai nou aplicatii n domeniulproiectarii circuitelor electronice, stocul fiind reprezentat n acest caz de capacitatea dememorie disponibila.

    Totodata, lucrarea de fata contine aplicatii practice abordate de autori n cadrul semi-nariilor ce se desfasoara la disciplina Criptografie si Securitate, la Facultatea de MatematicaInformatica din cadrul Universitatii din Bucuresti, la masterul de Securitatea Tehnolo-giei Informatiei, organizat de Academia Tehnica Militara, precum si la masterul de Teo-ria Codarii si Stocarii Informatiei, organizat de Facultatea de Stiinte Aplicate din cadrulUniversitatii Politehnica Bucuresti.

    Aceasta culegere de probleme continua dezvoltarea colaborarii dintre scoala romaneascade criptologie si scoala franceza reprezentata n cazul de fata de David Naccache, profe-sor la universitatea Pantheon-Assas Paris II. Din acest motiv se regasesc, n culegerea defata, capitolele dedicate principiilor criptologice si atacurilor n mediul de implementare, ceacopera un gol din curricula sistemului de nvatamant din Romania, capitole elaborate ncolaborare cu profesorul David Naccache.

    Dr. mat. Emil SimionDr. mat. Mircea Andrasiu

  • 7/16/2019 Cercetari Operationale, Probabilitati, Criptologie. Aplicatii

    5/322

    ii

    Prefata

    Intrand progresiv n era informatiei, societatile industrializate se gasesc n fata unui para-dox: pe de o parte, puterea si influenta Europei si a Americii de Nord au crescut semnificativ,n principal datorita maiestriei modalitatilor prin care se controleaza fluxurile de informatii,precum si valorii crescute a datelor procesate. Pe de alta parte, dupa cum au demonstrat-odeja criza Wikileaks sau viermele Stuxnet, apar noi amenintari si vulnerabilitati care fac cadependenta noastra de sistemele informationale sa fie cruciala.

    De aceea, dezvoltarea atacurilor cibernetice, precum si disponibilitatea online a instru-mentelor utilizate n activitatea de piraterie conduce la obiective strategice importante sicultiva necesitatea de a pregati experti pentru acest domeniu.

    Criptografia este peste tot n jurul tau. In timp ce tu citesti aceste randuri, n vecinatateata se transmit informatii cifrate prin telefoane mobile, relee de pay-TV, precum si routerewireless. Mediul n care traim se schimba ntr-un ritm alert. Aceasta evolutie este rezultatulprogresului n domeniul tehnologiilor hardware si al matematicii.

    Criptografia aplicata s-a dezvoltat considerabil n ultimii ani, pentru a putea satisfacecerintele crescute de securitate ale diverselor domenii legate de tehnologia informat iei, cumar fi telecomunicatiile, retelistica, bazele de date, precum si aplicatiile de telefonie mobila.Sistemele criptografice sunt din ce n ce mai complexe si mai tehnice si necesita din ce n cemai multa putere de calcul (de exemplu schema de cifrare perfect homomorfa a lui Gentry).In plus, algoritmii criptografici trebuie utilizati mpreuna cu protocoale adecvate, a carorproiectare si ntelegere necesita o analiza delicata.

    Aceasta carte va ofera instrumentele necesare pentru a ncepe sa va dezvoltati aptitudinilen domeniul criptografiei. In timp ce cititi aceste randuri n limba romana, strainul care suntva ndeamna sa realizati ca unele dintre cele mai luminate mint i care au adus contributiiacestui domeniu si aveau originile n spatiul lingvistic si cultural romanesc. De exemplu, cel

    care a spart masina de cifrat Purple a japonezilor, fapta care a dus la divulgarea secretelordiplomatice japoneze nainte de intrarea Americii n cel de-al doilea razboi mondial, proveneadin orasul Chisinau, Republica Moldova, oras n care familia lui se mutase dupa plecarea dinBucuresti la sfarsitul anilor 1890. Stiinta secretelor are o lunga traditie n Romania, taracare a fost nevoita constant sa se bazeze pe propriile talente pentru a-si pastra independenta.Expertii au prezis ca urmatoarele razboaie vor ncepe n spat iul cibernetic. Autorii acesteicarti, care sunt pedagogi si cercetatori, au importanta datorie morala de a lasa mostenireRomaniei astfel de talente vitale.

    In trecut, am avut onoarea de a cunoaste sau a fi mentorul unor cercetatori si studentiromani foarte talentati. Intotdeauna am fost uimit de creativitatea acestora, de dorintalor de a-si atinge scopurile, precum si de daruirea pentru munca. Sper ca aceasta carte vacontribui la dezvoltarea continua de asemenea talente, astfel ncat domeniul stiintific caruia

    i-am dedicat o buna parte a vietii mele sa beneficieze de acest formidabil rezervor de talente.Daca sunteti un student talentat si interesat de studii doctorale n domeniu, nu ezitatisa ma contactati pentru sfaturi.

    Prof. David NaccacheUniversite Paris II, Pantheon-Assas, PRES Sorbonne UniversitesMembru al laboratorului informatic al Ecole normale superieure. Paris, Franta.

  • 7/16/2019 Cercetari Operationale, Probabilitati, Criptologie. Aplicatii

    6/322

    Cuprins

    I CERCETARI OPERATIONALE 1

    1 PROGRAMARE LINIARA 31.1. Folosirea eficienta a resurselor limitate . . . . . . . . . . . . . . . . . 3

    1.2. Forme ale problemelor de programare liniara . . . . . . . . . . . . . 5

    1.3. Algoritmul simplex (Dantzig) . . . . . . . . . . . . . . . . . . . . . . 7

    1.4. Duala unei probleme de programare liniara . . . . . . . . . . . . . . 9

    1.5. Problema de transport . . . . . . . . . . . . . . . . . . . . . . . . . . 10

    1.6. Aplicatii . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11

    2 PROGRAMARE DINAMICA 17

    2.1. Forma unei probleme de optimizare secventiala . . . . . . . . . . . . 17

    2.2. Teorema de optim . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19

    2.3. Programare dinamica regresiva . . . . . . . . . . . . . . . . . . . . . 202.3.1. Ecuatiile programarii dinamice regresive . . . . . . . . . . . . 20

    2.3.2. Rezolvarea problemelor de programare regresiva . . . . . . . 21

    2.3.3. Aplicatii . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22

    2.4. Programare dinamica progresiva . . . . . . . . . . . . . . . . . . . . 27

    2.4.1. Ecuatiile programarii dinamice progresive . . . . . . . . . . . 27

    2.4.2. Rezolvarea problemelor de programare progresiva . . . . . . 28

    2.4.3. Aplicatii . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29

    3 TEORIA JOCURILOR 33

    3.1. Notiuni introductive . . . . . . . . . . . . . . . . . . . . . . . . . . . 33

    3.2. Principiul minimax . . . . . . . . . . . . . . . . . . . . . . . . . . . . 343.3. Strategii mixte si valoarea jocului . . . . . . . . . . . . . . . . . . . . 35

    3.4. Teorema fundamentala a teoriei jocurilor . . . . . . . . . . . . . . . 36

    3.5. Rezolvarea jocurilor matriceale . . . . . . . . . . . . . . . . . . . . . 37

    3.5.1. Formularea problemei de optimizare . . . . . . . . . . . . . . 37

    3.5.2. Reducerea la probleme de programare liniara . . . . . . . . . 38

    iii

  • 7/16/2019 Cercetari Operationale, Probabilitati, Criptologie. Aplicatii

    7/322

    iv CUPRINS

    3.6. Aplicatii . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38

    4 TEORIA DECIZIILOR STATISTICE 45

    4.1. Prezentarea problemelor . . . . . . . . . . . . . . . . . . . . . . . . . 45

    4.2. Strategii Bayes si strategii minimax . . . . . . . . . . . . . . . . . . . 46

    4.3. Cazul efectuarii unor experiente unice . . . . . . . . . . . . . . . . . 47

    4.4. Decizii optime n caz de incertitudine . . . . . . . . . . . . . . . . . . 49

    4.4.1. Criteriul lui Hurwicz . . . . . . . . . . . . . . . . . . . . . . . 49

    4.4.2. Criteriul lui Savage . . . . . . . . . . . . . . . . . . . . . . . . 49

    4.4.3. Criteriul Bayes-Laplace . . . . . . . . . . . . . . . . . . . . . 50

    4.4.4. Criteriul lui Wald . . . . . . . . . . . . . . . . . . . . . . . . 50

    4.5. Aplicatii . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50

    5 TEORIA GRAFURILOR 55

    5.1. Grafuri orientate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55

    5.2. Algoritmul lui Kaufmann . . . . . . . . . . . . . . . . . . . . . . . . 56

    5.3. Algoritmul lui Chen . . . . . . . . . . . . . . . . . . . . . . . . . . . 57

    5.4. Algoritmul lui Ford . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58

    5.5. Algoritmul Bellman-Kalaba . . . . . . . . . . . . . . . . . . . . . . . 59

    5.6. Algoritmul lui Dijkstra . . . . . . . . . . . . . . . . . . . . . . . . . . 60

    5.7. Arbori minimali . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61

    5.7.1. Algoritmul lui Kruskal . . . . . . . . . . . . . . . . . . . . . . 62

    5.8. Aplicatii . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62

    6 PROBLEME DE TRANSPORT 75

    6.1. Problema clasica de transport . . . . . . . . . . . . . . . . . . . . . . 75

    6.1.1. Formularea problemei . . . . . . . . . . . . . . . . . . . . . . 75

    6.1.2. Algoritmul de transport (adaptarea algoritmului simplex) . . 76

    6.1.3. Determinarea unui program de baza initial . . . . . . . . . . 77

    6.1.4. Degenerare si ciclare . . . . . . . . . . . . . . . . . . . . . . . 78

    6.1.5. Variante ale problemei de transport . . . . . . . . . . . . . . 79

    6.1.6. Algoritmul simplex modificat . . . . . . . . . . . . . . . . . . 80

    6.1.7. Aplicatii . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 816.2. Flux maxim intr-o retea de transport . . . . . . . . . . . . . . . . . . 89

    6.2.1. Retele de transport . . . . . . . . . . . . . . . . . . . . . . . . 89

    6.2.2. Algoritmul Ford-Fulkerson . . . . . . . . . . . . . . . . . . . . 90

    6.2.3. Problema de transport ca problema de flux maxim . . . . . . 92

    6.2.4. Aplicatii . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93

  • 7/16/2019 Cercetari Operationale, Probabilitati, Criptologie. Aplicatii

    8/322

    CUPRINS v

    7 TEORIA STOCURILOR 103

    7.1. Formularea modelului matematic . . . . . . . . . . . . . . . . . . . . 1037.2. Modele deterministe . . . . . . . . . . . . . . . . . . . . . . . . . . . 104

    7.2.1. Model de stocare a unui produs cu cerere constanta, perioadaconstanta de reaprovizionare si fara lipsa de stoc . . . . . . . 104

    7.2.2. Model de stocare a unui produs cu cerere constanta, perioadaconstanta de reaprovizionare si cu posibilitatea lipsei de stoc 105

    7.2.3. Model de stocare a unui produs cu cerere constanta, perioadaconstanta de reaprovizionare si fara lipsa de stoc, luand nconsiderare si costul de achizitie . . . . . . . . . . . . . . . . 108

    7.2.4. Model de stocare a mai multor produse . . . . . . . . . . . . 1097.3. Modele probabiliste . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110

    7.3.1. Model de stocare a unui produs cu cerere aleatoare, cu pierderen cazul surplusului de stoc, cu cheltuieli suplimentare n cazullipsei de stoc si cu cost de stocare neglijabil . . . . . . . . . . 110

    7.3.2. Model de stocare a unui produs cu cerere aleatoare, cu costde stocare si cost de penalizare pentru lipsa de stoc . . . . . 114

    7.4. Aplicatii . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118

    8 PROBABILITATI 1238.1. Probabiliatea unui eveniment . . . . . . . . . . . . . . . . . . . . . . 123

    8.1.1. Cazul finit dimensional si al evenimetelor elementare echiprob-abile . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 123

    8.1.2. Probabitati geometrice . . . . . . . . . . . . . . . . . . . . . . 1248.1.3. Frecventa absoluta. Frecventa relativa . . . . . . . . . . . . . 124

    8.1.4. Definitia statistica a probabilitatii . . . . . . . . . . . . . . . 1258.2. Variabile aleatoare normal distribuite . . . . . . . . . . . . . . . . . . 126

    8.2.1. Densitatea de probabilitate normala . . . . . . . . . . . . . . 1268.2.2. Functia Laplace-Gauss . . . . . . . . . . . . . . . . . . . . . . 1268.2.3. O formula analitica pentru calculul probabilitatii . . . . . . . 1278.2.4. Inegalitatea lui Cebasev (1821-1894) . . . . . . . . . . . . . . 127

    8.2.5. Teorema celor 3 . . . . . . . . . . . . . . . . . . . . . . . . . 1278.3. Legea numerelor mari . . . . . . . . . . . . . . . . . . . . . . . . . . 1278.4. Teorema limita centrala . . . . . . . . . . . . . . . . . . . . . . . . . 128

    8.4.1. Forma Leapunov (1857-1918) a Teoremei Limita Centrala . . 1288.4.2. Forma Moivre (1667-1754)-Laplace a Teoremei Limita Centrala129

    8.5. Teste . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129

    8.5.1. Testul 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1298.5.2. Testul 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1308.5.3. Testul 3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 131

  • 7/16/2019 Cercetari Operationale, Probabilitati, Criptologie. Aplicatii

    9/322

    vi CUPRINS

    8.5.4. Testul 4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 131

    8.5.5. Testul 5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1328.5.6. Testul 6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133

    8.6. Cateva distributii importante . . . . . . . . . . . . . . . . . . . . . . 134

    8.6.1. Repartitii continue . . . . . . . . . . . . . . . . . . . . . . . . 134

    8.6.2. Distributii discrete . . . . . . . . . . . . . . . . . . . . . . . . 139

    8.6.3. Calculul numeric al cuantilelor . . . . . . . . . . . . . . . . . 140

    II CRIPTOLOGIE 143

    9 SISTEMUL DE CIFRARE CEZAR 145

    9.1. Breviar teoretic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1459.2. Exercitii rezolvate . . . . . . . . . . . . . . . . . . . . . . . . . . . . 145

    9.3. Exercitii propuse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 146

    10 METODA SUBSTITUTIEI 149

    10.1. Breviar teoretic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 149

    10.2. Exercitii rezolvate . . . . . . . . . . . . . . . . . . . . . . . . . . . . 151

    10.3. Exercitii propuse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 152

    11 SISTEMUL DE CIFRARE PLAYFAIR 155

    11.1. Breviar teoretic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 155

    11.2. Exercitii rezolvate . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15611.3. Exercitii propuse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157

    12 SISTEMUL DE CIFRARE HILL 161

    12.1. Breviar teoretic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 161

    12.2. Exercitii rezolvate . . . . . . . . . . . . . . . . . . . . . . . . . . . . 162

    12.3. Exercitii propuse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 163

    13 SISTEME DE CIFRARE POLIALFABETICE 167

    13.1. Breviar teoretic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 167

    13.2. Exercitii rezolvate . . . . . . . . . . . . . . . . . . . . . . . . . . . . 168

    13.3. Exercitii propuse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 169

    14 METODA TRANSPOZITIEI 173

    14.1. Breviar teoretic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 173

    14.2. Exercitii rezolvate . . . . . . . . . . . . . . . . . . . . . . . . . . . . 173

    14.3. Exercitii propuse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 174

  • 7/16/2019 Cercetari Operationale, Probabilitati, Criptologie. Aplicatii

    10/322

    CUPRINS vii

    15 SISTEME MIXTE 177

    15.1. Breviar teoretic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17715.2. Exercitii rezolvate . . . . . . . . . . . . . . . . . . . . . . . . . . . . 177

    15.3. Exercitii propuse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 179

    16 GENERATOARE PSEUDOALEATOARE 183

    16.1. Breviar teoretic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 183

    16.2. Exercitii rezolvate . . . . . . . . . . . . . . . . . . . . . . . . . . . . 185

    16.3. Exercitii propuse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 186

    17 CALCULE IN CORPURI GALOIS 189

    17.1. Breviar teoretic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 189

    17.2. Exercitii rezolvate . . . . . . . . . . . . . . . . . . . . . . . . . . . . 189

    17.3. Exercitii propuse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 190

    18 ALGORITMUL RIJNDAEL - STANDARDUL AES 193

    18.1. Breviar teoretic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 193

    18.2. Exercitii rezolvate . . . . . . . . . . . . . . . . . . . . . . . . . . . . 193

    18.3. Exercitii propuse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 197

    19 CRIPTANALIZA CIFRURILOR BLOC 203

    19.1. Breviar teoretic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 203

    19.2. Exercitii rezolvate . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20319.3. Exercitii propuse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 205

    20 LEMA CHINEZEASCA A RESTURILOR 207

    20.1. Breviar teoretic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 207

    20.2. Exercitii rezolvate . . . . . . . . . . . . . . . . . . . . . . . . . . . . 208

    20.3. Exercitii propuse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 209

    21 SISTEMUL DE CIFRARE MERKLE-HELLMAN 213

    21.1. Breviar teoretic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 213

    21.2. Exercitii rezolvate . . . . . . . . . . . . . . . . . . . . . . . . . . . . 214

    21.3. Exercitii propuse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 215

    22 SISTEMUL DE CIFRARE RSA 217

    22.1. Breviar teoretic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 217

    22.2. Exercitii rezolvate . . . . . . . . . . . . . . . . . . . . . . . . . . . . 219

    22.3. Exercitii propuse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 220

  • 7/16/2019 Cercetari Operationale, Probabilitati, Criptologie. Aplicatii

    11/322

    viii CUPRINS

    23 SISTEMUL DE CIFRARE ELGAMAL 223

    23.1. Breviar teoretic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22323.2. Exercitii rezolvate . . . . . . . . . . . . . . . . . . . . . . . . . . . . 223

    23.3. Exercitii propuse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 224

    24 ARITMETICA PE CURBE ELIPTICE 225

    24.1. Breviar teoretic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 225

    24.2. Exercitii rezolvate . . . . . . . . . . . . . . . . . . . . . . . . . . . . 226

    24.3. Exercitii propuse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 227

    25 SISTEMUL DE CIFRARE ELGAMAL PE CURBE ELIPTICE 229

    25.1. Breviar teoretic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22925.2. Exercitii rezolvate . . . . . . . . . . . . . . . . . . . . . . . . . . . . 229

    25.3. Exercitii propuse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 230

    26 SISTEMUL DE CIFRARE MENEZES-VANSTONE 233

    26.1. Breviar teoretic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 233

    26.2. Exercitii rezolvate . . . . . . . . . . . . . . . . . . . . . . . . . . . . 233

    26.3. Exercitii propuse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 234

    27 FUNCTII DE DISPERSIE 237

    27.1. Breviar teoretic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 237

    27.2. Exercitii propuse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 239

    28 SEMNATURA ELGAMAL 241

    28.1. Breviar teoretic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 241

    28.2. Exercitii rezolvate . . . . . . . . . . . . . . . . . . . . . . . . . . . . 241

    28.3. Exercitii propuse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 242

    29 SEMNATURA DSA/ECDSA 245

    29.1. Breviar teoretic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 245

    29.2. Exercitii rezolvate . . . . . . . . . . . . . . . . . . . . . . . . . . . . 246

    29.3. Exercitii propuse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 246

    30 PROTOCOLUL DIFFIE-HELLMAN 249

    30.1. Breviar teoretic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 249

    30.2. Exercitii rezolvate . . . . . . . . . . . . . . . . . . . . . . . . . . . . 249

    30.3. Exercitii propuse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 250

  • 7/16/2019 Cercetari Operationale, Probabilitati, Criptologie. Aplicatii

    12/322

    CUPRINS ix

    31 PROTOCOLUL BLOM 253

    31.1. Breviar teoretic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25331.2. Exercitii rezolvate . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25431.3. Exercitii propuse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 254

    32 PROTOCOLUL SHAMIR DE PARTAJARE A SECRETELOR 25732.1. Breviar teoretic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25732.2. Exercitii rezolvate . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25832.3. Exercitii propuse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 258

    33 SCHEME DE PARTAJARE A SECRETELOR BAZATE PE CRT26133.1. Breviar teoretic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 261

    33.2. Exercitii rezolvate . . . . . . . . . . . . . . . . . . . . . . . . . . . . 261

    34 CANALE SUBLIMINALE 26334.1. Breviar teoretic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26334.2. Exercitii rezolvate . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26334.3. Exercitii propuse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 264

    35 PRINCIPII CRIPTOGRAFICE 267

    36 ATACURI IN MEDIUL DE IMPLEMENTARE 27136.1. Breviar teoretic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27136.2. Exercitii propuse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 272

    37 RESURSE SOFTWARE 27337.1. CrypTool . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27337.2. OpenSSL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27537.3. MAPLE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 277

    38 APLICATII PRACTICE 283

    39 PROBLEME DE SINTEZA 29139.1. Enunturi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29139.2. Raspunsuri . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 300

    BIBLIOGRAFIE 305

  • 7/16/2019 Cercetari Operationale, Probabilitati, Criptologie. Aplicatii

    13/322

    x CUPRINS

  • 7/16/2019 Cercetari Operationale, Probabilitati, Criptologie. Aplicatii

    14/322

    Partea I

    CERCETARIOPERATIONALE

    1

  • 7/16/2019 Cercetari Operationale, Probabilitati, Criptologie. Aplicatii

    15/322

  • 7/16/2019 Cercetari Operationale, Probabilitati, Criptologie. Aplicatii

    16/322

    Capitolul 1

    PROGRAMARE LINIARA

    1.1. Folosirea eficienta a resurselor limitate

    O problema practica ce apare frecvent n activitatea de conducere economicaeste urmatoarea: sunt disponibile mai multe resurse (materii prime, forta de munca,resurse financiare) n cantitati limitate. Cu ajutorul acestor resurse se pot desfasuramai multe activitati economice. Problema consta n determinarea nivelurilor ac-tivitatilor luate n considerare care sa se ncadreze n limitarile precizate ale resur-selor si sa asigure satisfacerea optima a unui anumit criteriu.

    Sa notam cui, 1

    i m,tipul resursei si cu

    bicantitatea de resursa de tipul

    i care este disponibila. Vom nota prin j, 1 j n, tipul activitatii (procesuluide subproductie) si prin xj nivelul (necunoscut) la care urmeaza sa se desfasoareaceasta activitate. In sfarsit, vom nota prin aij cantitatea de resursa de tipul i,1 i m, necesara pentru producerea unei unitati din produsul realizat n procesulde productie de tipul j, 1 j n, (n general, activitatea de tipul j). Presupunemaici ca aij depinde numai de tipul resursei si de tipul procesului de productie si nude nivelul la care urmeaza sa se desfasoare aceasta activitate.

    Cu notatiile introduse, rezulta ca putem exprima cantitatea totala de resursa detipul i care va fi efectiv utilizata n procesele de productie:

    ai1x1 + ai2x2 + . . . + ainxn.

    Cum nu putem consuma resursa de tipul i mai mult decat cantitatea disponibilabi, rezulta ca trebuie satisfacute conditiile:

    nj=1

    aijxj bi, 1 i m. (1.1)

    3

  • 7/16/2019 Cercetari Operationale, Probabilitati, Criptologie. Aplicatii

    17/322

    4 PROGRAMARE LINIAR A

    Deoarece xj reprezinta nivelul la care se desfasoara activitatea de tipul j, rezulta

    ca trebuie sa fie de asemenea satisfacute conditiile:

    xj 0, 1 j n. (1.2)Inegalitatile 1.1 sunt numite restrictiile problemei, iar 1.2 sunt numite conditiile

    de nenegativitateale problemei. Sistemul de inegalitati liniare poate avea o infinitatede solutii, o solutie unica sau nici o solutie (sistem incompatibil). Cazul cel maifrecvent pentru problemele practice corect puse este cazul n care sistemul 1.1, 1.2 areo infinitate de solutii. Prin urmare este posibil sa organizam procesele de productiepentru fabricarea sortimentelor de tipul j, 1 j n, ntr-o infinitate de moduri,respectand conditiile 1.1 de folosire a resurselor limitate.

    Adoptarea unei variante de plan se face pe baza unor criterii economice, cum ar

    fi: venitul realizat, beneficiul realizat, cheltuielile de productie, productia fizica, con-sumurile de materii prime si materiale, consumurile de energie etc. Vom presupunen cele ce urmeaza ca putem formula un singur criteriu pe baza caruia adoptamdecizia. Mai mult, vom presupune ca acest criteriu este reprezentat din punct devedere matematic de o functie liniara. Un exemplu de astfel de criteriu se obtine nmodul urmator. Daca notam prin cj beneficiul unitar adus de activitatea de tipul

    j, 1 j n, atunci este clar ca beneficiul total este:n

    j=1

    cjxj. (1.3)

    Problema care se pune este de a afla solutiile sistemului de inegalitati liniare1.1, 1.2 care asigura obtinerea valorii maxime pentru beneficiul total 1.3. Cu altecuvinte, din punct de vedere matematic se cere rezolvarea problemei:

    sup

    nj=1

    cjxj

    nj=1

    aijxj bi, 1 i m,xj 0, 1 j n,

    care este numita problema de programare liniara sau program liniar. Functia liniarace se doreste maximizata se numeste functie obiectiv sau functia criteriu sau, nca,

    functia de eficient a a problemei.Problema mentionata poate fi rezolvata cu ajutorul algoritmului simplex sau

    simplex dual. Acesta este prezentat pe larg n literatura de specialitate (Zidaroiu). Oserie de produse soft ca MATLAB sau MAPLE au rutine specializate de rezolvarea problemelor de optimizare cu a jutorul acestor metode. Din acest motiv, omitemprezentarea rezolvarii complete a problemelor prin aceste metode.

  • 7/16/2019 Cercetari Operationale, Probabilitati, Criptologie. Aplicatii

    18/322

    FORME ALE PROBLEMELOR DE PROGRAMARE LINIAR A 5

    1.2. Forme ale problemelor de programare liniara

    Forma standard a unei probleme de programare liniara este:

    min(max)cxAx = bx 0

    Remarcam ca o problema de maxim se poate transforma ntr-o problema de minimprin folosirea formulei max(f) = min(f).

    Forma canonica a unei probleme de programare liniara este:

    min cxAx

    b

    x 0sau

    max cxAx bx 0

    Sintaxa MAPLE de scriere a formei canonice pentru problema de maxim este:

    > standardize(multime de restrictii);

    sau> convert(multime de restrictii, stdle);

    O restrictie a unei probleme de programare liniara este numita concordanta dacaeste o inegalitate de tipul pentru problema de minim si o inegalitate de tipul pentru problema de maxim.

    Forma mixtaa unei probleme de programare liniara contine restrictii si sub formade ecuatii.

    Deoarece prin operatii matematice orice problema de programare liniara se poateaduce n forma canonica a problemei, pentru cazul de minim vom lucra numai cuastfel de probleme, adica cu probleme n forma canonica.

    Definitia 1.2.1. Fie problema de programare liniara n forma standard atuncimultimea programelor este definita ca:

    P = {x Rn|Ax = b, x 0}.Un punct de minim global al functiei obiectiv z = c

    x pe multimea programelorP este numit solutie optima, iar multimea programelor optime ale problemei va finotata cu:

    P = {x P| minxP

    c

    x = c

    x}.

  • 7/16/2019 Cercetari Operationale, Probabilitati, Criptologie. Aplicatii

    19/322

    6 PROGRAMARE LINIAR A

    Definim solutia de baza a sistemului Ax = b ca o solutie x

    Rn careia compo-

    nentelor sale nenule i corespund coloane liniar independente. Daca B este o bazaformata cu coloanele aj1, . . . , ajm ale matricei A atunci sistemul de ecuatii Ax = bse poate scrie n forma explicita:

    xB = B1b B1RxR

    n care R este matricea obtinuta din A prin eliminarea coloanelor j1, . . . , jm. Notand:

    B1b =xB, B1aj = yBj , 1 j n,rezulta ca:

    xB =xB

    jRyBj xj

    sauxBi =x

    Bi

    jR

    yBij xj, i B

    unde B = {j1, . . . , jm} si R = {1, . . . , n} B. Solutia de baza corespunzatoare bazeiB este xB =x

    Bsi xR = 0. Este clar ca aceasta solutie de baza este un program daca

    este ndeplinita conditia:B1b 0.

    O baza B care verifica inegalitatea de mai sus se numeste baza primal admisibila.In problemele practice o astfel de baza se determina prin metoda bazei artificiale.De foarte multe ori nsa, aceasta este disponibila direct, baza primal admisibila fiind

    matricea unitate.Avem urmatoarea teorema numita teorema fundamentala a programarii liniare.

    Teorema 1.2.1. i) Daca problema de programare liniara:

    min(max)cxAx = bx 0

    are un program optim, atunci ea are un program de baza.ii) Daca problema de mai sus are un program optim, atunci ea are un program

    optim de baza.

    Algoritmul fundamental pentru rezolvarea problemelor de programare liniaramentionate se numeste algoritmul simplex primalsi a fost elaborat de George Dantzign anul 1951. Algoritmul este descris n orice carte fundamentala de programareliniara si este implementat n majoritatea softurilor matematice de prelucrare dedate.

  • 7/16/2019 Cercetari Operationale, Probabilitati, Criptologie. Aplicatii

    20/322

    ALGORITMUL SIMPLEX (DANTZIG) 7

    1.3. Algoritmul simplex (Dantzig)

    Pentru rezolvarea problemelor de programare liniara s-a impus algoritmul simplexdatorat lui G.B. Dantzig (1951). Aceasta metoda ne permite sa exploram n modsistematic multimea programelor de baza a unei probleme de programare liniaran forma standard prin trecerea de la un program de baza la un program de bazavecin, care este cel put in la fel de bun ca cel precedent. Metoda furnizeaza, deasemenea, criterii pentru punerea n evidenta a situatiei cand problema are optiminfinit precum si a cazului n care multimea programelor este vida.

    PASUL 0. Se pune problema de optimizat n forma standard:

    infcTx

    Ax = b,x 0.

    (Daca problema are restrictii de forma unor inegalitati, atunci se transforma maintai toate inegalitatile n inegalitati de tipul ; scazandu-se variabilele artificiale y,problema de maxim se va transforma n problema de minim etc.). A este o matricecu m linii si n coloane pentru care avem rang(A) = m < n. Vom nota cu z functiaobiectiv adica z = cTx.

    PASUL 1. Se determina o baza B primal admisibila (fie este disponibila di-rect fie se determina cu ajutorul bazei artificiale prin metoda celor doua faze) si secalculeaza:

    xB= B1b,zB= cTB x

    B,

    yBj = B1aj, 1 j n,

    zBj cj , 1 j n.

    Aceste valori se trec n tabelul simplex (tabelul 1.1) dupa care trecem la pasulurmator.

    Vom nota cu B multimea indicilor j care determina matricea B si prin R ={1, . . . , n} B. Tabelul simplex initial are forma:

    TABELUL 1.1

    c1 . . . cj . . . cnV.B. V.V.B. x1 . . . xj . . . xn

    cB xB xB

    yB1 . . . yBj . . . y

    Bn

    z zB zB1 c1 . . . zBj cj . . . zBn cn

  • 7/16/2019 Cercetari Operationale, Probabilitati, Criptologie. Aplicatii

    21/322

    8 PROGRAMARE LINIAR A

    PASUL 2. Daca zBj

    cj

    0

    j

    R, ne oprim (STOP): x

    Beste program optim.

    In caz contrar se determina multimea (nevida):

    R+ = {j R|zBj cj > 0}

    si se trece la pasul urmator.

    PASUL 3. Daca exista j R+ pentru care yBj 0 ne oprim (STOP): problemaare optim infinit. In caz contrar, determinam k R+ cu criteriul de intrare n baza:

    maxj

    (zBj cj) = zBk ck

    si r

    B+ =

    {i

    B|yBik > 0

    }cu criteriul de iesire din baza:

    miniB+

    (xBiyBik

    ) =xBryBrk

    Elementul yBrk se numeste pivot. Se trece la pasul urmator.

    PASUL 4. Se considera bazaB obtinuta din B prin nlocuirea coloanei ar cu

    coloana ak, si se calculeaza valorile (prin formula de schimbare a bazei adica regula de

    transformare a tabelului simplex) x

    B, z

    B, y

    Bj , z

    Bj cj si se trece la Pasul 2 nlocuind

    peste tot baza B cu bazaB .

    Calculele pot fi simplificate prin folosirea regulilor de transformare a tabelului

    simplex:i) elementele situate pe linia pivotului se mpart la pivot;ii) elementele situate pe coloana pivotului devin zero, cu except ia pivotului care

    devine 1;iii) celelalte elemente se transforma dupa regula dreptunghiului: daca ne ima-

    ginam dreptunghiul a carui diagonala este determinata de elementul yBij care trebuie

    transformat si pivotul yBrk , atunci noua valoareyB

    ij se obtine mpartind la pivot

    diferenta dintre produsul elementelor yBij yBrk situate pe diagonala considerata mai

    sus si produsul yBrjyBik situat pe cealalta diagonala a dreptunghiului.

    Observatii. i) Daca la sfarsitul algoritmului zBj

    cj < 0

    j

    Ratunci solutia

    problemei este unica.ii) Este posibil ca n cadrul algoritmului simplex sa apara fenomenul de ciclare

    (prin trecerea de la o baza la alta sa ajung ntr-o baza deja procesata). Exista maimulte tehnici de evitare a acestui fenomen asupra carora nu ne vom opri nsa.

    iii) Se poate da si o interpretare geometrica a solut iilor unei probleme de progra-mare liniara n cazul bidimensional. Domeniul de admisibilitate poate fi:

  • 7/16/2019 Cercetari Operationale, Probabilitati, Criptologie. Aplicatii

    22/322

    DUALA UNEI PROBLEME DE PROGRAMARE LINIAR A 9

    -un poligon convex, iar cel putin unul dintre varfurile sale este solutiea problemei

    de optimizare. Se poate ntampla ca solutia sa fie o latura a poligonului convex cedetermina domeniul de definitie, n acest caz avem mai multe solutii;

    -un domeniu nemarginit, caz n care problema are optim infinit;

    -multimea vida, caz n care problema de optimizare nu are solutie.

    1.4. Duala unei probleme de programare liniara

    Avand o problema de programare liniara, problema construita dupa urmatoarelereguli se numeste problema duala:

    a) termenii liberi din problema primala devin coeficienti ai functiei obiectiv n

    problema duala;b) coeficientii functiei obiectiv din problema primala devin termeni liberi n prob-lema duala;

    c) o problema de maximizare (minimizare) devine o problema de minimizare(maximizare);

    d) matricea coeficientilor sistemului de restrictii din problema duala este trans-pusa matricei coeficientilor sistemului de restrictii primale;

    e) variabile duale (primale) asociate unor restrictii primale (duale) concordantesunt supuse conditiilor de nenegativitate;

    f) variabile primale (duale) asociate unor restrictii duale (primale) care suntrestrictii neconcordante sunt supuse conditiei de nepozitivitate;

    g) variabile duale (primale) asociate unor restrictii primale (duale) care suntecuatii nu sunt supuse nici unei conditii privind semnul.

    Remarcam ca duala unei probleme n forma canonica este tot n forma canonica.

    Enuntam n continuare teorema fundamentala a dualitatii:

    Teorema 1.4.1. Fiind dat cuplul de probleme duale:

    min cxAx bx 0

    si

    max byAy cy 0

    una si numai una din afirmatiile urmatoare este adevarat a:

    a) ambele probleme au programe. In acest caz, ambele probleme au programeoptime si valorile optime ale functiilor obiectiv coincid;

  • 7/16/2019 Cercetari Operationale, Probabilitati, Criptologie. Aplicatii

    23/322

    10 PROGRAMARE LINIAR A

    b) una din probleme are programe, iar cealalta nu are. In acest caz, problema

    care nu are programe are optim infinit;c) nici una din probleme nu are programe.Exista un algoritm numit algoritmul simplex dualcare rezolva problema primala

    prin intermediul problemei duale. Acelasi lucru putem sa-l afirmam si despre algo-ritmul simplex primal care rezolva problema primala, dupa care pune n evidentasolutia problemei duale. Programul MAPLE are o procedura de constructie a dualei.Sintaxa acesteia este:

    > dual(functia liniara, multime de restrictii, nume variabila duala);

    1.5. Problema de transport

    Sa presupunem ca exista m centre de aprovizionare (depozite) si n centre deconsum (beneficiari). Un produs omogen este depozitat n cantitatile ai, 1 i m,n centrele de aprovizionare si este cerut n cantitatile bj, 1 j n, la beneficiari.Vom presupune ca sunt ndeplinite conditiile:

    ai 0, 1 i m, bj 0, 1 j n,a1 + . . . + am = b1 + . . . + bn.

    (1.4)

    Cu alte cuvinte, presupunem ca disponibilitatile si cererile sunt nenegative, iardisponibilitatea egaleaza cererea totala. O astfel de problema de transport se numes-te problema de transport echilibrata.

    Problema consta n organizarea transportului de la depozite la beneficiari astfelncat sa se obtina cheltuieli minime de transport.

    Sa notam cu xij cantitatea (necunoscuta) care urmeaza sa fie transportata de ladepozitul i la beneficiarul j. Cantitatea ce se transporta de la depozitul i la totibeneficiarii trebuie sa egaleze disponibilitatea de la depozitul respectiv, adica:

    nj=1

    xij = ai, 1 i m. (1.5)

    Analog, cererea totala la beneficiarul j trebuie sa fie egala cu cantitatea care setransporta de la toate depozitele la acest beneficiar, adica:

    mi=1

    xij = bj, 1 j n. (1.6)

    Evident, cantitatile transportate sunt nenegative, adica:

    xij 0, 1 i m, 1 j n. (1.7)

  • 7/16/2019 Cercetari Operationale, Probabilitati, Criptologie. Aplicatii

    24/322

    APLICATII 11

    Sistemul de inegalitati liniare 1.5-1.7 are n conditiile 1.4 o infinitate de solutii.

    Ca si n cazul precedent, pentru adoptarea unui plan de transport vom introduceun nou criteriu economic. Sa notam pentru aceasta prin cij costul transportuluiunei unitati din produsul considerat de la depozitul i la beneficiarul j; evident, si nacest caz presupunem ca acest cost unitar de transport nu depinde de cantitatea ceurmeaza sa fie transportata din i n j. Este clar ca cheltuielile de transport sunt:

    mi=1

    nj=1

    cijxij.

    Problema consta n determinarea solutiilor sistemului de ecuatii si inegalitati1.5-1.7 pentru care costul total de transport este minim, adica:

    infm

    i=1

    nj=1

    cijxij,

    nj=1

    xij = ai, 1 i m,m

    i=1xij = bj, 1 j n,

    xij 0, 1 i m, 1 j n.

    1.6. Aplicatii

    Exercitiul 1.6.1. Sa se scrie duala problemei de programare liniara:

    min(2x1 + 3x2 + x3),x1 + x2 + 3x4 3,2x2 + 5x3 + 4x4 = 5,x1 + x3 2,x1, x2 0, x3 arbitrar, x4 0.

    Gasiti solutia optima a problemei primale.

    Raspuns: Respectand regulile de formare a problemei duale obtinem:

    max(3u1 + 5u2 2u3),u1 + u3 2,u1 + 2u2 3,5u2 + u3 = 1,3u1 + 4u2 0,u1 0, u2 arbitrar, u3 0.

  • 7/16/2019 Cercetari Operationale, Probabilitati, Criptologie. Aplicatii

    25/322

    12 PROGRAMARE LINIAR A

    Solutia problemei primale se poate gasi cu metoda simplex primal sau dual. Sin-

    taxa MAPLE pentru rezolvarea acestei probleme este:> with(simplex) :> obiectiv := 2 x1 + 3 x2 + x3;> restrictii := {x1 + x2 + 3 x4 >= 3, 2 x2 + 5x3 + 4 x4 = 5, x1 + x3 minimize(obiectiv, restrictii union {x1 >= 0, x2 >= 0, x4

  • 7/16/2019 Cercetari Operationale, Probabilitati, Criptologie. Aplicatii

    26/322

    APLICATII 13

    Exercitiul 1.6.5. Sa se minimizeze expresia 2x1 + 3x2 cu sistemul de restrictii:

    x1 x2 + x3 = 1,x1 + x2 x4 = 1,x1 2x2 + x5 = 1,2x1 + x3 x4 = 2,xi 0, i = 1, . . . , 5.

    Raspuns. In urma aplicarii algoritmului simplex primal obtinem solutia x1 =1, x2 = 0, x

    3 = 0, x

    4 = 0, x

    5 = 0, iar valoarea minima a functiei obiectiv z

    = 2.

    Exercitiul 1.6.6. Rezolvati problema urmatoare:

    min(x1 + 6x2),2x1 + x2 3,x1 + 3x2 4,x1, x2 0.

    Raspuns. Vom rezolva problema grafic. Se va reprezenta ntr-un sistem de axede coordonate domeniul de admisibilitate. Pe acelasi grafic reprezentam si ecuatiax1 + 6x2 = 0. Obtinem figura 1.1.

    Figura 1.1: Domeniul de admisibilitate si functia obiectiv.

    Vom duce drepte paralele cu x2 = 16

    x1 pana se intersecteaza cu domeniul

  • 7/16/2019 Cercetari Operationale, Probabilitati, Criptologie. Aplicatii

    27/322

    14 PROGRAMARE LINIAR A

    de admisibilitate. Prima dreapta care realizeaza aceasta intersectie ne furnizeaza

    minimul functiei obiectiv zmin = 4.Solutia optima este x1 = 4, x

    2 = 0.

    Exercitiul 1.6.7. Gasiti minimul functiei 2x1 + 3x2 + x3 cu restrictiile:

    x1 + x2 + 3x4 3,2x2 + 5x3 + 4x4 = 5,x1 + x3 2,x1, x2, x3, x4 {0, 1}.

    Exercitiul 1.6.8. Sa se rezolve problema de programare liniara n forma stan-dard:

    min(2x1 + 3x2),x1 x2 + x3 = 1,x1 + x2 x4 = 1,x1 2x2 + x5 = 1,2x1 + x3 x4 = 2,xi 0, 1 i 5.

    Raspuns. Pentru rezolvarea problemei prin metoda simplex primal vom rezolvamai ntai problema:

    min(x6 + x7 + x8),

    x1 x2 + x3 + x6 = 1,x1 + x2 x4 + x7 = 1,x1 2x2 + x5 = 1,2x1 + x3 x4 + x8 = 2,xi 0, 1 i 8.

    (s-au introdus variabilele ecart x6, x7, x8 n restrictiile problemei initiale, cu exceptiacelei de a treia restrictie, unde variabia x5 este asociata unui vector unitar al ma-tricei coeficientilor). Baza primal admisibila este formata din coloanele matricei Acorespunzatoare variabilelor x6, x7, x5, x8. Tabelul simplex asociat 1.2 este:

    TABELUL 1.2

    V.B. V.V.B. x1 x2 x3 x4 x5 x6 x7 x8x6 1 1 1 1 0 0 1 0 0x7 1 1 1 0 1 0 0 1 0x5 1 1 2 0 0 1 0 0 0x8 2 2 0 1 1 0 0 0 1

    4 4 0 2 2 0 0 0 0

  • 7/16/2019 Cercetari Operationale, Probabilitati, Criptologie. Aplicatii

    28/322

    APLICATII 15

    Vectorul care intra n baza este evident a1 conform criteriului de intrare n

    baza. Dupa cum ne indica criteriul de iesire din baza, oricare dintre variabilelede baza poate parasi baza: pentru a face o alegere, vom elimina din baza vectorulcoespunzator variabilei x6, adica a

    6. Obtinem deci tabelul simplex 1.3:

    TABELUL 1.3

    V.B. V.V.B. x1 x2 x3 x4 x5 x6 x7 x8x1 1 1 1 1 0 0 1 0 0x7 0 0 2 1 1 0 1 1 0x5 0 0 1 1 0 1 1 0 0x8 0 0 2 1 1 0 2 0 1

    0 0 4

    2

    2 0

    4 0 0

    Se observa ca tabelul simplex 1.3 obtinut ne arata ca valoarea functiei obiectiveste nula. Toate variabilele artificiale sunt nule, dar x7 si x8 sunt nca variabile debaza. Se vede usor ca variabila x7 poate fi eliminata din baza si nlocuita cu x2,deoarece pivotul yB72 = 2 este nenul. Dupa calcule se obtine tabelul simplex 1.4:

    TABELUL 1.4

    V.B. V.V.B. x1 x2 x3 x4 x5 x6 x7 x8x1 1 1 0 1/2 1/2 0 1/2 1/2 0x2 0 0 1 1/2 1/2 0 1/2 1/2 0x5 0 0 0 3/2 1/2 1 1/2 1/2 0x8 0 0 0 0 0 0 1 1 1

    0 0 0 0 0 0 1 1 0

    Variabila artificiala x8 nu mai poate fi eliminata dintre variabilele de baza, deoa-rece toti coeficientii y8j, 1 j 5, sunt egali cu zero. Acest fapt ne arata caecuatia a patra din problema initiala este o consecinta a celorlalte patru ecuatii(ecuatia a patra este suma primelor doua ecuatii, situatie ce putea fi observata dela nceput). In acest caz, ecuatia a patra poate fi neglijata si deci linia a patraa tabelului simplex poate fi eliminata; partea ramasa a tabelului simplex nu maicontine variabile artificiale de baza si, ca urmare, prima faza este terminata.

    Vom trece acum la faza a doua a metodei, adic a la rezolvarea problemei initiale,

    folosind drept baza initiala ultima baza obtinuta din tabelul 1.4, dupa eliminareaultimei linii.

  • 7/16/2019 Cercetari Operationale, Probabilitati, Criptologie. Aplicatii

    29/322

    16 PROGRAMARE LINIAR A

    Tabelul simplex corespunzator este tabelul 1.5:

    TABELUL 1.5

    V.B. V.V.B. x1 x2 x3 x4 x5x1 1 1 0 1/2 1/2 0x2 0 0 1 1/2 1/2 0x5 0 0 0 3/2 1/2 1z 2 0 0 1/2 5/2 0

    Deoarece zj cj 0 pentru toti j, 1 j 5, rezulta ca am obtinut programuloptim de baza (degenerat): x1 = 1, x

    2 = 0, x

    3 = 0, x

    4 = 0, x

    5 = 0, iar valoarea

    optima a functiei obiectiv este z = 2.

  • 7/16/2019 Cercetari Operationale, Probabilitati, Criptologie. Aplicatii

    30/322

    Capitolul 2

    PROGRAMARE DINAMICA

    2.1. Forma unei probleme de optimizare secventiala

    Programarea dinamica este o metoda de rezolvare a unei clase de probleme,al caror model matematic prezinta caracteristicile unui sistem secvential. Intr-oastfel de problema, la fiecare faza t T, cu T R, se alege o solutie (decizie,strategie, politica) xt dintr-o multime de solutii admisibile Xt, Xt Mnt , undeM R, iar nt N, putandu-se de fiecare data masura eficienta (sau utilitatea)ut a solutiei alese. Problema de optimizare consta n determinarea solutiei globalex = (xt)tT care optimizeaza o functie de eficient a globala f care este definita cuajutorul functiilor de eficient a partiala ut, t

    T. Evolutia sistemului este descrisa

    si de familia parametrilor de stare (st)tT a caror lege de variatie este cunoscutasi dependenta de deciziile alese (daca legea este determinista avem o problema deprogramare dinamica determinista, iar daca legea este probabilista avem o problemade programare stochastica). Sa notam cu St multimea starilor la momentul t.

    Definitia 2.1.1. (Caracteristicile unui sistem secvential.) O functie s : T Stcu s(t) = st t T, st St se numeste traiectoria, corespunzatoare deciziei globalex = (xt)tT, a sistemului secvential. Aceasta descrie starea sistemului de-a lungulntregii perioade de timp T, n conditiile alegerii deciziei x.

    Avem n general:

    xt = xt(st)uti : Sti1 Xti R, uti = uti(sti , xti)ti : Sti1 Xti Sti , ti = ti(sti1, xti).

    Traiectoria s depinde de starea initiala st0 = s0 St0, t0 fiind momentul initial.

    17

  • 7/16/2019 Cercetari Operationale, Probabilitati, Criptologie. Aplicatii

    31/322

    18 PROGRAMARE DINAMIC A

    Definitia 2.1.2. Se numeste traiectorie optima traiectoria s corespunzatoare

    unei decizii optime x care optimizeaza functia obiectiv.

    Tehnica programarii dinamice consta n determinarea solutiilor optime globale sia valorii optime a functiei obiectiv, prin rezolvarea secventiala a unor probleme deoptimizare asociate problemei initiale, dar mult mai simple decat aceasta deoareceoptimul se calculeaza dupa o singura variabila. Bellman a formulat n 1957 prin-cipiul optimalitatii: o conditie necesara ca o traiectorie s sa fie optima este cat1, t2 T, t1 < t2, s |[t1,t2] sa fie traiectorie optima a sistemului restrictionatla intervalul [t1, t2], cand st1 = s

    (t1) adica orice substrategie a unei strategii optimeeste ea ns asi optim a.

    Pentru a fixa ideile, n cele ce urmeaza, vom presupune ca avem de-a face cu o

    problema de minimizare, toate consideratiile fiind valabile fara nici un fel de restrictiisi pentru problema de maxim. Forma generala a unei probleme de optimizare (mini-mizare) ce urmeaza a fi rezolvata prin aceasta tehnica este urmatoarea:

    min{f(u1(s0, x1), . . . , un(sn1, xn))|x1 X1(s0), . . . , xn Xn(sn1)}si = i(si1, xi), i = 1, nsi Si, i = 1, n.

    Problema de optimizare astfel definita se numeste efectiv decompozabila, adicavectorul de stare si, la iesirea din faza i, nu depinde decat de vectorul de stare si1si de decizia xi, luata n faza i. Functiile ui sunt functiile de eficient a la faza i cand

    se ia decizia xi stiind ca vectorul de stare este si.Toate elementele descriptive ale unei probleme de optimizare sunt determinatede o decizie aleasa si de starea initiala s0 :

    s1 = 1(s0, x1) =1 (s0, x1), u1(s0, x1) =

    u1 (s0, x1), x1 X1(s0) =

    X1 (s0)

    s2 = 2(1(s0, x1), x2) =2 (s0, x1, x2), u2(s1, x2),

    u2(1(s0, x1), x2) =u2 (s0, x1, x2), x2 X2(1(s0, x1)) =

    X2 (s0, x1)

    ...........................................

    si = i(i1(s0, x1, x2, . . . , xi1), xi) =i (s0, x1, x2, . . . , xi),

    ui(si1, xi) = ui(i1 (s0, x1, x2, . . . , u xi1), xi) =

    ui (s0, x1, . . . , xi),

    xi Xi(i1 (s0, x1, x2, . . . , xi1))=

    Xi (s0, x1, . . . , xi1) pentru i = 2, n.

  • 7/16/2019 Cercetari Operationale, Probabilitati, Criptologie. Aplicatii

    32/322

    TEOREMA DE OPTIM 19

    Functia obiectiv se scrie:

    f(u1 (s0, x1),

    u2 (s0, x1, x2), . . . ,

    un (s0, x1, . . . , xn)) =

    f (s0, x1, . . . , xn).

    Definitia 2.1.3. O solutie (decizie) x(s0) = (x1(s0), . . . , xn(s0)) admisibila se

    spune ca este optima relativ la starea initiala s0 pentru o problema de optimizaresub forma secventiala, daca:

    f (s0, x

    1(s0), . . . , x

    n(s0)) = min{

    f (s0, x

    1, . . . , x

    n)|x1

    X1 (s0), . . . ,

    . . . , xi Xi (s0, x1, . . . , xi1), i = 1, n}.

    Rezolvarea unei probleme de optimizare pusa n forma secventiala consta ngasirea unei solutii x(s0) = (x1(s0), . . . , x

    n(s0)), n functie de starea initiala s0,

    astfel ncat functia de eficienta globala f sa fie optima.

    2.2. Teorema de optim

    Pentru a formula teorema de optim trebuie sa definim mai ntai notiunea defunctie decompozabila. In esenta, acest lucru nseamna ca problema se poate de-scompune ntr-un numar de faze.

    Definitia 2.2.1. O functie f : D = S X Y R, unde X, Y si S suntmultimi nevide se numeste decompozabila daca exista functiile u, v : D R, u fiindconstanta n raport cu variabila y Y(exista u : SX R astfel ncat u (s,x,y) =u(s, x), (s,x,y) D) si o functie F :u (D)v(D) R, F(, .) monoton crescatoarepentru fiecare u (D), astfel ncat f(s,x,y) = F(u(s, x), v(s,x,y)) (s,x,y) D.

    Teorema 2.2.1. ( Teorema de optim). DacaF este decompozabila si dac a existapentru orice s S :

    minx,y f(s,x,y); minx F(u(s, x), miny v(s,x,y));minx miny f(s,x,y),

    atunci pentru orice s S avem:

    minx,y

    f(s,x,y) = minx

    F(u(s, x), miny

    v(s,x,y)).

  • 7/16/2019 Cercetari Operationale, Probabilitati, Criptologie. Aplicatii

    33/322

    20 PROGRAMARE DINAMIC A

    2.3. Programare dinamica regresiva

    2.3.1. Ecuatiile programarii dinamice regresive

    Pentru a pune sub forma unui algoritm problema secventiala trebuie sa existe oanume legatura de tip recursiv ntre functiile de eficienta trunchiate ale procesuluila fazele i:

    fni+1(ui(si1, xi), . . . , un(sn1, xn)) == Fni+1(ui(si1, xi), fni(ui+1(si, xi+1), . . . , un(sn1, xn)),

    unde prin fni+1 s-a notat functia de eficient a asociata procesului de decizie trun-chiat la fazele i, i + 1, . . . , n pentru i = 1, 2, . . . , n 1, cu f1(un) = un si fn = f.Aceasta proprietate se numeste proprietatea de decompozabilitatea functiei obiectiv.Ecuatia se rescrie:

    fni+1 (si1, xi, . . . , xn) = Fni+1(ui(si1, xi),

    fni (i(si1, xi),

    xi+1, . . . , xn)),

    i = 1, n 1, si1 Si1, xi Xi(si1), xn Xn(sn1),

    cuf1= un si

    fn=

    f= f.

    Aplicam teorema de optim functiilorfn

    i+1 pentru i = 1, 2, . . . , n

    1 :

    min{fni+1 (si1, xi, . . . , xn)|xi, . . . , xn} =

    = minxi

    Fni+1(ui(si1, xi), min{fni (i(si1, xi), xi+1, . . .

    . . . , xn)|xi+1, . . . , xn}).

    Notam cu gni+1(si1) = min{fni+1 (si1, xi, . . . , xn)|xi, . . . , xn}, valoarea opti-

    mului procesului de decizie trunchiat la fazele i, i + 1, . . . , n . Avem:

    gni(si1) = gni(i(si1, xi))

    si obtinem:

    gni+1(si1) = minxi

    Fni+1(ui(si1, xi), gni(i(si1, xi)), i = 1, n 1cu

    g1(sn1) = minxi

    un(sn1, xn).

    Aceste ecuatii se numesc ecuatiile programarii dinamice regresive.

  • 7/16/2019 Cercetari Operationale, Probabilitati, Criptologie. Aplicatii

    34/322

    PROGRAMARE DINAMIC A REGRESIV A 21

    2.3.2. Rezolvarea problemelor de programare regresiva

    Elementele prezentate n paragrafele precedente ne permit sa elaboram urmatorulalgoritm de rezolvare a problemelor de optimizare dinamice regresive.

    PASUL 0. Problema matematica se codifica sub forma unei probleme de pro-gramare liniara, punandu-se n evidenta functia obiectiv si sistemul de restrictiicorespunzator.

    PASUL 1. Se pune problema sub forma unui proces secvential de decizie urma-rindu-se urmatoarele elemente:

    i) forma functionala a functiilor de transfer i : Si1 Xi Si:si = i(si1, xi), i = 1, n.

    ii) spatiul starilor posibile: S0, S1, . . . , S n;iii) spatiul deciziilor: Xi(si1);iv) functiile partiale de eficienta ui(si1, xi), i = 1, 2, . . . , n;

    v) functiile obiectiv ale proceselor trunchiate la fazele i, i+1, . . . , n :fi (xi, . . . , xn)

    pentru i = 1, 2, . . . , n.PASUL 2. Se rezolva problema din faza n, adica se calculeaza:

    min{f1 (sn1, xn)|xn Xn(sn1)} = min{un(sn1, xn)|xn Xn(sn1)} = g1(sn1),

    unde sn1 este parametru.

    Deci pentru sn1 Sn1 se determina xn1(sn1) Xn(sn1), astfel ncat:g1(sn1) = un(sn1, xn1(sn1)).

    Se atribuie contorului i valoarea n 1. Acest contor are semnificatia fazei i aprocesului secvential.

    PASUL 3. Se rezolva problema din faza i a carei necunoscuta este xi, iar si1este parametru. Deci pentru si1 Si1, se determina valorile xi (si1) Xi(si1)pentru care:

    gni+1(si1) = Fni+1(ui(si1, xi (si1)), gni(i(si1, xi (si1))))

    = min{fn

    i+1 (si

    1, xi, . . . , xn)

    |xi

    Xi(si

    1)

    }.

    actualizeaza i := i + 1.PASUL 4. Daca i > 1 goto PASUL 3.Se determina, pentru s0 S0, valoarea x1(s0) pentru care avem:f (s0, x

    1(s0), . . . , x

    n(s0)) = min{

    fn (s0, x1, . . . , xn)|x1, . . . , xn} = gn(s0),

  • 7/16/2019 Cercetari Operationale, Probabilitati, Criptologie. Aplicatii

    35/322

    22 PROGRAMARE DINAMIC A

    unde x2(s0) = x2(1(s0, x

    1(s0)) etc.

    PASUL 5. Se optimizeaza pe multimea vectorilor initiali pentru a afla s0:f (s0, x

    1(s

    0), . . . , x

    n(s

    0)) = min

    s0S0gn(s0) = gn(s

    0),

    atins pentru starea initiala s0.PASUL 6. Se scrie solutia optima:

    x = (x1, . . . , xn)

    unde x1 = x1(s

    0), x

    2 = x

    2(1(s0, x

    1(s0)) etc.

    2.3.3. Aplicatii

    Exercitiul 2.3.1. O unitate comerciala trebuie sa raspunda unei cereri de 25unitati dintr-un anumit tip de produs, cerere esalonata pe o perioada de 4 luni. Lanceputul fiecarei luni, unitatea se poate aproviziona cu orice cantitate din produsulrespectiv, la un pret ce variaza de la luna la luna, conform datelor din tabelul 2.1:

    TABELUL 2.1

    luna i 1 2 3 4

    cererea 5 7 5

    pret 12 10 9 10

    Sa se determine politica optima de reaprovizionare a unitatii cu produsul respec-tiv, astfel ncat toate cererile sa fie satisfacute, stiind ca n depozitul respectiv segasesc la nceputul primei luni 3 unitati de produs si ca nu pot fi pastrate n depozitmai mult de 9 unitati de produs, iar la sfarsitul ultimei luni toate produsele au fostvandute. Parametrul este un numar real strict pozitiv.

    Raspuns.PASUL 0. Deoarece cererea trebuie sa fie de 25 unitati avem: 5 + 7 + + 5 =

    = 25 deci = 8. Se codifica problema:Se noteaza cu xi numarul de unitati comandate la nceputul lunii i si cu si stocul

    existent la sfarsitul lunii i. Functia de minimizat este:

    12x1 + 10x2 + 9x3 + 10x4,

    putem deci presupune ca = 1 avand grija ca la final sa nmultim valoarea optimaa functiei obiectiv cu .

  • 7/16/2019 Cercetari Operationale, Probabilitati, Criptologie. Aplicatii

    36/322

    PROGRAMARE DINAMIC A REGRESIV A 23

    Avem: 3 + x1 + x2 + x3 + x4 = 25 sau x1 + x2 + x3 + x4 = 22.

    3 + x1 9 si 3 + x1 5 0 deci x1 [2, 6],3 + x1 5 + x2 9 si 3 + x1 5 + x2 7 0 deci x1 + x2 [9, 11],3+x15+x27+x3 9 si 3+x15+x27+x38 0 deci x1+x2+x3 [17, 18]3 + x1 5 + x2 7 + x3 8 + x4 9 (echivalent cu 5 9 inegalitate care spune

    ca dupa ce s-a efectuat comanda la nceputul lunii a 4-a mai este de satisfacut ocerere de 5 unitati de produs) si 3 + x1 5 + x2 7 + x3 8 + x4 5 = 0 (ecuatiece constituie o verificare partiala).

    Problema de minimizat devine:

    min(12x1 + 10x2 + 9x3 + 10x4)2 x1 6

    9 x1 + x2 114 x4 5x1 + x2 + x3 + x4 = 22.

    PASUL 1. Se determina spatiul starilor Si, i = 0, 4:s0 = 3 S0 = {3},s1 = s0 + x1 5 = x1 2 S1 = [0, 4],s2 = s1 + x2 7 = x1 + x2 9 S2 = [0, 2],s3 = s2 + x3 8 = x1 + x2 + x3 17 S3 = [0, 1],s4 = s3 + x4 5 = x1 + x2 + x3 + x4 17 5 = 0 S4 = {0}.Se determina spatiul deciziilor Xi(si1), i = 1, n :x1

    X1(s0) = [5

    s0, 9

    s0] = [2, 6],

    x2 X2(s1) = [7 s1, 9 s1],x3 X3(s2) = [8 s2, 9 s2],x4 X4(s3) = {5 s3}.Functiile de transfer: i(si1, xi), i = 1, n :1(s0, x1) = s0 + x1 5,2(s1, x2) = s1 + x2 7,3(s2, x3) = s2 + x3 8,4(s3, x4) = s3 + x4 5 = 0.Functiile partiale de eficienta sunt:u1(s0, x1) = 12x1,u2

    (s1

    , x2

    ) = 10x2

    ,u3(s2, x3) = 9x3,u4(s3, x4) = 10x4, si functiile de eficienta ale proceselor de decizie trunchiate la

    fazele {i , . . . , 4} (pentru i = 1, . . . , 4) sunt:f4= 12x1 + 10x2 + 9x3 + 10x4,f3= 10x2 + 9x3 + 10x4,

  • 7/16/2019 Cercetari Operationale, Probabilitati, Criptologie. Aplicatii

    37/322

    24 PROGRAMARE DINAMIC A

    f2= 9x3 + 10x4,f1= 10x4.PASUL 2. Se rezolva problema:

    min{f1 (sn1, xn)|xn Xn(sn1)} = min{u4(s3, x4)|x4 X4(s3)} =

    = min{10x4|x4 {5 s3}} = 10(5 s3) = 50 10s3,minim atins pentru x4(s3) = 5 s3.PASUL 3/4. Se rezolva problema:

    min{f3 |x3 X3(s2)} = min{9x3 + 50 10s3|x3 [8 s2, 9 s2]} =

    = min{9x3 + 50 10(s2 + x3 8)|x3 [8 s2, 9 s2]} == min{x3 10s2 + 130|x3 [8 s2, 9 s2]} = (9 s2) 10s2 + 130 == 121 9s2,minim atins pentru x3(s2) = 9 s2.Se rezolva problema:

    min{f2 |x2 X2(s1)} = min{10x2 + 121 9s2|x2 [7 s1, 9 s1]} =

    = min{10x2 + 121 9(s1 + x2 7)|x2 [7 s1, 9 s1]} == min{x2 9s1 + 184|x2 [7 s1, 9 s1]} = 7 s1 9s1 + 184 = 10s1 + 191,

    minim atins pentru x2(s1) = 7 s1.Se rezolva problema:

    min{f1 |x1 X1(s0)} = min{12x1 + 191 10s1|x1 [2, 6]} =

    = min{12x1 + 191 10(s0 + x1 5)|x1 [2, 6]} == min{2x1 10s0 + 241|x1 [2, 6]} = 243 10s0,

    minim atins pentru x1(s0) = 2, s

    0 = 3.

    PASUL 5. Avem:s1 = s

    0 + x

    1 5 = 0 deci x2(s1) = 7,

    s2 = s1 + x

    2 7 = 0 deci x3(s2) = 9,

    s3 = s2 + x

    3

    8 = 1 deci x4(s3) = 4.

    PASUL 6. Solutia optima x = (2, 7, 9, 4) iar traiectoria optima este s =(0, 0, 1, 0).

    Exercitiul 2.3.2. Un depozit trebuie sa raspunda unei cereri de marfa totale de unitati de produs de la m beneficiari (cererea fiecarui beneficiar este de i unitatide produs). Daca costul de aprovizionare si transport al unei unitati de produs la

  • 7/16/2019 Cercetari Operationale, Probabilitati, Criptologie. Aplicatii

    38/322

    PROGRAMARE DINAMIC A REGRESIV A 25

    beneficiarul i este i, iar depozitul dispune initial de unitati de produs si daca

    acesta nu poate detine n stoc mai mult de unitati de produs sa se determinepolitica optima de reaprovizionare cu produsul respectiv astfel ncat toate cererilesa fie satisfacute. La final mai exista n stoc unitati de produs.

    Indicatie. Se noteaza cu xi numarul de unitati de produs comandate la nceputullivrarii i si cu si stocul existent dupa livrarea i. Problema de programare ce trebuierezolvata este:

    minm

    i=1ixi

    m

    i=1 xi = + ,ji=1

    i j

    i=1xi

    j1i=1

    i + j = 1, m,xi 0 i = 1, m.

    unde =m

    i=1i. Se vor pune n evidenta functiile reciproce de transfer, functiile

    partiale de eficienta, functiile de eficienta ale proceselor trunchiate, spatiul starilorsi spat iile de decizie.

    Problema se va rezolva prin metoda programarii regresive n n faze.

    Exercitiul 2.3.3. Sa se gaseasca o planificare optima unei investitii de 5 mili-

    oane dolari pentru construirea a trei obiective cunoscand randamentele investitiilorpe obiective, asa cum sunt prezentate n tabelul 2.2.

    TABELUL 2.2

    Investitii Obiectiv 1 Obiectiv 2 Obiectiv 3

    0 0 0 0

    1 0, 20 0, 23 0, 19

    2 0, 35 0, 34 0, 37

    3 0, 51 0, 50 0, 49

    4 0, 68 0, 63 0, 65

    5 0, 75 0, 79 0, 80

    Raspuns. Modelul matematic al problemei este:

    max(r1(x1) + r2(x2) + r3(x3))x1 + x2 + x3 = 5,xi {0, 1, 2, 3, 4, 5}, i = 1, 2, 3, 4, 5.

  • 7/16/2019 Cercetari Operationale, Probabilitati, Criptologie. Aplicatii

    39/322

    26 PROGRAMARE DINAMIC A

    In vederea rezolvarii problemei cu ajutorul programarii dinamice, se pune mai

    ntai problema sub forma unui proces secvential de decizie. Pentru realizarea acestuiscop, se noteaza cu si, i = 1, 2, 3, suma investita n primul obiectiv, n primul si aldoilea, si respectiv suma investita n cele trei obiective. Avem: s0 = 0, s1 = s0 + x1,s2 = s1 + x2, s3 = s2 + x3.

    Folosind aceste egalitati, obtinem cu ajutorul sistemului de restrictii, S0 = {0},S1 = S2 = {0, 1, 2, 3, 4, 5}, S3 = {5}.

    X1(s0) = {0, 1, 2, 3, 4, 5}, X2(s1) = {0, . . . , 5 s1}, X3(s2) = {5 s2}.Remarcam ca avem urmatoarele functii de transfer:1(s0, x1) = s0 + x1, 2(s1, x2) = s1 + x2, 3(s2, x3) = s2 + x3.Functiile partiale de eficienta, precum si functiile de decizie ale proceselor de

    decizie trunchiate la fazele

    {i , . . . , 3

    }(pentru i = 1, . . . , 3) sunt urmatoarele:

    u1(s0, x1) = r1(x1), u2(s1, x2) = r2(x2), u3(s2, x3) = r3(x3),f3= r1(x1) + r2(x2) + r3(x3),

    f2= r2(x2) + r3(x3),

    f1= r3(x3).

    Se constata ca problema este decompozabila regresiv cu Fi(, ) = + , undei = 2, 3. Se trece acum la rezolvarea problemelor de optim corespunzatoare fiecareifaze, folosind ecuatiile programarii regresive si obtinem:

    Faza 3. Avem:

    g1(s2) = max{r3(x3)|x3 X3(s2)} = r3(5 s2),obtinut pentru x3(s2) = 5 s2.

    Faza 2. Avem:

    g2(s1) = max{r2(x2) + g1(s1 + x2)|x2 X2(s1)}= max{r2(x2) + r3(5 s1 x2)|x2 X2(s1)}.

    Succesiv obtinem:g2(0) = max{0, 80;0, 88;0, 83;0, 87;0, 82;0, 79} = 0, 88 pentru x2(0) = 1;g2(1) = max{0, 65;0, 72;0, 71;0, 69;0, 63} = 0, 72 pentru x2(1) = 1;g2(2) = max{0, 49;0, 60;0, 53;0, 50} = 0, 60 pentru x2(2) = 1;g2(3) = max{0, 37;0, 42;0, 34} = 0, 42 pentru x2(3) = 1;g2(4) = max{0, 19;0, 23} = 0, 23 pentru x2(4) = 1;g2(5) = max{0} = 0 pentru x2(5) = 1.Faza 1. Avem:

    g3(s0) = max{r1(x1) + g2(s0 + x1)|x1 X1(s0)} == max{0, 88;0, 92;0, 95;0, 93;0, 91;0, 75} = 0, 95,

    obtinut pentru x1(s0) = 2, unde s

    0 = s0 = 0. Avem n continuare, s

    1 = = s

    0+x

    1 = 2,

    de unde x2(s1) = 1; s

    2 = s

    1+x

    2 = 3, de unde x

    3(s

    2) = = 5s2 = 2; s3 = s2+s3 = 5.

  • 7/16/2019 Cercetari Operationale, Probabilitati, Criptologie. Aplicatii

    40/322

    PROGRAMARE DINAMIC A PROGRESIV A 27

    In concluzie, am obtinut: max(r1(x1) + r2(x2) + r3(x3)) = 0, 95, pentru solutia

    optima unica x = (x1, x2, x3) = (2, 1, 2), iar traiectoria optima a procesului estes = (2, 3, 5).

    2.4. Programare dinamica progresiva

    2.4.1. Ecuatiile programarii dinamice progresive

    Procedura iterativa descrisa n paragraful anterior este valabila fara nici o res-trictie asupra starii initiale sau finale. Aceste doua stari au n mod evident, roluriimportante, asa cum s-a vazut pentru starea s0. In timp ce s1, . . . , sn1 sunt staride intrare si iesire, s0 este numai stare de intrare pentru faza 1 a problemei, iar sn

    numai stare de iesire pentru faza n a problemei.Din punct de vedere matematic singurul lucru care deosebeste s0 de sn este sensul

    de parcurs adoptat pentru procedura de rezolvare, sens care a fost impus de ecuat iile:

    si = i(si1, xi), i = 1, n,

    ce conduc la o procedura de rezolvare de la ultima faza spre prima faza a problemei,altfel spus, am mers spre trecut. In anumite probleme se pot pune restrictii asuprastarilor s0 si/sau sn.

    Daca s0 este impusa, optimizarea din ultima faza a problemei conduce la unsingur gn(s0) deoarece s0 nu mai este parametru, iar n faza 1 luam direct s0 = s

    0.

    Deci schema propusa este viabila.Daca sn este impusa, adica sn = s

    n cu s

    n dat, trebuie ca starea initiala s0 si

    solutia optima x(s0) sa satisfaca relatia:

    sn = n(n1(. . . 2(1(s0, x1(s0)), x

    2(s0)), . . . , x

    n(s0)).

    Aceasta relatie nu poate fi verificata decat la sfarsitul procedurii, lucru care sporestetimpul de procesare. Metoda de reducere la cazul precedent este mult mai eficace,daca vom reusi sa schimbam sensul n care au fost facute calculele adica sa mergemspre viitor prin folosirea functiilor reciproce de transfer:

    si1 =i (si, xi), i = 1, n.

    Functiile elementare de eficienta ui, pentru i = 1, . . . , n , respectiv functia obiectivglobala f, devin ui(i (si, xi), xi) =ui (si, xi), pentru i = 1, . . . , n , respectiv:

    f(u1(s0, x1), . . . , un(sn1, xn)) = f(u1 (s1, x1), . . . ,

    un (sn, xn))

    =f (sn, x1, . . . , xn),

  • 7/16/2019 Cercetari Operationale, Probabilitati, Criptologie. Aplicatii

    41/322

    28 PROGRAMARE DINAMIC A

    unde de data aceasta, n mod similar cu ceea ce s-a aratat anterior, toate elementele

    descriptive ale problemei pot fi exprimate ca functie de decizie aleasa si starea s0.Similar se defineste decompozabilitatea progresiva si se ajunge la ecuatiile pro-

    gramarii dinamice progresive.

    2.4.2. Rezolvarea problemelor de programare progresiva

    Elementele prezentate n paragrafele precedente ne permit sa elaboram urmatorulalgoritm de rezolvare a problemelor de optimizare dinamice progresive.

    PASUL 0. Problema matematica se codifica sub forma unei probleme de pro-gramare liniara, punandu-se n evidenta functia obiectiv si sistemul de restrictiicorespunzator.

    PASUL 1. Se pune problema sub forma unui proces secvential de decizie avandu-se n vedere urmatoarele elemente:i) forma functionala a functiilor reciproce de transfer

    i: Si Xi Si1:

    si1 =i (si, xi), i = 1, n.

    ii) spatiul starilor posibile: S0, S1, . . . , S n;

    iii) spatiul deciziilor:Xi (si);

    iv) functiile partiale de eficientaui (si, xi), i = 1, 2, . . . , n;

    v) functiile obiectiv ale proceselor secventiale trunchiate la fazele 1, . . . , i :

    fi

    (x1, . . . , xi) pentru i = 1, 2, . . . , n.PASUL 2. Se rezolva problema din faza 1, adica se calculeaza:

    min{f1 (s1, x1)|x1

    X1 (s1)} = min{u1 (s1, x1)|x1

    X1 (s1)} = g1(s1),

    unde sn1 este parametru. Deci pentru s1 S1 se determina valoarea x1(sn) X1

    (s1), astfel ncat:

    g1(s1) =u1 (s1, x

    1(s1)).

    Se atribuie contorului i valoarea 2. Acest contor are semnificatia fazei i a procesuluisecvential.

    PASUL 3. Se rezolva problema din faza i a carei necunoscuta este xi, iar si

    este parametru. Deci pentru si Si, se determina xi (si) Xi (si) astfel ncat:

    gi(si) =Fi (

    ui (si, x

    i (si)), gi1(

    i (si, x

    i (si)))).

    actualizeaza i := i + 1;

  • 7/16/2019 Cercetari Operationale, Probabilitati, Criptologie. Aplicatii

    42/322

    PROGRAMARE DINAMIC A PROGRESIV A 29

    PASUL 4. Daca i < n goto PASUL 3.

    PASUL 5. Se determina xn(sn) Xn (sn) cu sn = sn si avem:f (sn, x

    1(s

    n), . . . , x

    n(s

    n)) = min{

    fn (s

    n, x1, . . . , xn)|x1, . . . , xn} =gn (sn),

    unde xn1(sn1) = x

    n1 = x

    n1(n (s

    n, x

    n)) etc.

    PASUL 6. Se scrie solutia optima:

    x = (x1, . . . , xn)

    unde xn = xn(sn), xn1 = xn1(n (s

    n, x

    n)) etc.

    Observatii. i) Daca starile s0 sau sn sunt cunoscute, se merge de la starea ne-

    cunoscuta spre starea cunoscuta.ii) Daca ambele stari sunt impuse si daca se pot defini functiile de transfer atat

    ntr-un sens cat si n celalalt atunci se poate opta pentru oricare dintre cele dou ametode de rezolvare, adica progresiv sau regresiv.

    2.4.3. Aplicatii

    Exercitiul 2.4.1. Aplicatia similara celei de la paragraful de aplicatii core-spunzator programarii dinamice regresive.

    Raspuns. Pasul 0 este identic cu cel de la rezolvarea aplicatiei de la capitolulprogramarii regresive.

    PASUL 1. Se determina functiile reciproce de transfer:1 (s1, x1) = s1 x1 + 5,2 (s2, x2) = s2 x2 + 7,3 (s3, x3) = s3 x3 + 8,4 (s4, x4) = s4 x4 + 5.Functiile partiale de eficienta sunt:u1 (s1, x1) = 12x1,u2 (s2, x2) = 10x2,u3 (s3, x3) = 9x3,

    u4 (s4, x4) = 10x4.Functiile de eficienta ale proceselor trunchiate la fazele 1, . . . , i (pentru i =

    1, . . . , 4) sunt:f1= 12x1,f2= 12x1 + 10x2,

  • 7/16/2019 Cercetari Operationale, Probabilitati, Criptologie. Aplicatii

    43/322

    30 PROGRAMARE DINAMIC A

    f3

    = 12x1

    + 10x2

    + 9x3

    ,f4= 12x1 + 10x2 + 9x3 + 10x4.

    Noile spatii de decizie se determina succesiv:

    Din s0 = 3 rezulta s1 x1 + 5 = 3 sau x1 = s1 + 2 de unde x1 {s1 + 2},din s1 [0, 4] rezulta s2 x2 + 7 [0, 4] de unde x2 [s2 + 3, s2 + 7],din s2 [0, 2] rezulta s3 x3 + 8 [0, 2] de unde x3 [s3 + 6, s3 + 8],din s3 [0, 1] rezulta s4 x4 + 5 [0, 1] de unde x4 [s4 + 4, s3 + 5].PASUL 2. Se rezolva problema din faza 1 adica se calculeaza:

    min{f1 |x1 X1 (s1)} = min{12x1|x1 {s1 + 2}} = 12s1 + 24,

    minim atins pentru x1(s1) = s1 + 2.

    PASUL 3/4. Se rezolva problema:

    min{f2 |x2 X2 (s2)} = min{12x1 + 10x2|x2 [s2 + 3, s2 + 7]} =

    = min{10x2 + 12s1 + 24)|x2 [s2 + 3, s2 + 7]} == min{10x2 + 12(s2 x2 + 7) + 24)|x2 [s2 + 3, s2 + 7]} == min{2x2 + 12s2 + 108|x2 [s2 + 3, s2 + 7]} == 2(s2 + 7) + 12s2 + 108 = 10s2 + 94,minim atins pentru x2(s2) = s2 + 7.Se rezolva problema:

    min{f3 |x3 X3 (s3)} = min{12x1 + 10x2 + 9x3|x3 [s3 + 6, s3 + 8]} =

    = min

    {9x3 + 10s2 + 94

    |x3

    [s3 + 6, s3 + 8]

    }=

    = min{9x3 + 10(s3 x3 + 8) + 94|x3 [s3 + 6, s3 + 8]} == min{x3 + 10s3 + 174|x3 [s3 + 6, s3 + 8]} == s3 8 + 10s3 + 174 = 9s3 + 166,minim atins pentru x3(s3) = s3 + 8.Se rezolva problema:

    min{f4 |x4 X4 (s4)} = min{12x1 + 10x2 + 9x3 + 10x4|x4 [s4 + 4, s3 + 5]} =

    = min{10x4 + 9s3 + 166|x4 [s4 + 4, s3 + 5]} == min{10x4 + 9(s4 x4 + 5) + 166|x4 [s4 + 4, s3 + 5]} == min{x4 + 9s4 + 211|x4 [s4 + 4, s3 + 5]} == 10s4 + 215 = 215,

    minim atins pentru x4(s4) = s4 + 4 = 4, unde s4 = 0.PASUL 5. Avem:

    s3 = s4 x4 + 5 = 1 si x3 = s3 + 8 = 9,

    s2 = s3 x3 + 8 = 0 si x2 = s2 + 7 = 7,

    s1 = s2 x2 + 7 = 0 si x1 = s1 + 2 = 2.

    PASUL 6. Solutia optima este:

  • 7/16/2019 Cercetari Operationale, Probabilitati, Criptologie. Aplicatii

    44/322

    PROGRAMARE DINAMIC A PROGRESIV A 31

    x = (2, 7, 9, 4), iar traiectoria optima s = (0, 0, 1, 0), deci s-a obtinut aceeasi

    solutie ca n rezolvarea problemei prin metoda regresiva.

    Exercitiul 2.4.2. Un depozit trebuie sa raspunda unei cereri de marfa totale de unitati de produs de la m beneficiari (cererea fiecarui beneficiar este de i unitatide produs). Daca costurile de transport al unei unitati de produs la beneficiarul ieste i si daca depozitul dispune initial de unitati de produs, iar daca acesta nupoate detine n stoc mai mult de unitati de produs sa se determine politica optimade reaprovizionare cu produsul respectiv astfel ncat toate cererile sa fie satisfacute.In final depozitul nu mai are nici o cantitate n stoc.

    Indicatie. Vom nota cu xi numarul de unitati de produs comandate la nceputul

    livrarii i si cu si stocul existent dupa livrarea i. Problema de programare ce trebuierezolvata este:

    minm

    i=1ixi

    mi=1

    xi = ,j

    i=1i

    ji=1

    xj j1i=1

    i + j = 1, m,xi 0 i = 1, m.

    unde =m

    i=1i. Se vor pune n evidenta functiile reciproce de transfer, functiile

    partiale de eficienta, functiile de eficienta ale proceselor trunchiate, spatiul starilorsi spat iile de decizie.

    Problema se poate rezolva si prin programare dinamica progresiva n n faze sievident si prin metoda programarii dinamice regresive sau cu ajutorul algoritmilorsimplex primal ori simplex dual prin aducerea acesteia la forma standard.

    Exercitiul 2.4.3. Rezolvati numeric prin programare dinamica regresiva si pro-gresiva problema anterioara pentru m = 3, = 25 (1 = 10, 2 = = 8, 3 = 7), 1 =3, 2 = 10, 3 = 4, = 3 si = 10. Aplicati pentru rezolvarea problemei algoritmul

    simplex primal. Scrieti duala problemei de programare liniara asociata. Rezolvatiprogramul dual.

    Indicatie. Aplicand exercitiul precedent restrictia a doua devine:

    1 x1 ,

  • 7/16/2019 Cercetari Operationale, Probabilitati, Criptologie. Aplicatii

    45/322

    32 PROGRAMARE DINAMIC A

    sau 10

    3

    x1

    10

    3 deci x1 = 7. Restrictia a treia devine:

    1 + 2 x1 + x2 1 + ,

    sau 10 + 8 3 3 + x2 10 + 10 3 deci 12 x2 20 etc.

    Exercitiul 2.4.4. Generalizati problema de la exercitiul 2.4.2 la o problema cun depozite. Rezolvati aceasta problema prin metoda programarii dinamice si apoiprin metoda de rezolvare a problemelor clasice de transport.

    Exercitiul 2.4.5. Un tren de marfa cu capacitatea maxima z trebuie sa trans-porte diferite cantitati de N marfuri diferite. Sa notam cu vi valoarea celui de al i-lea

    tip de marfa si cu wi greutatea sa. Sa se determine ncarcatura de valoare maxima.Aplicatie numerica N = 3, z = 100 t, v1 = 10$, v2 = 30$, v3 = 5$, w1 = 150 t,w2 = 20 t, w3 = 30 t.

    Indicatie. Daca notam cu xi numarul articolelor din marfa i care sunt ncarcate,atunci problema de programare liniara de rezolvat este:

    maxN

    i=1xivi,

    N

    i=1xiwi z,

    xi 0, i = 1, N .Problema se poate rezolva prin metodele programarii dinamice sau cu algoritmul

    simplex.

  • 7/16/2019 Cercetari Operationale, Probabilitati, Criptologie. Aplicatii

    46/322

    Capitolul 3

    TEORIA JOCURILOR

    3.1. Notiuni introductive

    De foarte multe ori suntem pusi n fata unor situatii conflictuale a caror evolutieulterioara depinde de decizia sau planul adoptat, numita si strategie. Prin termenulde evolutie se ntelege modificarea unei functii obiectiv numita n acest caz functiede pierdere sau castig, deci prin joc n cele ce urmeaza se ntelege acea situatiecare functioneaza dupa reguli bine definite, n care doua sau mai multe elemente de-cizionale, numite jucatori, aleg o decizie dintr-o multime de variante bine specificate.Deoarece jocurile de care ne vom ocupa au la baza aceste elemente decizionale, ele se

    vor numi jocuri strategice. Spunem despre strategia unui joc ca este o strategie puradaca unul dintre adversari alege una din cele m variante dupa care jocul se opreste.Strategia mixta presupune continuarea partidei, iar alegerea variantei se face cu oanumita probabilitate. Fiecare din partile implicate n joc urmareste optimizareafunctiei obiectiv, iar strategia care realizeaza aceasta optimizare se numeste strategieoptima.

    Din punct de vedere al castigului jocurile se clasifica n:

    -jocuri cu suma nula: sunt acele jocuri n care suma pierderilor fiecarui jucatoreste egala cu suma castigurilor tuturor jucatorilor;

    -jocuri fara suma nula: sunt acele jocuri n care o parte din pierderea si/sau

    castigul unui jucator nu se regaseste la ceilalti jucatori.O alta clasificare este dupa cardinalul numarului de strategii: jocuri finite sau

    infinite.

    Fie X si Y strategiile pure a doi jucatorilor A respectiv B si a X si b Ystrategile pure alese de catre acestia. Vom nota cu LA(a, b) si LB(a, b) pierderilecorespunzatoare fiecarui jucator, castigul fiind considerat o pierdere negativa. Suma

    33

  • 7/16/2019 Cercetari Operationale, Probabilitati, Criptologie. Aplicatii

    47/322

    34 TEORIA JOCURILOR

    pierderilor celor doi jucatori este:

    LA(a, b) + LB(a, b).

    Daca jocul este cu suma nula atunci LA(a, b) + LB(a, b) = 0. Deci, LB(a, b) =LA(a, b) = L(a, b), unde L(a, b) este castigul jucatorului A daca acesta joaca strate-gia a iar raspunsul lui B fiind prin strategia b.

    Jocurile de tip poker sunt jocuri cu suma nula, iar jocurile de tip Casino suntfara suma nula (se platesc impozite catre stat sau se platesc taxe catre proprietarul

    jocului). Formalizand cele definite avem:

    Definitia 3.1.1. Se numeste joctripletul J = (X , Y , L) unde X = {a1, . . . , am}si Y =

    {b1

    ,...,bn}

    sunt multimile de strategii pure ale celor doi jucatori, iar L :X Y R este functia de castig care se poate exprima sub forma matriceala:

    Q =

    q11 ... q 1n... ... ...

    qm1 ... q mn

    n care qij = L(ai, bj), i = 1, m , j = 1, n. Forma matriceala a unui joc se numesteforma normala. Matricea jocului este alcatuita n raport cu jucatorul A numit

    jucator maximizant. Jucatorul B se va numi jucator minimizant, iar matricea sa vaavea elementele qij.

    Exemplul 3.1.1. Jocul consta n aruncarea monedei n care fiecare jucatorpoate alege, independent de celalalt stema S sau banul B. Daca alegerile coin-cid, atunci jucatorul 2 primeste de la jucatorul 1 suma x. In caz contrar jucatorul 1primeste de la jucatorul 2 suma x. Matricea jocului este:

    Q =

    x xx x

    .

    3.2. Principiul minimax

    Teoria jocurilor are ca rol elaborarea unor planuri rat ionale de actiune pentru

    cazurile conflictuale. Astfel, principiul adoptat este principul minimizarii pierderiimaxime numit si principiul minimax. Jucatorul A actioneaza astfel ncat sa maxi-mizeze cel mai mic castig pe care-l poate obtine de la jucatorul B, iar jucatorul Bactioneaza astfel ncat sa minimizeze pierderea sa maxima.

    Valoarea: = max

    iminj

    qij

  • 7/16/2019 Cercetari Operationale, Probabilitati, Criptologie. Aplicatii

    48/322

    STRATEGII MIXTE SI VALOAREA JOCULUI 35

    se numeste valoarea inferioara a jocului si reprezinta cel mai mic castig pe care A l

    poate avea de la B, iar valoarea:

    = minj

    maxi

    qij

    se numeste valoarea superioara a jocului si reprezinta cea mai mare pierdere pe careB o poate avea.

    Jocurile pentru care = se numesc jocuri cu punct sa, iar valoarea comuna aacestor doua valori se numeste valoarea jocului. Elementul care realizeaza aceastaegalitate se numeste punct sa.

    O strategie ai a jucatorului A se numeste dominanta pentru strategia aj dacaqik qjk pentru orice k = 1, n. Strategiile dominate vor fi eliminate din joc de c atreA (acesta doreste sa castige cat mai mult) strategiile dominante ale lui B vor fieliminate din politica sa pentru ca duc la pierderi mai mari.

    3.3. Strategii mixte si valoarea jocului

    Jocurile cu punct sa reprezinta o clasa particulara de jocuri si se pune n modnatural ntrebarea daca, n ipoteza repetarii partidelor, nu se poate gasi o strategieprin care jucatorul A sa obtina un castig mai mare decat cel asigurat prin criteriulminimax. Vom numi strategie mixta o combinatie probabilista de strategii pure.Strategiile mixte au dublu rol:

    1. de a mpiedica adversarul sa cunoasca strategia aleasa;

    2. de a mari castigul garantat de valoarea inferioara a jocului.Fie X = (x1,...,xm)

    vectorul probabilitatilor cu care jucatorul A alege strategiilepure {a1,...,am} si Y = (y1,...,yn) vectorul probabilitatilor cu care jucatorul Balege strategiile pure {b1,...,bn}. Avem:

    xi 0, i = 1, mm

    i=1xi = 1,

    si

    yj 0, j = 1, nn

    j=1 yj = 1.

    Castigul mediu realizat de catre A cand el foloseste strategia mixta X, iar Bstrategia bj va fi:

    M(X, j) =m

    i=1

    qijxi.

  • 7/16/2019 Cercetari Operationale, Probabilitati, Criptologie. Aplicatii

    49/322

    36 TEORIA JOCURILOR

    Similar, castigul mediu realizat de A cand el foloseste strategia ai, iar B foloseste

    strategia mixta Y va fi:

    M(i, Y) =n

    j=1

    qijyj.

    Valoarea medie a jocului va fi:

    M(X, Y) =n

    j=1

    mi=1

    qijxiyj =m

    i=1

    nj=1

    qijxiyj ,

    sau matriceal:

    M(X, Y) = X

    QY.

    3.4. Teorema fundamentala a teoriei jocurilor

    Teorema 3.4.1. (Valoarea inferioara si valoarea superioara a jocului). FieX,Y submultimi ale lui R si fie L : X Y R. Daca exista marimile:

    maxxX

    [minyY

    L(x, y)],

    minyY

    [maxxX

    L(x, y)],

    atunci:maxxX

    [minyY

    L(x, y)] minyY

    [maxxX

    L(x, y)].

    Definitia 3.4.1. (Punct sa). Punctul (x0, y0) este punct sa al functiei L daca:

    L(x, y0) L(x0, y0) L(x0, y).

    Teorema 3.4.2. (Conditii necesare si suficiente pentru existenta punctelor sa).Fie X, Y submultimi ale lui R si fie L : X Y R. Daca exista marimile:

    maxxX

    [minyY

    L(x, y)],

    minyY

    [maxxX

    L(x, y)],

    atunci conditia necesara si suficienta ca L sa aib a pun