8η Δραστηριότητα Νίκησε τον χρόνο Δίκτυα ταξινόμησης Περίληψη Αν και οι υπολογιστές είναι γρήγοροι, υπάρχει ένα όριο στο πόσο γρήγορα μπορούν να επιλύουν τα προβλήματα. Ένας τρόπος για να επιταχύνουμε περαιτέρω το χρόνο επίλυσης είναι να χρησιμοποιήσουμε πολλούς υπολογιστές κάθε φορά, για την επίλυση διαφορετικών τμημάτων ενός προβλήματος. Σ' αυτή τη δραστηριότητα θα χρησιμοποιήσουμε τα δίκτυα ταξινόμησης, για να κατανοήσουμε πως μπορούν να κάνουνε πολλές συγκρίσεις ταυτοχρόνως. Αντιστοιχία με το σχολικό πρόγραμμα * (*Σημ. μτφ.: αναφέρεται στη Νέα Ζηλανδία) Μαθηματικά: Αριθμοί, επίπεδο 2 και άνω. εξερευνώντας τους αριθμούς: Μεγαλύτερο από, Μικρότερο από Ικανότητες Να κάνουμε συγκρίσεις Να κατατάσσουμε Να αναπτύσσουμε αλγορίθμους Να επιλύουμε προβλήματα μαζί με άλλους Ηλικία Άνω των 7 ετών Υλικά Αυτή η δραστηριότητα μπορεί να γίνει σε ανοιχτό εξωτερικό χώρο. 73 Κιμωλία Δύο σύνολα των 6 χαρτιών. Αντιγράψτε και πάλι το Πρότυπο Φύλλο για φωτοτυπία Δίκτυα ταξινόμησης (σελ. 75) σε ένα χαρτί, και κόψτε το Ένα χρονόμετρο
Δίκτυα ταξινόμησης Πριν αρχίσετε αυτή τη δραστηριότητα, χρησιμοποιήστε την κιμωλία για να σχεδιάσετε στην αυλή το παρακάτω διάγραμμα: Οδηγίες προς τα παιδιά Αυτή η δραστηριότητα θα σας δείξει πως οι υπολογιστές βάζουν τυχαίους αριθμούς σε τάξη, εκμεταλλευόμενοι αυτό που λέγεται δίκτυο ταξινόμησης. 1. Οργανωθείτε σε ομάδες των 6. Μόνο μία ομάδα μπορεί να χρησιμοποιήσει το δίκτυο κάθε φορά. 2. Κάθε παίχτης μίας ομάδος, παίρνει ένα αριθμημένο χαρτί. 3. Κάθε παίχτης πρέπει να μείνει σε ένα τετράγωνο στο αριστερό (IN) μέρος της αυλής. Οι παίχτες με τους αριθμούς πρέπει να είναι τυχαία τοποθετημένοι. 4.Κινηθείτε κατά μήκος των σχεδιασμένων γραμμών και όταν θα έχετε φθάσει σ' έναν κύκλο, πρέπει να περιμένετε να φθάσει ένας άλλος συμπαίκτης. 5. Όταν ο συμπαίκτης φθάσει στον κύκλο σας, συγκρίνετε τα χαρτιά σας. Το άτομο με τον πιο μικρό αριθμό, θα πρέπει να πάει στην έξοδο στ' αριστερά, ενώ ο άλλος, με τον μεγαλύτερο αριθμό στο χαρτί του, θα κατευθυνθεί προς την δεξιά έξοδο. 6. Είστε στη σωστή σειρά όταν φθάσετε στην άλλη άκρη του διαγράμματος; Αν μία ομάδα διαπράξει ένα σφάλμα, τότε τα παιδιά θα πρέπει να ξαναρχίσουν το παιγνίδι. Ελέγξτε αν καταλάβατε καλά τη λειτουργία ενός κόμβου (κύκλου) στο διάγραμμα, όπου η πιο μικρή τιμή προχωρεί στ' αριστερά και η άλλη στα δεξιά. Για παράδειγμα: 74
Πρότυπο Φύλλο για φωτοτυπία: Δίκτυα Ταξινόμησης 75
Ποικιλίες 1. Όταν τα παιδιά θα έχουν εξοικειωθεί με τη δραστηριότητα αυτή, χρησιμοποιήστε το χρονόμετρο για να μετρήσετε το χρόνο που χρειάζεται η κάθε ομάδα για να ολοκληρώσει το δίκτυο. 2. Χρησιμοποιείστε χαρτιά με μεγάλους αριθμούς (π.χ. σαν τους τριψήφιους, στο βασικό φύλλο). 3. Επινοήστε χαρτιά με αριθμούς ακόμη πιο μεγάλους και σύνθετους για να τους χειριστεί κανείς, ή χρησιμοποιήστε λέξεις και συγκρίνετέ τες αλφαβητικά. Πρόσθετες δραστηριότητες 1. Τι θα συμβεί αν ο μικρότερος αριθμός πάει στα δεξιά, αντί να πάει αριστερά και το αντίστροφο; (Οι αριθμοί θα ταξινομηθούν με ανάποδη σειρά) Το σύστημα λειτουργεί πάλι, αν το δίκτυο χρησιμοποιηθεί ανάποδα; (Δε λειτουργεί απαραίτητα! Tα παιδιά πρέπει να μπορούν να βρούνε ένα input που να βγαίνει με τη λάθος σειρά). 2. Προσπαθείστε να δημιουργήσετε ένα πιο μικρό ή ένα πιο μεγάλο δίκτυο ταξινόμησης. Για παράδειγμα, ορίστε ένα δίκτυο που ταξινομεί μόνο 3 αριθμούς. Τα παιδιά θα πρέπει να μπορούν να το βρουν από μόνα τους. 3. Ακολουθούν 2 διαφορετικά δίκτυα, που θα ταξινομήσουν 4 inputs. Ποιο από τα δύο είναι το πιο γρήγορο; (Είναι τo 2ο. Ενώ το 1ο απαιτεί να γίνονται όλοι οι έλεγχοι στη σειρά, ο ένας μετά τον άλλον, το 2ο προβλέπει έναν τρόπο για να πραγματοποιούνται ταυτόχρονα. Το 1ο δίκτυο είναι ένα παράδειγμα σειριακού υπολογισμού, ενώ το 2ο εκμεταλλεύεται τον παράλληλο υπολογισμό για να επιταχυνθεί). 4. Προσπαθείστε να σχεδιάσετε ένα μεγαλύτερο δίκτυο κατάταξης. 5. Τα δίκτυα μπορούν επίσης να χρησιμοποιηθούν για να βρεθεί η ελάχιστη ή η ανώτατη τιμή ενός input. Για παράδειγμα, στα δεξιά έχει σχεδιασθεί ένα δίκτυο για 8 τιμές: και το μοναδικό output θα περιέχει το minimum των inputs (οι άλλες τιμές θα μείνουν στα νεκρά άκρα του δικτύου). Ποιες καθημερινές διαδικασίες μπορούν ή όχι να επιταχυνθούν χρησιμοποιώντας τον παραλληλισμό; Για παράδειγμα, το να μαγειρέψουμε ένα γεύμα, θα ήταν πιο αργό αν χρησιμοποιούσαμε μόνο ένα μικρό ηλεκτρικό μάτι, γιατί όλα τα πιάτα θα 'πρεπε να μαγειρευτούν το ένα μετά το άλλο. Ποιες δουλειές μπορούν να τελειώσουν πιο γρήγορα χρησιμοποιώντας παραπάνω άτομα και ποιες όχι; 76
Τι σχέση έχουν όλα αυτά; Σιγά-σιγά, καθώς χρησιμοποιούνται όλο και περισσότερο οι υπολογιστές, θα θέλαμε να μπορούσανε να επεξεργάζονται όλο και πιο γρήγορα τις πληροφορίες. Ένας τρόπος για να αυξηθεί η ταχύτητα επεξεργασίας είναι να γράψουμε προγράμματα με όσο λιγώτερα υπολογιστικά βήματα γίνεται (όπως δείχνουν οι δραστηριότητες 6 e 7). Ένας άλλος τρόπος για να λύνουμε πιο γρήγορα τα προβλήματα, είναι να χρησιμοποιούμε περισσότερους υπολογιστές συγχρόνως, που να επεξεργάζονται διαφορετικές πτυχές του ίδιου προβλήματος. Για παράδειγμα, στο δίκτυο ταξινόμησης με 6 αριθμούς, αν και είναι απαραίτητες 12 συγκρίσεις για να ταξινομήσουμε τους αριθμούς, μπορούν να γίνουν μέχρι και 3 συγκρίσεις συγχρόνως. Αυτό σημαίνει ότι ο απαιτούμενος χρόνος είναι εκείνος που χρειάζεται για μόλις 5 βήματα συγκρίσεως. Αυτό το παράλληλο δίκτυο ταξινομεί τον κατάλογο με ταχύτητα υπερδιπλάσια σε σχέση με ένα σύστημα που πραγματοποιεί μία μόνο σύγκριση κάθε φορά. Δεν μπορούν όμως να λυθούν όλα τα προβλήματα κάνοντας χρήση του παράλληλου υπολογισμού. Κατ' αναλογία, φαντασθείτε ένα άτομο που σκάβει ένα χαντάκι 10 μέτρα μακρύ. Αν 10 άτομα σκάβανε από ένα μέτρο σ' εκείνο το χαντάκι, τότε η όλη δουλειά θα τελείωνε πολύ πιο γρήγορα. Αλλά δε θα μπορούσε να συμβεί το ίδιο με ένα χαντάκι 10 μέτρα βαθύ το 2ο μέτρο δεν είναι προσβάσιμο αν δεν τελειώσει πρώτα το 1 ο. Οι πληροφορικάριοι μελετούν ακόμη ποιος είναι ο καλύτερος τρόπος υποδιαίρεσης των προβλημάτων, για να είναι εφικτή η επεξεργασία τους από πολλούς υπολογιστές σε παράλληλη διάταξη. 77