Σκοπός της διπλωματικής εργασίας είναι η σχεδίαση και η υλοποίηση ενός αλγορίθμου που παρακολουθεί την κίνηση αντικειμένων στο χώρο σε πραγματικό χρόνο και εντοπίζει ανάμεσά τους ομάδες αντικειμένων με κοινή τροχιά. Για κάθε τέτοια ομάδα, ο αλγόριθμος επιστρέφει μία κατασκευασμένη τροχιά ως αποτέλεσμα της πολυπλεξίας των επιμέρους τροχιών των αντικειμένων.
Οι πληροφορίες για την κίνηση των αντικειμένων φτάνουν στο σύστημα με τη μορφή ρεύματος δεδομένων. Τα κινούμενα αντικείμενα θεωρούνται σημειακά και η θέση τους μεταβάλλεται δυναμικά. Κάθε αντικείμενο αποστέλλει ανά τακτά χρονικά διαστήματα την ανανεωμένη θέση του σε ένα κεντρικό επεξεργαστή ο οποίος εκτελεί τον αλγόριθμο πολυπλεξίας.
Ο αλγόριθμος δουλεύει επαναληπτικά. Κάθε κύκλος εκτέλεσης περιλαμβάνει πέντε διεργασίες. Αρχικά, υπολογίζει την κατεύθυνση που ακολούθησε κάθε αντικείμενο σε σχέση με την θέση του κατά τον προηγούμενο κύκλο (εξομάλυνση κίνησης). Στη συνέχεια, η κατεύθυνση αυτή κωδικοποιείται και συνδυάζεται με προηγούμενες κωδικοποιήσεις για την δημιουργία μιας συμβολικής αναπαράστης της πρόσφατης κίνησης του κάθε αντικειμένου (προσέγγιση πορείας). Κάνοντας χρήση των συμβολικών αναπαραστάσεων, ο αλγόριθμος εντοπίζει αντικείμενα που είχαν παράλληλη κίνηση στο πρόσφατο παρελθόν (ομαδοποίηση). Στο επόμενο βήμα, εντοπίζονται ομάδες αντικειμένων που εκτός από παράλληλη κίνηση είχαν όντως κοινή τροχιά (εύρεση αντικειμένων με κοινές τροχιές). Τέλος, υπολογίζεται η πολυπλεγμένη τροχιά για κάθε ομάδα, ώστε να προσεγγίζει τις τροχιές που εμπίπτουν σε αυτήν με όσο το δυνατόν καλύτερο τρόπο (πολυπλεξία τροχιών).
Ο αλγόριθμος δοκιμάστηκε σε συνθετικά δεδομένα που προσομοίωναν την κίνηση 10000 αυτοκινήτων στο οδικό δίκτυο της Αθήνας. Τα αποτελέσματα ήταν πολύ ενθαρρυντικά, αφού οι χρόνοι εκτέλεσης που επιτεύχθηκαν για τον εντοπισμό πολυπλεγμένων τροχιών ήταν της τάξεως μερικών δευτερολέπτων. Η πολυπλεγμένη τροχιά προσεγγίζει με ικανοποιητική πιστότητα τις επιμέρους κινήσεις των αντικειμένων και το σφάλμα δεν υπερβαίνει τα όρια ανοχής που τίθενται από τον χρήστη.
Τα αποτελέσματα δείχνουν πώς ο αλγόριθμος αυτός θα μπορούσε να χρησιμοποιηθεί με επιτυχία για τον εντοπισμό πομπών αντικειμένων σε διάφορα πεδία εφαρμογής (οχήματα, πλοία, πανίδα κ.α), καθώς επίσης και για τον εντοπισμό αντικειμένων που κινούνται μαζικά προς την ίδια κατεύθυνση σε διάταξη μετώπου.
The goal of this thesis is to design and implement a real-time algorithm that tracks the movement of spatial objects and identifies groups having a similar trajectory. For each such group, the algorithm returns a calculated trajectory as the result of multiplexing the individual trajectories of the objects that belong to that group.
Positional data from numerous moving objects arrive at the system as a data stream. Each object is abstracted as a point, but its position changes dynamically and relayed frequently to a main processing unit where the multiplexing algorithm is being executed.
The algorithm works iteratively in execution cycles. Each cycle consists of five processes. First, it calculates the direction of movement for each object by considering its position during the previous execution cycle (movement smoothing). Then, the direction is encoded and combined with previous encodings in order to create a symbolic representation of the recent movement of each object (movement approximation). Utilizing these symbolic representations, the algorithm identifies objects with parallel courses (grouping) in the recent past. Next, it identifies groups of objects with parallel movement which also share a common trajectory (finding objects with common trajectories). Finally, it calculates one multiplexed trajectory for each group, minimizing the error with respect to the original ones (trajectory multiplexing).
This approach was tested against a synthetic dataset simulating the movement of 10000 vehicles on the road network of Athens. Experimental results were very encouraging since detection of multiplexed trajectories did not require more than a few seconds per cycle. Besides, the multiplexed trajectory achieves a good approximation of the original ones, while the error does not exceed the tolerance imposed by the user.
The results show that the algorithm can be successfully used for detecting convoys of various types of objects (vehicles, ships, animals, etc.), as well for discovering objects that move en masse towards the same direction forming a front.