-
Technisches Gebiet
-
Die vorliegende Erfindung bezieht sich auf ein Ortungsverfahren und eine Vorrichtung zu dessen Durchführung, und insbesondere auf eine effiziente Steuerung von mindestens einem genauen Ortungsverfahren und mindestens einem energiesparenden Ortungsverfahren auf einem funkbasierten Endgerät (z. B. Mobiltelefon) zur Durchführung von proaktiven ortsbezogenen Diensten.
-
Hintergrund der Erfindung
-
Ortsbezogene Dienste (Location-based Services, LBSs) stellen ihren Nutzern Informationen und Dienste in Abhängigkeit des Aufenthaltsortes bereit. Während dem Nutzer bei reaktiven LBSs ortsbezogene Informationen auf Anfrage ausgeliefert werden, lösen proaktive LBSs beim Eintreten vordefinierter räumlicher Ereignisse, wie etwa dem Annähern eines Nutzers an einen „Point of Interest” (PoI), automatisch Dienstaktionen aus.
-
Während bereits verschiedene reaktive LBSs verfügbar sind, werden proaktive LBSs bislang nur vereinzelt und in sehr rudimentärer Form angeboten.
-
Beispiele proaktiver LBSs sind folgende Dienste:
-
- • Proaktiver Touristenführer: Ein Nutzer wird automatisch mit entsprechenden Hintergrundinformationen versorgt, sobald er sich einer bestimmten Sehenswürdigkeit annähert.
- • „Child Tracker”: Ein Kind ist mit einem mobilen Endgerät ausgestattet, welches seine Eltern informiert, sobald es eine vorbestimmte Zone (zum Beispiel den Schulhof) verlässt.
- • „Buddy Tracker”: Zwei mobile Teilnehmer werden bei Annäherung aneinender benachrichtigt (zum Beispiel im Rahmen eines „Community-Dienstes”).
-
Das Hauptproblem bei proaktiven LBSs ist bislang ihre effiziente Realisierung. Dies betrifft insbesondere den Basismechanismus, der alle proaktiven LBSs betrifft, nämlich das automatische Erkennen, ob und warm der Nutzer eine vorher zu definierende geographische Zone, im Folgenden als „Update-Zone” bezeichnet, entweder betritt oder verlässt. Dies soll mit einer möglichst hohen zeitlichen und räumlichen Auflösung geschehen.
-
Die Update-Zone kann zum Beispiel als Kreis mit vorbestimmtem Mittelpunkt und Radius, oder als Polygon definiert sein.
-
Zur Erzielung einer ausreichend genauen räumlichen Auflösung sind verschiedene Ortungsverfahren denkbar, zum Beispiel endgerätbasierte Verfahren wie GPS, „Assisted-GPS”, das zukünftige europäische Satellitensystem Galileo, oder das „Enhanced Observed Time Difference”-Verfahren (E-OTD), welches Teil des GSM-Standards ist. Bei diesen Verfahren bestimmt das Mobilfunk-Endgerät des Nutzers seine Position selbst.
-
Alternativ sind netzwerkbasierte Ortungssysteme wie „Uplink Time Difference of Arrival” (U-TDoA) bekannt, bei denen die Position des Endgeräts im Netz basierend auf empfangenen Funksignalen des Endgeräts ermittelt wird.
-
Ebenfalls bekannt sind Ortungsverfahren wie WLAN- und GSM-„Fingerprinting”, die im netzwerkunterstützten oder endgerätebasierten Modus ablaufen können, wobei das Endgerät Signalstärkemessungen der umliegenden Basisstationen vornimmt und die Messungen stetig zur Positionsbestimmung an einen Server im Netz weiterleitet.
-
Die bekannten Ortungsverfahren haben im Bezug auf das Erkennen von Update-Zonen folgenden Nachteil. Um die gewünschte hohe zeitliche Auflösung zu erreichen, muss das Ortungsverfahren quasi durchgehend betrieben werden. Dadurch entstehen zum Teil hohe (technische) Kosten: Bei endgerätbasierten Verfahren führt die kontinuierliche Positionsberechnung zu einem hohen Stromverbrauch auf dem Endgerät. Bei netzwerkbasierten sowie netzwerkunterstützten Verfahren wiederum müssen ständig Signale vom Endgerät übertragen werden, was die begrenzte Luftschnittstelle belastet und zu erheblichen Skalierbarkeitsproblemen führt. Außerdem entsteht durch die häufigen Übertragungen ebenfalls ein hoher Energieverbrauch.
-
Aus der
WO 2007/045002 A1 ist der abwechselnde Einsatz von GPS- und GSM-basierten Ortungsverfahren bekannt, um Energie zu sparen. Das Umschalten erfolgt, wenn die Änderung in der Empfangsfeldstärke oberhalb eines Schwellwertes liegt, oder sich die Zellkennung ändert. Diese Kriterien sind fest eingestellt, so dass eine dynamische Steuerung der Ortungsverfahren im Zusammenhang mit ortsbasierten Diensten nicht möglich ist.
-
Die
US 6584331 B2 offenbart ein Mobiltelefon mit einem GPS-Empfänger, wobei das Mobiltelefon einschließlich des GPS-Empfängers zur Einsparung von Energie abhängig von der Bewegung des Mobiltelefons betrieben wird.
-
Die
DE 69904204 T2 offenbart ebenfalls ein Verfahren zum Energiesparen in einem drahtlosen Telefon mit einem GPS-Empfänger.
-
Die
US 2006/0259241 A1 offenbart eine mobile Vorrichtung mit einer Positionsbestimmungseinheit und einem Bewegungssensor. Wenn die Positionsbestimmungseinheit dazu aufgefordert wird, die aktuelle Position zu bestimmen, so wird die letzte bekannte Position verwendet, falls seit Erkennung der letzten Position keine Bewegung festgestellt worden ist. Anderenfalls wird die Position neu bestimmt.
-
Die
US 2005/0192024 A1 offenbart ein Verfahren zu Verbesserung der Genauigkeit einer anfänglichen Schätzung der Position eines drahtlosen Gerätes.
-
Zusammenfassung der Erfindung
-
Die vorliegende Erfindung hat zur Aufgabe, die Nachteile des Standes der Technik zu beseitigen oder abzumindern. Diese Aufgabe wird durch die im unabhängigen Anspruch angegebene Erfindung gelöst. Vorteilhafte Ausgestaltungen der Erfindung sind in den Unteransprüchen und der nachfolgenden Beschreibung angegeben.
-
Erfindungsgemäß ist ein Verfahren geschaffen zur Ortung eines ersten mobilen Endgerätes innerhalb eines Funknetzwerkes, umfassend: Durchführung eines ersten Ortungsverfahrens zur Bestimmung der Entfernung zwischen Paaren von mobilen Endgeräten; Deaktivierung des ersten Ortungsverfahrens; Durchführung eines zweiten Ortungsverfahrens zur zumindest annäherungsweisen Bestimmung der Entfernung zwischen Paaren von Endgeräten; und Aktivierung und erneute Durchführung des ersten Ortungsverfahrens zur Bestimmung der Entfernung zwischen Paaren von Endgeräten, für die die Entfernungsbestimmung mittels des zweiten Ortungsverfahrens ergeben hat, dass deren Entfernung voneinander eine Mindestentfernung erreicht hat.
-
Die vorliegende Erfindung steuert ein genaues, Ressourcen-intensives Ortungsverfahren (das erste Ortungsverfahren) wie z. B. GPS zur Erkennung von Update-Zonen. Dabei wird das erste Ortungsverfahren so wenig wie möglich eingesetzt, um dadurch die Energie- und Hardware-Resourcen des Endgerätes zu schonen. Die Update-Zonen werden trotzdem weiterhin mit hoher zeitlicher und räumlicher Auflösung beachtet.
-
Insbesondere umfasst die Erfindung die Abschätzung der relativen Distanz entlang der Luftlinie zwischen der aktuellen Position des Endgerätes (d. h. eines Nutzers) und der letzten durch das erste Ortungsverfahren bestimmten Position. Ortsbestimmungen durch das erste Ortungsverfahren werden vermieden, wenn die Update-Zone sicher oder mit einer bestimmten Wahrscheinlichkeit noch nicht erreicht bzw. verlassen worden ist.
-
In vorteilhafter Weise kann das vorliegende Verfahren die Signale umliegender Basisstationen dazu nutzen, den Einsatz des ersten Ortungsverfahrens dynamisch zu steuern.
-
Das vorliegende Verfahren unterscheidet sich von anderen („ungenauen”) Verfahren zur Positionsbestimmung basierend auf Funksignalen umliegender Basisstationen dadurch ab, dass lediglich eine relative Distanzabschätzung, und keine absolute Positionsbestimmung, erfolgt. Dadurch wird eine aufwändige Einbindung von Netztopologie-Daten oder die a-priori Vermessung von Funkmustern (Fingerprints) vermieden.
-
Das vorliegende Verfahren lässt sich geräteunabhängig implementieren. Es kann daher auf einfache Weise in vorhandene Endgeräte mit Ortsbestimmung (z. B. GPS-Geräte) integriert werden.
-
Das vorliegende Verfahren lässt sich darüber hinaus in vorteilhafter Weise zur Bestimmung von Cliquen innerhalb einer Vielzahl mobiler Endgeräte anwenden.
-
Ein erfindungsgemäßes Verfahren zur Bestimmung von Cliquen von mobilen Endgeräten in einem Funknetzwerk mit einer Vielzahl von mobilen Endgeräten, umfasst die Schritte des Bestimmens von einer oder mehreren unabhängigen Mengen der Endgeräte, wobei die Endgeräte jeder der unabhängigen Mengen paarweise eine Entfernung voneinander aufweisen, die größer ist, als ein vorbestimmter Schwellwert; und des Bestimmens mindestens einer Clique von Endgeräten, deren Entfernung voneinander paarweise geringer ist. als ein vorbestimmter Schwellwert, wobei jede unabhängige Menge höchstens ein Endgerät der Clique enthält.
-
Dieses erfindungsgemäße Verfahren zeichnet sich dadurch aus, dass Cliquen auf einfache und energieeffiziente Art und Weise ermittelt werden können, wodurch die vorhandenen Resourcen geschont und der Nachrichtenaustausch zwischen den Endgeräten und einen übergeordneten Server, der in der Regel für die Bereitstellung von cliquenbasierten LBSs vorhanden ist, reduziert werden können.
-
Beschreibung von Ausführungsbeispielen der Erfindung Nachfolgend wird die Erfindung anhand von beispielhaften und nicht einschränkenden Ausgestaltungen mit Bezugnahme auf die Zeichnungen beschrieben.
-
EFFIZIENTE STEUERUNG VON GENAUEN ORTUNGSVERFAHREN ZUR DETEKTIERUNG VON UPDATE-ZONEN
-
Im Folgenden werden eine Reihe von Verfahren gemäß Ausführungsbeispielen der vorliegenden Erfindung erläutert, mit deren Hilfe das Betreten und Verlassen von Update-Zonen mit ausreichend hoher zeitlicher und räumlicher Auflösung erkannt werden kann. Dabei werden die oben beschriebenen Ortungsverfahren selektiv eingesetzt, so dass Energie und andere Ressourcen eingespart werden.
-
Mit anderen Worten liegt den nachfolgend beschriebenen Verfahren eine dynamische Steuerung der Ortungsverfahren zu Grunde.
-
Der Basismechanismus nach einem Ausführungsbeispiel der vorliegenden Erfindung wird nun anhand von 1 beschrieben. Darin gezeigt ist eine Update Zone U, die durch einen Dienst, den Nutzer eines Endgeräts, oder durch das Netzwerk eingestellt wird. Der Update Zone U ist einem Dienst zugeordnet, für den es relevant ist, ob der Nutzer die Update Zone U verlässt oder betritt.
-
Zu Anfang wird anhand eines verfügbaren „genauen” ersten Ortungsverfahrens (beispielsweise GPS) die aktuelle Position des Endgeräts festgestellt. Anhand der aktuellen Position lässt sich eine Entfernung r2 berechnen, die der Nutzer zum Verlassen bzw. Betreten der Update Zone U zurücklegen müsste.
-
Die Erfindung basiert darauf, das erste Ortungsverfahren so lange ruhen zu lassen, wie gewährleistet ist, dass der Nutzer ab dem Zeitpunkt der letzten Ortsbestimmung durch das erste Ortungsverfahren nicht mehr als eine Entfernung r1 zurückgelegt hat, wobei r1 < r2. Die Entfernung r1 bezeichnet dabei nicht die tatsächlich zurückgelegte Wegstrecke, sondern die Länge der Luftlinie zwischen der aktuellen und der zuletzt anhand des ersten Ortungsverfahrens bestimmten Position. Erst wenn dies nicht mehr gewährleistet ist, wird das erste Ortungsverfahren wieder aktiviert und der Vorgang wiederholt.
-
Die Entfernung r1 wird anhand eines zweiten Ortungsverfahrens bestimmt. Das zweite Ortungsverfahren ist energiesparender als das erste Ortungsverfahren. Mit anderen Worten werden ein energiesparendes und ein genaues Ortungsverfahren alternierend durchgeführt.
-
In einer bevorzugten Ausgestaltung der Erfindung werden verschiedene zweite (d. h. energiesparende) Ortungsverfahren eingesetzt. Nach Bestimmung der genauen Position des Nutzers anhand des ersten Ortungsverfahrens werden die zweiten Ortungsverfahren solange durchgeführt, bis keines der zweiten Ortungsverfahren eine Entfernung r1 bestimmen kann, für die r1 < r2 gilt, d. h. bis nicht länger gewährleistet ist, dass der Nutzer die Update Zone betreten bzw. verlassen hat. Tritt dieser Fall ein, wird erneut eine genaue Ortsbestimmung anhand des ersten Ortungsverfahrens durchgeführt und der Vorgang wiederholt.
-
Nachfolgend werden verschiedene Ortungsverfahren beschrieben, die als das zweite Ortungsverfahren eingesetzt werden können. Dabei kann zwischen geschwindigkeits- und distanzbasierten Verfahren unterschieden werden.
-
In Frage kommende geschwindigkeitsbasierte Verfahren können der bekannten Koppelnavigation (engl. Dead Reckoning) ähneln. Ein Unterschied dazu besteht jedoch darin, dass die Koppelnavigation die (absolute) Position des Nutzers direkt abschätzt, beispielsweise basierend auf gemessener Geschwindigkeit und Richtung sowie einem Ausgangspunkt. Bevorzugt und nachfolgend beschrieben werden jedoch Verfahren zur Eingrenzung der relativen Abweichung von der letzten Position.
- • Konfigurierbare Höchstgeschwindigkeit
Dieses Ortungsverfahren basiert auf einer vom Nutzer oder durch einen Dienst konfigurierbaren oder sich aus dem aktuellen Kontext oder der Bewegungshistorie des Nutzers zu bestimmenden Höchstgeschwindigkeit vmax.
Anhand der Höchstgeschwindigkeit vmax lässt sich für alle r1 < r2 eine Zeit t = r1/vmax berechnen, in der das erste Ortungsverfahren deaktiviert sein kein.
- • Ermittlung der Beschleunigung, Geschwindigkeit oder Drift anhand von Funksignalen
In dieser Ausführungsvariante werden anhand der Signale umliegender Basisstationen Geschwindigkeit, Beschleunigung, Phasen und/oder Frequenzdrift des Endgerätes des Nutzers in Bezug auf eine der Basisstationen bestimmt. Solche Techniken sind an sich bekannt und deshalb nicht näher erläutert.
Wird anhand dieses Verfahrens beispielsweise die Geschwindigkeit anhand der Funksignale bestimmt, so ergibt sich die Entfernung r1 durch Integration oder Summierung.
-
In anderen Ausgestaltungen werden die Identifikatoren umliegender Basisstationen vom Endgerät des Nutzers überwacht, um die Entfernung r1 zu bestimmen:
- • Maximaler Radius der Funkzelle
Ist für die Funktechnologie des Endgerätes dessen maximale Reichweite d bekannt, so kann sich das Endgerät nicht um mehr als 2d bewegt haben, solange es den selben Basisstationen-Identifikator empfängt.
Entsprechend bietet sich zum Beispiel die Überwachung umliegender WLAN Access-Points an. Diese besitzen nur eine begrenzte Reichweite. Empfängt das Endgerät an zwei verschiedenen Positionen Signale des selben Access-Points, so lässt sich auf eine relativ kleine zurückgelegte Entfernung r1 schließen.
Dieses Verfahren eignet sich auch für GSM-basierte Endgeräte. Zwar sind GSM-Zellen auf dem Land bis zu 35 km groß; dennoch kann auch hier die Kenntnis der ungefähren Zellgröße ausreichend sein, beispielsweise wenn der Nutzer sich nur eingeschränkt (z. B. innerstädtisch) bewegt
Dieser Ansatz grenzt sich von bekannten Ansätzen des „Proximity Sensing” (z. B. „Cell-Id”, welches ein bekanntes Verfahren zur Ortsbestimmung bei GSM ist) dadurch ab, dass anhand des Zell-Identifikators keine absoluten Positionen ermittelt werden, sondern nur relative Abweichungen von der zuletzt bestimmten Position abgeschätzt werden. Daraus ergibt sich eine Unabhängigkeit von Netztopologie-Informationen, wie zum Beispiel den Positionen der Basisstationen, die in der Regel nur dem Netzbetreiber vorliegen.
- • Einbeziehung von Qualitätsmetriken der Funkzelle
In einer bevorzugten Ausgestaltung wird zusätzlich die Signalstärke (Received Signal Strength, RSS), Signalqualität (Signale to Noise Ratio SNR) und/oder die Bitrate des Signals von der Basisstation berücksichtigt. Liegen diese über vorbestimmten Schwellwerten, so kann daraus geschlossen werden, dass das Endgerät sich nahe der Basisstation befindet. Bleiben die Werte zudem bei mehreren Messungen konstant hoch, so dient dies als weitere Bestätigung. Der maximale Bewegungsradius des Nutzers – und damit die Entfernung r1 – lässt sich hierdurch genauer bestimmen.
- • Einbeziehung von mehreren Funkzellen gleichzeitig
In einer weiteren bevorzugten Ausgestaltung werden die Signale von mehreren Basisstationen berücksichtigt. Dabei wird eine relative Wegdistanz anhand des Unterschiedes zweier Signalstärken von mehreren Basisstationen bestimmt. Dazu sind keine speziellen Hintergrundinformationen (zum Beispiel a-priori Vermessung von Funkmustern (Fingerprints)) notwendig, wodurch der Ansatz stark vereinfacht wird.
Zwei zu unterschiedlichen Zeitpunkten bestimmte Signalstärkevektoren (jeweils ein Eintrag pro Basisstation und gemessene Signalstärke) lassen sich zum Beispiel anhand ihrer euklidischen oder Manhattan-Distanz, der Anzahl gleicher Basisstationen oder dem so genannten Spearman Rank Order Coefficient, der eine Korrelation der nach der Signalstärke geordneten Tupel der gleichen Basisstationen herstellt, vergleichen. Anhand dieser Metriken lässt sich wiederum auf eine maximale Wegdistanz zwischen den Messpunkten schließen.
-
Hybrides GPS und GMS Ortungsverfahren
-
Nachfolgend wird ein Ausführungsbeispiel der Erfindung beschreiben, in welchem ein GPS-basiertes Ortungsverfahren als das erste Ortungsverfahren und ein GSM-basiertes Ortungsverfahren als das zweite Ortungsverfahren zum Einsatz kommen.
-
Dieses Ausführungsbeispiel macht sich den Umstand zu Nutze, dass der Nutzer sich meiste Zeit semi-statisch fortbewegt. Beispielsweise kann sich der Nutzer an seinem Arbeitsplatz oder bei sich zu Hause oft bewegen; allerdings sind die Bewegungen des Nutzers zumeist lokal begrenzt d. h. ausgehend von einem zentralen festen Ort bewegt sich der Nutzer nicht außerhalb eines bestimmten Radius. Aus diesem Grund eignen sich eine reine Bewegungserkennung für das zweite Ortungsverfahren nur bedingt. Im vorliegenden Ausführungsbeispiel wird deshalb darauf abgestellt, zu erkennen, wann dieser Radius verlassen wird, um dann das erste, GPS-basierte Ortungsverfahren zu aktivieren.
-
Das vorliegende Ausführungsbeispiel basiert darauf, die Signale umliegender GSM-Basisstationen zu analysieren, welche durch das Endgerät des Nutzers ohnehin erfasst werden, um die Notwendigkeit von „Handovers” zu erkennen. Deshalb entsteht dabei kein zusätzlicher Energieverbrauch.
-
Insbesondere werden die aktuellen GSM-Messungen des Endgerätes mit denen zum Zeitpunkt der letzten GPS-Ortsbestimmung verglichen. Wenn anhand dieses Vergleiches ausgeschlossen werden kann, dass der Nutzer mehr als die oben beschriebene Entfernung r2 zurückgelegt hat, bleibt das GPS-Ortungsverfahren inaktiv.
-
Zu diesem Zweck können verschiedene Indikatoren zum Vergleich von GSM-Messungen verwendet werden. Davon ist der „Common Base Station (CBS)”-Indikator aufgrund seiner Einfachheit und Genauigkeit besonders geeignet.
-
Nachfolgend werden verschiedene CBS-basierte Verfahren zur Anwendung in Ausgestaltungen der vorliegenden Erfindung im Detail beschrieben. Dabei werden u. a. folgende Parameterbezeichnungen verwendet:
- pi:
- Position des Nutzers zum Zeitpunkt der letzten Messung anhand des ersten (genauen) Ortungsverfahrens (z. B. GPS)
- pj:
- aktuelle Position des Nutzers
- dist(pi, pj):
- berechnete Entfernung zwischen pi und pj
- trueDist(pi, pj):
- tatsächliche Entfernung zwischen pi und pj
- disttrigger:
- Mindestentfernung zwischen Nutzer und Grenze der Update-Zone (entspricht r2 in der vorangegangenen Beschreibung)
-
Bestehende Indikatoren
-
Bezugnehmend auf 2 misst ein Mobilfunkendgerät, welches sich zum Zeitpunkt tj an einer Position pj befindet, die Signalstärke RSS(j) der N nächstgelegenen Basisstationen BS(j): BS(j) = {bs (j) / 1, bs (j) / 2, bs (j) / N}, C(j) = {c (j) / 1, c (j) / 2, ...c (j) / N}. (1)
-
bsa (j) ist die Funkzellen-ID der Basisstation a, und ca (j) ist die zugeordnete Signalstärke, mit welcher der Steuerkanal BCCH (Broadcast Control Channel) zum Zeitpunkt tj empfangen wird. Bei GSM ist es üblich, die Messung auf die N = 7 stärksten Basisstationen zu beschränken, da dies der Anzahl von Basisstationen entspricht, die im Messprotokoll (measurement report) enthalten sind, das ein Mobiltelefon der Basisstation-Steuerungseinrichtung BSC (Base Station Controller) im „dedicated mode”, d. h. bei einen Anruf, sendet. Es gibt eine Vielzahl von Verfahren, um zwei Messungen zu vergleichen, wie beispielsweise die Bestimmung von gemeinsamen Basisstationen bei nacheinanderfolgenden Messungen, die Bestimmung des „Spearman rank-order correlation coefficient” zwischen zwei aufeinander folgenden Messungen, oder die Entfernung zwischen empfangenen Signalstärken (z. B. die Manhattan- und die euklidische Entfernung). Diese sind beispielsweise durch J. Krumm und K. Hinckley in „The Nearme Wireless Proximity Server”, Proceedings of the 6th International Conference Ubiquitous Computing (Ubicomp), 2004, 283–300, beschrieben:
- (i) Bestimmung von gemeinsamen Basisstationen CBS = Länge (BS(j) ∩ BS(k)) Der Wert dieses Indikators ist einfach zu berechnen. Allerdings bildet dieser nur N + 1 diskrete Werte ab (n∩ ∊ {0, ... N}). Außerdem kann dieser nicht zwischen nahegelegenen und weiter entfernten Antennen unterscheiden.
- (ii) Spearman rank-order correlation coefficient
Dieser Indikator stellt dar, wie genau die Reihenfolgen gemeinsamer Basisstationen BS(j) und BS(k) einander entsprechen (die Reihenfolgen entsprechen üblicherweise abnehmenden Signalstärken). Obwohl dies wegen der impliziten Berücksichtigung von Signalstärken bereits eine Verbesserung gegenüber (i) darstellt, hat es dennoch den Nachteil, dass Rangwechsel von naheliegenden und entfernten Antennen proportional behandelt werden.
- (iii) Entfernung zwischen empfangenen Signalstärken dist (C(j), C(k)) Verbreitete „dist”-Funktionen sind die Manhattan-Entfernung und die euklidische Entfernung. Beide haben eine höhere Auflösung als (i), sind aber auch empfindlicher gegenüber Einflüsse bei der Signalausbreitung (z. B. „fast fading noise” oder „sudden line of sight effects”). Außerdem ist es nur möglich, Signalstärken von gemeinsamen Basisstationen zu vergleichen.
-
Erweiterter CBS Indikator
-
Nachfolgend wird die Erstellung eines erweiterten CBS-Indikators (eCBS) gemäß einer Ausgestaltung der vorliegenden Erfindung beschrieben, der die Nachteile bestehender Indikatoren beseitigt.
-
Schritt 1: Schaffung eines gewichteten Basisstation-Indikators wBS
-
Die Stärke des empfangenen Signals ci(j) stellt die Wichtigkeit der Basisstation i innerhalb von BS(j) dar. Aufgrund von langsamen und schnellen Fading-Störungen (slow and fast fading noise) kann die Signalstärke nicht als Absolutmaß verwendet werden. Langsame Fading-Störungen resultieren aus Reflektion und Absorption entlang des Signalpfads zwischen der Basisstation und dem Mobiltunk-Endgerät. Schnelle Fading-Störungen resultieren aus reflektierende Gegenstände in unmittelbarer Nähe des Endgerätes. Berücksichtigt man jedoch, welchen Anteil jeder Signalstärkewert an der verfügbaren Gesamtleistung hat, so kann der Einfluss von Fading-Störungen vermindert werden. Anstatt des RSS (Received Signal Strength, s. o.) werden Gewichtungskoeffizienten verendet:
-
Aus der Messung gemäß Gleichung (1) ergibt sich: wBS(j) = {(υ (j) / 1, bs (j) / 1), (υ (j) / 2, bs (j) / 2)}, ... (υ (j) / N, bs (j) / N)}. (3)
-
Schritt 2: Schaffung eines erweiterten Basisstation-Indikators eBS
-
Der wBS-Indikator soll Fading-Effekte ausgleichen, die innerhalb einer einzelnen Messung auftreten können. Dabei wird jedoch kein sprunghafter Kanalwechsel („jumping channels”) berücksichtigt (Funkellen, die in einer Messung auftauchen, nicht jedoch in der darauf folgenden). Um die Auswirkung dieses Effekts auf den Indikator abzumindern, werden aufeinander folgende Messungen gewichtet (”weighted moving average”).
-
Das plötzliche Auftauchen von „line of sight” (LOS)-Komponenten lässt die Messung M(j) schwanken. Ist die LOS-Funkzelle bereits präsent, so hat diese zuviel Gewichtung. Ist sie hingegen noch nicht präsent, so wird die am weitesten entfernte Zelle aus der Messung verdrängt.
-
Durch Anwenden eines sich bewegenden Fensters (mit einer Fensterbreite Nw) können solche Sprünge abgemindert werden. Der erweiterte Basisstation-Indikator eBS wird somit zum Zeitpunkt t
j basierend auf der aktuellen und Nw – 1 vorhergehenden
M (j) / ε = {(w (j) / 1, ebs (j) / 1), (w (j) / 2, ebs (j) / 2), ..., (w (j) / L, ebs (j) / L)}. (4) wobei L ≥ N. Der erweiterte Satz Basisstationen
enthält eine Liste von allen Basisstationen, die während der Nw aufeinanderfolgenden Messungen präsent waren. Die Gewichtungen werden wie folgt berechnet:
wobei δ(i, j) = 1 bei i = j, und ansonsten 0. Somit wird Tür jedes ebs
i (j) die durchschnittliche Gewichtung über alle Nw Messungen berechnet.
-
Schritt 3: Berechnung der Anzahl gemeinsamer Basisstationen eCBS
-
Die Berechnung erfolgt anhand folgender Formel:
-
Ein Vorteil dieser Gleichung ist, dass das Ergebnis keine diskrete Zahl aus N + 1 Werten ist, sondern stetig ist. Dennoch ergeben zwei identische Messungen eCBS = N. Sind die Gewichtungen einheitlich, so ist das Ergebnis identisch mit dem herkömmlichen CBS-Indikator.
-
Einhaltung der Entfernung disttrigger
-
Wie oben beschrieben muss zur Deaktivierung des ersten, genauen (z. B. GPS-basierten) Ortungsverfahrens zu einem Zeitpunkt ti gewährleistet sein, dass der Nutzer zum Zeitpunkt tj nicht mehr als die Entfernung disttrigger zurückgelegt hat. Um die Entfernung des Nutzers zum Zeitpunkt tj zu seiner Position zum Zeitpunkt tj zu bestimmen, wird in einer Ausgestaltung der Erfindung wie beschrieben die Anzahl gemeinsamer Basisstationen eCBS bestimmt. Um die Anzahl eCBS auf diese Entfernung abzubilden, sind gemäß Ausgestaltungen der vorliegenden Erfindung folgende grundlegende Verfahren anwendbar:
- 1. Ableiten der Abbildung aus Informationen über die Topologie des Funknetzwerkes (z. B. Positionen der Basisstationen, Ausrichtung der Antennen, etc.), kombiniert mit Modellen für die Ausbreitung der Signale. Die hierauf basierende Abbildung kann dem Endgerät im Voraus oder bei Bedarf zur Verfügung gestellt (d. h. darauf gespeichert) werden.
- 2. Erlernen der Abbildung durch das Endgerät, beispielsweise anhand eines Bayesschen Entscheidungssystems oder einer örtlichen Regressionsanalyse.
- 3. Anwendung eines parametrischen Modells durch Parametrisierung des Endgerätes anhand empirischer und gebietsabhängiger Skalarwerte, insbesondere durch: Lineare Abbildung: Da diese Funktion nur zwei Parameter umfasst, kann der Zusammenhang zwischen eCBS und dist(pi, pj) auf einfache und schnelle Weise festgestellt werden: flinear: dist(pi, pj) = q1 + q2·eCBS(M (i) / e, M (j) / e) (7)
-
Abbildung anhand des Tangens Hyperbolicus:
-
Diese Funktion stellt ein gutes Abbildungsmodell dar, da die Form dieser Funktion ähnlich zu der Form der Daten ist. Die Berechnung im Vergleich zur linearen Abbildung ist aufwändiger; dafür ist das Ergebnis genauer.
-
-
Die Werte von q1–q4 können beispielsweise mittels Regressionsanalyse bestimmt werden.
-
Zusammen mit der Entfernung disttrigger kann ein Wert p bestimmt werden, der darstellt, mit welcher Wahrscheinlichkeit trueDist(pi, pj) ≥ disttrigger.
-
Basierend auf einem statistischen Ansatz, unter Berücksichtigung der Streuung einer Normalverteilung qnorm, und der Annahme einer Gaus'schen Fehlerverteilung err(pi, pj) := trueDist(pi, pj) – dist(pi, pj), mit einer Standardabweichung σ, kann die folgende weitere Entfernung bestimmt werden: distobserve = disttrigger – σ·qnorm(p)
-
Wenn trueDist(pi, pj) = disttrigger, dann gilt dist(pi, pj) < distobserve mit der Wahrscheinlichkeit p. Daraus ergibt sich, dass ein eCBS-Schwellwert eCBSthres wie folgt bestimmt werden kann: eCBSthres: = f–1(distobserve)
-
Wenn der aktuell gemessene Wert eCBS(Mi, Mj) den Wert eCBSthres unterschreitet, so wird das erste Ortungsverfahren (GPS) gemäß einer Ausgestaltung der Erfindung aktiviert, um die gewünschte Wahrscheinlichkeit p zu erreichen.
-
Die oben beschriebenen Abbildungsfunktionen f müssen nicht bei jeder GSM-Messung durchgeführt werden, sondern nur dann, wann eCBSthres neu bestimmt wird.
-
In einer bevorzugten Ausgestaltung ist es möglich, Tabellen mit Werten der Abbildungsfunktionen f im Endgerät vorzuspeichern, so dass das Endgerät die Abbildung nicht selbst berechnen und nur den Vergleich zwischen dem aktuellen Wert von eCBS mit eCBSthres vergleichen muss. Da die Abbildungsfunktionen unabhängig von den Hardwareparametern des Endgerätes sind, können die Tabellen endgerätunabhängig berechnet und zur Verfügung gestellt werden. D. h., die Tabellen können für verschiedene Regionen, Funknetztopographien und/oder Netzwerkbetreiber erstellt werden. Die Tabellen können auf dem Endgerät vorgespeichert, oder aber durch das Endgerät (bei Bedarf) abrufbar sein.
-
EFFIZIENTE ERKENNUNG VON RAUMLICHEN CLIQUEN ZWISCHEN MOBILEN ZIELOBJEKTEN
-
Dieses Ausführungsbeispiel der vorliegenden Erfindung betrifft die automatische Erkennung von „Cliquen” zur Realisierung und Verbesserung proaktiver Mehrpersonen-„Location Based Community Services”, LBCSs.
-
In der Graphentheorie bezeichnet eine Clique in einem ungerichteten Graph G eine Menge von Knoten V, bei der alle Elemente paarweise durch eine Kante verbunden sind. V ist also ein voll vernaschter Teilgraph von G. Die Größe einer Clique entspricht der Anzahl enthaltener Knoten. Angelehnt an die graphentheoretische Definition versteht sich eine Clique Cn = {t1, ..., tn} als Menge von n mobilen Zielpersonen (= Knoten), bei der sich alle möglichen Paare ti, tj ∊ Cn, i ≠ j zueinander im Nahbereich befinden (= Kante). Das Problem der Erkennung von Cliquen ist folgendermaßen definiert: Gegeben sei eine Menge S der Größe s von mobilen Zielpersonen. Dann soll automatisch erkannt werden, wenn sich eine Clique Cn der Größe 2 ≤ n ≤ s gebildet hat, und ihre Zusammensetzung soll bestimmt werden.
-
Für die Erkennung von Cliquen gibt es verschiedene Anwendungsfelder, zum Beispiel proaktive „Friend-Alert”-Dienste, die eine Gruppe von Freunden (umgangssprachlich ebenfalls ”Clique” genannt) auf ihre räumliche Nähe hinweisen. Eine weitere Möglichkeit sind mobile Mehrbenutzerspiele, die die Erkennung von Cliquen als Teil des Spielflusses vorsehen. Ein weiteres Feld, das sich nicht nur auf LBCSs bezieht, ist die Logistik. Hier muss automatisch festgestellt werden, wann sich eine bestimmte Menge von Gütern am selben Ort befindet. Ein anderes Anwendungsgebiet ist CSCW (Computer Supported Cooperative Work), wo zum Beispiel eine Präsentation gestartet werden kann, sobald sich genügend der gewünschten Personen zu einem Meeting versammelt haben. Auch kann das so genannte Web 2.0 allgemein von Mechanismen zur Untersuchung der räumlichen Beziehungen von Community-Teilnehmern profitieren. Die automatische Cliquenerkennung würde grundsätzlich bestehende MoSoSo-(Mobile Social Software)Produkte aufwerten, die bislang nur reaktiv arbeiten.
-
In einem möglichen Ansatz zur Cliquenerkennung könnten die Endgeräte der Nutzer die lokal gemessenen Ortsinformationen einem Location Server entweder periodisch oder anhand einer festen Update-Distanz übermitteln. Server-seitig werden die berichteten Positionen ständig verglichen und auf Cliquenbildung hin überprüft. Nachteilig bei diesem Ansatz ist jedoch der übermäßige Nachrichtenaustausch, der umso höher ist, je größer die gewünschte räumliche bzw. zeitliche Genauigkeit der Cliquenerkennung sein soll. Gleichzeitig entsteht eine hohe Rechenlast beim Location Server.
-
Nach einer Ausgestaltung der Erfindung ist ein Verfahren geschaffen, in dem die Anzahl der zwischen Endgerät und Server ausgetauschten Nachrichten reduziert wird. Insbesondere sollen dadurch die Luftschnittstelle entlastet, mögliche monetäre Kosten für den Nutzer für die Benutzung mobiler Trägerdienste wie GPRS oder UMTS reduziert, und der durch den Versand der Nachrichten entstehende Energieverbrauch des Endgeräts vermindert werden. Zudem soll die Rechenlast seitens des Location Server gesenkt werden, was dessen Skalierbarkeit in Bezug auf gleichzeitig bedienbare Endgeräte erhöht.
-
Ein Verfahren nach einer Ausgestaltung der Erfindung beruht im Gegensatz zu einem konstruktiven Ansatz darauf, die Nichtexistenz einer Clique so lange zu beweisen, wie die Clique nicht besteht. Aufbauend auf Erkenntnissen aus der Graphentheorie wird ein solcher Beweis erreicht, indem die Zielobjekte aus S in so genannte „Independent Sets” eingeteilt werden. Ein Independent Set ist eine Teilmenge aus S, deren Elemente sich paarweise nicht im Nahbereich zueinander befinden. Um die Gültigkeit der Independent Sets zu überwachen und um erkannte Cliquen hinsichtlich ihres Zerfalls zu überprüfen, wird eine Nahbereichs- und Trennungserkennung angewandt, wie nachfolgend beschrieben.
-
Das Verfahren zur Erkennung von Cliquen zeichnet sich also dadurch aus, dass kein völlig neues, spezialisiertes Protokoll zur Verfolgung der Zielobjekte konzipiert worden ist. Stattdessen wird die Nahbereichs- und Trennungserkennung dynamisch auf Paare von Zielobjekten angewendet. Dabei müssen nur einige wenige der möglichen Paare aus S gleichzeitig betrachtet werden, was den erforderlichen Nachrichtenaufwand stark reduziert.
-
Das Verfahren wird vorzugsweise auf einem zentralen Server durchgeführt, mit welchem die Endgeräte der Nutzer in Verbindung stehen.
-
Strategie zur Cliquenerkennung
-
Eine Strategie zur Cliquenerkennung gemäß einer Ausgestaltung der Erfindung basiert auf Nahbereichs- und Trennungserkennung. Nahbereichserkennung beschreibt die Fähigkeit eines LBCS, automatisch zu erkennen, wann der räumliche Abstand eines Paares innerhalb einer Gruppe mobiler Zielobjekte (Nutzer) eine vorgegebene Nahbereichsdistanz unterschreitet. Analog dazu bezeichnet die Trennungserkennung die Fähigkeit, zu erkennen, dass zwischen zwei Objekten eine vorgegebene Trennungsdistanz überschritten wird.
-
Zur Nahbereichs- und Trennungserkennung wird vorzugsweise eine dynamische, alternierende Steuerung eines ersten, genauen Ortungsverfahrens (z. B. GPS), sowie eines zweiten, energiesparenden Ortungsverfahrens (z. B. GSM-basiert) eingesetzt, wie oben ausführlich beschrieben. Die Grenze, an der der räumliche Abstand eines Paares von Zielobjekten eine vorgegebene Nahbereichsdistanz unterschreitet bzw. eine vorgegebene Trennungsdistanz überschreitet, entspricht dabei der Grenze der oben beschriebenen Update-Zone. Mit anderen Worten wird das erste Ortungsverfahren nur dann aktiviert und durchgeführt, wenn anhand des zweiten Ortungsverfahrens nicht länger gewährleistet ist, dass ein Paar von Zielobjekten die Nahbereichs- oder Trennungsdistanz unter- bzw. überschreitet.
-
Vorzugsweise wird zur Cliquenerkennung ein graphenbasierter Ansatz gewählt, der Zielpersonen als Knoten modelliert. Eine Kante zwischen zwei Knoten bedeutet, dass die räumliche Distanz dist(ti, tj) zwischen den entsprechenden Zielpersonen ti und tj kleiner ist als eine vordefinierte Cliquendistanz dc > 0. Wie schon erwähnt, ist eine Clique Cn eine Menge von n paarweise durch eine Kante verbundener Knoten. Dazu wird eine mit der Cliquenerkennung assoziierte Grenzlinientoleranz bc > 0 eingeführt: Wenn dc ≤ dist(ti, tj) ≤ dc + bc, dann können ti und tj als verbunden angesehen werden, müssen es aber nicht. Die beiden Zielpersonen können dann also als potentielle Kandidaten für eine Clique zugelassen werden, dies muss aber nicht der Fall sein.
-
Wird eine Clique erkannt, so wird sie darauf hinsichtlich ihres Zerfalls beobachtet, welcher wiederum ein entsprechendes Ereignis auslösen soll. Der Einfachheit halber wird, so lange eine Clique besteht, keines ihrer Elemente in andere Cliquen, die im Zuge derselben gestellten Anfrage delektiert werden, einbezogen. Alle Cliquenbildungen unter den verbleibenden Knoten aus S müssen jedoch trotzdem noch erkannt werden.
-
Diese Ausgestaltung unterscheidet sich von existierenden Graphenalgorithmen darin, dass die Kanten des Graphen nicht vollständig bekannt sind. Stattdessen ist zum Existenzbeweis einer Kante eine sich in Ausführung befindliche Trennungserkennung zwischen den Zielpersonen notwendig. Soll die Nichtexistenz einer Kante gezeigt werden, so muss eine entsprechende Nahbereichserkennung im Gange sein. Beide Operationen verursachen Kosten, die deshalb so selten wie möglich durchgeführt werden sollten.
-
Die vorliegende Ausgestaltung basiert darauf, beweisbar alle möglichen Cliquen zu erkennen, dabei jedoch die Anzahl beobachteter Knotenpaare so weit wie möglich zu reduzieren. Es hat sich herausgestellt, dass dazu oft nur eine geringe Anzahl von Kanten durch die Nahbereichserkennung überwacht werden muss.
-
Beobachtungszustände
-
Für jeweils ein Paar von Zielpersonen lassen sich grundsätzlich vier Beobachtungszustände unterscheiden, zwischen denen der vorgestellte Algorithmus nach einer Ausgestaltung der Erfindung dynamisch wechselt:
- • Der „lange” Zustand bezeichnet eine ablaufende Nahbereichserkennung zwischen einem Paar von Zielpersonen. Die Nahbereichsdistanz dp ird dabei der Cliquendistanz dc gleichgesetzt. Die Grenzlinientoleranz der Nahbereichserkennung bp kann auf jeden Wert zwischen 0 und der mit der Cliquenerkennung verbundenen Grenzlinientoleranz bc gesetzt werden. Damit ist die Distanz des Paares mit Sicherheit größer oder gleich dc. Dies sichert das Nichtvorhandensein einer Kante zwischen den entsprechenden Knoten im Graphen.
- • Der „kurze” Zustand bedeutet, dass zwei Zielpersonen gerade auf Trennung hin überwacht werden. Die Trennungsdistanz ds wird dabei mit dc + bp gleichgesetzt. Die Grenzlinientoleranz der Nahbereichserkennung bs wird auf bc – bp gesetzt. Auf diese Weise sind mögliche Unschärfeintervalle der Nahbereichs- und Trennungserkennung disjunkt. ”Ping-Pong-Effekte”, die auftreten würden, wenn Objekte gleichzeitig als nah und getrennt betrachtet werden können, werden dadurch vermieden. Die Distanz zweier Objekte, die sich zueinander im kurzen Beobachtungszustand befinden, ist somit mit Sicherheit kleiner oder gleich ds + bs = dc + bp + bc – bp = dc + bc. Von der Existenz einer entsprechenden Kante kann daher ausgegangen werden.
- • Ist keinerlei Information über das räumliche Verhältnis zweier Zielpersonen bekannt, so befindet sich das Paar im Zustand „unbekannt”. Der Einfachheit halber wird dieser Zustand in den Figuren nicht graphisch dargestellt.
- • Ein Paar von Zielpersonen, das zwar nicht aktiv beobachtet wird, welches aber vor Kurzen ein Nahbereichsereignis ausgelöst hat, befindet sich im Zustand „schwebend”. Der Zweck dieses Zustands ist es, die Paare, die sich vermutlich im Nahbereich befinden, von den anderen zu unterscheiden, ohne eine aktive Trennungserkennung einzusetzen. Diese soll nämlich so lange wie möglich hinausgezögert werden, um unnötige Kosten zu vermeiden.
-
Ein Zustandsübergangsdiagramm ist in 3 gezeigt. Demnach beginnt eine Beobachtung eines Paares immer im Zustand „unbekannt”. Von dort aus kann nur der Zustand „lang” erreicht werden, was durch eine Initiierung der Nahbereichserkennung erreicht wird (1). Der lange Zustand wird entweder verlassen, wenn die Nahbereichserkennung explizit angehalten wird (2), was eine Rückkehr zu „unbekannt” bewirkt, oder wenn erkannt wird, dass sich das Paar im Nahbereich befindet (3). in diesem Fall wird zum Zustand „schwebend” übergegangen. Der schwebende Zustand wird verlassen, wenn die Positionen der Zielpersonen zu einem späteren Zeitpunkt explizit angefragt und erneut verglichen werden. Befinden sich die beiden dann immer noch im Nahbereich (5), so wird die Trennungserkennung gestartet, und der Zustand geht in „kurz” über. Andernfalls (4) wird zu „unbekannt” zurückgekehrt. Die einzige Weise, den „kurzen” Zustand zu verlassen, ist ein entsprechendes Trennungsereignis (6). Es führt wiederum zum Neustart im Zustand „unbekannt”.
-
Graphentheoretische Grundlagen
-
Eine Ausgestaltung der Erfindung beruht darauf, die Nichtexistenz einer Clique zu beweisen, solange sich diese nicht gebildet hat. Gemäß den folgenden Erkenntnissen aus der Graphentheorie ist ein solcher Beweis möglich, auch wenn nur ein kleiner Teil aller möglichen Paarbeziehungen aktiv beobachtet wird.
-
Zum Zeigen der Nichtexistenz einer Clique wird das Konzept so genannter „Independent Sets” verwendet. Ein Independent Set ist eine Teilmenge I ⊆ S der Große i, 1 ≤ i ≤ s von Knoten, die paarweise nicht mit einer Kante verbunden sind. Es ist also bekannt, dass sich die Zielpersonen aus I paarweise nicht innerhalb der Nahbereichsdistanz befinden. Folglich sind alle möglichen Paare eines Independent Sets im „langen” Beobachtungszustand, das heißt, die Nahbereichserkennung ist aktiviert.
-
Die „chromatische Zahl” oder auch „Knotenfärbungszahl” γ(G) eines Graphen G entspricht der kleinsten Anzahl von Farben, die benötigt werden, um die Knoten von G so einzufärben, dass keine zwei durch eine Kante verbundenen Knoten dieselbe Farbe haben. γ(G) gleicht außerdem der minimalen Zahl an Independent Sets, in die sich die Knoten von G aufteilen lassen. Letzteres ist für den gewünschten Beweis entscheidend. Die Aussage lässt sich leicht einsehen, indem man genau diejenigen Knoten in ein Independent Set gruppiert, die dieselbe Färbung aufweisen.
-
Die Cliquenzahl ω(G) eines Graphen G bestimmt die Größe der größten Clique in G. Es gilt, dass die chromatische Zahl eines Graphen stets größer oder gleich der Cliquenzahl ist, γ(G) ≥ ω(G), was sich leicht nachvollziehen lässt: Offensichtlich können keine zwei Knoten desselben Independent Sets in der gleichen Clique enthalten sein. Demzufolge kann selbst die größte Clique eines Graphen nur aus höchstens einem Knoten pro Independent Set bestehen. Nachdem die minimale Anzahl von Independent Sets gleich der chromatischen Zahl γ(G) ist, muss also γ(G) ≥ ω(G) gelten.
-
Der Algorithmus dieser Ausgestaltung beruht auf diesen Erkenntnissen. Um die Nichtexistenz einer Clique Cn der Größe n zu zeigen, wird die Menge alle Zielobjekte S in n – 1 Independent Sets aufgeteilt. Ist dies möglich, so muss gelten, dass n – 1 ≥ γ(G) ≥ ω(G), was Cliquen der Größe n ausschließt. Die Bedingungen aller Independent Sets werden kontinuierlich überwacht: Besteht ein Set nur aus einer Zielperson, so müssen keine Beobachtungen durchgeführt werden. Andernfalls muss für alle Paare von Zielpersonen innerhalb des Sets die Nahbereichserkennung aktiv sein („langer” Zustand).
-
4 zeigt ein Beispiel, in dem eine Clique Cn der Größe n = 4 in einer Menge S = {ti, tj, tk, tl, tm} von s = 5 mobilen Zielobjekten gesucht wird. Gemäß der vorangegangenen Beschreibung kann die Existenz einer solchen Clique ausgeschlossen werden, wenn sich die fünf Zielobjekte in drei Independent Sets aufteilen lassen, was in 4 geschieht: Es gibt ein einzelnes, unbeobachtetes Zielobjekt (tm), welches ein triviales Independent Set darstellt. Außerdem existieren zwei Sets, die jeweils aus einem Paar von Objekten bestehen, (ti, tj) und (tk, tl), und die sich folglich im „langen” Beobachtungszustand befinden. Hervorzuheben ist an dieser Stelle, dass die Cliquenerkennung für s = n mit lediglich einer sich in Ausführung befindlichen Nahbereichserkennung auskommt.
-
Das Entscheidungsproblem der Bestimmung, oh die chromatische Zahl eines Graphen G unter einem gegebenen Wert k liegt, ist NP-hart. Aus diesem Grund versucht der unten beschriebene Algorithmus gar nicht erst, immer die beste Kombination von Independent Sets zu finden. Es wird vielmehr eine Approximation mit polynomieller Berechnungszeit benutzt, die zum Einen entscheidet, ob eine Aufteilung in n – 1 Independent Sets möglich ist, und die zum anderen diese Aufteilung liefert. Es hat sich herausgestellt, dass Situationen, in denen der angenäherte Algorithmus scheitert, sehr selten sind. Tritt eine solche Situation dennoch auf, werden einfach alle möglichen Paarbeziehungen aus S überwacht (entweder im „langen” oder „kurzen” Beobachtungszustand).
-
Basisalgorithmus zur Cliquenerkennung
-
Der Algorithmus zur Cliquenerkennung nach einer Ausgestaltung der Erfindung verwaltet vier Mengen von Paarbeobachtungen: Sc enthält die Beobachtungen im „kurzen” Zustand, Lc die im „langen” Zustand, Uc diejenigen, die „unbekannt” sind, und Pc die „schwebenden” Beobachtungen. Im Wesentlichen schiebt der Algorithmus die Beobachtungen zwischen diesen Mengen anhand der Zustandsübergänge aus hin und her. Es wird außerdem eine Menge Xc, die alle aktuellen Independent Sets enthält, verwaltet. Die Menge Yc enthält alle aktuellen Cliquen, die kleiner als n sind. Wie bereits beschrieben, werden die Elemente der in Xc enthaltenen Independent Sets paarweise im „langen” Zustand beobachtet. Die Paarbeobachtungen innerhalb der Cliquen aus Yc können entweder „kurz” oder „schwebend” sein, wobei die Verwendung des „schwebenden” Zustands zum Ziel hat, die kostenintensive Trennungserkennung weitgehend zu vermeiden.
-
Jedes Mal, wenn eine neue „kurze” oder „schwebende” Beobachtung hinzukommt, werden die Cliquen in Yc neu organisiert. Nur bei einem solchen Ereignis kann die gesuchte Clique der Größe n erkannt werden. Eine Neuorganisation der Cliquen in Yc wird auch durchgeführt, wenn eine kurze oder schwebende Beobachtung entfernt wird. In diesem Fall werden eine oder mehrere Cliquen jeweils in zwei kleinere Cliquen aufgeteilt.
-
Xc wird immer dann umorganisiert, wenn ein neuer Beweis basierend auf Independent Sets berechnet wird. Dies ist normalerweise dann der Fall, wenn eine Beobachtung im „langen” Zustand aufgrund eines Nahbereichsereignisses beendet wird. Als Folge der Reorganisation der Independent Sets entstehen neue „lange” Beobachtungen, die von Uc nach Lc verschoben werden. Außerdem werden bestehende „lange” Beobachtungen, die von keinem der neuen Independent Sets mehr gebraucht werden, abgeschaltet, also von Lc nach Uc umgebucht. Eine detailliertere Beschreibung findet sich weiter unten.
-
Zu Beginn sind die Mengen Sc, Lc und Pc leer, und Uc beinhaltet alle möglichen Paare aus S. Yc enthält s Cliquen, die jeweils aus einem einzelnen Zielobjekt bestehen. Entsprechend enthält Xc s Independent Sets, die jeweils ein Zielobjekt enthalten. Ein initialer Beweis der Nichtexistenz einer Clique Cn basierend auf Independent Sets wird berechnet. Als Ergebnis wird für ein oder mehrere Paare von Zielobjekten die Nahbereichserkennung aktiviert, was die entsprechenden Zustandsbeobachtungen von Uc nach Lc transferiert. Xc enthält jetzt n – 1 Independent Sets. Die Nichtexistenz der gesuchten Clique ist dadurch zumindest so lange gesichert, bis eine der neuen „langen” Beobachtungen ein Nahbereichsereignis auslöst.
-
Der Rest des Algorithmus verläuft rein ereignisgesteuert. Zur Einfachheit werden alle Ereignisse sequentialisiert, das heißt, es wird davon ausgegangen, dass nur jeweils ein Ereignis zur selben Zeit abgehandelt wird. Zwei Ereignistypen werden unterschieden: erkannte Nahbereichsbetretungen sowie Trennungen zweier Zielobjekte. Die Verarbeitung eines Trennungsereignisses ist relativ einfach, da es nicht dazu führen kann, dass ein laufender Nichtexistenz-Beweis der gesuchten Clique ungültig wird. Die einzigen Konsequenzen eines Trennungsereignisses sind, dass die entsprechende Beobachtung von Sc nach Uc überführt wird und dass eine oder mehrere Cliquen aus Yc aufgespalten werden.
-
Die Behandlung von Nahbereichsereignissen ist hingegen aufwändiger: Wenn nach der Feststellung des Nahbereichs zwischen den Zielobjekten ti und tj ein Independent Set I der Größe i existiert, welches bislang das Paar enthielt, so wird I in zwei Independent Sets aufgeteilt: ein triviales Set, welches entweder aus ti oder tj besteht – welches Zielobjekt ausgewählt wird, wird anhand einer Zufallsfunktion bestimmt –, sowie ein Independent Set der Größe i – 1, welches die restlichen Objekte aus I enthält. Das Ergebnis ist, dass sich die Gesamtanzahl von Independent Sets in Xc um eins erhöht und dass folglich die Nichtexistenz einer Clique der Größe n nicht mehr gewährleistet ist. Die Beobachtung zwischen ti und tj wird von Lc nach Pc überführt, und alle anderen Beobachtungen, die bislang das abgespaltene Objekt mit den Elementen aus I verbunden haben, werden nach Uc verschoben. Dann werden die folgenden Schritte, die auch in 5 gezeigt sind, nacheinander ausgeführt, wobei jeder Schritt vom Scheitern seines Vorgängers abhängt:
- 1. Die Cliquen in Yc werden neu organisiert, und es wird geprüft, ob die durch das Nahbereichsereignis erkannte Kante zu einer Clique der Größe n führt. Ist dies der Fall, so wird geprüft, ob die Clique Paarbeobachtungen in Pc hat. Gegebenenfalls wird durch Pollings kontrolliert, ob die entsprechenden Paare die Nahbereichsbedingung noch immer erfüllen. Ist die Clique dann noch erhalten, so kann sie der antragenden Anwendung gemeldet werden. Die Cliquenmitglieder werden dann von der Liste der beobachteten Zielobjekte gestrichen, und die Prozedur kehrt zurück.
- 2. Kann im ersten Schritt keine Clique der Größe n erkannt werden, so wird überprüft, ob ein Nichtexistenz-Beweis durch Erzeugung von n – 1 Independent Sets (siehe unten) möglich ist, indem nur diejenigen Beobachtungen, die sich momentan in Uc[Lc befinden, benutzt werden. Es sollen also in diesem Schritt keine expliziten Nahbereichsprüfungen stattfinden, welche potentiell Beobachtungen von Pc nach Uc freigeben könnten. Entsprechende Pollings werden also an dieser Stelle vermieden, da sie relativ teuer sind. Ist also die Erzeugung von n – 1 Independent Sets an dieser Stelle schon möglich, werden die entsprechenden langen Beobachtungen initialisiert, und die Ereignisbehandlungsroutine kann zurückkehren.
- 3. Andernfalls werden die Positionen aller Zielobjekte, die Teil mindestens einer „schwebenden” Paarbeobachtung sind, erfragt (Polling) und miteinander verglichen. Gemäß den Zustandsübergängen aus 3 werden alle Paare aus Pc, die sich dann immer noch im Nahbereich befinden, nach Sc überführt und aktiv bezüglich Trennung observiert. Alle getesteten Paare aus Pc, die sich mittlerweile voneinander entfernt haben, werden hingegen nach Uc umgebucht. Als Ergebnis enthält Uc nun möglicherweise mehr freie Paare als zuvor. Es wird daher erneut versucht, mit Hilfe der in Uc ∪ Lc enthaltenen Paare, n – 1 Independent Sets zu erstellen. Funktioniert dies, wird die Routine beendet.
- 4. Wie bereits erwähnt, gelingt der Beweis basierend auf n – 1 Independent Sets in den allermeisten Fällen, was bedeutet, dass dieser Schritt normalerweise nicht ausgeführt werden muss. In seltenen Fällen ist der Beweis jedoch nicht möglich, weil sich selbst nach dem Erfragen und Vergleichen der Positionen der Paare aus Pc zu wenige Kandidaten in Uc befinden, aus denen für die benötigten langen Beobachtungen ausgewählt werden kann.
6 zeigt ein Beispiel, bei dem eine Clique der Größe n = 3 in einer Menge von s = 5 verfolgten Zielobjekten erkannt werden soll. Die Nichtexistenz der Clique ließe sich beweisen, wenn die Objekte in zwei Independent Sets aufgeteilt werden könnten, was einer 2-Färbung des Graphen entspricht. Nachdem der Graph jedoch einen ungeraden Zyklus enthält, wie sich anhand der eingezeichneten kurzen Beobachtungen erkennen lässt, ist eine solche Färbung unmöglich.
Wie in 7 gezeigt wird, lässt sich die Nichtexistenz der Clique dennoch zeigen – allerdings nur, indem alle in Uc verbleibenden Paare für die Nahbereichserkennung aktiv geschaltet werden, was sie nach Lc verschiebt. Alle möglichen Kanten des Graphen werden nun beobachtet, und die Prozedur kann zurückkehren. Weitere Nahbereichs- und Trennungsereignisse werden so behandelt, als würde der Beweis auf Independent Sets basieren. Für jedes weitere Nahbereichsereignis wird die gesamte Prozedur wiederholt, und es wird wiederum versucht, einen Beweis basierend auf Independent Sets herzustellen.
-
Erzeugung von n – 1 Independent Sets
-
In den Schritten (2) und (3) des oben beschriebenen Verfahrens wird jeweils versucht, die Anzahl von Independent Sets, die die Knoten aus S abdecken, auf n – 1 zu reduzieren. Zu diesem Zweck werden im Folgenden zwei Funktionen vorgestellt, die sich wiederholt auf die in Xc enthaltenen Sets anwenden lassen: „Verschmelzungen” und „Verteilungen”. Beide Funktionen haben zum Ziel, die Fluktuation zwischen den Mengen Uc und Lc so gering wie möglich zu halten. Es sollen also so wenig wie möglich sich in Ausführung befindliche Beobachtungen verändert werden, um den damit verbundenen Aufwand und die rechnerische Komplexität gering zu halten. Verschmelzungen sind dabei effizienter als Verteilungen, was der Grund dafür ist, dass sie immer zuerst ausprobiert werden. Eine Verteilung wird nur dann versucht, wenn keine mögliche Verschmelzung gefunden werden kann. Erst wenn in Schritt (3) des Basisverfahrens nicht einmal Verteilungen möglich sind, wird die volle Vermaschung (4) angewendet.
-
Verschmelzung
-
Eine Verschmelzung erhält alle bestehenden langen Beobachtungen der Independent Sets aus Xc und ist daher sehr effizient. Zwei Independent Sets Ia und Ib, für die gilt, dass alle Paare (Ia × Ib) in Uc ∪ Lc enthalten sind, werden dabei aus Xc ausgewählt. Diese Paare werden dann in den „langen” Beobachtungszustand Lc transferiert. Dies bewirkt, dass Ia und Ib zu einem einzigen Independent Set verschmelzen, was die Gesamtzahl an Independent Sets um eins reduziert.
-
Ein Beispiel ist in 8 gezeigt. Zuerst gibt es zwei Independent Sets, (ti, tj' tm) und (tk, tl), die die Nichtexistenz einer Clique der Große n := 3 garantieren. Wenn jedoch ein Nahbereichsereignis zwischen Ii und tj auftritt (1), wird (ti, tj, tm) in (ti) und (tj, tm) aufgeteilt, und es verbleiben drei Independent Sets auf dem Spielfeld (2). Wie auch anhand des Beispiels nachvollziehbar ist, stehen oft mehrere Kandidaten für eine Verschmelzung zur Verfügung (im Beispiel könnten sowohl (tj, tm) – (tk, tl) als auch (ti) – (tk, tl) verschmolzen werden). In der Abbildung wird (ti) – (tk, tl) ausgewählt (3), und es existieren wieder nur zwei Independent Sets: (ti, tk, tl) und (tj, tm). Die Nichtexistenz einer Clique ist somit bis zum nächsten Nahbereichsereignis wieder gesichert.
-
Verteilung
-
Die Verteilung wird versucht, wenn sich keine zwei zur Verschmelzung geeigneten Independent Sets in Xc finden lassen. In diesem Fall befindet sich also zwischen allen möglichen Kombinationen aus Independent Sets mindestens eine „kurze” bzw. „schwebende” Beobachtung. Verteilungen verursachen einen größeren Aufwand als Verschmelzungen, da hierbei „lange” Beobachtungen bewusst abgebrochen werden. Die Beobachtungen werden also explizit in den „unbekannten” Zustand versetzt. Ein Independent Set Ia kann dann verteilt werden, wenn es für jedes seiner Elemente ta ein anderes Independent Set Ib aus Xc gibt, so dass sich kein Element tb ∊ Ib in einer „kurzen” oder „schwebenden” Beobachtung zu ta befindet. Trifft diese Bedingung zu, so kann jedes Element von Ia von einem anderen Set absorbiert werden, und Ia verschwindet. Dies führt wiederum dazu, dass sich die Gesamtzahl an Sets um eins reduziert.
-
Ein Beispiel für eine Verteilung findet ist in 9 gezeigt. Wieder zerfällt zu Anfang das Independent Set (ti, tj, tm) in zwei Teile, (tj) und (ti, tm), aufgrund eines Nahbereichsereignisses zwischen ti und tj (l). Diesmal ist jedoch keine Verschmelzung möglich, da zwischen den verbleibenden drei Sets jeweils „kurze” bzw. „schwebende” Beobachtungen bestehen (2). Das einzige mögliche Kandidaten-Set, (tl, tk), wird daher verteilt: tl wird von (tj) aufgenommen und tk von (ti, tm) (3). Die Nichtexistenz einer 3-Clique ist somit wieder gesichert.
-
Substrategien
-
Gemäß Ausgestaltungen der Erfindung ist der Einsatz von Substrategien möglich. Diese beziehen sich sowohl auf Verschmelzungen als auch auf Verteilungen. Wie bereits erwähnt, entstehen oft Situationen, bei denen sich mehr als ein Paar von Independent Sets für eine Verschmelzung bzw. mehr als ein Set für eine Verteilung eignet. Bei der Entscheidung, welches Paar oder Set ausgewählt wird, sind zwei, zum Teil widerstrebende Ziele möglich: Eine mögliche Zielvorgabe wäre, die Gesamtanzahl „langer” Beobachtungen, die zum Zeigen von n – 1 Independent Sets verwendet werden, möglichst gering zu halten. Die damit verbundene Substrategie, welche im Folgenden als „minimale Beobachtungen” bezeichnet wird, generiert also vorzugsweise kleine Independent Sets, da die Anzahl „langer” Beobachtungen quadratisch mit der Größe eines Sets ansteigt. Ist in einer bestimmten Situation zum Beispiel eine Verschmelzung zweier einelementiger Sets als auch zweier zweielementiger Sets möglich, so wird die erste Kombination ausgewählt, da sie nur eine zusätzliche lange Beobachtung erfordert, im Gegensatz zu vier neuen Beobachtungen im zweiten Fall. Zur Verteilung wählt die Substrategie mit minimalen Beobachtungen immer das größte Independent Set unter den möglichen Kandidaten aus, da hierdurch die größte Anzahl „langer” Beobachtungen aufgelöst wird.
-
Die alternative Substrategie, welche als „minimale Knoten” bezeichnet wird, versucht hingegen die Gesamtzahl beobachteter Zielpersonen zu reduzieren. Dabei wird von der Annahme ausgegangen, dass es vorteilhaft ist, wenn eine Zielperson gar nicht beobachtet wird (was bei einelementigen Independent Sets der Fall ist) bzw. wenn einige Zielpersonen einer geringeren Zahl „langer” Beobachtungen unterworfen werden. Es soll so der Nachteil aufgewogen werden, dass andere Zielpersonen im Gegenzug intensiver verfolgt werden müssen. Die Substrategie versucht daher, so viele einelementige Independent Sets wie möglich zu generieren. Verschmelzungen, die solche Sets einbeziehen, werden daher möglichst vermieden. Bei Verteilungen werden vorzugsweise große absorbierende Sets ausgesucht und kleine Sets aufgeteilt.