Magas szintű logikai szintézis Dekompozíciós eljárás Súlyozott Normalizált vágás algoritmussal

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

Download "Magas szintű logikai szintézis Dekompozíciós eljárás Súlyozott Normalizált vágás algoritmussal"

Átírás

1 Budapesti Műszaki és Gazdaságtudományi Egyetem Villamosmérnöki és Informatikai Kar Irányítástechnikai és Informatika Tanszék Markovits Tibor Gergely Magas szintű logikai szintézis Dekompozíciós eljárás Súlyozott Normalizált vágás algoritmussal Témavezető: Dr. Arató Péter Rácz György

2 1 Bevezetés A multiprocesszoros rendszerek az elmúlt évtizedben egyre fontosabb szerepet kaptak a digitális célrendszerek terén. A bonyolultabb feladatok nagyobb számítási kapacitást igényelnek, ugyanakkor a nagyobb és komplexebb rendszerek esetében a megvalósítás nem feltétlen egyértelmű, a követelmények gyakorta megnehezítik a tervezés menetét. Követelményként beszélhetünk például az anyagi költségekről, sebességről, pipeline működésről, párhuzamosíthatóságról, stb. A követelmények egymástól is függnek, hiszen például ha az anyagi keretek lehetővé teszik, rendszerünket megvalósíthatjuk egy vagy több nagyteljesítményű processzorral, tekintet nélkül arra, hogy hogyan használjuk ki, illetve mekkora adatcsomagokat továbbítanak egymás között, és milyen módon. A rendszerszintű logikai szintézis (továbbiakban SLS) során arra törekszünk, hogy a lehető legjobban használjuk ki a rendelkezésre álló erőforrásokat, tehát hatásfokuk kimagasló legyen. Az elmúlt 20 évben a processzorgyártó cégek nagy energiát fordítottak a műveletvégző egységek számítási kapacitásának megsokszorozására. Erre több lehetőség is adódik. A legkézenfekvőbb megoldás a processzor órajelének növelése, azonban ez erősen függ a technológiától, amely gátat szab a frekvencia növelésének. Számba vehetjük a belső részegységek (pl. magok), vagy magának az egész processzor többszörözésének lehetőségét. Ez a megoldás ugyan költséges, azonban segíthet a fent leírt követelmények betartásában, abban az esetben, ha megfelelő SLS algoritmussal osztjuk szét és ütemezzük a feladatokat. Létrehozhatunk vagy többszörözhetünk speciális, belső műveletvégző egységeket, melyek ugyan egyetlen feladatot képesek elvégezni, de azt nagy hatékonysággal. Ilyen művelet lehet például az FFT (Fast Fourier Transform) vagy a konvolúció. A fentiek alapján kijelenthetjük, hogy a feladat-specifikus rendszerek esetében figyelembe kell venni az előre meghatározott, időigényes feladatokat. Az ilyen típusú számításokat egy általános célú CPU-nál sokkal hatékonyabban tudják elvégezni a digitális jelfeldolgozó egységek (DSP-k), GPU-k és FPGA-k. Ezeket a komponens processzorokat feladat-specifikus multiprocesszoros rendszerek esetén érdemes összekombinálni a hagyományos, általános célú CPU-kkal, vagy mikrokontrollerekkel. Az ilyen heterogén architektúrákat hívjuk Heterogen Multiprocessing Systems-nek (továbbiakban HMS-nek). 1.1 Heterogén multiprocesszoros rendszerek A rendszertervezés során tehát figyelembe kell vennünk a feladatok típusait. Fontos ügyelni arra is, hogy ezeket a feladatokat milyen komponens processzorokkal valósítjuk meg. Szignifikáns jellemzőjük a relatív hatékonyságuk (pl. számítási kapacitás, fogyasztás), illetve flexibilitásuk. A flexibilitás jellemzően a tárolt programú gépek tulajdonsága, amely lehetővé teszi könnyen változtatható programok futtatását. Beláthatjuk azonban, hogy a feldolgozó egységek flexibilitása a hatékonyság rovására megy. Minél flexibilisebb egy processzor, annál kevésbé lesz hatékony a feladat-specifikus rendszerek esetében. (1. ábra) Az ASIC-eket, (Application-Specific Integrated Circuit), mint nevéből is kiderül, alkalmazás-orinetált, egyedi feladatokra fejlesztik ki. Hatékonyságuk kimagasló, azonban rendszertervezés során ezeket az építőelemeket gyártási költségeik miatt nagyon ritkán használják fel. A következő feldolgozó egység típus az ASSP (Application-Specific Standard Product), amelyek már nem egy egyedi, hanem széles körben elterjedt feladatot valósítanak meg (pl. videó konvertálás), ezért előállításuk jóval olcsóbb, és megtalálhatók a piacon. Nagyobb rendszerek esetén kifejezetten érdemes használni, hiszen egy ASSP komoly tehermentesítést jelenthet a CPU-k, DSP-k, vagy GPU-k számára. Az FPGA-k (Field Programmable Gate Array) jóval nagyobb mozgási teret adnak a felhasználónak, mint a 1

3 Hatékonyság ASIC ASSP FPGA DSP CPU instr. set CPU, µc Flexibilitás 1. ábra: Feldolgozóegységek hatékonysága a flexibilitás függvényében korábban említett ASIC és ASSP feldolgozó egységek. Változatos méretük viszonylagosan olcsó megvalósítást tesz lehetővé. Az FPGA-k ma már lehetőséget adnak arra, hogy a huzalozott logika mellett létrehozzunk chipen belül lágyprocesszorokat, ún. Soft Core-okat. Ezáltal nem csak a CPU-t tehermentesítheti, hanem át is vállalhat bizonyos feladatokat annak érdekében, hogy a processzorok közötti adatkommunikáció minimálisra csökkenjen. Az előbb megismertekhez nagyon hasonlóak a DSP-k, azzal a különbséggel, hogy ezeknek előre meghatározott belső műveletvégző egységeik, és Harvard architektúrájuk van. HMS esetében manapság egyre többet használják, mivel rendkívül hatékony, ugyanakkor áruk évről évre csökken. Ezt követik azok az általános célú CPU-k, amelyek kibővített utasításkészlettel rendelkeznek, tipikusan ilyenek az asztali PC-k processzorai. Ez a típusú processzor a legkevésbé alkalmazás-specifikus, nem tartalmaz periféria áramköröket, és nehéz beleintegrálni a rendszerbe, ezért használatuk egyáltalán nem jellemző HMS rendszerek esetében. A leginkább flexibilis feldolgozó egységek maradtak a végére; ezek az általános célú CPU-k és a mikrokontrollerek. Architektúrájuk lehetővé teszi különféle programok és bonyolultabb számítási műveletek végrehajtását is, ugyan jóval kisebb hatékonysággal, mint a korábban megismert komponens processzorok. 1.2 Rendszerszintű tervezés heterogén multiprocesszoros rendszerek esetén A rendszerszintű tervezés akkor eredményes, ha az előbb felsorolt eszközök közül ki tudjuk választani azokat, amik az elvégzendő feladatok számára a leghatékonyabbak, és ezeket egyetlen rendszerbe bele tudjuk helyezni, effektív kommunikációt kialakítva egymást között. Szemléltetve a fenti kijelentést, vegyünk példának egy bonyolultabb matematikai műveletet, a konvolúciót. A konvolúció megvalósítása lehetséges általános célú CPU segítségével is, de igazán hatékonyak akkor vagyunk, ha ezt DSP-vel oldjuk meg, ami akár több, mint egy nagyságrenddel gyorsabb műveletvégzést biztosít, processzortípustól függően. Ezen túl kihasználhatjuk a DSP magját arra, hogy átvállaljon bizonyos számítási műveleteket a hozzá kapcsolódó és az adatokat szolgáltató általános célú CPU-tól, aminek segítségével a 2

4 processzorok közötti kommunikáció csökkenhet. Így időt és számítási teljesítményt spórolhatunk meg, ami a Real-Time HMS rendszerek esetében rendkívül fontos. A dekompozíciós eljárás során érdemes úgy felosztani a feladatokat, hogy az azonos típusú műveletvégző eszközökkel elvégzendő számítások egy szegmensbe kerüljenek. Ezáltal csökkentjük a különböző felesleges komponens processzorok darabszámát, és csak azokat a műveleteket végeztetjük el velük, amik feltétlen szükségesek. Így spórolhatunk az anyagi költségeken, mivel általánosságban elmondható, hogy a legolcsóbb erőforrások az általános célú CPU-k és mikrokontrollerek, ezért a rendszertervezést mindig ezekkel a processzorokkal kezdjük. A tanulmányban tárgyalt dekompozíciós algoritmus nem veszi figyelembe a feladat típusát, így nem tudja a számításigényes, speciális műveleteket egy csoportba tenni. Erre a problémára többféle megoldás is adódik, későbbiekben ezekre még visszatérünk. 2 A rendszer szintű szintézis lépései HMS esetében Először célszerű megvizsgálni a rendszerszintű szintézis követelményeit és főbb lépéseit az általánosított rendszertervezési szempontok szerint, mivel az SLS algoritmus nem csak és kizárólag heterogén multiprocesszoros rendszerek tervezésére alkalmas; érdemes magasabb absztrakciós szintről indulni. A későbbiekben ezt átültetjük a jelen tanulmány által tárgyalt SLS algoritmusra és annak lépéseire. 2.1 A rendszerszintű szintézis alapkövetelményei és általános lépései Rendszertervezés során az egymást befolyásoló döntések nem mindig láthatók előre, az SLS algoritmusa nem tud minden körülményt figyelembe venni a kialakuló rendszer tulajdonságaira vonatkozóan. Ezáltal nincs lehetőséget determinisztikus algoritmusok kifejlesztésére, ezért a jelenlegi rendszerszintű tervezés nagy részben intuitív jelleggel, próbálgatással történik. Létezik ugyan több olyan magas szintű logikai szintézer eszköz (HLS Tool), amely próbálja ezeket a problémákat kiküszöbölni és elfogadható megoldást találni. Az SLS első lépése a probléma megfogalmazása, mely feladattól függően sokféle lehet. A leggyakoribb a HMS rendszerek esetében egy adott programnyelven leírt forráskód, de kiindulhatunk pszeudokódból, vagy akár magából a folyamatgráfból is. A legfontosabb, hogy a feladatokat, és a feladatokat összekötő kapcsolatokat definiáljuk. Továbbá bemeneti paraméterként szolgálnak a tervező által megadott követelmények is (2. ábra). A bemeneti paraméterek megadása után az SLS algoritmus először a dekompozíciót hajtja végre a felhasználó által megadott irányelvek szerint, majd a HLS tervező eszköz beütemezi, és kiosztja az egyes műveletvégrehajtó egységek számára a feladatokat. Pipeline működés esetén elvégzi az újraindítási idő beállítását. Eredménykényt megkapjuk, hogy mely feladatokat milyen műveletvégző egységekkel kell megoldani, valamint hogy milyen kommunikációs költségekkel kell számolni az implementálás során. Beláthatjuk, hogy a fent leírt algoritmust kis módosításokkal de szinte bármilyen feladatfelosztást és ütemezést igénylő feladatra lehet alkalmazni. 3

5 A rendszer által megoldandó feladat leírásának fogadása A tervező által megadandó követelmények A komponens processzorokra vonatkozóan számuk kapacitásuk minimális kitöltöttségük (energiafelhasználás) áruk párhuzamos feldolgozásra való alkalmasságuk utasítás-végrehajtási időik Pipeline működés szükségessége A kívánt újraindítási idő A rendszer felépítésére vonatkozóan a következők priorításának megállapítása: Kommunikációs teher Feladatok egyenletes felosztása Dekompozíció HLS tervező eszköz Eredmények Komponens processzorok (számuk, fajtájuk) A feladatok hozzárendelése az egyes komponens processzorokhoz Kommunikációs feladatok leírása 2. ábra: A rendszerszintű szintézis általános lépései és követelményei 4

6 2.2 A rendszerszintű szintézis lépései HMS rendszerek esetében A 2.1-es fejezetben felvázoltuk a rendszerszintű szintézis alapkövetelményeit és általános lépéseit, most ültessük át a gondolatmenetet és vizsgáljuk meg a rendszerszintű szintézis lépéseit HMS rendszerek esetére. Három fő lépést tudunk elkülöníteni (3. ábra): A probléma megfogalmazását itt is magával a feladat leírásával kezdjük, mely feladat általában egy magas szintű nyelven (pl. C, Java) leírt program, ez a felhasználó által relatív könnyen érthető. Feladatleírás C, Java, stb nyelven A gráf előállítása Dekompozíció Ütemezés Allokáció Eredmény SLS algoritmus 3. ábra: A rendszerszintű szintézis lépései Ennek ellenére a bemenetet képezhetik sokkal komplikáltabb nyelvek, mint például az alacsony szintű programozási nyelvek (Assembly), vagy a nagyon magas szintű programozási nyelvek (pl. Python, JavaScript, vagy a kereskedelmi szoftverek nyelvei). Tekintettel arra, hogy egy C programot is a fordító egyfajta Assembly nyelvre fordít le, illetve a magasabb szintű programozási nyelveket is előszeretettel vezetik vissza ismertebb magas szintű nyelvekre, az algoritmusnak bizonyos kiegészítésekkel nem jelenthet problémát bármely szintű nyelven írt program SLS szintézise A folyamatgráf előállítása Az első lépés a folyamatgráf előállítása. A folyamatgráfok segítségével a multiprocesszoros feladatok reprezentálhatók. A gráf pontjai jelképezik a folyamatban elvégzendő feladatokat, a hozzá tartozó súlyok pedig meghatározzák a feladatok komplexitását, ami különböző műveletvégző egységek esetén különböző számítási időt jelent. A gráf élei a feladatok közötti adatkommunikációt jelöli. Az élekhez tartozó súlyok értékét a kommunikációban résztvevő adatok mérete határozza meg; minél nagyobb az átküldendő adat, annál több időt vesz igénybe az átküldése. Azok között a feladatok között, ahol nem történik adatkommunikáció, szintén feljegyezhetjük, és behúzhatunk közéjük éleket, melyeknek súlya zérus. Ez rengeteg kérdést vet fel, melyeket a jelen tanulmány nem tárgyal. Azonban ahhoz, hogy a szintézis következő lépéseit jobb hatásfokkal lehessen elvégezni, néhány dolgot meg kell fontolni. Általánosságban elmondható, hogy a dekompozíciós algoritmusok nem tudják feldolgozni a hurkokat. A hurkok több szempontból osztályozhatók, és megoldásuk is számos lehet [2]. Azonban rengeteg probléma megoldása során elő szoktak kerülni, tipikusan például szabályzási körök esetén, ezért ezeket a folyamatgráf előállítása során célszerű elkerülni. A folyamatgráf előállítása közben olyan információk birtokába juthatunk, amelyek a későbbi lépések folyamán még hasznosnak bizonyulhatnak, ezeket érdemes a feldolgozás során egy külső fájlba elmenteni. Olyan információkra gondolunk, mint például a feltételvizsgálatok 5

7 default ágának megállapítása, egyes ciklusok futási idejének megbecslése vagy a számításigényes feladatok kiszűrése. A folyamatgráfok előállításával a tanulmány következő részeiben nem foglalkozunk, a továbbiakban feltételezzük, hogy a gráf már rendelkezésre áll a dekompozíciós algoritmus számára Dekompozíció Az SLS algoritmus második lépése a dekompozíció. A dekompozíció során a gráf pontjait felosztjuk kettő vagy több csoportra, mely csoportok műveleteit az egyes CPU-k fogják elvégezni. A dekompozíció legfontosabb bemeneti paramétere maga a gráf, melyet az előző lépésből kaptunk. Ezen kívül a felhasználónak lehetősége van megadni bizonyos feltételek prioritási sorrendjét. Sokféle dekompozíciós algoritmus létezik[7-11], melyeknek a legkülönfélébb céljuk van. Nem mindegyik algoritmusnak ugyanaz a feladata, ezáltal a gráf kivételével a bemeneti paraméterek is különbözőek lehetnek. Nyilvánvaló, hogy a legjobb megoldás relatív fogalom. Egy rugalmas dekompozíciós algoritmus lehetőséget ad arra a felhasználónak, hogy eldöntse melyik feltétel fontosabb. A jelen tanulmány dekompozíciós algoritmusának célja a feladatok egyenletes eloszlása, valamint a kommunikáció minimalizálása közötti egyensúly megtalálása. Továbbá lehetőségünk van meghatározni az egyes szegmensek számát. A dekompozíciós algoritmus kimeneteként megkapjuk, hogy az egyes számítási műveleteket melyik processzornak kell elvégeznie ahhoz, hogy a felhasználó kívánsága szerinti prioritás teljesüljön Ütemezés és allokáció Az ütemezés feladata a dekompozíció által meghatározott szegmensek által kijelölt részfeladatok kezdeti időpontjának meghatározása úgy, hogy elvégzésükhöz lehetőség szerint minél kevesebb műveletvégző egységre legyen szükség, ugyanakkor betartsuk az előírt időzítéseket, például a lappangási, vagy újraindítási időt. Az allokáció célja pedig, hogy a beütemezett részműveleteket konkrét feldolgozóegységekhez rendelje. 6

8 3 A dekompozíciós algoritmus felépítése A tanulmány következő fejezetei a dekompozíciós algoritmussal foglalkoznak. Szeretnénk egy új eljárást bemutatni a folyamatgráfok partícionálására, amely rugalmas a felhasználó által előre meghatározott priorítások tekintetében. Az eljárás egy korábbi dekompozíciós algoritmuson alapul, melyet Normalizált vágásnak hívnak. A Normalizált vágást minimalizálási elve és rendszerleírása alapján választottam ki az új dekompozíciós algoritmus kiindulópontjaként. A minimalizálási elv a Rayleigh hányadoson alapul, a rendszerleírás pedig a Laplace mátrix szerint történik, amely a minimalizálandó függvény zárt alakját biztosítja. Az eljárásnak köszönhetően, a régi algoritmus gondolatmenetére egy teljesen újat ültetve megkaphatjuk az SLS szintézishez szükséges, a Normalizált vágás után elnevezett Súlyozott Normalizált vágást. Az új algoritmus három fejezetben kerül bemutatásra: 1) Az eredeti dekompozíciós algoritmus A Normalizált vágás című fejezetben megismerhetjük azt az algoritmust, amelyből a fejlesztés során kiindultunk. Ez Jianbo Shi és Jitendra Malik, a Berkeley Egyetem kutatóinak a munkája [1], melyet képszegmentálásra használnak fel. (4. fejezet) 2) A módosított dekompozíciós algoritmus A Súlyozott Normalizált vágás című fejezetben kifejtjük az előzőben megismert algoritmus problémáit a HMS rendszerek esetén történő partícionálás szempontjából. Bemutatjuk az új algoritmusnak, a Súlyozott Normalizált vágásnak a lépéseit és levezetését, melyek a problémák korrigálására szolgálnak. (5. fejezet) 3) A csoportosító algoritmus A priorítási sorrendek érvényre jutása című fejezet a dekomponált rendszernek, a felhasználó által megadott egyes paraméterek szerinti csoportosítási lehetőségeit mutatja be. Ettől a funkciótól válik az algoritmus rugalmassá és sokoldalúvá. (6. fejezet) A dekompozíció első lépése a rendszer analizálása, melyet a 5. alfejezetben tárgyalunk, a második lépés pedig a csoportosítás, az analizált adatok alapján. A csoportosítás során a felhasználó több szempontot is megadhat az algoritmusnak, mely alapján különböző szegmensekre oszthatók. A jelen tanulmány csoportosító algoritmusa kétféle lehetőséget ad a felhasználónak; az egyik a szegmensek darabszámára vonatkozó paraméter meghatározása, a másik a feladatok egyenletes elosztása, valamint a kommunikáció minimalizálása közötti egyensúlyra vonatkozó paraméter. Ez biztosítja azt a rugalmasságot, amely lehetővé teszi a felhasználó számára, hogy a célok között rangsorolni tudjon. 4 Az eredeti dekompozíciós algoritmus A Normalizált vágás Egy G = (V, E) gráf pontjai két különálló csoportra bontható, A-ra, illetve B,-re, melyekre igaz, hogy A B = V és A B =. Ezt a kiválasztott élek elvételével érhetjük el. Feltételezve, hogy az egyes élek adatok kommunikációját reprezentálják előre meghatározott élsúllyal, az eltávolított élek súlyainak összege a két diszjunkt halmaz közötti teljes adatkommunikáció. Gráfelméleti nyelven ezt a vágásnak hívjuk: cut A, B = 2 4,5 6 w u, v. (1) 7

9 Könnyen beláthatjuk, hogy dekompozíciós szempontból akkor járunk jól, ha ennek a vágás értékének a minimalizálására törekszünk. Számos gráf partícionáló algoritmus létezik [6], amely Jobb vágás Mincut1 Mincut2 4. ábra: Olyan eset, ahol a minimális vágás rossz eredményt ad megtalálja a minimális vágást. Ugyanakkor több tudományos munka is beszámolt már arról, hogy a minimális vágás kritérium kedvez a gráf kisebb izolált pontjai számára. Ez nem meglepő, hiszen az imént definiált vágás (1) nem veszi figyelembe az egyes szegmensek élsúlyainak összegét, és egymáshoz viszonyított számukat. A 4. ábra egy ilyen szituációt mutat be. Feltételezve, hogy az élek súlya fordítottan arányos a pontok közötti távolsággal, láthatjuk, hogy a Mincut1 vagy a Mincut2 vágásra relatív kicsi értéket kapunk. Beláthatjuk, hogy bármelyik vágás a jobb térrészen elvégezve kisebb eredményt fog hozni, mint ha középen vágnánk két partícióra az ábrát. Annak érdekében, hogy cut A, B A, és B csoport közel azonos számú pontot tartalmazzon, és egyik csoportot se egyetlen izolált pont alkosson, új típusú disszociációs leírást vezetünk be a gráfok partícionálásának érdekében. Az élek összsúlyának minimalizálása helyett az élek súlyát vesszük az összes élsúly hányadosában. A terminológiában ezt hívják Normalizált vágásnak: Ncut A, B = cut A, B assoc A, V cut A, B assoc B, V, (2) ahol assoc A, V = w(u, t) D E,F G az összes kapcsolat az A csoport és a G gráf összes pontja között, és assoc(b, V) is hasonlóan definiálható. Az Ncut A, B bevezetésével A, és B csoporthoz tartozó élek súlyának összege közel azonos lesz, ez nem hoz létre izolált pontokat. A fenti példát tekintve a normalizált vágás értéke nagyobb lesz Mincut1 és Mincut2 esetében. Papadimitriou által bizonyított [3], hogy a normalizált vágás egy NP teljes probléma, még az egyszerűbb gráfok esetében is. Ugyanakkor megtapasztalhatjuk, hogy a gyakorlatban létezik olyan diszkrét közelítő megoldás, ami hatékonyan fel tudja osztani a folyamatgráfot két csoportra a normalizált vágás követelményének megfelelően. 4.1 A partíciók meghatározása Adott egy gráf V pontjainak két partíciója A és B, illetve legyen x egy N = dim x = V dimenziós jelzővektor, mely x L = 1, ha az i-edik pont az A csoporthoz tartozik, és 1, ha nem. Legyen d i = R w(i, j) azon élek súlyainak összege, melyek az i-edik pontból indulnak ki, és az összes többi pontba tartanak. Az x, illetve a d vektorok definíciójának ismeretében újra felírhatjuk az Ncut A, B normalizált vágást, mint: 8

10 Ncut A, B = = cut(a, B) assoc(a, V) cut(a, B) assoc(b, V) = xw XY,x Z [Y w LR x L x R xw XY d L xw [Y,x Z XY w LR x L x R. xw [Y d L (3) Legyen D egy N N-es diagonális mátrix, melynek az átlója rendre a d vektor elemeit tartalmazza, W pedig szintén egy N N-es szimmetrikus mátrix, melyre igaz, hogy W i, j = w LR, k = xw XY d L, (4) L d L és 1 legyen egy N 1-es vektor, melynek mindegyik eleme 1-et tartalmaz. Vezessünk be x L > 0 és x L < 0 esetén új jelzővektorokat. Könnyen beláthatjuk, hogy 1dx illetve 1fx jelzővektorok kiváltják a pontok két csoportba osztására szolgáló x e L és x R vektorokat, hiszen 1-et, illetve 1-et behelyettesítve 0-át kapunk, mely segít kiválasztani azokat az éleket és ezáltal pontokat, amelyek az egyik partíció részét fogják képezni. Az új jelzővektorok nevezőjét átrendezhetjük az egyenlet másik oldalára, mivel ez a minimalizálási problémát nem fogja befolyásolni, ugyanakkor egyszerűsíti az egyenletünket. Ezeknek ismeretében átírhatjuk az Ncut(x) függvényünket 4 Ncut(x) -re a következőképpen: ez tovább alakítható: 4 Ncut(x) = 1 x h (D W)(1 x) k(1 h D1) 4 Ncut x = xh D W x 1 h D W 1 k 1 k 1 h D1 A továbbiakban legyen α x = x h D W x, e, 1 x h (D W)(1 x) (1 k)(1 h, (5) D1) 2(1 2k)1h D W x k(1 k)(1 h. (6) D1) β x = 1 h D W x, (7) γ = 1 h D W 1, és M = 1 h D1. (8) 9

11 Ezekkel a behelyettesítésekkel élve tovább alakíthatjuk az egyenletet: = α x γ 2(1 2k)β(x) k(1 k)m α x γ 2 1 2k β x k 1 k M 2 α x γ M = 2α x M 2γ M. (9) Az utolsó értéket elhagyhatjuk, hiszen γ = 0, mivel a (D W) mátrix pozitív szemidefinit. Ezután a tagokat összevonva a következő kifejezést kapjuk: = (1 2k 2ke ) α x γ 2(1 2k)β(x) k(1 k)m (1 2k 2k e ) 2(1 2k) (1 k) e α x γ (1 k) e β(x) Legyen b = o, és mivel γ = 0, ezért: pfo k (1 k) M = (1 be ) α x γ 2(1 b e )β(x) bm 2α x M = 2α x M. 2bα x bm = = (1 be ) α x γ bm 2(1 be )β(x) bm 2bα x bm 2bγ bm. Az α(x), β(x), γ, és M kifejezéseket visszahelyettesítve: = 1 be (x h D W x 1 h D W 1) b1 h D1 2bxh D W x b1 h D1 = 1 x h (D W)(1 x) b(1 h D1) 2(1 be )1 h D W x b1 h D1 2b1h D W 1 b1 h D1 = be 1 x h (D W)(1 x) b(1 h D1) 2b 1 x h (D W)(1 x) b(1 h D1) = = 1 x b 1 x h (D W) 1 x b 1 x b(1 h D1). 10

12 Válasszunk x jelzővektor helyére egy új, y vektort: y = 1 x b(1 x). Fontoljuk meg, hogy ha y vektort használjuk a pontok csoportba rendezésére, akkor y h D1 = d L x W XY b x W [Y d L = 0, (10) mivel b = o pfo = xw rs d W xw ts d W, azaz az egyik csoportban szereplő élek számosságát ki lehet fejezni a másik csoportban lévő élek számosságának és b-nek szorzatával. Miután levezettük, hogy y h D1 = 0, lássuk be, hogy y h Dy = b1 h D1, hiszen mindent összevetve y h Dy = d L x W XY b e d L x W [Y = b d L b e d L x W [Y x W [Y = (11) = b d L b d L x W [Y x W [Y = b1 h D1. Ha az eredeti feladatot tekintjük, az Ncut(x) függvényt a fentiek alapján átírhatjuk a következő minimalizálási problémára: min Ncut x = min x y y h (D W)y y h Dy, (12) megfelelve a következő feltételeknek: y h D1 = 0 és y(i) 1, b, tehát az y jelzővektor az i-edik pontra vonatkozóan nem a diszkrét 1 vagy 1 értéket fogja adni. Erre a későbbiekben még visszatérünk. Az y vektor szerinti minimalizálási probléma már egy jó közelítéssel megoldható feladat. Vegyük észre, hogy a fenti kifejezés egy Rayleigh hányados [3]. Ha y R, akkor minimalizálhatjuk (12)-es egyenletet a generált sajátérték rendszer megoldásával, D W y = λdy. (13) Mindemellett két kényszerünk is van y-ra nézve, amelyek az x jelzővektor feltételeiből adódnak. Először is gondoljunk az y h D1 = 0 feltételre. Láthatjuk, hogy ez a feltétel automatikusan kielégül az generált sajátérték rendszer kiszámításával. Vegyük a (13)-as egyenletet, transzformáljuk át standard sajátérték rendszerre, és lássuk be, hogy az előbbi feltétel kielégül. A (13)-as egyenletet felírhatjuk a következőféleképpen: D fp e D W D fp ez = λz, (14) 11

13 ahol z = D z {y. Könnyedén ellenőrizhetjük, hogy z Y = D z {1 a 0-ás sajátértékhez tartozó sajátvektor, melyet az áttranszformált sajátérték rendszerből írtunk fel. Ezek alapján az első feltétel igaznak bizonyul, hiszen z Y = D z {1-t behelyettesítve a (14)-es egyenletbe a következőt kapjuk: D fp e D W D fp ed p e1 = λd p e1 D fp e D W 1 = λd p e1 (15) D W 1 = λd1. Továbbá tudjuk, hogy (D W), akárcsak D fz { D W D fz {, pozitív szemidefinit mátrixok. (D W) mátrixot másnéven Laplace mátrixnak is szokták nevezni. A Laplace mátrixban a sorok és az oszlopok összege 0, tehát ha a (15)-ös egyenlet alsó sorát tekintjük, beláthatjuk, hogy az egyenlet bal oldala ekvivalensen nullvektort eredményez, tehát D W 1 = 0, ami csak akkor lehet, ha az egyenlet jobb oldalán λ = 0. Ennélfogva z Y a legkisebb sajátértékhez, tehát a 0-hoz tartozó sajátvektora lesz a (14)-es egyenletből generált sajátérték rendszernek és az összes egyenlethez tartozó sajátvektor merőleges lesz egymásra. Feltételezve, hogy a sajátértékek szerint növekvő sorrendben számozzuk a sajátvektorokat, z p a második legkisebb sajátértékhez tartozó sajátvektor, amely merőleges z Y -ra. Ha az előbbi állításokat visszahelyettesítjük a (13)-as egyenletben szereplő generált sajátérték rendszerbe, a következőket kapjuk: 1) y Y = 1 a legkisebb sajátértékhez tartozó sajátvektor, és 2) z p h z Y = 0, behelyettesítve z = D z {y, illetve z Y = D z {1 kifejezéseket, láthatjuk, hogy y p h D1 = 0, ahol y p a második legkisebb sajátvektora a (13)-as egyenletnek. Tekintsünk meg egy egyszerű tényt a Rayleigh hányadossal kapcsolatban[3]: A fentieket figyelembe véve: Legyen A egy valós, szimmetrikus mátrix. Azzal a kikötéssel, hogy x ortogonális, tehát x p,, x Rfp vektorok merőlegesek egymásra, a hányados x Ax minimalizálható a következő legkisebb sajátvektorral, x x x R -vel, és a minimum értéke a hozzá tartozó sajátérték, λ R. z p = arg. min z z s ƒy z h D fp e D W D fp ez z h z, (16) és következetesen: y p = arg. min y D1ƒY y h (D W)y y h Dy. (17) 12

14 Így a generált sajátvektor rendszer második legkisebb sajátértékhez tartozó sajátvektora fogja adni a valós megoldást a normalizált vágás problémához. Azonban sajnos ez az algoritmus nem szolgálja ki teljes mértékben az eredeti problémánkat, mivel az y vektor egyes elemei nem a két diszkrét értéket veszik fel, hanem egy valós számot 1 és b között. Később látni fogjuk, hogy ez a módszer nem feltétlen hátrányos a dekompozíciós algoritmus számára, hiszen a folytonos egyenesen felvett valós értékek bizonyos rugalmasságot engednek meg a felhasználó számára. Az 6. fejezetben visszatérünk rá, hogy hogyan kell a második legkisebb sajátvektor adataiból előállítani a partícionálásra szolgáló diszkrét értékeket. 5 A módosított dekompozíciós algoritmus A Súlyozott Normalizált vágás 5.1 A normalizált vágás hibái Az előző fejezetben láthattuk, hogy bár a Normalizált vágás NP teljes probléma, egy jó közelítő algoritmussal meg tudjuk oldani a minimalizálási feladatot. Azonban ez az algoritmus nem ültethető át teljes egészében a gyakorlati alkalmazásba HMS rendszerek esetén, mert számos problémát tartalmaz, ami alkalmatlanná teszi a folyamatgráf dekompozíciójára. Shi és Malik a Normalizált vágás algoritmusát kép szegmentálás céljából fejlesztették ki, melyben a pixelek közötti színátmenetet a gráf egyes éleinek súlyával jelölik. A pontoknak önmagukban nincs tulajdonságuk, ezért a normalizált vágás egyenletében (Ncut(x)) nem szerepelnek szignifikáns tulajdonságaik szerint, csupán x L jelzővektorokban, melyek az egyenletben figyelembe vett élek kiválasztására szolgálnak. Azonban a multiprocesszoros rendszerek esetében a folyamatgráf pontjai tartalmazzák az egyes műveletek számítási igényeit, melyet v(i)-vel, a pontok súlyának értékeivel tudunk kifejezni. Ez többnyire megszabja a processzor műveletvégzési idejét, így ügyelnünk kell arra, hogy mennyi feladattal látjuk el az egyes komponens processzorokat. Olyan algoritmusra van szükség a folyamatgráf dekomponálásához, amely figyelembe veszi nem csak a vágás értékét és az egyes csoportban található élsúlyok összegének egyenlőségét, hanem azt is, hogy a két szegmensbe kerülő pontok összsúlya közel azonos legyen. Ezek alapján ha v(i) V, akkor: v(i) v i 5(L) 4 5 L 6 0, (18) feltéve, hogy A B =. Ez visszavezet a 4. fejezetben tárgyalt izolált pontok problémájához, hiszen beláthatjuk, hogy a (18)-as egyenlet, illetve a min Cut(A, B) egyidejű teljesülésével szintén garantálni tudjuk, hogy a vágás ne eredményezzen izolált pontokat. A Normalizált vágásnak ismerjük egy másik fontos problémáját, mely a komponens processzorokra vonatkozik. Az algoritmus nem tudja megkülönböztetni az egyes komponens processzorok típusát, mivel a különböző feladatok súlyát mi magunk, vagy éppen a folyamatgráf előállító algoritmus határozza meg, bizonyos megfontolások alapján. Nincs referencia arra vonatkozóan, hogy az egyes komponens processzorok az adott feladatokat mennyi idő alatt, és milyen hatékonysággal tudják elvégezni. Továbbá ha néhány feladat műveletvégző egységeit előre kijelöljük, akkor a gráf egyes pontjait rákényszerítjük egy 13

15 bizonyos szegmensbe tartozásra. Ez meggátolja az algoritmus működését, hiszen ellentmondhat a minimalizálási problémának, ezért a továbbiakban rendszerünket homogénnek tekintjük. A későbbiekben az ütemező HLS Tool-ok segítségével kiszűrhetők és beütemezhetők azok a feladatok, melyeket más komponens processzorok hatékonyabban oldanak meg. A következőkben bemutatott Súlyozott Normalizált vágás algoritmus csak a pontsúlyok egyenletes elosztásának problémáját tudja megoldani, heterogén rendszertervezés ezzel az algoritmussal polinom időben nem kivitelezhető. 5.2 A Súlyozott Normalizált vágás Elméleti megközelítés Modellezzük a problémát a 4. fejezetben már megismert ponthalmazzal. Adott egy G = (V, E) gráf, w LR E és legyen w LR d i, j, (19) ahol d(i, j) az i-edik és a j-edik pont közötti távolságot jelöli. Minél közelebb van egymáshoz két pont, az őket összekötő él súlya annál nagyobb. Beláthatjuk, hogy ha P L x, y és P R (x, y) pontot a végtelenségig közelítjük egymáshoz, távolságuk infinitezimálisan kicsi lesz, határértéke 0: lim W Z d(i, j) = 0, (20) a fordított arányosság miatt pedig: lim (L,R) Y w LR =. (21) A fentiek értelmében ha a P L pont tart P R -hez, w a -be divergál, ennek következtében az Ncut(x) algoritmus a pontokat azonos szegmensbe fogja besorolni, tehát P L, illetve P biztosan egy csoportba kerülnek, mivel a korábban tárgyalt generált sajátérték rendszer megoldása során (13) az x vektorban a hozzá tartozó értékük azonos lesz. Tételezzük fel, hogy P pont infinitezimálisan kicsi környezetében pontosan v i 1 darab pont helyezkedik el, tehát az eredeti pontot is számításba véve P L,5 L, P L,5 L fp, P L,5 L fe P L,e, P L,p, mely pontok mind kapcsolatban vannak egymással, és az őket összekötő élek súlyát w L,o = -nek tekintjük. Vegyük észre, hogy ezek a pontok egy K 5(L) teljes gráfot alkotnak, mely az előbbi P L,o pontokkal kibővített G gráf klikke, tehát: K 5 L V, E G V, E, (22) 14

16 mely valódi részgráf az eredeti gráf P pontját helyettesíti v i súlyt reprezentálva. Vizsgáljuk meg az eredeti G, az új G gráf és K 5(L) pontjai, valamint élei közötti kapcsolatot. Vegyük az alábbi ábrán látható egyszerű példát: P fp P P dp 5. ábra: Teljes gráf növesztése P pontra Láthatjuk, hogy P egyaránt szerepel a zöld színnel jelölt K 5(L) és az eredeti, fekete színnel jelölt G gráfban is, ahol súlyát E = v i = 5-re állítottuk be. Beláthatjuk, hogy E E = P L, tehát a két részgráf egyetlen közös pontja P, vagyis a Normalizált vágásban bevezetett x jelzővektorunk x(i)-edik pontjához kapcsolódó élek nem szűnnek meg, így azok továbbra is kijelölhetők maradnak. Lássuk be, hogy a G gráf minimális vágása sosem fogja tartalmazni V ž egyetlen elemét sem, hiszen ha V V =, V V Ÿ = V, (23) hiszen V és V diszjunkt halmazok, és akkor lim L R w LR WZ =, (24) min Cut(G, x) = min Cut(G, x). x x (25) A fentiek értelmében két kényszerünk is van arra nézve, hogy a minimális vágás nem fogja elvágni K 5 L teljes részgráfot. 1) V és V diszjunkt halmazok, ezért ha az eredeti G gráfhoz hozzávesszük a teljes gráfot, V halmaz elemei, és a rajtuk végzett minimális vágás sértetlen marad. 2) Ha a teljes részgráfot összekötő élek értékét közelítőleg -nek tekintjük, a minimalizáló algoritmus sohasem fogja őket kiválasztani, hiszen G gráf élei továbbra is rendelkezésre állnak az algoritmus számára, amely minimalizálásra törekszik. Azonban vegyük figyelembe, hogy egy gráf élsúlyának értéke a valóságban nem lehet, ami az előbb vizsgált 2. kényszernek mond ellent. A Súlyozott Normalizált vágás Gyakorlati megközelítés című alfejezetben bebizonyítjuk, hogy tudunk egy olyan felső becslést adni a klikk éleinek súlyára, amely minden esetben elegendő lesz ahhoz, hogy ne vágja el a teljes részgráfot. E mellett megoldást adunk az imént vizsgált élsúlyok pontok szerinti kezelésére, amely az egyenletes pontsúlyok alapján történő elosztást fogja biztosítani. 15

17 Ezen kívül számolnunk kell még egy fontos problémával. Vegyük észre, hogy a 4. fejezetben a vágás normalizálására az assoc(a, V), illetve az assoc(b, V) kifejezések szolgálnak, melynek definíciója assoc X, V = D,F G w(u, t). Ennek értelmében a (2)-es egyenlet minimalizálása nem a gráf pontjait osztja egyenletesen két részre, hanem arra ügyel, hogy az p p értéke minimális legyen. A feltétel az élsúlyok összegének egyenletes E,G ª,G eloszlását biztosítja, ami nem feltétlen egyezik meg a pontsúlyok egyenletes elosztásával, ezért más módon kell garantálni az pontsúlyok összegének egyenlőségét az egyes szegmensekben. A probléma megoldásával a következő fejezetben foglalkozunk. 5.3 A Súlyozott Normalizált vágás Gyakorlati megközelítés Egy G = (V, E) gráf pontjai két diszjunkt halmazra bontható A-ra, illetve B-re. A korábban megismert Ncut(A, B) analógiájára felírhatjuk az új, Súlyozott Normalizált vágást, (Weighted Normalized cut) WNcut(A, B): WNcut A, B = cut(a, B) assoc A, V sum(a) cut(a, B) assoc B, V sum(b), (26) ahol a cut A, B = 2 4,o 6w(u, k) -t jelöli, tehát a vágásban szereplő élek összsúlya, assoc A, V = D E,F G w(u, t) az összes kapcsolat az A csoport és a G gráf összes pontja között, sum A = L 4 v(i), vagyis az A csoportban szereplő pontsúlyok összege. Az assoc B, V és sum(b) kifejezéseket hasonlóképpen definiáljuk azzal a kivétellel, hogy nem az A, hanem a B csoportra vonatkoztatjuk őket. Idézzük fel a 4. fejezet elején bevezetett N = V dimenziós x jelzővektort, mely 1 vagy 1 diszkrét értékeket vesz fel a gráf pontjainak hovatartozása függvényében. Definiáltuk d i vektort, mint azon élek súlyainak összegét, melyek az i-edik pontból indulnak ki, és az összes többi pontba tartanak. A fentiek ismeretében a (3)-as egyenletet átírhatjuk a következő képpen: WNcut x = xw XY,x Z [Y w LR x L x R xw XY d L xw XY v L xw [Y,x Z XY w LR x L x R. (27) xw [Y d L xw [Y v L Legyen D a már korábban megismert N N-es diagonális mátrix, melynek az átlója rendre a d vektor elemeit tartalmazza, D pedig egy M M-es diagonális mátrix, ahol M = ± Lƒp v(i), (28) és átlója rendre d vektor elemeit tartalmazza. A d vektor d és d elemeit tartalmazza, mely d az i-edik pontra növesztett, K 5(L) klikk pontjaiból kiinduló élek súlyának összegeit tartalmazza: d L = w Ro. Z²,W (29) 16

18 Ennek analógiájára a W szintén egy N N-es szimmetrikus mátrix, mely a Normalizált vágás algoritmusából megismert G gráf szomszédossági mátrixa, és W i, j = w, tehát a gráf élsúlyait tartalmazza. W pedig legyen egy M M-es mátrix, mely tartalmazza az i-edik pontra növesztett, K 5(L) klikk éleit is, a d vektor szerinti sorrendben elhelyezkedve. Vegyük észre, hogy K 5(L) teljes gráf éleinek száma kölcsönösen egyértelműen függ = v i -től, vagyis a gráf pontjainak számától: E V = E E 1 2. (30) Lássuk be, hogy a kölcsönösen egyértelmű függvénykapcsolat következtében az eredeti G gráf pontsúlyait az egyes pontokra illesztett teljes gráf élei képesek reprezentálni. Azonban az összefüggés négyzetes, ezért minden egyes, a gráfban szereplő klikk esetén, az őket összekötő élek száma csoportonként összeszámolva azt eredményezné, hogy a pontok nem lennének egyenlően elosztva. Ezt korrigálni tudjuk, ha a G-ben szereplő klikkek élsúlyát nem konstansnak tekintjük, hanem külön-külön értéket adunk nekik: w Ro, žw = 2 E,L 1 w L, (31) ahol w L az a minimális élsúly, amely mellett az algoritmus nem fogja elvágni a klikk éleit. A fenti egyenlet alapján pedig v i = w Ro, žw. WZ,W (32) e A fentiek értelmében ha D és W mátrixban a klikkek éleinek súlyát kicseréljük w fp L - re, ekkor a pontok súlyát a pontok helyére helyettesített részgráf éleinek összsúlya fogja reprezentálni. A klikkek alkalmazása és az élsúlyok korrigálása után a 4 Ncut(x) függvényt: 4 Ncut(x) = 1 x h (D W )(1 x ) k (1 h D 1 ) átírhatjuk 4 WNcut(x) -re a következőféleképpen: 4 WNcut(x) = 1 x h (D W)(1 x) k(1 h D1) 1 x h (D W )(1 x ) (1 k )(1 h, (33) D 1 ) 1 x h (D W)(1 x) (1 k)(1 h. (34) D1) Az új függvényben k = xw rs d W d W W, és 1 legyen egy M 1-es vektor. Az x jelzővektor új dimenziója dim x = M. A korábban már megismert (19)-es egyenlet feltételei a gyakorlati megvalósítás során sérülnek, hiszen nem választhatunk élsúlynak -t. Azonban létezik olyan módszer, amivel felső becslést adhatunk arra nézve, hogy mekkorának kell lennie a klikk élsúlyainak, annak 17

19 érdekében, hogy min x Cut(G, x) = min x Cut(G, x) igaz maradjon. A definícióból adott, hogy D mátrix az egyes pontokhoz tartozó élek összsúlyait tartalmazza. Beláthatjuk, hogy ha a gráfban található összes él súlyát összeadjuk, akkor még legkedvezőtlenebb esetben is: tr D 1 x h (D W )(1 x), (35) tehát a D mátrix trace-e biztosan nagyobb lesz, mint a vágás értéke a lehető legrosszabb esetben, amikor az összes él szerepel a vágásban. Ennél fogva ha a klikk száma kisebb, mint az eredeti G gráf minimális vágása, és a klikk éleinek tr D -t választjuk, a minimális vágás ez esetben sem fogja tartalmazni V elemeit. Az 5.2 fejezetben szereplő 1. kényszer, illetve az előbb tett becslés alapján a minimális vágás nem fogja tartalmazni W W halmaz elemeit, ezáltal a klikkek éleinek nincsen hatása a kibővített G gráfra. Most lássuk be, hogy a Normalizált vágás sem fogja megváltoztatni G gráf minimális vágását. Legyen: Θ x = 1 x T D W 1 x, (36) ahol a Θ x függvény valamely x vektor által kijelölt vágás értékét jelenti. Továbbá ha definiáljuk: φ x = k = xw XY d L, (37) L d L akkor a (28) egyenletből felírhatunk egy egyenlőtlenséget (34). Az alábbi egyenlőtlenségben vizsgáljunk meg két esetet, melyben két különböző felosztás szerint analizálunk. Az x p jelzővektort tartalmazó esetben a vágás nem tartalmazza egyetlen klikk élét sem, x 2 esetében pedig a vágást úgy jelöltük ki, hogy az egyik klikk valamely élét elvágja. Igazoljuk, hogy optimális esetben egy klikk éleit is tartalmazó vágás értéke soha nem lehet kisebb, mint ha a vágás egyetlen klikk élét sem tartalmazza, vagyis a Rayleigh hányados felírásával generált sajátérték rendszer minimalizálása után az algoritmus a bal oldali esetet fogja adni: Θ x p tr D φ x p Θ x p tr D (1 φ x p ) < Θ x e tr D φ x e Θ x e tr D (1 φ x e ) Θ x p tr D φ x p (1 φ x p ) < Θ x 2 tr D φ x 2 (1 φ x 2 ). (38) Mivel tr D R d, ezért azt kiejthetjük az egyenlőtlenségből, ezzel is igazolva, hogy a minimális vágás értéke nem függ a kibővített gráf klikkjeitől. Továbbá felhasználjuk azt a tényt, hogy φ x (1 φ x ) Θ x R d : Θ x p φ x p (1 φ x p ) < Θ x 2 φ x 2 (1 φ x 2 ) (39) 18

20 Lássuk be, hogy x e vágás esetén Θ x 2 értéke minimum: Θ x 2 Θ x 1 tr D, (40) mivel a két vágás között az a különbség, hogy x e tartalmazza valamelyik klikk legalább egy élét, mely eredményeképpen x e vágás belevág a teljes részgráfba. Θ x p Θ x p tr D < φ x p (1 φ x p ) φ x 2 (1 φ x 2 ) (41) Ha x p -t és x e -t a lehető legrosszabbnak választjuk, vagyis majdnem összes élet kijelöljük velük, az egyenlőtlenség bal oldalán a lehető legnagyobb érték maximum 0,5 lehet, hiszen tr D Θ x, ezért a legkedvezőtlenebb esetben FÀ D FÀ D dfà D = 0,5. Ha a legkedvezőtlenebb esetet tekintjük, tehát mindkét jelzővektort csupa egyre állítjuk be, akkor az egyenlet jobb oldalán: φ x p (1 φ x p ) 1, (42) φ x 2 (1 φ x 2 ) ami nagyobb 0,5-nél. A minimalizáló algoritmus φ x 2 = (1 φ x 2 )-re fog törekedni, és ebben az esetben a nevezőben 0,25-öt található, akkor kiszámolható, hogy mekkora az a felosztási arány, aminél az egyenlőtlenség már nem lesz igaz. Számítások alapján a pontok 15% 85%-os felosztási aránynál rosszabb eredmények esetén nem fog teljesülni az egyenlőtlenség, mely a minimalizálási probléma miatt a gyakorlatban soha nem fog előfordulni, hiszen egyenlő felosztásra törekszünk. A fenti levezetésből láthatjuk, hogy w Ã Ä = tr D -re érdemes beállítani, azonban figyelembe kell vennünk a korábban tárgyalt teljes gráf pontjai és élei közötti összefüggést. Az egyes éleket úgy kell meghatározni, hogy a legkisebb pontszámú klikkhez tartozó élek súlyai tr D legyen. Ahhoz, hogy ez teljesüljön, a (26)-os egyenletben szereplő w L -t át kell írni w L (max v i 1) w L L -re, ezáltal biztosíthatjuk a fent leírt követelményeket. Ezek alapján az egyes klikkek élsúlyai a következőképpen határozhatók meg: w Ro, žw = 2 (max v i 1) tr D L E,L 1. (43) A kibővített gráf élsúlyainak ismeretében felírható D és W mátrixból, az új M dimenziós x jelzővektor segítségével a (28)-as egyenlet, mely a Normalizált vágással megegyező algoritmussal tovább alakítható b = o = ÇW rs W bevezetésével a következőre: pfo ÇW ts W WNcut(x) = 1 x b 1 x h (D W) 1 x b 1 x b(1 h D1). (44) 19

21 A 4. fejezetben megismert módszerek segítségével a fenti egyenlet átírható: WNcut y = yh D W y y h, (45) Dy y = 1 x b(1 x) helyettesítéssel. Az ebből generált sajátérték rendszert felírva és áttranszformálva standard sajátérték problémára, a következőket kapjuk: D fp e D W D fp ez = λz, (46) A korábban tárgyalt Rayleigh hányadossal kapcsolatos kritériumokat és állításokat alkalmazva a fenti egyenletre, megkaphatjuk a minimalizálás módszerét: z p = arg. min z z s ƒy z h D fp e D W D fp ez z h z, (47) és következetesen: y p = arg. min y D1ƒY y h (D W)y y h Dy. (48) Az eredeti, Normalizált vágás algoritmushoz hasonlóan, a generált sajátérték rendszer második legkisebb sajátértékéhez tartozó sajátvektor fogja megadni a megoldás kulcsát. Azonban, ahogy azt már a Normalizált vágásnál láthattuk, a Súlyozott Normalizált vágásnál sem ad y p vektor diszkrét megoldást, hanem a priorítások függvényében ki lehet választani több realizációt is a probléma megoldására. Összefoglalva a Súlyozott Normalizált vágást minden olyan gráf partícionálására ajánljuk, melyek pontsúlyokat is tartalmaznak, továbbá elsődleges célpontok között szerepel a vágás minimalizálása, valamint a pontok súlyuk szerinti egyenlő eloszlása. 6 A csoportosító algoritmus A priorítási sorrendek érvényre jutása Ebben a fejezetben megismerhetjük azokat a módszereket, amely az előző részben kapott y sajátvektorból diszkrét megoldást ad a folyamatgráf partícionálására, a felhasználó által megadott priorításoktól függően. A Súlyozott Normalizált vágás használatát feltételezve a felhasználó az SLS algoritmus bemeneti paramétereként megadhatja a gráf partícióinak a számát, illetve azt, hogy mit preferál jobban; a vágás minimális értékét, vagy a pontsúlyok teljesen egyenletes eloszlását. Az egyes komponens processzorok által megvalósított partíciók számának meghatározása független y sajátvektortól, ezért ezzel a feltétellel külön fogunk foglalkozni a későbbiekben. A további bemeneti paramétereket (pl.: a processzorok kapacitása, áruk, utasítás-végrehajtási idejüket, 20

22 párhuzamos feldolgozásra való alkalmasságukat) a csoportosító algoritmus nem tudja figyelembe venni. A diszkrét megoldástól függően a pipeline működés szükségességét és a beállítások elvégzését a HLS Tool állapítja meg, mely az SLS algoritmus utolsó lépése. A következő eljárás a bemutatja, hogy hogyan állapítsunk meg diszkrét megoldást a felhasználó által megadott paraméterből, mely azt hivatott jelölni, hogy mire törekedjünk jobban: a processzorok közötti adatkommunikáció, vagyis a vágás értékének minimalizálására, vagy a feladatok processzoronkénti teljesen egyenletes elosztásra, mely a tervező által megadott követelmények közül a minimális kitöltöttségre van hatással. 6.1 Minimális kommunikációs teher versus egyenletes feladatelosztás Beláthatjuk, hogy a kommunikációs teher minimalizálása, vagyis a vágás értékének minimalizálása és a feladatok feldolgozóegységek közötti egyenletes feladatmegosztás az esetek nagy többségében nem teljesülhet egyidejűleg. Ezért meg kell adnunk a csoportosító algoritmusnak egy vezérelvet, ami az y sajátvektorban található értékek alapján megállapítja, hogy az egyes pontok melyik szegmensbe tartoznak. Két fő elvet ismerünk a pontok csoportokba osztására: 1) Az y(i) vektor elemeiből képzett számtani közép alkalmazása, mint választópont. Ennek értelmében ha y(i) > 1 dim (y) É Ã (Ê) ƒp y(i) akkor különben P L A P L B (49) tehát ha y vektor i-edik eleme nagyobb, mint a vektorból képzett számtani közép, akkor az A csoportba tartozik, ha pedig kisebb, akkor B csoportba. Egyenlőség esetén a tervező maga dönthet a pont hovatartozásáról a vágás értéke és a pontok eloszlásának függvényében. Az így definiált választópontot a továbbiakban mean(y)-al jelöljük. 2) Ha a gráfot két teljesen egyenlő részre akarjuk osztani, akkor y elemeinek csoportba rendezéséhez a legjobb módszer a vektor alkotta adatsokaság mediánját alkalmazni választópontként. Az y vektor mediánját a továbbiakban median(y)-al jelöljük. Mediánnal történő csoportosítás esetén, ha y(i) > median(y) akkor P L A különben P L B (50) Beláthatjuk, hogy a második módszer választása egy erőltetett megoldást eredményez, hiszen a medián mindenképpen teljesen egyenletes feladatelosztást eredményez, amiből következik, hogy a gráf pontsúlyait reprezentáló klikkeket is elvághatja. Ennek kiküszöbölése érdekében ha a módszer elvágja a gráf egyik klikkjét, y vektor következő legkisebb, vagy legnagyobb értékét kell venni választópontnak, attól függően, hogy mean(y) kisebb vagy nagyobb median(y)-nál. Az első módszer választása szemben a második módszerrel a vágás értékét minimalizálja úgy, hogy közben ügyel a pontok lehető legegyenletesebb elosztására. Ez a módszer nem fogja elvágni a klikkek éleit, melyet az 5. fejezetben bizonyítottunk. 21

23 A sorba rendezett y vektor elemeit egy számegyenesre illeszthetve bejelölhetjük rajta mean(y)-t és median(y) értékét. Beláthatjuk, hogy e között a két érték között mozogva, a második módszert választjuk alapul és median(y)-tól indulva mean(y)-hez tartva, minél közelebb érünk hozzá, annál jobban érvényesül a minimális vágási érték. Megfordítva ugyanúgy igaz, hogy ha az első módszert vesszük alapul, mean(y)-től indulva median(y) felé haladva egyre jobban fog érvényesülni a pontok egyenletes eloszlása. Ez alapján definiálhatunk egy arányszámot, mely kifejezi, hogy melyik feltétel priorítása fontosabb számunka, az első, vagy a második: prior(y, p) = p mean y median(y) min mean y, median(y) (51) A fenti egyenlet prior(y, p) értéke fogja adni a felhasználó által kívánt választópontot, ahol (0 p 1) és p R kifejezi, hogy melyik feltétel érvényesülését szeretnénk jobban. 6.2 Folyamatgráf felosztása több partícióra Az eddig tárgyalt gráfokat mindig két részre osztottuk, azonban előfordulhat, hogy a folyamat felosztását a három, vagy több partíció tudná hatékonyan kiszolgálni. Erre két féle megoldást is létezik, melyeket röviden bemutatunk: 1) Rekurzív kétutas Súlyozott Normalizált vágás: A rekurzív Súlyozott Normalizált vágás algoritmus lépései összefoglalva: 1. Adott egy súlyozott G gráf, melyből a Súlyozott Normalizált vágás lépései szerint felírható W és D mátrixok. 2. Megoldjuk a D W y = λdy generált sajátértékrendszer problémát. 3. Felhasználjuk a második legkisebb sajátértékhez tartozó sajátvektort a 6.1 fejezetben megismert biparticionáló módszerekhez és megadjuk a diszkrét megoldást. 4. Ellenőrizzük a partícionált gráf stabilitását, hogy vágott-e klikk élet, illetve megfelelő-e a kapott eredmény. 5. Rekurzívan megismételjük az pontokat, feltételezve, hogy az egyes gráfok az előző felosztott gráf A vagy B részgráfja. 2) K-utas Súlyozott Normalizált vágás többszörös sajátértékeket felhasználva: A K-utas algoritmussal az előzővel ellenétben nem csak kettő hatvány számú partíciója lehet. A megoldási menete a 2., illetve 3. sajátértékhez tartozó sajátvektort használja fel, mely egy két dimenziós vektorteret generál, és ez szolgál a diszkrét eredmény kiértékelésére. A kiértékelő algoritmus több fajta is lehet, de a 2 dimenziós vektortér pontjainak csoportosítására legtöbbnyire a k-means algoritmust szokás alkalmazni. 22

24 7 Példa Vegyük a következő egyszerű példát: v(1) = 3 v(2) = 4 v(3) = 5 6. ábra: Három pontú gráf A fenti gráf minden élsúlyának értéke 1, pontjainak a súlya rendre 3, 4, 5. Az 5. fejezet alapján a kibővített gráf a következőképpen néz ki:!"!#!$ 7. ábra: A kibővített példagráf A kibővített gráfból felírható a szomszédossági mátrix. A szomszédossági mátrix főátlója nullvektor A kibővített gráf Laplace mátrixa: L = táblázat: A kibővített gráf Laplace mátrixa A fent látható Laplace mátrixból jól kivehető, hogy az első három sora és oszlopa tartalmazza az eredeti gráf éleit. A mátrix bővítése pontonként történik, az egyes pontsúlyoknak 23

A dekompozíció és az ütemezés iteratív összehangolása a rendszerszintű szintézisben

A dekompozíció és az ütemezés iteratív összehangolása a rendszerszintű szintézisben Budapesti Műszaki és Gazdaságtudományi Egyetem Villamosmérnöki és Informatikai Kar Irányítástechnika és Informatika Tanszék A dekompozíció és az ütemezés iteratív összehangolása a rendszerszintű szintézisben

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

7. Régió alapú szegmentálás

7. Régió alapú szegmentálás Digitális képek szegmentálása 7. Régió alapú szegmentálás Kató Zoltán http://www.cab.u-szeged.hu/~kato/segmentation/ Szegmentálási kritériumok Particionáljuk a képet az alábbi kritériumokat kielégítő régiókba

Részletesebben

6. gyakorlat. Gelle Kitti. Csendes Tibor Somogyi Viktor. London András. jegyzetei alapján

6. gyakorlat. Gelle Kitti. Csendes Tibor Somogyi Viktor. London András. jegyzetei alapján Közelítő és szimbolikus számítások 6. gyakorlat Sajátérték, Gersgorin körök Készítette: Gelle Kitti Csendes Tibor Somogyi Viktor Vinkó Tamás London András Deák Gábor jegyzetei alapján . Mátrixok sajátértékei

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

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

1. feladatsor: Vektorterek, lineáris kombináció, mátrixok, determináns (megoldás)

1. feladatsor: Vektorterek, lineáris kombináció, mátrixok, determináns (megoldás) Matematika A2c gyakorlat Vegyészmérnöki, Biomérnöki, Környezetmérnöki szakok, 2017/18 ősz 1. feladatsor: Vektorterek, lineáris kombináció, mátrixok, determináns (megoldás) 1. Valós vektorterek-e a következő

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

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

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

Vektorterek. =a gyakorlatokon megoldásra ajánlott

Vektorterek. =a gyakorlatokon megoldásra ajánlott Vektorterek =a gyakorlatokon megoldásra ajánlott 40. Alteret alkotnak-e a valós R 5 vektortérben a megadott részhalmazok? Ha igen, akkor hány dimenziósak? (a) L = { (x 1, x 2, x 3, x 4, x 5 ) x 1 = x 5,

Részletesebben

Matematika A2 vizsga mgeoldása június 4.

Matematika A2 vizsga mgeoldása június 4. Matematika A vizsga mgeoldása 03. június.. (a (3 pont Definiálja az f(x, y függvény határértékét az (x 0, y 0 helyen! Megoldás: Legyen D R, f : D R. Legyen az f(x, y függvény értelmezve az (x 0, y 0 pont

Részletesebben

11. Előadás. 11. előadás Bevezetés a lineáris programozásba

11. Előadás. 11. előadás Bevezetés a lineáris programozásba 11. Előadás Gondolkodnivalók Sajátérték, Kvadratikus alak 1. Gondolkodnivaló Adjuk meg, hogy az alábbi A mátrixnak mely α értékekre lesz sajátértéke a 5. Ezen α-ák esetén határozzuk meg a 5 sajátértékhez

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

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

Diszkrét matematika II., 8. előadás. Vektorterek

Diszkrét matematika II., 8. előadás. Vektorterek 1 Diszkrét matematika II., 8. előadás Vektorterek Dr. Takách Géza NyME FMK Informatikai Intézet takach@inf.nyme.hu http://inf.nyme.hu/ takach/ 2007.??? Vektorterek Legyen T egy test (pl. R, Q, F p ). Definíció.

Részletesebben

MATEMATIKA ÉRETTSÉGI TÍPUSFELADATOK MEGOLDÁSAI KÖZÉPSZINT Abszolútértékes és gyökös kifejezések

MATEMATIKA ÉRETTSÉGI TÍPUSFELADATOK MEGOLDÁSAI KÖZÉPSZINT Abszolútértékes és gyökös kifejezések MATEMATIKA ÉRETTSÉGI TÍPUSFELADATOK MEGOLDÁSAI KÖZÉPSZINT Abszolútértékes és gyökös kifejezések A szürkített hátterű feladatrészek nem tartoznak az érintett témakörhöz, azonban szolgálhatnak fontos információval

Részletesebben

Vektorok, mátrixok, lineáris egyenletrendszerek

Vektorok, mátrixok, lineáris egyenletrendszerek a Matematika mérnököknek I. című tárgyhoz Vektorok, mátrixok, lineáris egyenletrendszerek Vektorok A rendezett valós számpárokat kétdimenziós valós vektoroknak nevezzük. Jelölésükre latin kisbetűket használunk.

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

1.1. Vektorok és operátorok mátrix formában

1.1. Vektorok és operátorok mátrix formában 1. Reprezentáció elmélet 1.1. Vektorok és operátorok mátrix formában A vektorok és az operátorok mátrixok formájában is felírhatók. A végtelen dimenziós ket vektoroknak végtelen sok sort tartalmazó oszlopmátrix

Részletesebben

26. MINIMÁLIS KÖLTSÉGŰ UTAK MINDEN CSÚCSPÁRRA

26. MINIMÁLIS KÖLTSÉGŰ UTAK MINDEN CSÚCSPÁRRA 26. MINIMÁLIS KÖLTSÉGŰ UTAK MINDEN CSÚCSPÁRRA Az előző két fejezetben tárgyalt feladat általánosításaként a gráfban található összes csúcspárra szeretnénk meghatározni a legkisebb költségű utat. A probléma

Részletesebben

22. GRÁFOK ÁBRÁZOLÁSA

22. GRÁFOK ÁBRÁZOLÁSA 22. GRÁFOK ÁBRÁZOLÁSA A megoldandó feladatok, problémák modellezése során sokszor gráfokat alkalmazunk. A gráf fogalmát a matematikából ismertnek vehetjük. A modellezés során a gráfok több változata is

Részletesebben

Miért fontos számunkra az előző gyakorlaton tárgyalt lineáris algebrai ismeretek

Miért fontos számunkra az előző gyakorlaton tárgyalt lineáris algebrai ismeretek Az november 23-i szeminárium témája Rövid összefoglaló Miért fontos számunkra az előző gyakorlaton tárgyalt lineáris algebrai ismeretek felfrissítése? Tekintsünk ξ 1,..., ξ k valószínűségi változókat,

Részletesebben

Infobionika ROBOTIKA. X. Előadás. Robot manipulátorok II. Direkt és inverz kinematika. Készült a HEFOP P /1.0 projekt keretében

Infobionika ROBOTIKA. X. Előadás. Robot manipulátorok II. Direkt és inverz kinematika. Készült a HEFOP P /1.0 projekt keretében Infobionika ROBOTIKA X. Előadás Robot manipulátorok II. Direkt és inverz kinematika Készült a HEFOP-3.3.1-P.-2004-06-0018/1.0 projekt keretében Tartalom Direkt kinematikai probléma Denavit-Hartenberg konvenció

Részletesebben

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

A lineáris programozás alapfeladata Standard alak Az LP feladat megoldása Az LP megoldása: a szimplex algoritmus 2018/ Operációkutatás I. 2018/2019-2. Szegedi Tudományegyetem Informatika Intézet Számítógépes Optimalizálás Tanszék 2. Előadás LP alapfeladat A lineáris programozás (LP) alapfeladata standard formában Max c

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

Konjugált gradiens módszer

Konjugált gradiens módszer Közelítő és szimbolikus számítások 12. gyakorlat Konjugált gradiens módszer Készítette: Gelle Kitti Csendes Tibor Vinkó Tamás Faragó István Horváth Róbert jegyzetei alapján 1 LINEÁRIS EGYENLETRENDSZEREK

Részletesebben

1. zárthelyi,

1. zárthelyi, 1. zárthelyi, 2009.10.20. 1. Írjuk fel a tér P = (0,2,4) és Q = (6, 2,2) pontjait összekötő szakasz felezőmerőleges síkjának egyenletét. 2. Tekintsük az x + 2y + 3z = 14, a 2x + 6y + 10z = 24 és a 4x+2y

Részletesebben

Diszkrét matematika I., 12. előadás Dr. Takách Géza NyME FMK Informatikai Intézet takach november 30.

Diszkrét matematika I., 12. előadás Dr. Takách Géza NyME FMK Informatikai Intézet   takach november 30. 1 Diszkrét matematika I, 12 előadás Dr Takách Géza NyME FMK Informatikai Intézet takach@infnymehu http://infnymehu/ takach 2005 november 30 Vektorok Definíció Egy tetszőleges n pozitív egész számra n-komponensű

Részletesebben

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

A lineáris programozás alapfeladata Standard alak Az LP feladat megoldása Az LP megoldása: a szimplex algoritmus 2017/ Operációkutatás I. 2017/2018-2. Szegedi Tudományegyetem Informatika Intézet Számítógépes Optimalizálás Tanszék 2. Előadás LP alapfeladat A lineáris programozás (LP) alapfeladata standard formában Max c

Részletesebben

A KroneckerCapelli-tételb l következik, hogy egy Bx = 0 homogén lineáris egyenletrendszernek

A KroneckerCapelli-tételb l következik, hogy egy Bx = 0 homogén lineáris egyenletrendszernek 10. gyakorlat Mátrixok sajátértékei és sajátvektorai Azt mondjuk, hogy az A M n mátrixnak a λ IR szám a sajátértéke, ha létezik olyan x IR n, x 0 vektor, amelyre Ax = λx. Ekkor az x vektort az A mátrix

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

Gauss-Seidel iteráció

Gauss-Seidel iteráció Közelítő és szimbolikus számítások 5. gyakorlat Iterációs módszerek: Jacobi és Gauss-Seidel iteráció Készítette: Gelle Kitti Csendes Tibor Somogyi Viktor London András Deák Gábor jegyzetei alapján 1 ITERÁCIÓS

Részletesebben

Magasabbfokú egyenletek

Magasabbfokú egyenletek 86 Magasabbfokú egyenletek Magasabbfokú egyenletek 5 90 a) =! ; b) =! ; c) = 5, 9 a) Legyen = y Új egyenletünk: y - 5y+ = 0 Ennek gyökei: y=, y= Tehát egyenletünk gyökei:, =!,, =! b) Új egyenletünk: y

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

Trigonometria Megoldások. 1) Igazolja, hogy ha egy háromszög szögeire érvényes az alábbi összefüggés: sin : sin = cos + : cos +, ( ) ( )

Trigonometria Megoldások. 1) Igazolja, hogy ha egy háromszög szögeire érvényes az alábbi összefüggés: sin : sin = cos + : cos +, ( ) ( ) Trigonometria Megoldások Trigonometria - megoldások ) Igazolja, hogy ha egy háromszög szögeire érvényes az alábbi összefüggés: sin : sin = cos + : cos +, ( ) ( ) akkor a háromszög egyenlő szárú vagy derékszögű!

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

Szalai Péter. April 17, Szalai Péter April 17, / 36

Szalai Péter. April 17, Szalai Péter April 17, / 36 Szociális hálók Szalai Péter April 17, 2015 Szalai Péter April 17, 2015 1 / 36 Miről lesz szó? 1 Megfigyelések Kis világ Power-law Klaszterezhetőség 2 Modellek Célok Erdős-Rényi Watts-Strogatz Barabási

Részletesebben

VIK A2 Matematika - BOSCH, Hatvan, 3. Gyakorlati anyag. Mátrix rangja

VIK A2 Matematika - BOSCH, Hatvan, 3. Gyakorlati anyag. Mátrix rangja VIK A2 Matematika - BOSCH, Hatvan, 3. Gyakorlati anyag 2019. március 21. Mátrix rangja 1. Számítsuk ki az alábbi mátrixok rangját! (d) 1 1 2 2 4 5 1 1 1 1 1 1 1 1 2 1 2 1 1 0 1 1 2 1 0 1 1 1 1 2 3 1 3

Részletesebben

Az impulzusnyomatékok általános elmélete

Az impulzusnyomatékok általános elmélete Az impulzusnyomatékok általános elmélete November 27, 2006 Az elemi kvantummechanika keretében tárgyaltuk már az impulzusnyomatékot. A továbbiakban általánosítjuk az impulzusnyomaték fogalmát a kvantummechanikában

Részletesebben

egyenlőtlenségnek kell teljesülnie.

egyenlőtlenségnek kell teljesülnie. MATEMATIKA ÉRETTSÉGI TÍPUSFELADATOK MEGOLDÁSAI KÖZÉP SZINT Abszolútértékes és gyökös kifejezések A szürkített hátterű feladatrészek nem tartoznak az érintett témakörhöz, azonban szolgálhatnak fontos információval

Részletesebben

7. gyakorlat megoldásai

7. gyakorlat megoldásai 7. gyakorlat megoldásai Komple számok, sajátértékek, sajátvektorok F1. Legyen z 1 = + i és z = 1 i. Számoljuk ki az alábbiakat: z 1 z 1 + z, z 1 z, z 1 z,, z 1, z 1. z M1. A szorzásnál használjuk, hogy

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

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

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

352 Nevezetes egyenlôtlenségek. , az átfogó hossza 81 cm

352 Nevezetes egyenlôtlenségek. , az átfogó hossza 81 cm 5 Nevezetes egyenlôtlenségek a b 775 Legyenek a befogók: a, b Ekkor 9 + $ ab A maimális ab terület 0, 5cm, az átfogó hossza 8 cm a b a b 776 + # +, azaz a + b $ 88, tehát a keresett minimális érték: 88

Részletesebben

Egészrészes feladatok

Egészrészes feladatok Kitűzött feladatok Egészrészes feladatok Győry Ákos Miskolc, Földes Ferenc Gimnázium 1. feladat. Oldjuk meg a valós számok halmazán a { } 3x 1 x+1 7 egyenletet!. feladat. Bizonyítsuk be, hogy tetszőleges

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

Felvételi tematika INFORMATIKA

Felvételi tematika INFORMATIKA Felvételi tematika INFORMATIKA 2016 FEJEZETEK 1. Természetes számok feldolgozása számjegyenként. 2. Számsorozatok feldolgozása elemenként. Egydimenziós tömbök. 3. Mátrixok feldolgozása elemenként/soronként/oszloponként.

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

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 9 IX. ROBUsZTUs statisztika 1. ROBUsZTUssÁG Az eddig kidolgozott módszerek főleg olyanok voltak, amelyek valamilyen értelemben optimálisak,

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

Saj at ert ek-probl em ak febru ar 26.

Saj at ert ek-probl em ak febru ar 26. Sajátérték-problémák 2018. február 26. Az alapfeladat Adott a következő egyenlet: Av = λv, (1) ahol A egy ismert mátrix v ismeretlen, nem zérus vektor λ ismeretlen szám Azok a v, λ kombinációk, amikre

Részletesebben

Algoritmuselmélet. Legrövidebb utak, Bellmann-Ford, Dijkstra. Katona Gyula Y.

Algoritmuselmélet. Legrövidebb utak, Bellmann-Ford, Dijkstra. Katona Gyula Y. Algoritmuselmélet Legrövidebb utak, Bellmann-Ford, Dijkstra Katona Gyula Y. Számítástudományi és Információelméleti Tanszék Budapesti Műszaki és Gazdaságtudományi Egyetem 3. előadás Katona Gyula Y. (BME

Részletesebben

Keresztmetszet másodrendű nyomatékainak meghatározása

Keresztmetszet másodrendű nyomatékainak meghatározása BUDAPEST MŰSZAK ÉS GAZDASÁGTUDOMÁNY EGYETEM Keresztmetszet másodrendű nyomatékainak meghatározása Segédlet a Szilárdságtan c tárgy házi feladatához Készítette: Lehotzky Dávid Budapest, 205 február 28 ábra

Részletesebben

Függvények Megoldások

Függvények Megoldások Függvények Megoldások ) Az ábrán egy ; intervallumon értelmezett függvény grafikonja látható. Válassza ki a felsoroltakból a függvény hozzárendelési szabályát! a) x x b) x x + c) x ( x + ) b) Az x függvény

Részletesebben

Flynn féle osztályozás Single Isntruction Multiple Instruction Single Data SISD SIMD Multiple Data MISD MIMD

Flynn féle osztályozás Single Isntruction Multiple Instruction Single Data SISD SIMD Multiple Data MISD MIMD M5-. A lineáris algebra párhuzamos algoritmusai. Ismertesse a párhuzamos gépi architektúrák Flynn-féle osztályozását. A párhuzamos lineáris algebrai algoritmusok között mi a BLAS csomag célja, melyek annak

Részletesebben

Relációk Függvények. A diákon megjelenő szövegek és képek csak a szerző (Kocsis Imre, DE MFK) engedélyével használhatók fel!

Relációk Függvények. A diákon megjelenő szövegek és képek csak a szerző (Kocsis Imre, DE MFK) engedélyével használhatók fel! függvények RE 1 Relációk Függvények függvények RE 2 Definíció Ha A, B és ρ A B, akkor azt mondjuk, hogy ρ reláció A és B között, vagy azt, hogy ρ leképezés A-ból B-be. Ha speciálisan A=B, azaz ρ A A, akkor

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

Algoritmuselmélet. Katona Gyula Y. Számítástudományi és Információelméleti Tanszék Budapesti Műszaki és Gazdaságtudományi Egyetem. 13.

Algoritmuselmélet. Katona Gyula Y. Számítástudományi és Információelméleti Tanszék Budapesti Műszaki és Gazdaságtudományi Egyetem. 13. Algoritmuselmélet NP-teljes problémák Katona Gyula Y. Számítástudományi és Információelméleti Tanszék Budapesti Műszaki és Gazdaságtudományi Egyetem 13. előadás Katona Gyula Y. (BME SZIT) Algoritmuselmélet

Részletesebben

Nagyságrendek. Kiegészítő anyag az Algoritmuselmélet tárgyhoz. Friedl Katalin BME SZIT február 1.

Nagyságrendek. Kiegészítő anyag az Algoritmuselmélet tárgyhoz. Friedl Katalin BME SZIT február 1. Nagyságrendek Kiegészítő anyag az Algoritmuselmélet tárgyhoz (a Rónyai Ivanyos Szabó: Algoritmusok könyv mellé) Friedl Katalin BME SZIT friedl@cs.bme.hu 018. február 1. Az O, Ω, Θ jelölések Az algoritmusok

Részletesebben

TÁMOP C-11/1/KONV Nemzeti kutatóközpont fejlett infokommunikációs technológiák kidolgozására és piaci bevezetésére

TÁMOP C-11/1/KONV Nemzeti kutatóközpont fejlett infokommunikációs technológiák kidolgozására és piaci bevezetésére infokommunikációs technológiák FELADATFÜGGŐ FELÉPÍTÉSŰ PIPELINE TÖBBPROCESSZOROS RENDSZEREK TERVEZÉSI MÓDSZERÉNEK KIDOLGOZÁSA ÉS ALKALMAZÁSA NAGY SEBESSÉGIGÉNYŰ BEÁGYAZOTT CÉLRENDSZEREKBEN DR. ARATÓ PÉTER

Részletesebben

Lineáris algebra numerikus módszerei

Lineáris algebra numerikus módszerei Hermite interpoláció Tegyük fel, hogy az x 0, x 1,..., x k [a, b] különböző alappontok (k n), továbbá m 0, m 1,..., m k N multiplicitások úgy, hogy Legyenek adottak k m i = n + 1. i=0 f (j) (x i ) = y

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

Az 1. forduló feladatainak megoldása

Az 1. forduló feladatainak megoldása Az 1. forduló feladatainak megoldása 1. Bizonyítsa be, hogy a kocka éléből, lapátlójából és testátlójából háromszög szerkeszthető, és ennek a háromszögnek van két egymásra merőleges súlyvonala! Megoldás:

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

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

Példa: Tartó lehajlásfüggvényének meghatározása a Rayleigh Ritz-féle módszer segítségével

Példa: Tartó lehajlásfüggvényének meghatározása a Rayleigh Ritz-féle módszer segítségével Példa: Tartó lehajlásfüggvényének meghatározása a Rayleigh Ritz-féle módszer segítségével Készítette: Dr. Kossa Attila (kossa@mm.bme.hu) BME, Műszaki Mechanikai Tanszék 2013. szeptember 23. Javítva: 2013.10.09.

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

Mindent olyan egyszerűvé kell tenni, amennyire csak lehet, de nem egyszerűbbé. (Albert Einstein) Halmazok 1

Mindent olyan egyszerűvé kell tenni, amennyire csak lehet, de nem egyszerűbbé. (Albert Einstein) Halmazok 1 Halmazok 1 Mindent olyan egyszerűvé kell tenni, amennyire csak lehet, de nem egyszerűbbé. (Albert Einstein) Halmazok 2 A fejezet legfontosabb elemei Halmaz megadási módjai Halmazok közti műveletek (metszet,

Részletesebben

Hódmezővásárhelyi Városi Matematikaverseny április 14. A osztályosok feladatainak javítókulcsa

Hódmezővásárhelyi Városi Matematikaverseny április 14. A osztályosok feladatainak javítókulcsa Hódmezővásárhelyi Városi Matematikaverseny 2003. április 14. A 11-12. osztályosok feladatainak javítókulcsa 1. feladat Egy számtani sorozatot az első eleme és különbsége egyértelműen meghatározza, azt

Részletesebben

Matematika III. harmadik előadás

Matematika III. harmadik előadás Matematika III. harmadik előadás Kézi Csaba Debreceni Egyetem, Műszaki Kar Debrecen, 2013/14 tanév, I. félév Kézi Csaba (DE) Matematika III. harmadik előadás 2013/14 tanév, I. félév 1 / 13 tétel Az y (x)

Részletesebben

A brachistochron probléma megoldása

A brachistochron probléma megoldása A brachistochron probléma megoldása Adott a függőleges síkban két nem egy függőleges egyenesen fekvő P 0 és P 1 pont, amelyek közül a P 1 fekszik alacsonyabban. Azt a kérdést fogjuk vizsgálni. hogy van-e

Részletesebben

1. Homogén lineáris egyenletrendszer megoldástere

1. Homogén lineáris egyenletrendszer megoldástere X HOMOGÉN LINEÁRIS EGYENLET- RENDSZEREK 1 Homogén lineáris egyenletrendszer megoldástere Homogén lineáris egyenletrendszer definíciója már szerepelt Olyan lineáris egyenletrendszert nevezünk homogénnek,

Részletesebben

Normák, kondíciószám

Normák, kondíciószám Normák, kondíciószám A fizika numerikus módszerei I. mf1n1a06- mf1n2a06 Csabai István Lineáris egyenletrendszerek Nagyon sok probléma közvetlenül lineáris egyenletrendszer megoldásával kezelhetı Sok numerikus

Részletesebben

RE 1. Relációk Függvények. A diákon megjelenő szövegek és képek csak a szerző (Kocsis Imre, DE MFK) engedélyével használhatók fel!

RE 1. Relációk Függvények. A diákon megjelenő szövegek és képek csak a szerző (Kocsis Imre, DE MFK) engedélyével használhatók fel! RE 1 Relációk Függvények RE 2 Definíció: Ha A, B és ρ A B, akkor azt mondjuk, hogy ρ reláció A és B között, vagy azt, hogy ρ leképezés A-ból B-be. Ha speciálisan A=B, azaz ρ A A, akkor azt mondjuk, hogy

Részletesebben

Algoritmusok Tervezése. 6. Előadás Algoritmusok 101 Dr. Bécsi Tamás

Algoritmusok Tervezése. 6. Előadás Algoritmusok 101 Dr. Bécsi Tamás Algoritmusok Tervezése 6. Előadás Algoritmusok 101 Dr. Bécsi Tamás Mi az algoritmus? Lépések sorozata egy feladat elvégzéséhez (legáltalánosabban) Informálisan algoritmusnak nevezünk bármilyen jól definiált

Részletesebben

1. tétel. 1. Egy derékszögű háromszög egyik szöge 50, a szög melletti befogója 7 cm. Mekkora a háromszög átfogója? (4 pont)

1. tétel. 1. Egy derékszögű háromszög egyik szöge 50, a szög melletti befogója 7 cm. Mekkora a háromszög átfogója? (4 pont) 1. tétel 1. Egy derékszögű háromszög egyik szöge 50, a szög melletti befogója cm. Mekkora a háromszög átfogója? (4 pont). Adott az ábrán két vektor. Rajzolja meg a b, a b és az a b vektorokat! (6 pont)

Részletesebben

Lineáris leképezések (előadásvázlat, szeptember 28.) Maróti Miklós, Kátai-Urbán Kamilla

Lineáris leképezések (előadásvázlat, szeptember 28.) Maróti Miklós, Kátai-Urbán Kamilla Lineáris leképezések (előadásvázlat, 2012. szeptember 28.) Maróti Miklós, Kátai-Urbán Kamilla Ennek az előadásnak a megértéséhez a következő fogalmakat kell tudni: homogén lineáris egyenletrendszer és

Részletesebben

1 Lebegőpontos számábrázolás

1 Lebegőpontos számábrázolás Tartalom 1 Lebegőpontos számábrázolás... 2 2 Vektornormák... 4 3 Indukált mátrixnormák és tulajdonságaik... 5 4 A lineáris rendszer jobboldala hibás... 6 5 A kondíciószám és tulajdonságai... 7 6 Perturbációs

Részletesebben

Számelméleti alapfogalmak

Számelméleti alapfogalmak 1 Számelméleti alapfogalmak 1 Definíció Az a IN szám osztója a b IN számnak ha létezik c IN melyre a c = b Jelölése: a b 2 Példa a 0 bármely a számra teljesül, mivel c = 0 univerzálisan megfelel: a 0 =

Részletesebben

9. gyakorlat Lineáris egyenletrendszerek megoldási módszerei folyt. Néhány kiegészítés a Gauss- és a Gauss Jordan-eliminációhoz

9. gyakorlat Lineáris egyenletrendszerek megoldási módszerei folyt. Néhány kiegészítés a Gauss- és a Gauss Jordan-eliminációhoz 9. gyakorlat Lineáris egyenletrendszerek megoldási módszerei folyt. Néhány kiegészítés a Gauss- és a Gauss Jordan-eliminációhoz. Mindkét eliminációs módszer műveletigénye sokkal kisebb, mint a Cramer-szabályé:

Részletesebben

Diszkrét matematika I. gyakorlat

Diszkrét matematika I. gyakorlat Vizsgafeladatok megoldása 2012. december 5. Tartalom Teljes feladatsor #1 1 Teljes feladatsor #1 2 Teljes feladatsor #2 3 Teljes feladatsor #3 4 Teljes feladatsor #4 5 Válogatott feladatok 6 Végső bölcsesség

Részletesebben

4. Laplace transzformáció és alkalmazása

4. Laplace transzformáció és alkalmazása 4. Laplace transzformáció és alkalmazása 4.1. Laplace transzformált és tulajdonságai Differenciálegyenletek egy csoportja algebrai egyenletté alakítható. Ennek egyik eszköze a Laplace transzformáció. Definíció:

Részletesebben

Ellenőrző kérdések. 36. Ha t szintű indexet használunk, mennyi a keresési költség blokkműveletek számában mérve? (1 pont) log 2 (B(I (t) )) + t

Ellenőrző kérdések. 36. Ha t szintű indexet használunk, mennyi a keresési költség blokkműveletek számában mérve? (1 pont) log 2 (B(I (t) )) + t Ellenőrző kérdések 2. Kis dolgozat kérdései 36. Ha t szintű indexet használunk, mennyi a keresési költség blokkműveletek számában mérve? (1 pont) log 2 (B(I (t) )) + t 37. Ha t szintű indexet használunk,

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

Sajátértékek és sajátvektorok. mf1n1a06- mf1n2a06 Csabai István

Sajátértékek és sajátvektorok. mf1n1a06- mf1n2a06 Csabai István Sajátértékek és sajátvektorok A fizika numerikus módszerei I. mf1n1a06- mf1n2a06 Csabai István Lineáris transzformáció Vektorok lineáris transzformációja: általános esetben az x vektor iránya és nagysága

Részletesebben

Függvények növekedési korlátainak jellemzése

Függvények növekedési korlátainak jellemzése 17 Függvények növekedési korlátainak jellemzése A jellemzés jól bevált eszközei az Ω, O, Θ, o és ω jelölések. Mivel az igények általában nemnegatívak, ezért az alábbi meghatározásokban mindenütt feltesszük,

Részletesebben

January 16, ψ( r, t) ψ( r, t) = 1 (1) ( ψ ( r,

January 16, ψ( r, t) ψ( r, t) = 1 (1) ( ψ ( r, Közelítő módszerek January 16, 27 1 A variációs módszer A variációs módszer szintén egy analitikus közelítő módszer. Olyan esetekben alkalmazzuk mikor ismert az analitikus alak amelyben keressük a sajátfüggvényt,

Részletesebben

Brósch Zoltán (Debreceni Egyetem Kossuth Lajos Gyakorló Gimnáziuma) Megoldások

Brósch Zoltán (Debreceni Egyetem Kossuth Lajos Gyakorló Gimnáziuma) Megoldások Megoldások 1. Oldd meg a következő exponenciális egyenletrendszereket! (Alaphalmaz: R) 5 3 x 2 2 y = 7 2 3 x + 2 y = 10 7 x+1 6 y+3 = 1 6 y+2 7 x = 5 (6 y + 1) c) 25 (5 x ) y = 1 3 y 27 x = 3 Megoldás:

Részletesebben

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

Ütemezési problémák. Kis Tamás 1. ELTE Problémamegoldó Szeminárium, ősz 1 MTA SZTAKI. valamint ELTE, Operációkutatási Tanszék

Ütemezési problémák. Kis Tamás 1. ELTE Problémamegoldó Szeminárium, ősz 1 MTA SZTAKI. valamint ELTE, Operációkutatási Tanszék Ütemezési problémák Kis Tamás 1 1 MTA SZTAKI valamint ELTE, Operációkutatási Tanszék ELTE Problémamegoldó Szeminárium, 2012. ősz Kivonat Alapfogalmak Mit is értünk ütemezésen? Gépütemezés 1 L max 1 rm

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

1. Alapfogalmak Algoritmus Számítási probléma Specifikáció Algoritmusok futási ideje

1. Alapfogalmak Algoritmus Számítási probléma Specifikáció Algoritmusok futási ideje 1. Alapfogalmak 1.1. Algoritmus Az algoritmus olyan elemi műveletekből kompozíciós szabályok szerint felépített összetett művelet, amelyet megadott feltételt teljesítő bemeneti adatra végrehajtva, a megkívánt

Részletesebben

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

Dualitás Dualitási tételek Általános LP feladat Komplementáris lazaság 2017/ Szegedi Tudományegyetem Informatikai Intézet Operációkutatás I. 2017/2018-2. Szegedi Tudományegyetem Informatikai Intézet Számítógépes Optimalizálás Tanszék 7. Előadás Árazási interpretáció Tekintsük újra az erőforrás allokációs problémát (vonat

Részletesebben

LINEÁRIS ALGEBRA. matematika alapszak. Euklideszi terek. SZTE Bolyai Intézet, őszi félév. Euklideszi terek LINEÁRIS ALGEBRA 1 / 40

LINEÁRIS ALGEBRA. matematika alapszak. Euklideszi terek. SZTE Bolyai Intézet, őszi félév. Euklideszi terek LINEÁRIS ALGEBRA 1 / 40 LINEÁRIS ALGEBRA matematika alapszak SZTE Bolyai Intézet, 2016-17. őszi félév Euklideszi terek Euklideszi terek LINEÁRIS ALGEBRA 1 / 40 Euklideszi tér Emlékeztető: A standard belső szorzás és standard

Részletesebben

3. Lineáris differenciálegyenletek

3. Lineáris differenciálegyenletek 3. Lineáris differenciálegyenletek A közönséges differenciálegyenletek két nagy csoportba oszthatók lineáris és nemlineáris egyenletek csoportjába. Ez a felbontás kicsit önkényesnek tűnhet, a megoldásra

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

Programozási módszertan. Mohó algoritmusok

Programozási módszertan. Mohó algoritmusok PM-08 p. 1/17 Programozási módszertan Mohó algoritmusok Werner Ágnes Villamosmérnöki és Információs Rendszerek Tanszék e-mail: werner.agnes@virt.uni-pannon.hu PM-08 p. 2/17 Bevezetés Dinamikus programozás

Részletesebben

Q 1 D Q 2 (D x) 2 (1.1)

Q 1 D Q 2 (D x) 2 (1.1) . Gyakorlat 4B-9 Két pontszerű töltés az x tengelyen a következőképpen helyezkedik el: egy 3 µc töltés az origóban, és egy + µc töltés az x =, 5 m koordinátájú pontban van. Keressük meg azt a helyet, ahol

Részletesebben