38 |
9 4
β) αν οποιαδήποτε θέση κόμβου είναι άκυρη (κόκκινη θέση) τότε αγνοείται
γ) προσθέτουμε στη λίστα όλους τους έγκυρους γειτονικούς κόμβους για τον
επιλεγμένο γονέα
Εδώ στο διάγραμμα, δείχνουμε ότι ο κόμβος μαύρου κύκλου είναι ο τρέχων κόμβος
και οι κόμβοι πράσινου κύκλου είναι οι αποδεκτοί γειτονικοί κόμβοι.
Εικόνα 16: Δημιουργία γειτονικών κόμβων
Για όλους τους γειτονικούς κόμβους:
α) εάν βρίσκεται στη λίστα “visited”, τότε τον αγνοούμε και δοκιμάζουμε τον επόμενο
κόμβο.
β) υπολογίζουμε τις τιμές g, h, και f του γειτονικού κόμβου. Το ευρετικό κόστος h για
την επίτευξη του κόμβου στόχου από τον τρέχοντα κόμβο υπολογίζεται χρησιμοποιώντας την
Ευκλείδεια απόσταση (Hart, Nilsson, & Raphael, 1968).
γ) Εάν ο γειτονικός κόμβος βρίσκεται στη λίστα "yet_to_visit", τότε αγνοείται, αλλιώς
προσθέτουμε τον γειτονικό κόμβο στη λίστα "yet_to_visit".