Soccer player behavior development for the RoboCup Standard Platform LeagueSoccer player behavior development for the RoboCup Standard Platform LeagueΑνάπτυξη συμπεριφοράς ποδοσφαιριστή για το πρωτάθλημα Standard Platform του RoboCup Διπλωματική Εργασία Diploma Work 2019-07-112019enHumans are used to operate in dynamic environments, which nevertheless can be quite unpredictable and complicated for a robot. Therefore, for an autonomous robot to be able to adapt and act in such an environment, it must tackle a large variety of the problems, using a top-down approach that breaks them down into simpler ones. The annual robot soccer (RoboCup) competition offers such a dynamic environment and one of the main components of any RoboCup player is the algorithm responsible for decision making, known as robot behavior control. In this thesis, we aim to develop from scratch soccer player behaviors for the Standard Platform League (SPL), where all teams share the same robot platform, but develop different software, in an attempt to better understand the process of behavior development. Behavior development can be very tricky, since it combines information from different modules (vision, motion, communication, estimation, etc.) and decides the actions that need to be taken for the agent to achieve its goal. We worked on a recent code base framework developed by SPL Team B-Human that uses the C-based Agent Behavior Specification Language (CABSL) for the behavior development, which is freely available, however with all behavior code turned to void on purpose. We implemented three soccer behaviors for three basic soccer roles: a striker, a defender and a goalkeeper. Furthermore, we implemented an additional behavior, called ball control, in order to assess the utilization of the framework beyond typical robotic soccer behaviors. We aim for this work to serve as the initial steps for new code base of our SPL team Kouretes and as a guide for assisting the understanding and the use of the chosen framework and its capabilities. Οι άνθρωποι είναι συνηθισμένοι να λειτουργούν σε δυναμικά περιβάλλοντα, τα οποία ωστόσο μπορούν να είναι αρκετά απρόβλεπτα και περίπλοκα για ένα ρομπότ. Επομένως, για να μπορεί ένα αυτόνομο ρομπότ να προσαρμόζεται και να δρα σε ένα τέτοιο περιβάλλον, πρέπει να αντιμετωπίσει μια μεγάλη ποικιλία των προβλημάτων, χρησιμοποιώντας μια προσέγγιση top-down, η οποία τα διαιρεί σε απλούστερα. Ο ετήσιος διαγωνισμός ρομποτικού ποδοσφαίρου (RoboCup) προσφέρει ένα τέτοιο δυναμικό περιβάλλον και ένα από τα κύρια συστατικά του κάθε παίκτη είναι ο αλγόριθμος που φροντίζει για τη λήψη αποφάσεων, γνωστός ως έλεγχος ρομποτικής συμπεριφοράς. Στην παρούσα διπλωματική εργασία, στοχεύουμε να αναπτύξουμε από το μηδέν τις συμπεριφορές ενός ποδοσφαιριστή για το πρωτάθλημα Standard Platform League (SPL), όπου όλες οι ομάδες μοιράζονται την ίδια ρομποτική πλατφόρμα, αλλά αναπτύσσουν διαφορετικό λογισμικό, σε μια προσπάθεια να κατανοήσουμε καλύτερα τη διαδικασία ανάπτυξης συμπεριφοράς. Η ανάπτυξη συμπεριφοράς μπορεί να αποβεί δύσκολη, καθώς συνδυάζει πληροφορίες από διαφορετικές ενότητες (όραση, κίνηση, επικοινωνία, εκτίμηση, κλπ.) και αποφασίζει τις ενέργειες που πρέπει να εκτελεσθούν για την επίτευξη του στόχου του πράκτορα. Δουλέψαμε σε ένα πρόσφατο πλαίσιο λογισμικού που αναπτύχθηκε από την ομάδα SPL Team B-Human που χρησιμοποιεί τη γλώσσα C-based Agent Behavior Specification Language (CABSL) για την ανάπτυξη συμπεριφοράς, το οποίο είναι ελεύθερα διαθέσιμο, ωστόσο με όλο τον κώδικα συμπεριφοράς διαγραμμένο. Αναπτύξαμε τρεις συμπεριφορές παικτών για τρεις βασικούς ρόλους ποδοσφαίρου: έναν επιθετικό, έναν αμυντικό και ένα τερματοφύλακα. Επιπλέον, αναπτύξαμε μια πρόσθετη συμπεριφορά, που ονομάζεται έλεγχος μπάλας, προκειμένου να εκτιμήσουμε την αξιοποίηση του πλαισίου λογισμικού, πέρα από τις τυπικές ρομποτικές συμπεριφορές ποδοσφαίρου. Στοχεύουμε το έργο αυτό να αποτελέσει τα αρχικά βήματα για τη δημιουργία της νέας βάσης λογισμικού της ομάδας μας SPL Κουρήτες και οδηγό για την καλύτερη κατανόηση και χρήση του επιλεγμένου πλαισίου και των δυνατοτήτων του. Diploma thesis submitted for the fulfillment of the requirements for the Diploma (Integrated Master) degree in Electrical and Computer Engineering at the Technical University of Cretehttp://creativecommons.org/licenses/by/4.0/Πολυτεχνείο Κρήτης::Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών ΥπολογιστώνTsagarogianni_Eleni_Dip_2019.pdfChania [Greece]Library of TUC2019-07-11application/pdf31.8 MBfree Tsagarogianni Eleni Τσαγκαρογιαννη Ελενη Lagoudakis Michail Λαγουδακης Μιχαηλ Chalkiadakis Georgios Χαλκιαδακης Γεωργιος Spanoudakis Nikolaos Σπανουδακης Νικολαος Πολυτεχνείο Κρήτης Technical University of Crete Nao Behavior CABSL Kouretes RoboCup