Τί είναι η Starlogo? Το προγραµµατιστικό µοντέλο της StarLogo. Αποκεντρωµένα συστήµατα. υσκολίες προσοµοίωσης

Σχετικά έγγραφα
4 3 Απόκρυψη /Εμφάνιση

Ο χώρος όπου βρίσκονται οι εντολές (πλακίδια) με τις οποίες δημιουργούμε τα προγράμματά μας

ΠΑΡΑΡΤΗΜΑ 2: StarLogo και StarLogo TNG. StarLogo 2.2

Παιχνιδάκια με τη LOGO

Ενότητα 2: Εντολές Επανάληψης

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

Η γλώσσα προγραμματισμού LOGO

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

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

Η εντολή «επανέλαβε Χ»

Ο Προγραμματισμός στην Πράξη

ΣΗΜΕΙΩΣΕΙΣ. στη γλώσσα προγραμματισμού. Γκέτσιος Βασίλειος

ΒΑΣΙΚΕΣ ΟΔΗΓΙΕΣ ΓΙΑ ΤΗΝ ΧΡΗΣΗ ΤΟΥ ΧΕΛΩΝΟΚΟΣΜΟΥ ΣΤΟ ΑΒΑΚΙΟ E-SLATE ΠΟΙΕΣ ΨΗΦΙΔΕΣ ΠΡΕΠΕΙ ΝΑ ΕΜΦΑΝΙΣΟΥΜΕ

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

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

Ενότητα 5: ΜΕΤΑΒΛΗΤΕΣ

Το περιβάλλον προγραμματισμού MicroWorlds Pro

προγραµµατίζοντας τον υπολογιστή

7 ο Γυμνάσιο Καβάλας Καλλιόπη Παρσέλια Σχολ. έτος: Το περιβάλλον προγραμματισμού MicroWorlds Pro

Τα σχήματα στη Logo δημιουργούνται με την κίνηση μιας μικρής χελώνας και την κατευθύνουμε με οδηγίες από το πληκτρολόγιο.

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

Γραφικά υπολογιστών Εργαστήριο 10 Εισαγωγή στα Sprites

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

Προγραμματισμός με Logo στο MicroWorlds Pro

Η γλώσσα προγραµµατισµού Logo

Η ΧΕΛΩΝΑ ΠΟΥ ΖΩΓΡΑΦΙΖΕΙ

Παιδαγωγική προσέγγιση: Πρόταση για την διδασκαλία της έννοιας αλγόριθµός στο περιβάλλον MicroWorlds Pro

ΔΙΑΛΕΞΗ ΙΙ ΕΝΑ ΒΗΜΑ ΠΑΡΑΠΑΝΩ ΜΕ SCRATCH ΕΠΙΛΕΓΩΝΤΑΣ & ΕΠΑΝΑΛΑΜΒΑΝΟΝΤΑΣ

ΘΕΜΑ Ενημέρωση για θέματα εξετάσεων της Γ γυμνασίου για το μάθημα της πληροφορικής (σχετικά με τη logo).

> μεγαλύτερο <= μικρότερο ή ίσο < μικρότερο == ισότητα >= μεγαλύτερο ή ίσο!= διαφορετικό

Βυζαντινός Ρεπαντής Κολλέγιο Αθηνών 2010

Βασικές Εντολές MicroWorlds Pro.

Ιδιότητες αντικειμένων, συγγραφή κώδικα, συντακτικά λάθη

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

Ιστορία της NetLogo. Logo

ΗΜΙΟΥΡΓΙΑ ΠΑΙΧΝΙ ΙΟΥ ΣΤΟ SCRATCH ΒΗΜΑ ΠΡΟΣ ΒΗΜΑ

Μάθημα 1: Εισαγωγή. Κάνε κλικ την εντολή "κινήσου" και με το ποντίκι πατημένο μετέφερε τη στη περιοχή σεναρίων.

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

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

21. ΦΥΛΛΟ ΕΡΓΑΣΙΑΣ 4 - ΔΗΜΙΟΥΡΓΩΝΤΑΣ ΜΕ ΤΟ BYOB BYOB. Αλγόριθμος Διαδικασία Παράμετροι

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

ΜΑΘΗΜΑ: ΠΛΗΡΟΦΟΡΙΚΗ ΤΑΞΗ: Γ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΣΕ ΓΛΩΣΣΑ LOGO ΠΕΡΙΒΑΛΛΟΝ MICROWORLDS PRO

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

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

αξιοποίηση των ΤΠΕ: Η logo στη διδακτική διδακτική πράξη

Καροτοκυνηγός. Αντικείμενα

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

Μάθημα 1 ο : Εντολές κίνησης

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

ΟΔΗΓΟΣ ΧΡΗΣΗΣ ΑΝΑΘΕΩΡΗΜΕΝΗ ΕΚΔΟΣΗ 2. Μετάφραση από το πρωτότυπο Γιάννης Κασκαμανίδης

Προγραμματισμός. Το περιβάλλον του scratch

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

Σεμινάριο Η Γλώσσα Logo & Περιβάλλοντα Προγραμματισμού Logo - Ρόδος, 22/9/2009 Γ. Φεσάκης, Ελ. Μαυρουδή, Τσ. Καράκιζα ΓΝΩΡΙΜΙΑ ΜΕ ΤΗ LOGO ΚΑΙ

γλώσσα προγραµµατισµού Logo

ΓΛΩΣΣΑ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ LOGO

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

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

Ποιές εντολές του Scratch πρέπει να ξέρω;

Ο παρακάτω πίνακας τιμών θα βοηθήσει να γίνει πιο κατανοητή η λειτουργία των εντολών της συγκεκριμένης άσκησης. Α/Α Εντολές Μνήμη (Μεταβλητή α) Οθόνη

Scratch 2.0 Προκλήσεις

Σχήµα 4.1: Εισαγωγή βρόγχου while-loop.

Εισαγωγή στην επανάληψη

ήγαινε στο x : y : κατέβασε πένα σήκωσε πένα

Φύλλο εργασίας 4. Η γάτα και τα ποντίκια

στκ στκ μπροστά 100 μπροστά 100 δεξιά 90 δεξιά 90 μπροστά 100 μπροστά 100 αριστερά 90 αριστερά 90 μπροστά 100 μπροστά 100 δεξιά 90 δεξιά 80

ΣΗΜΕΙΩΣΕΙΣ ΑΒΑΚΙΟ- LOGO ΣΕΝΑΡΙΟ ΣΤΑ ΠΑΡΑΛΛΗΛΟΓΡΑΜΜΑ

Κεφάλαιο 1: Κίνηση και γεωμετρικά σχήματα

«Αβάκιο» Οδηγός χρήσης Μικρόκοσμου που αποτελείται από τις ψηφίδες Καμβάς, Χελώνα, Γλώσσα, Μεταβολέας, Χρώματα.

ΚΑΤΑΣΚΕΥΗ ΠΑΡΑΛΛΗΛΟΓΡΑΜΜΩΝ ΜΕ ΧΡΗΣΗ LOGO

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

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

Μάθημα 8 ο Η εντολή ανδιαφορετικά

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

αιδευτι κό υλικό Γιώργος Καινουργιάκης Ιούνιος 2009

Κεφάλαιο 6: Ζωγραφική

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

Slalom Race Computer Game on Scratch

Προγραµµατισµός στην Basic

Αρχή ή τέλος ή κοµβικό σηµείο. Λειτουργία εισόδου / εξόδου. Έλεγχος. Πράξεις / ενέργειες. Βρόχος R7 φορές

Φύλλο εργασίας 3 Προγραμματίζω το ρομπότ μου

ΤΟ ΠΕΡΙΒΑΛΛΟΝ ΤΗΣ. Εργαλειοθήκη Παρουσιάζετε το έργο σας Εκκινείτε τα σενάριά σας Σταματάτε όλα τα σενάρια. Οι 8 ομάδες της Παλέτας εντολών

A) Να γράψετε στο τετράδιό σας τον αριθµό καθεµιάς από τις παρακάτω προτάσεις 1-10 και δίπλα τη λέξη Σωστό, αν είναι σωστή, ή τη λέξη Λάθος, αν είναι

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

(ΕΙΝΑΙ ΕΝΤΟΛΗ ΕΞΟΔΟΥ)

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

Γ-ΓΥΜΝΑΣΙΟΥ (1) ΣΕΛ 1 / 6

Επιλογή και επανάληψη. Λογική έκφραση ή συνθήκη

Γενικό Λύκειο Κρουσώνα - Σχολικό έτος Εκπαιδευτικός: Παπαδάκης Σταµάτης

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

Breakdance Computer Game σε Scratch.

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

Εισαγωγή στην Αριθμητική Ανάλυση

Άσκηση 10 Φωτισµός. Στόχος της άσκησης

ΒΑΣΙΚΑ ΜΑΘΗΜΑΤΑ ΝΤΟΥΛΑΚΗΣ - ΜΕΝΙΟΥΔΑΚΗΣ ΕΠΑ.Λ ΕΛ. ΒΕΝΙΖΕΛΟΥ

Δημιουργία δισδιάστατου παιχνιδιού, τύπου Pacman. 1ο μέρος.

Παράδειγμα «Ημίτονο και ζωγραφική!»: Έχει δει στα μαθηματικά τη γραφική παράσταση της συνάρτησης του ημιτόνου; Σας θυμίζει κάτι η παρακάτω εικόνα;

Βασικό Επίπεδο στο Modellus

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

Δραστηριότητα 1 Σχεδιασμός σκηνικού

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

Transcript:

ΠΑΝΕΠΙΣΤΗΜΙΟ ΜΑΚΕ ΟΝΙΑΣ ΤΜΗΜΑ ΙΟΙΚΗΣΗΣ ΤΕΧΝΟΛΟΓΙΑΣ - ΝΑΟΥΣΑ Το προγραµµατιστικό µοντέλο της StarLogo Φιλοσοφία Γλώσσα Περιβάλλον Παραδείγµατα 21 Νοεµβρίου 2005 Τί είναι η Starlogo? Ένα περιβάλλον προσοµοίωσης αποκεντρωµένων συστηµάτων Αναπτύχθηκε στο MIT αρχικά για υπολογιστές Macintosh και το 2000 παρουσιάστηκε η πρώτη έκδοσή της σε Java διαθέσιµη πλέον για όλες τις πλατφόρµες Βασίστηκε στην γλώσσα Logo από όπου και δανείστηκε πολλά στοιχεία τόσο της γλώσσας (εντολές) όσο και του περιβάλλοντος (χελώνες...) 1 2 Αποκεντρωµένα συστήµατα Συστήµατα που λειτουργούν χωρίς κεντρικό έλεγχο Συστήµατα που οργανώνονται χωρίς την ύπαρξη «οργανωτή» Εφαρµογές Βιολογία Οικονοµία Κοινωνικές επιστήµες Παραδείγµατα Οτρόπος συγκέντρωσης τροφής από µια αποικία µυρµηγκιών Το πέταγµα των αποδηµητικών πουλιών σε σχηµατισµό Η εξάπλωση µιας επιδηµίας Η αναδιανοµή του πλούτου σε µια ελεύθερη οικονοµία Το κυκλοφοριακό πρόβληµα 3 4 Γιατί είναι σηµαντική η µελέτη των αποκεντρωµένων συστηµάτων? υσκολίες προσοµοίωσης Μας επιτρέπει να κατανοήσουµε τα αίτια οµαδικών συµπεριφορών ίνει απάντηση στις λανθασµένες θεωρίες ύπαρξης κεντρικού ελέγχου Μας δείχνει πώς πολύπλοκες µορφές συµπεριφοράς (π.χ. η οµαδική συλλογή φαγητού από µια αποικία µυρµηγκιών) προκύπτουν από µερικούς απλούς κανόνες. Απαιτούνται χιλιάδες αντικείµενα Το µοντέλο του αντικειµενοστραφή προγραµµατισµού δεν επαρκεί Χρησιµοποιώντας παράλληλο προγραµµατισµό η δυσκολία υλοποίησης είναι πολύ µεγάλη εν υπάρχουν κατάλληλα εργαλεία λογισµικού για να υποστηρίξουν τέτοια µοντέλα χωρίς την ύπαρξη κεντρικού ελέγχου 5 6 1

Η απάντηση της Starlogo ιαφορές από τη Logo Βασισµένη στην γλώσσα Logo που χρησιµοποιείται για εισαγωγή παιδιών στο προγραµµατισµό ανείζεται στοιχεία από τον αντικειµενοστραφή και τον παράλληλο προγραµµατισµό Στόχος της δεν είναι η ταχύτητα και οι επιδόσεις αλλά η δυνατότητα προγραµµατισµού χιλιάδων αντικειµένων ταυτόχρονα Γραφικό περιβάλλον µε δυνατότητες πολυµέσων Μικρό αριθµό εντολών µε πολλές όµως εφαρµογές Εκπαιδευτικό εργαλείο Logo Μια χελώνα Η χελώνα δεν επικοινωνεί µε το περιβάλλον Η κίνηση της πάνω σε pixels Starlogo Χιλιάδες χελώνες Οι χελώνες έχουν «αισθήσεις» Στη Starlogo οι χελώνες κινούνται πάνω σε αντικείµενα (patches) 7 8 Αντικείµενα της Starlogo Υπάρχουν 3 θεµελειώδη αντικείµενα στον εικονικό κόσµο της Starlogo Χελώνες Τετράγωνα (patches) Αντικείµενα της Starlogo (1/3) Χελώνες Θεµελιώδη αντικείµενα της Starlogo µε 4 βασικές ιδιότητες: Θέση (µεταβλητή position) Προσανατολισµό (µεταβλητή heading) Χρώµα (µεταβλητή color) Όνοµα (µεταβλητή who) Ο χρήστης µπορεί να προσθέσει δικές του ιδιότητες µε τη µορφή νέων µεταβλητών Παρατηρητής 9 Ανάλογα µε το σύστηµα που προσοµοιώνεται κάθε φορά µπορεί να αντιπροσωπεύουν οργανισµούς, µύκητες, κύτταρα, αυτοκίνητα κλπ. 10 Αντικείµενα της Starlogo (2/3) Αντικείµενα της Starlogo (3/3) Τετράγωνα (patches) Θεµελιώδη αντικείµενα της Starlogo πάνω στα οποία «περπατούν» οι χελώνες. Έχουν τις ίδιες βασικές ιδιότητες: Θέση (µεταβλητή position) Προσανατολισµό (µεταβλητή heading) Χρώµα (µεταβλητή color) Όνοµα (µεταβλητή who) Η διαφορά τους είναι ότι δεν µπορούν να κινηθούν Μπορούν όµως να ανιχνεύουν την παρουσία χελωνών πάνω τους καθώς και να επικοινωνούν µε τα γειτονικά τετράγωνα 11 Ο παρατηρητής (εµείς) Παρατηρεί τον εικονικό κόσµο των χελωνών και τετραγώνων από ψηλά ηµιουργεί τις χελώνες και καθορίζει τις ιδιότητές τους Καθορίζει τους κανόνες που διέπουν τη συµπεριφορά των χελωνών (δηλ. τον κώδικα) Μπορεί να εξάγει τα αποτελέσµατα της προσοµοίωσης σε ποσοτική ή ποιοτική µορφή (αριθµητικά δεδοµένα ή γραφικές παραστάσεις) 12 2

Το περιβάλλον Τα παράθυρα ελέγχου 13 14 Η γλώσσα της Starlogo CRT [αριθµός Ν] Αρχικά της φράσης CReate Turtles ηµιουργεί Ν χελώνες στο σηµείο (0,0) του καρτεσιανού συστήµατος κέντρο οθόνης Σηµαντικό: Κάθε χελώνα έχει τυχαίο προσανατολισµό (µεταβλητή heading) Στο ίδιο τετράγωνο µπορούν ταυτόχρονα να «πατούν» περισσότερες από µια χελώνες 15 16 FD [steps] RT [degrees]/ LT [degrees] Αρχικά της φράσης ForWard Κάνει τις χελώνες να προχωρούν κατά steps τετράγωνα προς την κατεύθυνση που κοιτάζουν Όταν µια χελώνα βγει από την ορατή επιφάνεια των τετραγώνων (π.χ. πάνω δεξιά) εµφανίζεται να µπαίνει από την αντίθετη πλευρά (στο παράδειγµά µας κάτω αριστερά) 17 Αρχικά της φράσης Right Turn / Left Turn Κάνει τις χελώνες να στρίβουν δεξιά ή αριστερά κατά degrees µοίρες Παράδειγµα: Η εντολή RT 90 λέει στη χελώνα να στρίψει 90 µοίρες δεξιά από την αρχική της κατεύθυνση 18 3

PD / PU Αρχικά της φράσης Pen Down / Pen Up Κάθε χελώνα µεταφέρει ένα στυλό (pen) στο χρώµα που καθορίζει η µεταβλητή color Παράδειγµα: Η εντολή PD FD 10 λέει στη χελώνα να ακουµπήσει το στυλό στο έδαφος (τετράγωνα) και να προχωρήσει 10 βήµατα στην κατεύθυνση που κοιτάζει. Σαν αποτέλεσµα θα σχεδιάσει µια ευθεία. 19 20 CT Αρχικά της φράσης Clear Turtles Καθαρίζει την οθόνη από τις χελώνες CP Αρχικά της φράσης Clear Patches Καθαρίζει τα τετράγωνα επαναφέροντάς τα στο αρχικό τους χρώµα (µαύρα) CΑ Αρχικά της φράσης Clear Αll Είναι συνδυασµός της CT και της CP. Εξαφανίζει όλες τις χελώνες και επαναφέρει τα τετράγωνα στο αρχικό τους χρώµα Βρόχοι επανάληψης H εντολή REPEAT (Ν) [κώδικας] εκτελεί τον κώδικα µέσα στις αγκύλες Ν φορές Παράδειγµα: REPEAT 10 [ FD 1 ] Η χελώνα θα κάνει 10 βήµατα εµπρός Για να τερµατιστεί ο βρόχος πριν τελειώσει ο αριθµός των επαναλήψεων µπορεί να χρησιµοποιηθεί η εντολή: stop 21 ιαδικασίες (Procedures) Μπορούµε να οµαδοποιήσουµε εντολές της Starlogo σε διαδικασίες Σύνταξη: to (όνοµα διαδικασίας) εντολές... Παράδειγµα: to move-turtle-right RT 1 FD 1 22 Κλήση: move-turtle-right Πως µπορούµε να σχεδιάσουµε κύκλο µε τις παρακάτω εντολές? Παράδειγµα Ηγεωµετρία της Starlogo FD (forward) RT (Right Turn), LT (Left Turn) PU (Pen Up), PD (Pen Down) REPEAT 23 24 4

Τεχνικές σχεδίασης κύκλου Στη Logo όπου υπάρχει µόνο µία χελώνα θα γράφαµε PD REPEAT 360 [RT 1 FD 1] PU Η χελώνα θα ξεκινήσει από την αρχική της θέση και µετά από κάθε βήµα της θα στρίβει µια µοίρα δεξιά. Μετά από 360 µοίρες θα έχει φτάσει στην αρχική της θέση έχοντας διαγράψει ένα κύκλο. 25 Στη Starlogo? Αρκεί µόνο η εντολή FD 10 Στη Starlogo οι χελώνες είναι ο κύκλος Το γεγονός ότι σχηµατίζουν κύκλο οφείλεται στις τυχαίες κατευθύνσεις που έχουν κατά τη δηµιουργία τους Εφόσον όλες ξεκινούν από το κέντρο µε συντεταγµένες (0,0) προχωρώντας ίδιο αριθµό βηµάτων σχηµατίζουν κύκλο µε ακτίνα 10 26 Σχεδιάζοντας ένα µοντέλο από την αρχή Μια αποικία τερµιτών Το µοντέλο των τερµιτών Θέλουµε να προσοµοιώσουµε µια αποικία τερµιτών που συγκεντρώνουν κοµµάτια από ξύλο σε σωρούς Οι τερµίτες δεν µπορούν να ανιχνεύσουν την ύπαρξη ξύλου παρά µόνο όταν συναντήσουν ένα κοµµάτι στο δρόµο τους. εν ελέγχονται κεντρικά ούτε κατευθύνονται από κάποιον άλλο τερµίτη (π.χ. Βασιλιά). 27 28 Μεταφορά στη Starlogo Αλλαγή εµφάνισης χελωνών Για να µοντελοποιήσουµε την αποικία τερµιτών θα χρησιµοποιήσουµε τις χελώνες της Starlogo ως τερµίτες Από τις διαθέσιµες βιβλιοθήκες εικονιδίων µπορούµε να αλλάξουµε την εµφάνιση των χελωνών σε τερµίτες Το ρόλο των κοµµατιών ξύλου θα έχουν ορισµένα από τα τετράγωνα. Για να τα διαφοροποιήσουµε θα τους δώσουµε διαφορετικό χρώµα (π.χ. κίτρινο) Ως παρατηρητές ΕΜΕΙΣ πρέπει να καθορίσουµε τους κανόνες συµπεριφοράς που θα ακολουθούν οι τερµίτες 29 Για να µοντελοποιήσουµε την αποικία τερµιτών θα χρησιµοποιήσουµε τις χελώνες της Starlogo ως τερµίτες Από τις διαθέσιµες βιβλιοθήκες εικονιδίων µπορούµε να αλλάξουµε την εµφάνιση των χελωνών σε τερµίτες Για να αλλάξουµε την εµφάνιση των χελωνών setshape termite-shape 30 5

Σχεδιασµός των κοµµατιών ξύλου Θα χρησιµοποιήσουµε µερικά από τα τετράγωνα ως κοµµάτια ξύλου Χρησιµοποιώντας διαφορετικό χρώµα για τα κοµµάτια ξύλου (κίτρινο) µπορούµε να προσθέσουµε σε τυχαία σηµεία κίτρινα τετράγωνα µε τον παρακάτω κώδικα: ask-patches [if (random 100) < density [setpc yellow]] Η εντολή ask-patches ζητά να εκτελεστεί ο κώδικας που περιέχει µόνο από τα τετράγωνα. Αντίστοιχα υπάρχει η εντολή ask-turtles όταν θέλουµε µόνο οι χελώνες να εκτελέσουν κάποιο κώδικα. Τοποθέτηση τερµιτών σε τυχαίες θέσεις Για να αρχικοποιήσουµε το µοντέλο µας πρέπει να τοποθετήσουµε τους τερµίτες σε τυχαίες θέσεις to setup setshape termite-shape seth random 360 jump random 200 31 32 Κανόνες Συµπεριφοράς Τερµιτών Κάνε ένα τυχαίο βήµα Για να υλοποιήσουµε τους κανόνες, οι τερµίτες πρέπει: Να ξέρουν πώς πρέπει να περπατούν Αν βρεις ένα κοµµάτι ξύλου, σήκωσέ το εκτός κι αν κουβαλάς ήδη ένα. (Ένας τερµίτης µπορεί να µεταφέρει µόνο ένα κοµµάτι ξύλου) Αν ενώ κουβαλάς ένα κοµµάτι ξύλου βρεις µπροστά σου ένα άλλο, άφησε κάτω το κοµµάτι που κουβαλάς και ψάξε άλλο. Να ξέρουν πώς να αναζητούν κοµµάτια ξύλου Να βρίσκουν ένα σωρό µε ξύλα Να αφήνουν ένα κοµµάτι ξύλο στο σωρό 33 34 Τυχαίος περίπατος Αναζήτηση κοµµατιού ξύλου Ο παρακάτω κώδικας υλοποιεί έναν τυχαίο περίπατο για κάθε τερµίτη: to wiggle FD 1 RT RANDOM 50 LT RANDOM 50 Οτερµίτης µόλις βρει ένα κίτρινο τετράγωνο (ξύλο) το κάνει µαύρο για να δείξει ότι το σήκωσε και σταµατά. Αν δεν βρει κίτρινο τετράγωνο κάνει ένα τυχαίο βήµα και ελέγχει το νέο τετράγωνο ξανά: to search-for-chip if pc = yellow [stamp black jump 20 stop] wiggle search-for-chip 35 36 6

Εύρεση σωρού από ξύλα Εφόσον οι τερµίτες κουβαλούν ένα κοµµάτι ξύλου πρέπει να βρουν ένα σωρό από ξύλα για να αφήσουν το δικό τους: to find-new-pile if pc = yellow [stop] wiggle find-new-pile Απόθεση κοµµατιού ξύλου Μόλις οι τερµίτες εντοπίσουν ένα σωρό από ξύλα πρέπει να βρουν ένα άδειο τετράγωνο (µαύρο) για να αφήσουν το ξύλο τους: to find-empty-patch if pc = black [stamp yellow stop] seth random 360 fd 1 find-empty-patch 37 38 Οι κανόνες µετατράπηκαν σε διαδικασίες της Starlogo Πλέον οι Τερµίτες γνωρίζουν πως: Να περπατούν wiggle Να αναζητούν κοµµάτια ξύλου search-for-chip Να βρίσκουν ένα σωρό µε ξύλα find-new-pile Να αφήνουν ένα κοµµάτι ξύλο στο σωρό Για να ξεκινήσει η προσοµοίωση Χρειαζόµαστε µια διαδικασία να αναγκάζει τους τερµίτες συνεχώς (infinite loop) να εκτελούν τις εξής ενέργειες: Βρες ένα κοµµάτι ξύλου και σήκωσέ το Βρες ένα νέο σωρό ξύλων Βρες ένα άδειο µέρος για να αφήσεις το ξύλο που κουβαλάς Σε µορφή κώδικα: to go search-for-chip find-new-pile find-empty-spot find-empty-patch 39 40 Εκτέλεση προσοµοίωσης 41 42 7

Link στο ΜΙΤ για να κατεβάσετε τη Starlogo http://education.mit.edu/starlogo/ Τα παραδείγµατα που παρουσιάστηκαν στη διάλεξη συµπεριλαµβάνονται µαζί µε το περιβάλλον της Starlogo που θα κατεβάσετε από το παραπάνω link 43 44 8