Σχεδίαση του αλγορίθμου για το παιχνίδι Rat s Life

Σχετικά έγγραφα
ΔΙΔΑΣΚΑΛΙΑ ΤΟΥ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ ΜΕ ΧΡΗΣΗ ΤΟΥ ΠΑΚΕΤΟΥ ΡΟΜΠΟΤΙΚΗΣ LEGO MINDSTORMS NXT

ΔΙΔΑΣΚΑΛΙΑ ΤΟΥ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ ΜΕ ΧΡΗΣΗ ΤΟΥ ΠΑΚΕΤΟΥ ΡΟΜΠΟΤΙΚΗΣ LEGO MINDSTORMS NXT

Πολυτεχνείο Κρήτης Τμήμα ΗΜΜΥ Χειμερινό Εξάμηνο Intelligence Lab. Αυτόνομοι Πράκτορες. Κουσανάκης Βασίλης

Εισαγωγή στη Ρομποτική και τον Προγραμματισμό με τη χρήση του ρομπότ Thymio & του λογισμικού Aseba

ΔΙΔΑΣΚΑΛΙΑ ΤΟΥ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ ΜΕ ΧΡΗΣΗ ΤΟΥ ΠΑΚΕΤΟΥ ΡΟΜΠΟΤΙΚΗΣ LEGO MINDSTORMS NXT

Φύλλο εργασίας 6. Αποφυγή εμποδίων. Χωριστείτε σε ομάδες 2-3 ατόμων και απαντήστε στις ερωτήσεις του φύλλου εργασίας.

ΡΟΜΠΟΤΙΚΗ ΜΕ ΧΡΗΣΗ ΤΟΥ ΠΑΚΕΤΟΥ LEGO MINDSTORMS NXT. ΚΕΦΑΛΑΙΟ 7ο. Δραστηριότητες για το ΝΧΤ-G και το Robolab

Σχεδιαστικές προδιαγραφές

ΑΥΤΟΝΟΜΟΙ ΠΡΑΚΤΟΡΕΣ ΠΛΗ 513

Β1.1 Δημιουργία Εφαρμογής στο Περιβάλλον Προγραμματισμού EdScratch του Edison ρομπότ

ΠΑΡΑΡΤΗΜΑ IV. ΔΙΔΑΚΤΙΚΗ ΤΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΠΑΡΑΡΤΗΜΑ IV Ασκήσεις για το Robolab

Μέρος Α Γνωριμία με το περιβάλλον προγραμματισμού του ρομπότ OTTO

Ρύθμιση ενός Αισθητήρα

Εξοικείωση με το NXT-G

Αριστείδης Παλιούρας Ανακαλύψτε το Scratch 2

Πώς μπορούμε να δημιουργούμε γεωμετρικά σχέδια με τη Logo;

ΔΙΔΑΣΚΑΛΙΑ ΤΟΥ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ ΜΕ ΧΡΗΣΗ ΤΟΥ ΠΑΚΕΤΟΥ ΡΟΜΠΟΤΙΚΗΣ LEGO MINDSTORMS NXT

ΕΡΓΑΣΤΗΡΙΑΚΗ ΕΦΑΡΜΟΓΗ 4 TΟ ΡΟΜΠΟΤΙΚΟ ΟΧΗΜΑ ROGUE BLUE

Breakdance Computer Game σε Scratch.

Πτυχιακή Εργασία Οδηγώντας ένα Ρομποτικό Αυτοκίνητο με το WiFi. Η Ασύρματη Επικοινωνία, χρησιμοποιώντας

x = r cos φ y = r sin φ

Εισαγωγή στις Αρχές της Επιστήμης των ΗΥ

ΔΙΔΑΚΤΙΚΗ ΤΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΜΕ ΕΦΑΡΜΟΓΕΣ ΕΚΠΑΙΔΕΥΤΙΚΗΣ ΡΟΜΠΟΤΙΚΗΣ ΒΑΣΙΣΜΕΝΗΣ ΣΤΗΝ ΕΠΟΙΚΟΔΟΜΙΣΤΙΚΗ ΘΕΩΡΙΑ ΜΕΡΟΣ Γ ΦΥΛΛΑ ΔΡΑΣΤΗΡΙΟΤΗΤΩΝ

ΔΗΜΙΟΥΡΓΙΑ ΕΝΟΣ ΡΟΜΠΟΤ ΑΠΟ ΗΛΕΚΤΡΟΝΙΚΑ ΣΚΟΥΠΙΔΙΑ

Συλλογή & Επεξεργασία Δεδομένων Εξαμηνιαία ΡομποΚαθαριστής Μέρος Β : Το Πρόγραμμα. Σχεδίαση Συστήματος Πραγματικής Εφαρμογής (Prototyping).

ΔΙΔΑΣΚΑΛΙΑ ΤΟΥ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ ΜΕ ΧΡΗΣΗ ΤΟΥ ΠΑΚΕΤΟΥ ΡΟΜΠΟΤΙΚΗΣ LEGO MINDSTORMS NXT

Βαγγέλης Τσιλιγωνέας. Διατμηματικό Πρόγραμμα Μεταπτυχιακών Σπουδών στα Πληροφοριακά Συστήματα M.Sc. In Information Systems

Σχετική κίνηση αντικειμένων

Επιμέλεια παρουσίασης: Αριστείδης Παλιούρας ΤΙ ΕΊΝΑΙ ΈΝΑ ΡΟΜΠΟΤ (ROBOT)?

Αντικείμενα, συμπεριφορές, γεγονότα

STEM Education via Educational Robotics

1. ΠΕΡΙΓΡΑΦΗ ΚΑΙ ΑΝΑΛΥΣΗ ΦΥΛΛΩΝ ΕΡΓΑΣΙΑΣ (Ή ΚΑΙ ΑΛΛΟΥ ΔΙΔΑΚΤΙΚΟΥ ΥΛΙΚΟΥ) ΑΞΙΟΛΟΓΗΣΗ ΤΩΝ ΜΑΘΗΤΩΝ

Εισαγωγή στη Ρομποτική (για αρχάριους) Δημήτρης Πιπερίδης Διαδραστική Έκθεση Επιστήμης & Τεχνολογίας Ίδρυμα Ευγενίδου

Γ ΓΥΜΝΑΣΙΟΥ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΜΕ ΤΗ ΓΛΩΣΣΑ MicroWorlds Pro

ΟΔΗΓΙΕΣ. Κάθε ΟΡΘΗ απάντηση βαθμολογείται με 5 μονάδες, κάθε ΛΑΝΘΑΣΜΕΝΗ με -1, ενώ αν δεν απαντήσετε σε κάποια ερώτηση αυτή αγνοείται

Συνεργαζόμενα Mini golf. Μπατζανακάκη Μαρίνα - Φανιουδάκης Βασίλης 1

Φύλλα εργασίας. MicroWorlds Pro. Πολυμεσικές Εφαρμογές με την χρήση της γλώσσας LOGO Στο Γυμνάσιο. Β. Χ. Χρυσοχοΐδης

Φύλλο εργασίας 9 - Αυτόνομο ρομποτικό όχημα αποφυγής εμποδίων

«Προγραµµατισµός του LEGO Mindstorm NXT για το διαγωνισµό "Move the Ball!"»

7. Επαναλήψεις (Loops) Προγραμματισμός EV3 Ακαδημία Ρομποτικής 58

Κεφ. 2 Θέματα Θεωρητικής Επιστήμης Υπολογιστών. Κοντογιάννης Βασίλειος ΠΕ19

Τι είναι ρομπότ. Εκπαιδευτική ρομποτική Lego

Thymio το Ρομποτάκι: Προγραμματισμός και Ρομποτική στις πρώτες τάξεις του Δημοτικού

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΜΕ ΤΟ ΚΙΤ ΡΟΜΠΟΤΙΚΗΣ LEGO MINDSTORMS EV3

Εισαγωγή στη ρομποτική Εσύ δίνεις τις εντολές

Σχεδίαση και ανάπτυξη δραστηριοτήτων στο προγραμματιστικό περιβάλλον MicroWorlds Pro

Κατασκευή Ρομπότ. Από τη θεωρία στην πράξη. Μάκης Χατζόπουλος

Ανάπτυξη Εφαρμογών σε Προγραμματιστικό Περιβάλλον κεφ.6 Εισαγωγή στον Προγραμματισμό

Φορητό σύστημα ηχείων με Bluetooth και ραδιόφωνο FM ΕΓΧΕΙΡΙΔΙΟ ΧΡΗΣΤΗ PS-460 PS-465 PS

ΤΜΗΜΑ ΜΗΧΑΝΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ

Δραστηριότητα 1 γνωριμία με το περιβάλλον Karel

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΜΑΡΙΑ Σ. ΖΙΩΓΑ ΚΑΘΗΓΗΤΡΙΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΕΙΣΑΓΩΓΗ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ

Κεφάλαιο 1.Εντολές κίνησης

Σενάριο 14: Προγραμματίζοντας ένα Ρομπότ ανιχνευτή

Σενάριο 13: Προγραμματίζοντας ένα Ρομπότ

Εισαγωγή στη ρομποτική Γίνε κατασκευαστής

Η Μηχανική Μάθηση στο Σχολείο: Μια Προσέγγιση για την Εισαγωγή της Ενισχυτικής Μάθησης στην Τάξη

Φτιάξε ένα απλό παιχνίδι

Σενάριο 14: Προγραμματίζοντας ένα Ρομπότ ανιχνευτή

Τι ακριβώς είναι η Java η C++, η PASCAL και η PYTHON;

Περιγραφή της 3 ης εργαστηριακής εφαρμογής: ρομποτικό σύστημα LEGO NXT

Line Follower. 1. Σκοπός. 2. Η Δοκιμασία. 3. Το Ρομπότ. Line Follower v.1.1

Ανάπτυξη Εφαρµογών σε Προγραµµατιστικό Περιβάλλον

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΜΕ ΤΟ ΚΙΤ ΡΟΜΠΟΤΙΚΗΣ LEGO MINDSTORMS EV3

ΚΕΦΑΛΑΙΑ XIII, XIV. Εκσφαλμάτωση προγράμματος - Κύκλος Ζωής Λογισμικού

Εκπαιδευτική Ρομποτική με ARDUINO. για εκπαιδευτικούς και μαθητές. 1o Μέρος: Απλά Κυκλώματα

Αγώνες αυτοκινήτου Παιχνίδι για 2 παίκτες

Συλλογή & Επεξεργασία Δεδομένων Εργαστήριο 5. Ρυθμίζοντας τη Φορά Περιστροφής. Σύστημα Συλλογής & Επεξεργασίας Μετρήσεων

ΣΥΣΤΗΜΑΤΑ ΚΑΙ ΤΕΧΝΟΛΟΓΙΑ ΕΛΕΓΧΟΥ. Εγχειρίδιο χρήσης

ΣΚΗΝΙΚΟ ΥΠΟΒΑΘΡΑ ΑΡΧΙΚΗ

Φύλλο Εργασίας: Παιχνίδι Λαβύρινθος (MAZE) Προγραμματιστικό Εργαλείο: SCRATCH. Ονοματεπώνυμο:

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ EV3 Επίπεδο Ι

Εντολές της LOGO (MicroWorlds Pro)

1ο μέρος 1. Φτιάχνουμε την πίστα. Μια ενδεικτική πίστα φαίνεται παρακάτω:

Επαναληπτικό ιαγώνισµα Πληροφορικής Γ Γυµνασίου Γιώργος Λιακέας Σχολικός Σύµβουλος Πληροφορικής Ερωτήσεις

Μαλούτα Θεανώ Σελίδα 1

ΔΙΔΑΣΚΑΛΙΑ ΤΟΥ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ ΜΕ ΧΡΗΣΗ ΤΟΥ ΠΑΚΕΤΟΥ ΡΟΜΠΟΤΙΚΗΣ LEGO MINDSTORMS NXT

Line Follower v.1.2 Aegean Robotics Competition 2019

ΕΚΠΑΙΔΕΥΤΙΚΉ ΡΟΜΠΟΤΙΚΉ & STEM. Δημήτριος Κράββαρης Καθηγητής Πληροφορικής Α/θμιας Εκπ/σης MSc. BSc. Πληροφορικής

6. Εισαγωγή στον προγραµµατισµό

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ. Στέφανος Ουγιάρογλου

Επώνυµο:... Όνοµα:... Όνοµα πατέρα: ιεύθυνση:... Τηλέφωνο:... Εξεταστικό Κέντρο:... Σχολείο προέλευσης:... Τάξη:...

Ενότητα 2. Ζωγραφίζοντας με το ΒΥΟΒ

Ε Ι Α Γ Ω Γ Η Σ Ο Ν Π Ρ Ο Γ Ρ Α Μ Μ Α Σ Ι Μ Ο Κ Ε Υ Α Λ Α Ι Ο 6. Σο πρόγραμμα γράφεται σε κάποια γλώσσα προγραμματισμού.

ΡΟΜΠΟΤΙΚΗ ΚΑΙ ΑΥΤΟΜΑΤΙΣΜΟΣ

Συλλογή & Επεξεργασία Δεδομένων Εξαμηνιαία Σχεδίαση Συστήματος Πραγματικής Εφαρμογής (Prototyping).

Κεφάλαιο 2.3: Προγραμματισμός. Επιστήμη ΗΥ Κεφ. 2.3 Καραμαούνας Πολύκαρπος

Εργαστήριο Προγραμματισμού και τεχνολογίας Ευφυών συστημάτων (intelligence)

Ενότητα 1: Απλές εντολές γραφικών

Ερωτήσεις- Απαντήσεις Πολυμέσα Απο το Βιβλίο Εφαρμογές Η/Υ Α,Β,Γ Λυκείου

Παγκόσμια Ολυμπιάδα Ρομποτικής Κατηγορία Πανεπιστημίου. «WRO Bowling» Κανόνες δοκιμασίας

ΕΙΣΑΓΩΓΗ ΣΤOΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΜΕ ΤΟ ΚΙΤ ΡΟΜΠΟΤΙΚΗΣ LEGO MINDSTORMS EV3

Ασκήσεις μελέτης της 6 ης διάλεξης

Συλλογή & Επεξεργασία Δεδομένων Εργαστήριο 8. Μετρώντας Επιτάχυνση με το Accelerόμετρο (ADXL 335) Σύστημα Συλλογής & Επεξεργασίας Μετρήσεων

ΑΚΑΔΗΜΑΪΚΟ ΕΤΟΣ: ΧΕΙΜΕΡΙΝΟ ΕΞΑΜΗΝΟ TMHMA ΜΗΧΑΝΙΚΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ ΤΕ

Πληρουορική Γ Γσμμασίοσ

Εγχειρίδιο Οδηγιών rapidcount E15

- Εισαγωγή - Επίπεδα μνήμης - Ολοκληρωμένα κυκλώματα μνήμης - Συσκευασίες μνήμης προσωπικών υπολογιστών

Transcript:

H παρουσίαση περιλαμβάνει: Λίγα λόγια για την Τεχνητή Νοημοσύνη Λίγα λόγια για το πρόγραμμα Webots Τεχνικά χαρακτηριστικά του αυτόνομου E-puckmobile-robot Σχεδίαση του αλγορίθμου για το παιχνίδι Rat s Life

Τι είναι η Τεχνητή Νοημοσύνη Η Τεχνητή Νοημοσύνη είναι ο πιο δύσκολος και συναρπαστικότερος κλάδος της πληροφορικής. Είναι και αυτή ένα πρόγραμμα όπως όλα τα άλλα αλλά με μία σημαντικότατη διαφορά.τα κανονικά προγράμματα απλώς εκτελούν τις εντολές του προγραμματιστή.όμως το πρόγραμμα της Τεχνητής Νοημοσύνης είναι σχεδιασμένο έτσι ώστε να μπορεί να αυτοπρογραμματίζεται κατά τον καλύτερο δυνατό τρόπο στις υπάρχουσες συνθήκες. Ήδη η Τεχνητή Νοημοσύνη έχει καταφέρει απίστευτα πράγματα.ένα παράδειγμα είναι η αναμέτρηση της στο σκάκι με τον παγκόσμιο πρωταθλητή σκακιού Γκάρι Κασπάροβ το 1997.Το παιχνίδι ήταν ιδιαίτερα αμφίρροπο και στο κρισιμότερο σημείο ο παγκόσμιος πρωταθλητής έκανε μία κίνηση ώστε να ψαρέψει την Τεχνητή Νοημοσύνη και να νικήσει στο ματς.όπως παραδέχθηκε και ο ίδιος αργότερα η Τεχνητή Νοημοσύνη όχι μόνο δε ψάρεψε αλλά είδε ασύλληπτα για τον ανθρώπινο νου μακριά και έκανε μία απροσδόκητη και ριψοκίνδυνη κίνηση που χάρη σε αυτήν τελικά νίκησε στο παιχνίδι.φυσικά η ομάδα των επιστημόνων προγραμματιστών που κατασκεύασε τη συγκεκριμένη Τεχνητή Νοημοσύνη ήξερε μόνο για το σκάκι το πως παίζεται.αλλά αυτό που γνώριζε πολύ καλά ήταν πως να προγραμματίζει. Οι τρεις κανόνες με τους οποίους για την ανθρώπινη ασφάλεια πρέπει να έχουν προγραμματιστεί με Τεχνητή Νοημοσύνη οπωσδήποτε τα ρομπότς είναι οι εξής: 1) Το ρομπότ δεν επιτρέπεται να βλάψει άνθρωπο ή να επιτρέψει - μέσω της απραξίας του - να πάθει ένας άνθρωπος κακό. 2) Το ρομπότ πρέπει να υπακούει στις διαταγές των ανθρώπων,εκτός εάν οι διαταγές αυτές αντιβαίνουν τον πρώτο κανόνα. 3) Το ρομπότ πρέπει να προστατεύει την ύπαρξή του,εφόσον η ύπαρξή του δεν παραβιάζει τον πρώτο ή το δεύτερο κανόνα.

Τι είναι το πρόγραμμα Webots Το πρόγραμμα Webots παρέχει τη δυνατότητα εικονικού προγραμματισμού του ρομπότ.αυτό είναι πολύ σημαντικό καθόσον όταν προγραμματίζεις ένα αληθινό ρομπότ είναι χρονοβόρα η εκσφαλμάτωση. Εκτός από αυτό ο τρισδιάστατος κόσμος του Webots μέσα στο οποίο υπάρχει το ρομπότ δίνει μία πολύ καλή οπτική εικόνα για την αποφυγή εμποδίων ενώ παράλληλα δίνεται η δυνατότητα στον προγραμματιστή να μπορεί να προγραμματίσει το ρομπότ σε διάφορες γλώσσες συμπεριλαμβανομένης της γλώσσας Java.Αυτό είναι σημαντικότατο καθώς η γλώσσα Java είναι αυτήν τη στιγμή η καλύτερη γλώσσα προγραμματισμού στον πλανήτη.η γλώσσα Java είναι η καλύτερη γλώσσα προγραμματισμού σήμερα διότι γράφτηκε πάνω στη γλώσσα C και τη γλώσσα C++ αλλά αφαίρεσε τους δείκτες και τις μνήμες.αυτό είχε ως συνέπεια να γίνει ευκολότερη στην εκμάθηση αλλά συγχρόνως να διατηρεί και τις δυνατότητες των γλωσσών C και C++.Επιπρόσθετα εμπλουτίστηκε με ακόμη περισσότερες δυνατότητες και δικαίως κατέληξε να θεωρείται η κορυφαία γλώσσα στον κόσμο.το μόνο κόστος της συγγραφής της γλώσσας Java πάνω στις γλώσσες C και C++ είναι ότι έχει μικρότερη ταχύτητα από αυτές τις γλώσσες ωστόσο και πάλι η ταχύτητα της δεν είναι απαγορευτικά αργή. Τέλος το πρόγραμμα Webots διαθέτει υπέρυθρους αισθητήρες,αισθητήρες φωτός,αισθητήρες αφής, επιταχυνσιόμετρα,gps,κάμερες και άλλα τα οποία κάνουν το πρόγραμμα ένα ακαταμάχητο εργαλείο για τον προγραμματισμό των ρομπότς.

E-puck-mobile-robot Το Ε-puck-mobile-robot αντιπροσωπεύει καθένα από τα δύο ρομπότς που συναγωνίζονται μέσα στο λαβύρινθο ποιο από τα δύο θα επιβιώσει το μεγαλύτερο χρονικό διάστημα στο παιχνίδι που λέγεται Rat s Life.Τα τεχνικά χαρακτηριστικά αυτού του αυτόνομου ρομπότ είναι τα εξής: Διάμετρος: 70 mm Ύψος: 50 mm Βάρος: 200 g Μέγιστη ταχύτητα: 13 cm/s Αυτονομία: 2 ώρες κίνησης Μνήμη - RAM: 8 KB Λάμψη - Flash: 144 ΚΒ Κινήσεις: 2 Υπέρυθρους αισθητήρες μέτρησης απόστασης: 8 κατανεμημένους στο ρομπότ κυκλικά με τη φορά του ρολογιού Κάμερα: 640x480 στο μπροστινό μέρος του ρομπότ LEDs:8 LEDs κυκλικά + ένα στο κέντρο LED + ένα LED μπροστά Επιταχυνσιόμετρα: 3D Μικρόφωνα: 3 Ηχεία: 1

Ο αλγόριθμος έχει τρία σκέλη: Γρήγορη πλοήγηση Αποφυγή εμποδίων Εξερεύνηση για πλοήγηση σε αριστερούς ή δεξιούς διαδρόμους Για να διατηρηθεί στη ζωή το ρομπότ πρέπει να βρίσκει τις λάμπες που ανανεώνουν τη μπαταρία του δηλαδή παρατείνουν τη ζωή του στο ανταγωνιστικό αυτό παιχνίδι.συνεπώς ο αλγόριθμος που χρησιμοποιώ περιέχει καταρχάς γρηγορότερη πλοήγηση μέσα στο λαβύρινθο.η ταχύτητα της πλοήγησης του ρομπότ είναι ζωτικής σημασίας καθόσον αν του ρομπότ του μένει λίγος χρόνος για να παραμείνει ζωντανό και ανάψει μία λάμπα η οποία είναι μακριά από το ρομπότ τότε είναι ευκολονόητο το ότι το ρομπότ πρέπει να κινηθεί ταχύτατα.για αυτό λοιπόν η ταχύτητα του ρομπότ τριπλασιάστηκε. Εκτός από τη γρήγορη πλοήγηση ο αλγόριθμος συγκαταλέγει την αποφυγή εμποδίων.

Η αποφυγή εμποδίων πραγματοποιείται με τους αισθητήρες απόστασης distancesensor[0] και distancesensor[1] οι οποίοι ανιχνεύουν εμπόδια από τη μπροστινή πλευρά του ρομπότ εώς τη γωνία με αυτήν περίπου 45 μοίρες και τους αισθητήρες απόστασης distancesensor[6] και distancesensor[7] που εντοπίζουν εμπόδια από τη μπροστινή πλευρά του ρομπότ εώς τη γωνία με αυτήν περίπου -45 μοίρες.στην πρώτη περίπτωση γίνεται στροφή προς τα αριστερά ενώ στη δεύτερη,στροφή προς τα δεξιά.για να γίνει στροφή προς τα δεξιά θέτουμε την αριστερή ταχύτητα του ρομπότ ίση με τη μέγιστη ταχύτητα του ρομπότ (900) και τη δεξιά ταχύτητα του ρομπότ ίση με την αντίθετη τιμή της μέγιστης ταχύτητας του ρομπότ (-900).Τα ανάποδα κάνουμε για την αριστερή στροφή του ρομπότ. Επειδή υπάρχει η περίπτωση να κολλήσει στον τοίχο το ρομπότ επειδή δε θα βλέπει καθόλου στα αριστερά εμπόδια για το ρομπότ που χρησιμοποιεί για την αποφυγή εμποδίων τους αισθητήρες distancesensor[0] και distancesensor[1] τουτέστιν του ρομπότ Rat1 έχω προσθέσει και τον αισθητήρα distancesensor[7] για ανίχνευση πάρα πολύ κοντινών εμποδίων λίγο προς τα αριστερά. Ομοίως για το ρομπότ που χρησιμοποιεί για την αποφυγή εμποδίων τους αισθητήρες distancesensor[6] και distancesensor[7] δηλαδή του ρομπότ Rat0 έχω προσθέσει και τον αισθητήρα distancesensor[0] για ανίχνευση πάρα πολύ κοντινών εμποδίων λίγο προς τα δεξιά. Τέλος ο αλγόριθμος συμπεριλαμβάνει εξερεύνηση για πλοήγηση σε αριστερούς ή δεξιούς διαδρόμους.

Δηλαδή ο αλγόριθμος περιλαμβάνει πλοήγηση προς τα δεξιά όταν βρεθεί διάδρομος προς τα δεξιά για το ένα ρομπότ και πλοήγηση προς τα αριστερά όταν βρεθεί διάδρομος προς τα αριστερά για το άλλο ρομπότ.αυτή η στρατηγική είναι πολύ εποικοδομητική καθόσον αν δε δινόταν η δυνατότητα στο ρομπότ να στρίψει προς τα αριστερά για το ρομπότ που κάνει αποφυγή εμποδίων μόνο προς τα δεξιά ή δε δινόταν η δυνατότητα στο άλλο ρομπότ να στρίψει προς τα δεξιά ενώ κάνει αποφυγή εμποδίων μόνο προς τα αριστερά θα υπήρχε πρόβλημα.το πρόβλημα θα ήταν αν δεν υπήρχαν αυτές οι δυνατότητες ότι το ρομπότ το οποίο κάνει αποφυγή εμποδίων μόνο προς τα αριστερά να παγιδευόταν και να έκανε συνεχώς την ίδια κίνηση δηλαδή αποφυγή εμποδίων αποκλειστικά προς τα αρι στερά.το αντίστοιχο θα γινόταν και για το άλλο ρομπότ το οποίο θα έκανε κίνηση μόνο προς τα δεξιά και θα επαναλάμβανε διηνεκώς την ίδια κίνηση.αυτό υλοποιείται στο πρόγραμμα με τη χρήση του αισθητήρα distancesensor[2] για το ρομπότ Rat1 που ψάχνει διαδρόμους προς τα δεξιά ενώ αποφεύγει εμπόδια στρίβοντας πάντα αριστερά και του αισθητήρα distancesensor[5] για το ρομπότ Rat0 που ερευνά διαδρόμους προς τα αριστερά ενώ αποφεύγει εμπόδια στρίβοντας πάντα δεξιά. Ήτοι του αισθητήρα που σχηματίζει γωνία 90 μοίρες με το μπροστινό μέρος του πρώτου ρομπότ και του αισθητήρα που σχηματίζει γωνία -90 μοίρες με το μπροστινό μέρος του δεύτερου ρομπότ.

Οι αισθητήρες αυτοί είναι αισθητήρες μέτρησης απόστασης πράγμα που σημαίνει πως μετρούν την απόσταση του ρομπότ με τον τοίχο του λαβυρίνθου (εμπόδιο).ουσιαστικά όσο πιο μεγάλη τιμή έχουν αυτοί οι αισθητήρες τόσο πιο κοντά είναι το εμπόδιο από το ρομπότ.οπότε για απόσταση μικρότερη του 50 αυτών των αισθητήρων κάνω το Rat1 να κινηθεί προς τα δεξιά και το Rat0 να κινηθεί προς τα αριστερά. Η διπλανή εικόνα έχει μία γεύση αλήθειας...!!!