Technológiai folyamatok optimalizálása Ráduly Botond Mészáros Sándor MATLAB ® - Optimization Toolbox.

Slides:



Advertisements
Hasonló előadás
Készítette: Kosztyán Zsolt Tibor
Advertisements

A Floyd-Warshall algoritmus
Készítette: Kosztyán Zsolt Tibor
Alkalmazott informatika – gyakorló feladatok II.
Adatelemzés számítógéppel
Optimalizálás célérték kereséssel
TÖBBVÁLTOZÓS FÜGGVÉNYEK FELTÉTELES SZÉLSŐÉRTÉKSZÁMÍTÁSA
2005. Operációkutatás Ferenczi Zoltán. Széchenyi István Egyetem Operációkutatás eredete •második világháború alatt alakult ki •különböző szakmájú emberekből.
A lineáris programozási feladatok típusai és grafikus megoldásai
Miskolci Egyetem Gépészmérnöki és Informatikai Kar Alkalmazott Informatikai Tanszék 2012/13 1. félév 6. Előadás Dr. Kulcsár Gyula egyetemi docens.
Matematika II. 3. előadás Geodézia szakmérnöki szak 2010/2011. tanév Műszaki térinformatika ágazat tavaszi félév.
Matematika II. 2. előadás Geodézia szakmérnöki szak 2012/2013. tanév Műszaki térinformatika ágazat őszi félév.
Matematika II. 1. előadás Geodézia szakmérnöki szak 2012/2013. tanév/
Statisztika feladatok Informatikai Tudományok Doktori Iskola.
Operációkutatás szeptember 18 –október 2.
Lineáris és nemlineáris regressziók, logisztikus regresszió
Gépi tanulási módszerek
Szállítási feladatok Optimalitás vizsgálat
Lineáris programozás Modellalkotás Grafikus megoldás Feladattípusok
OPERÁCIÓKUTATÁS Kalmár János, 2012 Tartalom A nulla-egy LP megoldása Hátizsák feladat.
Optimalizálási módszerek 3. Lineáris programozás
Matematikai modellek a termelés tervezésében és irányításában
Miskolci Egyetem Gépészmérnöki és Informatikai Kar Alkalmazott Informatikai Tanszék 2013/14 1. félév 4. Előadás Dr. Kulcsár Gyula egyetemi docens.
III. előadás.
Lineáris algebra Mátrixok, determinánsok, lineáris egyenletrendszerek
Lineáris korreláció és lineáris regresszió. A probléma felvetése y = 1,138x + 80,778r = 0,8962.
Lineáris Programozás 4-5. feladat
Gazdasági informatika
Dr. Szalka Éva, Ph.D.1 Statisztika II. VI.. Dr. Szalka Éva, Ph.D.2 Regresszióanalízis.
Operációkutatás eredete
Kvantitatív módszerek
Az Alakfelismerés és gépi tanulás ELEMEI
Lineáris algebra.
Lineáris egyenletrendszer megoldása MS Excel Solver segítségével
Intelligens Felderítő Robotok
Kétismeretlenes elsőfokú (lineáris) egyenletrendszerek
Lineáris programozás.
Lineáris programozás Elemi példa Alapfogalmak Általános vizsg.
Lokális optimalizáció Feladat: f(x) lokális minimumának meghatározása 0.Adott egy kezdeti pont: x 0 1.Jelöljünk ki egy új x i pontot, ahol (lehetőleg)
TÓ FOLYÓ VÍZMINŐSÉGSZABÁLYOZÁSI PÉLDA  C H3 Célállapot (befogadó határérték) Oldott oxigén koncentráció ChChChCh  C H2  C H2 - a 13 E 1 (1-X 1 ) - a.
Optimalizáció modell kalibrációja Adott az M modell, és p a paraméter vektora. Hogyan állítsuk be p -t hogy a modell kimenete az x bemenő adatokon a legjobban.
Matematika II. 1. előadás Geodézia szakmérnöki szak 2010/2011. tanév Kataszteri ágazat tavaszi félév.
Következtető statisztika 9.
A sztochasztikus kapcsolatok (Folyt). Korreláció, regresszió
Az üzleti rendszer komplex döntési modelljei (Modellekkel, számítógéppel támogatott üzleti tervezés) II. Hanyecz Lajos.
A KOMPLEX DÖNTÉSI MODELL MATEMATIKAI ÖSSZEFÜGGÉSRENDSZERE Hanyecz Lajos.
Adatelemzés számítógéppel
Lineáris algebra.
Algoritmizálás, adatmodellezés tanítása 8. előadás.
Bellmann-Ford Algoritmus
Integrálszámítás.
OPERÁCIÓKUTATÁSDUALITÁS
Operációkutatás eredete második világháború alatt alakult ki különböző szakmájú emberekből álló team: matematikus, fizikus, közgazdász, mérnök, vegyész,
1 Mivel foglalkoz(t)unk a laborokon? 1.hét: Word dokumentumok 1.hét: Word dokumentumok tagolása, tartalomjegyzék, ábrák számozása, hivatkozások, egyenlet-szerkesztő.
OPERÁCIÓKUTATÁS TÖBBCÉLÚ PROGRAMOZÁS. Operáció kutatás Több célú programozás A * x  b C T * x = max, ahol x  0. Alap összefüggés: C T 1 * x = max C.
BIOLÓGUS INFORMATIKA 2008 – 2009 (1. évfolyam/1.félév) 6.
Technológiai folyamatok elemzése és optimalizálása Ráduly Botond Mészáros Sándor (Analiza şi optimizarea proceselor tehnologice) (Process analysis and.
TÁMOP /1-2F Informatikai gyakorlatok 11. évfolyam Alapvető programozási tételek megvalósítása Czigléczky Gábor 2009.
Technológiai folyamatok optimalizálása Dinamikus programozás Ráduly Botond Mészáros Sándor.
LL(1)-elemzés ● az LL(1)-elemzők már jobbak az előzőeknél, bár nem fedik le a programozási nyelvek szükségleteit ● alapötlet: a levezetés következő lépéséhez.
Operációkutatás I. 1. előadás
Lineáris programozás Elemi példa Alapfogalmak Általános vizsg.
VÍZMINŐSÉGSZABÁLYOZÁSI PÉLDA
Technológiai folyamatok optimalizálása
Technológiai folyamatok optimalizálása
Technológiai folyamatok optimalizálása
III. előadás.
LL(1)-elemzés az LL(1)-elemzők már jobbak az előzőeknél, bár nem fedik le a programozási nyelvek szükségleteit alapötlet: a levezetés következő lépéséhez.
Informatikai gyakorlatok 11. évfolyam
2. Regresszióanalízis Korreláció analízis: milyen irányú, milyen erős összefüggés van két változó között. Regresszióanalízis: kvantitatív kapcsolat meghatározása.
Előadás másolata:

Technológiai folyamatok optimalizálása Ráduly Botond Mészáros Sándor MATLAB ® - Optimization Toolbox

Optimalizálás eszköztár egy függvényhalmaz, amely különböző optimalizálási feladatok megoldását teszi lehetővé. könnyen használható algoritmusokat tartalmaz feltétel nélküli nemlineáris minimalizálás feltételes nemlineáris minimalizálás lineáris programozás kvadratikus programozás lineáris regresszió stb. típusú feladatokhoz

fminunc Feltétel nélküli többváltozós nemlineáris optimalizálási függvény x = fminunc(F cel,x 0,options) célfüggvény kezdeti érték beállítások Az x lokális minimumát találja meg, x 0 -ból kiindulva. A keresési paramétereket az Options tulajdonságvektor tartalmazza. Ezt az optimset paranccsal lehet kezelni. pl. F cel = x x 2 2 x 1,0 = 1 x 2,0 = 1

x = fminunc(' x(1)^2 + x(2)^2 ', x0) Az előbbi feladat Matlab szabályok szerint felírva: x0 = [1 1] clear all x = -1:0.05:1; y = -1:0.05:1; for i = 1:length(x) for j = 1:length(y) F(i,j)= (x(i)^2 + y(j)^2)/2; end surf(x,y,F)...és a megoldás: x 1 * = ·10 -8 x 2 * = ·10 -8 Grafikusan a következő módon ábrázolhatjuk:

Az F cel = x x 2 2 ábrázolása a [-1 1] intervallumon. A minimum 0-ban van, tehát x * = [0 0] (ehhez képest az fminunc algoritmus egy közelítő x* = [ ] megoldást talált)

A keresési paramétereket az optimset paranccsal lehet beállítani. Információkat az alkalmazott algoritmusról, a lépések számáról [x,fval,exitflag,output] = fminunc(' x(1)^2 + x(2)^2 ', x0) Az output mező fontosabb tulajdonságai: iterations – az elvégzett lépések száma funcCount – a célfüggvény kiszámításának száma algorithm – a használt optimalizálási algoritmus Az alkalmazott algoritmusról megvalósítását a type paranccsal lehet megnézni

fmincon Feltételes többváltozós nemlineáris optimalizálási függvény (nemlineáris programozás) Az x minimumát találja meg, x 0 -ból kiindulva. A keresési paramétereket az Options tulajdonságvektor tartalmazza. Ezt az optimset paranccsal lehet kezelni. x = fmincon(F cel,x 0,A,B,C,D,AH,FH, NLF, options) célfüggvény kezdeti megoldás egyenlőtlenség feltétel: A·x ≤ B egyenlőség feltétel: C·x = D alsó és felső határ: AH ≤ x ≤ FH nemlineáris feltétel

Feladat: minimalizáljuk az Fcel = - x 1 · x 2 ·x 3 célfüggvényt az x 0 = [ ] kezdeti megoldásból kiindulva úgy, hogy teljesüljenek a következő feltételek: -x 1 - 2· x 2 - 2·x 3 ≤ 0 x 1 + 2· x 2 + 2·x 3 ≤ 72 Megoldás: 1.az egyenlőtlenséget A·x ≤ B formára hozzuk

2.Meghatározzuk a kezdeti megoldást: x0 = [ ] [x,fval,exitflag,output] = fmincon(' -x(1) * x(2) * x(3)', x0, A, B) a megoldás: x = [ ] fval = e+003 output = iterations: 11 funcCount: 64 stepsize: 1 algorithm: 'medium-scale: SQP, Quasi-Newton, line-search' 3.Beírjuk az optimalizálási parancsot:

linprog lineáris programozási algoritmus x = linprog(F cel, A,B,C,D, AH,FH, x 0, options) célfüggvény együtthatói kezdeti megoldás egyenlőtlenség feltétel: A·x ≤ B Az x minimumát találja meg, x 0 -ból kiindulva. Ha valamelyik input ismeretlen, [ ] helyettesíti. A további keresési paramétereket az Options tulajdonságvektor tartalmazza. Ezt az optimset paranccsal lehet kezelni. egyenlőség feltétel: C·x = D alsó és felső határ: AH ≤ x ≤ FH

Feladat: minimalizáljuk az F cél = - 5·x 1 -4·x 2 -6·x 3 célfüggvényt úgy, hogy teljesüljenek a következő feltételek: x 1 - x 2 + x 3 ≤ 20 3· x 1 + 2· x 2 + 4·x 3 ≤ 42 3· x 1 + 2· x 2 ≤ 30 0 ≤ x 1, 0 ≤ x 2 0 ≤ x 3 Megoldás: 1.írjuk az együtthatókat mátrix formába f = [-5; -4; -6] A = [ ] B = [20; 42; 30] AH = [0; 0; 0]

3.Beírjuk az optimalizálási parancsot: [x,fval,exitflag,output] = linprog(f,A,B,[],[],AH); Megoldás: x * = [ ] F cél * =

Feladat: a lehető legtöbb szendvics készítése véges mennyiségű alapanyagból. Adott: 120 dkg vaj 100 dkg sonka 200 dkg sajt 20 db keménytojás korlátlan mennyiségű kenyér Szendvicstípusok és szükséges alapanyagok: AlapanyagNormál szendvicsSajtos szendvics vaj 32 sonka 31 sajt 25 tojás 1/41/2 „Szendvics” feladat

Feltételek: x 1 >= 0; x 2 ≥ 0(negatív mennyiség) 3·x 1 + 2·x 2 ≤ 120(vaj) 3·x 1 + x 2 ≤ 100(sonka) 2·x 1 + 5·x 2 ≤ 200(sajt) 1/4·x 1 + 1/2·x 2 ≤ 20(tojás) 1. A feladat matematikai megfogalmazása: Legyen a normál szendvicsek száma x 1, a sajtos szendvicsek száma x 2 A maximalizálandó célfüggvény: F cél = x 1 + x 2 F cél = - (x 1 + x 2 ) 2. A feladat típusának meghatározása, megoldási algoritmus választása: - a célfüggvény és a feltételek lineáris összefüggések lineáris programozás

A feladat felírása Matlab szabályok szerint: B = [120; 100; 200; 20] AH = [0 0] A = [3 2; 3 1; 2 5; ] f = [-1 -1] [X,FVAL,EXITFLAG,OUTPUT] = linprog(f,A,B,[],[],AH) A lineáris programozási parancs: A megoldás: x * = [20 30], F cél * = 50

quadprog kvadratikus programozási algoritmus x = quadprog(H, F, A, B, C, D, AH, FH, x 0, options) célfüggvény együtthatói kezdeti megoldás egyenlőtlenség feltétel: A·x ≤ B egyenlőség feltétel: C·x = D alsó és felső határ: AH ≤ x ≤ FH négyzetes együtthatók

Feladat: Egy cégnek három részlege van (R1, R2, R3) és alapanyaggal két beszállító (B1,B2) látja el. A szállítási költségek, a rendelkezésre álló illetve a szükséges alapanyag-mennyiség az alábbi táblázatban láthatóak: Szállítási költség (RON/t) B1B2Szükséges mennyiség (t) R R R Rendelkezésre áll (t) 7040 Szállítás optimalizálása MB1 = m 1,1 + m 1,2 + m 1,3 (B1 által szállított anyagmennyiség, t) MB2 = m 2,1 + m 2,2 + m 2,3 (B2 által szállított anyagmennyiség, t) C1 = 20·m 1,1 + 30·m 1,2 + 20·m 1,3 (a teljes szállítási költség B1-től, RON) C2 = 30·m 2,1 + 35·m 2,2 + 25·m 2,3 (a teljes szállítási költség B1-től, RON)

MR1 = m 1,1 + m 2,1 (az R1-hez szállított anyagmennyiség, t) MR2 = m 1,2 + m 2,2 (az R2-hez szállított anyagmennyiség, t) MR3 = m 1,3 + m 2,3 (az R2-hez szállított anyagmennyiség, t) A minimalizálandó célfüggvény: F cél = C 1 + C 2 Ha m 1,1 = x 1, m 1,2 = x 2, m 1,3 = x 3, m 2,1 = x 4, m 2,2 = x 5 és m 2,3 = x 6, akkor F cél = 20 · x · x · x · x · x · x 6 Feltételek: x 1 + x 2 + x 3 ≤ 70 x 4 + x 5 + x 6 ≤ 40 x 1 + x 4 = 60 x 2 + x 5 = 15 x 3 + x 6 = 30 x 1, x 2, x 3, x 4, x 5, x 6 ≥ 0

f=[ ] A=[ ; ] B=[70; 40] C=[ ; ; ] D=[60; 15; 30] lineáris összefüggések  linprog [X,FVAL,EXITFLAG,OUTPUT] = linprog(f,A,B,C,D,AH)