Pagkalkula ng maximum at minimum ng layunin ng function sa pamamagitan ng graph-analytical na pamamaraan. Pagpapasiya ng pinakamainam na hanay ng parametric ng mga produkto upang matugunan ang isang partikular na pangangailangan

Hinahati namin ang ikatlong hilera ng pangunahing elemento na katumbas ng 5, nakuha namin ang ikatlong hilera ng bagong talahanayan.

Ang mga base na column ay tumutugma sa mga solong column.

Pagkalkula ng natitirang mga halaga ng talahanayan:

"BP - Pangunahing Plano":

; ;

"x1": ; ;

"x5": ; .

Ang mga halaga ng hilera ng index ay hindi negatibo, samakatuwid makuha namin ang pinakamainam na solusyon: , ; .

Sagot: ang pinakamataas na kita mula sa pagbebenta ng mga produktong gawa, katumbas ng 160/3 na mga yunit, ay sinisiguro sa pamamagitan ng pagpapalabas ng mga produkto lamang ng pangalawang uri sa halagang 80/9 na mga yunit.


Gawain bilang 2

Ang problema ng nonlinear programming ay ibinigay. Hanapin ang maximum at minimum ng layunin ng function gamit ang isang graph-analytical na pamamaraan. Buuin ang Lagrange function at ipakita na ang sapat na minimum (maximum) na mga kondisyon ay nasiyahan sa mga extremum point.

kasi ang huling digit ng cipher ay 8, pagkatapos ay A=2; B=5.

kasi ang penultimate digit ng cipher ay 1, pagkatapos ay dapat mong piliin ang numero ng gawain 1.

Desisyon:

1) Iguhit natin ang lugar na tinutukoy ng sistema ng hindi pagkakapantay-pantay.


Ang lugar na ito ay isang tatsulok na ABC na may mga coordinate ng vertices: A(0; 2); B(4; 6) at C(16/3; 14/3).

Ang mga antas ng layunin ng function ay mga bilog na nakasentro sa punto (2; 5). Ang mga parisukat ng radii ay ang mga halaga ng layunin ng function. Pagkatapos ay ipinapakita ng figure na ang pinakamababang halaga ng layunin ng function ay naabot sa punto H, ang pinakamataas na halaga ay alinman sa punto A o sa punto C.

Ang halaga ng layunin ng function sa punto A: ;

Ang halaga ng layunin ng function sa punto C: ;

Nangangahulugan ito na ang pinakamataas na halaga ng function ay naabot sa puntong A(0; 2) at katumbas ng 13.

Hanapin natin ang mga coordinate ng punto H.

Upang gawin ito, isaalang-alang ang system:

ó

ó

Ang isang linya ay padaplis sa isang bilog kung ang equation ay may natatanging solusyon. Ang isang quadratic equation ay may natatanging solusyon kung ang discriminant ay 0.


Pagkatapos ; ; - ang pinakamababang halaga ng function.

2) Bumuo ng Lagrange function upang mahanap ang pinakamababang solusyon:

Sa x 1 =2.5; x 2 =4.5 makuha namin:

ó

Ang sistema ay may solusyon para sa , ibig sabihin. nasiyahan ang sapat na matinding kondisyon.

Binubuo namin ang Lagrange function para sa paghahanap ng maximum na solusyon:

Sapat na mga kondisyon para sa isang extremum:

Sa x 1 =0; x 2 =2 makuha namin:

ó ó

Ang sistema ay mayroon ding solusyon, i.e. nasiyahan ang sapat na matinding kondisyon.

Sagot: ang minimum ng layunin ng function ay naabot sa ; ; ang pinakamataas na layunin function ay naabot kapag ; .


Gawain bilang 3

Dalawang negosyo ang inilalaan ng pondo sa halaga d mga yunit. Kapag inilaan sa unang enterprise para sa isang taon x mga yunit ng pondo na nagbibigay ng kita k 1 x mga yunit, at kapag inilalaan sa pangalawang negosyo y mga yunit ng pondo, nagbibigay ito ng kita k 1 y mga yunit. Ang balanse ng mga pondo sa katapusan ng taon para sa unang negosyo ay katumbas ng nx, at para sa pangalawa ang aking. Paano ipamahagi ang lahat ng pondo sa loob ng 4 na taon upang ang kabuuang kita ay ang pinakamalaking? Lutasin ang problema sa pamamagitan ng dynamic na programming.

i=8, k=1.

A=2200; k 1 =6; k2=1; n=0.2; m=0.5.

Desisyon:

Ang buong panahon ng 4 na taon ay nahahati sa 4 na yugto, ang bawat isa ay katumbas ng isang taon. Bilangin natin ang mga yugto simula sa unang taon. Hayaang X k at Y k ang mga pondong inilaan ayon sa pagkakabanggit sa mga negosyo A at B sa k-th stage. Pagkatapos ang kabuuan X k + Y k =a k ay ang kabuuang halaga ng mga pondong ginamit sa k - na yugto at natitira mula sa nakaraang yugto k - 1. sa unang yugto lahat ng inilalaang pondo ay ginagamit at isang 1 =2200 na yunit. ang kita na matatanggap sa k - yugtong iyon, kapag ang X k at Y k units ay inilaan, ay magiging 6X k + 1Y k . hayaan ang pinakamataas na kita na natanggap sa mga huling yugto simula sa k - ang yugtong iyon ay f k (a k) na mga yunit. Isulat natin ang Bellman functional equation na nagpapahayag ng prinsipyo ng optimality: anuman ang paunang estado at ang paunang solusyon, ang kasunod na solusyon ay dapat na pinakamainam na may paggalang sa estado na nakuha bilang resulta ng paunang estado:

Para sa bawat yugto, kailangan mong piliin ang halaga X k , at ang halaga Y k=ak- Xk. Sa pag-iisip na ito, makakahanap tayo ng kita sa k-th stage:

Ang functional na Bellman equation ay magiging ganito:

Isaalang-alang ang lahat ng mga yugto, simula sa huli.

(dahil ang maximum ng linear function ay naabot sa dulo ng segment sa x 4 = a 4);

Pederal na Ahensya para sa Edukasyon

Institusyon ng edukasyon sa badyet ng estado

mas mataas na propesyonal na edukasyon

"Omsk State Technical University"

PAGKUKULALA AT GRAPHIC WORK

sa pamamagitan ng disiplina"OPTIMAL CONTROL THEORY »

Naaayon sa paksa "MGA PARAAN NG OPTIMISATION AT PANANALIKSIK SA OPERASYON »

opsyon 7

Nakumpleto:

mag-aaral ng sulat

4th year group na ZA-419

Pangalan: Kuzhelev S. A.

Sinuri:

Devyaterikova M.V.

Omsk - 2012
^

Gawain 1. Graphical na paraan para sa paglutas ng mga problema sa linear programming.


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.


Hakbang 1. Pagbuo ng wastong lugar

Ang mga kondisyon ng di-negatibiti ng mga variable at parisukat ay nililimitahan ang saklaw ng kanilang mga tinatanggap na halaga sa unang kuwadrante. Ang bawat isa sa natitirang apat na mga hadlang-hindi pagkakapantay-pantay ng modelo ay tumutugma sa ilang kalahating eroplano. Ang intersection ng mga kalahating eroplano na ito sa unang kuwadrante ay bumubuo ng hanay ng mga magagawang solusyon sa problema.

Ang unang hadlang ng modelo ay . Ang pagpapalit ng sign ≤ sa loob nito ng sign =, makuha namin ang equation . Sa fig. 1.1 ito ay tumutukoy sa isang linya (1) na naghahati sa eroplano sa dalawang kalahating eroplano, sa kasong ito sa itaas at sa ibaba ng linya. Upang piliin kung alin ang makakatugon sa hindi pagkakapantay-pantay , pinapalitan namin dito ang mga coordinate ng anumang punto na hindi namamalagi sa ibinigay na linya (halimbawa, ang pinagmulan X 1 = 0, X 2 = 0). Dahil nakuha natin ang tamang expression (20 0 + 6 0 = 0 ≤15), ang kalahating eroplanong naglalaman ng pinanggalingan (minarkahan ng arrow) ay nakakatugon sa hindi pagkakapantay-pantay. Kung hindi, isa pang kalahating eroplano.

Nagpapatuloy kami nang katulad sa natitirang mga hadlang ng problema. Ang intersection ng lahat ng constructed half-planes na may unang quadrant forms A B C D(tingnan ang fig. 1). Ito ang wastong saklaw ng gawain.

Hakbang 2. Pagbuo ng level line Level line layunin function ay isang hanay ng mga punto sa eroplano kung saan ang layunin function ay tumatagal ng isang pare-pareho ang halaga. Ang nasabing set ay ibinibigay ng equation f ( x) = const. Ilagay natin, halimbawa, const = 0 at gumuhit ng linya sa antas f ( x) = 0 , ibig sabihin. sa aming kaso, direktang 7 x 1 + 6x 2 = 0.

Ang linyang ito ay dumadaan sa pinanggalingan at patayo sa vector. Ang vector na ito ay ang layunin ng gradient ng function sa (0,0). Ang gradient ng isang function ay isang vector ng mga halaga ng mga partial derivatives ng isang ibinigay na function sa puntong pinag-uusapan. Sa kaso ng problema sa LP, ang mga partial derivatives ng layunin function ay katumbas ng mga coefficient. Cako, j = 1 , ..., n.

Ipinapakita ng gradient ang direksyon ng pinakamabilis na paglaki ng function. Paglipat ng linya ng antas ng layunin ng function f ( x) = const. patayo sa direksyon ng gradient, hanapin ang huling punto kung saan ito nagsa-intersect sa lugar. Sa aming kaso, ito ang punto D, na magiging pinakamataas na punto ng layunin ng function (tingnan ang Fig. 2)

Ito ay nasa intersection ng mga linya (2) at (3) (tingnan ang Fig. 1) at itinatakda ang pinakamainam na solusyon.

^ Tandaan na kung nais mong mahanap ang pinakamababang halaga ng layunin ng function, ang linya ng antas ay inilipat sa direksyon na kabaligtaran sa direksyon ng gradient.

^ Hakbang 3. Pagtukoy sa mga coordinate ng maximum (minimum) point at ang pinakamainam na halaga ng layunin ng function

Upang mahanap ang mga coordinate ng point C, kinakailangan upang malutas ang isang sistema na binubuo ng kaukulang mga direktang equation (sa kasong ito, mula sa mga equation 2 at 3):

16x 1 − 2x 2 ≤ 18

8x 1 + 4x 2 ≤ 20

Nakukuha namin ang pinakamainam na solusyon = 1.33.

^ Ang pinakamainam na halaga ng layunin ng function f * = f (X*) = 7 * 0 + 6 * 1,33 = 7,8

Desisyon: hanapin ang maximum at minimum na halaga ng function \(f (x, y)\) sa ilalim ng mga sumusunod na limitasyon $$ f(x,y)=(x-4)^2 + (y-3)^2 \rightarrow max,min \ \ \begin(cases) 2x+3y\geq 6 \\ 3x-2y\leq 18\\ -x+2y\leq 8\\ x,y\geq0\end(cases) $$
Maipapayo na gamitin ang graphical na paraan ng paglutas ng problema para sa mga problema sa dalawang variable na nakasulat sa isang simetriko na anyo, pati na rin para sa mga problema sa maraming mga variable, sa kondisyon na ang kanilang canonical notation ay naglalaman ng hindi hihigit sa dalawang libreng variable.


Sa kasong ito, isang gawain na may dalawang variable.


Algorithm para sa paglutas ng problemang "geometric interpretation ng isang linear programming problem":


1. Buuin natin ang domain ng mga tinatanggap na solusyon sa xOy plane.
2. Piliin ang lugar ng mga di-negatibong solusyon.

4. Bumuo tayo ng isang pamilya ng mga layunin na pag-andar.
5. Hanapin ang maximum (minimum) na halaga ng layunin ng function.


1. Binubuo namin ang domain ng mga tinatanggap na solusyon ng problema \(D\).


Upang bumuo ng lugar ng mga magagawang solusyon:
1) Bumubuo kami ng mga linya ng hangganan:
binabago namin ang mga hindi pagkakapantay-pantay sa mga pagkakapantay-pantay, at pagkatapos ay sa equation ng isang tuwid na linya sa mga segment sa mga axes ng form na \(\frac(x)(a)+\frac(y)(b) = 1\), pagkatapos ay \ (x=a\) ay isang segment na pinutol sa Ox axis, \(y=b\) - sa Oy axis $$ \begin(cases) 2x+3y = 6 \\ 3x-2y = 18\\ - x+2y = 8 \end(cases) => \begin(cases) \frac(x)(3)+\frac(y)(2) = 1 \\ \frac(x)(8)-\frac( y)(9) = 1 \\ -\frac (x)(6)+ \frac(y)(4) = 1 \end(cases) $$ Para sa bawat linya, magtabi ng mga segment sa mga axes at ikonekta ang mga ito. Nakuha namin ang tamang mga linya.


2) Nakahanap kami ng mga kalahating eroplano na nakakatugon sa mga ibinigay na hindi pagkakapantay-pantay:
Para sa hindi pagkakapantay-pantay \(2x+3y\geq 6\) ay ang kalahating eroplano na nasa itaas ng linyang \(2x+3y = 6\). Direktang AC
Para sa hindi pagkakapantay-pantay \(3x-2y\leq 18 => -3x+2y \geq -18\) ay isang kalahating eroplano na nasa itaas ng linyang \(3x-2y = 18\). Direktang CB
Para sa hindi pagkakapantay-pantay \(-x+2y\leq 8\) ay ang kalahating eroplano na nasa ibaba ng linyang \(-x+2y = 8\). Direktang AB


Ang domain ng mga magagawang solusyon ay tinukoy bilang ang karaniwang bahagi ng tatlong kalahating eroplano na tumutugma sa mga ibinigay na hindi pagkakapantay-pantay. Ang lugar na ito ay isang tatsulok \(ABC\)


Ang rehiyon \(D\) ay ang tatsulok \(ABC\) tingnan ang fig.



2. Piliin ang lugar ng mga di-negatibong solusyon.


Ang rehiyon ng mga di-negatibong solusyon ay matatagpuan sa unang quarter at isang karaniwang bahagi ng lahat ng limang kalahating eroplano, tatlo sa mga ito ay ang rehiyon \(D\) na nakuha mula sa mga hindi pagkakapantay-pantay at bukod pa rito ay dalawang hindi pagkakapantay-pantay \(x \geq 0\\ ) - ang upper half-plane (I at II quarters) at \(y \geq 0\) - ang kanang half-plane (I at IV quarters), na nagpapahayag ng kondisyon ng non-negatibiti ng mga variable \(x; y\). Nakuha ang nais na lugar ng mga di-negatibong solusyon \(DEBFG\)


3.Hanapin ang mga coordinate ng mga vertices ng rehiyon.
Ang mga coordinate ng apat na vertices ay kilala na (ito ang mga punto ng intersection ng mga linya na may mga axes).
Isulat natin ang mga coordinate na ito:
\(D(0;2)\), \(E(0;4)\), \(F(6;0)\), \(G(3;0)\)
Hanapin ang mga coordinate ng puntong \(B\), bilang mga punto ng intersection ng mga linya \(-x+2y = 8\) at \(3x-2y = 18\). Lutasin ang sistema ng mga equation at hanapin ang mga coordinate ng puntong ito $$\begin(cases) -x+2y = 8\\ 3x-2y = 18\end(cases)=> \begin(cases) 2x = 26\\ 3x -2y = 18 \end(cases)=> \begin(cases) x = 13\\ y =10.5\end(cases)$$
Nakuha namin ang mga coordinate ng punto \(B(13;10.5)\)


4. Bumubuo kami ng isang pamilya ng mga layunin na pag-andar.
Ang equation \(f(x,y)=(x-4)^2 + (y-3)^2 \rightarrow max,min\) ay tumutukoy sa xOy plane ng isang pamilya ng concentric circles na nakasentro sa puntong may mga coordinate \ (Q(4 ;3)\), ang bawat isa ay tumutugma sa isang tiyak na halaga ng parameter \(f\). Tulad ng alam mo, para sa equation ng isang bilog ang parameter \(f=R^2\).


Irepresenta natin sa parehong coordinate system ang isang pamilya ng mga concentric na bilog \(f\) at isang pamilya ng mga linya. Ang problema sa pagtukoy ng maximum (minimum) na punto ng punto \(f\) ay mababawasan sa paghahanap sa lugar na tinatanggap ang punto kung saan dumaan ang bilog ng pamilya \(f=const\), na responsable para sa pinakamalaking (pinakamaliit) na halaga ng parameter \(f\).


5. Hanapin ang maximum (minimum) na halaga ng layunin ng function.


Pinakamababang halaga ng layunin ng function: Sa pamamagitan ng unti-unting pagtaas ng radius ng bilog, nakuha namin na ang unang vertex na dinaraanan ng bilog ay ang puntong \(G(3;0)\). Ang layunin ng function sa puntong ito ay magiging minimal at katumbas ng \(f(3,0)=(3-4)^2 + (0-3)^2 = 10\)


Ang maximum na halaga ng layunin ng function: Sa pamamagitan ng karagdagang pagtaas ng radius ng bilog, nakuha namin na ang huling vertex kung saan dadaan ang bilog ay ang puntong \(B(13;10.5)\). Ang layunin ng function sa puntong ito ay magiging maximum at katumbas ng \(f(13,10.5)=(13-4)^2 + (10.5-3)^2 = 137.25\)


Maaari mong i-verify ang kawastuhan ng solusyon sa pamamagitan ng pagpapalit ng mga coordinate ng natitirang vertices sa equation ng layunin ng function:
sa vertex \(D(0;2)\) ang value ng objective function ay katumbas ng \(f(0,2)=(0-4)^2 + (2-3)^2 = 17\)
sa vertex \(E(0;4)\) ang value ng objective function ay katumbas ng \(f(0,4)=(0-4)^2 + (4-3)^2 = 17\)
sa vertex \(F(6;0)\) ang value ng objective function ay \(f(6,4)=(6-4)^2 + (0-3)^2 = 13\)
Nakuha ko na


Sagot:
ang pinakamababang halaga ng layunin ng function \(f_(min) = 10\)
ang maximum na halaga ng layunin ng function \(f_(max) = 137.25\)

layunin function- real o integer function ng ilang variable, napapailalim sa optimization (minimization o maximization) upang malutas ang ilang problema sa optimization. Ang termino ay ginagamit sa mathematical programming, operations research, linear programming, statistical decision theory at iba pang larangan ng matematika, pangunahin sa isang inilapat na kalikasan, bagama't ang layunin ng optimization ay maaari ding maging solusyon sa isang problema sa matematika mismo. Bilang karagdagan sa layunin ng pag-andar, sa problema sa pag-optimize, ang mga variable ay maaaring sumailalim sa mga paghihigpit sa anyo ng isang sistema ng pagkakapantay-pantay o hindi pagkakapantay-pantay. Sa pangkalahatang kaso, ang mga argumento ng layunin ng function ay maaaring tukuyin sa mga arbitrary na hanay.

Mga halimbawa

Makinis na mga function at sistema ng mga equation

Ang problema ng paglutas ng anumang sistema ng mga equation

( F 1 (x 1 , x 2 , … , x M) = 0 F 2 (x 1 , x 2 , … , x M) = 0 … F N (x 1 , x 2 , … , x M) = 0 ( \displaystyle \left\((\begin(matrix)F_(1)(x_(1),x_(2),\ldots ,x_(M))=0\\F_(2)(x_(1),x_ (2),\ldots ,x_(M))=0\\\ldots \\F_(N)(x_(1),x_(2),\ldots ,x_(M))=0\end(matrix) )\tama.)

ay maaaring formulated bilang isang problema ng pagliit ng layunin function

S = ∑ j = 1 N F j 2 (x 1 , x 2 , … , x M) (1) (\displaystyle S=\sum _(j=1)^(N)F_(j)^(2)( x_(1),x_(2),\ldots ,x_(M))\qquad(1))

Kung ang mga pag-andar ay makinis, kung gayon ang problema sa pag-minimize ay maaaring malutas sa pamamagitan ng mga pamamaraan ng gradient.

Para sa anumang makinis na layunin ng function, maaaring itumbas ng isa sa 0 (\displaystyle 0) ang mga partial derivatives na may kinalaman sa lahat ng variable. Ang pinakamainam na function na layunin ay magiging isa sa mga solusyon sa naturang sistema ng mga equation. Sa kaso ng function (1) (\displaystyle (1)) ito ay magiging isang sistema ng least squares (LSM) equation. Ang anumang solusyon ng orihinal na sistema ay isang solusyon ng pinakamababang sistema ng mga parisukat. Kung hindi pare-pareho ang orihinal na sistema, ginagawang posible ng LSM system, na laging may solusyon, na makakuha ng tinatayang solusyon ng orihinal na sistema. Ang bilang ng mga equation ng LSM system ay tumutugma sa bilang ng mga hindi alam, na kung minsan ay nagpapadali sa solusyon ng magkasanib na mga paunang sistema.

Linear programming

Ang isa pang kilalang halimbawa ng isang layunin na function ay isang linear function na nangyayari sa mga problema sa linear programming. Sa kaibahan sa quadratic objective function, ang pag-optimize ng isang linear function ay posible lamang kung may mga paghihigpit sa anyo ng isang sistema ng linear equalities o inequalities.

Kombinatoryal na pag-optimize

Ang isang tipikal na halimbawa ng isang combinatorial objective function ay ang layunin ng function ng naglalakbay na problema sa salesman. Ang function na ito ay katumbas ng haba ng Hamiltonian cycle sa graph. Ito ay ibinibigay sa permutation set n − 1 (\displaystyle n-1) ng graph vertices at tinutukoy ng edge length matrix ng graph. Ang eksaktong solusyon sa naturang mga problema ay madalas na bumababa sa pag-iisa ng mga opsyon.

Kabanata 1. Pahayag ng pangunahing problema ng linear programming

  1. Linear programming

Ang linear programming ay isang sangay ng mathematical programming na nag-aaral ng mga pamamaraan para sa paglutas ng mga matinding problema na nailalarawan sa pamamagitan ng isang linear na relasyon sa pagitan ng mga variable at isang linear na pamantayan. Ang ganitong mga gawain ay nakakahanap ng malawak na aplikasyon sa iba't ibang larangan ng aktibidad ng tao. Ang isang sistematikong pag-aaral ng mga problema ng ganitong uri ay nagsimula noong 1939–1940. sa mga gawa ni L.V. Kantorovich.

Ang mga problema sa matematika ng linear programming ay kinabibilangan ng pag-aaral ng mga tiyak na sitwasyon sa produksyon at pang-ekonomiya, na sa isang anyo o iba pa ay binibigyang kahulugan bilang mga problema ng pinakamainam na paggamit ng limitadong mga mapagkukunan.

Ang hanay ng mga problemang nalutas gamit ang mga linear programming method ay medyo malawak. Ito ay, halimbawa:

    ang problema ng pinakamainam na paggamit ng mga mapagkukunan sa pagpaplano ng produksyon;

    ang problema ng mga mixtures (pagpaplano ng komposisyon ng mga produkto);

    ang problema ng paghahanap ng pinakamainam na kumbinasyon ng iba't ibang uri ng mga produkto para sa imbakan sa mga bodega (pamamahala ng imbentaryo o);

    mga gawain sa transportasyon (pagsusuri ng lokasyon ng negosyo, paggalaw ng mga kalakal).

Ang linear programming ay ang pinaka-binuo at malawakang ginagamit na seksyon ng mathematical programming (bilang karagdagan, kabilang dito ang: integer, dynamic, non-linear, parametric programming). Ito ay ipinaliwanag tulad ng sumusunod:

    Ang mga modelo ng matematika ng isang malaking bilang ng mga problema sa ekonomiya ay linear na may paggalang sa mga kinakailangang variable;

    ang ganitong uri ng mga problema ay kasalukuyang pinaka-pinag-aaralan. Para sa kanya, ang mga espesyal na pamamaraan ay binuo sa tulong kung saan nalutas ang mga problemang ito, at ang kaukulang mga programa sa computer;

    maraming mga problema ng linear programming, na nalutas, ay natagpuan ang malawak na aplikasyon;

    ilang mga problema na hindi linear sa orihinal na pormulasyon, pagkatapos ng ilang karagdagang mga paghihigpit at pagpapalagay, ay maaaring maging linear o maaaring bawasan sa ganoong anyo na maaari silang malutas sa pamamagitan ng mga linear programming method.

Ang modelong pang-ekonomiya at matematika ng anumang problema sa linear programming ay kinabibilangan ng: isang layunin na function, ang pinakamainam na halaga kung saan (maximum o minimum) ay dapat matagpuan; mga paghihigpit sa anyo ng isang sistema ng mga linear na equation o hindi pagkakapantay-pantay; kinakailangan ng di-negatibiti ng mga variable.

Sa pangkalahatan, ang modelo ay nakasulat tulad ng sumusunod:

layunin function

(1.1) sa ilalim ng mga paghihigpit

(1.2) hindi-negatibong mga kinakailangan

(1.3) kung saan x j– mga variable (hindi alam);

- mga coefficient ng problema sa linear programming.

Ang problema ay upang mahanap ang pinakamainam na halaga ng function (1.1) na napapailalim sa mga hadlang (1.2) at (1.3).

Ang sistema ng mga hadlang (1.2) ay tinatawag na functional constraints ng problema, at ang constraints (1.3) ay tinatawag na direct constraints.

Ang isang vector na nakakatugon sa mga hadlang (1.2) at (1.3) ay tinatawag na isang magagawang solusyon (plano) ng isang linear na problema sa programming. Ang plano kung saan naabot ng function (1.1) ang maximum (minimum) na halaga nito ay tinatawag na optimal.

1.2. Simplex na paraan para sa paglutas ng mga problema sa linear programming

Ang simplex na paraan ay binuo at unang inilapat upang malutas ang mga problema noong 1947 ng American mathematician na si J. Dantzig.

Ang mga problema sa two-dimensional na linear programming ay graphical na nalutas. Para sa kaso N=3, maaari nating isaalang-alang ang isang three-dimensional na espasyo at ang layunin ng function ay maaabot ang pinakamainam na halaga nito sa isa sa mga vertices ng polyhedron.

Ang isang tinatanggap na solusyon (isang tinatanggap na plano) ng isang problema sa LP na ibinigay sa karaniwang anyo ay isang nakaayos na hanay ng mga numero (x1, x2, ..., xn) na nakakatugon sa mga hadlang; ay isang punto sa n-dimensional na espasyo.

Ang hanay ng mga tinatanggap na solusyon ay bumubuo sa lugar ng mga tinatanggap na solusyon (SDR) ng problema sa LP. Ang ODR ay isang convex polyhedron (polygon).

Sa pangkalahatang mga termino, kapag ang N-unknowns ay kasangkot sa problema, maaari nating sabihin na ang lugar ng mga posibleng solusyon na tinukoy ng sistema ng paglilimita ng mga kondisyon ay kinakatawan ng isang convex polyhedron sa n-dimensional na espasyo at ang pinakamainam na halaga ng layunin. ang function ay nakakamit sa isa o higit pang mga vertex.

Ang isang solusyon ay tinatawag na basic kung ang lahat ng mga libreng variable ay katumbas ng zero.

Ang isang reference na solusyon ay isang pangunahing di-negatibong solusyon. Ang solusyon sa suporta ay maaaring hindi mabulok at mabulok. Ang isang solusyon sa suporta ay tinatawag na non-degenerate kung ang bilang ng mga non-zero na coordinate nito ay katumbas ng ranggo ng system, kung hindi man ito ay degenerate.

Ang isang magagawa na solusyon, kung saan ang layunin ng pag-andar ay umabot sa sukdulang halaga nito, ay tinatawag na pinakamainam at tinutukoy .

Napakahirap lutasin ang mga problemang ito nang grapiko kapag ang bilang ng mga variable ay higit sa 3. Mayroong isang unibersal na paraan upang malutas ang mga problema sa linear programming, na tinatawag na simplex method.

Ang simplex na paraan ay isang unibersal na pamamaraan para sa paglutas ng mga problema sa LP, na isang umuulit na proseso na nagsisimula sa isang solusyon at, sa paghahanap ng pinakamahusay na opsyon, gumagalaw sa mga sulok na punto ng lugar ng mga magagawang solusyon hanggang sa maabot nito ang pinakamainam na halaga. .

Maaari itong magamit upang malutas ang anumang problema sa linear programming.

Ang simplex na paraan ay batay sa ideya ng sunud-sunod na pagpapabuti ng resultang solusyon.

Ang geometric na kahulugan ng simplex na pamamaraan ay ang sunud-sunod na paglipat mula sa isang vertex ng constraint polyhedron patungo sa kalapit na isa, kung saan ang layunin ng function ay tumatagal ng pinakamahusay (o hindi bababa sa hindi ang pinakamasama) na halaga hanggang sa ang pinakamainam na solusyon ay natagpuan - ang vertex kung saan ang pinakamainam na halaga ay naabot ang layunin ng pag-andar (kung ang problema ay may hangganan na pinakamabuting kalagayan).

Kaya, ang pagkakaroon ng isang sistema ng mga hadlang na nabawasan sa canonical form (lahat ng functional constraints ay nasa anyo ng mga pagkakapantay-pantay), ang isa ay makakahanap ng anumang pangunahing solusyon ng sistemang ito, na nag-iingat lamang upang mahanap ito nang simple hangga't maaari. Kung ang unang nahanap na pangunahing solusyon ay naging magagawa, pagkatapos ito ay nasuri para sa pinakamainam. Kung ito ay hindi pinakamainam, pagkatapos ay ang isang paglipat ay ginawa sa isa pa, kinakailangang tanggapin, pangunahing solusyon. Ginagarantiyahan ng simplex na paraan na, gamit ang bagong solusyon na ito, ang layunin na pag-andar, kung hindi nito maabot ang pinakamabuting kalagayan, pagkatapos ay lumalapit dito (o hindi bababa sa hindi lumalayo dito). Sa isang bagong tinatanggap na pangunahing solusyon, ang parehong ay ginagawa hanggang sa isang solusyon ay natagpuan na pinakamainam.

Ang proseso ng paglalapat ng simplex na pamamaraan ay nagsasangkot ng pagpapatupad ng tatlong pangunahing elemento nito:

    isang paraan para sa pagtukoy ng ilang paunang magagawa na pangunahing solusyon sa problema;

    ang panuntunan ng paglipat sa pinakamahusay (mas tiyak, hindi ang pinakamasama) solusyon;

    criterion para masuri ang pinakamainam ng nahanap na solusyon.

Kasama sa simplex na paraan ang ilang hakbang at maaaring bumalangkas bilang isang malinaw na algorithm (isang malinaw na pagtuturo upang magsagawa ng mga sunud-sunod na operasyon). Ito ay nagpapahintulot sa iyo na matagumpay na mag-program at ipatupad ito sa isang computer. Ang mga problema sa isang maliit na bilang ng mga variable at mga hadlang ay maaaring malutas sa pamamagitan ng simplex na pamamaraan nang manu-mano.

6.1 Panimula

Pag-optimize. Bahagi 1

Binibigyang-daan ka ng mga paraan ng pag-optimize na piliin ang pinakamagandang opsyon sa disenyo mula sa lahat ng posibleng opsyon. Sa mga nagdaang taon, maraming pansin ang binayaran sa mga pamamaraang ito, at bilang isang resulta, ang isang bilang ng mga napakahusay na algorithm ay binuo na ginagawang posible upang mahanap ang pinakamainam na pagpipilian sa disenyo gamit ang isang digital na computer. Binabalangkas ng kabanatang ito ang mga batayan ng teorya ng pag-optimize, isinasaalang-alang ang mga prinsipyong pinagbabatayan ng pagbuo ng mga algorithm para sa pinakamainam na solusyon, inilalarawan ang pinakakilalang mga algorithm, at sinusuri ang kanilang mga pakinabang at disadvantages.

6.2 Mga Batayan ng teorya ng pag-optimize

Ang terminong "optimization" sa panitikan ay tumutukoy sa isang proseso o pagkakasunud-sunod ng mga operasyon na nagbibigay-daan sa iyong makakuha ng isang pinong solusyon. Bagama't ang pinakalayunin ng pag-optimize ay upang mahanap ang pinakamahusay, o "pinakamainam" na solusyon, ang isa ay karaniwang dapat maging kontento sa pagpapabuti ng mga kilalang solusyon sa halip na gawing perpekto ang mga ito. Samakatuwid, ang pag-optimize ay mas malamang na mauunawaan bilang ang pagtugis ng pagiging perpekto, na, marahil, ay hindi makakamit.

Isinasaalang-alang ang ilang di-makatwirang sistema na inilarawan ng m equation na may n hindi alam, maaari nating makilala ang tatlong pangunahing uri ng mga problema. Kung m=n , ang problema ay tinatawag na algebraic. Ang ganitong problema ay karaniwang may isang solusyon. Kung m>n, ang problema ay muling tukuyin at, bilang panuntunan, ay walang solusyon. Sa wakas, para sa m

Bago magpatuloy sa talakayan ng mga isyu sa pag-optimize, ipinakilala namin ang ilang mga kahulugan.

Mga parameter ng disenyo

Ang terminong ito ay nagsasaad ng mga independiyenteng variable na parameter na ganap at malinaw na tumutukoy sa problema sa disenyo na nireresolba. Ang mga parameter ng disenyo ay hindi kilalang dami, ang mga halaga nito ay kinakalkula sa panahon ng proseso ng pag-optimize. Anumang basic o derivative na dami na nagsisilbing quantitatively na naglalarawan sa system ay maaaring magsilbi bilang mga parameter ng disenyo. Kaya, maaari itong hindi kilalang mga halaga ng haba, masa, oras, temperatura. Ang bilang ng mga parameter ng disenyo ay nagpapakilala sa antas ng pagiging kumplikado ng problemang ito sa disenyo. Karaniwan ang bilang ng mga parameter ng disenyo ay tinutukoy ng n, at ang mga parameter ng disenyo mismo ng x na may kaukulang mga indeks. Kaya, ang n mga parameter ng disenyo ng problemang ito ay ilalarawan ng

X1, x2, x3,...,xn.

layunin function

Ito ang expression na ang halaga ay hinahangad ng engineer na i-maximize o i-minimize. Ang layunin ng function ay nagbibigay-daan sa iyo upang quantitatively ihambing ang dalawang alternatibong solusyon. Mula sa isang mathematical point of view, ang layunin ng function ay naglalarawan ng ilang (n + 1) - dimensional na ibabaw. Ang halaga nito ay tinutukoy ng mga parameter ng disenyo

M=M(x 1 , x 2 ,...,x n).

Ang mga halimbawa ng layunin na pag-andar, na madalas na nakatagpo sa pagsasanay sa engineering, ay ang gastos, timbang, lakas, sukat, kahusayan. Kung mayroon lamang isang parameter ng disenyo, kung gayon ang layunin ng function ay maaaring katawanin ng isang curve sa isang eroplano (Larawan 6.1). Kung mayroong dalawang mga parameter ng disenyo, ang target na function ay kakatawanin ng isang ibabaw sa espasyo ng tatlong dimensyon (Larawan 6.2). Sa tatlo o higit pang mga parameter ng disenyo, ang mga ibabaw na tinukoy ng layunin ng function ay tinatawag na hypersurfaces at hindi maaaring ilarawan.

zheniya conventional na paraan. Ang mga topological na katangian ng ibabaw ng layunin ng function ay may mahalagang papel sa proseso ng pag-optimize, dahil ang pagpili ng pinaka mahusay na algorithm ay nakasalalay sa kanila.

Ang layunin na pag-andar sa ilang mga kaso ay maaaring magkaroon ng mga hindi inaasahang anyo. Halimbawa, hindi laging posible na ipahayag ito sa

Fig. 1. One-dimensional na layunin na function.

Fig.6.2.Two-dimensional layunin function.

saradong mathematical form, sa ibang mga kaso maaari itong

maging isang piecewise smooth function. Ang isang layunin na function ay maaaring minsan ay nangangailangan ng isang teknikal na talahanayan ng data (halimbawa, isang talahanayan ng estado ng singaw) o maaaring kinakailangan upang magsagawa ng isang eksperimento. Sa ilang mga kaso, ang mga parameter ng disenyo ay kumukuha lamang ng mga halaga ng integer. Ang isang halimbawa ay ang bilang ng mga ngipin sa isang gear o ang bilang ng mga bolts sa isang flange. Minsan ang mga parameter ng disenyo ay may dalawang halaga lamang - oo o hindi. Ang mga husay na parameter, tulad ng kasiyahan ng customer, pagiging maaasahan, aesthetics, ay mahirap isaalang-alang sa proseso ng pag-optimize, dahil halos imposible silang mabilang. Gayunpaman, sa anumang anyo ang layunin ng pag-andar ay ipinakita, ito ay dapat na isang solong halaga ng pag-andar ng mga parameter ng disenyo.

Sa isang bilang ng mga problema sa pag-optimize, ang pagpapakilala ng higit sa isang layunin na function ay kinakailangan. Minsan ang isa sa kanila ay maaaring hindi tugma sa isa pa. Ang isang halimbawa ay ang disenyo ng sasakyang panghimpapawid, kapag kinakailangan na magbigay ng pinakamataas na lakas, pinakamababang timbang at pinakamababang gastos sa parehong oras. Sa ganitong mga kaso, ang taga-disenyo ay dapat magpakilala ng isang sistema ng mga priyoridad at magtalaga ng ilang dimensyon na multiplier sa bawat layunin ng function. Bilang resulta, lumilitaw ang isang "compromise function", na nagpapahintulot sa isang composite objective function na magamit sa proseso ng pag-optimize.

Paghahanap ng minimum at maximum

Ang ilang mga algorithm sa pag-optimize ay iniangkop para sa paghahanap ng maximum, ang iba ay para sa paghahanap ng pinakamababa. Gayunpaman, anuman ang uri ng matinding problema na nalutas, ang isa ay maaaring gumamit ng parehong algorithm, dahil ang problema sa pag-minimize ay madaling maging isang maximum na problema sa pamamagitan ng pagbabago ng tanda ng layunin ng function sa kabaligtaran. Ang pamamaraan na ito ay inilalarawan sa Figure 6.3.

Disenyo ng espasyo

Ito ang pangalan ng lugar na tinukoy ng lahat ng n mga parameter ng disenyo. Ang espasyo sa disenyo ay hindi kasing laki ng maaaring tila, dahil karaniwan itong limitado sa isang bilang

mga kondisyon na nauugnay sa pisikal na kakanyahan ng problema. Ang mga hadlang ay maaaring maging napakalakas na ang gawain ay hindi magkakaroon ng anuman

Fig.6.3 Pagbabago ng tanda ng layunin ng function sa kabaligtaran

Ang pinakamataas na gawain ay nagiging pinakamababang gawain.

kasiya-siyang solusyon. Ang mga hadlang ay nahahati sa dalawang pangkat: mga hadlang - mga pagkakapantay-pantay at mga hadlang - mga hindi pagkakapantay-pantay.

Mga hadlang - pagkakapantay-pantay

Ang mga hadlang - pagkakapantay-pantay - ay ang pagtitiwala sa pagitan ng mga parameter ng disenyo na dapat isaalang-alang kapag naghahanap ng solusyon. Sinasalamin ng mga ito ang mga batas ng kalikasan, ekonomiya, mga karapatan, umiiral na panlasa at ang pagkakaroon ng mga kinakailangang materyales. Ang bilang ng mga paghihigpit - ang mga pagkakapantay-pantay ay maaaring anuman. Magkamukha sila

C 1 (x 1 , x 2 ,...,x n)=0,

C 2 (x 1 , x 2 ,...,x n)=0,

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

C j (x 1 , x 2 ,...,x n)=0.

Kung ang alinman sa mga ugnayang ito ay maaaring malutas nang may paggalang sa isa sa mga parameter ng disenyo, kung gayon ito ay nagpapahintulot sa iyo na ibukod ang parameter na ito mula sa proseso ng pag-optimize. Binabawasan nito ang bilang ng mga sukat ng espasyo sa disenyo at pinapasimple ang solusyon ng problema.

Mga hadlang - hindi pagkakapantay-pantay

Ito ay isang espesyal na uri ng pagpilit na ipinahayag ng mga hindi pagkakapantay-pantay. Sa pangkalahatang kaso, maaaring mayroong anumang bilang ng mga ito, at lahat ng mga ito ay may anyo

z 1 r 1 (x 1 , x 2 ,...,x n) Z 1

z 2 r 2 (x 1 , x 2 ,...,x n) Z 2

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

z k r k (x 1 , x 2 ,...,x n) Z k

Dapat tandaan na napakadalas, dahil sa mga limitasyon, ang pinakamainam na halaga ng layunin ng pag-andar ay hindi nakakamit kung saan ang ibabaw nito ay may zero gradient. Kadalasan ang pinakamahusay na solusyon ay nasa isa sa mga hangganan ng domain ng disenyo.

Lokal na pinakamabuting kalagayan

Ito ang pangalan ng punto sa espasyo ng disenyo kung saan ang layunin ng pag-andar ay may pinakamalaking halaga kumpara sa mga halaga nito sa lahat ng iba pang mga punto sa agarang kapitbahayan nito.

Fig.6.4 Ang isang arbitrary layunin function ay maaaring magkaroon ng ilang

lokal na optima.

Sa fig. Ipinapakita ng Figure 6.4 ang isang one-dimensional na layunin na function na mayroong dalawang lokal na optima. Kadalasan ang espasyo ng disenyo ay naglalaman ng maraming lokal na optima at dapat gawin ang pag-iingat na huwag magkamali sa una para sa pinakamainam na solusyon sa problema.

Global Optimum

Ang pandaigdigang pinakamainam ay ang pinakamainam na solusyon para sa buong espasyo ng disenyo. Ito ay mas mahusay kaysa sa lahat ng iba pang mga solusyon na naaayon sa lokal na optima, at ito ang hinahanap ng taga-disenyo. Posible ang kaso ng ilang pantay na global optima na matatagpuan sa iba't ibang bahagi ng espasyo ng disenyo. Kung paano ipinoproblema ang problema sa pag-optimize ay pinakamahusay na inilalarawan ng isang halimbawa.

Halimbawa 6.1

Hayaang kailanganin na magdisenyo ng isang hugis-parihaba na lalagyan na may volume na 1 m , na idinisenyo upang maghatid ng hindi naka-pack na hibla. Ito ay kanais-nais na ang maliit na materyal hangga't maaari ay ginugol sa paggawa ng naturang mga lalagyan (ipagpalagay na ang isang pare-pareho ang kapal ng pader, nangangahulugan ito na ang ibabaw na lugar ay dapat na minimal), dahil ito ay magiging mas mura. Upang gawing maginhawa ang pagkuha ng lalagyan na may forklift, ang lapad nito ay dapat na hindi bababa sa 1.5 m.

Bumuo tayo ng problemang ito sa isang form na maginhawa para sa paglalapat ng optimization algorithm.

Mga parameter ng disenyo: x 1 , x 2 , x 3 .

Ang layunin ng pag-andar (na kailangang mabawasan) ay ang lugar ng gilid na ibabaw ng lalagyan:

A=2(x 1 x 2 +x 2 x 3 +x 1 x 3), m2.

Constraint - pagkakapantay-pantay:

Dami \u003d x 1 x 2 x 3 \u003d 1m3.

Limitasyon - hindi pagkakapantay-pantay:

Mga problema sa linear programming

Linear Programming (LP) ay isa sa mga seksyon ng mathematical programming - isang disiplina na nag-aaral ng extremal (optimization) na mga problema at bumubuo ng mga pamamaraan para sa paglutas ng mga ito.

Problema sa pag-optimize ay isang problema sa matematika na binubuo sa paghahanap ng pinakamainam (i.e., maximum o minimum) na halaga ng layunin na pag-andar, at ang mga halaga ng mga variable ay dapat kabilang sa isang tiyak na lugar ng mga tinatanggap na halaga (ODV).

Sa pangkalahatan, ang pagbabalangkas ng isang matinding problema ng mathematical programming ay binubuo sa pagtukoy ng pinakamalaki o pinakamaliit na halaga ng function, na tinatawag na layunin function, sa ilalim ng mga kundisyon (paghihigpit) , kung saan at binibigyan ng mga function, at binibigyan ng mga constant. Kasabay nito, ang mga paghihigpit sa anyo ng mga pagkakapantay-pantay at hindi pagkakapantay-pantay ay tumutukoy sa hanay (rehiyon) ng mga magagawang solusyon (ODS), at tinatawag na mga parameter ng disenyo.

Depende sa uri ng mga function at mga problema ng mathematical programming ay nahahati sa isang bilang ng mga klase (linear, non-linear, convex, integer, stochastic, dynamic programming, atbp.).

AT pangkalahatang pananaw Ang problema sa LP ay may sumusunod na anyo:

, (5.1)

, , (5.2)

, , (5.3)

kung saan ang , , ay binibigyan ng mga pare-pareho.

Function (5.1) ay tinatawag na layunin function; system (5.2), (5.3) - sa pamamagitan ng isang sistema ng mga hadlang; kondisyon (5.4) ay ang kondisyon ng hindi negatibong mga parameter ng disenyo.

Ang hanay ng mga parameter ng disenyo na nakakatugon sa mga hadlang (5.2), (5.3) at (5.4) ay tinatawag katanggap-tanggap na solusyon o plano.

Ang pinakamainam na solusyon o pinakamainam na plano Ang problema sa LP ay tinatawag na feasible solution , kung saan ang layunin ng function (5.1) ay kumukuha ng pinakamainam (maximum o minimum) na halaga.

Karaniwang gawain Ang LP ay tinatawag na problema sa paghahanap ng maximum (minimum) na halaga ng layunin ng function (5.1) sa ilalim ng kondisyon (5.2) at (5.4), kung saan , , i.e. mga. ang mga paghihigpit lamang sa anyo ng mga hindi pagkakapantay-pantay (5.2) at lahat ng mga parameter ng disenyo ay nakakatugon sa hindi negatibong kondisyon, at walang mga kundisyon sa anyo ng mga pagkakapantay-pantay:

,

, , (5.5)

.

Canonical (pangunahing) gawain Ang LP ay tinatawag na problema sa paghahanap ng maximum (minimum) na halaga ng layunin ng function (5.1) sa ilalim ng kondisyon (5.3) at (5.4), kung saan , , i.e. mga. ang mga paghihigpit lamang sa anyo ng mga pagkakapantay-pantay (5.3) at lahat ng mga parameter ng disenyo ay nakakatugon sa kondisyong hindi negatibo, at walang mga kundisyon sa anyo ng mga hindi pagkakapantay-pantay:

,

.

Ang problema sa canonical LP ay maaari ding isulat sa matrix at vector form.

Ang matrix form ng canonical LP problem ay may sumusunod na anyo:

Vector form ng canonical LP na problema.