1 / 31

Projektų ir operaci jų optimizavimas

Projektų ir operaci jų optimizavimas. Optimizavimo metodai. Klasikinė optimizavimo teorija Optimizavimas be apribojimų Optimizavimas su apribojimais Matematinis programavimas Tiesinis programavimas Dinaminis programavimas ir kiti ... Evoliucinis programavimas Dirbtinis intelektas

yamin
Télécharger la présentation

Projektų ir operaci jų optimizavimas

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Projektų ir operacijų optimizavimas

  2. Optimizavimo metodai • Klasikinė optimizavimo teorija • Optimizavimas be apribojimų • Optimizavimas su apribojimais • Matematinis programavimas • Tiesinis programavimas • Dinaminis programavimas • ir kiti ... • Evoliucinis programavimas • Dirbtinis intelektas • Neuroniniai tinklai • Genetiniai algoritmai

  3. Apibrėžimai 1 • Pagrindiniai aspektai: • Sprendimo alternatyvos • Sprendimo apribojimai • Alternatyvų įvertinimo kriterijai • Srityje yra susitarta, jog: • Sprendimo alternatyvos yra vadinamos sprendimo kintamaisiais • Apribojimai yra vadinami rėžiais (constraints) • Kriterijus yra vadinamas tikslo funkcija

  4. Apibrėžimai 2 • Sprendimo kintamieji aprašo optimizavimo objektą • Rėžiai apriboja sprendimų erdvę kurioje mes galime pasirinkti sprendimo kintamųjų reikšmes • Tikslo funkcija apibrėžia sąryšį tarp sprendimo kintamųjų ir objektyvaus pasirinkimo kriterijaus • Optimizavimo metu siekiama maksimizuoti arba minimizuoti tikslo funkciją

  5. Bendra optimizavimo problema Vertinimo kriterijus max (arba min) z = f(X) (A,I)X  b Tikslo funkcija Konstantų vektorius Apribojimai Sprendimo kintamūjų matrica Koeficientų matrica

  6. Neaprėžtas optimizavimas 1 • Tarkime: • f(x) - optimizuojama funkcija • x* - f(x) optimumas • Tuomet f’(x*) = 0 • Jei f’’(x*) > 0, turime minimumą • Jei f’’(x*) < 0, turime maksimumą • Jei f’’(x*) = 0, optimumo neturime, x* yra funkcijos f(x) vingio taškas

  7. Neaprėžtas optimizavimas 2 • Jei turime daugelio kintamųjų funkciją: • x = [x1, x2, …, xn] • Tuomet optimumas bus taške, kuriame visos dalinės išvestinės yra lygios 0:

  8. Pavyzdys: metinių gyvavimo ciklo kaštų optimizavimas 1 • ALCC = vidutiniai metiniai gyvavimo ciklo kaštai • P = investicijos • n = gyvavimo laikas (metais) • O = pastovios eksploatacijos išlaidos • M = eksploatacijos kaštų prieaugis • Tikslas: rasti optimalų sistemos gyvavimo laiką, kad ALCC būtų minimalūs

  9. Metinių gyvavimo ciklo kaštų optimizavimas 2

  10. $20,000 Vidutiniai bendri kaštai 15,000 Optimumo taškas Vidutiniai kaštai 10,000 Vidutiniai eksploatacijos kaštai 5,000 Vidutiniai investicijų kaštai 0 1 2 3 4 5 6 7 8 9 Metai Metinių gyvavimo ciklo kaštų optimizavimas 3

  11. Metai Sutaupomi kaštai jei atsisakome sistemos Sistemos eksploa-tacijos kaštai Metiniai ekvivalentūs sistemos kaštai Kasmetiniai sistemos aptarna-vimo kaštai Metiniai gyvavimo ciklo kaštai 1 2 3 4 5 $12,000 9,000 6,000 3,000 0 $1,000 1,300 1,655 2,065 2,530 $4,800 4,630 4,468 4,310 4,161 $1,000 1,142 1,294 1,455 1,624 $5,800 5,772 5,762 5,765 5,785 Gyvavimo ciklo kaštų optimizavimas naudojant lentelinį metodą 1 • Taikoma netiesinių arba trūkių funkcijų optimizavimui

  12. Gyvavimo ciklo kaštų optimizavimas naudojant lentelinį metodą 2 $12,000 $9,000 $6,000 $3,000 1 2 3 4 5 $1,000 $1,300 $1,655 $2,065 $2,530 Eksploatacijos kaštai $15,000 Investicija

  13. Tiesinis programavimas (TP) kai kur P - tikslo funkcija, {xi, i=1,...,m} nepriklausomi kintamieji, cj - kintamųjų svoriai, bi - resursai, aij - resursų vartojimo greitis.

  14. TP sprendimo metodai • Grafinis metodas (tik 2 kintamųjų problemoms) • Lentelinis metodas • Simplekso metodas (plačiai naudojamas) • ir kiti ...

  15. Pavyzdys: TP grafinis sprendimas • Duota: • Tikslas: rasti pelningiausią produktų derinį

  16. TP: Grafinis sprendimas • Sprendimo kintamieji: • x1 = Produkto 1 kiekis • x2 = Produkto 2 kiekis • Tikslo funkcija maksimizuoja pelną: Max z = 5x1 + 4x2 • Apribojimai: 6x1 + 4x2< 24 1x1 + 2x2< 6 x1, x2> 0

  17. Grafinė sprendimo interpretacija • Kiekvienas rėžis gali būti atvaizduojamas tiese • Sprendimų erdvė yra apribota daugiakampiu • Optimalus sprendimas visada yra daugiakampio viršūnėje - x1 = 3 x2 = 1.5 z = 5(3) + 4(1.5) = $21

  18. Simplekso metodas • Pagrindinis metodas taikomas TP • Algebriškai aprašoma kaip ekstremumų paieška n-matėje erdvėje • Iteracijų metu pereinama nuo vieno ekstremumo iki kito pagal optimalumo sąlygas • Optimalus sprendimas identifikuojamas jei šalia esantys ekstremumo taškai nepagerina sprendimo

  19. TP pranašumai Lengva sudaryti Platus taikymas Efektyvūs algoritmai Gerai suprantamas TP trūkumai Netinka netiesinėms problemoms Ne dinaminis Ne stochastinis Nevisada pateikia sveikaskaitinius sprendimus TP taikymo aspektai

  20. Sveikaskaitinis programavimas (Integer Programming) • Nuo tiesinio programavimo skiriasi tuo, jog visi sprendimo kintamieji gali įgyti tik sveikas reikšmes • Netinka didelėms problemoms spręsti

  21. Tikslo programavimas • Naudojamas optimizuojant su daugeliu konfliktuojančių tikslo funkcijų • Sprendžiant tikslo funkcijos yra suvedamos į vieną tikslo funkciją • Gautas sprendimas yra vadinamas efektyviu sprendimu, bet ne optimaliu, nes jis gali būti neoptimalus kitų tikslo funkcijų atžvilgiu

  22. Netiesinis programavimas (NP) Šiuo atveju tikslo funkcija ir apribojimai yra apibrėžiami taip: min F(X) kai kur F yra netiesinė tikslo funkcija, hi ir gi yra apribojimai, o X=[xi,…,xn]T n-matis vektorius nusakantis nepriklausomus kintamuosius.

  23. Dinaminis Programavimas (DP) • Apsprendžia optimalų sprendimą n-kintamųjų problemai ir išskaidyti ją į n stadijų, kurių kiekviena turi po 1 kintamąjį • DP gali kartu spręsti deterministines ir stochastines problemas • Skaičiavimai atliekami rekursyviai - optimalus sub-problemos sprendimas yra panaudojamas kaip įėjimas sekančiai problemai • Didelėms problemoms spręsti netinka

  24. Dinaminio programavimo modelis 1 • Tegul: N - veiklų skaičius • xi - veiklai i reikalingų resursų skaičius • gi(xi) - pagamintos produkcijos kiekis • Bendras pagamintos produkcijos kiekis: • R (x1, x2,..., xN) = g1(x1) + g2(x2) +…+ gN(xN) • Resursų kiekis yra ribotas: • Q = x1 + x2 +…+ xN; xi >= 0 • Tikslas - maksimizuoti R

  25. Dinaminio programavimo modelis 2 • Tikslo funkcija: • fN(Q) = max {R (x1,x2,..., xN) } xi • Kadangi resursai turi būti paskirstyti laike, tikslo funkciją galima užrašyti rekursyviai: • fN(Q) = max { gN(xN) + fN-1(Q-xN) } 0<=xN<=Q • kur: f1(Q) = g1(Q)

  26. 4 3 2 1 5 2 6 8 3 7 4 1 3 6 10 7 2 5 9 5 4 7 Dinaminio programavimo pavyzdys 1 • Optimalaus maršruto parinkimas • Sprendimas suvedamas į atskirų optimalios trajektorijos dalių analizę

  27. 4 3 2 5 2 8 3 1 3 6 10 2 5 9 5 4 7 Dinaminio programavimo pavyzdys 2 • Optimalaus maršruto parinkimas • Sprendimas suvedamas į atskirų optimalios trajektorijos dalių analizę

  28. 4 3 5 2 8 1 3 6 10 2 5 9 4 7 Dinaminio programavimo pavyzdys 3 • Optimalaus maršruto parinkimas • Sprendimas suvedamas į atskirų optimalios trajektorijos dalių analizę

  29. Netiesinio programavimo naudojimo problemos • Jei sistema turi kartotinius optimumo taškus, tai naudojant gradientinės paieškos NP įmanoma gauti vietinį optimumą vietoj globalaus. Daugumai netiesinių sistemų NP sprendinys stipriai priklauso nuo pradinio taško. • Kai kurioms sudėtingoms pramoninėms sistemoms sunku sukurti netiesinį matematinį modelį. • Taikant NP praktikoje sunku apdoroti “kokybinę”, “netikslią” ir/arba “nepilna” informaciją ir žinias.

  30. Kiti optimizavimo metodai • Genetiniai algoritmai • Evoliucinis programavimas • Neuroniniai tinklai • Modeliuojamas grūdinimas (simulated annealing)

  31. Ačiū už dėmesį !

More Related