Vezetéknélküli hálózatok
lokalizációs problémái
BSc Szakdolgozat
Írta:
Tolnai László Miklós
Matematika BSc, Alkalmazott matematikus szakirány
Témavezet®:
Jordán Tibor, egyetemi tanár
Operációkutatási Tanszék
Eötvös Loránd Tudományegyetem,
Természettudományi Kar
Eötvös Loránd Tudományegyetem
Természettudományi Kar
2012
Tartalomjegyzék
1. Bevezetés 3
1.1. Deníciók, jelölések . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
1.2. Eredmények . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
2. Egységlemez gráf lokalizálása a szögek alapján 7
2.1. Bevezetés . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
2.2. Síkbarajzolható hosszközelít® feszít® részgráf . . . . . . . . . . . . . . . 7
2.2.1. Korlátozott Delaunay gráf . . . . . . . . . . . . . . . . . . . . . 8
2.2.2. Konstrukció . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
2.2.3. Útvonalkeresés garantált célbajutással . . . . . . . . . . . . . . 12
2.3. Egységlemez gráf beágyazása LP-vel . . . . . . . . . . . . . . . . . . . 12
2.3.1. Egyszer¶sít® módszerek . . . . . . . . . . . . . . . . . . . . . . 13
2.3.2. Az eljárás eredményessége . . . . . . . . . . . . . . . . . . . . . 17
3. Perturbációs lokalizáció 20
3.1. Bevezetés, eredmények . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
3.2. Az eljárás áttekintése . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
3.3. Az eljárás elmélete . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
3.3.1. Mérési érint®tér . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
3.3.2. A stressz-normális tulajdonság . . . . . . . . . . . . . . . . . . 22
3.3.3. An beágyazás a stresszekb®l . . . . . . . . . . . . . . . . . . . 23
3.3.4. Euklideszi beágyazás . . . . . . . . . . . . . . . . . . . . . . . . 24
3.3.5. Az eljárás által lokalizálható halmazok . . . . . . . . . . . . . . 25
3.4. Az eljárás eredményessége . . . . . . . . . . . . . . . . . . . . . . . . . 26
3.4.1. A szimuláció beállításai . . . . . . . . . . . . . . . . . . . . . . 27
3.4.2. Szimulációs eredmények . . . . . . . . . . . . . . . . . . . . . . 28
II
1. fejezet
Bevezetés
A vezetéknélküli hálózatok fontos problémája a lokalizáció. E feladat arra hivatott
választ adni, hogy az egymással vezeték nélkül kommunikáló szenzorok hol helyezked-
nek el egy adott pillanatban. A feladat magában foglalja a rendelkezésünkre álló in-
formációkat, amelyek lehetnek az egyes szenzorok közötti távolságok, vagy éppen az,
hogy az egyes szenzorok mekkora szögben látják két szomszédos szenzorukat. Néha
még további általános információk is rendelkezésünkre állnak, például, hogy egy szen-
zor csak egy adott távolságon belüli szomszédaival tud kommunikálni. A valóságban
a szenzorok a három dimenziós térben helyezkednek el, de általában mégis úgy tekin-
tünk rájuk, mintha egy síkon belül lennének. Például, ha egy épület egy adott szintjén
lév® szenzorokat lokalizálunk, célszer¶ a lokalizációt két dimenzióban végezni.
A lokalizációs feladat gráfelméleti probléma, hiszen a legkézenfekv®bb reprezen-
tációja egy ilyen hálózatnak egy gráf, ahol a csúcsokat a szenzoroknak feleltetjük
meg, éleket pedig két olyan csúcs közé húzunk, amelyek által reprezentált szenzorok
(vezetéknélküli) összeköttetésben állnak egymással. Így például a szenzorok közötti
távolságok ismerete megfelel a gráf élhosszainak ismeretével, míg az, hogy az egyes
szenzorok mekkora szögben látják két szomszédos szenzorukat, megfelel annak, hogy
ismerjük a gráfban a szomszédos élek által bezárt szögeket. E két ismeret együttesével
már gond nélkül sikeresen lokalizálhatunk bármilyen gráfot, de a szenzorok ener-
giamegtakarítás céljából tipikusan csak az egyik információ meghatározására képe-
sek.
A szenzorok helymeghatározására egy kézenfekv® megoldás lehetne a GPS, de ez
túl költséges és energiaigényes módszer.
A feladatnak sok megközelítése van, ebben a kiinduló információ is nagy szere-
pet játszik. A dolgozat során két eltér®, ámde érdekesnek mondható megközelítést
mutatok be.
3
1.1. Deníciók, jelölések
Egy G = (V,E) gráf egy rendezett pár, amely egy V = v1, ..., vn csúcshalmaz-
ból és m darab irányítatlan élb®l, E-b®l áll. Ez utóbbi elemei kételem¶ részhalmazai
V -nek. A csúcsokat néha egyszer¶en az ábécé bet¶ivel jelöljük.
A d-dimenziós euklideszi teret Rd-vel jelöljük, a rajta deniált norma (||.||) alattpedig az euklideszi normát értjük.
Egy d-dimenziós szerkezet egy pár (G, p), ahol G = (V,E) egy gráf és p egy ún.
beágyazó leképezés V -b®l Rd-be. A szerkezetet a gráf realizációjának tekintjük a d-
dimenziós térben. Két szerkezet (G, p) és (G, q) ekvivalens, ha az egymásnak megfelel®
élek azonos hosszúságúak; illetve kongruens, ha minden pontpár távolsága is mege-
gyezik. Ekkor (G, q) megkapható egy izometria, azaz egy euklideszi transzformáció
segítségével (G, p)-b®l. Gyakran a szerkezet alatt csak a beágyazó leképezést értjük,
ha ez nem okoz félreértést.
Cd(G)-vel jelöljük a szerkezetek terét egy adott G gráf és d dimenzió mellett. A
Cd(G) térnek metrikát is adunk azzal, hogy triviálisan Rnd-vel azonosítjuk.
Egy p szerkezet merev, ha létezik δ > 0 úgy, hogy bármely vele ekvivalens,
||p′ − p|| < δ szerkezettel kongruens. Ez azt az ötletet ragadja meg, hogy a gráf
nem mozgatható folytonosan. Egy p szerkezet globálisan merev, ha minden vele ekvi-
valens szerkezet kongruens is vele. Utóbbi azért fontos fogalom, mert ha az élhosszak
alapján szeretnénk lokalizálni a gráfot, akkor a feladat pontosan akkor jóldeniált,
ha a keresett beágyazás globálisan merev.
Egy p ∈ Cd(G) szerkezetet generikusnak hívunk, ha a csúcsok pozícióinak ko-
ordinátái, azaz a (p(v1), ..., p(vn)) mátrix elemei nem elégítenek ki semmilyen racio-
nális együtthatójú algebrai egyenletet. Azzal, hogy csak az ilyen szerkezetekre fóku-
szálunk, elkerülünk ritka szingularitásokat, egybeeséseket.
Ha feltesszük, hogy a hálózat pontjai generikus pozícióban vannak, akkor az
egyértelm¶ lokalizálhatóság csak a hálózat kombinatorikus tulajdonságaitól függ: ezt
egyértelm¶en meghatározza a távolság gráf és a horgonyok halmaza. El®bbi pontjai
a hálózat pontjainak felelnek meg, és benne él pontosan akkor megy két csúcs között,
ha ismert a hálózat két pontjának távolsága. Utóbbi halmaz pedig azon pontokat
tartalmazza, amelynek ismerjük a pontos helyzetét. (Ebb®l legalább d+ 1 szükséges
a sikeres lokalizáláshoz)
1.2. Eredmények
Az egyik legáltalánosabb algoritmus Biswas-éknak [1] tulajdonítható. Az eljárásuk
szemidenit programozással lokalizálja a hálózatot a távolságadatok alapján. Egyik
hátránya, hogy eléggé költséges, másik pedig, hogy nem túl pontos.
4
Több eljárás is létezik, amely arra épít, hogy kihasználja a bemeneti gráf egy-egy
speciális tulajdonságát. Erre a legegyszer¶bb példa a trilaterációs gráfok lokalizá-
ciója.
1.2.1. Deníció. Egy gráf d-dimenziós trilaterációs sorrendje a csúcsoknak egy olyan
(v1, v2, ..., vn) felsorolása, amelyre igaz, hogy az els® d+1 csúcs páronként szomszédos,
és ∀j = d+ 2, ..., n-re vj legalább d+ 1 csúccsal szomszédos az els® j − 1 csúcs közül.
Ha egy gráfnak létezik d-dimenziós trilaterációs sorrendje, akkor a gráfot d-dimenziós
trilaterációs gráfnak nevezzük. (Forrás: [2])
Ahogy Erenék cikkében [3] is olvashatjuk, a trilaterációs síkgráfok polinomiális
id®ben beágyazhatók (a távolságadatok alapján). Ez tehát egy nagyon hatékony
eljárás, de óriási hátránya, hogy a gráfoknak csupán egy sz¶k osztályán eredményes.
A gráfok egy másik érdekes osztályát alkotják az egységlemez gráfok.
1.2.2. Deníció. Egy egységlemez gráf egy síkbeli ponthalmaz által indukált gráf,
azaz két pontja között pontosan akkor megy él, ha a pontok síkbeli megfelel®jének
távolsága nem több 1-nél.
1.1. ábra. Példa egységlemez gráfra [4]. A pontok körüli körök sugara egy ketted.
Érdemes a gráfoknak ezt az osztályát vizsgálni, hiszen a gyakorlatban általában a
szenzorok csak egy bizonyos távolságon belül tudnak egymással kommunikálni. Igaz,
el®fordulhat az is, hogy egy akadály (pl. egy fal) miatt nem létesül kapcsolat két
közeli szenzor között.
Bruck, Gao és Jiang adott egy eljárást [5], amellyel egy egységlemez gráf beá-
gyazását közelíthetjük, távolságadatok helyett szögadatok alapján. Ezt az eredményt
részletesebben kifejtem a második fejezetben.
Végül egy kicsit eltér®, de annál érdekesebb megközelítése a feladatnak, ha fel-
tesszük, hogy a szenzorok kis mértékben mozoghatnak, és képesek vagyunk a mozgás
során az élhosszak többszöri lemérésére. Erre az esetre dolgoztak ki Gortlerék egy
5
eljárást [6], amely igen robusztusnak t¶nik, és pontosabb is mint a fentebb említett
SDP alapú algoritmus. Ezt az eljárást b®vebben ismertetem a harmadik fejezetben.
6
2. fejezet
Egységlemez gráf lokalizálása a
szögek alapján
2.1. Bevezetés
Ebben a fejezetben a lokalizációs probléma egy speciális esetét vizsgáljuk. Tegyük
fel, hogy a bemeneti gráfról tudjuk, hogy egy egységlemez gráf, és távolságadatok
helyett az egyes élek által bezárt szögeket ismerjük. Ez azt jelenti, hogy bármely
két szomszédos él közötti szöget ismerünk, tehát minden pontnál ismerjük az egyes
élek sorrendjét. Jehoshua Bruck, Jie Gao és Anxiao Jiang eredménye [5], hogy ekkor
tudunk konstruálni egy síkbarajzolható hosszközelít® feszít® részgráfot, amelyet út-
vonalkeresésre lehet használni; illetve tudunk adni egy lineáris programot a gráf 2-
dimenzióba való beágyazására.
Megjegyzend®, hogy NP-nehéz feladat annak eldöntése, hogy egy adott gráf egy-
séglemez gráf-e [7]. Továbbá, Bruck, Gao és Jiang megmutatták, hogy egy egység-
lemez gráf lokalizálása a szomszédos élek által bezárt szögek alapján is NP-nehéz
feladat.
2.2. Síkbarajzolható hosszközelít® feszít® részgráf
2.2.1. Deníció. Egy síkbarajzolható gráf (röviden síkgráf) egy olyan gráf, amelynek
létezik olyan síkbarajzolása, amiben nincsenek metsz® élek.
2.2.2. Deníció. Egy c-hosszközelít® feszít® G′ részgráf egy olyan részgráfja G-nek,
melyre igaz, hogy G bármely beágyazásában egy tetsz®leges pontpár közötti legrövidebb
G′-beli út hossza (azaz az élhosszak összege) legfeljebb c-szerese a pontpár közötti G-
beli legrövidebb út hosszának. c-t G′ hosszközelít® feszít® arányának nevezzük.
Ebben a részben megmutatjuk, hogy a szomszédos élek által bezárt szögek ismeretével
7
konstruálható egy síkbarajzolható hosszközelít® feszít® részgráfja egy egységlemez
gráfnak. Megjegyzend®, hogy a pontok helyzetér®l nincs információnk. Így amikor
egy síkbarajzolható hosszközelít® feszít® részgráfról beszélünk, egy olyan G′ ⊆ G
részgráfra gondolunk, amelyre igaz, hogy bármely érvényes p(G) beágyazásra p(G′)
egy síkbarajzolható hosszközelít® feszít® részgráf.
2.2.1. Korlátozott Delaunay gráf
Egy ilyen részgráf megtalálásához vezet® ötlet az, hogy találjunk egy olyan sík-
barajzolható részgráfot, amely garantáltan tartalmaz egy korlátozott Delaunay grá-
fot.
2.2.3. Deníció. Egy Delaunay háromszögelés egy síkbeli ponthalmazon egy olyan
háromszögelés, ami kielégíti az "üres kör" tulajdonságot: bármely háromszög köré írt
kör nem tartalmaz a háromszög három pontján kívüli pontot.
2.2.4. Deníció. Egy korlátozott Delaunay gráf egy olyan részgráfja egy Delaunay
háromszögelésnek, amelyben pontosan az 1-nél nem hosszabb élek találhatók.
2.1. ábra. Példa egy ponthalmaz Delaunay háromszögelésére és korlátozott Delaunay
gráfjára. A szaggatott élek 1-nél hosszabbak, így azok nincsenek benne a korlátozott
Delaunay gráfban.
A fenti deníciók alapján beszélhetünk egy egységlemez gráf egy konkrét beá-
gyazásából kapott ponthalmaz korlátozott Delaunay gráfjáról. Ez a gráf részgráfja
lesz az egységlemez gráfnak is, hiszen csak 1-nél nem hosszabb élek szerepelnek benne.
2.2.5. Állítás. Egy ponthalmaz korlátozott Delaunay gráfja 2,42-hosszközelít® feszít®
részgráfja a ponthalmaz által indukált egységlemez gráfnak.
8
2.2.2. Konstrukció
2.2.6. Állítás. Egy egységlemez gráfban a szomszédos élek által bezárt szögek is-
meretével található olyan részgráf, amely síkbarajzolható és tartalmazza az összes élét
az érvényes beágyazásokból nyert ponthalmazok korlátozott Delaunay gráfjának (gráf-
jainak).
Ebb®l következik az is, hogy ez a részgráf 2,42-hosszközelít® feszít®.A bizonyításhoz
el®ször egy lemmára van szükségünk.
2.2.7. Lemma. Ha ismerjük a szomszédos élek által bezárt szögeket egy egységlemez
gráfban, akkor meg tudjuk határozni azokat az élpárokat, melyek bármely érvényes
beágyazásban metszik egymást.
Bizonyítás: Tegyük fel, hogy két él, AB és CD metszik egymást. Ekkor van a négy
csúcs között olyan, amelyik a másik hárommal össze van kötve. [8]
Ugyanis, legyen a két él metszéspontja E. Ekkor a háromszög-egyenl®tlenség mi-
att:
AE + CE ≥ AC
BE +DE ≥ BD
Így összeadva a két egyenl®tlenséget:
2 ≥ AB + CD ≥ AC +BD
Ebb®l következik, hogy AC vagy BD 1-nél rövidebb. Ugyanez elmondható a BC,
AD élpárra is, így tehát van olyan pont, amelyik mindhárom másik ponttal össze
van kötve.
2.2. ábra. AB és CD metsz® élpár esetén van olyan pont, amelyik mindhárom másik
ponttal össze van kötve.
9
Feltehetjük tehát, hogy B össze van kötve a másik három csúccsal. Ekkor AB
és CD pontosan akkor metszik egymást, ha AB él a ∠CBD < π szögtartományon
belül található, és A és B pont a CD egyenes két különböz® oldalán van.
El®ször is, a szög adatokból könnyen eldönthet®, hogy AB él a ∠CBD < π szög-
tartományon belül található-e. Továbbá, ha AB él a ∠CBD szögtartományon belül
található, és A és B pont a CD egyenes ugyanazon oldalán van, akkor A a BCD
háromszög belsejében van. Ekkor síkgeometriai okok miatt A is össze van kötve a
másik három ponttal. Ez a helyzet is felismerhet® kizárólag a szögek ismeretével,
hiszen ekkor BA a ∠CAD szögtartományon belül van.
2.3. ábra. A három eset a szögek alapján felismerhet®, így eldönthet®, hogy AB és
CD élek metszik-e egymást. Forrás:[5]
Ezek után elkezdhetjük a 2.2.6 állítás bizonyítását.
Bizonyítás: Feltéve, hogy AB és CD élek metszik egymást egy egységlemez
gráfban, csak az egyikük lehet egy Delaunay él a síkbarajzolhatóság miatt. Az élek
közti szögek ismeretével meg tudjuk állapítani, hogy melyikük nem Delaunay él.
Csak háromféleképpen létezhet metsz® élpár, ahogy a 2.4 ábrán látszik. A (ii)
2.4. ábra. Egy érvényes beágyazásban egy metsz® élpár esetén csak ez a három eset
lehetséges. Forrás:[5]
és (iii) esetben a négy pont helyzete egy merev mozgatás és egy nagyítás erejéig
meghatározott. Mivel a Delaunay háromszögelés ezekre nézve invariáns hiszen a
10
pontok távolságának aránya nem változik meg csak egy lehetséges Delaunay három-
szögelés létezik, amit a szögek alapján meg is tudunk határozni.
2.5. ábra. Forrás:[5]
Az (i) esetben a C pont legalább 1 távolságra van A-tól és B-t®l. Vegyük AD
és BD élek felez® mer®legeseit, ezek az O pontban metszik egymást. O az ABD
háromszög köré írt kör középpontja. A felez® mer®legesek négy részre osztják a síkot.
C pont azonos síknegyedben kell, hogy legyen D-vel, hiszen
||p(C)− p(D)|| ≤ 1 < ||p(C)− p(A)||
||p(C)− p(D)|| ≤ 1 < ||p(C)− p(B)||
Így C pont benne van az ABD háromszög köré írt körben. Ezért AB él nem lehet
Delaunay él, hiszen megsérti az "üres kör" tulajdonságot.
A fenti két eljárást alkalmazva az eredeti egységlemez gráf bizonyos éleinek tör-
lésével kapunk egy olyan síkbarajzolható részgráfot, amelyik egy korlátozott Delaunay
gráf összes élét tartalmazza.
Megjegyzend®, hogy egy egységlemez gráfnak akár végtelen sok érvényes síkbaá-
gyazása lehet, ami kielégíti a szögadatokat. Mégis azt kaptuk, hogy minden ilyen
beágyazásból nyert ponthalmazra a fenti részgráf ugyanaz. Ez talán egy kicsit el-
lentmond az elvárásainknak, hiszen a Delaunay háromszögelést nagyon érzékenynek
tartják egyetlen pont apró helyváltoztatása is felboríthatja a gráf egész struktúráját.
Mégis, ahogy meggyelhetjük, a korlátozott Delaunay gráf egyfajta robusztussággal
rendelkezik.
A következ® részben megmutatjuk, hogy ez a síkbarajzolható hosszközelít® feszít®
részgráf hatékonyan alkalmazható a szenzorhálózatokbeli útvonalkeresésben.
11
2.2.3. Útvonalkeresés garantált célbajutással
Tekintsük a földrajzi útvonalkeresés problémáját, amikor is egy forrás csúcsból
szeretnénk eljuttatni egy üzenetet egy cél csúcsba. A cél csúcsnak csak a pozíciója
adott. A legegyszer¶bb megoldás a mohó továbbítás, amikor minden csúcsnál az
üzenetet annak a szomszédnak továbbítjuk, amelyik a legközelebb van a célhoz. Ehhez
viszont szükséges a csúcsok helyzetének ismerete, ami sok esetben túl költséges. Ehe-
lyett rendeljünk hozzá a csúcsokhoz virtuális koordinátákat, és úgy próbáljuk meg
eljuttatni az üzenetet a célba.
Ismeretes, hogy bármely síkgráf egyenes élekkel is síkbarajzolható. Ha vesszük
az el®bbi részben tárgyalt részgráf egy egyenes élekkel történ® síkbarajzolását, akkor
minden ponthoz hozzárendeltünk egy virtuális síkbeli pozíciót, amit útvonalkeresésre
használhatunk. Ezek a virtuális koordináták garantálják a célbaérést, ha az egyáltalán
lehetséges.
2.3. Egységlemez gráf beágyazása lineáris
programozással
Habár az említett bejöv® adatokból történ® beágyazás NP-nehéz feladat, felírva a
következ® lineáris programot meglep®en jó eredményt kapunk. Az LP által produkált
beágyazás majdnem mindig nagyon jól közelíti a valóságot.
Az egyes e élek hosszai, `(e) lesznek a változók a programban. Véletlenszer¶en
kiválasztunk egy élt, és azzal párhuzamosan húzzuk be a vízszintes tengelyt. Mivel
ismerjük bármely két szomszédos él által bezárt szöget, meg tudjuk határozni az
összes él abszolút szögét (azaz az vízszintes tengellyel bezárt szögét). Minden egyes
élt két ellentétes irányú irányított élként fogunk látni. Így egy érvényes beágyazás
eleget tesz a következ®knek:
Élhosszakra vonatkozó elvárás. Minden e élre:
0 ≤ `(e) ≤ 1
Körökre vonatkozó elvárás. Minden e1, e2, . . . , ek élekb®l álló körre, ahol az i-
edik él abszolút szöge θei :
k∑i=1
`(ei) cos θei = 0
k∑i=1
`(ei) sin θei = 0
12
Nem szomszédos pontpárokra vonatkozó elvárás. Bármely két olyan szomszé-
dos e1, e2 élpárra, melyek három végpontja nem indukál egy teljes részgráfot
(háromszöget):
`(e1) + `(e2) > 1
Metsz® élpárokra vonatkozó elvárás. Bármely AB és CD metsz® élpárra igaz,
hogy az egyik pont össze van kötve mindhárom másik ponttal.
Legyen D ez a pont, és x pedig a két él metszéspontja. Ekkor
`(CD) ≥ ||x−D|| = `(AD)sin∠DAB
sin(∠ADC + ∠DAB)
A fenti elvárások adják a lineáris programunk lineáris egyenleteit, egyenl®tlen-
ségeit. A fenti LP egy lehetséges megoldása egy beágyazást ad, hiszen felhasznál-
hatjuk egy feszít®fa élhosszait és a szög adatokat, hogy meghatározzuk a pontok
helyzetét. Sokféleképpen választhatjuk meg a maximalizálandó célfüggvényt; mi úgy
választottuk meg, hogy maximalizálja a legrövidebb élhosszt.
2.3.1. Egyszer¶sít® módszerek
Mikor a gráfban sok él fut, a változók és egyenletek nagy mennyisége magasfokú
bonyolultsághoz vezet. Ilyen esetekben majdnem mindig használhatóak a következ®
módszerek a bonyolultság csökkentése érdekében:
El®ször is, csökkentjük a változók számát. Bármely három AB,BC és CA élre,
amelyek egy háromszöget alkotnak, mivel a háromszög szögei adottak, a három él-
hossz aránya adott. Így elég csak `(AB)-vel tör®dnünk, és a másik két élhosszt
c1 ·`(AB)-vel, illetve c2 ·`(AB)-vel reprezentálhatjuk, valamilyen c1, c2 konstansokkal.
Így három változót eggyel helyettesítettünk.
2.3.1. Deníció. Egy részgráfot x élhosszarányúnak nevezünk, ha rendelkezik a
következ® tulajdonsággal:
Bármely két e0, ek éléhez léteznek e1, e2, . . . , ek−1 élek úgy, hogy van ei−1 és ei
éleket tartalmazó háromszög minden 1 ≤ i ≤ k-ra.
2.3.2. Állítás. Egy x élhosszarányú részgráf összes élhosszának aránya állandó.
Bizonyítás: Egy x élhosszarányú részgráf tartalmaz egy olyan részgráfot, amely
élszomszédos háromszögekb®l áll. A háromszög élhosszainak aránya állandó. Így az
élszomszédos háromszögek élhosszainak aránya is állandó. Ezért a x élhosszarányú
részgráfra is igaz ez a tulajdonság.
Az állítás következményeképpen a x élhosszarányú részgráfok élhosszai egyetlen
változóval reprezentálhatók. S®t, hogy ha több ilyen részgráfnak közös pontjai van-
nak, vagy élekkel össze vannak kötve, akkor minden olyan kör, amely átmegy ezeken
13
a részgráfokon újabb egyenletek felírását teszi lehet®vé, hasonlóan a korábbi körökre
vonatkozó elvárás-hoz. Ha van elég ilyen egyenlet, az ilyen részgráfok méreteinek
aránya, és az ®ket összeköt® élek hossza egyértelm¶en meghatározható így ezek a
x élhosszarányú részgráfok és az ®ket összeköt® élek egy nagyobb x élhosszarányú
részgráfot alkotnak, amelynek élhosszai egyetlen változóval reprezentálhatók.
Megvizsgáltam, hogy pontosan milyen feltételei vannak ennek, és a következ®t
találtam.
2.3.3. Állítás. Ha két x élhosszarányú részgráf úgy csatlakozik egymáshoz, hogy
a) legalább két pontjuk közös, vagy
b) egy pontjuk közös és legalább két éllel össze vannak kötve, vagy
c) legalább 4 éllel össze vannak kötve,
akkor a két részgráf a köztük futó élekkel együtt egy x élhosszarányú részgráfot alkot.
Bizonyítás: Tekintsük az egyik x élhosszarányú részgráf méretét (azaz az élhossza-
kat meghatározó változót) rögzítettnek. Megmutatjuk, hogy ekkor a másik részgráf
mérete is adott.
a) Ha van két közös pontja a gráfoknak és az egyik gráf mérete rögzített, akkor
a szóbanforgó két pont távolsága adott. Így a másik gráf mérete is x, hiszen az
élhosszakat meghatározó arányt bármely két pont távolsága meghatároz.
Ezek után feltehet®, hogy a két részgráf élhalmaza diszjunkt egymástól, ugyanis
ha van egy közös élük, akkor legalább két közös pontjuk is van, és ekkor az a) rész
miatt merev részgráfot alkotnak.
2.6. ábra. a b) részhez.
b) Most már ne csak a méretét rögzítsük le az els® x élhosszarányú részgráfnak,
hanem síkbeli helyzetét is! Ekkor az is igaz, hogy ha egy másik x élhosszarányú
14
részgráal egy csúcsuk közös, és legalább két él fut közöttük, akkor a másik részgráf
beágyazása is egyértelm¶. Próbáljuk tehát a másik részgráfot nagyítással, eltolással
és forgatással úgy pozicionálni, hogy megfeleljen a feltételeknek! Megjegyzend®, hogy
nem az a kérdés, hogy létezik-e ilyen beágyazás, hanem a beágyazás egyértelm¶sége
így feltételezhetjük, hogy létezik megoldás.
El®ször is a közös csúcs helyzete x, így ha ennek a feltételnek megfelel a beá-
gyazás, már nem tudjuk eltolni a részgráfot, csak ebb®l a pontból nagyítani, illetve
forgatni. A két összeköt® él pedig azt adja, hogy a gráf két csúcsát kell egy-egy
szakaszon elhelyezni. Itt szakaszok helyett tekintsünk inkább egyeneseket, tehát te-
kintsünk el az élhosszak fels® korlátjától. Ezt megtehetjük, hiszen tudjuk, hogy létezik
megoldás, és ahogy látjuk majd, ez az egyértelm¶ségen sem ront.
A feladat tehát átfogalmazható a következ®re: egy háromszögnek ismerjük a
szögeit, illetve egyik csúcsának pozícióját. Érjük el (a rögzített csúcs körüli) for-
gatással és nagyítással, hogy a másik két csúcs egy-egy adott egyenesre kerüljön!
Legyen a rögzített csúcs O, a másik két csúcs A és B, és az A csúcshoz tartozó
egyenes e. Tekintsünk egy olyan kezd®állapotot, amikor OA mer®leges e-re. Mozgas-
suk az A csúcsot e-n, és nézzük meg, hogy eközben mi lesz B pályája! Ahhoz, hogy
A-t egy A′ pontba vigyük, forgassuk el az alakzatot ϕ = ∠AOA′-vel, majd nagyít-
sunk OA′
OA = 1cosϕ -vel. Eközben B-vel is ugyanez történik, tehát B is egy egyenesen
fog mozogni, mégpedig egy olyan h egyenesen, amelyre igaz a kezd®állapotban, hogy
OB⊥h.Láttuk tehát, hogy miközben A-t mozgatjuk az e egyenesen, B a h egyenesen
fog mozogni. Legyen f az az egyenes, amelyre B-t el kell helyezni. Ha f és h nem
párhuzamosak, akkor ez egyértelm¶en megtehet®. f és h párhuzamossága két szög
egybeesését jelenti, pontosabban azt, hogy e és f hajlásszöge megegyezik e és h haj-
lásszögével ami mellesleg az ∠AOB szög. A valóságban ez egy nulla valószín¶ség¶
esemény, így kijelenthetjük, hogy a megoldás majdnem mindig egyértelm¶.
c) Hasonlóan az el®z® gondolatmenethez fogalmazzunk meg egy másik feladatot:
ismerjük egy négyszög szögeit. Érjük el eltolással, forgatással és nagyítással, hogy
mind a négy csúcs egy-egy adott egyenesre kerüljön!
Ha ezt meg tudjuk oldani egyértelm¶en, bizonyítottuk az állítást.
Szintén hasonlóan az el®z® gondolatmenethez, mozgassunk három csúcsot a saját
egyenesén, és nézzük meg, mi lesz a negyedik csúcs pályája a mozgatás során!
Jelölje a csúcsokat A,B,C és D, az els® három csúcs egyenesét pedig a, b és
c. Tekintsünk egy olyan kiinduló helyzetet, amikor A,B,C a saját egyenesén van.
Próbáljunk meg elérni egy másik ilyen helyzetet. Ezt három lépésben tehetjük meg.
1. A centrumú forgatással és nyújtással érjük el, hogy AB⊥b. Ekkor a C és D
csúcson áthaladó olyan egyenesek, amelyek mer®legesek AC-re, illetve AD-re
15
azok az egyenesek, amelyeken C és D mozoghat, ha A-t lerögzítjük. (Ezeket
szaggatottan jelöltem az ábrán.)
2.7. ábra. A mozgatás els® és második lépése.
2. Most toljuk el az alakzatot a-val párhuzamosan! Nagyítással érjük el, hogy B
a b egyenesen legyen. Ezek után is igaz lesz, hogy AB⊥b.
3. Az el®z® lépés után megkaptuk azt az egyenest is, amelyen C mozoghat, feltéve,
hogy A új helyzete rögzített. Vegyük ennek az egyenesnek és c-nek a metszetét!
Érjük el, hogy C ide kerüljön egy forgatással és nagyítással! Eközben B a b
egyenesen marad, így elértünk egy olyan helyzetet, amikor A,B és C a saját
egyenesén van.
2.8. ábra. A mozgatás harmadik és összes lépése.
Meggyelhetjük, hogy e mozgatássorozat folyamán C és D hasonlóan viselke-
dik, hiszen azonos m¶veleteket végzünk el rajtuk. Ebb®l következik, hogy miközben
A,B és C egy-egy egyenesen mozognak, D pályája is egy egyenes lesz. Így hasonló
következtetéseket vonhatunk le, mint a b) részben: a megoldás majdnem mindig
egyértelm¶.
16
Ennek a megközelítésnek hatalmas el®nye van. Például, amikor 1000 csúcs helyez-
kedik el egy 18 × 18-as négyzetben egyenletes eloszlással, a legnagyobb összefügg®
komponens tipikusan legalább 4500 élt tartalmaz. A fenti érvelés szerint az LP vál-
tozók száma majdnem mindig lecsökkenthet® 30 alá. Így a lineáris egyenletek száma
is drasztikusan csökken.
A fenti meggyelés nemcsak a bonyolultságot csökkenti, hanem újabb egyenl®tlen-
ségeket adhat a beágyazás min®ségének garanciája érdekében:
Egy adott H x élhosszarányú részgráfban legyen az élhosszokat reprezentáló
változó `(H). Ekkor bármely H-beli A,B csúcspárra igaz, hogy létezik c konstans,
hogy az ||A−B|| = c · `(H) egyenlet teljesül. Az LP-hez hozzávesszük a c · `(H) > 1
egyenl®tlenséget.
Megjegyzend®, hogy ezek az egyenl®tlenségek az `(H) változót alulról korlátozzák.
Így a fent említett célfüggvényt használva azaz a legrövidebb élhosszt maximalizálva
ezek nem adnak megszorításokat a változóra, hiszen a célfüggvény miatt csak a
legszigorúbb fels® korlátot kell gyelembe venni. Más célfüggvény esetében persze
tényleg hasznosak lehetnek ezek a plusz korlátozások.
2.3.2. Az eljárás eredményessége
A bemutatott LP-beágyazás szerz®i implementálták az algoritmust, és többféle
bemenetre is tesztelték. Most ezeket az eredményeket mutatom be. Az els® teszteset-
ben egy 15 × 15-ös négyzetben egyenletes eloszlással elhelyezked® n csúcsból a leg-
nagyobb összefügg® komponenst próbálták beágyazni. Az eredmények a 3.1. táblázat
fels® részében láthatók, ahol minden érték 50 kísérlet átlagaként jött ki. A táblázat-
ban a távolság megsértése az olyan nem szomszédos csúcspárok számát jelöli, amelyek
távolsága hibásan kisebb vagy egyenl® 1-gyel. dhiba mutatja legkisebb ilyen hibás
távolságot. Az extra metszés oszlopban megjelenített értékek azt mutatják, hogy hány
olyan metsz® élpárt hozott létre az LP-beágyazás, amelyek eredetileg nem metszik
egymást. A beágyazás más követelményeit az LP-eljárás garantálja: az élhosszakra
vonatkozó elvárás garantálja, hogy minden élhossz legfeljebb 1; a körökre vonatkozó
elvárás garantálja, hogy minden szomszédos élpár közti szög megfelel®; a metsz®
élpárokra vonatkozó elvárás pedig garantálja, hogy minden eredetileg metsz® élpár a
beágyazásban is metszi egymást. A táblázat további oszlopai: a gráf rendje mutatja a
beágyazott egységlemezgráf csúcsainak számát, míg a csúcsok foka a csúcsok átlagos
fokszámát írja le. A második tesztesetben a csúcsok egy körgy¶r¶ben helyezkednek el,
mely küls® sugara 7, 5, bels® sugara pedig 2, 5. Az eredmények szintén a táblázatban
találhatók.
A beágyazás egy-egy tipikus eredménye látható a következ® ábrákon.
Az eredmények láthatóan nagyon jók. A nem szomszédos, de mégis 1-nél közelebbi
17
hálózat négyzetben
gráf csúcsok távolság dhiba extra
rendje foka megsértése metszés
n = 200 33,22 3,6422 0,80 0,9728 0,00
n = 400 337,96 5,4512 9,68 0,7642 0,50
n = 600 596,82 7,9110 6,50 0,8714 0,68
n = 800 799,64 10,5237 1,60 0,9568 0,10
n = 1000 999,94 13,1944 0,68 0,9601 0,00
hálózat körgy¶r¶ben
gráf csúcsok távolság dhiba extra
rendje foka megsértése metszés
n = 200 59,76 4,1810 1,70 0,9368 0,00
n = 400 397,30 7,4084 6,62 0,8426 0,42
n = 600 599,88 11,0106 0,90 0,9570 0,08
n = 800 799,88 14,6423 0,10 0,9909 0,00
n = 1000 1000,00 18,2822 0,00 1,0000 0,00
2.1. táblázat. Egységlemezgráfok beágyazásának eredményessége. Minden érték 50
kísérlet eredményének átlaga. Forrás:[5]
2.9. ábra. Egy 597 csúcsból álló egységlemezgráf egy 15× 15-ös négyzetben. Bal: az
eredeti gráf. Jobb: LP-beágyazás. Forrás:[5]
2.10. ábra. Egy 600 csúcsból álló egységlemezgráf egy körgy¶r¶ben. Bal: az eredeti
gráf. Jobb: LP-beágyazás. Forrás:[5]
18
pontpárok száma nagyon kicsi, és még az ilyen pontpárok távolsága is közel van 1-
hez. A tévesen metsz® élpárok száma is közel 0. A szerz®k sok más alakzatra is
tesztelték az eljárást, és az eredmények végig nagyon jók voltak. Így kijelenthetjük,
hogy az LP-alapú eljárás majdnem tökéletesen képes megoldani a szenzorhálózatok
lokalizációjának problémáját ebben a speciális esetben.
19
3. fejezet
Perturbációs lokalizáció
3.1. Bevezetés, eredmények
Ebben a fejezetben a lokalizációs feladat egy másik speciális esetét vizsgáljuk,
amikor is a bejöv® élhossz adatok mellett perturbációs adatok is rendelkezésünkre
állnak. Feltesszük tehát, hogy a szenzorok kis mértékben mozoghatnak, és képesek
vagyunk a mozgás során az élhosszak többszöri lemérésére. Nem szükséges bármit is
tudnunk a mozgás irányáról és pontos mértékér®l; elegend® annyi, hogy a helyváltoz-
tatás mértéke nem túl nagy és nem túl kicsi.
Zhu, Gortler és Thurston eredménye [6], hogy elég mennyiség¶ és elég pontos
perturbációs adat ismeretében garantáltan lokalizálhatunk bármilyen "generikusan
globálisan merev" (GGM) gráfot egy euklideszi transzformáció (forgatás, eltolás,
tükrözés) erejéig. S®t, egy ilyen tulajdonsággal nem rendelkez® gráf bizonyos részhal-
mazait is lokalizálhatjuk ezzel az eljárással. Ezeket a részhalmazokat "stressz magtér
által lokalizálhatónak" (SML) hívjuk.
Az algoritmus garantált m¶ködéséhez a páronkénti távolságadatok mennyiségével
négyzetesen arányos adatra van szükség. Bár a feladat e megközelítése sok mérést
igényel, gyorsabb mérési technológiával az algoritmus praktikusabbnak bizonyulhat
a jöv®ben. Az algoritmus alkalmas meglév® eljárások fokozására is, ha egy hálózat
nehezen felderíthet® részére alkalmazzák. Az eljárás nemcsak 2, hanem 3 vagy maga-
sabb dimenzióban is m¶ködik.
3.2. Az eljárás áttekintése
A hálózati gráf összes m élén végzett (négyzetes) hosszmérés eredményeképp ka-
punk egy pontot Rm-ben. A szenzorok mozgatásával pontok egy halmazát kapjuk
Rm-ben. Minden ilyen pont egy pont a "mérési halmazból". A mérési halmaz olyan
pontok halmaza Rm-ben, amelyek a gráf d dimenzióba (esetünkben 2 dimenzióba)
20
való beágyazásából származó összes lehetséges konzisztens mérést reprezentálják. E
halmaz dimenziója m-nél kisebb lesz, hiszen csak konzisztens méréseket tartalmaz.
Így egy megfelel® dimenziójú síkot tudunk illeszteni a halmazra, megkapva ezzel a
mérési halmaz érint®jének közelítését. Ha rendelkezünk az érint®tér egy reprezentá-
ciójával, vegyük az ortogonális kiegészít®jét, hogy így megkapjuk a normális tér egy
reprezentációját.
Most néhány gráfmerevségi tételt alkalmazunk, hogy megmutassuk, hogy ez az
adat elegend® a beágyazás el®állításához. El®ször is, ismeretes, hogy a normális tér
minden vektora a gráf beágyazásának ún. "stressz mátrixát" reprezentálja. Ehhez
hozzávesszük azt a friss eredményt, miszerint ha egy gráf GGM, akkor majdnem
az összes stressz mátrixának megfelel®en kis magtere lesz. Ezzel meghatározhatjuk a
beágyazást egy ismeretlen an transzformáció erejéig. Végül egy nem túl régi elméleti
eredmény alapján egy GGM gráf ismert élhosszaival meghatározhatjuk a beágyazást
egy ismeretlen euklideszi transzformáció erejéig ami a célunk volt.
Az algoritmus kiterjeszthet® nem GGM gráfokra is a gráf bizonyos csúcshalmazai
által indukált, normális térbeli alterek vizsgálatával. Ez ösztönöz az "stressz magtér
által lokalizálható" halmazok deniálására, ami pontosan leírja az eljárás által loka-
lizálható csúcshalmazokat.
3.3. Az eljárás elmélete
A hossznégyzet függvény, ` : Cd(G) → Rm, egy olyan függvény, ami egy adott p
szerkezetre egy m-dimenziós vektort ad, G mindegyik éléhez a hossznégyzetét ren-
delve, azaz ∀u, v ∈ E : `(p)u,v = ||p(u) − p(v)||2. Fontos, hogy az m-dimenziós
vektorok koordinátáit E-beli élekkel indexeljük.
3.3.1. Mérési érint®tér
`(Cd(G)) ⊂ Rm-vel jelöljük a gráf összes szerkezetének összes hossznégyzet mé-
résének halmazát, és G d-dimenzióbeli mérési halmazának hívjuk. Ez a halmaz fél-
algebrai, így egy sokaságot is alkot `(p)-nél majdnem minden (és minden generikus)
p-re. A kivételek egy nullmérték¶ halmazt alkotnak, amely kielégít néhány alacsony-
fokú polinomegyenletet, így tehát az ilyen szinguláris szerkezetek nagyon ritkának
mondhatók. Egy nem szinguláris p-re jóldeniált a mérési érint®tere `(Cd(G))-nek az
`(p) pontban, amit T (p)-vel fogunk jelölni.
A szenzorhálózatok lokalizációs feladatának eme megközelítésében feltesszük, hogy
nemcsak `(p)-t tudjuk mérni, hanem `(p+ ∆i)-t is. Ezekkel a mérési adatokkal T (p)
egy közelítését tudjuk illeszteni ezekre a pontokra. Ez egyre kisebb és kisebb pertur-
bációkat használva (a zaj nélküli esetben) konvergálni fog a helyes altérhez minden
21
generikus p-re.
3.3.2. A stressz-normális tulajdonság
A (Jacobi-féle) linearizációja `-nek a p pontban `∗p : Rnd → Rm, és a standard
bázisban felírt mátrix reprezentációját merevségi mátrixnak hívják. Egy nem szin-
guláris p-re teljesül T (p) = `∗p(Rnd). Más szóval, a mérési érint®tér egyenl® a Jacobi
képterével, ami a merevségi mátrix oszlopterével reprezentálható.
Egy p szerkezet stressz vektora egy ω ∈ Rm vektor, ami teljesíti minden vi ∈ V -re:∑vi,vj∈E
ωvi,vj(p(vj)− p(vi)) = 0.
Más szóval, minden csúcs helyzete egyenl® a szomszédos csúcsok helyzetének ω-val sú-
lyozott átlagával. (Emlékezzünk, hogy az élek irányítatlanok, így ωvi,vj = ωvj ,vi.)
Egy egyszer¶ példán (3.1 ábra) szeretném szemléltetni a stressz vektor jelentését.
3.1. ábra. Egy egyszer¶ síkbaágyazott gráf és egy példa a stressz vektorára. Fontos
megjegyezni, hogy ez a beágyazás nem generikus.
A p szerkezet stressz vektorainak vektorterét S(p)-vel jelöljük, és stressztérnek
nevezzük.
Az `(p)-nél vett mérési érint® és S(p) közötti kapcsolatot írja le a következ® állítás:
3.3.1. Állítás (Stressz-normális tulajdonság). Minden p szerkezetre igaz, hogy
S(p) az ortogonális kiegészít®je `∗p(Rnd)-nek Rm-ben.
Következésképpen egy generikus p-re az is igaz, hogy S(p) ortogonális kiegészít®je
T (p)-nek Rm-ben. E ténynek köszönhet®en a mérési érint®térb®l ki tudjuk számolni
egy generikus szerkezet stresszterét.
22
3.3.3. An beágyazás a stresszekb®l
Egy p szerkezet egy Ω stressz mátrixa egy olyan n × n-es szimmetrikus valós
mátrix, amelyet egy stressz vektorból kapunk a következ®képpen:
1. ∀vi, vj ∈ V : Ωi,j = ωvi,vj, ha vi 6= vj és vi, vj ∈ E
2. ∀vi, vj ∈ V : Ωi,j = 0, ha vi 6= vj és vi, vj /∈ E
3. Ω(1, ..., 1)T = 0.
Az stressz vektorok és mátrixok bijektíven megfeleltethet®k egymásnak, ezért az Ω ∈S(p) jelölést használjuk.
Az el®z® példabeli ω = (1, 1, 1,−13 ,−
13 ,−
13) stressz vektorhoz tartozó stressz
mátrix:
Ω =
−3 1 1 1
1 −13 −1
3 −13
1 −13 −1
3 −13
1 −13 −1
3 −13
Egy adott Ω stressz mátrix esetén a stressz magtér Ω magtere, amit K(Ω)-val
jelölünk.
A deníció alapján bármely S(p)-beli Ω-ra igaz, hogy K(Ω) tartalmazza az 1 =
(1, ..., 1)T vektort és a (p(v1), ..., p(vn))T mátrix oszlopterét. Ez összhangban áll a
ténnyel, miszerint minden S(p)-beli stressz mátrix minden olyan p′ stressz mátrixa is
egyben, amely megkapható p-b®l egy (d-dimenziós) an transzformációval. Tegyük
fel, hogy létezik olyan Ω ∈ S(p), amelyre igaz, hogy dimK(Ω) = d+ 1, azaz, hogy a
magtere csak a fent említett vektorok alterét tartalmazza. Ekkor azt mondjuk, hogy
Ω-nak minimális a stressz magtere.
Tegyük fel, hogy egy ilyen minimális magtérnek kiszámoltuk egy bázisát, amit
1,x1, ...,xd-vel jelölünk. Deniáljuk p′ ∈ Cd(G) szerkezetet úgy, hogy p′(vi) az i-
edik oszlopa a (x1, ...,xd)T mátrixnak. Ekkor p megkapható p′-b®l egy d-dimenziós
an transzformáció segítségével. Így sikeresen lokalizáltuk a gráfot egy an transz-
formáció erejéig.
Valójában egy rögzített G gráfra és d dimenzióra dimK(Ω) majdnem minden
véletlenszer¶en választott szerkezetre, és annak majdnem minden véletlenszer¶en
választott stressz mátrixára ugyanaz lesz. Így tehát szinte bármely Ω ∈ S(p) mátrixot
használhatjuk. Mitöbb, azt is mondhatjuk, hogy a szerkezetnek, vagy akár a gráfnak
a tulajdonsága a minimális stressz magtér.
Ha a gráf nem minimális stressz magter¶, még nem veszett el minden. Jelöljük Rn
standard bázisát e1, ..., en-nel. Ekkor egy adott S csúcshalmazra a természetes tar-
talmazás S ⊆ V egy πS : Rn → Rn vetítést indukál, amelyre igaz, hogy πS(ei) = ei,
23
ha vi ∈ S, és πS(ei) = 0 különben. Ha egy Ω ∈ S(p) mátrixra a stressz magtér
K(Ω) az S-nek megfelel® koordinátákra való vetítés után d + 1 dimenziós azaz
dimπSK(Ω) = d + 1 akkor a fenti érvelést használva a πSK(Ω) stressz magtér
vetületb®l ki tudjuk számítani S csúcsainak pozícióját egy an transzformáció ere-
jéig. Ha létezik ilyen Ω, akkor azt mondjuk, hogy S-nek minimális a vetített stressz
magtere.
Hogy a fenti tulajdonsággal rendelkez® maximális csúcshalmazokat találjunk,
el®ször keresünk egy d + 1 csúcsból álló kiinduló S0 komponenst, amely teljesíti a
feltételeket, majd egyesével hozzáveszünk olyan csúcsokat, amelyek nem rontják el
a minimális vetített stressz magtér tulajdonságot. A háttérben meghúzódó lineáris
függetlenség miatt a csúcsok vizsgálatánál nem számít a sorrend.
Hasonlóan a fentebb említett tényhez, egy adott gráf adott dimenzióbeli összes
generikus szerkezetének összes stressz mátrixa azonosan viselkedik a stressz magtér
dimenzióját illet®en. Így a zajos bemeneti távolságadatok helyett véletlenszer¶en
generálunk a gráfhoz egy szerkezetet, és az ebben található pontos távolságadatokat
használva keresünk a fenti tulajdonsággal rendelkez® csúcshalmazt.
A siker feltétele GGM esetben
A minimális stressz magtér tulajdonság ekvivalens a generikus globális merevség-
gel.
3.3.2. Állítás. Egy legalább d + 2 csúccsal rendelkez® gráf összes generikus szer-
kezete vagy globálisan merev Rd-ben, vagy egyik sem az. Így ezt tekinthetjük a gráf
tulajdonságának, és ezt hívjuk generikus globális merevségnek Rd-ben.
3.3.3. Állítás. Egy legalább d+2 csúccsal rendelkez® gráf akkor és csak akkor GGM
Rd-ben, ha minimális stressz magtere van d-dimenzióban.
Így tehát egy GGM gráfot tudunk lokalizálni egy an transzformáció erejéig.
A siker feltétele nem GGM esetben
Hasonlóan, ha egy csúcshalmaznak minimális a vetített stressz magtere, akkor a
csúcsait tudjuk lokalizálni egy an transzformáció erejéig.
3.3.4. Euklideszi beágyazás
Most az élhosszak ismeretével eltüntetjük az an meghatározatlanságot.
Legyen p a keresett megoldás, p′ pedig az el®z® fejezetben kiszámított eredmény.
Tudjuk, hogy p megkapható p′-b®l egy an transzformáció segítségével. Legyen L az
an transzformáció lineáris részét reprezentáló d× d-es mátrix.
24
Ekkor a következ® egyenletrendszert kapjuk:
∀vi, vj ∈ E : ||L(p′(vi)− p′(vj))||2 = `(p)vi,vj
Hogy ezt megoldjuk, írjunk L helyére M = LTL-et, így a következ® lineáris egyen-
letrendszert kapjuk:
∀vi, vj ∈ E : (p′(vi)− p′(vj))TM(p′(vi)− p′(vj)) = `(p)vi,vj
Ha csak egy S csúcshalmazt szeretnénk lokalizálni, akkor E értelemszer¶en az S-en
belül futó éleket jelöli.
Az egyenletrendszert megoldva megkapjuk M -et, amib®l Cholesky-felbontással
megkapjuk a keresett L mátrixot.
A siker feltétele GGM esetben
Az egyetlen fennmaradó aggodalom az lehet, hogy a rendszernek lehet-e több
megoldása. Szerencsére már belátott tény, hogy ha p egy olyan gráf generikus szer-
kezete, amelyben minden csúcs foka legalább d, akkor a megoldás egyértelm¶. Mitöbb,
az is igaz, hogy ha egy legalább d+ 2 csúcsú gráf generikus szerkezetének minimális
a stressz magtere, akkor minden csúcs foka legalább d+ 1. Így bármely GGM gráfra
sikeresen tudunk lokalizálni.
A siker feltétele nem GGM esetben
Amikor a csúcsok egy részhalmazával és a stressz magtér vetületével foglalko-
zunk, nincs semmiféle garancia a kezünkben a csúcsok fokszámáról, így ezt a feltételt
magunk kell garantálnunk úgy, hogy a d-nél kisebb fokszámú csúcsokat kivesszük a
halmazból. Összegezve: ha S-nek minimális a vetített stressz magtere és az indukált
részgráfban minden csúcs legalább d-edfokú, akkor a stressz magtér használatával
tudunk lokalizálni egy an transzformáció erejéig, és az élhosszak ismeretével eltün-
tethetjük az an meghatározatlanságot. Egy ilyen csúcshalmazt stressz magtér által
lokalizálhatónak (SML) hívunk.
3.3.5. Az eljárás által lokalizálható halmazok
3.3.4. Deníció. A csúcsok egy S részhalmaza globálisan linkelt egy p szerkezet-
ben, ha G bármely olyan szerkezetében, amelyben az élhosszak a p-beli élhosszakkal
egyenl®k, S beágyazásai kongruensek egymással.
Vegyük észre, hogy egy csúcshalmaz globálisan linkelt lehet anélkül is, hogy egy
globálisan merev részét alkotná G-nek, hiszen a gráf összes éle indirekt módon kor-
látozhatja S beágyazását.
25
3.2. ábra. A teli csúcsok globálisan linkeltek a beágyazásban, habár az általuk indukált
részgráf nem globálisan merev. Forrás: [6]
Egy olyan csúcshalmazt, amely minden generikus szerkezetben globálisan linkelt,
generikusan globálisan linkeltnek (GGL) nevezünk. Belátható, hogy egy SML csúcs-
halmaz minden generikus szerkezetben globálisan linkelt, azaz GGL. A megfordítás
nem feltétlenül igaz, így nem jelenthetjük ki, hogy az eljárás képes minden GGL
halmazt lokalizálni.
Azt viszont kijelenthetjük, hogy minden GGM részgráfot sikeresen lokalizál az
eljárás. Ez azért igaz, mert egy ilyen részgráf mindig kielégíti az SML csúcshalmazokra
vonatkozó feltételeket. Így amikor egy GGM részgráf bármely d+1 csúcsával indítjuk
a lokalizálható csúcshalmaz keresését, akkor a GGM részgráf minden csúcsa be fog
kerülni ebbe a halmazba, hiszen nem növelik a stressz magtér vetületének dimen-
zióját. A d-nél kisebb fokszámú csúcsok kidobálása pedig nem érinti a részgráfunk
csúcsait, hiszen abban minden csúcs legalább d+ 1-edfokú.
Összegezve, az algoritmus által lokalizálható csúcshalmazok osztálya pontosan az
SML csúcshalmazok. A fent említett három osztály közötti kapcsolat:
GGM részgráf csúcshalmaza ⊆ SML halmazok ⊆ GGL halmazok.
3.4. Az eljárás eredményessége
Ebben a részben szimulációkkal szemléltetjük az algoritmus eredményességét. A
szerz®k úgy találták, hogy zaj nélküli esetben és nagyon kicsi perturbációt használva
az eljárás úgy m¶ködik, ahogy azt az elmélet jósolja, azaz mindig rekonstruál teljes
GGM szerkezeteket és SML csúcshalmazokat elhanyagolható hibával. Így most arra
vagyunk kiváncsiak, hogy hogyan m¶ködik az algoritmus zaj mellett.
26
3.4.1. A szimuláció beállításai
Tesztgráfok
A tesztelés két véletlen gráf típuson zajlik. Az els® típus konstruálásánál egyen-
letesen helyezünk el csúcsokat [0, 1]2-ben, és olyan csúcspárok közé húzunk éleket,
amelyek egy távolsághatáron, R-en belül vannak, végül pedig néhány élt eltávolí-
tunk, hogy minden csúcs megfeleljen egy fokszámkorlátnak. Elég sok csúccsal az ilyen
gráfok nagyon hasonlóak; ezeket izotróp gráfoknak hívjuk. A másik típus konstruk-
ciójánál a gráfra egy alaprajzot fektetünk, és eltávolítjuk a falakon áthaladó éleket.
Ezek a gráfok nagy mértékben különböznek egymástól; ezeket anizotróp gráfoknak
nevezzük.
A valóságban a csúcsok fokszámának korlátozása azt jelenti, hogy ha egy adott
csúcs egy zsúfolt területen van, nem szükséges az összes lehetséges szomszédjával
kommunikálnia; elég, ha egy el®re meghatározott számú szomszédjával van összeköt-
tetésben így energiát spórolhatunk.
Zaj modell
A zaj szimulálásához egy egyszer¶ additív gaussi modellt alkalmazunk. Ebben
a zaj egy nulla várható érték¶ Gauss-eloszlást követ, amely szórása εR, ahol ε egy
zajszint paraméter. Egy mai berendezés zajszintje kb. 0, 1%, így ε-t erre az értékre
állítjuk be; a technológia fejl®désével ez csökkenhet, így az ε = 0, 01% értékkel is
végzünk kísérleteket. Kés®bb erre a két esetre magas zajszintként, illetve alacsony
zajszintként hivatkozunk.
Hiba metrika
Az algoritmus bármely maximális SML csúcshalmazt lokalizál egy euklideszi transz-
formáció erejéig. Hogy összevessük a kiszámított lokalizációt (p′) a valódival (p), min-
den S SML csúcshalmaz két beágyazását egymáshoz illesztjük egy olyan Q euklideszi
transzformációval, amely a legkisebb négyzetes eltérés tekintetében optimális, azaz
minimalizálja a∑
vi∈S ||p(vi)−Q(p′(vi))||2 összeget. Egy vi csúcsra jelölje Qi azt az
ilyen transzformációt, amely egy olyan SML halmazra lett kiszámítva, amely tartal-
mazza vi-t. Ezek után bevezetünk egy hiba metrikát, a helyzeti hibát, σ-t, amelyre
teljesül:
σ2 =1
n
∑n
i=1||p(vi)−Qi(p
′(vi))||2.
A szerz®k az algoritmus hatékonyabbá tétele érdekében kidolgoztak egy mérés csökken-
tési stratégiát, amellyel a mérések száma O(ndm)-r®l O(c2dm)-re csökkenthet®, ahol
c a gráfban el®forduló legnagyobb fokszám. A hiba metrika két változatát használjuk:
27
σn jelöli a hibát, amikor az eljárásban nem használunk mérés csökkentési stratégiát,
és σr jelöli a hibát, amikor használunk.
Érdemes kiemelni, hogy az algoritmus eredményét próbáljuk kiértékelni, ami
deníció szerint csak egy euklideszi transzformáció erejéig meghatározott. Így amikor
a csúcsok valódi helyzetét használjuk, azt csak azért tesszük, hogy össze tudjuk ha-
sonlítani az eredményt a valósággal, ez pedig nem javít a kiszámított realizáció bels®
min®ségén.
Legyen S a legnagyobb felismert SML csúcshalmaz. Ekkor a lokalizálhatósági
arány : L = |S|n . E mennyiség három változatát használjuk a továbbiakban: Ln a
mérés csökkentési stratégia nélkül, Lr a mérés csökkentési stratégia használatával és
Lt trilateráció használata esetén (zaj nélkül). Ez utóbbi a legnagyobb trilaterációs
részgráf csúcsainak aránya az egész gráfban, így ez egy elméleti maximum a trilaterá-
ciót használó eljárások számára. A gyakorlatban a zajos mérések tovább csökkentik
a legnagyobb trilaterizációs részgráfot.
Összefüggés a valósággal
Az eredmények intuitívabb megértése érdekében a hosszmértékeket (a zaj szórását
(εR) és a helyzeti hibát (σ)) valódi mértékegységekben tüntetjük fel. Egy berendezés
nyomán a maximális élhosszt, R-et 30m-re állítjuk. Így adódik a magas zajszintnél
εR=3cm. Fontos megemlíteni, hogy ez a 3cm mérési hiba kicsinek t¶nhet, ha a ma-
ximális élhossz 30m lehet. Azonban mivel a csúcsok fokát is korlátozzuk, egy tipikus
élhossz sokkal kisebb: a tesztgráfokban az élhosszak mediánja általában 4-6m körül
van. Másszóval az éleknek több, mint felére teljesül, hogy a zaj szórása több, mint a
hosszuk 0.5%− 0.7%-a.
3.4.2. Szimulációs eredmények
Húsz különböz®, 200 csúcsú véletlen gráfot generálunk minden (gráf típus, zaj-
szint, fokszám korlát) kombinációra, ahol a gráf típusa izotróp vagy anizotróp, a
zajszint magas vagy alacsony és a fokszám korlátja 5-t®l 10-ig terjedhet. Ezután fut-
tatjuk az algoritmust ezekre a gráfokra a mérés csökkentési stratégia használatával és
anélkül. Mindegyik futtatás egy adatot eredményez egy adott hiba metrikát illet®en,
amelyeket összegy¶jtünk és ábrázolunk.
Az eljárás egy adott gráf nagy részét képes lokalizálni, még akkor is, ha a gráfban
alacsony az átlagos fokszám. Ez egy jelent®s min®ségi el®ny a többi mai eljárással
szemben. A 3.3 ábrán a háromféle lokalizálhatósági arányt láthatjuk az átlagos fok-
szám függvényében. Err®l leolvasható, hogy ha a gráf mérsékelten összefügg®, akkor
a trilaterációs technika a gráf csak kicsiny részein m¶ködik; Lt mindig sokkal kisebb,
mint Ln amire L fels® korlátjaként is tekinthetünk. Mitöbb, a mérés csökkentési
28
stratégiát használva is sokkal jobban m¶ködik a bemutatott eljárás, mint a trilaterá-
ció. Még megjegyzend®, hogy izotróp gráfoknál az Ln és Lr közti rés a fokszám
növekedésével gyorsan csökken, és majdnem elt¶nik, mikor az átlagos fokszám eléri
a hetet.
3.3. ábra. Lokalizálhatósági arányok az átlagos fokszám függvényében. A bal oldali
ábra az izotróp, a jobb oldali az anizotróp esetet mutatja. Forrás: [6]
A 3.4 árba a helyzeti hibát mutatja az átlagos fokszám függvényében. Általánosan
elmondható, hogy a hiba a fokszám növekedésével csökken, hiszen egyre több él-
hosszt ismerünk. Látszik az is, hogy a hiba nem sokkal nagyobb, mint a perturbációs
sugár (azaz, hogy milyen mértékben mozgatjuk a szenzorokat a méréskor). Az eljárás
láthatóan kielégít® eredményeket ad izotróp gráfokra, hiszen a helyzeti hiba 0,8m alá
süllyed, ahogy az átlagos fokszám eléri a hatot, és ez még a magas zajszintnél is igaz.
Anizotróp esetben az egyenletlen összeköttetés nagyobb kihívást eredményez, de az
eljárás általában egész jól teljesít. Az ábrán meggyelhetjük azt is, hogy a mérés
csökkentési stratégia nem növeli sokkal a helyzeti hibát, habár a szükséges mérések
számát drasztikusan csökkenti. Izotróp esetben alacsony zajszintnél kissé nagyobb a
különbség σn és σr között, de igazából mindkét mennyiség kivételesen alacsonynak
mondható.
Most vizsgáljuk meg, hogyan m¶ködik az algoritmus a gráf méretének függ-
vényében! A két gráftípusból generálunk 40-40 véletlen gráfot, magas zajszinttel,
a fokszám korlátot pedig izotróp esetben 6-ra, anizotróp esetben 8-ra állítjuk. Úgy
generáljuk a gráfokat, hogy a csúcsok száma egyenletesen oszoljon el 50 és 400 között.
A futtatás eredményei a 3.5 ábrán láthatók. Megjegyezzük, hogy az átlagos fokszám
az izotróp gráfokban 6, az anizotróp gráfoknál pedig 5,5-t®l 7-ig terjed, ahogy a gráf
mérete n®. Ennek az az oka, hogy a használt alaprajz mindegyik gráfra ugyanaz,
így minél több csúcsú a gráf, annál nagyobb lesz az átlagos fokszám. Az ábráról le-
olvasható, hogy a lokalizálhatósági arány tekintetében az eljárás akár használjuk a
mérés csökkentési stratégiát, akár nem jól teljesít; míg a háromszögelést használó
29
3.4. ábra. A helyzeti hiba az átlagos fokszám függvényében. A bal oldali oszlopban az
izotróp, a jobb oldaliban az anizotróp eset látható. A fels® sor a magas zajszintnek
felel meg, ahol a zaj szórása 3 cm, a perturbációs sugár pedig 60 cm. Az alsó sor az
alacsony zajszintnek felel meg, ahol a zaj szórása 0,3 cm és a perturbációs sugár 24
cm. Forrás: [6]
eljárások egyre kisebb csúcshalmazokat képesek lokalizálni. A helyzeti hiba azonban
egyre nagyobbá válik, ahogy a gráf mérete növekszik.
Végül kiemeljük, hogy a mérés csökkentési stratégia tényleg drasztikusan befolyá-
solja a szükséges mérések számát, ahogyan ez a 3.6 ábrán is látszik.
30
3.5. ábra. A lokalizálhatósági arány és a helyzeti hiba a csúcsok számának füg-
gvényében. A bal oldali oszlopban az izotróp, a jobb oldaliban az anizotróp eset
látható. Forrás: [6]
3.6. ábra. A szükséges mérések száma a mérés csökkentési stratégia használatával
és anélkül. Most is a bal oldalon látható az izotróp eset, a jobb oldalon pedig az
anizotróp eset. Forrás: [6]
31
Irodalomjegyzék
[1] P. Biswas, T-C. Liang, T-C Wang, Y. Ye: Semidenite Programming Based
Algorithms for Sensor Network Localization, ACM Transactions on Sensor Net-
works 2, 188-220. (2006)
[2] Jordán T., B. Jackson: Graph theoretic techniques in the analysis of uniquely
localizable sensor networks, 13. (2008)
[3] T. Eren, D. K. Goldenberg, W. Whiteley, Y. R. Yang, A. S. Morse,
B. D. O. Anderson, P. N. Belhumeur: Rigidity, Computation and Random-
ization in Network Localization INFOCOM 2004 Proc., 2673-2684.
[4] http://upload.wikimedia.org/wikipedia/commons/b/be/Unit_disk_graph.svg
[5] J. Bruck, J. Gao, A. Jiang: Localization and routing in sensor networks by
local angle information, ACM Transactions on Sensor Networks 5, (2009)
[6] Y. Zhu, S. J. Gortler, D. Thurston: Sensor Network Localization Using
Sensor Perturbation, ACM Transactions on Sensor Networks 7, (2011)
[7] H. Breu, D. G. Kirkpatrick: Unit Disk Graph Recognition is NP-hard, Com-
putational Geometry 9, 3-24. (1998)
[8] J. Gao, L. J. Guibas, J. Hershberger. L. Zhang, A. Zhu: Geometric Span-
ner for Routing in Mobile Networks, Lemma 4.1., Proceedings of the 2nd ACM in-
ternational symposium on Mobile ad hoc networking & computing, 45-55. (2001)
32