Szakdolgozat. Miskolci Egyetem. Nemlineáris programozás. Készítette: Horváth Gábor Programtervező informatikus hallgató

Save this PDF as:
 WORD  PNG  TXT  JPG

Méret: px
Mutatás kezdődik a ... oldaltól:

Download "Szakdolgozat. Miskolci Egyetem. Nemlineáris programozás. Készítette: Horváth Gábor Programtervező informatikus hallgató"

Átírás

1 Szakdolgozat Miskolci Egyetem Nemlineáris programozás Készítette: Horváth Gábor Programtervező informatikus hallgató Témavezető: Dr. Nagy Tamás egyetemi docens, Alkalmazott Matematikai Tanszék Miskolc, 2013

2 Miskolci Egyetem Gépészmérnöki és Informatikai Kar Alkalmazott Matematikai Tanszék Szám: Szakdolgozat Feladat Horváth Gábor (GWUVPQ) programtervező informatikus jelölt részére. A szakdolgozat tárgyköre: operációkutatás A szakdolgozat címe: Nemlineáris programozás A feladat részletezése: Irodalomkutatás. Történeti áttekintés. Feltételes és feltétel nélküli optimalizálás. Newton és kvázi Newton módszerek, SUMT módszer. Bemenő adatok beviteli terve, kimenő adatok megjelenítési terve. Az algoritmusok programkódjának elkészítése. WEB-es megjelenítés. Témavezető: Dr. Nagy Tamás, egyetemi docens A feladat kiadásának ideje: szakfelelős 2

3 1. A szakdolgozat feladat módosítása szükséges (módosítás külön lapon) nem szükséges dátum témavezető(k) 2. A feladat kidolgozását ellenőriztem: témavezető (dátum, aláírás): konzulens (dátum, aláírás): A szakdolgozat beadható: dátum témavezető(k) 4. A szakdolgozat szövegoldalt program protokollt (listát, felhasználói leírást) elektronikus adathordozót (részletezve) egyéb mellékletet (részletezve) tartalmaz dátum témavezető(k) 5. bocsátható A szakdolgozat bírálatra nem bocsátható A bíráló neve: dátum szakfelelős 6. A szakdolgozat osztályzata a témavezető javaslata: a bíráló javaslata: a szakdolgozat végleges eredménye: Miskolc, a Záróvizsga Bizottság Elnöke 3

4 Tartalomjegyzék 1. Bevezetés 5 2. Téma elméleti kifejtése Történeti áttekintés Feltétel nélküli optimalizálás Alapfogalmak Az optimalitás szükséges és elégséges feltételei A feladat megoldásának módja A feltétel nélküli optimalizálás numerikus módszerei Newton módszer Kvázi Newton módszerek Newton módszerek vonalmenti minimumkereséssel Feltételes optimalizálás Alapfogalmak KKT feladat A feltételes optimalizálás numerikus módszerei Büntetőfüggvényes SUMT Fejlesztői dokumentáció Bemenő adatok beviteli terve Kimenő adatok megjelenítési terve Programkód Newton módszer Kvázi Newton módszerek SUMT módszer Megjegyzések Összefoglalás 38 Irodalomjegyzék 40 Adathordozó használati útmutató 41 4

5 1. fejezet Bevezetés Az Operációkutatás nevű tantárgy során rengeteg, korábban nem tárgyalt matematikai problémával és ezek megoldási módszereivel találkoztunk. Az egyik alapvető típusa ezeknek a függvények szélsőértékének kereséséhez kötődik. A vizsgált függvény jellegéből adódóan megkülönböztethetünk többek között lineáris, egész értékű és nemlineáris optimalizálást. Különösen az utóbbi terület az, ami kiemelkedik a többi közül - annak ellenére, hogy csak a múlt század közepén indult igazán fejlődésnek, mára nagyméretű problémák megoldását teszi lehetővé. A különböző programozási feladatok nagyon érdekesnek bizonyultak számomra. Azért választottam ezt a témát, mert úgy gondolom, hogy logikusan felépíthető és jól érthető a definíciók, tételek és módszerek sokasága. A szakdolgozatom két fő részből tevődik össze: az első az elmélet, a második a programozás. Így tehát egy rövid történeti áttekintés után ismertetem a feltételes és a feltétel nélküli optimalizálást, és az ezekhez kapcsolódó numerikus eljárásokat. Utóbbiak azért fontosak, mert a számítógépek számára kevésbé bonyolult, ezáltal gyorsabban értelmezhető algoritmusokat adnak, vagyis programozási szempontból előnyösebbek, mint a nem numerikus változatok. Ezután pedig a megvalósítás következik, mivel a választott témának része a web-es megjelenítés is, mely során az említett numerikus módszereket készítem el, böngészőben futtatható programként. A kutató munka a Miskolci Egyetem stratégiai kutatási területén működő Fenntartható Természeti Erőforrás Gazdálkodás Kiválósági Központ / Alkalmazott Anyagtudomány és Nanotechnológia Kiválósági Központ / Mechatronikai és Logisztikai Kiválósági Központ / Innovációs Gépészeti Tervezés és Technológiák Kiválósági Központ keretében valósult meg. 5

6 2. fejezet Téma elméleti kifejtése 2.1. Történeti áttekintés A nemlineáris optimalizálás komoly múltra tekint vissza. Az első fontosabb mű, melyet meg kell említeni, Joseph-Louis Lagrange francia matematikus nevéhez fűződik ban készült el a Mécanique analitique (Analitikus mechanika) című könyve, melyben leírta a függvények szélsőértékeinek kiszámítására vonatkozó, egyenlőség feltételek esetén érvényes multiplikátoros módszerét ban Lagrange kimondta a róla elnevezett egyenlőtlenségi elvet, amit később Osztrogradszkij és Gauss is megerősített. A következő említésre méltó állomás 1902, amikor Farkas Gyula magyar matematikus-fizikus publikálta a később róla elnevezett Farkas-lemmát (tételt). Ez a lineáris programozás egyik alaptétele, de a nemlineáris optimalizálás területén is használják. Az 1930-as években Gilbert Bliss és Constantin Carathéodory is egyenlőség feltételekkel rendelkező feladatokkal foglalkozott. Viszont 1939-ben William Karush az egyenlőtlenségi feltételekkel megadott problémákat vizsgálta, kutatásait azonban nem tette közzé. Utána nem sokkal Fritz John szintén ezt a témát kutatta, de eredményei gyengébbek voltak, mint Karushé. Az áttörést egy 1950-ben megjelent, Harold W. Kuhn és Albert W. Tucker által írt cikk hozta meg. Ők is azzal foglalkoztak, amivel Karush, és annak ellenére, hogy tőle függetlenül dolgoztak, mint utólag kiderült ugyanarra a megállapításra jutottak, mint Karush. Ebben az írásban szerepelt először a nemlineáris programozás, mint kifejezés. Sokan eddig nem ismerték fel a téma fontosságát és hasznosságát, de ekkor megindult a fejlődés ezen a téren. Egyre több helyen tudták felhasználni az újonnan elért eredményeket, például a mérnöki, valamint a közgazdasági tudományok területén Feltétel nélküli optimalizálás A kiinduló feladat a következő: adott egy f(x) : R n R függvény. Ennek kell a minimumát megkeresni. A feltétel nélküli jelző alapvetően azt jelenti, hogy nincs semmilyen korlátozás megadva az x döntési változóra. 6

7 2.2. Feltétel nélküli optimalizálás Alapfogalmak Ahhoz, hogy a nemlineáris optimalizálási feladat megoldásához alkalmazandó módszert bemutassam, szükség van néhány definíció és tétel ismertetésére. Elsőként az iránymenti deriváltat, majd a differenciálhatóságot és a gradiens fogalmát definiáljuk definíció. Legyen S R n egy nemüres halmaz és legyen f : R n R függvény. Legyen x S és legyen d R n, d 0 olyan vektor, hogy x+λd S, λ > 0 elegendően kicsi valós számra. Az f függvénynek az x pontban a d irány mentén vett iránymenti deriváltjának nevezzük és f (x, d)-vel jelöljük az alábbi határértéket: f (x, d) = lim λ 0+ f(x + λ d) f(x), λ (amennyiben létezik a határérték.) Az iránymenti derivált a függvény d irányba történő változását mutatja. A differenciálhatóság a következőt jelenti: 2.2. definíció. Legyen S R n egy nemüres halmaz, és legyen f : R n R függvény. Az f függvényt differenciálhatónak mondjuk az S halmaz egy x belső pontjában, ha létezik egy f(x) R n vektor és egy α : R n R függvény úgy, hogy f(x) = f(x) + f(x)(x x) + x x α(x, x x) minden x S-re, ahol lim x x α(x, x x) = 0. Ennek van egy másik alakja, ahol x-et x-re, x-et pedig x + λd (λ R) vektorra cseréljük. Ebben az esetben x x = λd. Így az előző összefüggés erre módosul: f(x + λd) = f(x) + λ f(x)d + λ d α(x, λd) bármely λ valós számra, és d vektorra. Ekkor a határérték: lim λ 0 α(x, λd) = 0. A formulában szereplő f(x) vektort hívjuk gradiensnek. Ehhez két tétel kapcsolódik. Az első az iránymenti derivált és a gradiens vektor közötti összefüggést mutatja meg tétel. Legyen f : S R függvény differenciálható és legyen a d irányvektor egységhosszúságú, azaz d = 1. Ekkor f (x, d) = f(x)d. A második tétel pedig azt mutatja meg, hogy a gyakorlatban hogyan kell meghatározni egy függvény gradiensét tétel. Legyen f : S R differenciálható függvény. A f(x) vektor elemei az f függvény parciális deriváltjai, azaz ( f(x) f(x) =, f(x),..., f(x ) n). x 1 x 2 x n A gradiens vektor előállításával analóg módon kapjuk a Hesse-mátrixot, melyre szintén szükség van a feladatok megoldásához. 7

8 2.2. Feltétel nélküli optimalizálás 2.5. definíció. Az f függvény második parciális deriváltjaiból álló H = 2 f(x) R n n mátrixot Hesse-mátrixnak nevezzük. (H(x)) ij = ( 2 f(x)) ij = 2 f(x) x i x j Mivel megegyeznek a másodrendű vegyes parciális deriváltak Hesse mátrix szimmetrikus. ( 2 f(x) x j x i ) = 2 f(x) x i x j, a Az optimalitás szükséges és elégséges feltételei A minimum szükséges feltételére az alábbi tétel vonatkozik: 2.6. tétel. Legyen f : R n R függvény legalább egyszer differenciálható az x R n pontban. Ekkor ha x lokális minimumpontja f-nek, akkor f(x) = 0. Ehhez kötődik a stacionárius pont definíciója definíció. Az x R n pontot stacionárius pontnak nevezzük, ha f(x) = 0. Evidens, hogy a keresett minimumpont csak ezen pontok közül kerülhet ki. Amennyiben az f függvény legalább kétszer differenciálható, akkor a szükséges feltételt leíró 2.6 tétel így módosul: 2.8. tétel. Legyen f : R n R függvény legalább kétszer differenciálható az x R n pontban. Ekkor ha x lokális minimumpontja f-nek, akkor f(x) = 0 és H(x) Hesse mátrix pozitív szemidefinit. Ennek a tételnek a megfordítása egy kis módosítással pontosan az optimalitás elégséges feltételét adja meg tétel. Legyen f : R n R függvény legalább kétszer differenciálható az x R n pontban. Ha f(x) = 0 és H(x) pozitív definit, akkor x szigorúan lokális minimumpontja f-nek. Megjelent egy új tulajdonság, a definitség, amire a Hesse-mátrix vizsgálatakor van szükségünk definíció. Legyen A egy n n-es (kvadratikus) mátrix. Az A mátrix pozitív definit, ha x T Ax > 0, x 0, x R n esetén. Ha megengedjük az egyenlőséget: x T Ax 0, akkor a mátrix pozitív szemidefinit. Analóg módon a mátrix negatív definit, ha x T Ax < 0, és negatív szemidefinit, ha x T Ax 0. Az előző kategóriákba nem sorolható mátrixokat indefinitnek nevezzük. Amennyiben f maximumának megtalálása a feladat, a fenti tételek ugyanígy érvényesek azzal a módosítással, hogy a H mátrixra vonatkozó részeknél pozitív helyett negatív definit a helyes. Egy konkrét feladat megoldásakor viszont célravezetőbb lehet úgy eljárni, hogy f maximuma helyett f minimumát keressük. 8

9 2.2. Feltétel nélküli optimalizálás A feladat megoldásának módja Mivel az f függvény globális minimumát szeretnénk megkapni, azt úgy oldhatjuk meg, hogy a lokális minimumpontokat megkeressük, majd kiválasztjuk közülük a legkisebb értékűt. Persze ilyenkor figyelni kell arra is, hogy a függvénynek van-e globális minimuma, tehát f korlátos legyen. A megoldás menete a szükséges és az elégséges tételek állításaiból következik. Csak olyan pontból lehet minimum, ami stacionárius, ezért először meg kell keresni az összes stacionárius pontot, tehát meg kell oldani a f(x) = 0 egyenletrendszert. Ezután minden ilyen pontra megnézzük, hogy a Hesse mátrix pozitív definit-e az adott pontban. Ha igen, akkor a vizsgált pont lokális minimum. Ha van globális minimuma a függvénynek, akkor a lokális pontok közül a legkisebb értékű lesz a globális minimum pont. A feltétel nélküli optimalizálási feladatot tehát így oldjuk meg: 1. Kiszámítjuk azon x vektorok értékét, melyekre f(x) = 0 teljesül, ezek eredményezik a lehetséges minimum helyeket. 2. Megvizsgáljuk a kapott x-ekre, hogy H(x) pozitív definit-e. Ha igen, akkor lokális minimumpontot kaptunk. 3. A függvény korlátosságát figyelembe véve, a lokális minimumpontok közül kiválaszthatjuk a globális pontot, ha van. Amennyiben a vizsgált mátrix szimmetrikus (tudjuk a Hesse mátrixról hogy az), vagyis H T = H, a pozitív definitség eldöntéséhez többféle mód áll rendelkezésünkre. Gauss-elimináció használatával a vizsgálandó mátrixból egy felső háromszög mátrixot kapunk. Ha ennek főátlójában minden elem pozitív, akkor az eredeti mátrix pozitív definit. A Hesse-mátrix minden k k-s főminor mátrixának kiszámolom a determinánsát. Ha ezek mindegyike pozitív, akkor a vizsgált mátrix pozitív definit. Ezt nevezik Főminor-módszernek. Sajátérték teszt segítségével is megoldhatjuk a problémát - ha a H(x) minden sajátértéke pozitív, akkor a mátrix pozitív definit. (Mint tudjuk, a sajátérték az a λ szám, ami kielégíti az Hx = λx egyenletet) Inercia tesztet használva a sajátértékek kiszámolása nélkül meg tudjuk állapítani, hogy a mátrixnak mennyi pozitív, mennyi zérus és mennyi negatív sajátértéke van. Ezt a három számot nevezzük inerciának. Ha csak pozitívak vannak, akkor a mátrix pozitív definit. A Cottle algoritmust kell használni ennél a módszernél. Példa Legyen f : R 2 R, és keressük f(x 1, x 2 ) = x x 3 2 3x 1 27x minimumát! ( ) 3x Először is felírjuk a függvény gradiensét: f(x) = 3x

10 2.3. A feltétel nélküli optimalizálás numerikus módszerei Ezután meg } kell oldani a f(x) = 0 egyenletrendszert. 3x = 0. Gyors számolással megkapjuk, hogy x 1 = ±1 és x 2 = ±3. Összesen 3x = 0 tehát 4 olyan pontot kapunk, amelyek teljesítik a szükséges feltételt, vagyis stacionárius pontok: x 1 = (1; 3), x 2 = (1; 3), x 3 = ( 1; 3), x 4 = ( 1; 3). [ ] 6x1 0 A második lépés a Hesse mátrix felírása. H(x) =. Most pedig jöhet a 0 6x 2 definitség[ vizsgálata, ] a már meglévő pontokat a H mátrixba helyettesítve. 6 0 H(x 1 ) =. Ez pozitív definit mátrix = x 1 pont lokális minimumhely [ ] 6 0 H(x 2 ) =. Ez indefinit mátrix = x 2 pont ekkor nyeregpont [ ] 6 0 H(x 3 ) =. Ez is indefinit mátrix = x 3 pont szintén nyeregpont [ ] 6 0 H(x 4 ) =. Ez negatív definit mátrix = x 4 pont lokális maximumhely A függvény jellegéből adódóan nincs globális szélsőérték, csak lokálisak A feltétel nélküli optimalizálás numerikus módszerei Az előző alfejezetben láttuk, hogyan lehet a feltétel nélküli optimalizálás feladatát megoldani. Vannak azonban olyan módszerek erre a problémára, melyek a számítógépek számára jobban értelmezhetők, gyorsabb végrehajtást tesznek lehetővé. Ezek a numerikus metódusok, melyek nem feltétlenül fognak pontos eredményt szolgáltatni, ilyenkor viszont kellően kicsi hibahatár esetén nagyon közel lehetnek hozzájuk. Az alapfeladat nem változott, egy f(x) : R n R függvény minimumát kell meghatározni. Alapvetően 2 különböző típusú numerikus módszer létezik erre: a Newton jellegűek, valamint a vonalmenti optimalizálást alkalmazó eljárások. Szakdolgozatom témájából adódóan elsősorban az előbbi módszerekkel foglalkozom. Ezeken belül a továbbiakban a Newton módszert, valamint a kvázi Newton módszereket ismertetem. Később azonban a két típus együttes használatának lehetőségét is bemutatom Newton módszer A Newton módszer a numerikus analízisben többek között egyenletrendszerek eredményének kiszámítására alkalmazható. Azonban a nemlineáris optimalizálás esetén is lehet olyan formára hozni a feladatot, hogy ilyen módon legyen megoldható. Tehát először nézzük meg az egyenletrendszerek esetét. Legyenek a függvények f 1, f 2,..., f m : R n R többváltozósak és differenciálhatóak. Tegyük egyenlővé mindegyiket nullával! Az alábbi, m egyenletet tartalmazó rendszert kapjuk: 10

11 2.3. A feltétel nélküli optimalizálás numerikus módszerei f 1 (x) = 0 f 2 (x) = 0. f m (x) = 0 Alkalmazzuk az elsőfokú Taylor polinomot a függvények közelítésére egy x k R n helyen. A következőt kapjuk: f 1 (x) f 1 (x k ) + f 1 (x k )(x x k ) f 2 (x) f 2 (x k ) + f 2 (x k )(x x k ). f m (x) f m (x k ) + f m (x k )(x x k ) A mátrix-vektoros jelölésre áttérve, legyen F : R n R m az a vektor, melynek elemei az f 1 (x), f 2 (x),..., f m (x) függvények. Emellett legyen egy J(x k ) mátrix, m n dimenziós, melynek minden sorvektora az azonos sorszámú függvény x k pontbeli gradiense, vagyis J(x k ) = F(x k ). Ez a J mátrix a Jacobi mátrix. A korábbi egyenletrendszer így átírható egyszerűbb alakra: F(x) F(x k ) + J(x k )(x x k ). Az x k+1 -edik közelítést válasszuk meg úgy, hogy a Taylor polinom értéke nulla legyen, azaz F(x k ) + J(x k )(x k+1 x k ) = 0, így x k+1 -et ez a lineáris egyenletrendszer adja meg: J(x k )(x k+1 x k ) = F(x k ). Ha az egyenletek száma és a változók száma megegyezik, akkor a J(x k ) mátrix négyzetes, és ha létezik inverze, akkor x k+1 = x k J(x k ) 1 F(x k ). A Newton módszer lényege tehát ez: egy tetszőleges x 1 R n vektorból kiindulva a J(x k )(x k+1 x k ) = F(x k ), és x k+1 = x k J(x k ) 1 F(x k ) formulák segítségével meg lehet határozni az x 2, x 3,..., x k sorozatot, iteratív módon. Addig kell folytatni a számolást, amíg két, egymás utáni közelítés nem lesz elég közel, egy adott ε határon belül: x k+1 x k < ε. Nézzük, a feltétel nélküli optimalizálás esetén ez hogy működik. A cél megtalálni egy f : R n R, (egy n változós) függvény minimumát. Tudjuk, hogy a minimum szükséges feltétele a f(x) = 0, ami pontosan egy olyan egyenletrendszer, mely n 11

12 2.3. A feltétel nélküli optimalizálás numerikus módszerei változós és n egyenletből áll. Ennek megoldására éppen a Newton módszer szolgál. Ahhoz, hogy ez működjön, F(x) helyére f(x)-et kell írni, így a Jacobi mátrix i-edik sora a f(x) i-edik elemének a gradiense, azaz H(x) = F(x) = 2 F(x). Ez a mátrix pedig éppen az f(x) függvény H(x) Hesse mátrixa. A Newton módszer így a következő: egy tetszőleges x k vektor használatával megoldjuk a R n (k = 1) kiindulási H(x k )(x k+1 x k ) = f(x k ) egyenletrendszert, melyből meg tudjuk határozni a következő, x k+1 közelítést. Ha létezik H(x) inverze, a következő formula is használható: x k+1 = x k H(x k ) 1 f(x k ). Célszerű bevezetni az s k = x k+1 x k irányvektort. Az előző két formulát megkülönböztetjük elnevezésben, az újonnan bevezetett s k kiszámítására az alábbi képletek adódnak: Newton I. módszer: H(x k )s k = f(x k ), Newton II. módszer: s k = H(x k ) 1 f(x k ). Ha már ismerjük az s k irányvektort, a következő közelítést a formulával kapjuk. Példa Newton módszerre Számítsuk ki Newton módszerrel az x k+1 = x k + s k f(x 1, x 2 ) = x x 1 x 2 + 2x x 1 3x 2 függvény minimumát az x 1 = (2, 1) kiindulási vektort használva. Először is a gradiensvektort kell felírni, majd a Hesse mátrixot. ( ) [ ] 2x1 + x f(x) =, H(x) =. x 1 + 4x Ezekbe behelyettesítve az x 1 pontot, azt kapjuk, hogy ( ) [ ] f(x 1 ) =, H(x 1 ) = A Newton I. módszert használva a H(x k )s k = f(x k ) egyenletrendszert kell felírnunk, melyben s 1 = (s 1, s 2 ) irányvektorra a következő összefüggés adódik: 2s 1 + s 2 = 6 s 1 + 4s 2 = 3 12

13 2.3. A feltétel nélküli optimalizálás numerikus módszerei Ennek a megoldása hamar kiszámolható, az x 1 -hez tartozó irányvektor ez lesz: s 1 = ( 3, 0). Így a következő ( közelítés: ) x 2 = x 1 +s 1 = ( 1, 1). Ezután x 2 behelyettesítésével folytatjuk. f(x 2 ) =. Itt azonban megállunk, mert teljesül az optimalitás szükséges 0 0 feltétele, a gradiens értéke az adott pontban 0, tehát megkaptuk az optimumpontot, ami x 2 = ( 1, 1). A célfüggvény optimális értéke: f min = 2. A Newton módszernél előfordulhatnak problémák, például a Hesse mátrix nem invertálható, vagy az irányvektor nem csökkenő irány (egyre távolodunk az optimumtól). Ezeket más módszerek használatával kerülhetjük el Kvázi Newton módszerek Ahogy a nevükből is sejteni lehet, a kvázi Newton módszerek a Newton módszer módosult változatai. A legfőbb eltérés az, hogy jelen esetben nem a Hesse mátrixot, vagy az inverzét használjuk, hanem ezeket közelítő mátrixokkal helyettesítjük. Legyen F : R n R m függvény. Vizsgáljuk az F(x) = 0 egyenletrendszert. Ha az x k R n pontbeli elsőfokú Taylor polinommal közelítjük a z F(x) függvényt, a függvényérték közelítése az x k+1 pontban F(x k+1 ) F(x k ) + J(x k )(x k+1 x k ). Az optimalizálás esetén egy f : R n R függvény minimumának megtalálása a cél, alapvetően a f(x) = 0 egyenletrendszert kell megoldani. Ezzel az előző összefüggés az alábbira módosul: f(x k+1 ) f(x k ) + H(x k )(x k+1 x k ). Bevezetünk két új jelölést: y k a gradiensek különbsége, s k pedig az x vektorok különbsége, ekkor y k H(x k )s k. Most fogjuk a Hesse mátrixot helyettesíteni, mégpedig egy B k közelítő mátrixszal. Ekkor y k B k s k. A következő helyettesítést, a B k+1 mátrixot úgy válasszuk meg, hogy y k = B k+1 s k teljesüljön. Ezt az egyenlőséget nevezzük kvázi Newton feltételnek. Ha az összefüggést y k helyett s k -ra rendezzük, ezt kapjuk: s k H(x k ) 1 y k. Ekkor, ha a Hesse mátrix inverzét helyettesítjük egy D k közelítő mátrixszal: s k D k y k. 13

14 2.3. A feltétel nélküli optimalizálás numerikus módszerei D k+1 mátrixot pedig úgy kell megválasztani, hogy igaz legyen a következő: s k = D k+1 y k Ezt szintén kvázi Newton feltételnek nevezzük. Mivel a Newton módszerből kiinduló eljárásokról van szó, alapvetően egy f : R n R függvény minimumát kell megtalálni, egy tetszőleges x k R n vektorból kiindulva. Először a függvény gradiensét kell felírni. Ezután viszont a Hesse mátrixra már nincs szükség, mert helyettesítjük azt a korábban említett B-vel, vagy az inverzét a D-vel. A megfelelő egyenletrendszer megoldása után megkapjuk az s k vektort, majd ennek segítségével kiszámoljuk az x k+1 -et, és y k -t. x k+1 = x k + s k, y k = f(x k+1 ) f(x k ) Végül a következő közelítő mátrixot is meg kell határozni. Ennek többféle módja lehetséges, ezek közül kettőt ismertetnék, melyek hasonló képleteket használnak. A BFGS eljárás A módszer a kidolgozóiról - Broyden, Fletcher, Goldfarb, Shanno - kapta nevét. A Hesse mátrixot egy szimmetrikus, pozitív definit B mátrixszal helyettesítjük. Az egyenletrendszer így a következő: B k s k = f(x k ), Az s k vektor, majd az x k+1 és az y k kiszámolása után ezzel a képlettel kell megadni B k+1 -et, az újabb közelítő mátrixot: A DFP eljárás B k+1 = B k + y ky T k y T k s k (B ks k )(B k s k ) T (B k s k ) T s k. A módszer Davidon, Fletcher, és Powell kutatókról kapta nevét. Itt a Hesse mátrix inverzét helyettesítjük egy szimmetrikus, pozitív definit D mátrixszal. Az egyenletrendszer a következő lesz: s k = D k f(x k ), Ebből kiszámoljuk az s k vektort, majd az x k+1 és az y k vektorokat. Utána az újabb közelítő mátrixot, D k+1 -et ezzel a képlettel kell meghatározni: D k+1 = D k + s ks T k s T k y (D ky k )(D k y k ) T. k (D k y k ) T y k Az eljárások kilépési feltételeként használhatunk egy ε pontossági értéket - ha x k+1 x k < ε, akkor megállunk. 14

15 2.3. A feltétel nélküli optimalizálás numerikus módszerei Példa kvázi Newton módszerre Oldjuk meg a Newton módszernél már korábban szereplő feladatot, DFP eljárással. f(x 1, x 2 ) = x x 1 x 2 + 2x x 1 3x 2 az x 1 = (2, 1) kiindulási vektort használva. Legyen a D 1 = függvény minimumát keressük, [ ] Először felírjuk a gradiensvektort, majd kiszámoljuk értékét az x 1 pontban. ( ) 2x1 + x f(x) =, f(x 1 ) = (6, 3). x 1 + 4x 2 3 Ezután meghatározzuk s 1 értékét, majd ezt felhasználva x 2 -t. [ ] [ ] [ ] s 1 = D 1 f(x 1 ) = = ( ) ( ) ( ) x 2 = x 1 + s 1 = + = Most jön a D 2 mátrix kiszámítása. Ehhez a következőkre lesz szükség: f(x 2 ) = ( 24, 54) y 1 = f(x 2 ) f(x 1 ) = ( 30, 57) [ ] [ ] 9 [ ] [ ] [ ] s 1 s T 1 = 9 12 = s T 30 1 y 1 = 9 12 = [ ] [ ] [ ] [ ] [ ] D 1 y 1 = = (D 1 y 1 ) T 30 y 1 = = [ ] ( ) 87 [ ] (D 1 y 1 )(D 1 y 1 ) T = = Ezeket felhasználva a D 2 mátrix: [ ] [ ] [ ] [ ] 1 1 D 2 = , , 0449 = , , 2341 Így épül fel a DFP kvázi Newton módszer, a folytatásban ki kéne számolni az s 2 = D 2 f(x 2 ) vektort, innen ismételni a fenti lépéseket, amíg a kilépési feltétel nem teljesül egy adott ε-ra. A fejezet elején említettem, hogy a Newton jellegű módszerek és a vonalmenti keresést alkalmazó eljárás együttesen is használhatóak, ennek bemutatásához az utóbbi típust röviden ismertetem, majd leírom az egyesített algoritmusok működési elvét. 15

16 2.3. A feltétel nélküli optimalizálás numerikus módszerei Newton módszerek vonalmenti minimumkereséssel A vonalmenti keresés lényege a következő: egy x 1 R n pontból indulunk ki, majd választunk egy d 1 R n irányvektort. A d irányban megkeressük a függvény minimumát. Ez egy egyváltozós minimalizálási feladat. A φ(λ) = f(x k + λd k ) tehát egyváltozós függvény, ennek legyen a minimuma λ k. Ezt felhasználva az x vektor következő közelítése: x k+1 = x k + λ k d k A vonalmenti keresést alkalmazó módszerek alapvetően abban különböznek egymástól, hogy a kereső irányt hogyan határozzák meg. Ettől függetlenül viszont mindegyiknél szükség van egyváltozós függvény minimumának kiszámítására. Egyváltozós optimalizálás Az egyváltozós minimalizálási feladat: f(x) min, ahol x R. Minden numerikus eljárás, ami ezt megoldja, alapvetően bizonytalansági intervallumot használ. Ez egy olyan [a, b] intervallum, amit mi határozunk meg, és tartalmazza a minimumpontot. A tartományt az algoritmusok folyamatosan szűkítik, mégpedig osztópontok segítségével. Ezekben az osztópontokban (általában kettő darab) ki kell számolni a függvény értékét, majd ez alapján meg lehet határozni az új bizonytalansági intervallumot. Ennek módját az alábbi tétel írja le: tétel. Legyen f : R R szigorúan kvázikonvex függvény az [a, b] bizonytalansági intervallumon, továbbá c, d (a, b) úgy, hogy c < d. Ekkor Ha f(c) > f(d) f(x) f(d) minden x [a, c) esetén új intervallum: [c, b]. Ha f(c) f(d) f(x) f(c) minden x (d, b] esetén új intervallum: [a, d]. A függvény konvexitási tulajdonsága szükséges ahhoz, hogy az eljárás konvergens legyen. Ha nem vizsgáljuk meg a konvexitást, akkor nincs garancia az eljárások konvergenciájára. Az eltérő módszerek leginkább abban különböznek, hogy a belső pontokat hogyan veszik fel, számolják ki. Számos módszer létezik, például az uniform keresés, a Dichotomous keresés, a Fibonacci keresés, a Bisection módszer. Én a későbbi feladatmegoldáshoz a Golden section, vagyis aranymetszés keresést fogom alkalmazni, mivel az a leggyakrabban használt eljárás. A Golden section egy olyan módszer, melynél az új intervallumok mindkét esetben ugyanolyan hosszúak lesznek. Az osztópontokat úgy kell megválasztani, hogy az aktuális [a, b] hosszának (ezt jelölje L,) α-szorosai legyenek az új tartományok, tehát b c = αl, és d a = αl. Ekkor a következő képletek adják meg az osztópontokat: c k = b k αl k = a k + (1 α)l k, d k = a k + αl k. α értéke szabadon választható az ( 1, 1) tartományban, de célszerű úgy választani, 2 hogy minél kevesebbszer kelljen a függvény értékét kiszámolni. Ilyen lépést úgy lehet megspórolni, hogyha az új bizonytalansági intervallum egyik belső pontja megegyezik az előző intervallum egyik belső pontjával. Ekkor ugyanis az egyik pontban lévő 16

17 2.3. A feltétel nélküli optimalizálás numerikus módszerei függvényértéket már egyszer meghatároztuk, nem kell újra. Ez azt jelenti, hogy az [a k+1, b k+1 ] = [c k, b k ] intervallumban: c k+1 = d k, vagyis a k + (1 α)l k + (1 α)αl k = a k + αl k, ennek levezetése: a k + (1 α)l k (1 + α) = a k + αl k (1 α)l k (1 + α) = αl k (1 α)(1 + α) = α A fenti egyenlőség tehát pontosan akkor teljesül, ha α 2 + α 1 = 0. Az [a k+1, b k+1 ] = [a k, d k ] bizonytalansági intervallum esetén analóg módon szintén ezt az egyenletet kapjuk. Ennek megoldása az aranymetszésnél, mint fogalomnál általánosan ismert α = 5 1 0, 618 érték. A Golden section eljárás során érdemes ezt az α 2 értéket használni. Összefoglalva tehát a módszert: Ha f(c k ) > f(d k ) [a k+1, b k+1 ] = [c k, b k ], c k+1 = d k, d k+1 = a k+1 + αl k+1 Ha f(c k ) f(d k ) [a k+1, b k+1 ] = [a k, d k ], c k+1 = a k+1 + (1 α)l k+1, d k+1 = c k. Az eljárást egészen addig csináljuk, amíg az intervallum hossza nagyobb, mint egy ε hibahatár kétszerese. Ha ugyanis kisebb lesz ennél a hossz, akkor az intervallum felezőpontját véve minimumnak, a hibahatáron belül lesz ez a közelítés. Tehát a kilépési feltétel: L k < 2ε, valamilyen k-ra. Most, hogy az egyváltozós optimalizálás egy metódusát bemutattam, visszatérünk a többváltozós függvényekhez, és leírom azt, hogy erre egyáltalán miért volt szükség. Tehát a Newton típusú módszereknél úgy kapjuk meg a következő közelítést az x vektorra, hogy egyszerűen hozzáadjuk a számolás során kapott s vektort. Ezen a ponton azonban lehet vonalmenti minimumkeresést is végezni. Ilyenkor az s-t iránynak tekintjük, és ebben az irányban elvégzünk egy vonalmenti optimalizálást. A lépések tehát a következők: az irányvektort az s adja meg, d k = s k. A d k irányban megkeressük a függvény minimumát, vagyis megoldjuk a φ(λ) = f(x k + λd k ) min! egyváltozós minimalizálási feladatot (például a Golden section eljárással), legyen a kapott érték λ k. Ezt felhasználva az x vektor következő közelítése: x k+1 = x k + λ k d k Ezt a vonalmenti keresést természetesen minden Newton típusú eljárással, így a Newton módszer mellett a kvázi Newton módszerekkel is lehet alkalmazni. Ezzel a feltétel nélküli optimalizálás témaköre véget ért, ismertettem az alapokat, a feladat megoldásának módját, és a kapcsolódó numerikus módszerek közül bemutattam a Newton jellegűeket, a továbbiakban a feltételes optimalizálásról lesz szó. 17

18 2.4. Feltételes optimalizálás 2.4. Feltételes optimalizálás Alapfogalmak Legyen D f az f(x) függvény értelmezési tartománya, és X egy nyílt halmaz. Egy optimalizálási feladatot akkor nevezünk feltételesnek, ha az x R n döntési változóra az x D f R n és az x X R n előírások mellett további kikötéseket teszünk. S-sel jelöljük a feltételeket meghatározó halmazt, és megengedett (lehetséges) megoldások halmazának vagy feltételi halmaznak nevezzük. A feladat tehát a következő: meg kell találnunk az S halmaz azon pontját, amelyben az f : R n R célfüggvény értéke minimális. A feltételes optimalizálási feladat jelölése: min{f(x) : x S} A feladat megoldásához az alábbi fogalmakat használjuk kiindulásként: definíció. Legyen az f : R n R függvény. Az f függvény x R n pontbeli javító irányok kúpjának nevezzük és F -fel jelöljük az alábbiakban definiált halmazt: F = {d : d R n, d 0, f(x + λd) < f(x) minden λ (0; δ) -ra δ > 0 esetén}. Ez azt jelenti, hogy ha x pontból legalább egy kicsit, folyamatosan elmozdulva a d irányba, a célfüggvény értéke javul, akkor a d javító irány, így d F definíció. Legyen az S R n nemüres halmaz és x az S halmaz lezártjának ey pontja. Az S halmaz x pontbeli lehetséges irányok kúpjának nevezzük és D-fel jelöljük az alábbiakban definiált halmazt: D = {d : d R n, d 0, x + λd S minden λ (0; δ) -ra δ > 0 esetén} Ez arról szól, hogy ha x pontból legalább egy kicsit, folyamatosan elmozdulva a d irányba, benne maradunk az S tartományban, akkor d lehetséges irány, vagyis d D. Ennek a két halmaznak a kapcsolatát mutatja meg a következő tétel, a feltételes optimalizálás geometriailag szükséges feltétele tétel. Legyen az S R n nemüres halmaz és f : S R függvény. Adott a min{f(x) : x S} feltételes optimalizálási feladat. Ha x S lokális minimumpont, akkor F D =. A tétel értelmezése: lokális minimumpont esetén nem létezik olyan irány, amerre ha elmozdulnánk, akkor javulna a célfüggvény és a tartományban is benne maradnánk. Bizonyítás. Indirekt módon tegyük fel, hogy F D. Ekkor van olyan d 0 vektor, amelyre d F és d D. Tehát a d vektor javító irány és lehetséges irány is egyben, ami ellentmond annak, hogy az x pont optimális megoldás. A továbbiakban feltesszük, hogy a célfüggvény differenciálható, valamint az S halmazt függvények segítségével adjuk meg. Ezekkel a függvényekkel szembeni előírás a folytonosság és a differenciálhatóság. Így megfogalmazhatjuk a javító irányok kúpjának és a lehetséges irányok kúpjának karakterizációját. 18

19 2.4. Feltételes optimalizálás Legyen az S feltételi halmaz a következő: S = {x : x X, g i (x) 0, i = 1, 2,..., m}, ahol g 1, g 2,..., g m : R n R függvények és X R n nemüres, nyílt halmaz. A g i (x) 0 jelzi, hogy egyenlőtlenségi feltételekről van szó. Ha egyenlőségi előírások is vannak, akkor a tételek egy kicsit változnak, bővülnek, de a módszer bemutatása szempontjából elegendő a csak egyenlőtlenségi feltételek esetével foglalkozni. Fontos még megjegyezni, hogy ha a célfüggvény minimumát keressük, és az egyenlőtlenségi feltételeknél jel szerepel, akkor standard optimalizálási feladatról beszélünk, a továbbiakban csak erről lesz szó. (A nem standard feladatokat köztes lépésekkel, átalakításokkal általában visszavezetik standard alakra.) definíció. Tekintsük az S = {x : x X, g i (x) 0, i = 1, 2,..., m} feltételi halmazt, és egy x S pontot. A g i (x) függvény aktív a x pontban, ha g i (x) = 0 és inaktív, ha g i (x) < tétel. Legyen f : R n R függvény differenciálható x R n pontban. Ekkor az halmaz javító irányok kúpja, és F 0 F. F 0 = {d : f(x)d < 0} tétel. Legyen S = {x : x X, g i (x) 0, i = 1, 2,..., m}, ahol g 1, g 2,..., g m : R n R függvények és X R n nemüres, nyílt halmaz, továbbá adott egy x S pont. Legyen I = {i : g i (x) = 0} az aktív feltételi függvények indexhalmaza és tegyük fel, hogy a g i, i I függvények az x pontban differenciálhatók és a g i, i I függvények az x pontban folytonosak. Ekkor a G 0 = {d : g i (x)d < 0, i I} halmaz az S halmaz x pontbeli lehetséges irányok kúpja, és G 0 D. Az előző két tételhez kapcsolódik a geometriai-algebrai szükséges feltétel, mely szerint (a tételek feltevései és jelölései mellett): Ha x lokális minimumpont, akkor F 0 G 0 =. Szintén a feltételes optimalizálás szükséges feltételét írja le a Fritz John tétel: tétel. Tekintsük a min{f(x) : x S} feltételes optimalizálási feladatot, ahol S = {x : x X, g i (x) 0, i = 1, 2,..., m}, amelynél f, g 1, g 2,..., g m : R n R függvények és X R n nemüres, nyílt halmaz. Legyen adott továbbá egy x S pont és legyen I = {i : g i (x) = 0} indexhalmaz és tegyük fel, hogy az f, g i, i I függvények az x pontban differenciálhatók, valamint a g i, i I függvények az x pontban folytonosak. Ha x lokális optimális megoldás, akkor léteznek u 0, u i, i I számok úgy, hogy u 0 f(x) + i I u i g i (x) = 0 (u 0, u I ) 0 (u 0, u I ) 0 19

20 2.4. Feltételes optimalizálás ahol u I egy olyan vektor, melynek komponensei u i 0, i I. De feltehetjük azt is, hogy f, g i, i = 1, 2,..., m függvények az x pontban differenciálhatók (tehát nem csak i I esetén), akkor a tétel így módosul: Ha x lokális optimális megoldás, akkor léteznek u 0, u i, i I számok úgy, hogy u 0 f(x) + m u i g i (x) = 0 i=1 u i g i (x) = 0, i = 1, 2,..., m (u 0, u) 0 (u 0, u) 0 ahol u egy olyan vektor, melynek komponensei u i 0, i = 1, 2,..., m. A gyakorlatban ez azt jelenti, hogy meg lehet adni olyan, Lagrange szorzóknak nevezett u 0, u i számokat, hogy a függvények gradienseinek az u 0, u i számokkal vett lineáris kombinációi eredményként nullát adjanak. A tétel második verziójába bekerült egy új feltétel is. Ez azért van, mert az elsőnél csak az aktív feltételeket nézzük, amikre definíció alapján teljesül a g i (x) = 0, tehát nem kell kikötni, hogy u i g i (x) = 0 legyen. Viszont az inaktív feltételekre ez nem igaz, tehát az utóbbi összefüggés is megjelenik a tételben. Ez egyben azt is eredményezi, hogy az összes inaktív feltételnél csak akkor teljesül ez az egyenlőség, ha a hozzájuk tartozó u i = KKT feladat Ezeket a Fritz John optimalitási feltételeket használva nem egyértelmű a Lagrange szorzók meghatározása. A továbbiakban ezért olyan Lagrange szorzókkal dolgozunk, melyeknél a célfüggvény együtthatója 1. Ezt az új feltételrendszert a Karush-Kuhn- Tucker tétel írja le, erre épül az optimalizálási feladat megoldása tétel. Tekintsük a min{f(x) : x S} feltételes optimalizálási feladatot, ahol S = {x : x X, g i (x) 0, i = 1, 2,..., m}, amelynél f, g 1, g 2,..., g m : R n R függvények és X R n nemüres, nyílt halmaz. Legyen adott egy x S pont és legyen I = {i : g i (x) = 0} indexhalmaz és tegyük fel, hogy az f, g i, i I függvények az x pontban differenciálhatók, valamint a g i, i I függvények az x pontban folytonosak. Tegyük fel továbbá, hogy a g i (x), i I vektorok lineárisan függetlenek. Ha x lokális optimális megoldás, akkor léteznek egyértelműen u i, i I számok úgy, hogy f(x) + i I u i g i (x) = 0 u i 0, i I Viszont feltehetjük azt is, hogy f, g i, i = 1, 2,..., m függvények az x pontban differenciálhatók (tehát nem csak i I esetén), akkor ez lesz a tétel: 20

21 2.4. Feltételes optimalizálás Ha x lokális opt. megoldás, akkor léteznek egyértelműen u i, i I számok úgy, hogy f(x) + m u i g i (x) = 0 i=1 u i g i (x) = 0, i = 1, 2,..., m u i 0, i = 1, 2,..., m A Karush-Kuhn-Tucker tétel alapján három feltételcsoportot különböztetünk meg egymástól: PF: primál feltételek Az x S lehetséges megoldásra vonatkozó g i (x) 0, i = 1, 2,..., m; x X feltételek. DF: duál feltételek A tételben szereplő összefüggések: f(x) + m u i g i (x) = 0 i=1 u i 0, i = 1, 2,..., m KF: komplementaritási feltételek A tételben lévő u i g i (x) = 0 i = 1, 2,..., m egyenlőségek. A feltételeket együttesen Karush-Kuhn-Tucker (KKT) optimalitási feltételeknek nevezzük. Ha egy x ponthoz léteznek olyan u = (u 1, u 2,..., u m ) Lagrange szorzók, melyekre az (x, u) vektor a KKT feltételeket kielégíti, az x pontot KKT pontnak hívjuk. Ilyenkor a tételben szereplő g i (x), i I feltevés miatt a Lagrange szorzók egyértelműen meghatározhatók. Egy feladat optimális megoldása csakis KKT pont lehet, mert a szükséges feltételeknek azok felelnek meg, viszont ez még nem garantálja, hogy az adott pont az optimum, ráadásul több KKT pontot is kaphatunk egy feladaton belül. Éppen ezért az optimalitás szükséges feltételei mellett a feladatok megoldásához az elégséges feltételek is kellenek. Ezek bemutatásához először a Lagrange függvényt definiálom, majd annak aktualizált változatát, valamint a reguláris pontot. A meghatározások az egyenlőséges feltételeket is tartalmazó, tehát általánosabb optimalizálási feladatra vonatkoznak, de a v Lagrange szorzókat és a h i (x) egyenlőséges feltételeket elhagyva a csak egyenlőtlenséges feladatnak megfelelő képleteket kapnánk definíció. A Lagrange függvény az optimalizálási feladatban szereplő célfüggvény, az egyenlőtlenséges és az egyenlőséges feltételi függvények lineáris kombinációja, amelyben a célfüggvény együtthatója 1. A feltételi függvények együtthatói a már korábban említett Lagrange szorzók. A Lagrange függvény képlete: L(x, u, v) = f(x) + m u i g i (x) + i=1 k v i h i (x) i=1 21

22 2.4. Feltételes optimalizálás definíció. Legyen x vektor az optimalizálási feladat KKT pontja és legyenek u, v vektorok a KKT feltételeket kielégítő Lagrange szorzók. Ezekhez az u, v Lagrange szorzókhoz tartozó Lagrange függvényt aktualizált Lagrange függvénynek nevezzük, melynek képlete: L a (x, u, v) = f(x) + m u i g i (x) + i=1 k v i h i (x) i=1 Az L a függvényben minden egyenlőtlenséges feltétel szerepel, később a feladatmegoldás során ki kell szűrni az aktívakat definíció. Az x S lehetséges megoldást regulárisnak nevezzük, ha az aktív feltételekhez tartozó g i (x), i I vektorok lineárisan függetlenek. Ezekkel a definíciókkal már meg lehet fogalmazni a feltételes optimalizálási feladat elégséges feltételét. Van gyenge és erős feltétel, valamint a leggyakrabban használható, én utóbbit ismertetem tétel. Legyen X R n nemüres nyílt halmaz, f, g 1, g 2,..., g m, h 1, h 2,..., h k : R n R kétszer differenciálható függvények. Tekintsük az g i (x) 0 h i (x) = 0 f(x) min! i = 1, 2,..., m i = 1, 2,..., k x X matematikai programozási feladatot. Jelölje S a feltételi halmazt. Legyen x vektor az optimalizálási feladat reguláris KKT pontja és legyenek u, v vektorok a KKT feltételeket kielégítő Lagrange szorzók. Legyen az aktualizált Lagrange függvény Hesse mátrixa az x = x pontban. Az I = {i : g i (x) = 0} indexhalmaz legyen felosztva az I + = {i I : u i > 0} és az I 0 = {i I : u i = 0} indexhalmazokra. Definiáljuk az alábbi A alteret A = {d 0 : g i (x)d = 0 i I +, h i (x)d = 0 i = 1, 2,..., k}. Ha d T 2 L a (x)d > 0 minden d A irányra, akkor az x KKT pont szigorú lokális minimumpontja az optimalizálási feladatnak. Egy feladat megoldása során a fenti feltételt a következő módon használjuk: ha már megvan egy KKT pont, akkor felírjuk a Lagrange függvényt, majd az adott KKT pontra vonatkozó aktualizált Lagrange függvényt is. Ezután létrehozunk egy C mátrixot, ilyen felépítéssel: [ ] [ ] A B T C =, ahol A = 2 gi (x), i I +, (u i > 0) L a (x), és B =, B 0 h i (x), i = 1, 2,..., k tehát az A mátrix az aktualizált Lagrange függvény Hesse mátrixa, míg a B mátrix sorvektorai az aktív egyenlőtlenséges feltételi függvények és az egyenlőséges feltételi függvények x pontbeli gradiensei. Ha ez a C mátrix pozitív definit, akkor az x pont az optimalizálási feladat szigorú lokális minimumpontja. 22

23 2.4. Feltételes optimalizálás Példa feltételes optimalizálási feladatra Oldjuk meg az alábbi, egyenlőtlenséges feltételes optimalizálási feladatot! f(x) = x x 2 2 min! g 1 (x) = 2 x 1 x 2 0 g 2 (x) = x 1 + x X = R 2 Első lépésként ( ) meghatározzuk ( a) függvények gradienseit. ( ) 2x1 1 1 f(x) =, g 1 (x) =, g 2 (x) =. 2x ( ) 2x1 A gradiens vektorokra vonatkozó lineáris kombináció: 2x 2 Ezek segítségével felírjuk a KKT optimalitási feltételeket: 2x 1 u 1 u 2 = 0 2x 2 u 1 + u 2 = 0 u 1, u 2 0 DF } u 1 (2 x 1 x 2 ) = 0 KF u 2 ( x 1 + x 2 1) = 0 } 2 x 1 x 2 0 P F x 1 + x ( ) ( ) u 1 + u Meg kell nézni, vannak-e KKT pontok. Az u 1, u 2 0 feltétel miatt 4 esetet kell megvizsgálnunk: u 1 = 0, u 2 = 0; u 1 > 0, u 2 = 0; u 1 = 0, u 2 > 0 vagy u 1 > 0, u 2 > 0. A KKT feltételekkel összevetve a fenti kikötéseket, egyedül a második esetben adódik KKT pont. Itt x 1 = x 2 = 1, és u 2 = 0 mellett u 1 = 2. Ezután meg kell vizsgálni, hogy a talált KKT pont optimális megoldás-e. A Lagrange függvény: L(x 1, x 2, u 1, u 2 ) = x 2 1 +x 2 2 +u 1 (2 x 1 x 2 )+u 2 ( x 1 +x 2 1) 2x 1 u 1 u 2 L = 2x 2 u 1 + u 2 2 x 1 x 2 x 1 + x L = Aktualizáljuk a Lagrange függvényt az u vektorral( - u 1 = 2, ) u 2 = 0. [ ] 2x L a (x 1, x 2 ) = x x (2 x 1 x 2 ) L a = 2 L a = 2x

24 2.5. A feltételes optimalizálás numerikus módszerei [ ] 2 0 Az x = (1; 1) pontban 2 L a (x) = = az A mátrix. A B mátrixba csak g [ ] kerül, mert u 2 = 0 miatt a g 2 inaktív feltétel. Így B = 1 1. A C mátrix pedig: C = Erről (pl. inercia teszttel) belátható, hogy pozitív definit, ezért az x = (1; 1) KKT pont szigorú lokális minimumpont. Ezzel a feladat kész A feltételes optimalizálás numerikus módszerei Az előző alfejezetben láthattuk, hogyan lehet megoldani a feltételes optimalizálási feladatot. A KKT módszer azonban programozási szempontból nem ideális, ezért több olyan, közelítést alkalmazó numerikus eljárás létezik, ami szintén alkalmasak a feladat elvégzésére. Alapvetően két különböző módszercsalád van. Az első a lehetséges irányok módszere. Ez a feltétel nélküli optimalizálás során használható vonalmenti minimalizálásra épül, és lépésenként keresi a feladat célfüggvényének optimális megoldását egy-egy irányban. Ilyen eljárás a Zoutendijk módszer, illetve a Rosen-féle gradiens projekciós módszer. A másik típusú módszercsalád lényege az, hogy a feltételes opt. feladatot visszavezetjük feltétel nélküli feladatok ismételt megoldására. Ez az eljárás a SUMT (Sequential Unconstrained Minimization Technique) nevet kapta. Működésének lényege: beépíti a feltételeket a célfüggvénybe, így egy olyan új feladatot kapunk, mely már feltétel nélküli, és ezt oldjuk meg sorozatosan más-más paraméterrel. Két változata van: a korlátfüggvényes és a büntetőfüggvényes eljárás. Előbbi esetén ún. korlátfüggvény segítségével lehet beépíteni a célfüggvénybe a feltételeket, ezzel elérve, hogy a lépések során soha nem lépünk ki a megengedett megoldások tartományából. Utóbbi fajtát fogom részletesen bemutatni a következőkben Büntetőfüggvényes SUMT A SUMT módszer tehát feltétel nélküli feladatokra vezeti vissza a feltételes opt. feladatot. Tulajdonképpen az történik, hogy a feltételi függvényeket egy büntetőfüggvényre cserélve hozzáadjuk a célfüggvényhez, majd az új célfüggvényt - nevezzük segédfüggvénynek - kell feltétel nélküli módszerrel megoldani. A büntetőfüggvénynek van egy paramétere, melyet növelve a segédfüggvény minimuma egyre közelebb kerül az eredeti célfüggvény minimumához. Ezeket a jelöléseket használjuk: a segédfüggvény - ϕ tehát az új célfüggvényt jelenti. A büntető paraméter egy µ > 0 szám, amely a büntetőfüggvénnyel (B) együtt alkotja a büntetőtagot (µb). Az új, feltétel nélküli opt. feladat alakja ez lesz: ϕ(x) = f(x) + µb(g i (x), h i (x)) min! x R n 24

25 2.5. A feltételes optimalizálás numerikus módszerei A büntetőfüggvénynek olyan folytonos függvényt kell választani, ami pozitív büntető értéket ad, ha nem teljesednek a feltételek, viszont teljesülés esetén zérus legyen a büntetés. Természetesen több ilyen függvényt lehet találni, de legtöbbször egyenlőséges feltételnél az y 2 függvényt, és egyenlőtlenséges esetben a [max{0, y}] 2 függvényt választjuk. Leggyakrabban tehát egy általános alakú feltételes opt. feladatnál g i (x) 0 h i (x) = 0 f(x) min! i = 1, 2,..., m i = 1, 2,..., k x X az alábbi segédfüggvény kerül használatba: [ m ϕ(x) = f(x) + µ [max{0, g i (x)}] 2 + i=1 ] k [h i (x)] 2. A módszer során tehát ezt a ϕ(x) min! feltétel nélküli opt. feladatot oldjuk meg lépésenként növelve a µ büntető paraméter értékét. Egy tetszőleges x R n vektorral, valamint általános gyakorlat szerint µ = 1 értékkel kezdjük el. Később minden új lépés során µ-t (ez szintén szokás) 10-szeresére növeljük. Ha a ϕ(x) = min{f(x) + µ k B(x) : x X} minimalizálási feladat optimális megoldása x k+1, akkor megállási feltétel lehet a µ k B(x k+1 ) < ε teljesülése. i=1 Példa büntetőfüggvényes SUMT eljárásra Oldjuk meg a következő optimalizálási feladatot: f(x) = (x 1 1) 2 + x 2 2 min! h(x) = x 1 x 2 = 0 Itt nincs egyenlőtlenségi feltétel, egyenlőségi pedig egy van. Így a feltétel nélküli optimalizálási segédfeladat az alábbi: ϕ(x) = (x 1 1) 2 + x µ(x 1 x 2 ) 2 min! Legyen a kiinduló vektor az x = (5, 10), a µ büntető paraméter pedig az általános szokás szerint 1, minden lépésnél 10-szeresére növelve. Az eredmények a táblázatban láthatóak. µ x µ ϕ(x µ ) f(x µ ) 1 ( ; ) ( ; ) ( ; ) ( ; ) ( ; ) ( ; )

26 2.5. A feltételes optimalizálás numerikus módszerei Az adatokból leolvasható, hogy a korábban említett összefüggéseknek megfelelően a µ növelésével egyre közelebb kerülünk az optimumhoz, a segédfüggvény és az eredeti f függvény értékei is a kapott helyen egyre kisebb eltérést mutatnak. Belátható, hogy a megoldás: x = (0.5, 0.5), és a célfüggvény értéke ebben a pontban szintén 0.5 lesz. Ennek a módszernek a bemutatásával zárult az elméleti összefoglalás, a következő fejezet a program megvalósítását és annak részleteit taglalja. 26

27 3. fejezet Fejlesztői dokumentáció A szakdolgozat témájában szerepel az ismertetett numerikus módszerek webes megvalósítása. Erre a célra a php nyelvet választottam, ugyanis egy ilyen feladatra szerintem megfelelően alkalmas. Az index.html főoldal 3 frame-re van osztva: felül a szakdolgozat címe, bal oldalon a menü, jobb oldalon pedig a tartalom jelenik meg - minden a menüből megnyitott oldal a tartalom frame-ben látható. Az index.html-hez kapcsolódik egy.css stílusfájl is, de csak apróságokat tartalmaz, ezeket nem részletezném - az oldal nem a megjelenésre összpontosít, hanem a működésre. A weblap kezdőoldalán látható a frameset szerkezet: fent a cím, bal oldalon a menü, jobbra a tartalom Bemenő adatok beviteli terve Az optimalizálási feladatok lényege egy adott függvény minimalizálása, vagy feltételek nélkül, vagy valamilyen feltételekkel. Tehát először is egy függvényt kell feldolgozni. A módszerek bemutatásához a hatványfüggvényeket választottam, mivel legtöbbször a tanórák során is azokkal foglalkozunk, valamint ennek csak a deriválás megvalósítása miatt van szerepe, egyébként az optimalizálási eljárások programozását nem befolyásolja ez a szűkítés. A függvények bevitele összeg alakban történik, minden tag felépítése azonos. Meg kell adni először, hogy hány tagból áll a függvény, majd az x vektor dimenzióját. Ebből a program készít egy olyan űrlapot, mely tartalmazza a szükséges beviteli mezőket. 27

28 A tagok felépítése a következő: az együttható szerepel elöl, majd utána x vektor minden eleméhez meg kell adni egy kitevőt. Például, ha x két dimenziós, a 3 x 2 kifejezést így kell beírni: 3 x1 0 x2 1. A tagokat minden esetben összeadásjel határolja, így kivonást a negatív együtthatóval lehet elérni. Említettem a deriválást, ez a fenti formulával úgy működik, hogy tagonként végezhetjük el, és amelyik elem szerint deriválunk, annak a kitevőjével meg kell szorozni a tag együtthatóját, majd a kitevőt csökkenteni eggyel. Ez így egészen addig működik, amíg a kitevő 0 nem lesz. Ebből az eljárásból következik az a megkötés, hogy a kitevőknek nemnegatív egész számoknak kell lenniük. Erre viszont nincs ellenőrzés, ugyanis ez a leírás tartalmazza ezt a megkötést, tehát a program használójától elvárható, hogy nem fog ennek ellenére negatív kitevőt használni. Az együtthatóknak nem kötelező egésznek lenniük, lehetnek tizedestörtek is. A program kezdőoldalán, ami az Útmutató menüpont, a bevitellel kapcsolatos fontos pontok le vannak írva, segítő jelleggel. Kitérve az egyes módszerekre, mindegyiknél meg kell adni egy kiindulási vektort, valamint egy ε hibahatárt. Előbbi evidens, hogy miért kell, utóbbi célja pedig az, hogy ha nincs pontos eredmény, akkor egy adott határon belüli közelítés esetén is megáll a program és eredményt ad. Szükség van még a lépések számának maximalizálására annak érdekében, hogy egy adott lépés után mindenképpen megálljon az algoritmus. A SUMT módszernél azonban kis lépésszám kell, mert az ott arra vonatkozik, hogy hányszor növeljük tízszeresére a µ értékét. A Newton módszerhez nem is kell más adat, a kvázi Newton eljárásnál viszont értelemszerűen meg kell adni egy mátrixot is, amely a Hesse mátrixot vagy annak az inverzét fogja helyettesíteni. Hogy pontosan melyiket, arról a használni kívánt módszer dönt, amit a radio típusú input mezővel lehet beállítani. Van azonban emellett egy másik, radio típusú beviteli mező, ami annak eldöntésére szolgál, hogy a Newton, vagy kvázi Newton módszereknél alkalmazzon-e a program vonalmenti minimumkeresést, vagy enélkül, az "alap" algoritmusokat hajtsa végre. Ez a as alfejezet tartalmához kapcsolódik. A SUMT programnál szükség van a feltételekre is, melyeket a célfüggvényhez hasonló módon kell bevinni, külön megadva az egyenlőséges és az egyenlőtlenséges feltételek számát. µ értéke az általánosságban használt 1-re van állítva, 10-szeres szorzóval. Van egy mező még a kerekítés megadására is, ezzel kapcsolatban szükségesnek érzek egy kis magyarázatot. A nagyon kicsi tizedestörtek nem feltétlenül tudnak pontosan 0 értéket felvenni a float típus pontatlanságai miatt, így pedig nehéz lenne megvizsgálni például azt, hogy a gradiens vektor az x helyen 0 lesz-e. Ezért a megadott számú tizedesjegyre való kerekítéssel oldom meg ezt a problémát, de a többi helyen is a számolás egységesítése miatt, valamint a kiírások során is történik kerekítés. Ez így egy újabb állítható pontosságot biztosít, az ε mellett. Az adatok a form-ból GET metódussal kerülnek feldolgozásra, majd külön tömbben tárolódnak a célfüggvény együtthatói és a kitevői (utóbbiaknak ezen belül több tömb, 28

29 x indexe szerint). A kitevők sorrendje a következő: $array[$i][$j] az x i-edik eleméhez tartozó kitevő, az összeg j-edik tagjánál. Mivel a dimenziószám, valamint a célfüggvény tagjainak száma változatlan az eljárások alatt, ezért konstansként kerülnek tárolásra Kimenő adatok megjelenítési terve Mind a három módszer külön php fájlban van megírva, azonban sok olyan függvény van, amit több módszer is használ. Ebből kifolyólag egy külön fájlba tettem a közös függvényeket, melyeket így nem kellett minden eljárásnál bemásolni, így átláthatóbb és helytakarékosabb a program. Ez a fuggvenyek.php tartalmazza a kiírással kapcsolatos metódusokat is. Mivel függvényekkel, vektorokkal és mátrixokkal dolgozunk, ezeknek mindenféleképpen kell valamilyen megjelenést adni. A hatványfüggvények kiírására szolgál a legelső, kiir($egy,$ki) nevű programrész. Paraméterként az együtthatók, és a kitevők tömbjét kéri, visszatérési értéke nincs, lényegében a bevitelhez képest olvashatóbb formában adja vissza a függvényeket. Ahol a 0 szerepel, egyszerűsít is, például ha 0 lesz valamelyik együttható, azt a tagot nem írja ki, vagy ha a kitevő 0, a hozzá tartozó x i is láthatatlan marad. A függvény(ek) bevitele után rögtön kiírja a program ezzel a hívással a lap tetejére a célfüggvényt, valamint a feltételeket is, a SUMT esetén. Emellett a gradiens vektor, vagy a Hesse mátrix elemeit is a kiir teszi láthatóvá. Példa a kiírásra - felül a beviteli mezőknél megadott függvény, alul ugyanez a feldolgozás után megjelenítve. Működése röviden: Megvizsgálja az összes tagot, ha minden együttható 0, akkor kiír egy nullát, ellenkező esetben ha nem nulla az együttható, kiírja az x vektor hozzá tartozó elemeit, a megfelelő kitevőkkel. Ha a kitevők között van nulla, azt az elemet kihagyja. Amennyiben van további nem nulla együttható, akkor + jelet ír elé, majd annak vizsgálatával folytatja. A vektorok és a mátrixok kiírására a vektorkiir($mit) és a matrixkiir($mit) függvények szolgálnak. Az adott dimenzió szerint vektornál egy ciklus, míg mátrixnál két ciklus végigmegy az elemeken, és egy táblázatos formában kiírja azokat. A megjelenést tekintve leginkább a mátrixok determinánsára hasonlít az eredmény, de mivel a témában a determináns nem jelenik meg, ezért nem érthető félre. Ezt a megoldást css segítségével készítettem úgy, hogy a táblázat jobb, és bal oldalán van csak border beállítva. Vektorok azonban megjelenhetnek egyszerű felsorolással is, kerek zárójelben egymás mellé írva, ezt az adott helyen, ha szükség van rá, egy ciklussal oldom meg. 29

30 Egy dolog van még, ami a megjelenést befolyásolja, mégpedig a módszerek során kapott adatok kiírása. Ahhoz, hogy ne minden egymás alá kerüljön, de jól olvasható legyen egymás mellett, táblázatos megjelenést használok. Minden külön információ saját cellát kap, így elkerülhető a vektorok / mátrixok miatt összefolyt szöveg, és az is, hogy az összefüggő részeket mindig új sor válassza el Programkód Ennyi bevezetés után nézzük mostmár a program fő algoritmusait, és a módszerek megvalósítását. A fuggvenyek.php további metódusait tekintsük át először. Az egyik alapvető függvény a deriválás: derival($egy, $ki, $szerint). function derival($egy, $ki, $szerint){ $eredmeny[1]=$egy; $eredmeny[2]=$ki; $num = count($eredmeny[1]); for ($i=1; $i<=$num; $i++) { if($eredmeny[2][$szerint][$i]!= 0) { $eredmeny[1][$i] = $eredmeny[1][$i] * $eredmeny[2][$szerint][$i]; $eredmeny[2][$szerint][$i] = $eredmeny[2][$szerint][$i] - 1; } else $eredmeny[1][$i] = 0; } return $eredmeny; } Ennek a működése egyszerűnek mondható, a paraméterei az együtthatók tömbje, a kitevők (többdimenziós) tömbje és az az index, amelyik szerint deriválni kell. Egy új, több szintű tömb lesz a visszatérési érték, első eleme az együtthatókkal, második a kitevőkkel. A ciklussal az összes tagon végigmegyünk, ha a keresett kitevő nem nulla, akkor az adott tag együtthatóját megszorozzuk a kitevővel, majd a kitevőt csökkentjük eggyel. Ha pedig a kitevő nulla, az együtthatót is nullával tesszük egyenlővé. A gradiens vektor és a Hesse mátrix kiszámításához már csak az előző függvényt kell használni, és ciklikusan meghívni. A gradiens($egy, $ki) létrehozza a gradiens vektort, a hesse($gradiens) függvény pedig a Hesse mátrixot. Érdemes megjegyezni, hogy a hesse függvény paramétere az előzőleg kiszámolt gradiens vektor. Hasonló felépítésű a behelyettesítés megoldása, itt is van egy alap függvény, a helyettesit($egy, $ki, $mit), melynek utolsó paramétere a behelyettesíteni kívánt vektor. Ennél szintén végigmegyünk minden tagon, és elvégezzük a műveleteket, az együtthatót megszorozzuk az aktuális vektor adott hatványaival. Vektorba helyettesítéskor (helyettvekt($mibe, $mit)) egy ciklussal, mátrixnál (helyettmatr($mibe, $mit)) két ciklussal számoljuk ki az összes értéket. 30

31 Szerepel még egy segédfüggvény - vektorossz($mihez, $mit) - amivel a konkrét értékkel rendelkező vektorokat adhatjuk össze. Ennek például akkor van haszna, ha a Newton módszernél az x vektor következő közelítését számoljuk ki, amikor az aktuális közelítést és az s vektort összeadjuk. A továbbiakban az egyes módszereket részletesen ismertetem Newton módszer A modszer/newton.php fájl tartalmazza az algoritmust. Természetesen a közös függvényeket include paranccsal éri el. A form-ról és a szükséges adatokról már esett szó, ezeket nem ismételném. A célfüggvényt a $egyutthatok és a $kitevok tömbökbe tároljuk el, a feldolgozás során. Közben a kiinduló vektort is létrehozzuk, $xvektor néven. Felírjuk a célfüggvény gradiensét - $gradi, majd a Hesse mátrixát - $hes. Ezeket egy táblázatban kiírjuk, az alap adatok után. Itt kezdődik a ciklus, amely az algoritmus minden további részét tartalmazza. 1. Kiszámoljuk a gradiens vektor aktuális értékét az $xvektor-t behelyettesítve $ertekgrad = helyettvekt($gradi, $xvektor); 2. Ha ez a gradiens érték 0, akkor vége a ciklusnak, és kiírjuk a megoldást. 3. Ha a gradiens nem nulla, akkor meg kell oldani a következő egyenletrendszert: H(x k )s k = f(x k ). Ezt kiírja a program az aktuális értékekkel. Az egyenletrendszer megoldása ezzel a függvényhívással történik: $egyrendszer = rendszer($ertekhess, $minuszertekgrad); (a $egyrendszer maga az s vektor értéke) 4. Ha valamiért nincs megoldás, a program befejeződik. Ha van megoldás, akkor a kapott s vektort alapesetben hozzáadjuk az x-hez, ezzel megkapjuk x következő közelítését: $xvektor = vektorossz($xvektor, $egyrendszer); Ha azonban be van állítva a vonalmenti optimalizálás, akkor a s vektort irányként használva (d), a program egy egyváltozós optimalizálást végez, mégpedig Golden section módszerrel. Az eredményként kapott λ érték és a d irány szorzatát adjuk hozzá x-hez. 5. Megnézzük a kilépési feltételt: ha az egymást követő x-ek normája az adott ε alatt van, akkor nincs folytatás, ellenkező esetben folytatjuk a ciklus elejéről. Három függvény kapcsolódik ide, az egyik a kilepfelt($vektor1, $vektor2), ami az x vektorok különbségének első normáját számolja ki, a kilépési feltétel vizsgálatához. A másik az, amivel az egyenletrendszert megoldjuk. A rendszer($bal, $jobb) egy részleges főelemkiválasztásos eljárás programja, mellyel a lineáris egyenletrendszert meg lehet oldani. Ennek az algoritmusa leginkább a lineáris algebra témakörébe tartozik, de röviden a lényege az, hogy a $bal paraméter a Hesse mátrix aktuális értéke, a $jobb pedig a mínusz gradiens vektor, szintén aktualizálva. Ezeket összeillesztem egy új "táblába" ($megold), majd ezen pivotálok, amíg felső háromszög mátrixot kapok, 31

32 amennyiben ez lehetséges. Ha sikerült, akkor az "eredmény" kommenttel ellátott részben visszafelé haladva kiszámolom az s vektor elemeit. Példa a Newton módszer egy lépésére. A harmadik függvény pedig a Golden section eljárás megvalósítása: golden($egyutt, $ki, $x, $d, $eps). A paraméterek az erdeti célfüggvény együtthatói és kitevői, az aktuális x és d vektorok, valamint az ε pontossági érték. A függvény működése a következő: először is fel kell venni a kiinduló intervallumot - $inta, $intb (a és b pontok), majd az α = 5 1 értéket beállítani, és ennek segítségével 2 a belső osztópontokat kiszámolni - $intc és $intd (c és d pontok). Ezután egy ciklus következik, melynek kilépési feltétele az intervallum hosszára vonatkozik: while (($intb-$inta) > 2*$eps) nagyobb legyen, mint a hibahatár kétszerese. A cikluson belül először az osztópontokkal kell megszorozni a d irányvektort, majd ezt hozzáadni az x-hez, így behelyettesítve a $helyc és $helyd vektorokat a célfüggvénybe, megkapjuk a c és d pontban felvett függvényértéket. Ezeket vizsgálva kell a további lépéseket megtenni a Golden section módszernek megfelelően, az elágaztatás pontosan ezt írja le: Ha f(c k ) > f(d k ) [a k+1, b k+1 ] = [c k, b k ], c k+1 = d k, d k+1 = a k+1 + αl k+1 Ha f(c k ) f(d k ) [a k+1, b k+1 ] = [a k, d k ], c k+1 = a k+1 + (1 α)l k+1, d k+1 = c k. Így egyre kisebb bizonytalansági intervallumokat kapunk, míg végül annak a hossza kisebb lesz, mint a pontossági érték kétszerese - ekkor a végeredményünk egy olyan λ, mely az utolsó intervallum felezőpontja. Megjegyzés: nincs új függvény létrehozva a λ minimalizálására, a φ(λ) = f(x k + λd k ) függvények egyenlőségéből egyértelműen következik, hogy az f függvénybe behelyettesítve az aktuális x és d vektorokat, pontosan egy egyváltozós függvényt kapunk λ-ra, így a φ(λ) külön megalkotására nincs szükség, az eredeti célfüggvény teljesen jól használható. Természetesen nincs különbség a két lehetőség között, a φ(λ) esetén a λ kivételével minden más be van helyettesítve, így az összevonások után kapunk egy ren- 32

33 dezett függvényt λ-ra, míg az általam használt módszernél a λ értéke is rögtön bekerül a célfüggvénybe. A λ kiszámolását ez a függvényhívás végzi: $lambda = golden($egyutthatok, $kitevok, $xvektor, $egyrendszer, $epsilon); Kvázi Newton módszerek A modszer/kvazi.php fájl hajtja végre az algoritmust. Itt is szükség van az include parancsra a függvényekhez. A Newton módszerhez képest annyi változás történik, ami az elméleti összefoglalásban le is van írva, hogy nem a Hesse mátrixszal számolunk, hanem annak, vagy pedig az inverzének egy közelítésével. A beviteli "űrlap" tehát egy mátrix bekérésével lesz több, ebben az esetben. A feldolgozott mátrixot ugyanúgy $hes néven használom, mint az előző módszernél a Hesse mátrixot, így a legegyszerűbb dolgozni vele. A lépések a BFGS eljárás esetén szinte teljesen megegyeznek a Newton módszerrel, az egyetlen különbség, hogy a Hesse mátrixot nem kell meghatározni a gradiens vektorból. A DFP eljárás során viszont a $hes a Hesse mátrix inverzének a közelítését fogja jelölni, és itt a s k = D k f(x k ) összefüggést kell megoldani, ahol a D mátrixunk $hes néven szerepel. Viszont ez nem egyenletrendszer, hanem egy vektor szorzása mátrixszal, ami a gyakorlatban egyetlen műveletet jelent. Ezt végzi el a fuggvenyek.php fájlban egy segédfüggvény, az mxv($matrix, $vektor), melynek neve a mátrix szorozva vektor összetételre utal. s k meghatározása után a vonalmenti minimalizálás itt is használható, pontosan ugyanúgy működik, mint a Newton módszernél. A ciklus végén viszont ki kell számolni a helyettesítő mátrix új közelítését is. Ehhez még a következő függvények szerepelnek: vxvt($vektor1, $vektor2) - vektor szorozva vektor transzponáltjával vtxv($vektor1, $vektor2) - vektor transzponáltja szorozva vektorral matrixossz($mihez, $mit) - mátrixok összeadása matrixperszam($matrix, $szam) - mátrix értékeinek leosztása adott számmal A fő függvény pedig az, ami kiszámítja az új közelítő mátrixot: function ujkozelhesse($hesse, $v1, $v2) { $v3 = mxv($hesse, $v2); $szam1 = vtxv($v1, $v2); $mx1 = vxvt($v1, $v1); $per = matrixperszam($mx1, $szam1); $hesse = matrixossz($hesse, $per); $szam2 = -1 * vtxv($v3, $v2); $per2 = matrixperszam(vxvt($v3, $v3),$szam2); $hesse = matrixossz($hesse, $per2); return $hesse; } 33

34 Ez a néhány függvényhívás pontosan megfelel az elméleti résznél már bemutatott képleteknek. A függvény ráadásul úgy van paraméterezve, hogy bármelyik eljárást választjuk, BFGS-t vagy DFP-t, mindkettőnél működik, mert az alap mátrix ugyanaz lesz, a két vektort pedig csak meg kell cserélni. A következő programrészlet mutatja ezt be: Először is ki kell számolni az y-t: $y = helyettvekt($gradi, $xvektor); $y = vektorossz($y, $minuszertekgrad); $egyrendszer itt is az s vektor értékét jelöli. Ezután pedig a módszereknek megfelelően: if($eljaras == "bfgs") { echo "B<sub>",$lepes+1,"</sub> = </td><td> "; $hes = ujkozelhesse($hes, $y, $egyrendszer); matrixkiir($hes); } else { echo "D<sub>",$lepes+1,"</sub> = </td><td> "; $hes = ujkozelhesse($hes, $egyrendszer, $y); matrixkiir($hes); } Ahogy az fenti kódrészleten is látszik, a két eljárás egy fájlban van megvalósítva, a Newton módszerrel egyező közös részek mellett egy elágaztatás dönti el a szükséges helyeken, hogy melyik metódus esetén milyen lépés következik. A BFGS módszernél lévő ujkozelhesse(\$hes, \$y, \$egyrendszer) függvényhívással bemutatom, hogy az új mátrix felépítése hogyan követi a már ismert képletet: B k+1 = B k + y ky T k y T k s k ujkozelhesse($hes, $y, $egyrendszer) { $v3 = mxv($hes, $egyrendszer); B k s k $szam1 = vtxv($y, $egyrendszer); yk Ts k $mx1 = vxvt($y, $y); y k yk T $per = matrixperszam($mx1, $szam1); (B ks k )(B k s k ) T (B k s k ) T s k. y ky T k y T k s k $hes = matrixossz($hes, $per); B k = B k + y kyk T yk Ts k $szam2 = -1 * vtxv($v3, $egyrendszer); (B k s k ) T s k $per2 = matrixperszam(vxvt($v3, $v3),$szam2); $hes = matrixossz($hes, $per2); (B ks k )(B k s k ) T (B k s k ) T s k B k = B k + (B ks k )(B k s k ) T (B k s k ) T s k A módosított B k mátrix lesz az új közelítő mátrix, a B k+1, mellyel már lehet folytatni a ciklus elejétől a módszert. 34

35 SUMT módszer Példa a DFP kvázi Newton módszer egy lépésére. A modszer/sumt.php fájl tartalmazza az algoritmust. A közös függvényeket include paranccsal éri el. A kezdeti két beviteli mező helyett itt öt szerepel, mert meg kell adni az egyenlőtlenséges és az egyenlőséges feltételi függvények számát, valamint ezeknek a maximális tagszámát. Utóbbival kapcsolatban megoldható lett volna, hogy minden feltételnél külön legyen bekérve a tagok száma, de az bonyolította volna a helyzetet, és legtöbbször a tagok száma a feltételeknél közel áll egymáshoz, így egységesen kezelem azokat. Minden ilyen feltételt úgy kell beírni, mint a célfüggvényt. A módszer legfontosabb része, hogy a célfüggvényt minden egyes lépésben kibővítem a megfelelő feltételek "beolvasztásával", de a célfüggvényre később még szükség lesz, ezért nem írom felül, hanem annak adatai helyett segédváltozókat használok. A büntető paraméter a szokásos módon van beállítva: értéke kezdetben 1, és 10- szeresére nő minden lépés során. Az adatoknál kért lépésszám fogja megadni, hogy a µ mennyiszer legyen növelve. A programban ezt a következő kód jelzi: $umaxertek = $uertek * pow(10, LEPSZ); - például LEPSZ konstans ha 5, akkor µ legnagyobb értéke lesz. 35

36 A büntető paraméter növelése ciklus használatával történik, melynek magjában a feltétel nélküli optimalizálási segédfeladat megoldása szerepel. Ehhez először létre kell hozni a segédfüggvényt, ami a célfüggvény szerepét kapja. Az eredeti célfüggvény együtthatóit és kitevőit egy új változóba másolom, majd az indexek növelésével a tömbhöz fokozatosan csatolom hozzá az éppen szükséges feltételeket. Minden egyes lépésnél először visszaállítom a segédfüggvényt az eredeti állapotára, hogy ne maradjon véletlenül sem több tagja, mint amennyi aktuálisan létrejön. Ennek elérésére az unset parancsot használom a tömbök minden olyan indexű elemére, mely nagyobb, mint az eredeti célfüggvény legnagyobb indexe, vagyis tagjainak száma. Ezután generálom újra a segédfüggvényt. Az egyenlőtlenséges feltételeket, ha bekerülnek, és az egyenlőségeseket pedig minden esetben négyzetre kell emelni. Erre a fvnegyzet($egyutt, $ki) függvény szolgál a fuggvenyek.php fájlból. Működését tekintve nagyon egyszerű: két, egymásba ágyazott ciklus segítségével a függvény minden tagját megszorzom minden taggal. Így például egy négytagú feltételnél a négyzetre emeléskor 16 tagot kapunk, ami egy elég nagy szám, de a program kezeli. Ha elkészült a segédfüggvény, akkor lezajlik a feltétel nélküli optimalizálás. Ennek nem kerül kiírásra minden lépése, csak a végeredmény. A lépésszám itt azonban kötött, konkrétan 100, ha esetleg eléri a program ezt, akkor egy üzenetet ír ki és véget ér az algoritmus. Ha a segédfüggvény minimumát megtalálta a program, akkor egy táblázatba kiírja a büntető paramétert, az x vektort, valamint a segédfüggvény és az eredeti célfüggvény értékét az x helyen. Ezután a µ 10-szeresére nő, és kezdődik újra a segédfeladat, a feltétel nélküli optimalizálás. Példa SUMT módszerre, 6 lépéssel Megjegyzések A program alapvetően a(z előre legyártott) "mintafeladatok" megoldását szolgálja, azokra működik hiba nélkül. Nincsenek ugyanis külön vizsgálatok, például hogy a Hesse mátrix közelítése szimmetrikus-e, azt pedig szintén nem tudni előre, hogy van-e egyáltalán a függvénynek minimumpontja. 36

10. Előadás. 1. Feltétel nélküli optimalizálás: Az eljárás alapjai

10. Előadás. 1. Feltétel nélküli optimalizálás: Az eljárás alapjai Optimalizálási eljárások MSc hallgatók számára 10. Előadás Előadó: Hajnal Péter Jegyzetelő: T. Szabó Tamás 2011. április 20. 1. Feltétel nélküli optimalizálás: Az eljárás alapjai A feltétel nélküli optimalizálásnál

Részletesebben

9. TÖBBVÁLTOZÓS FÜGGVÉNYEK DIFFERENCIÁLSZÁMITÁSA. 9.1 Metrika és topológia R k -ban

9. TÖBBVÁLTOZÓS FÜGGVÉNYEK DIFFERENCIÁLSZÁMITÁSA. 9.1 Metrika és topológia R k -ban 9. TÖBBVÁLTOZÓS FÜGGVÉNYEK DIFFERENCIÁLSZÁMITÁSA 9.1 Metrika és topológia R k -ban Definíció. A k-dimenziós euklideszi térnek nevezzük és R k val jelöljük a valós számokból alkotott k-tagú x = (x 1, x

Részletesebben

ALGORITMUSAI DR. NAGY TAMÁS. egyetemi docens. Miskolci Egyetem Alkalmazott Matematikai Tanszék

ALGORITMUSAI DR. NAGY TAMÁS. egyetemi docens. Miskolci Egyetem Alkalmazott Matematikai Tanszék FELTÉTEL NÉLKÜLI OPTIMALIZÁLÁS ALGORITMUSAI DR. NAGY TAMÁS egyetemi docens Miskolci Egyetem Alkalmazott Matematikai Tanszék A bemutatott kutató munka a TÁMOP-4...B-0//KONV-00-000 jel½u projekt részeként

Részletesebben

DR. NAGY TAMÁS. egyetemi docens. Miskolci Egyetem Alkalmazott Matematikai Tanszék

DR. NAGY TAMÁS. egyetemi docens. Miskolci Egyetem Alkalmazott Matematikai Tanszék FELTÉTELES OPTIMALIZÁLÁS DR. NAGY TAMÁS egyetemi docens Miskolci Egyetem Alkalmazott Matematikai Tanszék A bemutatott kutató munka a TÁMOP-4...B-0//KONV-00-000 jel½u projekt részeként az Európai Unió támogatásával,

Részletesebben

Feladatok a Gazdasági matematika II. tárgy gyakorlataihoz

Feladatok a Gazdasági matematika II. tárgy gyakorlataihoz Debreceni Egyetem Közgazdaságtudományi Kar Feladatok a Gazdasági matematika II tárgy gyakorlataihoz a megoldásra ajánlott feladatokat jelöli e feladatokat a félév végére megoldottnak tekintjük a nehezebb

Részletesebben

Többváltozós, valós értékű függvények

Többváltozós, valós értékű függvények Többváltozós függvények Többváltozós, valós értékű függvények Többváltozós függvények Definíció: többváltozós függvények Azokat a függvényeket, melyeknek az értelmezési tartománya R n egy részhalmaza,

Részletesebben

Gauss-Jordan módszer Legkisebb négyzetek módszere, egyenes LNM, polinom LNM, függvény. Lineáris algebra numerikus módszerei

Gauss-Jordan módszer Legkisebb négyzetek módszere, egyenes LNM, polinom LNM, függvény. Lineáris algebra numerikus módszerei A Gauss-Jordan elimináció, mátrixinvertálás Gauss-Jordan módszer Ugyanazzal a technikával, mint ahogy a k-adik oszlopban az a kk alatti elemeket kinulláztuk, a fölötte lévő elemeket is zérussá lehet tenni.

Részletesebben

15. LINEÁRIS EGYENLETRENDSZEREK

15. LINEÁRIS EGYENLETRENDSZEREK 15 LINEÁRIS EGYENLETRENDSZEREK 151 Lineáris egyenletrendszer, Gauss elimináció 1 Definíció Lineáris egyenletrendszernek nevezzük az (1) a 11 x 1 + a 12 x 2 + + a 1n x n = b 1 a 21 x 1 + a 22 x 2 + + a

Részletesebben

A szimplex algoritmus

A szimplex algoritmus A szimplex algoritmus Ismétlés: reprezentációs tétel, az optimális megoldás és az extrém pontok kapcsolata Alapfogalmak: bázisok, bázismegoldások, megengedett bázismegoldások, degenerált bázismegoldás

Részletesebben

Nemlineáris optimalizálás Dr. Házy, Attila

Nemlineáris optimalizálás Dr. Házy, Attila Nemlineáris optimalizálás Dr. Házy, Attila Nemlineáris optimalizálás Dr. Házy, Attila Miskolci Egyetem Kelet-Magyarországi Informatika Tananyag Tárház Kivonat Kivonat Nemzeti Fejlesztési Ügynökség http://ujszechenyiterv.gov.hu/

Részletesebben

Egyenletek, egyenlőtlenségek VII.

Egyenletek, egyenlőtlenségek VII. Egyenletek, egyenlőtlenségek VII. Magasabbfokú egyenletek: A 3, vagy annál nagyobb fokú egyenleteket magasabb fokú egyenleteknek nevezzük. Megjegyzés: Egy n - ed fokú egyenletnek legfeljebb n darab valós

Részletesebben

Szélsőérték-számítás

Szélsőérték-számítás Szélsőérték-számítás Jelölések A következő jelölések mind az f függvény x szerinti parciális deriváltját jelentik: Ugyanígy az f függvény y szerinti parciális deriváltja: f x = xf = f x f y = yf = f y

Részletesebben

3. Előadás. Megyesi László: Lineáris algebra, oldal. 3. előadás Lineáris egyenletrendszerek

3. Előadás. Megyesi László: Lineáris algebra, oldal. 3. előadás Lineáris egyenletrendszerek 3. Előadás Megyesi László: Lineáris algebra, 47. 50. oldal. Gondolkodnivalók Determinánsok 1. Gondolkodnivaló Determinánselméleti tételek segítségével határozzuk meg a következő n n-es determinánst: 1

Részletesebben

6. Függvények. 1. Az alábbi függvények közül melyik szigorúan monoton növekvő a 0;1 intervallumban?

6. Függvények. 1. Az alábbi függvények közül melyik szigorúan monoton növekvő a 0;1 intervallumban? 6. Függvények I. Nulladik ZH-ban láttuk: 1. Az alábbi függvények közül melyik szigorúan monoton növekvő a 0;1 intervallumban? f x g x cos x h x x ( ) sin x (A) Az f és a h. (B) Mindhárom. (C) Csak az f.

Részletesebben

First Prev Next Last Go Back Full Screen Close Quit. (Derivált)

First Prev Next Last Go Back Full Screen Close Quit. (Derivált) Valós függvények (3) (Derivált) . Legyen a belső pontja D f -nek. Ha létezik és véges a f(x) f(a) x a x a = f (a) () határérték, akkor f differenciálható a-ban. Az f (a) szám az f a-beli differenciálhányadosa.

Részletesebben

Lagrange-féle multiplikátor módszer és alkalmazása

Lagrange-féle multiplikátor módszer és alkalmazása Eötvös Loránd Tudományegyetem Természettudományi Kar Nemesné Jónás Nikolett Lagrange-féle multiplikátor módszer és alkalmazása Matematika BSc, Matematikai elemz szakirány Témavezet : Szekeres Béla János,

Részletesebben

KOVÁCS BÉLA, MATEMATIKA I.

KOVÁCS BÉLA, MATEMATIKA I. KOVÁCS BÉLA MATEmATIkA I 6 VI KOmPLEX SZÁmOk 1 A komplex SZÁmOk HALmAZA A komplex számok olyan halmazt alkotnak amelyekben elvégezhető az összeadás és a szorzás azaz két komplex szám összege és szorzata

Részletesebben

PTE PMMFK Levelező-távoktatás, villamosmérnök szak

PTE PMMFK Levelező-távoktatás, villamosmérnök szak PTE PMMFK Levelező-távoktatás, villamosmérnök szak MATEMATIKA (A tantárgy tartalma és a tananyag elsajátításának időterve.) Összeállította: Kis Miklós adjunktus Tankönyvek (mindhárom félévre): 1. Scharnitzky

Részletesebben

Gazdasági matematika II. vizsgadolgozat, megoldással,

Gazdasági matematika II. vizsgadolgozat, megoldással, Gazdasági matematika II. vizsgadolgozat, megoldással, levelező képzés Definiálja az alábbi fogalmakat! 1. Kvadratikus mátrix invertálhatósága és inverze. (4 pont) Egy A kvadratikus mátrixot invertálhatónak

Részletesebben

karakterisztikus egyenlet Ortogonális mátrixok. Kvadratikus alakok főtengelytranszformációja

karakterisztikus egyenlet Ortogonális mátrixok. Kvadratikus alakok főtengelytranszformációja Mátrixok hasonlósága, karakterisztikus mátrix, karakterisztikus egyenlet Ortogonális mátrixok. Kvadratikus alakok főtengelytranszformációja 1.Mátrixok hasonlósága, karakterisztikus mátrix, karakterisztikus

Részletesebben

6. Előadás. Megyesi László: Lineáris algebra, oldal. 6. előadás Bázis, dimenzió

6. Előadás. Megyesi László: Lineáris algebra, oldal. 6. előadás Bázis, dimenzió 6. Előadás Megyesi László: Lineáris algebra, 37. 41. oldal. Gondolkodnivalók Lineáris függetlenség 1. Gondolkodnivaló Legyen V valós számtest feletti vektortér. Igazolja, hogy ha a v 1, v 2,..., v n V

Részletesebben

8. Egyenletek, egyenlőtlenségek, egyenletrendszerek II.

8. Egyenletek, egyenlőtlenségek, egyenletrendszerek II. 8 Egyenletek, egyenlőtlenségek, egyenletrendszerek II Elméleti összefoglaló Az a + b+ c, a egyenletet másodfokú egyenletnek nevezzük A D b ac kifejezést az egyenlet diszkriminánsának nevezzük Ha D >, az

Részletesebben

Alap-ötlet: Karl Friedrich Gauss ( ) valószínűségszámítási háttér: Andrej Markov ( )

Alap-ötlet: Karl Friedrich Gauss ( ) valószínűségszámítási háttér: Andrej Markov ( ) Budapesti Műszaki és Gazdaságtudományi Egyetem Gépészmérnöki Kar Hidrodinamikai Rendszerek Tanszék, Budapest, Műegyetem rkp. 3. D ép. 334. Tel: 463-6-80 Fa: 463-30-9 http://www.vizgep.bme.hu Alap-ötlet:

Részletesebben

Kvadratikus alakok és euklideszi terek (előadásvázlat, október 5.) Maróti Miklós, Kátai-Urbán Kamilla

Kvadratikus alakok és euklideszi terek (előadásvázlat, október 5.) Maróti Miklós, Kátai-Urbán Kamilla Kvadratikus alakok és euklideszi terek (előadásvázlat, 0. október 5.) Maróti Miklós, Kátai-Urbán Kamilla Az előadáshoz ajánlott jegyzet: Szabó László: Bevezetés a lineáris algebrába, Polygon Kiadó, Szeged,

Részletesebben

6. Függvények. Legyen függvény és nem üreshalmaz. A függvényt az f K-ra való kiterjesztésének

6. Függvények. Legyen függvény és nem üreshalmaz. A függvényt az f K-ra való kiterjesztésének 6. Függvények I. Elméleti összefoglaló A függvény fogalma, értelmezési tartomány, képhalmaz, értékkészlet Legyen az A és B halmaz egyike sem üreshalmaz. Ha az A halmaz minden egyes eleméhez hozzárendeljük

Részletesebben

Szélsőérték feladatok megoldása

Szélsőérték feladatok megoldása Szélsőérték feladatok megoldása A z = f (x,y) függvény lokális szélsőértékének meghatározása: A. Szükséges feltétel: f x (x,y) = 0 f y (x,y) = 0 egyenletrendszer megoldása, amire a továbbiakban az x =

Részletesebben

Másodfokú egyenletek, egyenlőtlenségek

Másodfokú egyenletek, egyenlőtlenségek Másodfokú egyenletek, egyenlőtlenségek A másodfokú egyenlet grafikus megoldása Példa1. Ábrázold az f(x) = x 1x 16 függvényt, majd olvasd le az ábráról az alábbi egyenlet megoldását: x 1x 16 =. 1. lépés:

Részletesebben

Differenciálegyenletek megoldása próbafüggvény-módszerrel

Differenciálegyenletek megoldása próbafüggvény-módszerrel Differenciálegyenletek megoldása próbafüggvény-módszerrel Ez még nem a végleges változat, utoljára módosítva: 2012. április 9.19:38. Elsőrendű egyenletek Legyen adott egy elsőrendű lineáris állandó együtthatós

Részletesebben

9. Előadás. Megyesi László: Lineáris algebra, oldal. 9. előadás Mátrix inverze, mátrixegyenlet

9. Előadás. Megyesi László: Lineáris algebra, oldal. 9. előadás Mátrix inverze, mátrixegyenlet 9. Előadás Megyesi László: Lineáris algebra, 75. 84. oldal. Gondolkodnivalók Mátrix rangja 1. Gondolkodnivaló Határozzuk meg a p valós paraméter értékétől függően a következő mátrix rangját: p 3 1 2 2

Részletesebben

P 2 P 1. 4.1 ábra Az f(x) függvény globális minimuma (P 1 ) és egy lokális minimuma (P 2 ).

P 2 P 1. 4.1 ábra Az f(x) függvény globális minimuma (P 1 ) és egy lokális minimuma (P 2 ). Paláncz Béla - Numerikus Módszerek - 211-4. Optimalizálás 4 Optimalizálás Bevezetés Az optimalizáció, egy függvény szélsőértéke helyének meghatározása, talán a legfontosabb numerikus eljárások közé tartozik.

Részletesebben

Nemkonvex kvadratikus egyenlőtlenségrendszerek pontos dualitással

Nemkonvex kvadratikus egyenlőtlenségrendszerek pontos dualitással pontos dualitással Imre McMaster University Advanced Optimization Lab ELTE TTK Operációkutatási Tanszék Folytonos optimalizálás szeminárium 2004. július 6. 1 2 3 Kvadratikus egyenlőtlenségrendszerek Primál

Részletesebben

9. Előadás. Megyesi László: Lineáris algebra, oldal. 9. előadás Mátrix inverze, Leontyev-modell

9. Előadás. Megyesi László: Lineáris algebra, oldal. 9. előadás Mátrix inverze, Leontyev-modell 9. Előadás Megyesi László: Lineáris algebra, 75. 84. oldal. Gondolkodnivalók Mátrix rangja 1. Gondolkodnivaló Tegyük fel, hogy egy elemi bázistranszformáció kezdetekor a sor- és oszlopindexek sorban helyezkednek

Részletesebben

Numerikus matematika vizsga

Numerikus matematika vizsga 1. Az a = 2, t = 4, k = 3, k + = 2 számábrázolási jellemzők mellett hány pozitív, normalizált lebegőpontos szám ábrázolható? Adja meg a legnagyobb ábrázolható számot! Mi lesz a 0.8-hoz rendelt lebegőpontos

Részletesebben

Taylor-polinomok. 1. Alapfeladatok. 2015. április 11. 1. Feladat: Írjuk fel az f(x) = e 2x függvény másodfokú Maclaurinpolinomját!

Taylor-polinomok. 1. Alapfeladatok. 2015. április 11. 1. Feladat: Írjuk fel az f(x) = e 2x függvény másodfokú Maclaurinpolinomját! Taylor-polinomok 205. április.. Alapfeladatok. Feladat: Írjuk fel az fx) = e 2x függvény másodfokú Maclaurinpolinomját! Megoldás: A feladatot kétféle úton is megoldjuk. Az els megoldásban induljunk el

Részletesebben

Feladatok megoldásokkal a 9. gyakorlathoz (Newton-Leibniz formula, közelítő integrálás, az integrálszámítás alkalmazásai 1.

Feladatok megoldásokkal a 9. gyakorlathoz (Newton-Leibniz formula, közelítő integrálás, az integrálszámítás alkalmazásai 1. Feladatok megoldásokkal a 9. gyakorlathoz (Newton-Leibniz formula, közelítő integrálás, az integrálszámítás alkalmazásai.). Feladat. Határozzuk meg az alábbi integrálokat: a) x x + dx d) xe x dx b) c)

Részletesebben

MODELLEK ÉS ALGORITMUSOK ELŐADÁS

MODELLEK ÉS ALGORITMUSOK ELŐADÁS MODELLEK ÉS ALGORITMUSOK ELŐADÁS Szerkesztette: Balogh Tamás 214. december 7. Ha hibát találsz, kérlek jelezd a info@baloghtamas.hu e-mail címen! Ez a Mű a Creative Commons Nevezd meg! - Ne add el! - Így

Részletesebben

Numerikus módszerek 1.

Numerikus módszerek 1. Numerikus módszerek 1. 10. előadás: Nemlineáris egyenletek numerikus megoldása Lócsi Levente ELTE IK 2013. november 18. Tartalomjegyzék 1 Bolzano-tétel, intervallumfelezés 2 Fixponttételek, egyszerű iterációk

Részletesebben

First Prev Next Last Go Back Full Screen Close Quit. Matematika I

First Prev Next Last Go Back Full Screen Close Quit. Matematika I Matematika I (Analízis) Készítette: Horváth Gábor Kötelező irodalom: Ács László, Gáspár Csaba: Analízis 1 Oktatási segédanyagok és a tantárgyi követelményrendszer megtalálható a http://rs1.szif.hu/ horvathg/horvathg.html

Részletesebben

1. Parciális függvény, parciális derivált (ismétlés)

1. Parciális függvény, parciális derivált (ismétlés) Operációkutatás NYME Gazdaságinformatikus mesterképzés El adó: Kalmár János (kalmar[kukac]inf.nyme.hu) Többváltozós széls érték számítás Parciális függvény, parciális derivált Széls érték korlátos zárt

Részletesebben

Matematika. 4. konzultáció: Kétváltozós függvények szélsőértéke. Parciális függvény, parciális derivált

Matematika. 4. konzultáció: Kétváltozós függvények szélsőértéke. Parciális függvény, parciális derivált Matematika 1 NYME KTK, Egyetemi kiegészítő alapképzés 2004/2005. tanév, I. évf. I.félév Budapest Előadó: Dr. Takách Géza NyME FMK Informatikai Intézet 9400 Sopron, Bajcsy Zs. u. 9. GT fszt. 3. (99) 518

Részletesebben

MATEMATIKA ÉRETTSÉGI TÍPUSFELADATOK MEGOLDÁSAI KÖZÉPSZINT Függvények

MATEMATIKA ÉRETTSÉGI TÍPUSFELADATOK MEGOLDÁSAI KÖZÉPSZINT Függvények MATEMATIKA ÉRETTSÉGI TÍPUSFELADATOK MEGOLDÁSAI KÖZÉPSZINT Függvények A szürkített hátterű feladatrészek nem tartoznak az érintett témakörhöz, azonban szolgálhatnak fontos információval az érintett feladatrészek

Részletesebben

Határozatlan integrál (2) First Prev Next Last Go Back Full Screen Close Quit

Határozatlan integrál (2) First Prev Next Last Go Back Full Screen Close Quit Határozatlan integrál () First Prev Next Last Go Back Full Screen Close Quit 1. Az összetett függvények integrálására szolgáló egyik módszer a helyettesítéssel való integrálás. Az idevonatkozó tétel pontos

Részletesebben

Lineáris egyenletrendszerek

Lineáris egyenletrendszerek Lineáris egyenletrendszerek Lineáris egyenletrendszernek nevezzük az a 11 x 1 + a 12 x 2 +... +a 1n x n = b 1 a 21 x 1 + a 22 x 2 +... +a 2n x n = b 2.. a k1 x 1 + a k2 x 2 +... +a kn x n = b k n ismeretlenes,

Részletesebben

Valós függvények tulajdonságai és határérték-számítása

Valós függvények tulajdonságai és határérték-számítása EL 1 Valós függvények tulajdonságai és határérték-számítása Az ebben a részben szereplő függvények értelmezési tartománya legyen R egy részhalmaza. EL 2 Definíció: zérushely Az f:d R függvénynek zérushelye

Részletesebben

Vektorgeometria (2) First Prev Next Last Go Back Full Screen Close Quit

Vektorgeometria (2) First Prev Next Last Go Back Full Screen Close Quit Vektorgeometria (2) First Prev Next Last Go Back Full Screen Close Quit 1. Tekintsünk a térben egy P (p 1, p 2, p 3 ) pontot és egy v = (v 1, v 2, v 3 ) = 0 vektort. Ekkor pontosan egy egyenes létezik,

Részletesebben

Megoldott feladatok november 30. n+3 szigorúan monoton csökken, 5. n+3. lim a n = lim. n+3 = 2n+3 n+4 2n+1

Megoldott feladatok november 30. n+3 szigorúan monoton csökken, 5. n+3. lim a n = lim. n+3 = 2n+3 n+4 2n+1 Megoldott feladatok 00. november 0.. Feladat: Vizsgáljuk az a n = n+ n+ sorozat monotonitását, korlátosságát és konvergenciáját. Konvergencia esetén számítsuk ki a határértéket! : a n = n+ n+ = n+ n+ =

Részletesebben

KOVÁCS BÉLA, MATEMATIKA I.

KOVÁCS BÉLA, MATEMATIKA I. KOVÁCS BÉLA, MATEmATIkA I 16 XVI A DIFFERENCIÁLSZÁmÍTÁS ALkALmAZÁSAI 1 Érintő ÉS NORmÁLIS EGYENES, L HOSPITAL-SZAbÁLY Az görbe abszcisszájú pontjához tartozó érintőjének egyenlete (1), normálisának egyenlete

Részletesebben

Opkut deníciók és tételek

Opkut deníciók és tételek Opkut deníciók és tételek Készítette: Bán József Deníciók 1. Deníció (Lineáris programozási feladat). Keressük meg adott lineáris, R n értelmezési tartományú függvény, az ún. célfüggvény széls értékét

Részletesebben

Lineáris algebra 2. Filip Ferdinánd december 7. siva.banki.hu/jegyzetek

Lineáris algebra 2. Filip Ferdinánd december 7. siva.banki.hu/jegyzetek Lineáris algebra 2 Filip Ferdinánd filipferdinand@bgkuni-obudahu sivabankihu/jegyzetek 2015 december 7 Filip Ferdinánd 2016 februar 9 Lineáris algebra 2 1 / 37 Az el adás vázlata Determináns Determináns

Részletesebben

összeadjuk 0-t kapunk. Képletben:

összeadjuk 0-t kapunk. Képletben: 814 A ferde kifejtés tétele Ha egy determináns valamely sorának elemeit egy másik sor elemeihez tartozó adjungáltakkal szorozzuk meg és a szorzatokat összeadjuk 0-t kapunk Képletben: n a ij A kj = 0, ha

Részletesebben

Arany Dániel Matematikai Tanulóverseny 2014/2015-ös tanév első (iskolai) forduló Haladók II. kategória

Arany Dániel Matematikai Tanulóverseny 2014/2015-ös tanév első (iskolai) forduló Haladók II. kategória Bolyai János Matematikai Társulat Arany Dániel Matematikai Tanulóverseny 01/01-ös tanév első iskolai) forduló Haladók II. kategória Megoldások és javítási útmutató 1. Adott az alábbi két egyenletrendszer:

Részletesebben

Mátrixjátékok tiszta nyeregponttal

Mátrixjátékok tiszta nyeregponttal 1 Mátrixjátékok tiszta nyeregponttal 1. Példa. Két játékos Aladár és Bendegúz rendelkeznek egy-egy tetraéderrel, melyek lapjaira rendre az 1, 2, 3, 4 számokat írták. Egy megadott jelre egyszerre felmutatják

Részletesebben

Gauss elimináció, LU felbontás

Gauss elimináció, LU felbontás Közelítő és szimbolikus számítások 3. gyakorlat Gauss elimináció, LU felbontás Készítette: Gelle Kitti Csendes Tibor Somogyi Viktor London András Deák Gábor jegyzetei alapján 1 EGYENLETRENDSZEREK 1. Egyenletrendszerek

Részletesebben

A Matematika I. előadás részletes tematikája

A Matematika I. előadás részletes tematikája A Matematika I. előadás részletes tematikája 2005/6, I. félév 1. Halmazok és relációk 1.1 Műveletek halmazokkal Definíciók, fogalmak: halmaz, elem, üres halmaz, halmazok egyenlősége, részhalmaz, halmazok

Részletesebben

Egyenletek, egyenlőtlenségek X.

Egyenletek, egyenlőtlenségek X. Egyenletek, egyenlőtlenségek X. DEFINÍCIÓ: (Logaritmus) Ha egy pozitív valós számot adott, 1 - től különböző pozitív alapú hatvány alakban írunk fel, akkor ennek a hatványnak a kitevőjét logaritmusnak

Részletesebben

LINEÁRIS EGYENLETRENDSZEREK október 12. Irodalom A fogalmakat, definíciókat illetően két forrásra támaszkodhatnak: ezek egyrészt elhangzanak

LINEÁRIS EGYENLETRENDSZEREK október 12. Irodalom A fogalmakat, definíciókat illetően két forrásra támaszkodhatnak: ezek egyrészt elhangzanak LINEÁRIS EGYENLETRENDSZEREK 004. október. Irodalom A fogalmakat, definíciókat illetően két forrásra támaszkodhatnak: ezek egyrészt elhangzanak az előadáson, másrészt megtalálják a jegyzetben: Szabó László:

Részletesebben

FEGYVERNEKI SÁNDOR, Valószínűség-sZÁMÍTÁs És MATEMATIKAI

FEGYVERNEKI SÁNDOR, Valószínűség-sZÁMÍTÁs És MATEMATIKAI FEGYVERNEKI SÁNDOR, Valószínűség-sZÁMÍTÁs És MATEMATIKAI statisztika 10 X. SZIMULÁCIÓ 1. VÉLETLEN számok A véletlen számok fontos szerepet játszanak a véletlen helyzetek generálásában (pénzérme, dobókocka,

Részletesebben

Kétváltozós függvény szélsőértéke

Kétváltozós függvény szélsőértéke Kétváltozós függvény szélsőértéke Sütő Andrea Kétváltozós függvény szélsőértéke Legyen adott f ( xy, ) kétváltozós függvény és ez legyen folytonosan totálisan differenciálható, azaz létezzenek az elsőrendű

Részletesebben

I. Egyenlet fogalma, algebrai megoldása

I. Egyenlet fogalma, algebrai megoldása 11 modul: EGYENLETEK, EGYENLŐTLENSÉGEK MEGOLDÁSA 6 I Egyenlet fogalma, algebrai megoldása Módszertani megjegyzés: Az egyenletek alaphalmazát, értelmezési tartományát később vezetjük be, a törtes egyenletekkel

Részletesebben

Maple: Deriváltak és a függvény nevezetes pontjai

Maple: Deriváltak és a függvény nevezetes pontjai Maple: Deriváltak és a függvény nevezetes pontjai Bevezető Tudjuk, hogy a Maple könnyűszerrel képes végrehajtani a szimbólikus matematikai számításokat, ezért a Maple egy ideális program differenciál-

Részletesebben

Felügyelt önálló tanulás - Analízis III.

Felügyelt önálló tanulás - Analízis III. Felügyelt önálló tanulás - Analízis III Kormos Máté Differenciálható sokaságok Sokaságok Röviden, sokaságoknak nevezzük azokat az objektumokat, amelyek egy n dimenziós térben lokálisan k dimenziósak Definíció:

Részletesebben

Első zárthelyi dolgozat megoldásai biomatematikából * A verzió

Első zárthelyi dolgozat megoldásai biomatematikából * A verzió Első zárthelyi dolgozat megoldásai biomatematikából * A verzió Elméleti kérdések: E. Mikor nevezünk egy gráfot gyengén és mikor erősen összefüggőnek? Adjon példát gyengén összefüggő de erősen nem összefüggő

Részletesebben

EuroOffice Optimalizáló (Solver)

EuroOffice Optimalizáló (Solver) 1. oldal EuroOffice Optimalizáló (Solver) Az EuroOffice Optimalizáló egy OpenOffice.org bővítmény, ami gyors algoritmusokat kínál lineáris programozási és szállítási feladatok megoldására. Szimplex módszer

Részletesebben

LINEÁRIS PROGRAMOZÁSI FELADATOK MEGOLDÁSA SZIMPLEX MÓDSZERREL

LINEÁRIS PROGRAMOZÁSI FELADATOK MEGOLDÁSA SZIMPLEX MÓDSZERREL LINEÁRIS PROGRAMOZÁSI FELADATOK MEGOLDÁSA SZIMPLEX MÓDSZERREL x 1-2x 2 6 -x 1-3x 3 = -7 x 1 - x 2-3x 3-2 3x 1-2x 2-2x 3 4 4x 1-2x 2 + x 3 max Alapfogalmak: feltételrendszer (narancs színnel jelölve), célfüggvény

Részletesebben

FÜGGVÉNYTANI ALAPOK A) ÉRTELMEZÉSI TARTOMÁNY

FÜGGVÉNYTANI ALAPOK A) ÉRTELMEZÉSI TARTOMÁNY FÜGGVÉNYTANI ALAPOK Foglalkoztunk az alaptulajdonságnak tekinthető értelmezési tartománnyal, és a paritással, továbbá az összetett függvények képzési módjával, illetve ezeknek az elemi függvényekre való

Részletesebben

Sorozatok I. Brósch Zoltán (Debreceni Egyetem Kossuth Lajos Gyakorló Gimnáziuma)

Sorozatok I. Brósch Zoltán (Debreceni Egyetem Kossuth Lajos Gyakorló Gimnáziuma) Sorozatok I. DEFINÍCIÓ: (Számsorozat) A számsorozat olyan függvény, amelynek értelmezési tartománya a pozitív egész számok halmaza, értékkészlete a valós számok egy részhalmaza. Jelölés: (a n ), {a n }.

Részletesebben

Feladatok megoldásokkal az ötödik gyakorlathoz (Taylor polinom, szöveges szélsőérték problémák)

Feladatok megoldásokkal az ötödik gyakorlathoz (Taylor polinom, szöveges szélsőérték problémák) Feladatok megoldásokkal az ötödik gyakorlathoz Taylor polinom, szöveges szélsőérték problémák) 1. Feladat. Írjuk fel az fx) = e x függvény a = 0 pont körüli negyedfokú Taylor polinomját! Ennek segítségével

Részletesebben

1. előadás. Lineáris algebra numerikus módszerei. Hibaszámítás Számábrázolás Kerekítés, levágás Klasszikus hibaanalízis Abszolút hiba Relatív hiba

1. előadás. Lineáris algebra numerikus módszerei. Hibaszámítás Számábrázolás Kerekítés, levágás Klasszikus hibaanalízis Abszolút hiba Relatív hiba Hibaforrások Hiba A feladatok megoldása során különféle hibaforrásokkal találkozunk: Modellhiba, amikor a valóságnak egy közelítését használjuk a feladat matematikai alakjának felírásához. (Pl. egy fizikai

Részletesebben

Nemlineáris egyenletrendszerek megoldása április 15.

Nemlineáris egyenletrendszerek megoldása április 15. Nemlineáris egyenletrendszerek megoldása 2014. április 15. Nemlineáris egyenletrendszerek Az egyenletrendszer a következő formában adott: f i (x 1, x 2,..., x M ) = 0 i = 1...N az f i függvények az x j

Részletesebben

Számítógépes programok alkalmazása az analízisben

Számítógépes programok alkalmazása az analízisben Eötvös Loránd Tudományegyetem Természettudományi Kar Számítógépes programok alkalmazása az analízisben Szakdolgozat Csillagvári Dániel Matematika BSc, elemző szakirány Témavezető: Gémes Margit Analízis

Részletesebben

DIFFERENCIÁLÁS, GRADIENS VEKTOR, HESSE MÁTRIX, LÁNCSZABÁLY,

DIFFERENCIÁLÁS, GRADIENS VEKTOR, HESSE MÁTRIX, LÁNCSZABÁLY, DIFFERENCIÁLÁS, GRADIENS VEKTOR, HESSE MÁTRIX, LÁNCSZABÁLY, IMPLICIT FÜGGVÉNY TÉTEL DR NAGY TAMÁS egyetemi docens Miskolci Egyetem Alkalmazott Matematikai Tanszék A bemutatott kutató munka a TÁMOP-B-0//KONV-00-000

Részletesebben

Lineáris leképezések. 2. Lineáris-e az f : R 2 R 2 f(x, y) = (x + y, x 2 )

Lineáris leképezések. 2. Lineáris-e az f : R 2 R 2 f(x, y) = (x + y, x 2 ) Lineáris leképezések 1 Lineáris-e az f : R 2 R 2 f(x, y = (3x + 2y, x y leképezés? A linearitáshoz ellen riznünk kell, hogy a leképzés additív és homogén Legyen x = (x 1, R 2, y = (y 1, y 2 R 2, c R Ekkor

Részletesebben

PTE PMMFK Levelező-távoktatás, villamosmérnök szak

PTE PMMFK Levelező-távoktatás, villamosmérnök szak PTE PMMFK Levelező-távoktatás, villamosmérnök szak MATEMATIKA (A tantárgy tartalma és a tananyag elsajátításának időterve.) Összeállította: Kis Miklós adjunktus Tankönyvek Megegyeznek az 1. és 2. félévben

Részletesebben

y + a y + b y = r(x),

y + a y + b y = r(x), Definíció 1 A másodrendű, állandó együtthatós, lineáris differenciálegyenletek általános alakja y + a y + b y = r(x), ( ) ahol a és b valós számok, r(x) pedig adott függvény. Ha az r(x) függvény az azonosan

Részletesebben

2) Írja fel az alábbi lineáris függvény grafikonjának egyenletét! (3pont)

2) Írja fel az alábbi lineáris függvény grafikonjának egyenletét! (3pont) (11/1) Függvények 1 1) Ábrázolja az f()= -4 függvényt a [ ;10 ] intervallumon! (pont) ) Írja fel az alábbi lineáris függvény grafikonjának egyenletét! (3pont) 3) Ábrázolja + 1 - függvényt a [ ;] -on! (3pont)

Részletesebben

Analízis előadás és gyakorlat vázlat

Analízis előadás és gyakorlat vázlat Analízis előadás és gyakorlat vázlat Készült a PTE TTK GI szakos hallgatóinak Király Balázs 2010-11. I. Félév 2 1. fejezet Számhalmazok és tulajdonságaik 1.1. Nevezetes számhalmazok ➀ a) jelölése: N b)

Részletesebben

Matematikai alapok 1 Tantárgyi útmutató

Matematikai alapok 1 Tantárgyi útmutató Módszertani Intézeti Tanszék Gazdaságinformatikus szak nappali tagozat Matematikai alapok 1 Tantárgyi útmutató 2015/16 tanév II. félév 1/5 Tantárgy megnevezése Matematikai alapok 1 Tantárgy jellege/típusa:

Részletesebben

Diszkrét matematika II., 5. előadás. Lineáris egyenletrendszerek

Diszkrét matematika II., 5. előadás. Lineáris egyenletrendszerek 1 Diszkrét matematika II, 5 előadás Lineáris egyenletrendszerek Dr Takách Géza NyME FMK Informatikai Intézet takach@infnymehu http://infnymehu/ takach/ 2007 március 8 Egyenletrendszerek Középiskolás módszerek:

Részletesebben

Operációkutatás. 4. konzultáció: Szállítási feladat. A feladat LP modellje

Operációkutatás. 4. konzultáció: Szállítási feladat. A feladat LP modellje Operációkutatás 1 NYME KTK, gazdálkodás szak, levelező alapképzés 2002/2003. tanév, II. évf. 2.félév Előadó: Dr. Takách Géza NyME FMK Információ Technológia Tanszék 9400 Sopron, Bajcsy Zs. u. 9. GT fszt.

Részletesebben

Másodfokú egyenletek, egyenlőtlenségek

Másodfokú egyenletek, egyenlőtlenségek Másodfokú egyenletek, egyenlőtlenségek A másodfokú egyenlet grafikus megoldása Példa1. Ábrázold az f(x) = x + 1x + 16 függvényt, majd olvasd le az ábráról az alábbi egyenlet megoldását: x + 1x + 16 = 0.

Részletesebben

Gazdasági matematika 1 Tantárgyi útmutató

Gazdasági matematika 1 Tantárgyi útmutató Módszertani Intézeti Tanszék Emberi erőforrások, gazdálkodási és menedzsment, pénzügy és számvitel szakok nappali tagozat Gazdasági matematika 1 Tantárgyi útmutató 2016/17 tanév I. félév 1/5 Tantárgy megnevezése

Részletesebben

Függvények vizsgálata

Függvények vizsgálata Függvények vizsgálata ) Végezzük el az f ) = + polinomfüggvény vizsgálatát! Értelmezési tartomány: D f = R. Zérushelyek: Próbálgatással könnyen adódik, hogy f ) = 0. Ezután polinomosztással: + ) / ) =

Részletesebben

TANTÁRGYI PROGRAM Matematikai alapok I. útmutató

TANTÁRGYI PROGRAM Matematikai alapok I. útmutató BGF PÉNZÜGYI ÉS SZÁMVITELI KAR Módszertani Intézeti Tanszéki Osztály TANTÁRGYI PROGRAM Matematikai alapok I. útmutató 2014/2015. tanév I. félév Tantárgyi program Tantárgy megnevezése Matematikai alapok

Részletesebben

Lagrange egyenletek. Úgy a virtuális munka mint a D Alembert-elv gyakorlati alkalmazását

Lagrange egyenletek. Úgy a virtuális munka mint a D Alembert-elv gyakorlati alkalmazását Lagrange egyenletek Úgy a virtuális munka mint a D Alembert-elv gyakorlati alkalmazását megnehezíti a δr i virtuális elmozdulások egymástól való függősége. (F i ṗ i )δx i = 0, i = 1, 3N. (1) i 3N infinitezimális

Részletesebben

függvény grafikonja milyen transzformációkkal származtatható az f0 : R R, f0(

függvény grafikonja milyen transzformációkkal származtatható az f0 : R R, f0( FÜGGVÉNYEK 1. (008. okt., 14. fel, 5+7 pont) Fogalmazza meg, hogy az f : R R, f ( x) x 1 függvény grafikonja milyen transzformációkkal származtatható az f0 : R R, f0( x) x függvény grafikonjából! Ábrázolja

Részletesebben

Determinánsok. A determináns fogalma olyan algebrai segédeszköz, amellyel. szolgáltat az előbbi kérdésekre, bár ez nem mindig hatékony.

Determinánsok. A determináns fogalma olyan algebrai segédeszköz, amellyel. szolgáltat az előbbi kérdésekre, bár ez nem mindig hatékony. Determinánsok A determináns fogalma olyan algebrai segédeszköz, amellyel jól jellemezhető a mátrixok invertálhatósága, a mátrix rangja. Segítségével lineáris egyenletrendszerek megoldhatósága dönthető

Részletesebben

YBL - SGYMMAT2012XA Matematika II.

YBL - SGYMMAT2012XA Matematika II. YBL - SGYMMAT2012XA Matematika II. Tantárgyfelelős: Dr. Joós Antal Tárgyelőadó: Dr. Joós Antal Tantárgyi leírás Oktatási cél: Azoknak a matematikai alapoknak a megszerzése, melyek a szaktárgyak elsajátításához

Részletesebben

1. Generátorrendszer. Házi feladat (fizikából tudjuk) Ha v és w nem párhuzamos síkvektorok, akkor generátorrendszert alkotnak a sík vektorainak

1. Generátorrendszer. Házi feladat (fizikából tudjuk) Ha v és w nem párhuzamos síkvektorok, akkor generátorrendszert alkotnak a sík vektorainak 1. Generátorrendszer Generátorrendszer. Tétel (Freud, 4.3.4. Tétel) Legyen V vektortér a T test fölött és v 1,v 2,...,v m V. Ekkor a λ 1 v 1 + λ 2 v 2 +... + λ m v m alakú vektorok, ahol λ 1,λ 2,...,λ

Részletesebben

A maximum likelihood becslésről

A maximum likelihood becslésről A maximum likelihood becslésről Definíció Parametrikus becsléssel foglalkozunk. Adott egy modell, mellyel elképzeléseink szerint jól leírható a meghatározni kívánt rendszer. (A modell típusának és rendszámának

Részletesebben

Feladatok a Diffrenciálegyenletek IV témakörhöz. 1. Határozzuk meg következő differenciálegyenletek általános megoldását a próba függvény módszerrel.

Feladatok a Diffrenciálegyenletek IV témakörhöz. 1. Határozzuk meg következő differenciálegyenletek általános megoldását a próba függvény módszerrel. Feladatok a Diffrenciálegyenletek IV témakörhöz 1 Határozzuk meg következő differenciálegyenletek általános megoldását a próba függvény módszerrel (a) y 3y 4y = 3e t (b) y 3y 4y = sin t (c) y 3y 4y = 8t

Részletesebben

A mérési eredmény megadása

A mérési eredmény megadása A mérési eredmény megadása A mérés során kapott értékek eltérnek a mérendő fizikai mennyiség valódi értékétől. Alapvetően kétféle mérési hibát különböztetünk meg: a determinisztikus és a véletlenszerű

Részletesebben

Nemlineáris optimalizálás

Nemlineáris optimalizálás Nemlineáris optimalizálás Rapcsák Tamás 2005. Előszó A Nemlineáris optimalizálás című anyag a gazdaságmatematikai elemző közgazdász hallgatók számára készült és egyrészt a matematikai alapozó kurzusokra

Részletesebben

valós számot tartalmaz, mert az ilyen részhalmazon nem azonosság.

valós számot tartalmaz, mert az ilyen részhalmazon nem azonosság. 2. Közönséges differenciálegyenlet megoldása, megoldhatósága Definíció: Az y függvényt a valós számok H halmazán a közönséges differenciálegyenlet megoldásának nevezzük, ha az y = y(x) helyettesítést elvégezve

Részletesebben

Függvények határértéke, folytonossága

Függvények határértéke, folytonossága Függvények határértéke, folytonossága 25. február 22.. Alapfeladatok. Feladat: Határozzuk meg az f() = 23 4 5 3 + 9 a végtelenben és a mínusz végtelenben! függvény határértékét Megoldás: Vizsgáljuk el

Részletesebben

II. Két speciális Fibonacci sorozat, szinguláris elemek, természetes indexelés

II. Két speciális Fibonacci sorozat, szinguláris elemek, természetes indexelés II. Két speciális Fibonacci sorozat, szinguláris elemek, természetes indexelés Nagyon könnyen megfigyelhetjük, hogy akármilyen két számmal elindítunk egy Fibonacci sorozatot, a sorozat egymást követő tagjainak

Részletesebben

Regresszió. Csorba János. Nagyméretű adathalmazok kezelése március 31.

Regresszió. Csorba János. Nagyméretű adathalmazok kezelése március 31. Regresszió Csorba János Nagyméretű adathalmazok kezelése 2010. március 31. A feladat X magyarázó attribútumok halmaza Y magyarázandó attribútumok) Kérdés: f : X -> Y a kapcsolat pár tanítópontban ismert

Részletesebben

MATEMATIKA ÉRETTSÉGI TÍPUSFELADATOK MEGOLDÁSAI KÖZÉP SZINT Függvények

MATEMATIKA ÉRETTSÉGI TÍPUSFELADATOK MEGOLDÁSAI KÖZÉP SZINT Függvények MATEMATIKA ÉRETTSÉGI TÍPUSFELADATOK MEGOLDÁSAI KÖZÉP SZINT Függvények A szürkített hátterű feladatrészek nem tartoznak az érintett témakörhöz, azonban szolgálhatnak fontos információval az érintett feladatrészek

Részletesebben

n n (n n ), lim ln(2 + 3e x ) x 3 + 2x 2e x e x + 1, sin x 1 cos x, lim e x2 1 + x 2 lim sin x 1 )

n n (n n ), lim ln(2 + 3e x ) x 3 + 2x 2e x e x + 1, sin x 1 cos x, lim e x2 1 + x 2 lim sin x 1 ) Matek szigorlat Komplex számok Sorozat határérték., a legnagyobb taggal egyszerűsítünk n n 3 3n 2 + 2 3n 2 n n + 2 25 n 3 9 n 2 + + 3) 2n 8 n 3 2n 3,, n n5 + n 2 n 2 5 2n + 2 3n 2) n+ 2. e-ados: + a )

Részletesebben

Oktatási Hivatal. 1 pont. A feltételek alapján felírhatók az. összevonás után az. 1 pont

Oktatási Hivatal. 1 pont. A feltételek alapján felírhatók az. összevonás után az. 1 pont Oktatási Hivatal Öt pozitív egész szám egy számtani sorozat első öt eleme A sorozatnak a különbsége prímszám Tudjuk hogy az első négy szám köbének összege megegyezik az ezen öt tag közül vett páros sorszámú

Részletesebben

Matematika (mesterképzés)

Matematika (mesterképzés) Matematika (mesterképzés) Környezet- és Településmérnököknek Debreceni Egyetem Műszaki Kar, Műszaki Alaptárgyi Tanszék Vinczéné Varga A. Környezet- és Településmérnököknek 2016/2017/I 1 / 29 Lineáris tér,

Részletesebben