Se numește valoarea optimă a funcției obiectiv. Teste pentru controlul actual al cunoștințelor

Împărțim al treilea rând la elementul cheie egal cu 5, obținem al treilea rând al noului tabel.

Coloanele de bază corespund coloanelor individuale.

Calculul valorilor rămase din tabel:

„BP - Plan de bază”:

; ;

"x1": ; ;

"x5": ; .

Valorile rândului index sunt nenegative, prin urmare obținem soluția optimă: , ; .

Răspuns: profitul maxim din vanzarea produselor manufacturate, egal cu 160/3 unitati, se asigura prin eliberarea numai a produselor de al doilea tip in valoare de 80/9 unitati.


Sarcina numărul 2

Este dată problema programării neliniare. Găsiți maximul și minimul funcției obiectiv folosind o metodă analitică grafică. Compuneți funcția Lagrange și arătați că condițiile minime (maximale) suficiente sunt îndeplinite la punctele extreme.

pentru că ultima cifră a cifrului este 8, apoi A=2; B=5.

pentru că penultima cifră a cifrului este 1, atunci ar trebui să alegeți sarcina numărul 1.

Soluţie:

1) Să desenăm aria pe care o definește sistemul de inegalități.


Această zonă este un triunghi ABC cu coordonatele vârfurilor: A(0; 2); B(4; 6) și C(16/3; 14/3).

Nivelurile funcției obiectiv sunt cercuri centrate în punctul (2; 5). Pătratele razelor vor fi valorile funcției obiectiv. Apoi figura arată că valoarea minimă a funcției obiectiv este atinsă în punctul H, valoarea maximă este fie în punctul A, fie în punctul C.

Valoarea funcţiei obiectiv la punctul A: ;

Valoarea funcţiei obiectiv în punctul C: ;

Aceasta înseamnă că valoarea maximă a funcției este atinsă în punctul A(0; 2) și este egală cu 13.

Să găsim coordonatele punctului H.

Pentru a face acest lucru, luați în considerare sistemul:

ó

ó

O linie este tangentă la un cerc dacă ecuația are o soluție unică. O ecuație pătratică are o soluție unică dacă discriminantul este 0.


Apoi ; ; - valoarea minima a functiei.

2) Compuneți funcția Lagrange pentru a găsi soluția minimă:

La X 1 =2.5; X 2 =4.5 primim:

ó

Sistemul are o soluție pentru , i.e. sunt îndeplinite suficiente condiții extreme.

Compunem funcția Lagrange pentru găsirea soluției maxime:

Condiții suficiente pentru un extremum:

La X 1 =0; X 2 =2 primim:

ó ó

Sistemul are și o soluție, adică. sunt îndeplinite suficiente condiții extreme.

Răspuns: se atinge minimul funcţiei obiectiv la ; ; funcţia obiectivă maximă este atinsă când ; .


Sarcina numărul 3

Două întreprinderi sunt alocate fonduri în valoare d unitati. Când este alocată primei întreprinderi timp de un an X unități de fond pe care le oferă venituri k 1 X unități și atunci când sunt alocate celei de-a doua întreprinderi y unități de fond, oferă venituri k 1 y unitati. Soldul fondurilor la sfârșitul anului pentru prima întreprindere este egal cu nx, iar pentru al doilea Ale mele. Cum să distribuiți toate fondurile în decurs de 4 ani, astfel încât venitul total să fie cel mai mare? Rezolvați problema prin programare dinamică.

i=8, k=1.

A=2200; k1 =6; k2=1; n=0,2; m=0,5.

Soluţie:

Întreaga perioadă de 4 ani este împărțită în 4 etape, fiecare dintre ele egală cu un an. Să numărăm etapele începând din primul an. Fie X k și Y k fondurile alocate, respectiv, întreprinderilor A și B la etapa k. Apoi suma X k + Y k =a k este suma totală de fonduri utilizate la k - acea etapă și rămase din etapa anterioară k - 1. la prima etapă sunt utilizate toate fondurile alocate și a 1 = 2200 unități. venitul care va fi primit la k - acea etapă, când sunt alocate unități X k și Y k, va fi 6X k + 1Y k . fie venitul maxim primit la ultimele etape începând de la k - acea etapă este f k (a k) unități. Să scriem ecuația funcțională Bellman care exprimă principiul optimității: oricare ar fi starea inițială și soluția inițială, soluția ulterioară trebuie să fie optimă în raport cu starea obținută ca urmare a stării inițiale:

Pentru fiecare etapă, trebuie să alegeți valoarea X k și valoarea Y k=ak- Xk. Având în vedere acest lucru, vom găsi venituri în etapa k-a:

Ecuația funcțională Bellman va arăta astfel:

Luați în considerare toate etapele, începând cu ultima.

(deoarece maximul funcției liniare este atins la capătul segmentului la x 4 = a 4);

Construim pe plan un set de soluții fezabile ale sistemului de inegalități liniare și găsim geometric valoarea minimă a funcției obiectiv.

Construim în sistemul de coordonate x 1 o 2 linii

Găsim semiplanurile determinate de sistem. Deoarece inegalitățile sistemului sunt satisfăcute pentru orice punct din semiplanul corespunzător, este suficient să le verificați pentru orice punct. Folosim punctul (0;0). Să substituim coordonatele sale în prima inegalitate a sistemului. pentru că , atunci inegalitatea definește un semiplan care nu conține punctul (0;0). În mod similar, definim semiplanurile rămase. Găsim setul de soluții fezabile ca parte comună a semiplanurilor obținute - aceasta este zona umbrită.

Construim un vector și o linie de nivel zero perpendicular pe acesta.


Deplasând dreapta (5) în direcția vectorului, vedem că punctul maxim al regiunii va fi în punctul A de intersecție a dreptei (3) și a dreptei (2). Găsim soluția sistemului de ecuații:

Deci, am obținut punctul (13;11) și.

Deplasând dreapta (5) în direcția vectorului, vedem că punctul minim al regiunii se va afla în punctul B de intersecție a dreptei (1) și a dreptei (4). Găsim soluția sistemului de ecuații:

Deci, am obținut punctul (6;6) și.

2. O companie de mobilă produce dulapuri combinate și mese de calculator. Producția lor este limitată de disponibilitatea materiilor prime (plăci de înaltă calitate, armături) și de timpul de funcționare al mașinilor care le prelucrează. Fiecare dulap necesită 5 m2 de scânduri, pentru o masă - 2 m2. Garniturile pentru 10 USD sunt cheltuite pe un dulap și 8 USD pe o masă. Compania poate primi de la furnizorii săi până la 600 m2 de scânduri pe lună și accesorii pentru 2000 USD. Pentru fiecare dulap sunt necesare 7 ore de lucru la mașină, pentru o masă - 3 ore. Este posibil să utilizați doar 840 de ore de funcționare a mașinii pe lună.

Câte dulapuri combinate și mese de calculator ar trebui să producă o firmă pe lună pentru a maximiza profitul dacă un dulap aduce 100 USD și fiecare masă face 50 USD?

  • 1. Compuneți un model matematic al problemei și rezolvați-l folosind metoda simplex.
  • 2. Compune un model matematic al problemei duale, notează-i soluția pe baza soluției celei inițiale.
  • 3. Determinați gradul de deficit al resurselor utilizate și justificați rentabilitatea planului optim.
  • 4. Explorați posibilitățile de creștere în continuare a producției, în funcție de utilizarea fiecărui tip de resursă.
  • 5. Evaluați fezabilitatea introducerii unui nou tip de produs - rafturi, dacă 1 m 2 de plăci și accesorii pentru 5 USD este cheltuit pentru fabricarea unui raft și sunt necesare 0,25 ore de funcționare a mașinii și profitul din vânzarea de un raft este de 20 USD.
  • 1. Să construim un model matematic pentru această problemă:

Notați cu x 1 - volumul producției de dulapuri și x 2 - volumul producției de mese. Să compunem un sistem de constrângeri și o funcție scop:

Rezolvăm problema folosind metoda simplex. Să o scriem în formă canonică:

Să scriem datele sarcinii sub forma unui tabel:

tabelul 1

pentru că acum toate deltele sunt mai mari decât zero, atunci creșterea suplimentară a valorii funcției de obiectiv f este imposibilă și am obținut un plan optim.


Introducere

Etapa modernă a dezvoltării umane este diferită prin aceea că secolul energiei este înlocuit de epoca informaticii. Există o introducere intensivă a noilor tehnologii în toate sferele activității umane. Există o adevărată problemă de tranziție la societatea informațională, pentru care dezvoltarea educației ar trebui să devină o prioritate. Structura cunoașterii în societate se schimbă și ea. Cunoștințele fundamentale care contribuie la dezvoltarea creativă a individului devin din ce în ce mai importante pentru viața practică. De asemenea, este importantă caracterul constructiv al cunoștințelor dobândite, capacitatea de a le structura în conformitate cu scopul. Pe baza cunoștințelor se formează noi resurse informaționale ale societății. Formarea și dobândirea de noi cunoștințe ar trebui să se bazeze pe o metodologie strictă a unei abordări sistematice, în cadrul căreia un loc separat este ocupat de o abordare model. Posibilitățile abordării modelării sunt extrem de diverse atât în ​​ceea ce privește modelele formale utilizate, cât și în modalitățile de implementare a metodelor de modelare. Modelarea fizică face posibilă obținerea de rezultate fiabile pentru sisteme destul de simple.

În prezent, este imposibil să denumim un domeniu al activității umane în care, într-o măsură sau alta, nu ar fi utilizate metode de modelare. Acest lucru este valabil mai ales pentru managementul diverselor sisteme, unde principalele sunt procesele decizionale bazate pe informațiile primite.

1. Enunțarea problemei

funcţie obiectiv minim

Rezolvați problema găsirii minimului funcției obiectiv pentru sistemul de constrângeri specificat de poligonul de decizie în conformitate cu opțiunea nr. 16 a sarcinii. Poligonul de decizie este prezentat în Figura 1:

Figura 1 - Poligonul soluțiilor problemei

Sistemul de constrângeri și funcția obiectivă a problemei sunt prezentate mai jos:

Este necesar să se rezolve problema folosind următoarele metode:

Metoda grafica de rezolvare a problemelor LP;

Metoda algebrică de rezolvare a problemelor LP;

Metoda simplex pentru rezolvarea problemelor LP;

Metodă de găsire a unei soluții fezabile la problemele LP;

Rezolvarea problemei dual LP;

Metoda „ramurilor și limitelor” pentru rezolvarea problemelor LP întregi;

metoda lui Gomory pentru rezolvarea problemelor LP cu numere întregi;

Metoda Balash pentru rezolvarea problemelor booleene LP.

Comparați rezultatele soluției prin diferite metode pentru a trage concluziile adecvate asupra lucrării.

2. Rezolvarea grafică a problemei de programare liniară

Metoda grafică de rezolvare a problemelor de programare liniară este utilizată în cazurile în care numărul de necunoscute nu depășește trei. Este convenabil pentru un studiu calitativ al proprietăților soluțiilor și este utilizat împreună cu alte metode (algebrică, ramificată și legată etc.). Ideea metodei se bazează pe soluția grafică a unui sistem de inegalități liniare.

Orez. 2 Rezolvarea grafică a problemei LP

Punct scăzut

Ecuația unei drepte care trece prin două puncte A1 și A2:

AB: (0;1); (3;3)

Soare: (3;3); (4;1)

CD: (4;1); (3;0)

EA: (1;0); (0;1)

CF: (0;1); (5;2)

cu restrictii:

Rezolvarea unei probleme de programare liniară prin metoda simplex algebrică

Aplicarea metodei algebrice de rezolvare a problemei necesită o generalizare a reprezentării problemei LP. Sistemul original de constrângeri dat sub formă de inegalități este convertit la notația standard atunci când constrângerile sunt date sub formă de egalități. Convertirea unui sistem de constrângeri într-o formă standard include următorii pași:

Transformați inegalitățile în așa fel încât variabilele și membrii liberi să fie în stânga și 0 în dreapta, adică. ca partea stângă să fie mai mare sau egală cu zero;

Introduceți variabile suplimentare, al căror număr este egal cu numărul de inegalități din sistemul de restricții;

Introducerea unor restricții suplimentare privind non-negativitatea variabilelor adăugate, înlocuiți semnele de inegalitate cu semne egale stricte.

La rezolvarea problemei LP prin metoda algebrică se adaugă o condiție: funcția obiectiv ar trebui să tindă la minim. Dacă această condiție nu este îndeplinită, este necesară transformarea adecvată a funcției obiectiv (înmulțirea cu -1) și rezolvarea problemei de minimizare. După ce se găsește soluția, înlocuiți valorile variabilelor din funcția originală și calculați valoarea acesteia.

Rezolvarea problemei folosind metoda algebrică este considerată optimă atunci când valorile tuturor variabilelor de bază sunt nenegative, iar coeficienții variabilelor libere din ecuația funcției obiective sunt, de asemenea, nenegativi. Dacă aceste condiții nu sunt îndeplinite, este necesară transformarea sistemului de inegalități, exprimând unele variabile în termenii altora (modificarea variabilelor libere și de bază) pentru a realiza restricțiile de mai sus. Se presupune că valoarea tuturor variabilelor libere este zero.

Metoda algebrică de rezolvare a problemelor de programare liniară este una dintre cele mai eficiente metode de rezolvare manuală a problemelor de dimensiuni mici. nu necesită un număr mare de calcule aritmetice. Implementarea automată a acestei metode este mai complicată decât, de exemplu, pentru metoda simplex, deoarece algoritmul de rezolvare a metodei algebrice este într-o oarecare măsură euristic iar eficacitatea soluției depinde în mare măsură de experiența personală.

variabile libere

St. lane - adăuga. trusa

Condițiile de non-negativitate sunt îndeplinite, prin urmare, se găsește soluția optimă.

3. Rezolvarea unei probleme de programare liniară folosind un tabel simplex

Soluție: Să aducem problema într-o formă standard pentru rezolvare folosind un tabel simplex.

Reducem toate ecuațiile sistemului la forma:

Construim un tabel simplex:

În colțul de sus al fiecărei celule a tabelului introducem coeficienții din sistemul de ecuații;

Selectăm elementul pozitiv maxim în rândul F, cu excepția faptului că aceasta va fi coloana generală;

Pentru a găsi elementul general, construim o relație pentru toate cele pozitive. 3/3; 9/1;- raport minim in linia x3. Prin urmare - șir general și =3 - element general.

Găsim =1/=1/3. Aducem în colțul inferior al celulei, unde se află elementul general;

În toate colțurile inferioare necompletate ale liniei generale, introducem produsul valorii din colțul superior al celulei prin;

Selectați colțurile superioare ale liniei generale;

În toate colțurile inferioare ale coloanei generale introducem produsul valorii din colțul de sus prin - și selectăm valorile rezultate;

Celulele rămase ale tabelului sunt completate ca produse ale elementelor selectate corespunzătoare;

Apoi construim un nou tabel în care denumirile celulelor elementelor coloanei generale și ale rândului sunt inversate (x2 și x3);

În colțul de sus al fostului rând și al coloanei generale, sunt scrise valorile care au fost anterior în colțul de jos;

Suma valorilor colțurilor superioare și inferioare ale acestor celule din tabelul anterior este scrisă în colțul superior al celulelor rămase

4. Rezolvarea problemei de programare liniară prin găsirea unei soluții fezabile

Să fie dat un sistem de ecuații algebrice liniare:

Putem presupune că totul, altfel înmulțim ecuația corespunzătoare cu -1.

Introducem variabile auxiliare:

Introducem și o funcție auxiliară

Vom minimiza sistemul sub constrângeri (2) și condiții.

REGULĂ PENTRU GĂSIREA O SOLUȚIE FEZIZĂ: Pentru a găsi o soluție fezabilă pentru sistemul (1), minimizăm forma (3) sub constrângerile (2), ca necunoscute libere luăm xj drept cele de bază.

Când rezolvați o problemă prin metoda simplex, pot apărea două cazuri:

min f=0, atunci tot i trebuie să fie egal cu zero. Și valorile rezultate xj vor fi o soluție fezabilă pentru sistemul (1).

min f>0, adică sistemul original nu are o soluție fezabilă.

Sistem sursă:

Se folosește condiția problemei subiectului anterior.

Să adăugăm variabile suplimentare:

Se găsește o soluție admisibilă a problemei inițiale: x1 = 3, x2 = 3, F = -12. Pe baza soluției fezabile obținute, găsim soluția optimă a problemei inițiale folosind metoda simplex. Pentru a face acest lucru, vom construi un nou tabel simplex din tabelul obținut mai sus prin ștergerea rândului și a rândului cu funcția țintă a sarcinii auxiliare:

Analizând tabelul simplex construit, vedem că soluția optimă pentru problema inițială a fost deja găsită (elementele din rândul corespunzătoare funcției obiectiv sunt negative). Astfel, soluția fezabilă găsită la rezolvarea problemei auxiliare coincide cu soluția optimă a problemei inițiale:

6. Problema duală a programării liniare

Sistemul inițial de constrângeri și funcția obiectivă a problemei sunt prezentate în figura de mai jos.

cu restrictii:

Soluție: Aducem sistemul de restricții la forma standard:

Sarcina dublă cu aceasta va arăta astfel:

Problema duală va fi rezolvată prin metoda simplex.

Să transformăm funcția obiectiv astfel încât problema de minimizare să fie rezolvată și să notăm sistemul de constrângeri în forma standard pentru rezolvarea prin metoda simplex.

y6 = 1 - (-2 y1 + 2y2 +y3 + y4+ y5)

y7 = 5 - (-3y1 - y2 + y3 + y4)

Ф = 0 - (3y1 + 9y2 + 3y3 + y4) ??min

Să construim tabloul simplex inițial pentru rezolvarea problemei LP duale.

Al doilea pas al metodei simplex

Deci, la a treia etapă a metodei simplex s-a găsit soluția optimă a problemei de minimizare cu următoarele rezultate: y2 = -7 /8, y1 = -11/8, Ф = 12. Pentru a afla valoarea lui funcția obiectivă a problemei duale, substituim valorile găsite ale variabilelor de bază și libere în funcția de maximizare:

Фmax = - Фmin = 3*(-11/8) + 9(-7/8) + 3*0 + 0 = -12

Deoarece valoarea funcției obiective a problemelor directe și duale este aceeași, se găsește soluția problemei directe și este egală cu 12.

Fmin \u003d Fmax \u003d -12

7. Rezolvarea problemei programării liniare întregi folosind metoda „ramurilor și limitelor”.

Să transformăm problema inițială în așa fel încât condiția întregului să nu fie satisfăcută atunci când rezolvăm prin metode convenționale.

Poligonul inițial de soluții la o problemă de programare cu numere întregi.

Să construim un nou sistem de constrângeri pentru poligonul soluție transformat.

Notăm sistemul de constrângeri sub formă de egalități, pentru rezolvare prin metoda algebrică.

Ca urmare a soluției, a fost găsit planul optim de sarcini: x1 = 9/4, x2 = 5/2, F = -41/4. Această soluție nu îndeplinește condiția de integralitate stabilită în problemă. Împărțim poligonul soluției inițiale în două regiuni, excluzând regiunea 3 din acesta

Schimbat poligonul soluțiilor problemei

Să compunem noi sisteme de restricții pentru regiunile formate ale poligonului soluție. Zona din stânga este un patrulater (trapez). Sistemul de constrângeri pentru regiunea din stânga a poligonului soluție este prezentat mai jos.

Sistem de restricție pentru regiunea stângă

Regiunea dreaptă reprezintă punctul C.

Sistemul de constrângeri pentru zona de decizie corectă este prezentat mai jos.

Noile sisteme de constrângeri sunt două probleme subsidiare care trebuie rezolvate independent una de cealaltă. Să rezolvăm problema programării întregi pentru regiunea din stânga a poligonului soluție.

Ca rezultat al soluției, a fost găsit planul optim de sarcini: x1 = 3, x2 = 3, F = -12. Acest plan satisface condiția variabilelor întregi din problemă și poate fi luat ca plan de referință optim pentru problema originală de programare liniară întregă. Nu are sens să se realizeze soluția pentru regiunea de soluție potrivită. Figura de mai jos arată progresul rezolvării unei probleme de programare liniară cu numere întregi sub forma unui arbore.

Cursul de rezolvare a unei probleme de programare liniară întregă prin metoda Gomory.

În multe aplicații practice, problema programării întregi este de mare interes, în care sunt date un sistem de inegalități liniare și o formă liniară.

Este necesară găsirea unei soluții întregi a sistemului (1) care minimizează funcția obiectiv F, iar toți coeficienții sunt numere întregi.

Una dintre metodele de rezolvare a problemei de programare cu numere întregi a fost propusă de Gomory. Ideea metodei este de a folosi metode de programare liniară continuă, în special metoda simplex.

1) Folosind metoda simplex se determină soluția problemei (1), (2), pentru care se elimină cerința ca soluția să fie întreagă; dacă soluția se dovedește a fi întreagă, atunci se va găsi și soluția dorită pentru problema întregului;

2) În caz contrar, dacă o coordonată nu este un număr întreg, se verifică soluția obținută a problemei pentru posibilitatea existenței unei soluții întregi (prezența punctelor întregi într-un poliedru admis):

dacă în orice linie cu un membru liber fracționar, toți ceilalți coeficienți se dovedesc a fi numere întregi, atunci nu există numere întregi, puncte într-un poliedru admisibil, iar problema programării întregilor nu are soluție;

În caz contrar, se introduce o constrângere liniară suplimentară, care decupează din poliedrul admisibil o parte care nu este promițătoare pentru găsirea unei soluții la o problemă de programare cu numere întregi;

3) Pentru a construi o constrângere liniară suplimentară, selectați al-lea rând cu un membru liber fracțional și notați constrângerea suplimentară

unde și sunt, respectiv, părțile fracționale ale coeficienților și libere

membru. Să introducem o variabilă auxiliară în constrângerea (3):

Să determinăm coeficienții și incluși în constrângerea (4):

unde și sunt cele mai apropiate numere întregi inferioare pentru și, respectiv.

Gomory a demonstrat că un număr finit de astfel de pași duce la o problemă de programare liniară a cărei soluție este întreagă și, prin urmare, cea dorită.

Soluție: Reducem sistemul de constrângeri liniare și funcția scop la forma canonică:

Să determinăm soluția optimă a sistemului de constrângeri liniare, eliminând temporar condiția întregului. Folosim metoda simplex pentru aceasta. Tabelele de mai jos prezintă succesiv soluția inițială a problemei, iar transformările tabelului inițial sunt date pentru a obține soluția optimă a problemei:

Rezolvarea problemelor booleene LP prin metoda Balash.

Compuneți propria variantă pentru problema programării liniare întregi cu variabile booleene, ținând cont de următoarele reguli: problema folosește cel puțin 5 variabile, cel puțin 4 constrângeri, coeficienții de constrângere și funcția obiectiv sunt alese arbitrar, dar într-un astfel de modul în care sistemul de constrângeri este compatibil. Sarcina este de a rezolva ZCLP cu variabile booleene folosind algoritmul Balash și de a determina reducerea complexității de calcul în raport cu rezolvarea problemei prin căutare exhaustivă.

Executarea restricțiilor

Valoarea F

Constrângere de filtrare:

Calcul Reducere Determinare

Rezolvarea problemei prin metoda de căutare exhaustivă este 6*25=192 expresii calculate. Rezolvarea problemei prin metoda Balash este 3*6+(25-3)=47 expresii calculate. Reducerea totală a complexității calculelor în raport cu rezolvarea problemei prin metoda de căutare exhaustivă este.

Concluzie

Procesul de proiectare a sistemelor informatice care implementează noi tehnologii informaționale este în mod constant îmbunătățit. Sistemele din ce în ce mai complexe devin în centrul atenției inginerilor de sisteme, ceea ce face dificilă utilizarea modelelor fizice și crește importanța modelelor matematice și a simulării pe computer a sistemelor. Modelarea mașinilor a devenit un instrument eficient pentru cercetarea și proiectarea sistemelor complexe. Relevanța modelelor matematice este în continuă creștere datorită flexibilității lor, adecvării la procesele reale, costurilor reduse de implementare pe baza computerelor moderne. Din ce în ce mai multe oportunități sunt oferite utilizatorului, adică unui specialist în modelarea sistemelor prin intermediul tehnologiei informatice. Utilizarea modelării este eficientă în special în etapele incipiente ale proiectării sistemelor automate, când costul deciziilor eronate este cel mai semnificativ.

Instrumentele de calcul moderne au făcut posibilă creșterea semnificativă a complexității modelelor utilizate în studiul sistemelor, a devenit posibilă construirea de modele combinate, analitice și de simulare care iau în considerare întreaga varietate de factori care au loc în sistemele reale, adică utilizarea unor modele care sunt mai adecvate fenomenelor studiate.

Literatură:

1. Liascenko I.N. Programare liniară și neliniară / I.N. Lyashchenko, E.A. Karagodova, N.V. Chernikova, N.Z. Shor. - K .: „Școala superioară”, 1975, 372 p.

2. Orientări pentru implementarea proiectului de curs la disciplina „Matematică aplicată” pentru studenții specialității „Sisteme și rețele informatice” forme de învățământ cu frecvență și frecvență redusă / Alcătuit de: I.A. Balakireva, A.V. Skatkov - Sevastopol: Editura SevNTU , 2003. - 15 p.

3. Orientări pentru studiul disciplinei „Matematică aplicată”, secțiunea „Metode de căutare globală și minimizare unidimensională” / Comp. A.V. Skatkov, I.A. Balakireva, L.A. Litvinova - Sevastopol: Editura SevGTU, 2000. - 31s.

4. Orientări pentru studierea disciplinei „Matematică aplicată” pentru studenții specialității „Sisteme și rețele de calcul” Secțiunea „Rezolvarea problemelor de programare liniară întregi” a formelor de învățământ cu frecvență și corespondență / Alcătuit de: I.A. Balakireva, A.V. Skatkov - Sevastopol : Editura SevNTU, 2000. - 13 p.

5. Akulich I.L. Programare matematică în exemple și sarcini:

6. Proc. indemnizatie pentru economie studenteasca. specialist. universități.-M.: Mai înaltă. scoala, 1986.- 319s., ill.

7. Andronov S.A. Metode optime de proiectare: Textul cursului / SPbGUAP. SPb., 2001. 169 p.: ill.

Documente similare

    Algoritm pentru rezolvarea problemelor de programare liniară prin metoda simplex. Construirea unui model matematic al unei probleme de programare liniară. Rezolvarea unei probleme de programare liniară în Excel. Găsirea profitului și a planului optim de producție.

    lucrare de termen, adăugată 21.03.2012

    Rezolvarea grafică a problemelor. Întocmirea unui model matematic. Determinarea valorii maxime a funcţiei obiectiv. Rezolvarea printr-o metodă simplex cu o bază artificială a unei probleme de programare liniară canonică. Verificarea optimității soluției.

    test, adaugat 04.05.2016

    Bazele teoretice ale programării liniare. Probleme de programare liniara, metode de rezolvare. Analiza soluției optime. Rezolvarea unei probleme de programare liniară cu un singur indice. Declarația problemei și introducerea datelor. Construirea modelului și etapele soluției.

    lucrare de termen, adăugată 12/09/2008

    Construirea unui model matematic. Selectarea, justificarea și descrierea metodei de rezolvare a problemei directe a programării liniare prin metoda simplex, folosind un tabel simplex. Formularea și rezolvarea unei probleme duale. Analiza modelului pentru sensibilitate.

    lucrare de termen, adăugată 31.10.2014

    Construirea unui model matematic pentru a maximiza profitul întreprinderii, o soluție grafică a problemei. Rezolvarea problemelor folosind suplimentul SOLVER. Analiza modificărilor rezervelor de resurse. Determinarea limitelor de modificare a coeficienților funcției obiectiv.

    lucrare de termen, adăugată 17.12.2014

    Programare matematică. Programare liniară. Probleme de programare liniară. Metodă grafică pentru rezolvarea unei probleme de programare liniară. Formularea economică a problemei programării liniare. Construirea unui model matematic.

    lucrare de termen, adăugată 13.10.2008

    Rezolvarea unei probleme de programare liniară printr-o metodă grafică, verificarea acesteia în MS Excel. Analiza structurii interne a soluției problemei în program. Optimizarea planului de productie. Rezolvarea problemei prin metoda simplex. Sistem de așteptare multicanal.

    test, adaugat 05.02.2012

    Rezolvarea problemei programării liniare prin metoda simplex: stabilirea problemei, construirea unui model economic și matematic. Rezolvarea problemei transportului prin metoda potenţialelor: construirea planului de referinţă iniţial, determinarea valorii optime a acestuia.

    test, adaugat 04.11.2012

    Enunțarea problemei programării neliniare. Determinarea punctelor staţionare şi tipul acestora. Construcția liniilor de nivel, un grafic tridimensional al funcției obiectiv și restricții. Rezolvarea grafică și analitică a problemei. Manual de utilizare și schema de algoritm.

    lucrare de termen, adăugată 17.12.2012

    Analiza soluției unei probleme de programare liniară. Metoda simplex folosind tabele simplex. Modelarea și rezolvarea problemelor LP pe calculator. Interpretarea economică a soluției optime a problemei. Formularea matematică a problemei transportului.

Dacă există doar două variabile într-o problemă de programare liniară, atunci aceasta poate fi rezolvată grafic.

Luați în considerare o problemă de programare liniară cu două variabile și:
(1.1) ;
(1.2)
Aici sunt numere arbitrare. Sarcina poate fi atât găsirea maximului (max), cât și găsirea minimului (min). În sistemul de restricții pot fi prezente atât semne, cât și semne.

Construirea domeniului soluțiilor fezabile

Metoda grafică de rezolvare a problemei (1) este următoarea.
Mai întâi, desenăm axele de coordonate și selectăm scara. Fiecare dintre inegalitățile sistemului de constrângeri (1.2) definește un semiplan mărginit de dreapta corespunzătoare.

Deci prima inegalitate
(1.2.1)
definește un semiplan mărginit de o dreaptă. Pe o parte a acestei linii și pe cealaltă parte. Pe linia cea mai dreaptă. Pentru a afla din ce parte este satisfăcută inegalitatea (1.2.1), alegem un punct arbitrar care nu se află pe linie. În continuare, înlocuim coordonatele acestui punct în (1.2.1). Dacă inegalitatea este valabilă, atunci semiplanul conține punctul ales. Dacă inegalitatea nu este satisfăcută, atunci semiplanul este situat pe cealaltă parte (nu conține punctul selectat). Umbrim semiplanul pentru care inegalitatea (1.2.1) este satisfăcută.

Facem același lucru pentru inegalitățile rămase ale sistemului (1.2). Așa că obținem semiplanurile umbrite. Punctele domeniului soluțiilor admisibile satisfac toate inegalitățile (1.2). Prin urmare, grafic, aria soluțiilor fezabile (ODD) este intersecția tuturor semiplanurilor construite. Umbrim ODR. Este un poligon convex ale cărui fețe aparțin dreptelor construite. De asemenea, ODR poate fi o figură convexă nelimitată, un segment, o rază sau o linie dreaptă.

Poate apărea și cazul în care semiplanurile nu conțin puncte comune. Atunci domeniul soluțiilor admisibile este mulțimea goală. Această problemă nu are soluții.

Puteți simplifica metoda. Nu puteți umbri fiecare semiplan, dar mai întâi construiți toate liniile
(2)
Apoi, alegeți un punct arbitrar care nu aparține niciuna dintre aceste linii. Înlocuiți coordonatele acestui punct în sistemul de inegalități (1.2). Dacă toate inegalitățile sunt satisfăcute, atunci aria soluțiilor fezabile este limitată de liniile construite și include punctul ales. Umbrim zona soluțiilor admisibile de-a lungul limitelor liniilor, astfel încât să includă punctul selectat.

Dacă cel puțin o inegalitate nu este satisfăcută, atunci alegeți un alt punct. Și așa mai departe, până când se găsește un punct, ale cărui coordonate satisfac sistemul (1.2).

Găsirea extremului funcției obiectiv

Deci, avem o zonă umbrită de soluții fezabile (ODD). Este delimitată de o linie întreruptă formată din segmente și raze aparținând liniilor construite (2). ODR este întotdeauna o mulțime convexă. Poate fi fie o mulțime mărginită, fie o mulțime nemărginită de-a lungul unor direcții.

Acum putem căuta extremul funcției obiectiv
(1.1) .

Pentru a face acest lucru, alegeți orice număr și construiți o linie dreaptă
(3) .
Pentru comoditatea unei prezentări ulterioare, presupunem că această linie dreaptă trece prin ODS. Pe această linie dreaptă, funcția obiectiv este constantă și egală cu . o astfel de linie dreaptă se numește linie de nivel a funcției. Această linie împarte planul în două semiplane. Într-o jumătate de avion
.
Pe cealaltă jumătate de avion
.
Adică pe o parte a dreptei (3), funcția obiectiv crește. Și cu cât îndepărtăm punctul de linia (3), cu atât valoarea va fi mai mare. Pe cealaltă parte a dreptei (3), funcția obiectiv scade. Și cu cât îndepărtăm punctul de la linia (3) pe cealaltă parte, cu atât valoarea va fi mai mică. Dacă trasăm o linie paralelă cu linia (3), atunci noua linie va fi și linia de nivel al funcției obiectiv, dar cu o valoare diferită .

Astfel, pentru a găsi valoarea maximă a funcției obiectiv, este necesar să se tragă o linie dreaptă paralelă cu linia dreaptă (3), cât mai departe posibil de aceasta în direcția creșterii valorilor lui , și care trece prin cel puțin un punct al ODT. Pentru a găsi valoarea minimă a funcției obiectiv, este necesar să se tragă o linie dreaptă paralelă cu linia dreaptă (3) și pe cât posibil de aceasta în direcția descrescătoare a valorilor , și care trece prin cel puțin un punct a ODT-ului.

Dacă ODE este nemărginită, atunci poate apărea un caz când o astfel de linie dreaptă nu poate fi trasă. Adică, indiferent de modul în care scoatem linia dreaptă de pe linia de nivel (3) în direcția creșterii (scăderii), linia dreaptă va trece întotdeauna prin ODR. În acest caz, poate fi în mod arbitrar mare (mic). Prin urmare, nu există o valoare maximă (minimă). Problema nu are soluții.

Luați în considerare cazul când linia extremă paralelă cu o dreaptă arbitrară de forma (3) trece printr-un vârf al poligonului ODD. Din grafic, determinăm coordonatele acestui vârf. Apoi valoarea maximă (minimă) a funcției obiectiv este determinată de formula:
.
Soluția problemei este
.

Poate exista și un caz când linia dreaptă este paralelă cu una dintre fețele ODD. Apoi linia trece prin două vârfuri ale poligonului ODD. Determinăm coordonatele acestor vârfuri. Pentru a determina valoarea maximă (minimă) a funcției obiectiv, puteți utiliza coordonatele oricăruia dintre aceste vârfuri:
.
Problema are o infinitate de solutii. Soluția este orice punct situat pe segmentul dintre punctele și , inclusiv punctele în sine și .

Un exemplu de rezolvare a unei probleme de programare liniară printr-o metodă grafică

Sarcina

Compania produce rochii de două modele A și B. Se folosesc trei tipuri de țesături. Pentru fabricarea unei rochii model A, sunt necesari 2 m de țesătură de primul tip, 1 m de țesătură de al doilea tip, 2 m de țesătură de al treilea tip. Pentru fabricarea unei rochii de model B, sunt necesari 3 m de țesătură de primul tip, 1 m de țesătură de al doilea tip, 2 m de țesătură de al treilea tip. Stocurile de țesături de primul tip sunt de 21 m, al doilea tip - 10 m, al treilea tip - 16 m. Eliberarea unui produs de tip A aduce un venit de 400 den. unitate, un produs de tip B - 300 den. unitati

Întocmește un plan de producție care să ofere companiei cele mai mari venituri. Rezolvați problema grafic.

Soluţie

Fie variabilele și notăm numărul de rochii produse ale modelelor A și, respectiv, B. Apoi, cantitatea de țesut folosită de primul tip va fi:
(m)
Cantitatea de material folosită de al doilea tip va fi:
(m)
Cantitatea de material folosită de al treilea tip va fi:
(m)
Întrucât numărul de rochii produse nu poate fi negativ, atunci
și .
Veniturile din rochiile produse vor fi:
(unități den.)

Atunci modelul economico-matematic al problemei are forma:


O rezolvam grafic.
Desenați axele de coordonate și .

Construim o linie dreaptă.
La .
La .
Tragem o linie dreaptă prin punctele (0; 7) și (10.5; 0).

Construim o linie dreaptă.
La .
La .
Tragem o linie dreaptă prin punctele (0; 10) și (10; 0).

Construim o linie dreaptă.
La .
La .
Tragem o linie dreaptă prin punctele (0; 8) și (8; 0).



Umbrim zona astfel încât punctul (2; 2) să cadă în partea umbrită. Obținem patrulaterul OABC.


(P1.1) .
La .
La .
Tragem o linie dreaptă prin punctele (0; 4) și (3; 0).

Mai mult, observăm că, deoarece coeficienții pentru și ai funcției obiectiv sunt pozitivi (400 și 300), atunci crește cu creșterea și . Desenăm o dreaptă paralelă cu dreapta (A1.1), pe cât posibil de aceasta pe direcția creșterii, și care trece prin cel puțin un punct al patrulaterului OABC. O astfel de dreaptă trece prin punctul C. Din construcție, determinăm coordonatele acesteia.
.

Rezolvarea problemei: ;

Răspuns

.
Adică pentru a obține cel mai mare venit, este necesar să faceți 8 rochii model A. Venitul în acest caz va fi de 3200 den. unitati

Exemplul 2

Sarcina

Rezolvați o problemă de programare liniară folosind o metodă grafică.

Soluţie

O rezolvam grafic.
Desenați axele de coordonate și .

Construim o linie dreaptă.
La .
La .
Tragem o linie dreaptă prin punctele (0; 6) și (6; 0).

Construim o linie dreaptă.
De aici.
La .
La .
Tragem o linie dreaptă prin punctele (3; 0) și (7; 2).

Construim o linie dreaptă.
Construim o linie dreaptă (axa absciselor).

Domeniul soluțiilor admisibile (DDR) este limitat de liniile drepte construite. Pentru a afla din ce parte, observăm că punctul aparține ODT-ului, deoarece satisface sistemul de inegalități:

Umbrim zona de-a lungul limitelor liniilor construite, astfel încât punctul (4; 1) să cadă în partea umbrită. Obținem triunghiul ABC.

Construim o linie de nivel arbitrară a funcției obiectiv, de exemplu,
.
La .
La .
Tragem o linie dreaptă de nivel prin punctele (0; 6) și (4; 0).
Deoarece funcția obiectiv crește odată cu creșterea și , trasăm o dreaptă paralelă cu linia de nivel și pe cât posibil de aceasta în direcția creșterii , și care trece prin cel puțin un punct al triunghiului ABC. O astfel de dreaptă trece prin punctul C. Din construcție, determinăm coordonatele acesteia.
.

Rezolvarea problemei: ;

Răspuns

Exemplu fără soluție

Sarcina

Rezolvați grafic problema programării liniare. Aflați valoarea maximă și minimă a funcției obiectiv.

Soluţie

Rezolvăm problema grafic.
Desenați axele de coordonate și .

Construim o linie dreaptă.
La .
La .
Tragem o linie dreaptă prin punctele (0; 8) și (2.667; 0).

Construim o linie dreaptă.
La .
La .
Tragem o linie dreaptă prin punctele (0; 3) și (6; 0).

Construim o linie dreaptă.
La .
La .
Tragem o linie dreaptă prin punctele (3; 0) și (6; 3).

Liniile și sunt axele de coordonate.

Domeniul soluțiilor admisibile (SDR) este limitat de liniile drepte construite și axele de coordonate. Pentru a afla din ce parte, observăm că punctul aparține ODT-ului, deoarece satisface sistemul de inegalități:

Umbrim zona astfel încât punctul (3; 3) să cadă în partea umbrită. Obținem o zonă nelimitată delimitată de linia întreruptă ABCDE.

Construim o linie de nivel arbitrară a funcției obiectiv, de exemplu,
(P3.1) .
La .
La .
Tragem o linie dreaptă prin punctele (0; 7) și (7; 0).
Deoarece coeficienții la și sunt pozitivi, atunci crește cu creșterea și .

Pentru a găsi maximul, trebuie să trasați o linie paralelă, pe cât posibil în direcția creșterii, și care trece prin cel puțin un punct al regiunii ABCDE. Cu toate acestea, deoarece regiunea este nelimitată pe partea valorilor mari ale și , o astfel de linie dreaptă nu poate fi trasă. Indiferent de linia dreaptă am trasă, vor exista întotdeauna puncte în regiune care sunt mai îndepărtate în direcția creșterii și . Prin urmare, nu există maxim. o poti face cat de mare vrei.

Căutăm minim. Tragem o linie dreaptă paralelă cu linia dreaptă (A3.1) și pe cât posibil de aceasta în direcția descrescătoare și trecând prin cel puțin un punct al regiunii ABCDE. O astfel de dreaptă trece prin punctul C. Din construcție, determinăm coordonatele acesteia.
.
Valoarea minimă a funcției obiectiv:

Răspuns

Nu există o valoare maximă.
Valoarea minima
.

Agenția Federală pentru Educație

Instituție de învățământ de la bugetul de stat

studii profesionale superioare

„Universitatea Tehnică de Stat din Omsk”

CALCUL SI LUCRARE GRAFICA

prin disciplina"TEORIA CONTROLULUI OPTIM »

pe subiect "METODE DE OPTIMIZARE ȘI CERCETARE OPERAȚIONALĂ »

varianta 7

Efectuat:

student prin corespondență

Grupa de anul 4 ZA-419

Nume: Kuzhelev S.A.

Verificat:

Devyaterikova M.V.

Omsk - 2012
^

Sarcina 1. Metodă grafică de rezolvare a problemelor de programare liniară.


7) 7X 1 + 6X 2 → max

20X 1 + 6X 2 ≤ 15

16X 1 − 2X 2 ≤ 18

8X 1 + 4X 2 ≤ 20

13X 1 + 3X 2 ≤ 4

X 1 , X 2 ≥ 0.


Pasul 1. Construirea unei zone valide

Condițiile de nenegativitate a variabilelor și pătratelor limitează intervalul valorilor lor admisibile la primul cadran. Fiecare dintre celelalte patru constrângeri-inegalități ale modelului corespunde unui semiplan. Intersecția acestor semiplane cu primul cadran formează setul de soluții fezabile ale problemei.

Prima constrângere a modelului este . Înlocuind semnul ≤ din el cu semnul =, obținem ecuația . Pe fig. 1.1 definește o linie (1) care împarte planul în două semiplane, în acest caz deasupra și sub linie. Pentru a alege care dintre ele satisface inegalitatea , substituim în el coordonatele oricărui punct care nu se află pe linia dată (de exemplu, originea X 1 = 0, X 2 = 0). Deoarece obținem expresia corectă (20 0 + 6 0 = 0 ≤15), semiplanul care conține originea (marcat cu o săgeată) satisface inegalitatea. Altfel, un alt semiplan.

Procedăm în mod similar cu restul constrângerilor problemei. Intersecția tuturor semiplanurilor construite cu primul cadran se formează ABCD(vezi fig. 1). Acesta este scopul valid al sarcinii.

Pasul 2. Construirea unei linii de nivel Linie de nivel funcția obiectiv este un set de puncte din plan în care funcția obiectiv ia o valoare constantă. O astfel de mulțime este dată de ecuație f ( X) = const. Să punem, de exemplu, const = 0 și trageți o linie la nivel f ( X) = 0 , adică în cazul nostru, direct 7 X 1 + 6X 2 = 0.

Această dreaptă trece prin origine și este perpendiculară pe vector. Acest vector este gradientul funcției obiectiv la (0,0). Gradientul unei funcții este un vector de valori ale derivatelor parțiale ale unei anumite funcții în punctul în cauză. În cazul problemei LP, derivatele parțiale ale funcției obiectiv sunt egale cu coeficienții Ceu, j = 1 , ..., n.

Gradientul arată direcția celei mai rapide creșteri a funcției. Mutarea liniei de nivel al funcției obiectiv f ( X) = const. perpendicular pe direcția gradientului, găsiți ultimul punct în care se intersectează cu zona. În cazul nostru, acesta este punctul D, care va fi punctul maxim al funcției obiectiv (vezi Fig. 2)

Se află la intersecția liniilor (2) și (3) (vezi Fig. 1) și stabilește soluția optimă.

^ Rețineți că dacă este necesară găsirea valorii minime a funcției obiectiv, linia de nivel este deplasată în direcția opusă direcției gradientului.

^ Pasul 3. Determinarea coordonatelor punctului maxim (minim) și a valorii optime a funcției obiectiv

Pentru a găsi coordonatele punctului C, este necesar să se rezolve un sistem format din ecuațiile directe corespunzătoare (în acest caz, din ecuațiile 2 și 3):

16X 1 − 2X 2 ≤ 18

8X 1 + 4X 2 ≤ 20

Se obține soluția optimă = 1,33.

^ Valoarea optimă a funcției obiectiv f * = f (X*) = 7 * 0 + 6 * 1,33 = 7,8

CATEGORII

ARTICOLE POPULARE

2022 "kingad.ru" - examinarea cu ultrasunete a organelor umane