31
Projektų ir Projektų ir operaci operaci optimizavimas optimizavimas

Projektų ir operaci jų optimizavimas

  • Upload
    yamin

  • View
    73

  • Download
    12

Embed Size (px)

DESCRIPTION

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 - PowerPoint PPT Presentation

Citation preview

Page 1: Projektų ir  operaci jų optimizavimas

Projektų ir Projektų ir operacioperacijų jų optimizavimasoptimizavimas

Page 2: Projektų ir  operaci jų optimizavimas

Optimizavimo metodaiOptimizavimo 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

Page 3: Projektų ir  operaci jų optimizavimas

Apibrėžimai 1Apibrėž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

Page 4: Projektų ir  operaci jų optimizavimas

Apibrėžimai 2Apibrėž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ą

Page 5: Projektų ir  operaci jų optimizavimas

Bendra optimizavimo problemaBendra optimizavimo problema

max (arba min) z = f(X)

(A,I)X b

Tikslo Tikslo funkcijafunkcija

Vertinimo kriterijusVertinimo kriterijus

Sprendimo kintamSprendimo kintamūjų ūjų matricamatricaKoeficientų matricaKoeficientų matrica

Konstantų vektoriusKonstantų vektoriusApribojimaiApribojimai

Page 6: Projektų ir  operaci jų optimizavimas

NeaprNeaprėžtas optimizavimas 1ėž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

Page 7: Projektų ir  operaci jų optimizavimas

NeaprNeaprėžtas optimizavimas 2ėž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:

0)(,...,0)(,0)(

21

nxxf

xxf

xxf

Page 8: Projektų ir  operaci jų optimizavimas

Pavyzdys: metinių gyvavimo ciklo Pavyzdys: metinių gyvavimo ciklo kaštų optimizavimas 1kaš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

Page 9: Projektų ir  operaci jų optimizavimas

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

22*

2*

02

2)1(

2

MOPMALCC

MPn

MnP

dndALCC

MnOnPALCC

Page 10: Projektų ir  operaci jų optimizavimas

Metinių gyvavimo ciklo kaštų Metinių gyvavimo ciklo kaštų optimizavimas 3optimizavimas 3

00 11 22 33 44 55 66 77 88 99

5,0005,000

$20,000$20,000

15,00015,000

10,00010,000

Vidu

tinia

i kaš

tai

Vidu

tinia

i kaš

tai

Metai Metai

Vidutiniai bendri kaštaiVidutiniai bendri kaštai

Vidutiniai investicijų kaštaiVidutiniai investicijų kaštai

Vidutiniai eksploatacijos kaštaiVidutiniai eksploatacijos kaštai

Optimumo taškasOptimumo taškas

Page 11: Projektų ir  operaci jų optimizavimas

Gyvavimo ciklo kaštų optimizavimas Gyvavimo ciklo kaštų optimizavimas naudojant lentelinį metodą 1 naudojant lentelinį metodą 1

$5,800 5,772 5,762 5,765 5,785

$1,000 1,142 1,294 1,455 1,624

$4,800 4,630 4,468 4,310 4,161

$1,000 1,300 1,655 2,065 2,530

$12,000 9,000 6,000 3,000 0

12345

Metiniai gyvavimo

ciklo kaštai

Kasmetiniai sistemos aptarna-

vimo kaštai

Metiniai ekvivalentūs

sistemos kaštai

Sistemos eksploa-tacijos kaštai

Sutaupomi kaštai jei

atsisakome sistemos

Metai

• Taikoma netiesinių arba trūkių funkcijų optimizavimuiTaikoma netiesinių arba trūkių funkcijų optimizavimui

Page 12: Projektų ir  operaci jų optimizavimas

Gyvavimo ciklo kaštų optimizavimas Gyvavimo ciklo kaštų optimizavimas naudojant lentelinį metodą 2naudojant lentelinį metodą 2

11 22 33 44 55

$12,000$12,000

$15,000$15,000

$9,000$9,000

$1,000$1,000$1,300$1,300

$1,655$1,655

$6,000$6,000

$2,065$2,065

$3,000$3,000

$2,530$2,530

InvesticijaInvesticija

Eksploatacijos kaštaiEksploatacijos kaštai

Page 13: Projektų ir  operaci jų optimizavimas

Tiesinis programavimas (TP)Tiesinis programavimas (TP)

kai

kurP - tikslo funkcija,{xi, i=1,...,m} nepriklausomi kintamieji, cj - kintamųjų svoriai,bi - resursai,aij - resursų vartojimo greitis.

n

jjj xcP

1

max

n

jijij mibxa

1

,,1,

mjx j ,,1,0

Page 14: Projektų ir  operaci jų optimizavimas

TP sprendimo metodaiTP sprendimo metodai

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

Page 15: Projektų ir  operaci jų optimizavimas

Pavyzdys: TP grafinis sprendimasPavyzdys: TP grafinis sprendimas

• Duota:Žaliavų naudojimas Produktui 1

Žaliavų naudojimas Produktui 2

Žaliavos 1 dienai

Žaliava M1 6 4 24

Žaliava M2 1 2 6

Pelnas vienetui $5 $4

• Tikslas: rasti pelningiausią produktų derinį

Page 16: Projektų ir  operaci jų optimizavimas

TP: Grafinis sprendimasTP: 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

Page 17: Projektų ir  operaci jų optimizavimas

Grafinė sprendimo interpretacijaGrafinė sprendimo interpretacija• Kiekvienas rėžis gali būti

atvaizduojamas tiese• Sprendimų erdvė yra

apribota daugiakampiu• Optimalus sprendimas

visada yra daugiakampio viršūnėje

-

xx11 = 3 = 3xx22 = 1.5 = 1.5z = 5(3) + 4(1.5) = $21z = 5(3) + 4(1.5) = $21

Page 18: Projektų ir  operaci jų optimizavimas

Simplekso metodasSimplekso 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

Page 19: Projektų ir  operaci jų optimizavimas

TP taikymo aspektaiTP taikymo aspektai

• 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

Page 20: Projektų ir  operaci jų optimizavimas

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

Page 21: Projektų ir  operaci jų optimizavimas

Tikslo programavimasTikslo 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

Page 22: Projektų ir  operaci jų optimizavimas

Netiesinis programavimas (NP)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.

mixhi ,...,1,0)(

rixg i ,...,1,0)(

Page 23: Projektų ir  operaci jų optimizavimas

Dinaminis Programavimas (DP)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

Page 24: Projektų ir  operaci jų optimizavimas

Dinaminio programavimo modelis 1Dinaminio 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

Page 25: Projektų ir  operaci jų optimizavimas

Dinaminio programavimo modelis 2Dinaminio 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)

Page 26: Projektų ir  operaci jų optimizavimas

Dinaminio programavimo pavyzdys 1Dinaminio programavimo pavyzdys 1• Optimalaus maršruto parinkimas• Sprendimas suvedamas į atskirų optimalios

trajektorijos dalių analizę

1 3

2

7

6

5

9

810

4

1234

55

7766

33 44

7722

55

Page 27: Projektų ir  operaci jų optimizavimas

Dinaminio programavimo pavyzdys 2Dinaminio programavimo pavyzdys 2• Optimalaus maršruto parinkimas• Sprendimas suvedamas į atskirų optimalios

trajektorijos dalių analizę

1 3

2

7

6

5

9

810

4

234

55

33

22

55

Page 28: Projektų ir  operaci jų optimizavimas

Dinaminio programavimo pavyzdys 3Dinaminio programavimo pavyzdys 3• Optimalaus maršruto parinkimas• Sprendimas suvedamas į atskirų optimalios

trajektorijos dalių analizę

1 3

2

7

6

5

9

810

4

34

5522

Page 29: Projektų ir  operaci jų optimizavimas

Netiesinio programavimo Netiesinio programavimo naudojimo problemosnaudojimo 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.

Page 30: Projektų ir  operaci jų optimizavimas

Kiti optimizavimo metodaiKiti optimizavimo metodai

• Genetiniai algoritmai• Evoliucinis programavimas• Neuroniniai tinklai• Modeliuojamas grūdinimas

(simulated annealing)

Page 31: Projektų ir  operaci jų optimizavimas

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