Gyártórendszerek modellezése: MILP modell PNS feladatokhoz



Hasonló dokumentumok
optimalizációs módszerek

Diszkrét, egészértékű és 0/1 LP feladatok

Követelmények Motiváció Matematikai modellezés: példák A lineáris programozás alapfeladata 2017/ Szegedi Tudományegyetem Informatikai Intézet

Követelmények Motiváció Matematikai modellezés: példák A lineáris programozás alapfeladata 2017/ Szegedi Tudományegyetem Informatikai Intézet

Gyártórendszerek modellezése zh, december 7.

Gazdasági informatika gyakorlat

Optimumkeresés számítógépen

Termeléstervezés és -irányítás Termelés és kapacitás tervezés Xpress-Mosel FICO Xpress Optimization Suite

Az ellátási láncok algoritmikus szintézise





























































Ellátási lánc optimalizálás P-gráf módszertan alkalmazásával mennyiségi és min ségi paraméterek gyelembevételével

Simonovits M. Elekes Gyuri és az illeszkedések p. 1

KIEGÉSZÍTŽ FELADATOK. Készlet Bud. Kap. Pápa Sopr. Veszp. Kecsk Pécs Szomb Igény

2017/ Szegedi Tudományegyetem Informatikai Intézet

A lineáris programozás alapfeladata Standard alak Az LP feladat megoldása Az LP megoldása: a szimplex algoritmus 2018/

Előrenéző és paraméter tanuló algoritmusok on-line klaszterezési problémákra

A lineáris programozás alapfeladata Standard alak Az LP feladat megoldása Az LP megoldása: a szimplex algoritmus 2017/

Ládapakolási játékok

I.3 ELOSZTOTT FOLYAMATSZINTÉZIS BERTÓK BOTOND. Témavezetői beszámoló

Dualitás Dualitási tételek Általános LP feladat Komplementáris lazaság 2017/ Szegedi Tudományegyetem Informatikai Intézet

Online algoritmusok. Algoritmusok és bonyolultságuk. Horváth Bálint március 30. Horváth Bálint Online algoritmusok március 30.

Operációkutatás példatár

Csima Judit április 9.

Egészítsük ki a Drupal-t. Drupal modul fejlesztés

Egyes logisztikai feladatok megoldása lineáris programozás segítségével. - bútorgyári termelési probléma - szállítási probléma

Programozás I gyakorlat

Rákospalota, Kossuth utca Angyalföld kocsiszín

Supporting Information

Introduction to 8086 Assembly

Sztöchiometriai egyenletrendszerek minimális számú aktív változót tartalmazó megoldásainak meghatározása a P-gráf módszertan alkalmazásával

file./script.sh > Bourne-Again shell script text executable << tartalmat néz >>

Élő webes alkalmazások rendszerfelügyelete cím- és tartalomteszteléssel

A termeléstervezés alapjai -- termelés és kapacitás tervezés

2. Gyakorlat Khoros Cantata

Mátrixok és lineáris egyenletrendszerek

A DÖNTÉSELMÉLET ELEMEI


Kezelési utasítás Single "SBC" vezérlés

1/ gyakorlat. Lineáris Programozási feladatok megoldása szimplex módszerrel. Pécsi Tudományegyetem PTI

Diverzifikáció Markowitz-modell MAD modell CAPM modell 2017/ Szegedi Tudományegyetem Informatikai Intézet

Heurisztikák BitTorrent hálózatok max-min méltányos sávszélesség-kiosztására

Átírás:

Gyártórendszerek modellezése MILP modell PNS feladatokhoz 1 Pannon Egyetem M szaki Informatikai Kar Számítástudomány Alkalmazása Tanszék Utolsó frissítés: 2008. november 16. 1 hegyhati@dcs.uni-pannon.hu http://dcs.uni-pannon.hu/hegyhati/oktatas

Alap jelölések M Anyagok halmaza, M = R I P R Nyersanyagok halmaza I Köztes anyagok halmaza P Termékek halmaza O M veleti egységek halmaza, ahol O (M) (M) ϕ (m) m M-et gyártani képes m veleti egységek halmaza ϕ + (m) m M-et felhasználni képes m veleti egységek halmaza

Paraméterek M veleti egységek paraméterei o O-hoz: cap o x o prop o M veleti egység mérete, mazimális kapacitása Kihasználtásgtól független x költség M ködési kapacitástól függ arányos költség

Paraméterek Nyersanyagok paraméterei r R-hez: price r max r Nyersanyag ára Piacon vásárolható nyersanyag emnnyisége

Paraméterek Köztes anyagok paraméterei i I -hez: price i penal i max i Köztes anyag ára (opcionális termék) Büntetés megmaradó köztes anyagra Fels korlát a megmaradó köztes anyag mennyiségére

Paraméterek Termékek paraméterei p P-hez: price p min p max p Termék ára Alsó korlát a gyártandó termék mennyiségére Felsó korlát a termékek mennyiségére, a piac maximális igénye

Paraméterek Anyag - M veleti egység kapcsolat paraméterei o O, m M-hez: ir o,m or o,m Az o m veleti egység bemenetében az m aránya Az o m veleti egység kimenetében az m aránya

Változók Változók o O-hoz: x o R + 0 az o m veleti egység m ködési kapacitása y o {0, 1} 1, ha az o m veleti egység be van kapcsolva, 0 ha nem

Korlátozási feltételek Korlátozási feltétel m veleti egységekre o O-hoz: x o y o cap o

Korlátozási feltételek Korlátozási feltétel nyersanyagokra r R-hez: o ϕ + (r) x o ir o,r max r

Korlátozási feltételek Korlátozási feltételek köztes anyagokra i I -hez: 0 x o or o,i x o ir o,i max i o ϕ (i) o ϕ + (i)

Korlátozási feltételek Korlátozási feltételek termékekre p P-hez: min p x o or o,p x o ir o,p max i o ϕ (p) o ϕ + (p)

Célfüggvény Célfüggvény: prot maximalizálás z = pricep x o or o,p p P + i I r R o ϕ (p) (price i penal i ) pricer o ϕ + (r) o ϕ (i) x o ir o,r o ϕ + (p) x o or o,i x o ir o,p o ϕ + (i) x o ir o,i o O (x o y o + prop o x o )

Modell GLPK modell A megadott modell kissé máshogy épül fel, mint az el z fejezetben leírt, de természetesen ekvivalens azzal. Két új változóhalmaz került bevezetésre a könnyebb átlálthatóság kedvéért, melyek tárolják az egyes anyagokhoz az azokból gyártott, illetve felhasznált mennyiséget.

Modell Halmazok set O; set R; set I; set P; set M := P union I union R;

Modell Paraméterek param price{m in M}; param penal{i in I}; param max{m in M}; param min{p in P}; param cap{o in O}; param fix{o in O}; param prop{o in O}; param iratio{o in O, m in M}; param oratio{o in O, m in (P union I)};

Modell Változók var x {o in O} >=0; var y {o in O} >=0,<=1,integer; var consumed {m in M}; var produced {m in (P union I)};

Modell Korlátozási feltételek s.t. Unit_Capacity {o in O}: x[o]<=y[o]*cap[o]; s.t. Consumed_Material {m in M}: consumed[m]=sum{o in O}(x[o]*iratio[o,m]); s.t. Produced_Material {m in (P union I)}: produced[m]=sum{o in O}(x[o]*oratio[o,m]); s.t. Raw_Max {r in R}: consumed[r]<=max[r]; s.t. Intermediate_Min_Max {i in I}: 0<=produced[i]-consumed[i]<=max[i]; s.t. Product_Min_Max {p in P}: min[p]<=produced[p]-consumed[p]<=max[p];

Modell Célfüggvény maximize profit: + sum{m in (P union I)}(price[m]*(produced[m]-consumed[m])) - sum{i in I}(penal[i]*(produced[i]-consumed[i])) - sum{r in R}(price[r]*consumed[r]) - sum{o in O}(x[o]*prop[o]+y[o]*fix[o]) ;

Példa Adatok Példa Adatok / 1 set O := O1 O2 O3; set R := A B; set I := C D; set P := E;

Példa Adatok Példa Adatok / 2 param price := A 1 B 2 C 0 D 0 E 30; param penal:= C 0 D 5;

Példa Adatok Példa Adatok / 3 param max:= A 10 B 20 C 0 D 100 E 100; param min:= E 5; param cap:= O1 10 O2 10 O3 10;

Példa Adatok Példa Adatok / 4 param fix:= O1 5 O2 10 O3 5; param prop:= O1 5 O2 10 O3 0;

Példa Adatok Példa Adatok / 5 param iratio: A B C D E:= O1 0.5 0.5 0 0 0 O2 0.3 0.7 0 0 0 O3 0 0 1 0 0; param oratio: C D E:= O1 1 0 0 O2 0 0 1 O3 0 0.3 0.7;

Futtatás Futtatás bash# glpsol -m PNS_MILP.model -d PNS_MILP.data -o PNS_MILP.solution --log PNS_MILP.log PNS_MILP.model A modellt tartalmazó fájl PNS_MILP.data A példát tartalmazó fájl PNS_MILP.solution A megoldást tartalmazó fájl PNS_MILP.log A glpsol kimenetét tartalmazó fájl

Futtatás PNS_MILP.log Reading model section from PNS_MILP.model... 47 lines were read Reading data section from PNS_MILP.data... 59 lines were read Generating Unit_Capacity... Generating Consumed_Material... Generating Produced_Material... Generating Raw_Max... Generating Intermediate_Min_Max... Generating Product_Min_Max... Generating profit... Model has been successfully generated glp_simplex: original LP has 17 rows, 14 columns, 42 non-zeros glp_simplex: presolved LP has 9 rows, 8 columns, 18 non-zeros lpx_adv_basis: size of triangular part = 9 0: objval = 0.000000000e+00 infeas = 1.000000000e+00 (0) 1: objval = 8.650000000e+01 infeas = 0.000000000e+00 (0) * 1: objval = 8.650000000e+01 infeas = 0.000000000e+00 (0) * 3: objval = 2.930000000e+02 infeas = 0.000000000e+00 (0) OPTIMAL SOLUTION FOUND Integer optimization begins... + 3: mip = not found yet <= +inf (1; 0) + 3: mip = 2.930000000e+02 <= 2.930000000e+02 0.0% (1; 0) + 3: mip = 2.930000000e+02 <= tree is empty 0.0% (0; 1) INTEGER OPTIMAL SOLUTION FOUND Time used: 0.0 secs Memory used: 0.2 Mb (164283 bytes) lpx_print_mip: writing MIP problem solution to `PNS_MILP.solution'...

Futtatás PNS_MILP.solution fontos részei Problem: PNS_MILP Rows: 17 Columns: 14 (3 integer, 3 binary) Non-zeros: 42 Status: INTEGER OPTIMAL Objective: profit = 293 (MAXimum) 293 (LP) No. Row name Activity Lower bound Upper bound ------ ------------ ------------- ------------- ------------- 12 Raw_Max[A] 8 10 13 Raw_Max[B] 12 20 14 Intermediate_Min_Max[C] 0 0 = 15 Intermediate_Min_Max[D] 3 0 100 16 Product_Min_Max[E] 17 5 100 17 profit 293 No. Column name Activity Lower bound Upper bound ------ ------------ ------------- ------------- ------------- 1 x[o1] 10 0 2 x[o2] 10 0 3 x[o3] 10 0 4 y[o1] * 1 0 1 5 y[o2] * 1 0 1 6 y[o3] * 1 0 1