29
Lecţia de astăzi se numeşte „Rezolvarea problemelor de programare liniară în două variabile” şi reprezintă partea aplicativă a rezolvării sistemelor de inecuaţii liniare cu două necunoscute.

Lectie programare liniara

Embed Size (px)

Citation preview

Page 1: Lectie programare liniara

Lecţia de astăzi se numeşte „Rezolvarea problemelor de programare liniară în două

variabile” şi reprezintă partea aplicativă

a rezolvării sistemelor de inecuaţii liniare cu două

necunoscute.

Page 2: Lectie programare liniara

Până la sfârşitul orei vom învăţa:• să modelăm matematic o problemă cu ajutorul

sistemelor de inecuaţii liniare• să rezolvăm o astfel de problemă• să interpretăm datele obţinute şi să formulăm

soluţiile problemei• să cunoaştem şi să înţelegem domeniile de

aplicabilitate ale programării liniare în două variabile şi ale matematicii, în general

Page 3: Lectie programare liniara

Să recapitulăm! Orice dreaptă împarte planul în două semiplane: superior

şi inferior, sau pozitiv şi negativ.

Page 4: Lectie programare liniara

Cazul c negativ: semiplanul negativ conţine originea

Page 5: Lectie programare liniara

Cazul c pozitiv: semiplanul pozitiv conţine originea

Page 6: Lectie programare liniara

Soluţia unui sistem de inecuaţii liniare în două variabile este suprafaţa care rezultă din intersecţia tuturor

semiplanelor soluţii ale inecuaţiilor sistemului.

Page 7: Lectie programare liniara

O funcţie liniară, neconstantă, în două variabile, admite diferite valori în punctele unei suprafeţe poligonale

convexe, dar îşi atinge valoarea minimă, respectiv maximă, în cel puţin unul dintre vârfurile poligonului.

Page 8: Lectie programare liniara

De reţinut:

Pentru a determina o valoare extremă (minimă sau maximă) a unei funcţii liniare neconstante în două variabile pe o suprafaţă poligonală convexă, calculăm valorile funcţiei în fiecare dintre vârfurile poligonului, apoi le comparăm între ele.

Page 9: Lectie programare liniara

4) Aplicaţii – rezolvarea problemelor de programare

liniară în două variabileProblemele de programare

liniară în două variabile sunt probleme care se pot modela matematic prin expresii liniare (de gradul I) în două variabile.

Page 10: Lectie programare liniara

Cum aţi rezolva următoarea problemă?

• Un fermier deţine 100 ha de teren agricol pe care poate cultiva grâu şi lucernă. Este necesar ca fermierul să cultive cel puţin 10 ha cu grâu şi cel puţin 20 ha cu lucernă, dispunând de maxim 6000 €, ca investiţie iniţială. Ştiind că pentru 1 ha de grâu se cheltuie 100 € şi se obţin 125 € , iar pentru 1 ha de lucernă se cheltuie 50 € şi se obţin 60 €, să se calculeze: investiţia minimă, profitul maxim, cât şi cel mai bun raport investiţie/profit.

Page 11: Lectie programare liniara

• Vom folosi sistemele de inecuaţii liniare şi optimizarea funcţiilor liniare în două variabile.

Page 12: Lectie programare liniara

Etapa I – modelarea matematică

Notăm cu numărul de ha cultivate cu grâu şi cu numărul

de ha cultivate cu lucernă. Atunci:

„cel puţin 10 ha cu grâu” implică

„cel puţin 20 ha lucernă” implică

„în total cel mult 100 ha” implică

„investiţia maximă de 6000 €” implică

Cum profitul este de 25 € la ha de grâu şi 10 € la ha de lucernă,

rezultă următoarele funcţii obiectiv:

Profitul

Investiţia

x y

10x ≥20y ≥100x y+ ≤

100 50 6000x y+ ≤

( )2: , , 25 10f f x y x y→ = +¡ ¡

( )2: , , 100 50g g x y x y→ = +¡ ¡

Page 13: Lectie programare liniara

Deci problema revine la a optimiza funcţiile:

şi

în condiţiile sistemului de restricţii:

Deoarece toate expresiile care intervin sunt liniare în două

variabile, o astfel de problemă se numeşte problemă de

programare liniară în două variabile.

( ), 25 10f x y x y= + ( ), 100 50g x y x y= +

10

20

100

2 120

x

y

x y

x y

≥ ≥ + ≤ + ≤

Page 14: Lectie programare liniara

Etapa II – rezolvarea propriu-zisă Calculăm coordonatele punctelor de intersecţie a dreptelor implicate şi

efectuăm reprezentarea grafică. Intersectând semiplanele soluţii rezultă suprafaţa poligonală convexă [ ]ABCD

Page 15: Lectie programare liniara

Calculăm valorile funcţiilor în vârfurile poligonului :

Calculăm şi raporturile profit / investiţie:

Putem trece datele într-un tabel.

,f g [ ]ABCD

( )10,20 25 10 10 20 450f = × + × =

( )50,20 25 50 10 20 1750f = × + × =( )10,20 100 10 50 20 2000g = × + × =

( )50,20 100 50 50 20 6000g = × + × =( )20,80 25 20 10 80 1300f = × + × =( )20,80 100 20 50 80 6000g = × + × =( )10,90 25 10 10 90 1150f = × + × =( )10,90 100 10 50 90 5500g = × + × =

450 1750 1300 11500,22; 0,29; 0,21; 0,20

2000 6000 6000 5500= = = =

Page 16: Lectie programare liniara

Etapa III – interpretarea rezultatelor şi soluţia problemei:

• Profitul maxim este de 1750 €, cu o investiţie iniţială de 6000 €, cultivând 50 ha cu grâu şi 20 ha cu lucernă.

• Investiţia minimă este de 2000 €, la care se obţine un profit de 450 €, cultivând 10 ha cu grâu şi 20 cu lucernă.

• Cel mai bun raport profit / investiţie este 0,29, la 50 ha grâu şi 20 ha lucernă.

Page 17: Lectie programare liniara

Să recapitulăm!Rezolvarea unei probleme de programare liniară în

două variabile implică, în general, trei etape:

• Etapa I – modelarea matematică

• Etapa II – rezolvarea propriu-zisă

• Etapa III – interpretarea datelor şi soluţiile problemei

Page 18: Lectie programare liniara

Etapa I – modelarea matematică

• Identificarea variabilelor, a restricţiilor şi a funcţiilor obiectiv

Page 19: Lectie programare liniara

Etapa II – rezolvarea propriu-zisă

• Rezolvarea sistemului restricţiilor– reprezentarea grafică;

• Calcularea valorilor funcţiilor obiectiv în vârfurile poligonului restricţiilor;

• Compararea valorilor funcţiilor obiectiv, determinarea valorilor optime.

Page 20: Lectie programare liniara

Etapa III – interpretarea datelor şi soluţiile problemei

• Interpretarea datelor obţinute

• Formularea soluţiilor problemei.

Page 21: Lectie programare liniara

În continuare vă invit să participaţi la un concurs pe echipe, în urma căruia voi desemna: “Cea mai unită echipă”, “Cea mai rapidă rezolvare” şi “Cea mai frumoasă prezentare”

• Fiecare echipă dispune de: fişa cu problema-model, fişa de lucru, planşa de desen, markere, riglă. Rezolvaţi problema pe fişa de lucru şi apoi treceţi rezultatele pe planşă, astfel încât să puteţi prezenta cât mai clar rezolvarea problemei în faţa clasei.

• După ce finalizaţi rezolvarea problemei, trebuie să vă autoevaluaţi. În funcţie de contribuţiile la rezolvare, şeful echipei vă va acorda şi el câte o notă. Eu o să vă acord nota finală, câştigătorii primind câte un punct în plus.

• Puteţi să vă folosiţi de manuale şi de calculatoare. Veţi beneficia de tot sprijinul meu, dar trebuie să ştiţi că voi ţine cont de aceasta la acordarea notelor finale.

Page 22: Lectie programare liniara

Competiţia pe echipe

- Mult succes!

Page 23: Lectie programare liniara

Prezentarea rezolvărilor

• Citiţi problema de pe ecranul de proiecţie.

• Prezentaţi rezolvarea de pe planşa de desen.

Page 24: Lectie programare liniara

Problema echipei inginerilor constructori

• O firmă de construcţii trebuie să realizeze un complex format din cel mult 16 blocuri de locuinţe care să includă cel puţin 160 de garsoniere şi cel puţin 160 de apartamente cu două camere, dispunând de două tipuri de proiecte: primul cu 10 etaje, având două garsoniere şi un apartament cu două camere pe nivel cu un cost de producţie de 700000 €, şi al doilea cu 8 etaje, având o garsonieră şi două apartamente cu două camere pe nivel cu un cost de producţie de 640000 €. Fiecare dintre blocuri aduce un profit de 400000 €. Stabiliţi câte blocuri de fiecare fel trebuie construite astfel încât: a) investiţia să fie minimă; b) profitul să fie maxim; c) să se obţină cel mai bună rată a profitului.

Page 25: Lectie programare liniara

Problema echipei informaticienilor

• Un elev care are media de absolvire 7,50 se pregăteşte să urmeze facultatea de informatică. Media de admitere se calculează astfel: 40% media de absolvire a liceului, 40% nota de la bacalaureat la examenul de informatică şi 20% nota de la bacalaureat la examenul de matematică. Fiind înainte de examenul de bacalaureat şi ştiind că media minimă de admitere în anul precedent a fost 8,00, elevul îşi calculează ce note ar trebui să obţină la bacalaureat pentru a fi admis. La ce concluzie ajunge elevul? Ce notă minimă poate obţine la matematică în cazul în care ia 10 la informatică.

Page 26: Lectie programare liniara

Problema echipei întreprinzătorilor

• Într-o fabrică de pâine se produc două tipuri de pâine: tip franzelă – produs din 600 g făină şi tip colac – produs din 800 g făină. Fabrica are prin contract obligaţia să achiziţioneze zilnic 480 kg de făină şi are o capacitate de producţie de cel mult 1000 de pâini pe zi. Ştiind că preţul de producţie al unui produs tip franzelă este de 1 leu, iar al unui produs tip colac este de 1,5 lei, şi zilnic există pe piaţă o cerere de cel puţin 320 produse tip franzelă şi 150 produse tip colac, să se determine combinaţia optimă între cele două tipuri de produse astfel încât cheltuielile să fie minime.

Page 27: Lectie programare liniara

Problema echipei nutriţioniştilor

• Un nutriţionist trebuie să conceapă o salată de legume cu brânzeturi care să cântărească cel mult 400 g şi cel puţin 200 g. Pentru ca salata să fie una sănătoasă, cantitatea de legume trebuie să depăşească de cel puţin 3 ori cantitatea de brânzeturi, iar nutriţionistul vrea să adauge cel puţin 25 g de brânzeturi. Calculaţi numărul minim şi numărul maxim de kcal pe care îl poate avea salata, ştiind că brânzeturile au în medie 300 kcal, iar legumele au în medie 20 kcal. Dintre combinaţiile obţinute, care este cea mai dietetică (cu cel mai mic număr de calorii la 100 g)?

Page 28: Lectie programare liniara

• - Echipele câştigătoare sunt…

• - Felicitări tuturor pentru activitatea depusă!

Page 29: Lectie programare liniara

Recapitularea finală şi tema pentru acasă

• Rezolvarea problemelor de programare liniară presupune parcurgerea a trei etape. Care sunt acestea?

• În ce alte domenii credeţi că s-ar putea aplica programarea liniară în două variabile?

• Ca temă pentru acasă vă propun să construiţi fiecare câte o problemă de programare liniară, pe care să o şi rezolvaţi.

• Vă mulţumesc tuturor pentru participarea la această lecţie!