POSEIDON NAVIGATION PROJECT
|
|
- Eszter Takácsné
- 8 évvel ezelőtt
- Látták:
Átírás
1 OTDK dolgozat POSEIDON NAVIGATION PROJECT intelligent Map with Rules of Traffic Készítette: BED K DÁVID, SZIRBIK FERENC KONZULENSEK: VÁMOSSY ZOLTÁN (DOCENS), MOLNÁR ANDRÁS (ADJUNKTUS) november 8. Budapesti M szaki F iskola Neumann János Informatikai F iskolai Kar Informatikai és Automatizált Rendszerek szakirány
2 POSEIDON NAVIGATION PROJECT IAR TARTALOMJEGYZÉK TARTALOMJEGYZÉK TARTALOMJEGYZÉK FEJEZET - CÉL MEGHATÁROZÁSA FEJEZET - AZ IRODALOMKUTATÁS ÉS ÉRTÉKELÉSE AZ ÚTKERESÉSR L ÁLTALÁBAN...7 English...7 Magyar ÚTKERESÉS A JÁTÉKOK VILÁGÁBAN [2] Szimulációs program: From Game To Map Csapdák Algoritmusok alapja Dijkstra algoritmusa és a Best-First-Search Az A* algoritmus A HULLÁMTOVÁBBTERJESZTÉSES ALGORITMUS [3] Legrövidebb út Hullám-továbbterjesztéses algoritmus finomítása Legbiztonságosabb út, Voronoi diagramm Megjegyzések Implementálás GRÁFOK, MINIMÁLIS KÖLTSÉGTÉRÍTÉS FESZÍT FA, ÉS A LEGRÖVIDEBB ÚT [4] Néhány definíció Gráfok Gráfok ábrázolása Minimális költségtérítés feszít fa Algoritmusa Legrövidebb út [4] A legrövidebb út fogalma Az algoritmus lényege Az algoritmus részletesebben Az algoritmus pszeudokódja Szimulációs program: Graphs and spanning trees Megjegyzések A POSEIDON NAVIGATION PROJECT ÉS A GPS A globális helymeghatározó rendszer a GPS [7] Egy kis történelem Mi a helyzet ma? Van számos m hold felettem, van egy vev m, mib l fogja tudni a m hold, hogy hol vagyok? A kommunikáció Ha ez ilyen jó, akkor miért a pontatlanság, mik a felmerül hibák? A hibák adottak, szerencsére van megoldásuk is, mi jöhet még? A GPS felhasználása térképprogramok esetén A tesztelt GPS készülékek µ-blox MS1E GPS vev modul [5] Rövid ismertet A készülék megbízhatósága /2.
3 POSEIDON NAVIGATION PROJECT IAR TARTALOMJEGYZÉK Feléledési id k Technikai áttekintés ködési feltételek Kimeneti tüskék leírása Soros Interfész Jel Speciális táp-tüskék Jel meghatározás A feszültségszint-konvertáló áramkör A soros port A GPS készüléket és a PocketPC-t összeköt elektronika Megjegyzés A tesztszoftver A Garmin etrex Vista készülék [6] A választott protokoll a GPS készülékkel való kommunikációhoz Talker sentences Közl mondatok Proprietary sentences Gyártóspecifikus mondatok Query sentences Lekérdez mondatok Az adatok lekérdezésének megvalósítása A soros portról történ olvasás DESTINATOR 3 AVAGY MIT TUD A PIAC JELENLEG? FEJEZET - A HARDWARE ÉS A SOFTWARE A KEZDET A FEJLESZT I KÖRNYEZET POCKET PC TESZTKÉSZÜLÉK AZ ELS FUTÓ PROGRAM GPS TESZTKÉSZÜLÉK A.NET RÖVID BEMUTATÁSA ÚJ PROGRAMNYELV ÉS FEJLESZT I KÖRNYEZET A SOFTWARE ALAPVET MODULJAINAK LEÍRÁSA (0. RENDSZERTERV) Nulladik rendszerterv modulljai Az egyes modulok kapcsolata Egyes modulok leírása Adatbeviteli modul Kapott adat értelmezése Felhasználói felület modul Térképkezel modul Adatbázis Software frissítések kezelése A RENDSZER ÖSSZEÁLL (1. RENDSZERTERV) AZ ELKÉSZÜLT GPS A Pocket PC és a GPS összekötése Kommunikáció tesztelés Teszt I Teszt II Teszt III Teszt IV MIKROSZKÓP ALATT A GRÁF FELÜLET /3.
4 POSZEIDON NAVIGATION PROJECT IAR CÉL MEGHATÁROZÁSA 4. FEJEZET - GRAPHS AND SPANNING TREES A PROGRAMRÓL ÁLTALÁBAN FELHASZNÁLÓI KÉZIKÖNYV Új gráf létrehozása Gráf megnyitása Globális beállítási lehet ségek Lokális beállítások Új gráf pont felvétele Új él felvétele a gráfba Gráf pontok és élek módosítása illetve törlése Gráf tulajdonságainak utólagos beállítási lehet sége Az aktuális súly illetve gráf pont adat beállítása Gráf mentése Kapcsolatmátrix generálása Legrövidebb út meghatározása Dijkstra algoritmusa alapján FEJLESZT I DOKUMENTÁCIÓ A programról A TObject3D osztály A TGraph osztály Algoritmusok A TypeUnit további részei TESZTELÉS BEÁGYAZÁS A POSEIDON NAVIGATION PROJECT-BE FEJEZET A PPC ÉS A GPS ÖSSZEKAPCSOLÁSA A HARDVERES KAPCSOLAT Rövid ismertetés SZOFTVERES ILLESZTÉS PC és GPS eszköz közötti kommunikáció az els lépések PC és GPS eszköz közötti kommunikáció programfejleszt i környezetekb l Az NMEA GPS kód kezelése A GPS koordináták alapján pozícionálás térképen EREDMÉNYEK ÖSSZEFOGLALÁSA FEJEZET - IRODALOM JEGYZÉK IDÉZETEK, FORRÁSOK KÉPEK, GRAFIKÁK /4.
5 POSEIDON NAVIGATION PROJECT IAR CÉL MEGHATÁROZÁSA 1. FEJEZET - CÉL MEGHATÁROZÁSA A lehet legrövidebben megfogalmazva egy PDA-ra (tenyérgépre) fogunk elkészíteni egy navigációs programot, mely GPS koordináták segítségével a felhasználó igényeinek és a közlekedési szabályoknak megfelel en járható utakat keres. A GPS (globális helymeghatározó rendszer) mint az elmúlt évek talán egyik legnagyobb technikai csodája a navigálás területén nyújt rendkívül pontos információkat számunkra, gyakorlatilag azonnal. Egy GPS vev készülék által szolgáltatott jelekb l az átlagos ember nem képes információt kinyerni, azonban egy számítógéppel összekötve, az adatokat egy térképen megjelenítve a navigáció egy új dimenzióját nyithatja meg számunkra. Természetesen nem vihetünk magunkkal egy asztali számítógépet vadvízi evezés, vagy hegymászás során, így egy PDA, azon belül is a többfeladatos Microsoft Windows Mobile operációs rendszert futtató Pocket PC a megfelel cél-hardware és software környezet a feladat megoldására. Egy interaktív térkép nem csupán azt képes megmondani nekünk, hogy jelenleg hol vagyunk a térképen, hanem megtanítható útkeresésre is, ezzel segítve tájékozódásunkat a világban. Az útkeresés kérdésköre nagyon szerteágazó, hisz az ember más utat választ, ha siet, mást, ha kerülni akarja a rossz min ség földutat és mást, ha a legrövidebbet szeretné megkapni. Ugyancsak nem mindegy az eredmény szempontjából, hogy egy gráf, avagy egy grafikus interface-en keresztül jutunk el célunkhoz, avagy a kett kombinációjával. Egy térképprogram esetében mit is jelent az a probléma, hogy útkeresés? Ismerünk egy adott pontot (kiindulási pont), ahol éppen mi állunk. Ezt a modern rendszerekben, és így a mienkben is egy GPS készülék segítségével a felhasználó gyorsan beazonosíthatja. Amennyiben nem rendelkezik GPS készülékkel, egy egyszer keres funkció segítségével ezt a pontot az ember maga is kijelölheti. Megjegyezzük, hogy a GPS pontossága vitatható, s t sokszor nem is határozható meg, mivel a vev nem lát elég m holdat, avagy azok túl közel vannak egymáshoz képest, így a látott holdak közül kidob a készülék párat. Ilyen esetekben szoftveres megoldást alkalmazunk majd, hiszen több mint valószín, hogy az illet annak a környezetnek a közelében van, amit az elmúlt pár percben megjelölt a GPS, vagy a felhasználó a jelenlegi helyzetének, így a szoftver felajánl egy közeli pontot valahol az el koordináta, és az el leg kijelölt cél között, a keresett úti cél és a felhasználó sebességét figyelembe véve. Ezt azután az ember módosíthatja, de ekkor már valószín leg ismer s neki a környék. Az útkeresés e pont és a cél pont között zajlik majd. Ezt vagy kijelöli az illet a térképen (rámutat), avagy beírja szövegesen, hogy mit keres. Miután a program a kérdésekkel egyértelm en beazonosított egy pontot, ami szintén szerepel a térképen, akkor az útkeresés folyamata elindulhat. Ha a térképen lév pontokat gráf pontoknak tekintjük, akkor az útkeresés a gráf pontjai közötti utak megtalálását jelenti, amennyiben azok léteznek (egy adott térképen szinte mindig létezik út két pont között, lehetne mondani, de ez nem minden esetben van így: pl. ha valaki gyalogosan közlekedik, akkor a folyó közepére nincs út, avagy az autópálya négy sávja közepére. Ett l függetlenül a program egy figyelmeztetés mellett amennyiben az adott lehet ségekkel út nem létezik, keres alternatív lehet ségeket, tervünk szerint). Van egy olyan lehet ség is, miszerint a 76/5.
6 POSZEIDON NAVIGATION PROJECT IAR CÉL MEGHATÁROZÁSA térképet grafikusan képzeljük el, és mint képet dolgozza fel a program. Ezt nevezzük pixeles megoldásnak. Ez valószín leg sokkal pontosabb utat tud meghatározni, ámde felmerül ezzel olyan probléma, hogy GPS koordinátákat képtelenség minden képponthoz tárolni. Mindkét módszernek vannak el nyei, és hátrányai is, ezért talán a legjobb megoldás, ha az el nyüket kivéve egy hibrid módszer megvalósítását t zzük ki célul. A GPS adatokat egy több szint gráf-háló tárolja (több szint: minden közlekedési módszernek külön gráf-háló). Lehet e gráfok unióját is venni annak érdekében, hogy olyan esetekben is találjon a program utat, mikor egy szinten belül erre nincs mód. Mindezekre rákerül egy információ-gazdag grafikus felület, mely színek segítségével tárol adatokat. Ennek van egy váza, ami tartalmazza azon pontokat, amelyek minden eszköz számára megközelíthetetlenek. Ilyen például egy folyó (híd nélküli része ), vagy egy ház alapja. Erre kerülnek rá a közlekedési módszerek különféle sémái. Pl. ha gyalog vagyunk, akkor azon utak jelennek meg, amik gyalogosan elérhet ket, a többi út ugyanolyan akadály marad, mint mondjuk a ház alapja. Itt is lehet ség lesz arra, hogy minden felület sémát felhasználjunk, és az uniójuk szerint keressünk utat (vagy bármelyik N uniója szerint). Maga az útkeresés egy végletekig egyszer sített modell arra nézve, hogy mi általa megtaláljuk helyünket a világban. Tervezzük, hogy térképprogramunkat felruházzuk a lehet ségekhez mérten számos KRESZ és gyakorlati szabállyal, ezzel is javítva a térképprogram hétköznapokban való felhasználásának eredményességét. Így az elején már csak egy dolgot kell tisztázni, hol lesz a kapcsolat a gráf és a grafikus megoldás között? A felhasználó a grafikus felületet látja, amin külön pontok jelzik azon pixeleket, melyek gráf pontok is. Útkeresésnél a felhasználó dönthet, hogy melyik út jelenjen meg, vagy rábízza a készülékre a dolgot. 76/6.
7 POSEIDON NAVIGATION PROJECT IAR IRODALOMKUTATÁS 2. FEJEZET - AZ IRODALOMKUTATÁS ÉS ÉRTÉKELÉSE A következ rész az irodalomkutatást öleli fel. Az els részében az útkeresés, a másodikban a GPS alkalmazásának a lehet ségeit vizsgálja. Az ezekkel kapcsolatos észrevételek és értékelések a leírás során folyamatosan kerültek beszerkesztésre AZ ÚTKERESÉSR L ÁLTALÁBAN Egy egyszer idézettel kezdeném az útkeresésr l szóló fejezetet, mely rávilágít a probléma fontosságára, és hogy nem véletlenül egy külön alfejezet az irodalomkutatásban. A fordítás nem szó szerint történt, a saját szavaimmal próbáltam elmondani valami hasonlót. English Pathfinding is one of the most visible types of Artificial Intelligence in video games. Few things make a game look "dumber" than bad pathfinding. Fortunately, pathfinging is mostly a "solved" problem. If you ask most game developers "How to I do pathfinding?", the vast majority will answer "A*". [1] Magyar Az útkeresés az egyik legkeresettebb mesterséges intelligencia típus a számítógépes játékokban. Sok mindent l függ, hogy egy játék jó lesz-e. Egy ilyen fontos tényez az alkalmazott útkeres algoritmus. Szerencsére ez a probléma ma már többnyire megoldott, de azért az ember nap mint nap találkozhat félresikerült alkotásokkal, melyekben nem gondolták végig, hogy ennek milyen nagy jelent sége van ÚTKERESÉS A JÁTÉKOK VILÁGÁBAN [2] The problem we're trying to solve is to get a game object from the starting point to a goal [2]. Azaz azt a problémát járjuk körül, hogy egy játékban hogyan lehet egy adott objektumot egy másik (cél) pontba vinni. A téma így megfogalmazva, hogy egy adott pontot hogy lehet eljuttatni egy másikba, teljes mértékben a térképprogram grafikus felületébe illik, hiszen ott is ugyanez a feladat Szimulációs program: From Game To Map Terveim között szerepel a fent leírtak megvalósítása. Valami olyasmi szimulációs programot képzeltem el, mely 1.0-ás verzióban egy testre, és 2D-ben akadályokkal övezett területet ad megoldást különféle algoritmusok alapján. A 2.0-ás verziót akkor nevezem majd kész -nek, ha a fent leírt dolgokat ellenségekkel övezett területen is végrehajtja. Ellenségnek nevezem a mozgó akadályokat. A következ (3.0) verzióban már 3D-ben szimulálva hajtom végre ugyanezt, majd a végs verzióban újfent el jönnek az ellenségek. Amit ebb l a térképprogramba fel tudunk majd használni, az a 3.0-ás verzió, ám roppant hasznos lehet egy jól m köd 4.0-ás is, más feladatok megoldására..[ ] avoiding obstacles, avoiding enemies, and minimizing costs (fuel, time, distance, equipment, money, etc.) [2] A játék szempontjából tárgyalom én is a problémát, persze ett l könny elvonatkoztatni. Akadályokat el kell tudnia kerülni 76/7.
8 POSEIDON NAVIGATION PROJECT IAR IRODALOMKUTATÁS az algoritmusnak, szintúgy ellenségeket (mondjuk autókat: ha gyalog megyünk, nem mehetünk rá az útra sem). És ha lehet minimalizálni kell a költségeket. Ez egy összetett kérdés, mivel adott utaknak különféle költségei lehetnek, attól függ en, hogy milyen néz pontból vizsgáljuk. Nézzünk erre egy egyszer példát: van egy távolság, ami autópályán haladva 50 km távolságban van, de létezik egy földút is, amin haladva 20km alatt el tudjuk érni célunkat. Autópályán haladva 100 km/h-val tudunk haladni, míg földúton esetleg csak 30-al. A sok fékezés és rossz utak miatt a földúton járm vünk kétszer annyit fogyaszt, mint a kényelmes autópályán. Mindezek után, ha a legrövidebb utat akarjuk, akkor a földutat választjuk, ismerve kocsink tulajdonságait, de a hosszabb autópálya a benzin, a kocsi állapota szempontjából megfelel bb költségekkel rendelkezik. At one extreme, a sophisticated pathfinder coupled with a trivial movement algorithm would find a path when the object begins to move and the object would follow that path, oblivious to everything else. [2] Bonyolultan szép az élet, azaz fel kell készülni arra az esetre is, hogy az objektumok a kés bbiekben nevezzük ezeket átvitt értelemben ellenségnek (de ide értve saját társainkat is, ha mondjuk egy RTS játékban gondolkozunk) mozognak, így minden ilyen ellenség pontot újra kell vizsgálni minden megtett lépés után, és a legrövidebb, avagy legkisebb költségekkel rendelkez utat újra számolni. Fontos dolog az is, hogy nehogy beragadjunk, és pár adott pont között mozogjunk, emlékezet segítségével erre el re fel kell készítenünk algoritmusunk. Ez a memória, változó méret lehet, egy dinamikus lista segítségével a gyakorlatban az élethez lehet majd igazítani Csapdák [1. ábra Csapda] Az [1. ábra]-n szürkével jelölt területet nevezhetjük csapdának. Ugyanis az els képen azt láthatjuk, hogy a kiinduló ponttól észleljük a célt, de mikor odaérünk, rájövünk, hogy akadály van el ttünk. Amennyiben látjuk el re a teljes akadályt, avagy elérünk egy olyan pontot (detect obstacle here), ahonnan már látjuk, akkor a csapdát elkerülve sokkal rövidebb úton elérhetjük a célt. Természetesen, ha a cél a szürke részen belül van, akkor az nem csapda abban a szituációban Algoritmusok alapja Számos útkeres algoritmus a [2. ábra]-hoz hasonló grid-et használ. A 2D-s képen jelöltek a kapcsolódási pontok, azaz hogy honnan hova lehet eljutni. A 76/8.
9 POSEIDON NAVIGATION PROJECT IAR IRODALOMKUTATÁS gyorsabb algoritmus érdekében ezt a módszert érdemes megfontolni, és felhasználni a térkép grafikus felületén, hogy ott sem minden pixelt veszünk figyelembe, hanem mesterségesen felosztott grid pontokat! (esetleg lehet ség van a teljesen pontos pixeles felosztásra is, ahol nemcsak derékszög irányváltások léteznek, hanem 360 fokosak is, de elképzelhet ennek lassúsága) [2. ábra Grid] Dijkstra algoritmusa és a Best-First-Search Dijkstra's algorithm is guaranteed to find a shortest path from the starting point to the goal, as long as none of the edges have a negative cost. [2]. Azaz Dijkstra algoritmusa garantálja nekünk a legrövidebb út megtalálását a start és cél pont között. [3. ábra Dijkstra] A [3. ábra]-n látható a kiinduló pont középen, és a kék célpont. A kékes színek azok a területek, amelyeket az algoritmus szkennelt. A Best First- Search (továbbiakban BFS) algoritmus ehhez nagyon hasonlóan m ködik, de tartalmaz számos heurisztikát, hogy pl. milyen messze van a cél. BFS is not guaranteed to find a shortest path [2], azaz a BFS nem garantálja a legrövidebb utat, de sokkal rövidebb id alatt talál megoldást. A [4. ábra]-n a sárga pont jelöli, hogy magas heurisztikus értéke van, azaz messze van a céltól, és fekete jelöli az alacsonyat. [4. ábra - Best first serach] 76/9.
10 POSEIDON NAVIGATION PROJECT IAR IRODALOMKUTATÁS Ez mind nagyon szép, de nézzük most olyan példát, amikor a térképen akadályok vannak: az [5. ábra] bal oldalán Dijkstra algoritmusát, míg a jobb oldalán a BFS-t láthatjuk. [5. ábra Akadályok] The trouble is that BFS is greedy and tries to move towards the goal even if it's not the right path. [2] A lényeg, hogy bár a BFS egyszer esetekben gyorsnak nhet, egy kis probléma esetén a futási id már sokkal kevésbé szembet bb, ám a megoldás jósága nem is hasonlítható Dijkstra útkeres algoritmusához. Nézzünk most egy olyan algoritmust, mely a fenti két algoritmus el nyeit egyesíti Az A* algoritmus A* can guarantee a shortest path [2]. S t, ezen kívül heurisztikákat is tartalmaz! Tehát lényegében teljesíti azt, amit fentebb írtam: el nyöket egyesít. Nemhiába: A* is the most popular choice for pathfinding [2] (a legnépszer bb algoritmus), mivel rendkívül rugalmas, és széles körben használható. [6. ábra - A* algoritmus] Egy kis magyarázat a [6. ábra]-hoz: a sárga (h) szín jelöli a céltól való távolságot, a cián (g) pedig a kezd ponttól mért távolságot. N csúcs van a képen, g(n) reprezentálja az út súlyát a kezd ponttól minden csúcsra. H(n) pedig a heurisztikus értékét képviseli minden pontnak. Így a legrövidebb út f(n) el áll g(n) és h(n) összegeként. A technikai, matematikai és implementálási részleteket a From Game To Map fejleszt i kézikönyvében olvashatóak lesznek. 1 1 Jelen dokumentáció készültekor a From Game To Map szimulációs program, és így a hozzá tartozó leírás sem készült el. E feladatok megvalósítása egy kés bi fázisban fog el kerülni. 76/10.
11 POSEIDON NAVIGATION PROJECT IAR IRODALOMKUTATÁS A HULLÁMTOVÁBBTERJESZTÉSES ALGORITMUS [3] Valójában két technikáról van szó, mely nagyon hasonló ötleten alapszik. Maga az el fejezetben említett grid itt is létezik, és itt is hasonló elven tudjuk eldönteni az akadályok helyzetét. Ráadásul az el fejezetben tárgyalt Dijkstra algoritmusa is ránézésre egyféle hullámterjedést mutatott be, és az is rögtön ki fog derülni, hogy az övé gyorsabban szolgáltat eredményt, mivel ott nem szükséges az egész területet el re ismerni, így szükségtelen bejárni is. Ellenben itt el re elkészítünk egy mátrixot a teljes térképre nézve. A mátrix elemei itt is bizonyos szempont szerinti heurisztikákat fognak tartalmazni. A hullám továbbterjesztéses algoritmus egy legrövidebb utat fog megtalálni, avagy egy lehetséges ilyen utat, a legbiztonságosabb út algoritmus pedig azt az utat adja meg, ami a lehet legjobban elkerüli az akadályokat. Azon, hogy egy algoritmus heurisztikákat tartalmaz, azt értjük, hogy ráérzésre kipróbálunk egy lehet séget a számunkra elérhet számos útból, majd ha megtéve ezt a lépést el rébb jutottunk célunk felé, akkor meghagyjuk, különben visszalépünk Legrövidebb út Nézzük, hogy is m ködnek ezek az algoritmusok. A [7. ábra]-n fogunk vizsgálódni [7. ábra Térkép] A célunk az, hogy a lehet legmagasabb heurisztikus értékkel rendelkez ponttól (a kiinduló pont a legmagasabb érték, hiszen ez van a legmesszebb a céltól a mi szempontunkból!) eljussunk a legalacsonyabb pontig, a 0-ig, azaz a célig (heurisztikus értéket azonosítom a céltól való távolsággal, ami nem teljesen egyértelm megfeleltetés). A cél távolsága a céltól 0. Az akadályokat egyel alacsonyabb értékkel jelöljük, mint a start pontot, de ennek csak az algoritmus szempontjából van lényeges szerepe (minden cellaérték a példában egy byte-os adatot képes tárolni, ezért vannak így a határok). 76/11.
12 POSEIDON NAVIGATION PROJECT IAR IRODALOMKUTATÁS El ször a hullám-továbbterjedéses algoritmust nézzük. Legels lépésben fel kell töltenünk a mátrixunk még üres mez it. A céltól fogunk elindulni, és minden szomszédos pontra feljegyezzük, hogy milyen messze van a céltól, azaz mekkora a heurisztikus értéke. Így fog kialakulni a hullámunk. Ezt mutatja a [8. ábra] [8. ábra - Egyszer hullám] Feltesszük természetesen, hogy átlósan is tudunk menni, azaz minden esetben, ha nincs akadály, nyolc irány közül választhatunk. A lehetséges út esetében nincs garantálva az, hogy ez a legrövidebb út lesz, mivel ez fog függni a konvencióktól. Az út úgy fog felállni, hogy a kiindulási ponttól most elindulunk, és mindig a legalacsonyabb heurisztikus pont felé fogunk lépni. A hullám tulajdonsága miatt arra, hogy beakadjunk két pont között, nincs esély, hiszen biztos, hogy lesz legalább egy, egyel alacsonyabb pont minden mez szomszédságában. Miért is van szükség járulékos szabályokra? El fordulhat, ráadásul elég s n, hogy egy adott pontból több irányba is tudunk menni! Ahhoz, hogy egyértelm utat tudjunk meghatározni, ilyenkor meg kell tanítani az algoritmust arra, hogy melyik utat válassza. Ezért egy prioritási sorrendet érdemes felállítani a nyolc lehetséges irány között. Erre egy lehetséges példa a [9. ábra] [9. ábra - Prioritási sorrend] Minél nagyobb a prioritása adott iránynak, annál túlél bb lesz, ha dönteni kell. A [9. ábra] táblázatának a függvényében fog változni maga az út is, ezért nem biztosítható, hogy a legrövidebb utat fogjuk megtalálni. Ezen prioritási kiosztásnak a lehet ségei végesek, így esetlegesen megoldás az, hogy minden lehet ségre megnézzük az utakat, és a legrövidebbet ebb l ki tudjuk választani, de ez meglehet sen lassú megoldás. Esetleg ha még gyorsabb megoldást akarunk, nem alkalmazunk prioritási sort, hanem véletlenszer en fogunk döntéshelyzetben választani. Így is biztos, hogy találunk utat a kiindulási pont és a cél között, és nincs szükség konvenciók meghatározására. A [10. ábra]-n a fenti prioritási sor, és a térképünk által meghatározott utat látjuk. 76/12.
13 POSEIDON NAVIGATION PROJECT IAR IRODALOMKUTATÁS [10. ábra - Els megoldás] Példaképpen nézzünk meg egy másik megoldást is egy másik prioritási mátrix alapján ([11. ábra]). [11. ábra - Második megoldás] A példából is jól látszik, hogy bár egyértelm en más utat találtunk meg, ez is tíz közbüls lépést tartalmaz. Ebb l is látszik, hogy a prioritási mátrixok közötti különbség szinte mérhetetlen, így nem érdemes az összes lehetséges utat megkeresni, és kiválasztani bel lük a legrövidebbet. Még abban sincs különbség a két eset között, hogy hányszor léptünk átlósan, mindkét esetben kilencszer történt ez meg. Úgy kezdtem a hullám-továbbterjesztéses algoritmus leírását, hogy nem biztosítja a legrövidebb utat. Ez hamis feltevés volt, csupán azért állítottam, mert nem voltam meggy zve arról, hogy a prioritási mátrix egy viszonylag általános esetben nem befolyásolja az eredményt. Mivel a fent vázolt algoritmusnak létezik hatékonyabb változata is, gyorsan át is térek azok tárgyalására Hullám-továbbterjesztéses algoritmus finomítása A fenti eredményeket tudjuk pontosítani, amennyiben a hullám terjedését nem nyolc irányba követjük el, hiszen így az átlós iránynak megegyez súlya van a vízszintes, avagy függ leges iránnyal. Nézzünk egy olyan példát, mikor a hullám csak négy irányban terjed ([12. ábra]). 76/13.
14 POSEIDON NAVIGATION PROJECT IAR IRODALOMKUTATÁS [12. ábra - Négyirányú hullám] Bár az rögtön szembet nik, hogy több súlyra volt szükségünk, mint az el esetben, de ez nem befolyásolja az algoritmus futási idejét, és a megoldás ([13. ábra]) valamivel életszer bb lesz (itt is a már sokszor használt nyolcirányú prioritási sort alkalmazva) [13. ábra - Jobb megoldás] Ebben az egyszer példában a kapott megoldás egyetlen egy pontban tér el az els esett l, mégpedig a cél el tt két átlós lépés helyett itt két vízszintes mozgás is elég volt, ami azt jelenti, hogy rövidebb utat kaptunk! Ezek után lehet még jobban pontosítani a számításokat. Most 4+4 irányban fog terjedni a hullámunk, ahol a vízszintes és függ leges terjedés egységnyi, míg az átlós irányok kiszámítva a négyzet átlójának méretét SQRT(2) súlyt kapnak. Ez egy nagyon csúnya irracionális szám, a számítógép megfelel en nagy térkép esetén nem adna elfogadható id n belül megoldást a számítások id igénye miatt (viszonyítva az el algoritmusokhoz), így egy közelít értékkel célszer számolni, mondjuk 7/5-el (1.4 az ~ helyett)([14. ábra]), melyet aztán felszorozva 5-el ([15. ábra]) minden egyes mez re egész számot kapunk, melyekkel a processzor gyorsabban tud számolni. 76/14.
15 POSEIDON NAVIGATION PROJECT IAR IRODALOMKUTATÁS 12,20 11,20 10,80 10,40 10,00 9,60 9,80 8,80 8,40 8,00 11,80 10,80 9,80 9,40 9,00 8,60 254,00 7,80 7,40 7,00 11,40 10,40 9,40 8,40 8,00 7,60 254,00 6,80 6,40 6,00 11,00 10,00 9,00 8,00 7,00 6,60 6,20 5,80 5,40 5,00 10,60 9,60 8,60 7,60 6,60 5,60 5,20 4,80 4,40 4,00 11,00 10,00 9,00 254,00 6,20 5,20 4,20 3,80 3,40 3,00 11,40 10,40 10,00 254,00 5,80 4,80 3,80 2,80 2,40 2,00 11,80 11,40 11,00 254,00 5,40 4,40 3,40 2,40 1,40 1,00 12,80 12,40 12,00 254,00 5,00 4,00 3,00 2,00 1,00 0,00 255,00 13,40 13,00 254,00 5,40 4,40 3,40 2,40 1,40 1,00 [14. ábra - Pontos hullám] [15. ábra - Felszorzás] [16. ábra - Pontos megoldás] A megoldás ([16. ábra]) megegyezik az el bb kapott eredménnyel, azonban sokkal általánosabb esetben ez még pontosabb megoldást szolgáltat. Ha összeadjuk az út során érintett súlyokat, és elosztjuk 5-el az eredményt, akkor kisebb számot kapunk, mint a négy irányú hullám esetében. Ez a kapott szám a súlyokra nézve pontosabb, bár az út fizikailag nem lesz rövidebb (ebben a példában). Az els pont amire rálépünk 12,40-es súlyú (62/5), míg az el esetben ez 16 volt, ami nyilvánvalóan pontatlanabb távolság érték. 76/15.
16 POSEIDON NAVIGATION PROJECT IAR IRODALOMKUTATÁS Legbiztonságosabb út, Voronoi diagramm Nézzünk most meg egy másik hullám-továbbterjesztéses algoritmust. Ennek tehát a lényege a legbiztonságosabb út megkeresése. Itt a fentiek alapján már nem fogok kételkedni abban, hogy ez e a lehet legbiztonságosabb út. A módszer itt is nagyon hasonló, csak most úgy fogunk eljutni a célhoz, hogy mindig a lehet legnagyobb értéket választjuk. Ez azért lesz így, mivel most a hullámokat az akadályoktól (254-es pontoktól) fogjuk kezdeni terjeszteni, így a heurisztikus értékek az akadályoktól mért távolságot fogják jelenteni. Minél nagyobb ez a szám, annál messzebb vagyunk t lük. Nézzük a mátrix feltöltését ([17. ábra]), figyelembe véve most azt is, hogy a térkép széle is akadálynak számít, így nekünk azt is a lehet legjobban el kell kerülnünk [17. ábra - A legbiztonságosabb út hulláma] A prioritási mátrixunk legyen itt is a már megismert ([9. ábra]). Mindezek után a lehet legbiztonságosabb utat a [18. ábra] mutatja [18. ábra - A legbiztonságosabb út] A fenti példából egy nagyon fontos dolog hiányzik! Mégpedig az, hogy a legbiztonságosabb út keresése közben mi nem egy utat kapunk (a fenti eset kivétel), hanem egy gráfot! Egy adott utat úgy kapunk, ha ennek a gráfnak egy adott (pl. mélységi) bejárását felírjuk. A kapott eredmények közül, ha a legrövidebb utat 76/16.
17 POSEIDON NAVIGATION PROJECT IAR IRODALOMKUTATÁS keressük a gráfban, akkor a lehet legbiztonságosabb és legrövidebb utat fogjuk megkapni. Ezt próbálja szimulálni a [19. ábra] [19. ábra - Másik térkép] Ebben az esetben is prioritási sort használtam, az elején lév kacifántos gráf értelmezését a [20. ábra] mutatja be. [20. ábra - Ábra pontosítása] De ha gráfokról van szó, akkor nincs is szükség itt most prioritási sorra. Jól látszik, hogy a térképen lefelé haladva is van egy hasonlóan biztonságos út, azt mi mégsem találtuk meg. Nézzük prioritási sor nélkül ([21. ábra]) [21. ábra - Prioritási sor nélküli megoldás] Az így kapott gráfból bármely bejárással a legbiztonságosabb utat kapjuk meg. A színekkel azért jelöltem az egyes lépéseket, hogy egyértelm legyen, hogy a 255-ös mez l gráf él csak a kettes mez höz vezet, így onnan nem is mehetünk egyik egyesre sem a gráf bejárása során. A keletkezett gráfot a [22. ábra] mutatja be. 76/17.
18 POSEIDON NAVIGATION PROJECT IAR IRODALOMKUTATÁS [22. ábra - A keletkezett gráf] Egyetlen egy járulékos szabályt vezettem be a gráf háló felépítése közben: amikor egy pontra nézem a szomszédokat, hogy adott pontból merre lehet továbbhaladni, akkor két változat létezik: 1. Van olyan pont, amin még nem jártam. 2. Nincs olyan pont, amin még nem jártam. Az els esetben a szabályom az volt, hogy ilyen esetben minden olyan ponthoz tartozik él, amin még nem jártam, és amin már jártam, ahhoz nem tartozik. A második esetben pedig minden olyanhoz vezet él, amin már jártam. A fenti járulékos szabályok bevezetésével a legrövidebb, legbiztonságosabb utak mindegyikét meg lehet határozni (megjegyzem, hogy a járulékos szabályokra biztosan más lehet ség is van, hogy hasonló eredményt kapjunk) Megjegyzések A fent ismertetett legbiztonságosabb út megkeresésére biztosan létezik másféle algoritmus is, itt csak azért említettem meg, mert hasonlóan m ködik a legrövidebb utat szolgáltató algoritmushoz Implementálás Kicsit rátérek arra, hogy ezen algoritmusok miképpen építhet k be m köd programokba 2. Felmerül a kérdés, hogy minden esetben szükségünk van-e arra, hogy a teljes térképet el re kiszámoljuk. Én úgy vélem nincs. Dijkstra algoritmusa alapján addig terjesztjük a hullámunkat, amíg a hullám egyik pontja el nem éri a kiindulási pontunkat (255). Ezek után az út keresése már egyértelm. A hullám terjedését kell még valahogyan modellezni. A célnak létezik egy i, és j koordinátája. Ezen koordináták körül koncentrikus négyzetekkel végighaladunk, és minden esetben a környékén lév kisebb koncentrikus négyzet elemeit vizsgálva a lehet 2 A From Game To Map leírásában részleteiben is találkozhatunk majd az implementációval, de a dokumentáció jelenlegi állapotában ez a leírás nem elérhet. 76/18.
19 POSEIDON NAVIGATION PROJECT IAR IRODALOMKUTATÁS legkisebb értékhez adunk hozzá 5-öt (1*5), vagy a pontosabb eredmény érdekében az átlós értékekhez 7-et (1.4*5), a többihez 5-öt, és ezek után keressük meg a legkisebb új értéket, amit beírunk az aktuális helyre. 76/19.
20 POSEIDON NAVIGATION PROJECT IAR IRODALOMKUTATÁS GRÁFOK, MINIMÁLIS KÖLTSÉGTÉRÍTÉS FESZÍT FA, ÉS A LEGRÖVIDEBB ÚT [4] Néhány definíció Hurok él: olyan él, melynek kezd és végpontja azonos csúcsból indul, illetve érkezik. Szomszéd pontok: A és B szomszéd pontok, ha a gráfban van él A és B között Fokszám: Megadja, hogy egy adott pontra hány él illeszkedik. Izolált pont: olyan pont, amelyre nem illeszkedik él, azaz fokszáma nulla. Többszörös élek: Ugyanazon kezd és végpontokat tartalmazzák Gráfok Sokféle gráf létezik (a gráf egy absztrakt adatszerkezet), és mindegyiknek megvan a maga felhasználási területe. Csak felsorolás szinten nézzük ezeket végig: Egyszer összefügg gráf Egyszer nem összefügg gráf Irányított összefügg gráf Irányított nem összefügg gráf Súlyozott összefügg gráf Súlyozott nem összefügg gráf Irányított és súlyozott összefügg gráf Irányított és súlyozott nem összefügg gráf Speciális gráf (hurokmentes, minimum távolság limit, többszörös élek stb ) Természetesen a teljesség igényével azokat írtam fel, amelyekkel én már találkoztam. A térképprogramhoz nekünk egy súlyozott és irányított összefügg gráfra lesz szükségünk, ami nem hurokmentes, tartalmazhat többszörös éleket, és az összefügg sége néhány speciális esetben megbomolhat, de a hatékonyság miatt az ilyen helyzeteket kerülni kell Gráfok ábrázolása Erre is többféle módszer létezik, és a legtöbb esetben függ a gráf típusától. Nézzünk el ször egy egyszer gráfot, amit statikus adatstruktúrával tárolunk (nagyon redundáns megoldás). A kapcsolatmátrixszal történ tárolást a [23. ábra] mutatja. X H I H I H H H 2 I H I H H I H 3 H I H I I H H 4 I H I H H H H 5 H H I H H I I 6 H I H H I H I 7 H H H H I I H 76/20. [23. ábra - Kapcsolatmátrixos ábrázolás]
21 POSEIDON NAVIGATION PROJECT IAR IRODALOMKUTATÁS Talán jól látszik az ábráról pár dolog: Egy adott i, j a mátrixban I (igaz) vagy H (hamis) érétket vehet fel. Adott i, j igaz lesz, ha i és j között létezik él. A f átlón lév értékek mindig hamisak, amennyiben a gráfban nincsenek hurok élek. A statikus mátrix a f átlóra szimmetrikus. Lehet ség van dinamikus tárolásra is, ezt a [24. ábra] alapján lehet elképzelni. [24. ábra - Szomszédsági lista] Ezt a tárolási elemet nevezik szomszédsági listának. A harmadik lehetséges módszert már nem rajzolom fel, de könnyen el lehet képzelni egy teljesen dinamikus struktúrát, melynél a statikus mutató vektort felváltja egy olyan dinamikus adatszerkezet, mely elemeinek két mutató mezeje van. Tegyük fel, hogy az új gráfunk súlyozott és irányított, vannak benne többszörös élek. Ekkor a kapcsolatmátrixát a [25. ábra] prezentálja (a gráf ábrája nem méretarányos). X [25. ábra - Súlyozott, irányított gráf] Ami látszik a kapcsolatmátrixról: Megsz nt a szimmetria az irányítottság miatt. Csak ott szimmetrikusak az értékek, ahol többszörös él van. Ott, ahol nincs él, ott 0 szerepel. Megjegyzés: természetesen nem véletlen a fenti példa. Ez az az adatszerkezet, amit egy térképprogramban leginkább fel lehet majd használni. Ott, ahol többszörös élek vannak, az élek hossza egyenl hosszúságú. Ez jelöli a kétirányú utcát, amit 76/21.
22 POSEIDON NAVIGATION PROJECT IAR IRODALOMKUTATÁS csupán két gráf-ponttal jelölünk meg (ha mondjuk 2x4 sáv van, akkor azt négy gráfponttal el nyösebb megjelölni). Minden egyes gráf pontban három értéket tárolunk: két koordinátát, valamint egy tengerszintt l mért magasságot. A súlyokat egy segédprogram fogja kiszámítani, figyelembe véve mind a három értéket. Az irányítottság adataira meg kell tanítani a programot Minimális költségtérítés feszít fa A feszít fa fogalma: Egy g gráfnak egy másik F gráf feszít fája, ha F tartalmazza G összes pontját, további pontokat nem tartalmaz és G élei közül annyit tartalmaz, amennyi F-et összefügg vé teszi, de F körmentes (fa). A minimális költség feszít fa fogalma: Egy G gráf minimális költség feszít fája az a fa-gráf, amely feszít fája G-nek, és G összes lehetséges feszít fája közül éleinek összes hossza a legkisebb (elképzelhet több megoldás is). Algoritmusa MinfeszFa(i) PriSorInit(Sor) Segéd.pont:=i Segéd.súly:=0 PriSorBa(Sor,Segéd) Érintett(i):=0 Ciklus PriSorBól(Sor,Segéd) i:=segéd.pont ÉletBeilleszt(Fa,Érintett(i),i) Ciklus j:=1-t l N-ig Ha A(i,j)>0 akkor Ha Érintett(j)=NEMÉRINTETT akkor Segéd.pont:=j Segéd.súly:=A(i,j) PriSorba(Sor,Segéd) Érintett(j):=i különben VanRövidebb(Sor,j,A(i,j),Volt) Ha Volt akkor Érintett(j):=i elágazás vége elágazás vége elágazás vége Ciklus vége amíg nem(prisorüres(sor)) Eljárás vége 76/22.
23 POSEIDON NAVIGATION PROJECT IAR IRODALOMKUTATÁS Megjegyzések: NEMÉRINTETT Életbeilleszt (G,x,y) VanRövidebb (Sor,a,b,Volt) az az érték, amely jelzi, hogy egy adott pontot a bejárás során már érintettünk, vagy sem. Kezdetben Érintett() vektor minden eleme ezt tartalmazza. a G gráfba az x,y pontok közé élet illeszt be megvizsgálja, hogy szerepel-e az a pont a prioritási sorban, ha igen, akkor megvizsgálja, hogy a b súlynál nagyobb-e az ott szerepl pont súlya. Ha igen, akkor kicseréli ezt a pontot az a pontra, amelynek b a súlya. Ha a sor így módosul, akkor Volt=igaz lesz Legrövidebb út [4] A legrövidebb út fogalma A legrövidebb út fogalmát kétféleképpen értelmezhetjük: A kiindulópontból a végpontig milyen úton kell haladnunk, hogy kevesebb csomóponton lépjünk át, mint bármely más úton? Ennél a feladatnál akár súlyozatlan, akár súlyozott, kezelhetjük úgy a gráfot, mintha éleinek hosszúsága (súlya) egységnyi lenne. A kiindulópontból a végpontig milyen úton kell haladnunk, hogy az utat alkotó élek összes hossza kisebb legyen, mint bármely más út esetén? Ennél a feladat természetesen súlyozott gráfot feltételez. Egyértelm en látszik, hogy a második eset sokkal általánosabb, ráadásul a térképprogramhoz is ez van közelebb, így ezzel foglalkozok a továbbiakban. A probléma megoldására számos algoritmust dolgoztak ki. Ezek közül alapvet nek számít a neves holland matematikus Dijkstra 1959-ben közölt algoritmusa, ezért itt is ezt ismertetem. Az algoritmus lényege Lássuk el a gráf minden pontját egy címkével, amely a következ adatokat tartalmazza: a pillanatnyilag ismert legrövidebb úton az adott pont milyen távolságra van a kiindulóponttól (kezdetben legyen ez az adat minden pont esetén végtelen nagy) az adott pontnak melyik az a szomszédos pontja, amely fel l haladva az el bbi távolságot kaptuk Egy csomópont címkéje kétféle lehet: ideiglenes: még lehetséges, hogy más irányból rövidebb utat is találunk hozzá a kiindulópontból állandó: a kiindulópontból már minden hozzá vezet utat megvizsgáltunk, s rövidebb út nem lehetséges Az algoritmus lényege az, hogy meghatározzuk minden pont legrövidebb távolságát a kiindulóponttól számítva, s mivel minden pont címkéje tartalmazza azt 76/23.
24 POSEIDON NAVIGATION PROJECT IAR IRODALOMKUTATÁS is, hogy ezen úton melyik pont el zi meg, a végponttól visszafelé haladva meghatározhatjuk a két pont közötti legrövidebb utat. Nézzük ezt most egy példán keresztül ([26. ábra]). 76/24.
25 POSEIDON NAVIGATION PROJECT IAR IRODALOMKUTATÁS Az algoritmus részletesebben [26. ábra - A legrövidebb út algoritmus] 1. Inicializáljuk a gráf-pontok legrövidebb útjait tároló adatszerkezetet. 2. Az aktuális pont legyen a kiinduló pont 3. Járjuk be az aktuális pont minden ideiglenes szomszédját (szélességi bejárás). Ha találunk olyan szomszéd pontot, amelyhez az aktuális pont fel l rálépve rövidebb úton jutnánk el a kiinduló ponttól, mint a címkében rögzített korábbi irányból, akkor e pont címkéjét módosítjuk. A módosítás: a kezd ponttól mért távolságnak beírjuk az új irányból mért távolságot, a megel pont helyére pedig az aktuális pontot. 4. A gráf összes ideiglenes címkéjét megvizsgálva kiválasztjuk azt a pontot, amely az ideiglenesek közül a legrövidebb úton érhet el a kezd pontból, vagyis azt, amelyiknek a címkéjében a hosszúság értéke a legkisebb. E pont címkéjét véglegesre állítjuk, ezzel jelezve, hogy e ponthoz nem vezethet a már bejegyzettnél rövidebb út. 5. Legyen most az így kiválasztott pont az aktuális. 6. Ismételjük a 3. részt l a m veletet egészen addig, amíg az aktuális pont azonos nem lesz a végponttal. Az algoritmus pszeudokódja LegrövidebbÚt (A, kezd, vég, N) Init(állapot) aktuális:=kezd állapot[aktuális].hossz:=0 állapot[aktuális].címke:=végleges ismétlés SzomszédokBejárása(A,N,aktuális,állapot) aktuális:=minimum(állapot,n) állapot[aktuális].címke:=végleges amíg aktuális=vég EredményKiírása(állapot,kezd,vég) Eljárás vége 76/25.
26 POSEIDON NAVIGATION PROJECT IAR IRODALOMKUTATÁS SzomszédokBejárása(A,N,aktuális,állapot) Ciklus i:=1-t l N-ig Ha (A[aktuális,i]<>0) és (állapot[i].címke=ideinglenes) akkor Ha (állapot[aktuális].hossz+a[aktuális,i])<állapot[i].hossz akkor állapot[i].el :=aktuális állapot[i].hossz:= állapot[aktuális].hossz+a[aktuális,i] Elágazás vége Elágazás vége Ciklus vége Eljárás vége A fenti algoritmusban A jelöli a gráf kapcsolatmátrixát, N pedig a gráf pontjainak számát Szimulációs program: Graphs and spanning trees A gráf témakörébe számos algoritmus tartozik: bejárások, keresések, az eddig ismertettett algoritmusok valamint ezek továbbfejlesztése. A Graphs and spanning trees nev alkalmazás ezen eljárásokat fogja össze, teszteli, valamint a gráfok elkészítésért is felel s. A részletek a program fejleszt i kézikönyvében olvashatók Megjegyzések A példákban úgy szerepeltek a súlyozott gráfok, hogy minden élnek a súlya meghatározta az él által összekötött két gráf-pont távolságát. Ez mindenképpen fontos dolog, mindenképpen tárolva is lesz a térképprogramban, hiszen így lehet majd arányosan ábrázolni a térképet (maguk a számértékek pontos méréssel, és esetlegesen nagyon pontos GPS koordináták segítségével lesznek kiszámolva). Ezen felül minden egyes élnek lesz más súlya is! Például lesz egy olyan számérték, ami azt határozza meg, hogy az úton milyen gyorsan lehet közlekedni. Mondjuk az autópálya kap egyes értéket méterenként, a földút meg mondjuk 3,5-öt méterenként (az értékek paraméterek, valószín leg a tesztelés fogja véglegesíteni ket). Így amikor az ember utat keres, a program különféle utakat fog neki javasolni, és megmondja, hogy melyiket milyen célra szánta (legrövidebb út, legrövidebb id alatt megtehet út, csúcsforgalmat elkerül út, közlekedési lámpákat elkerül út, stb ). 3 Jelen dokumentáció elkészültekor a teljes szimulációs program még nincsen kész. 76/26.
27 POSEIDON NAVIGATION PROJECT IAR IRODALOMKUTATÁS A POSEIDON NAVIGATION PROJECT ÉS A GPS A globális helymeghatározó rendszer a GPS [7] Ma olyan korban élünk, mikor a technika vívmányai, eredményei a médián keresztül, mint szenzáció, mindenki számára elérhet vé válnak. Ez az alfejezet a GPS technikai részleteit vizsgálja, melyek kevésbé ismertek a felhasználók körében. Miel tt a GPS kisebb-nagyobb részleteit bemutatnám, azért azt meg kell jegyezni, hogy nem ez az egyetlen navigációs eszköz manapság. Oroszország a GLONASS-t (Global Navigation Satellite System), míg Európa az EGNOS-t (European Geostationary Navigation Overlay System) üzemelteti. Ráadásul együttes használatukkal még pontosabb eredmény érhet el! Egy kis történelem A GPS-t ma már használják pontosabb térképek készítésére, földmérésre, és természetesen a legszélesebb körben mozgó járm vek navigálására, de ez nem mindig volt így. Mint elég sok minden, ez is katonai célokból jött létre, ma azonban gyakorlatilag mindenki számára elérhet, és ingyenes! Az Amerikai Védelmi Hivatal indította kifejlesztését, egyértelm en katonai, hadászati célokból. Bár maga az ötlet fantasztikus, a megvalósítása szinte lehetetlen! Egy helymeghatározó készüléknek els sorban pontosnak, gyorsnak, kicsinek, bárhol, bármikor elérhet nek kell lennie. Jelenleg a GPS az, ami a felsorolt követelményeket a lehet legjobban teljesíti. Pár száz évvel ezel tt irányt kkel, szextánssal, térképpel, egy órával, vonalozóval valamint kis hozzáértéssel lehetett mindazt elérni, amire ma sokkal gyorsabban szakértelem nélkül is bárki képes. Tengerpartok mellé világítótornyokat építettek, építenek (!), melyekben egy körbe forgó lámpa segítségével lehet meghatározni az északi irányt. Mi a helyzet ma? Szerencsére nekünk már egyszer bb dolgunk van. Csupán 24 darab Block II-es holdat kellett fell nünk km magasságba világítótornyok építése helyett. Ezen holdak neve NAVSTAR, és a Rockwell International gyártotta ket. Súlyuk az rben mérve 862 kg, nyitott napelemekkel 5,2 méter hosszúak. Tizenkét óra alatt kerülik meg a Földet, tervezett élettartamuk 7,5 év. A jöv ben majdan 21 darab Block II Martin Marietta m holdat fognak kil ni. Sajnos nem elég e m holdakat körülbelül kil ni, majd otthagyni. Nagyon pontos koordinátákon kell mozogniuk, hiszen így tudunk majd a Földön is pontos eredményekhez jutni (egy TV m hold esetében ekkora pontosságra nincs szükség). Sajnos az rben e m holdak ütköznek kis törmelékekkel, érik ket egyéb természeti jelenségek (Nap gravitáció, napszél nyomása, stb.), melyek miatt változtatják pályájukat. Hogy ilyenkor korrigálni lehessen a hibát, öt földi követ állomást építettek fel: Hawaii-on, Ascension Islandon, Diego Garcia-án, Kwajalein-en és Colorado Springs-en. Ezen állomások költségvetése nem olcsó dolog mégis azoknak, akik használják a GPS-t, ezért sem kell fizetniük. Az állomások módosító jeleket küldenek a m holdaknak, melyek ezt figyelembe véve a vev k felé is elküldik az igazítást. 76/27.
28 POSEIDON NAVIGATION PROJECT IAR IRODALOMKUTATÁS Van számos m hold felettem, van egy vev m, mib l fogja tudni a m hold, hogy hol vagyok? Ez a sok fejlett készülék nekünk "összesen" annyira elég, hogy a m hold és a vev távolságát meg tudjuk határozni. Ezzel persze a halandó ember nem tudna mit kezdeni, kapna egy húszezer akármennyi értéket, de ha már több m holdról van ilyen adatunk, akkor a vev be épített kis számítógép kiszámolja helyettünk az eredményt. Ha egy hold adatait fogjuk (X távolságot), akkor abból annyi információt tudunk, hogy egy X sugarú gömbön helyezkedünk el valahol. Ha már két távolságunk van, akkor két gömb metszéspontjain állunk, ami egy kör (vagy egy pont), így már lényegesen pontosabb adatunk van. Minél több a látott m holdak száma, annál pontosabb lesz helyzetünk meghatározása. A holdak úgy vannak elhelyezve, hogy elvileg a Földön bárhonnan öt holdat láthatunk! (Ez áll a GPS vezértervben, melyet márciusában, a 24. m hold fellövése után adtak ki.) Ha három holdról kapunk távolság-információt, akkor már csak két pont között kell döntenie a vev nek, és általában ilyen esetben az egyik pont vagy nagyon a felszín alatt, vagy felszín felett van, így könnyen kizárható. Ha nem lehet kisz rni, akkor a negyedik m hold adatiból már csak az a pont jöhet szóba, ahol állunk. Ilyen egyszer... :) Ahhoz, hogy távolságot tudjunk mérni, nagyon pontos id mér eszközre van szükségünk mind a m holdakon, mind a vev n (a rádiójel futási idejét kell mérni, ami km/h sebesség ). Minden egyes m holdon egy atomóra üzemel, mely szinkron jeleket küld a vev k felé, hogy a vev k órája is teljesen pontos legyen. Ha épp a fejünk felett található a m hold, akkor 0,06 másodperc az az id, amit mérnie kell a m holdnak, ezért van szükség az atomórára. De ett l még nem kapnánk pontos megoldást! Egyszerre kell tudnia az eredményt mind a vev nek, mind az adónak, de ahhoz, hogy ez megtörténhessen, szintén rádiójelekkel kell kommunikálniuk és ez sajnos id be telik. Az adó és a vev közötti késleltetés meghatározásával ki tudjuk számolni a pontos távolságot. Ehhez a vev t késleltetett üzemmódba kell állítani, mikor is a vev szinkronba állítja a kapott két jelet (Ezt egy ál-véletlen kód segítségével teszi meg (pseudo random code), és ez azért is jó megoldás, mert így az összes m hold egyetlen frekvencián képes kommunikálni, ráadásul még a gyenge jelek er sítésére is használható!). A kommunikáció A NAVSTAR m holdak két viv frekvenciát használnak a kommunikációra, az L1-t és az L2-t. Az el bbi 1575,42 MHz-en szállít üzeneteket, és a szinkronizáláshoz szükséges ál-véletlen kódot, az utóbbi pedig 1227,60 MHz-en sokkal pontosabb, katonai ál-véletlen kódot tartalmaz (erre még visszatérünk majd). Minden egyes holdnak saját ál-véletlen kódja van, így tudjuk egyértelm en azonosítani az adót. A polgári GPS C/A kódot használ (Coarse Acquisition), míg a katonai P (Precise) kódot. A P kód sokkal pontosabb, 266,4 naponta ismétl dik. Minden héten vasárnap éjfélkor (GPS hét kezdete) egy kód generálása megtörténik, mely modulálja mindkét viv frekvenciát, de ezt katonai célok miatt titkosították (a titkosított P kódot nevezzük Y kódnak). Sok esetben a P kód meghatározása sokkal bonyolultabb, ezért katonai alkalmazás során is el ször C/A kódot kérnek, majd utólag térnek át P 76/28.
POSEIDON NAVIGATION PROJECT intelligent Map with Rules of Traffic
Rendszerterv Munkacím: PPC Live Map GPS, Útkeresés & Pocket PC POSEIDON NAVIGATION PROJECT intelligent Map with Rules of Traffic Készítette: BEDŐK DÁVID & SZIRBIK FERENC 2004. május 6. BMF-NIK IAR Budapesti
RészletesebbenPOSEIDON NAVIGATION PROJECT
POSEIDON NAVIGATION PROJECT Térkép alkalmazás Pocket PC platformra, GPS támogatással SZAKDOLGOZAT Szerzők Jelen dolgozat szerzője Kozulensek Neumann János Informatikai Főiskolai Kar Informatikai Automatizált
RészletesebbenIrodalomkutatás. Munkacím: PPC Live Map. GPS & Útkeresés
Irodalomkutatás Munkacím: PPC Live Map GPS & Útkeresés Készítette: SZIRBIK FERENC & BEDŐK DÁVID 2004. április 22. BMF-NIK IAR Budapesti Műszaki Főiskola Neumann János Informatikai Kar Intelligens Automatizált
Részletesebben22. 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észletesebbenNavigáci. stervezés. Algoritmusok és alkalmazásaik. Osváth Róbert Sorbán Sámuel
Navigáci ció és s mozgástervez stervezés Algoritmusok és alkalmazásaik Osváth Róbert Sorbán Sámuel Feladat Adottak: pálya (C), játékos, játékos ismerethalmaza, kezdőpont, célpont. Pálya szerkezete: akadályokkal
RészletesebbenOBJEKTUMORIENTÁLT TERVEZÉS ESETTANULMÁNYOK. 2.1 A feladat
2. Digitális óra 28 OBJEKTUMORIENTÁLT TERVEZÉS ESETTANULMÁNYOK 2.1 A feladat Ebben a fejezetben egy viszonylag egyszerő problémára alkalmazva tekintjük át az OO tervezés modellezési technikáit. A feladat
RészletesebbenGráfok 2. Legrövidebb utak, feszítőfák. Szoftvertervezés és -fejlesztés II. előadás. Szénási Sándor
Gráfok 2. Legrövidebb utak, feszítőfák előadás http://nik.uni-obuda.hu/sztf2 Szénási Sándor Óbudai Egyetem,Neumann János Informatikai Kar Legrövidebb utak keresése Minimális feszítőfa keresése Gráfok 2
Részletesebben5/1. tétel: Optimalis feszítőfák, Prim és Kruskal algorithmusa. Legrövidebb utak graphokban, negatív súlyú élek, Dijkstra és Bellman Ford algorithmus.
5/1. tétel: Optimalis feszítőfák, Prim és Kruskal algorithmusa. Legrövidebb utak graphokban, negatív súlyú élek, Dijkstra és Bellman Ford algorithmus. Optimalis feszítőfák Egy összefüggő, irányítatlan
RészletesebbenAdatszerkezetek 2. Dr. Iványi Péter
Adatszerkezetek 2. Dr. Iványi Péter 1 Fák Fákat akkor használunk, ha az adatok között valamilyen alá- és fölérendeltség van. Pl. könyvtárszerkezet gyökér (root) Nincsennek hurkok!!! 2 Bináris fák Azokat
RészletesebbenAlgoritmuselmé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észletesebben2. Visszalépéses keresés
2. Visszalépéses keresés Visszalépéses keresés A visszalépéses keresés egy olyan KR, amely globális munkaterülete: egy út a startcsúcsból az aktuális csúcsba (az útról leágazó még ki nem próbált élekkel
RészletesebbenAlgoritmuselmélet. Gráfok megadása, szélességi bejárás, összefüggőség, párosítás. Katona Gyula Y.
Algoritmuselmélet Gráfok megadása, szélességi bejárás, összefüggőség, párosítás Katona Gyula Y. Számítástudományi és Információelméleti Tanszék Budapesti Műszaki és Gazdaságtudományi Egyetem 2. előadás
RészletesebbenFü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észletesebbenGráfokkal megoldható hétköznapi problémák
Eötvös Loránd Tudományegyetem Természettudományi Kar Gráfokkal megoldható hétköznapi problémák Szakdolgozat Készítette Vincze Ágnes Melitta Konzulens Héger Tamás Budapest, 2015 Tartalomjegyzék Bevezetés
Részletesebben2. Visszalépéses stratégia
2. Visszalépéses stratégia A visszalépéses keres rendszer olyan KR, amely globális munkaterülete: út a startcsúcsból az aktuális csúcsba (ezen kívül a még ki nem próbált élek nyilvántartása) keresés szabályai:
RészletesebbenProgramozási segédlet
Programozási segédlet Programozási tételek Az alábbiakban leírtam néhány alap algoritmust, amit ismernie kell annak, aki programozásra adja a fejét. A lista korántsem teljes, ám ennyi elég kell legyen
RészletesebbenGráfRajz fejlesztői dokumentáció
GráfRajz Követelmények: A GráfRajz gráfokat jelenít meg grafikus eszközökkel. A gráfot többféleképpen lehet a programba betölteni. A program a gráfokat egyedi fájl szerkezetben tárolja. A fájlokból betölthetőek
RészletesebbenWeb-programozó Web-programozó
Az Országos Képzési Jegyzékről és az Országos Képzési Jegyzékbe történő felvétel és törlés eljárási rendjéről szóló 133/2010. (IV. 22.) Korm. rendelet alapján. Szakképesítés, szakképesítés-elágazás, rész-szakképesítés,
RészletesebbenINFORMATIKA ÁGAZATI ALKALMAZÁSAI. Az Agrármérnöki MSc szak tananyagfejlesztése TÁMOP-4.1.2-08/1/A-2009-0010
INFORMATIKA ÁGAZATI ALKALMAZÁSAI Az Agrármérnöki MSc szak tananyagfejlesztése TÁMOP-4.1.2-08/1/A-2009-0010 10. GPS, GPRS (mobilkommunikációs) ismeretek Helymeghatározás GPS rendszer alapelve GNSS rendszerek
RészletesebbenGPS. Lehoczki Róbert Vadvilág Megőrzési Intézet Szent István Egyetem, Gödöllő
GPS Lehoczki Róbert Vadvilág Megőrzési Intézet Szent István Egyetem, Gödöllő Három technológiát egyesít: GPS (helymeghatározás) Robosztus terepen is használható hardver Egyszerű és hatékony szoftver Mire
RészletesebbenMozgással kapcsolatos feladatok
Mozgással kapcsolatos feladatok Olyan feladatok, amelyekben az út, id és a sebesség szerepel. Az egyenes vonalú egyenletes mozgás esetén jelölje s= a megtett utat, v= a sebességet, t= az id t. Ekkor érvényesek
RészletesebbenAlgoritmuselmélet 7. előadás
Algoritmuselmélet 7. előadás Katona Gyula Y. Budapesti Műszaki és Gazdaságtudományi Egyetem Számítástudományi Tsz. I. B. 137/b kiskat@cs.bme.hu 2002 Március 11. ALGORITMUSELMÉLET 7. ELŐADÁS 1 Múltkori
RészletesebbenGráfalgoritmusok ismétlés ősz
Gráfalgoritmusok ismétlés 2017. ősz Gráfok ábrázolása Egy G = (V, E) gráf ábrázolására alapvetően két módszert szoktak használni: szomszédsági listákat, illetve szomszédsági mátrixot. A G = (V, E) gráf
RészletesebbenTaylor-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észletesebbenIII. Gráfok. 1. Irányítatlan gráfok:
III. Gráfok 1. Irányítatlan gráfok: Jelölés: G=(X,U), X a csomópontok halmaza, U az élek halmaza X={1,2,3,4,5,6}, U={[1,2], [1,4], [1,6], [2,3], [2,5], [3,4], [3,5], [4,5],[5,6]} Értelmezések: 1. Fokszám:
Részletesebben0,424 0,576. f) P (X 2 = 3) g) P (X 3 = 1) h) P (X 4 = 1 vagy 2 X 2 = 2) i) P (X 7 = 3, X 4 = 1, X 2 = 2 X 0 = 2) j) P (X 7 = 3, X 4 = 1, X 2 = 2)
Legyen adott a P átmenetvalószín ség mátrix és a ϕ 0 kezdeti eloszlás Kérdés, hogy miként lehetne meghatározni az egyes állapotokban való tartózkodás valószín ségét az n-edik lépés múlva Deniáljuk az n-lépéses
RészletesebbenR ++ -tree: an efficient spatial access method for highly redundant point data - Martin Šumák, Peter Gurský
R ++ -tree: an efficient spatial access method for highly redundant point data - Martin Šumák, Peter Gurský Recenzió: Németh Boldizsár Térbeli indexelés Az adatszerkezetek alapvetően fontos feladata, hogy
Részletesebben30. ERŐSEN ÜSSZEFÜGGŐ KOMPONENSEK
30. ERŐSEN ÜSSZEFÜGGŐ KOMPONENSEK A gráfos alkalmazások között is találkozunk olyan problémákkal, amelyeket megoldását a részekre bontott gráfon határozzuk meg, majd ezeket alkalmas módon teljes megoldássá
RészletesebbenMennyit termelhetünk a felszín alatti vízkészletekbıl? DR. VÖLGYESI ISTVÁN
1 Mennyit termelhetünk a felszín alatti vízkészletekbıl? DR. VÖLGYESI ISTVÁN Kulcsszavak: hidrogeológia, kitermelhetı vízkészletek, víztermelés környezeti korlátai, utánpótlódás, parti szőrés, kolmatáció
RészletesebbenGráfok 1. Tárolási módok, bejárások. Szoftvertervezés és -fejlesztés II. előadás. Szénási Sándor
Gráfok 1. Tárolási módok, bejárások előadás http://nik.uni-obuda.hu/sztf2 Szénási Sándor szenasi.sandor@nik.uni-obuda.hu Óbudai Egyetem,Neumann János Informatikai Kar Gráfok 1. Tárolási módok Szélességi
RészletesebbenLáthatósági kérdések
Láthatósági kérdések Láthatósági algoritmusok Adott térbeli objektum és adott nézőpont esetén el kell döntenünk, hogy mi látható az adott alakzatból a nézőpontból, vagy irányából nézve. Az algoritmusok
RészletesebbenOpenCL alapú eszközök verifikációja és validációja a gyakorlatban
OpenCL alapú eszközök verifikációja és validációja a gyakorlatban Fekete Tamás 2015. December 3. Szoftver verifikáció és validáció tantárgy Áttekintés Miért és mennyire fontos a megfelelő validáció és
RészletesebbenIntelligens Rendszerek Elmélete IRE 4/32/1
Intelligens Rendszerek Elmélete 4 IRE 4/32/1 Problémamegoldás kereséssel http://nik.uni-obuda.hu/mobil IRE 4/32/2 Egyszerű lények intelligenciája? http://www.youtube.com/watch?v=tlo2n3ymcxw&nr=1 IRE 4/32/3
RészletesebbenAdatszerkezetek és algoritmusok
2009. november 13. Ismétlés El z órai anyagok áttekintése Ismétlés Specikáció Típusok, kifejezések, m veletek, adatok ábrázolása, típusabsztakció Vezérlési szerkezetek Függvények, paraméterátadás, rekurziók
RészletesebbenGráfelméleti alapfogalmak-1
KOMBINATORIKA ELŐADÁS osztatlan matematika tanár hallgatók számára Gráfelméleti alapfogalmak Előadó: Hajnal Péter 2015 1. Egyszerű gráfok Nagyon sok helyzetben egy alaphalmaz elemei között kitűntetett
RészletesebbenMegoldás. Feladat 1. Statikus teszt Specifikáció felülvizsgálat
Megoldás Feladat 1. Statikus teszt Specifikáció felülvizsgálat A feladatban szereplő specifikáció eredeti, angol nyelvű változata egy létező eszköz leírása. Nem állítjuk, hogy az eredeti dokumentum jól
RészletesebbenAlgoritmuselmélet. Mélységi keresés és alkalmazásai. Katona Gyula Y.
Algoritmuselmélet Mélységi keresés és alkalmazásai Katona Gyula Y. Számítástudományi és Információelméleti Tanszék Budapesti Műszaki és Gazdaságtudományi Egyetem 9. előadás Katona Gyula Y. (BME SZIT) Algoritmuselmélet
Részletesebben2. A ξ valószín ségi változó eloszlásfüggvénye a következ : x 4 81 F (x) = x 4 ha 3 < x 0 különben
1 feladatsor 1 Egy dobozban 20 fehér golyó van Egy szabályos dobókockával dobunk, majd a következ t tesszük: ha a dobott szám 1,2 vagy 3, akkor tíz golyót cserélünk ki pirosra; ha a dobott szám 4 vagy
RészletesebbenGráfelméleti alapfogalmak
1 Gráfelméleti alapfogalmak Gráf (angol graph= rajz): pontokból és vonalakból álló alakzat. pontok a gráf csúcsai, a vonalak a gráf élei. GRÁ Irányítatlan gráf Vegyes gráf Irányított gráf G H Izolált pont
RészletesebbenAdatelemzés az R-ben. 2014. április 25.
Adatelemzés az R-ben 2014. április 25. Kísérleti adatok elemzése Kísérlet célja: valamilyen álĺıtás vagy megfigyelés empirikus és szisztematikus tesztelése. Pl. a nők többet beszélnek, mint a férfiak,
RészletesebbenKereső algoritmusok a diszkrét optimalizálás problémájához
Kereső algoritmusok a diszkrét optimalizálás problémájához A. Grama, A. Gupta, G. Karypis és V. Kumar: Introduction to Parallel Computing, Addison Wesley, 2003. könyv anyaga alapján A kereső eljárások
RészletesebbenA számítástudomány alapjai
A számítástudomány alapjai Katona Gyula Y. Számítástudományi és Információelméleti Tanszék Budapesti Műszaki és Gazdaságtudományi Egyetem Legszélesebb utak Katona Gyula Y. (BME SZIT) A számítástudomány
RészletesebbenAPI-MÁGIA MILLIÓ SORNYI ADAT ÚJRARENDEZÉSE. Előadó: Jaksa Zsombor, drungli.com
API-MÁGIA MILLIÓ SORNYI ADAT ÚJRARENDEZÉSE Előadó: Jaksa Zsombor, drungli.com MIRŐL FOG SZÓLNI AZ ELŐADÁS? Hogyan működik a drungli.com?# Adatok gyűjtése, stratégiák# Ha marad időm még mesélek HOGYAN MŰKÖDIK
Részletesebben26. 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észletesebbenAdatszerkezetek I. 7. előadás. (Horváth Gyula anyagai felhasználásával)
Adatszerkezetek I. 7. előadás (Horváth Gyula anyagai felhasználásával) Bináris fa A fa (bináris fa) rekurzív adatszerkezet: BinFa:= Fa := ÜresFa Rekord(Elem,BinFa,BinFa) ÜresFa Rekord(Elem,Fák) 2/37 Bináris
RészletesebbenAlgoritmusok bonyolultsága
Algoritmusok bonyolultsága 5. előadás http://www.ms.sapientia.ro/~kasa/komplex.htm 1 / 27 Gazdaságos faváz Kruskal-algoritmus Joseph Kruskal (1928 2010) Legyen V = {v 1, v 2,..., v n }, E = {e 1, e 2,...,
RészletesebbenHegyi Ádám István ELTE, április 25.
Hegyi Ádám István ELTE, 2012. április 25. GPS = Global Positioning System Department of Defense = Amerikai Egyesült Államok Védelmi Minisztériuma 1973 DNSS = Defense Navigation Satellite System vagy Navstar-GPS
RészletesebbenSzegedi Tudományegyetem Informatikai Tanszékcsoport SZAKDOLGOZAT. Fertői Ferenc
Szegedi Tudományegyetem Informatikai Tanszékcsoport SZAKDOLGOZAT Fertői Ferenc 2010 Szegedi Tudományegyetem Informatikai Tanszékcsoport 3-dimenziós táj generálása útvonalgráf alapján Szakdolgozat Készítette:
RészletesebbenAdatszerkezetek II. 1. előadás
Adatszerkezetek II. 1. előadás Gráfok A gráf fogalma: Gráf(P,E): P pontok (csúcsok) és E P P élek halmaza Fogalmak: Irányított gráf : (p 1,p 2 ) E-ből nem következik, hogy (p 2,p 1 ) E Irányítatlan gráf
RészletesebbenBoltban. Belépünk. Keressük meg. Keressük meg a jó részleget. a pénztárat. nem. Biztos hogy a jó helyen vagyunk. igen. Fizessünk.
Web design Boltban Belépünk nem Keressük meg a jó részleget Keressük meg a pénztárat Biztos hogy a jó helyen vagyunk igen Keressük meg a jó sort Fizessünk nem Eléggé frusztráltak vagyunk? nem Keressük
RészletesebbenA Markowitz modell: kvadratikus programozás
A Markowitz modell: kvadratikus programozás Harry Markowitz 1990-ben kapott Közgazdasági Nobel díjat a portfolió optimalizálási modelljéért. Ld. http://en.wikipedia.org/wiki/harry_markowitz Ennek a legegyszer
RészletesebbenTárgy. Forgóasztal. Lézer. Kamera 3D REKONSTRUKCIÓ LÉZERES LETAPOGATÁSSAL
3D REKONSTRUKCIÓ LÉZERES LETAPOGATÁSSAL. Bevezetés A lézeres letapogatás a ma elérhet legpontosabb 3D-s rekonstrukciót teszi lehet vé. Alapelve roppant egyszer : egy lézeres csíkkal megvilágítjuk a tárgyat.
RészletesebbenTrigonometria. Szögfüggvények alkalmazása derékszög háromszögekben. Szent István Egyetem Gépészmérnöki Kar Matematika Tanszék 1
Szent István Egyetem Gépészmérnöki Kar Matematika Tanszék 1 Trigonometria Szögfüggvények alkalmazása derékszög háromszögekben 1. Az ABC hegyesszög háromszögben BC = 14 cm, AC = 1 cm, a BCA szög nagysága
RészletesebbenRendezettség. Rendezettség. Tartalom. Megjegyzés
Tartalom A rendezettség és két jellemző formája: a hierarchiák és a hálózatok. A világ szintjei a fizikai építőelemektől a társadalmakig. A struktúrák tervezésének és felépítésének egyszerű, moduláris
RészletesebbenMesterséges intelligencia 1 előadások
VÁRTERÉSZ MAGDA Mesterséges intelligencia 1 előadások 2006/07-es tanév Tartalomjegyzék 1. A problémareprezentáció 4 1.1. Az állapottér-reprezentáció.................................................. 5
RészletesebbenÁltalános statisztika II. Kriszt, Éva Varga, Edit Kenyeres, Erika Korpás, Attiláné Csernyák, László
Általános statisztika II Kriszt, Éva Varga, Edit Kenyeres, Erika Korpás, Attiláné Csernyák, László Általános statisztika II Kriszt, Éva Varga, Edit Kenyeres, Erika Korpás, Attiláné Csernyák, László Publication
RészletesebbenÉrdekes informatika feladatok
A keres,kkel és adatbázissal ellátott lengyel honlap számos díjat kapott: Spirit of Delphi '98, Delphi Community Award, Poland on the Internet, Golden Bagel Award stb. Az itt megtalálható komponenseket
RészletesebbenEMLÉKEZTETŐ. Az OKA tizenkettedik üléséről (2007. szeptember 11. 14:00, SZMM, Tükörterem)
EMLÉKEZTETŐ Az OKA tizenkettedik üléséről (2007. szeptember 11. 14:00, SZMM, Tükörterem) Napirend előtt Fazekas Károly helyett Kertesi Gábor vezeti a kerekasztal ülését. Köszönti a kerekasztal tagjait
RészletesebbenAdatszerkezetek és algoritmusok
2010. január 8. Bevezet El z órák anyagainak áttekintése Ismétlés Adatszerkezetek osztályozása Sor, Verem, Lengyelforma Statikus, tömbös reprezentáció Dinamikus, láncolt reprezentáció Láncolt lista Lassú
RészletesebbenA rendszer legfontosabb jellemzőit az alábbiakban foglalhatjuk össze:
GPS nyomkövető készülék, illetve navigációs rendszerek A GPS a Global Positioning System angol rövidítése és globális helymeghatározó rendszert jelent. Egy rendszer, amely 24 műholdból áll, melyet az USA
RészletesebbenA továbbiakban Y = {0, 1}, azaz minden szóhoz egy bináris sorozatot rendelünk
1. Kódelmélet Legyen X = {x 1,..., x n } egy véges, nemüres halmaz. X-et ábécének, elemeit betűknek hívjuk. Az X elemeiből képzett v = y 1... y m sorozatokat X feletti szavaknak nevezzük; egy szó hosszán
Részletesebben9. Tétel Els - és másodfokú egyenl tlenségek. Pozitív számok nevezetes közepei, ezek felhasználása széls érték-feladatok megoldásában
9. Tétel Els - és másodfokú egyenl tlenségek. Pozitív számok nevezetes közepei, ezek felhasználása széls érték-feladatok megoldásában Bevezet : A témakörben els - és másodfokú egyenl tlenségek megoldásának
Részletesebben12. tétel. Lemezkezelés
12. tétel 12_12a_1.5 Lemezkezelés (Particionálás, formázás, RAID rendszerek) A partíció a merevlemez egy önálló logikai egysége, amely fájlrendszer tárolására alkalmas. Alapvetően két esetben hozunk létre
RészletesebbenOperációs rendszerek. 3. előadás Ütemezés
Operációs rendszerek 3. előadás Ütemezés 1 Szemaforok Speciális változók, melyeket csak a két, hozzájuk tartozó oszthatatlan művelettel lehet kezelni Down: while s < 1 do üres_utasítás; s := s - 1; Up:
RészletesebbenSzámítógép és programozás 2
Számítógép és programozás 2 11. Előadás Halmazkeresések, dinamikus programozás http://digitus.itk.ppke.hu/~flugi/ A keresési feladat megoldása Legyen a lehetséges megoldások halmaza M ciklus { X legyen
RészletesebbenA TÖMEGKÖZLEKEDÉSI KÖZSZOLGÁLTATÁS SZOLGÁLTATÓ JELLEGÉNEK MEGALAPOZÁSA: MEGÁLLÓHELY ELLÁTOTTSÁG BUDAPESTEN. Összefoglaló
RUZSÁNYI TIVADAR A TÖMEGKÖZLEKEDÉSI KÖZSZOLGÁLTATÁS SZOLGÁLTATÓ JELLEGÉNEK MEGALAPOZÁSA: MEGÁLLÓHELY ELLÁTOTTSÁG BUDAPESTEN Összefoglaló A tanulmányban a tömegközlekedés igénybevételének alapvető feltételét,
RészletesebbenDIALOG időkapcsoló PROGRAMOZÁSI ÚTMUTATÓ
DIALOG időkapcsoló PROGRAMOZÁSI ÚTMUTATÓ FUNKCIÓK I. Az időkapcsoló beállítása (a kék gombok): TECHNOCONSULT Kft. 2092 Budakeszi, Szürkebarát u. 1. T: (23) 457-110 www.technoconsult.hu info@technoconsult.hu
RészletesebbenOnline algoritmusok. Algoritmusok és bonyolultságuk. Horváth Bálint március 30. Horváth Bálint Online algoritmusok március 30.
Online algoritmusok Algoritmusok és bonyolultságuk Horváth Bálint 2018. március 30. Horváth Bálint Online algoritmusok 2018. március 30. 1 / 28 Motiváció Gyakran el fordul, hogy a bemenetet csak részenként
RészletesebbenEz is Hungaricum. Kovács Vera, Palotay Dorka, Pozsonyi Enik, Szabó Csaba január 27. ELTE
Ez is ELTE 2013. január 27. Motiváció Tapasztalatok és célok A középiskolából kikerül diákok nagy része nem ismeri a gráfokat Vizsgálataink: A gráfok oktatásának mai helyzete Mi ennek az oka? A gráfok
RészletesebbenKameleon Light Bootloader használati útmutató
Kameleon Light Bootloader használati útmutató 2017. Verzió 1.0 1 Tartalom jegyzék 2 1. Bootloader bevezető: A Kameleon System-hez egy összetett bootloader tartozik, amely lehetővé teszi, hogy a termékcsalád
Részletesebben1. tétel - Gráfok alapfogalmai
1. tétel - Gráfok alapfogalmai 1. irányítatlan gráf fogalma A G (irányítatlan) gráf egy (Φ, E, V) hátmas, ahol E az élek halmaza, V a csúcsok (pontok) halmaza, Φ: E {V-beli rendezetlen párok} illeszkedési
RészletesebbenProgramozás alapjai Bevezetés
Programozás alapjai Bevezetés Miskolci Egyetem Általános Informatikai Tanszék Programozás alapjai Bevezetés SWF1 / 1 Tartalom A gépi kódú programozás és hátrányai A magas szintÿ programozási nyelv fogalma
RészletesebbenEgyetemi Számítóközpont
NETWORKSHOP 2012. április 11-13. 2. KÖZOKTATÁS, FELSŐOKTATÁS, E-LEARNING 2.1. Intézménytámogató rendszerek Admin(isztr)átor a dzsungelben Felsőoktatás: OSAP adatszolgáltatás, hallgatói támogatási idő Kövesi-Nagy
RészletesebbenStruktúra nélküli adatszerkezetek
Struktúra nélküli adatszerkezetek Homogén adatszerkezetek (minden adatelem azonos típusú) osztályozása Struktúra nélküli (Nincs kapcsolat az adatelemek között.) Halmaz Multihalmaz Asszociatív 20:24 1 A
RészletesebbenGráfelméleti feladatok. c f
Gráfelméleti feladatok d e c f a b gráf, csúcsok, élek séta: a, b, c, d, e, c, a, b, f vonal: c, d, e, c, b, a út: f, b, a, e, d (walk, lanţ) (trail, lanţ simplu) (path, lanţ elementar) 1 irányított gráf,
Részletesebbenangolul: greedy algorithms, románul: algoritmi greedy
Mohó algoritmusok angolul: greedy algorithms, románul: algoritmi greedy 1. feladat. Gazdaságos telefonhálózat építése Bizonyos városok között lehet direkt telefonkapcsolatot kiépíteni, pl. x és y város
RészletesebbenAlgoritmusok és adatszerkezetek gyakorlat 06 Adatszerkezetek
Algoritmusok és adatszerkezetek gyakorlat 06 Adatszerkezetek Tömb Ugyanolyan típusú elemeket tárol A mérete előre definiált kell legyen és nem lehet megváltoztatni futás során Legyen n a tömb mérete. Ekkor:
RészletesebbenGörbe- és felületmodellezés. Szplájnok Felületmodellezés
Görbe- és felületmodellezés Szplájnok Felületmodellezés Spline (szplájn) Spline: Szakaszosan, parametrikus polinomokkal leírt görbe A spline nevét arról a rugalmasan hajlítható vonalzóról kapta, melyet
RészletesebbenKereső algoritmusok a diszkrét optimalizálás problémájához
Kereső algoritmusok a diszkrét optimalizálás problémájához A. Grama, A. Gupta, G. Karypis és V. Kumar: Introduction to Parallel Computing, Addison Wesley, 2003. könyv anyaga alapján A kereső eljárások
RészletesebbenMechatronika segédlet 3. gyakorlat
Mechatronika segédlet 3. gyakorlat 2017. február 20. Tartalom Vadai Gergely, Faragó Dénes Feladatleírás... 2 Fogaskerék... 2 Nézetváltás 3D modellezéshez... 2 Könnyítés megvalósítása... 2 A fogaskerék
RészletesebbenIsmerkedjünk tovább a számítógéppel. Alaplap és a processzeor
Ismerkedjünk tovább a számítógéppel Alaplap és a processzeor Neumann-elvű számítógépek főbb egységei A részek feladatai: Központi egység: Feladata a számítógép vezérlése, és a számítások elvégzése. Operatív
RészletesebbenMIKRO MÉRETŰ PILÓTA NÉLKÜLI REPÜLŐK REPÜLÉSBIZTONSÁGI KÉRDÉSEI ELEKTROMOS TÁPELLÁTÁS BIZTONSÁGA
Wührl Tibor MIKRO MÉRETŰ PILÓTA NÉLKÜLI REPÜLŐK REPÜLÉSBIZTONSÁGI KÉRDÉSEI ELEKTROMOS TÁPELLÁTÁS BIZTONSÁGA Bevezetés A pilóta nélküli repülők (UAV-k) alkalmazásának és elterjedésének feltétele a hibatűrő
RészletesebbenGPS mérési jegyz könyv
GPS mérési jegyz könyv Mérést végezte: Csutak Balázs, Laczkó Hunor Mérés helye: ITK 320. terem és az egyetem környéke Mérés ideje: 2016.03.16 A mérés célja: Ismerkedés a globális helymeghatározó rendszerrel,
RészletesebbenNav N Go igo 8 GPS navigációs szoftver
Nav N Go igo 8 GPS navigációs szoftver Legfőbb előnyök Kompatibilis a piac legtöbb Windows Mobile alapú mobil eszközével.* Egyszerűen csatlakoztassa az SD memóriakártyát, és a szoftver máris működésre
RészletesebbenEgyirányban láncolt lista
Egyirányban láncolt lista A tárhely (listaelem) az adatelem értékén kívül egy mutatót tartalmaz, amely a következő listaelem címét tartalmazza. A láncolt lista első elemének címét egy, a láncszerkezeten
RészletesebbenStatikus routing. Hoszt kommunikáció. Router működési vázlata. Hálózatok közötti kommunikáció. (A) Partnerek azonos hálózatban
Hoszt kommunikáció Statikus routing Két lehetőség Partnerek azonos hálózatban (A) Partnerek különböző hálózatban (B) Döntéshez AND Címzett IP címe Feladó netmaszk Hálózati cím AND A esetben = B esetben
Részletesebben24. szakkör (Csoportelméleti alapfogalmak 3.)
24. szakkör (Csoportelméleti alapfogalmak 3.) D) PERMUTÁCIÓK RENDJE Fontos kérdés a csoportelméletben, hogy egy adott elem hanyadik hatványa lesz az egység. DEFINÍCIÓ: A legkisebb olyan pozitív k számot,
RészletesebbenMesterséges Intelligencia MI
Mesterséges Intelligencia MI Problémamegoldás kereséssel ha sötétben tapogatózunk Dobrowiecki Tadeusz Eredics Péter, és mások BME I.E. 437, 463-28-99 dobrowiecki@mit.bme.hu, http://www.mit.bme.hu/general/staff/tade
RészletesebbenGépi tanulás és Mintafelismerés
Gépi tanulás és Mintafelismerés jegyzet Csató Lehel Matematika-Informatika Tanszék BabesBolyai Tudományegyetem, Kolozsvár 2007 Aug. 20 2 1. fejezet Bevezet A mesterséges intelligencia azon módszereit,
RészletesebbenGibbs-jelenség viselkedésének vizsgálata egyszer négyszögjel esetén
Matematikai modellek, I. kisprojekt Gibbs-jelenség viselkedésének vizsgálata egyszer négyszögjel esetén Unger amás István B.Sc. szakos matematikus hallgató ungert@maxwell.sze.hu, http://maxwell.sze.hu/~ungert
Részletesebben(x 5) 5 = y 5 (1) 4 x = y (2) Helyettesítsük be az els egyenletbe a második alapján y helyére 4 x-et. Így (x 5) 5 = 4 x 5 adódik.
C1. A nagymamám azt gondolja, hogy egyre atalabb, hiszen 5 éve ötször annyi id s volt, mint én akkor, most pedig csak négyszer annyi id s, mint én most. a) Hány éves a nagymamám? b) Hány év múlva lesz
RészletesebbenElektromágneses hullámok terjedési sebességének mérése levegőben
Elektromágneses hullámok terjedési sebességének mérése levegőben Dombi András Babeş-Bolyai Tudományegyetem, Fizika Kar, Fizika - Informatika szak, 3. évfolyam Témavezetők: Dr. Néda Zoltán egyetemi professzor
RészletesebbenPedagógus továbbképzések. a Bakonyi Szakképzés szervezési Társulás. intézményeiben
Pedagógus továbbképzések a Bakonyi Szakképzés szervezési Társulás intézményeiben A képzések hatékonyságának felmérése, javaslattétel a pedagógus kompetencia fejlesztési terv aktualizálására Készítette:
RészletesebbenUjjszámlálás Matlab segítségével
Ujjszámlálás Matlab segítségével Griechisch Erika, Juhász Miklós és Földi Antal 2008. november Tartalomjegyzék 1. Bevezetés 1 2. Vizsgált módszerek 1 3. Az algoritmus 1 4. Megvalósítás 2 4.1. Szegmentálás,
RészletesebbenA.26. Hagyományos és korszerű tervezési eljárások
A.26. Hagyományos és korszerű tervezési eljárások A.26.1. Hagyományos tervezési eljárások A.26.1.1. Csuklós és merev kapcsolatú keretek tervezése Napjainkig a magasépítési tartószerkezetek tervezése a
RészletesebbenMesterséges intelligencia 2. laborgyakorlat
Mesterséges intelligencia 2. laborgyakorlat Keresési módszerek A legtöbb feladatot meg lehet határozni keresési feladatként: egy ún. állapottérben, amely tartalmazza az összes lehetséges állapotot fogjuk
Részletesebben4. Használati útmutatás
megbízható(másnéven: robusztus): mert a programozási hibák egy részét megakadályozza,a másik részét pedig futás közben kisz ri és támogatja a fejleszt t azok professzionális kezelésében. biztonságos: megakadályozza
RészletesebbenRadioaktív anyag felezési idejének mérése
A pályázótársam által ismertetett mérési módszer alkalmazásához Labview szoftverrel készítettem egy mérőműszert, ami lehetőséget nyújt radioaktív anyag felezési idejének meghatározására. 1. ábra: Felhasználói
Részletesebben44. ORSZÁGOS TIT KALMÁR LÁSZLÓ MATEMATIKAVERSENY. Megyei forduló április mal, így a számjegyeinek összege is osztható 3-mal.
44. ORSZÁGOS TIT KALMÁR LÁSZLÓ MATEMATIKAVERSENY Megyei forduló - 2015. április 11. HATODIK OSZTÁLY - Javítási útmutató 1. Melyik a legkisebb 3-mal osztható négyjegyű szám, amelynek minden számjegye különböző,
Részletesebben2.3. A rendez pályaudvarok és rendez állomások vonat-összeállítási tervének kidolgozása...35 2.3.1. A vonatközlekedési terv modellje...37 2.3.2.
TARTALOMJEGYZÉK BEVEZETÉS...5 1. ÁRU ÉS KOCSIÁRAMLATOK TERVEZÉSE...6 1.1. A vonatközlekedési terv fogalma, jelent sége és kidolgozásának fontosabb elvei...6 1.2. A kocsiáramlatok és osztályozásuk...7 1.2.1.
Részletesebben