2010-2011:Κατανεμημένα Συστήματα Ι:Ασκήσεις

Από DistrSys

Πίνακας περιεχομένων

1η άσκηση (Δευτέρα, 11 Οκτωβρίου 2010)

1o Πρόβλημα
Επεκτείνετε τον αλγόριθμο LCR έτσι ώστε να επιτρέπει σε όλες τις διεργασίες που δεν έχουν εκλεχθεί να τερματίσουν. Αναλύστε την ορθότητα του νέου αλγόριθμου, την χρονική πολυπλοκότητα και πολυπλοκότητα μηνυμάτων. Αποδείξτε τους ισχυρισμούς σας.
2o Πρόβλημα
Θεωρείστε ένα σύγχρονο κατανεμημένο σύστημα με n διεργασίες συνδεδεμένες μέσω ενός δικτύου δακτυλίου. Κάθε διεργασία έχει μια μοναδική ταυτότητα και δεν γνωρίζει το σύνολο των διεργασιών. Σχεδιάστε έναν αλγόριθμο εκλογής k αρχηγών. Ορίστε τις ιδιότητες του αλγόριθμου σας και αναλύστε την ορθότητά του, καθώς και την χρονική πολυπλοκότητα και πολυπλοκότητα μηνυμάτων. Αποδείξτε τους ισχυρισμούς σας.
3o Πρόβλημα
Θεωρείστε ένα σύγχρονο κατανεμημένο σύστημα με n διεργασίες συνδεδεμένες μέσω ενός γενικού δικτύου. Κάθε διεργασία έχει μια μοναδική ταυτότητα και δεν γνωρίζει το σύνολο των διεργασιών. Σχεδιάστε έναν αλγόριθμο εκλογής αρχηγού που χρησιμοποεί O(n log n) μηνύματα. Ορίστε τις ιδιότητες του αλγόριθμου σας και αναλύστε την ορθότητά του, καθώς και την χρονική πολυπλοκότητα και πολυπλοκότητα μηνυμάτων. Αποδείξτε τους ισχυρισμούς σας.


Παράδοση:

  • Η άσκηση είναι ατομική
  • Η παράδοση γίνεται με την χρήση του εργαλείου submit-ds
  • Η προθεσμία υποβολής είναι η Δευτέρα 25 Οκτωβρίου, ώρα 13:00
  • Σε περίπτωση που εντοπιστεί αντιγραφή, η άσκηση θα μηδενιστεί


Σχετικό υλικό:


Απαντήσεις:

 ΑΜ   Βαθμός   1   2   3 
 2097  1.8  ✓  ✓  -0.2 
 2702  1.7  ✓  ✓  -0.3 
 3086  1.6  ✓  ✓  - 
 3211  1.5  ✓  -0.1  - 
 3270  0.8  -0.4  -0.4  - 
 3290  0.6  -0.4  -0.6  - 
 3304  1.2  ✓  -0.4  - 
 3356  1.6  ✓  -0.2  -0.2 
 3414  1  ✓  -  -0.2 
 3477  1.7  -0.1  ✓  -0.2 
 3497  1.1  -0.2  -0.3  - 
 3518  1.6  -0.1  -0.1  -0.2 
 3699  1  -0.3  -0.3  - 
 3761  1.8  ✓  ✓  -0.2 
 3796  1.2  -0.2  -0.2  - 
 3828  1.6  ✓  ✓  - 
 3832  1.6  ✓  ✓  - 
 3837  0.9  -0.3  -0.4  - 
 3880  1.4  -0.3  -0.3  ✓ 
 3881  1.3  -0.1  -0.2  - 
 3887  1.6  ✓  ✓  - 
 3889  1.6  ✓  ✓  - 
 3893  1.4  -0.3  ✓  -0.3 
 3895  1.8  ✓  ✓  -0.2 
 3896  1.6  ✓  ✓  - 
 3900  1.4  ✓  -0.2  - 
 3911  2  ✓  ✓  ✓ 
 3912  1.6  ✓  ✓  - 
 3914  1.9  ✓  ✓  -0.1 
 3918  1.1  ✓  -0.7  -0.2 
 3929  1.6  ✓  ✓  - 
 3934  2  ✓  ✓  ✓ 
 3941  1.6  ✓  ✓  - 
 3944  1.5  ✓  -0.1  - 
 3946  1.5  ✓  -0.2  -0.3 
 3950  1.7  ✓  -0.1  -0.2 
 3953  1.3  -0.2  -0.2  -0.3 
 3959  1.6  ✓  -0.1  -0.3 
 3960  1.7  ✓  ✓  -0.3 
 3961  1.8  ✓  ✓  -0.2 
 3964  1.6  ✓  ✓  - 
 3966  1.8  -0.1  -0.1  ✓ 
 3967  1.4  ✓  -0.2  - 
 3971  1.4  -0.1  -0.3  -0.2 
 3974  1.8  ✓  ✓  -0.2 
 3986  1.3  -0.1  -0.2  - 
 3992  1.4  -0.2  -0.2  -0.2 
 3996  1.4  ✓  -0.2  - 
 3997  1.2  -0.2  -0.2  - 
 3998  1.6  ✓  ✓  - 
 4002  1.8  ✓  ✓  -0.2 
 4005  1.6  ✓  ✓  - 
 4009  1.9  ✓  ✓  -0.1 
 4015  2  ✓  ✓  ✓ 
 4020  1  -0.3  -0.3  - 
 4025  1.5  ✓  -0.1  - 
 4028  1.8  ✓  ✓  -0.2 
 4033  1.4  -0.2  ✓  - 
 4038  1.6  ✓  ✓  - 
 4042  1.75  ✓  -0.05  -0.2 
 4045  1.6  ✓  ✓  - 
 4053  1.4  -0.1  -0.1  - 
 4060  1.5  -0.1  -0.1  -0.3 
 4061  1.8  ✓  ✓  -0.2 
 4064  1.4  -0.2  -0.2  -0.2 
 4068  1.7  ✓  -0.1  -0.2 
 4071  1.6  ✓  -0.2  -0.2 
 4082  1.7  ✓  ✓  -0.3 
 4090  1.4  ✓  -0.2  - 
 4095  1.8  ✓  ✓  -0.2 
 4109  1.5  ✓  -0.1  - 
 4112  2  ✓  ✓  ✓ 
 4116  1.6  ✓  -0.2  -0.2 
 4117  1.1  -0.3  -0.4  -0.2 
 4122  1.6  ✓  ✓  - 
 4129  1.4  ✓  -0.2  - 
 4145  1.5  -0.1  ✓  - 
 4146  1.6  ✓  ✓  - 
 4153  1.8  ✓  ✓  -0.2 
 4154  1.6  ✓  ✓  - 
 4160  1.8  ✓  ✓  -0.2 
 4167  1.6  ✓  ✓  - 
 4175  0.3  -0.7  -0.7  -0.3 
 4182  1  -0.2  -0.4  - 
 4183  1.7  ✓  -0.1  -0.2 
 4188  1.6  ✓  ✓  - 
 4194  1.5  ✓  -0.1  - 
 4198  1.2  -0.2  -0.2  - 
 4200  1.7  ✓  ✓  -0.3 
 4211  1.6  ✓  ✓  - 
 4214  1.9  ✓  ✓  -0.1 
 4220  1.2  ✓  -0.4  - 
 4223  1.3  -0.2  -0.2  -0.3 
 4226  1.9  ✓  ✓  -0.1 
 4229  1.4  -0.1  -0.1  - 
 4235  0.8  ✓  -  - 
 4244  2  ✓  ✓  ✓ 
 4251  1.2  ✓  -0.4  - 
 4253  1  -0.4  -0.4  -0.2 
 4270  1.6  ✓  ✓  - 
 4275  1.8  ✓  ✓  -0.2 
 4284  1.2  -0.1  -0.3  - 
 4288  1.4  -0.1  -0.3  -0.2 
 4384  1.6  ✓  ✓  - 
 4387  1.6  ✓  ✓  - 
 4397  1.7  ✓  ✓  -0.3 
 4398  1.1  -0.1  -0.4  - 


2η άσκηση (Δευτέρα, 25 Οκτωβρίου 2010)

1o Πρόβλημα
Θεωρείστε ένα σύγχρονο κατανεμημένο σύστημα με n διεργασίες συνδεδεμένες μέσω ενός γενικού δικτύου, όπου κάθε διεργασία έχει μια μοναδική ταυτότητα αλλά δεν γνωρίζει το σύνολο των διεργασιών, ούτε την τοπολογία του δικτύου. Σχεδιάστε έναν αλγόριθμο που να κατασκευάζει έναν εικονικό δακτύλιο. Ορίστε προσεκτικά τις ιδιότητες του αλγόριθμου σας και αναλύστε την χρονική πολυπλοκότητα και πολυπλοκότητα μηνυμάτων. Αποδείξτε τους ισχυρισμούς σας.
2o Πρόβλημα
Θεωρείστε ένα σύγχρονο κατανεμημένο σύστημα με n διεργασίες συνδεδεμένες μέσω ενός γενικού δικτύου. Κάθε διεργασία έχει μια μοναδική ταυτότητα και δεν γνωρίζει το σύνολο των διεργασιών ή την τοπολογία του δικτύου. Σχεδιάστε έναν αλγόριθμο για την κατασκευή ενός ελάχιστου-ύψους επικαλυπτικού δέντρου. Ορίστε προσεκτικά τις ιδιότητες του αλγόριθμου σας και αναλύστε την χρονική πολυπλοκότητα και πολυπλοκότητα μηνυμάτων. Αποδείξτε τους ισχυρισμούς σας.
3o Πρόβλημα
Υλοποιείστε έναν απλό αλγόριθμο Flooding στο σύστημα Shawn. Μελετήστε την συμπεριφορά του αλγόριθμου στις τοπολογίες που σας έχουν δοθεί. Μετρήστε την χρονική πολυπλοκότητα και πολυπλοκότητα επικοινωνίας του αλγορίθμου. Σχολιάστε την συμπεριφορά του αλγορίθμου.


Παράδοση:

  • Η άσκηση είναι ατομική
  • Η παράδοση γίνεται με την χρήση του εργαλείου submit-ds
  • Η προθεσμία υποβολής είναι η Δευτέρα 8 Νοεμβρίου, ώρα 13:00 Τρίτη 16 Νοεμβρίου, ώρα 13:00
  • Σε περίπτωση που εντοπιστεί αντιγραφή, η άσκηση θα μηδενιστεί


Σχετικό υλικό:


Απαντήσεις:

 ΑΜ   Βαθμός   1   2   3 
 2097  2  ✓  ✓  ✓ 
 2702  1.7  -0.2  -0.1  ✓ 
 3211  2  ✓  ✓  ✓ 
 3270  1.5  -0.2  -0.2  -0.1 
 3356  1.8  -0.1  -0.1  ✓ 
 3477  1.4  -0.3  -0.3  ✓ 
 3497  1.6  -0.2  -0.2  ✓ 
 3518  1.4  ✓  ✓  - 
 3699  1.8  -0.1  -0.1  ✓ 
 3796  2  ✓  ✓  ✓ 
 3828  1.3  ✓  -0.4  -0.3 
 3832  0.7  -  ✓  - 
 3881  0.9  -0.4  -0.1  - 
 3887  1.4  -0.2  -0.4  ✓ 
 3889  2  ✓  ✓  ✓ 
 3893  0.7  -0.3  -0.4  - 
 3895  2  ✓  ✓  ✓ 
 3896  2  ✓  ✓  ✓ 
 3900  2  ✓  ✓  ✓ 
 3911  1.3  -0.5  -0.2  ✓ 
 3914  1.8  ✓  -0.2  ✓ 
 3918  1.9  -0.1  ✓  ✓ 
 3934  2  ✓  ✓  ✓ 
 3941  1.9  ✓  ✓  -0.1 
 3944  1.1  -0.4  -0.4  -0.1 
 3946  1.3  -0.2  -0.4  -0.1 
 3950  1.7  -0.1  -0.2  ✓ 
 3953  2  ✓  ✓  ✓ 
 3959  2  ✓  ✓  ✓ 
 3960  1.8  -0.2  ✓  ✓ 
 3961  1.9  ✓  ✓  -0.1 
 3964  1.8  -0.2  ✓  ✓ 
 3966  1.6  -0.1  -0.2  -0.1 
 3967  1.8  -0.2  ✓  ✓ 
 3971  2  ✓  ✓  ✓ 
 3974  2  ✓  ✓  ✓ 
 3986  1.5  -0.2  -0.3  ✓ 
 3992  1.8  -0.2  ✓  ✓ 
 3996  2  ✓  ✓  ✓ 
 3997  1.8  -0.1  -0.1  ✓ 
 3998  2  ✓  ✓  ✓ 
 4002  1.9  -0.1  ✓  ✓ 
 4005  1.7  -0.2  -0.1  ✓ 
 4009  1.6  -0.2  -0.2  ✓ 
 4015  1.8  -0.1  -0.1  ✓ 
 4025  1.9  -0.1  ✓  ✓ 
 4028  1.7  -0.1  -0.2  ✓ 
 4033  1  -  -0.3  ✓ 
 4038  0.6  -0.5  -0.3  - 
 4042  2  ✓  ✓  ✓ 
 4045  2  ✓  ✓  ✓ 
 4053  1.7  -0.3  ✓  ✓ 
 4060  2  ✓  ✓  ✓ 
 4061  2  ✓  ✓  ✓ 
 4064  2  ✓  ✓  ✓ 
 4068  1.8  -0.2  ✓  ✓ 
 4071  0.5  -  -0.2  - 
 4082  1.6  -0.2  -0.2  ✓ 
 4090  1.3  -  ✓  ✓ 
 4095  1  -0.3  -0.5  -0.2 
 4109  1  -0.2  -0.2  - 
 4112  2  ✓  ✓  ✓ 
 4116  1.9  ✓  -0.1  ✓ 
 4117  1  -0.5  -0.5  ✓ 
 4122  1  -0.2  -0.2  - 
 4129  1.5  -0.3  -0.2  ✓ 
 4145  1.9  ✓  ✓  -0.1 
 4146  1.3  -0.2  -0.5  ✓ 
 4153  1.5  -0.3  -0.2  ✓ 
 4154  1  -  -0.3  ✓ 
 4160  2  ✓  ✓  ✓ 
 4182  1.2  -0.4  -0.4  ✓ 
 4183  1.7  -0.2  -0.1  ✓ 
 4188  1.8  ✓  -0.2  ✓ 
 4194  1.3  -  ✓  ✓ 
 4200  1.7  ✓  -0.2  -0.1 
 4214  2  ✓  ✓  ✓ 
 4220  1  -0.4  ✓  - 
 4223  1.2  -0.2  -0.2  -0.4 
 4226  1.9  ✓  -0.1  ✓ 
 4229  1.3  -  ✓  ✓ 
 4244  2  ✓  ✓  ✓ 
 4251  1.9  -0.2  ✓  ✓ 
 4253  1.1  -0.3  -0.6  ✓ 
 4270  1.5  -0.3  -0.2  ✓ 
 4275  1.8  -0.2  ✓  ✓ 
 4284  1.2  -0.4  -0.4  ✓ 
 4288  1.3  -0.4  -0.3  ✓ 
 4384  1.9  ✓  -0.1  ✓ 
 4387  1.3  -0.1  -0.4  -0.2 
 4397  1.9  ✓  -0.1  ✓ 
 4398  0.3  -  -0.4  - 


3η άσκηση (Δευτέρα, 22 Νοεμβρίου 2010)

1o Πρόβλημα
Θεωρείστε ένα σύγχρονο κατανεμημένο σύστημα με n διεργασίες συνδεδεμένες μέσω ενός πλήρως συνδεδεμένου δικτύου, όπου κάθε διεργασία έχει μια μοναδική ταυτότητα και γνωρίζει τη δομή του δικτύου. Κάθε διεργασία u δέχεται ως είσοδο έναν ακέραιο αριθμό iu από το σύνολο S, δηλ. iu∈S. Τροποποιείστε τον αλγόριθμο συναίνεσης FloodSet έτσι ώστε αν προκύψουν σ' < σ σφάλματα, τότε όλες οι εν λειτουργία διεργασίες να αποφασίσουν (χωρίς απαραιτήτως να τερματίσουν) στο τέλος του γύρου σ'+2. Αναλύστε την ορθότητα, χρονική πολυπλοκότητα και πολυπλοκότητα μηνυμάτων. Αποδείξτε τους ισχυρισμούς σας.
2o Πρόβλημα
Θεωρείστε ένα σύγχρονο κατανεμημένο σύστημα με n διεργασίες συνδεδεμένες μέσω ενός γενικού δικτύου, όπου κάθε διεργασία έχει μια μοναδική ταυτότητα και γνωρίζει τη διάμετρο του δικτύου. Κάθε διεργασία u δέχεται ως είσοδο έναν ακέραιο αριθμό iu από το σύνολο S, δηλ. iu∈S. Τροποποιείστε τον αλγόριθμο συναίνεσης FloodSet έτσι ώστε να λειτουργεί σωστά σε οποιαδήποτε τοπολογία. Αναλύστε την ορθότητα, χρονική πολυπλοκότητα και πολυπλοκότητα μηνυμάτων. Αποδείξτε τους ισχυρισμούς σας.
3o Πρόβλημα
Υλοποιείστε στο σύστημα Shawn έναν αλγόριθμο βασισμένο στον BFS ο οποίος να δέχεται δύο παραμέτρους: AM και MSGS. Οι διεργασίες για τις οποίες ισχύει id%AM==0 (όπου id η ταυτότητα της κάθε διεργασίας και AM το τελευταίο ψηφίο του ΑΜ σας + 1) πρέπει να στείλουν στην διεργασία 0 ένα πλήθος από MSGS μηνύματα. Κάθε μήνυμα περιέχει ένα τυχαίο ακέραιο. Η διεργασία 0 συλλέγει όλα τα μηνύματα και υπολογίζει το άθροισμα. Μελετήστε την συμπεριφορά του αλγόριθμου στις τοπολογίες που σας έχουν δωθεί. Μετρήστε την χρονική πολυπλοκότητα και πολυπλοκότητα επικοινωνίας του αλγορίθμου όταν MSGS=5. Σχολιάστε την συμπεριφορά του αλγορίθμου.


Παράδοση:

  • Η άσκηση είναι ατομική
  • Η παράδοση γίνεται με την χρήση του εργαλείου submit-ds
  • Η προθεσμία υποβολής είναι η Δευτέρα 6 Δεκεμβρίου, ώρα 13:00 Παρασκευή 10 Δεκεμβρίου, ώρα 13:00
  • Σε περίπτωση που εντοπιστεί αντιγραφή, η άσκηση θα μηδενιστεί


Σχετικό υλικό:


Απαντήσεις:

 ΑΜ   Βαθμός   1   2   3 
 2097  2  ✓  ✓  ✓ 
 2702  1.8  -0.1  -0.1  ✓ 
 3211  1.9  -0.1  ✓  ✓ 
 3270  1.1  -0.4  -0.4  -0.1 
 3356  1.9  0.1  -0.2  ✓ 
 3477  1.8  -0.2  ✓  ✓ 
 3497  1.4  -0.3  -0.3  ✓ 
 3518  2  ✓  ✓  ✓ 
 3699  1.5  -0.1  -0.4  ✓ 
 3796  1.6  -0.1  -0.3  ✓ 
 3828  1.9  ✓  -0.1  ✓ 
 3832  0.9  -0.3  -0.2  - 
 3881  0.6  -0.4  -0.4  - 
 3887  1.6  ✓  -0.4  ✓ 
 3889  1.4  -0.2  -0.4  ✓ 
 3893  0.9  -0.1  -0.4  - 
 3895  2  ✓  ✓  ✓ 
 3896  1.7  -  -0.3  ✓ 
 3900  1.8  ✓  -0.1  -0.1 
 3911  1.6  ✓  -0.4  ✓ 
 3914  1.7  ✓  -0.3  ✓ 
 3918  1.8  ✓  -0.2  ✓ 
 3934  1.6  ✓  -0.4  ✓ 
 3941  1  ✓  -0.4  - 
 3944  1.5  -0.5  ✓  ✓ 
 3946  1  ✓  -0.4  - 
 3950  1.5  -0.1  -0.4  ✓ 
 3953  1.8  -0.1  ✓  -0.1 
 3959  1.7  -0.2  -0.1  ✓ 
 3960  2  ✓  ✓  ✓ 
 3961  2  ✓  ✓  ✓ 
 3964  1.6  ✓  -0.4  ✓ 
 3966  1.6  ✓  -0.4  ✓ 
 3967  2  ✓  ✓  ✓ 
 3971  1.8  ✓  -0.1  -0.1 
 3974  1.9  ✓  -0.1  ✓ 
 3986  1.3  -0.3  -0.4  ✓ 
 3992  1.2  -0.3  -0.4  -0.1 
 3996  2  ✓  ✓  ✓ 
 3997  1.7  ✓  -0.3  ✓ 
 3998  1.1  ✓  -0.3  - 
 4002  1.8  -0.1  ✓  -0.1 
 4005  1.7  ✓  ✓  -0.3 
 4009  2  ✓  ✓  ✓ 
 4015  2  ✓  ✓  ✓ 
 4025  2  ✓  ✓  ✓ 
 4028  1.7  ✓  -0.3  ✓ 
 4033  1  ✓  -0.4  - 
 4042  1.8  -0.2  ✓  ✓ 
 4045  1.7  ✓  -0.3  ✓ 
 4053  1.9  ✓  ✓  -0.1 
 4060  1.7  ✓  -0.3  ✓ 
 4061  2  ✓  ✓  ✓ 
 4064  2  ✓  ✓  ✓ 
 4068  1.9  ✓  -0.1  ✓ 
 4082  1.6  ✓  -0.4  ✓ 
 4090  1  ✓  -0.4  - 
 4095  1.7  -0.1  ✓  -0.2 
 4112  1.6  ✓  -0.4  ✓ 
 4116  1.9  ✓  -0.1  ✓ 
 4117  2  -0.1  ✓  0.1 
 4129  1.6  ✓  -0.4  ✓ 
 4145  1.3  -0.2  -0.4  -0.1 
 4146  1.3  ✓  -  ✓ 
 4153  2  ✓  ✓  ✓ 
 4154  1.6  ✓  -0.4  ✓ 
 4160  1.6  ✓  -0.4  ✓ 
 4167  1.2  ✓  -0.2  - 
 4182  1.6  -0.4  ✓  ✓ 
 4183  1.7  ✓  -0.3  ✓ 
 4188  1.8  -0.2  ✓  ✓ 
 4194  1.1  -  -0.2  ✓ 
 4200  1.7  -0.2  -0.1  ✓ 
 4214  1.7  -0.2  -0.1  ✓ 
 4220  0.3  -0.4  -  - 
 4223  1.1  -0.4  -0.4  -0.1 
 4229  1.1  -  -0.2  ✓ 
 4244  1.9  -0.1  ✓  ✓ 
 4251  2  ✓  ✓  ✓ 
 4253  1.7  -0.1  -0.2  ✓ 
 4270  1.4  ✓  -0.3  -0.3 
 4275  1.7  ✓  -0.3  ✓ 
 4284  0.4  -  -0.6  -0.3 
 4288  1.8  ✓  -0.2  ✓ 
 4384  2  ✓  ✓  ✓ 
 4387  1.6  ✓  -0.1  -0.3 
 4397  1.5  -0.1  -0.4  ✓ 


4η άσκηση (Πέμπτη, 9 Δεκεμβρίου 2010)

1o Πρόβλημα
Θεωρείστε ένα σύγχρονο κατανεμημένο σύστημα με n διεργασίες συνδεδεμένες μέσω ενός μη-κατευθυνόμενου δακτυλίου, όπου κάθε διεργασία έχει μια μοναδική ταυτότητα αλλά δεν γνωρίζει το σύνολο των διεργασιών. Σχεδιάστε έναν κατανεμημένο αλγόριθμο που να ορίζει μια κοινή κατεύθυνση στο δίκτυο δακτυλίου (ring orientation). Περιγράψτε τον αλγόριθμό σας, αναλύστε την ορθότητα του αλγόριθμου, την χρονική πολυπλοκότητα και πολυπλοκότητα μηνυμάτων. Αποδείξτε τους ισχυρισμούς σας.
2o Πρόβλημα
Υλοποιείστε στο σύστημα Shawn έναν αλγόριθμο βασισμένο στον FloodSet ο οποίος να δέχεται μία παράμετρο: AM (το τελευταίο ψηφίο του ΑΜ σας + 1). Οι διεργασίες του συστήματος δέχονται σαν είσοδο μια τιμή i (π.χ., έχουν πρόσβαση σε κάποιο αισθητήρα). Στην συναίχεια επεξεργάζονται τοπικά την είσοδο και εξάγουν μια απόφαση (π.χ., για τους σκοπούς της άσκησης, i%AM). Μελετήστε τη συμπεριφορά του αλγορίθμου όταν παρουσιάζονται σφάλματα επικοινωνίας. Τα σφάλματα επικοινωνίας ορίζονται με πιθανότητα σφάλματος ανά αποστολή μηνύματος p={0.1,0.2,0.3,0.4,0.5,0.6,0.7,0.8,0.9}. Μετρήστε την χρονική πολυπλοκότητα και πολυπλοκότητα επικοινωνίας του αλγορίθμου στις τοπολογίες που σας έχουν δοθεί έως ότου οι διεργασίες συμφωνήσουν σε μια κοινή τιμή. Σχολιάστε την συμπεριφορά του αλγορίθμου.
3o Πρόβλημα
Υλοποιείστε στο σύστημα Shawn έναν νέο αλγόριθμο συναίνεσης (βασισμένο στον FloodSet) ο οποίος να δέχεται δύο παραμέτρους: AM (το τελευταίο ψηφίο του ΑΜ σας + 1), FailProbability (ένα άνω φράγμα στην πιθανότητα σφάλματος ανά αποστολή μηνύματος). Όπως και στο προηγούμενο πρόβλημα, οι διεργασίες του συστήματος δέχονται σαν είσοδο μια τιμή i και εξάγουν μια απόφαση (π.χ., i%AM). Ο αλγόριθμός σας πρέπει να λαμβάνει υπόψην του την τιμή της FailProbability για να τερματίσει εξασφαλίζοντας ότι οι διεργασίες συμφωνούν σε μια κοινή τιμή. Μελετήστε τη συμπεριφορά του αλγορίθμου όταν παρουσιάζονται σφάλματα επικοινωνίας. Τα σφάλματα επικοινωνίας ορίζονται με πιθανότητα σφάλματος ανά αποστολή μηνύματος p={0.1,0.2,0.3,0.4,0.5,0.6,0.7,0.8,0.9}. Μετρήστε την χρονική πολυπλοκότητα και πολυπλοκότητα επικοινωνίας του αλγορίθμου στις τοπολογίες που σας έχουν δοθεί. Σχολιάστε την συμπεριφορά του αλγορίθμου.


Παράδοση:

  • Η άσκηση είναι ατομική
  • Η παράδοση γίνεται με την χρήση του εργαλείου submit-ds
  • Η προθεσμία υποβολής είναι η Πέμπτη 23 Δεκεμβρίου, ώρα 23:59 Τετάρτη 29 Δεκεμβρίου, ώρα 23:59
  • Σε περίπτωση που εντοπιστεί αντιγραφή, η άσκηση θα μηδενιστεί


Σχετικό υλικό:


Απαντήσεις:

 ΑΜ   Βαθμός   1   2   3 
 2097  2  ✓  ✓  ✓ 
 2702  1.6  ✓  -0.2  -0.2 
 3211  1.9  -0.1  ✓  ✓ 
 3270  1.7  -0.3  ✓  ✓ 
 3304  0.8  ✓  -  - 
 3356  2  ✓  ✓  ✓ 
 3477  1.7  -0.1  ✓  -0.2 
 3497  0.6  -0.7  -0.3  -0.4 
 3518  1.6  -0.2  ✓  -0.2 
 3699  1.3  -0.2  -0.2  -0.3 
 3796  1.6  ✓  ✓  -0.4 
 3828  2  ✓  ✓  ✓ 
 3832  0.6  -0.2  -  - 
 3881  0.6  -0.2  -  - 
 3887  1.2  ✓  -0.2  - 
 3889  1.6  -0.1  ✓  -0.3 
 3895  2  ✓  ✓  ✓ 
 3900  1.3  -0.1  -0.3  -0.3 
 3911  0.8  -0.6  -0.2  -0.4 
 3914  2  ✓  ✓  ✓ 
 3918  1.2  -0.2  -0.3  -0.3 
 3934  2  ✓  ✓  ✓ 
 3941  0.8  ✓  -  - 
 3944  1.9  -0.1  ✓  ✓ 
 3946  1.6  ✓  ✓  -0.4 
 3950  1.3  -0.2  ✓  -0.5 
 3953  1.7  -0.1  ✓  -0.2 
 3959  2  ✓  ✓  ✓ 
 3960  1.8  ✓  ✓  -0.2 
 3961  2  ✓  ✓  ✓ 
 3964  1.4  ✓  ✓  - 
 3966  1  -0.4  -0.3  -0.3 
 3967  1.8  ✓  ✓  -0.2 
 3971  2  ✓  ✓  ✓ 
 3974  2  ✓  ✓  ✓ 
 3986  1.7  -0.3  ✓  ✓ 
 3992  1.6  ✓  ✓  -0.4 
 3996  2  ✓  ✓  ✓ 
 3997  1.7  ✓  ✓  -0.3 
 3998  0.8  ✓  -  - 
 4002  2  ✓  ✓  ✓ 
 4005  2  ✓  ✓  ✓ 
 4009  1  ✓  -0.5  -0.5 
 4015  2  ✓  ✓  ✓ 
 4025  1.4  ✓  ✓  - 
 4028  1.6  ✓  ✓  -0.4 
 4033  0.8  ✓  -  - 
 4042  2  ✓  ✓  ✓ 
 4045  1.7  ✓  -0.1  -0.2 
 4053  1.4  ✓  ✓  - 
 4060  1.8  ✓  ✓  -0.2 
 4061  1.9  ✓  ✓  -0.1 
 4064  1.9  ✓  ✓  -0.1 
 4068  1.7  -0.1  ✓  -0.2 
 4082  1.7  ✓  ✓  -0.3 
 4090  0.7  -0.1  -  - 
 4095  1.6  -0.2  ✓  -0.2 
 4112  1.6  -0.4  ✓  ✓ 
 4116  1  -0.4  -0.3  -0.3 
 4117  1.9  ✓  -0.1  ✓ 
 4129  1.5  -0.2  ✓  -0.3 
 4145  1.4  -0.3  ✓  -0.3 
 4146  1.4  ✓  ✓  - 
 4153  1.7  -0.1  ✓  -0.2 
 4154  1.2  -0.1  -0.1  - 
 4160  2  ✓  ✓  ✓ 
 4182  1.5  ✓  ✓  -0.5 
 4183  1.7  ✓  ✓  -0.3 
 4188  1.7  -0.2  ✓  -0.1 
 4194  1.9  ✓  ✓  -0.1 
 4200  1  -0.1  -0.5  -0.4 
 4214  1.7  ✓  ✓  -0.3 
 4220  0.6  -0.2  -  - 
 4223  1  -0.2  -0.3  -0.5 
 4226  1.7  ✓  ✓  -0.3 
 4229  1.6  -0.1  ✓  -0.3 
 4244  1.8  ✓  ✓  -0.2 
 4251  1.7  ✓  ✓  -0.3 
 4253  0.7  -0.4  -0.3  - 
 4270  1.8  -0.2  ✓  ✓ 
 4275  1.9  ✓  ✓  -0.1 
 4284  0.4  -0.6  -0.5  -0.5 
 4288  1.8  -0.2  ✓  ✓ 
 4384  2  ✓  ✓  ✓ 
 4387  1  -0.4  -0.2  -0.4 
 4397  1.8  ✓  ✓  -0.2 


5η άσκηση (Τετάρτη, 22 Δεκεμβρίου 2010)

1o Πρόβλημα
Θεωρείστε ένα ασύγχρονο κατανεμημένο σύστημα με n διεργασίες συνδεδεμένες μέσω ενός πλήρως συνδεδεμένου δικτύου, όπου κάθε διεργασία έχει μια μοναδική ταυτότητα, γνωρίζει το σύνολο των διεργασιών και την τοπολογία του δικτύου. Τα κανάλια του δικτύου είναι αξιόπιστα και FIFO. Σχεδιάστε έναν κατανεμημένο αλγόριθμο που να λύνει το πρόβλημα του k-αμοιβαίου αποκλεισμού, δηλαδή το πολύ k από τις διεργασίες μπορούν να αποκτήσουν πρόσβαση στον κοινό πόρο σε ένα ορισμένο χρονικό διάστημα (συνθήκη της ασφάλειας). Ο αλγόριθμος πρέπει να ικανοποιεί την συνθήκη της διάταξης: η άδεια εισόδου στο κρίσιμο τμήμα πρέπει να παραχωρηθεί σύμφωνα με τη σχέση συνέβη-πριν: οι αιτήσεις των διεργασιών εξυπηρετούνται με τη σειρά που έχουν εκδοθεί. Περιγράψτε τον αλγόριθμό σας, αναλύστε την ορθότητα του αλγόριθμου, την χρονική πολυπλοκότητα και πολυπλοκότητα μηνυμάτων. Αποδείξτε τους ισχυρισμούς σας.
2o Πρόβλημα
Υλοποιείστε στο σύστημα Shawn που να δέχεται μία παράμετρο: AM (το τελευταίο ψηφίο του ΑΜ σας + 1). Οι διεργασίες του συστήματος δέχονται σαν είσοδο μια τιμή i (π.χ., έχουν πρόσβαση σε κάποιο αισθητήρα). Ο αλγόριθμος που θα υλοποιήσετε θα πρέπει να μπορεί να αποτιμά τα καθολικά κατηγορήματα:
(α) ∃q • iq%AM=9,
(β) ∄q • iq%2=1,
(γ) ∀q • iq%2=0 : ∃v • iq+iv>10.
Μελετήστε την συμπεριφορά του αλγόριθμου στις τοπολογίες που σας έχουν δοθεί. Μετρήστε την χρονική πολυπλοκότητα και πολυπλοκότητα επικοινωνίας του αλγορίθμου. Σχολιάστε την συμπεριφορά του αλγορίθμου.


Παράδοση:

  • Η άσκηση είναι ατομική
  • Η παράδοση γίνεται με την χρήση του εργαλείου submit-ds
  • Η προθεσμία υποβολής είναι η Παρασκευή 21 Ιανουαρίου, ώρα 13:00
  • Σε περίπτωση που εντοπιστεί αντιγραφή, η άσκηση θα μηδενιστεί


Σχετικό υλικό:


Απαντήσεις:

 ΑΜ   Βαθμός   1   2 
 3518  1  ✓  ✓ 
 3796  0.5  ✓  - 
 3889  0.5  ✓  - 
 3911  0.5  ✓  - 
 3941  0.5  ✓  - 
 3950  0.5  ✓  - 
 3992  0.7  ✓  -0.3 
 3997  0.6  -0.4  ✓ 
 3998  0.5  ✓  - 
 4009  0.5  ✓  - 
 4045  1  ✓  ✓ 
 4053  0.5  ✓  - 
 4060  0.5  ✓  - 
 4082  0.5  ✓  - 
 4112  0.5  ✓  - 
 4116  0.6  -0.2  -0.2 
 4117  0.7  -0.1  -0.2 
 4129  1  ✓  ✓ 
 4145  0.3  -0.2  - 
 4182  0.8  -0.1  -0.1 
 4183  1  ✓  ✓ 
 4188  0.9  ✓  -0.1 
 4200  0.3  -0.2  - 
 4214  0.5  ✓  - 
 4251  0.5  -  ✓ 
 4270  1  ✓  ✓ 
 4288  0.8  ✓  -0.2 
 4387  0.5  ✓  - 
 4397  0.5  -  ✓ 


6η άσκηση (Δευτέρα, 10 Ιανουαρίου 2011)

1o Πρόβλημα
Με βάση το μοντέλο πρωτόκολλων πλυθησμών, απαντήστε στα ακόλουθα ερωτήματα:
  1. Έστω ο εξής εναλλακτικός ορισμός της δικαιοσύνης: "Όλες οι αλληλεπιδράσεις συμβαίνουν απέιρως συχνά". Επάγεται απο αυτόν τον ορισμό το ίδιο αποτέλεσμα με τον ορισμό της δικαιοσύνης που ορίσαμε? Αν ναι, εξηγείστε τους ισχυρισμούς σας. Αν όχι, δώστε αντιπαράδειγμα. Δώστε παράδειγμα δίκαιης εκτέλεσης όπου κάποια αλληλεπίδραση δεν συμβαίνει ποτέ. (Υπόδειξη: Χρησιμοποιείστε το leader election σε ένα πολύ απλό δίκτυο).
  2. Δώστε πρωτόκολλο υπολογισμού του κατηγορήματος: "Υπάρχει ζυγός αριθμός κόμβων με είσοδο 1;" όταν το αλφάβητο εισόδου είναι Χ={0,1} -- δηλαδή κάθε πράκτορας να δίνει τελικά έξοδο '1' όταν ο αριθμός των '1' στην είσοδο είναι ζυγός και έξοδο '0' στην αντίθετη περίπτωση. (Υπόδειξη: Χρησιμοποιείστε την ιδέα του live bit όπως αυτή παρουσιάστηκε στην Διαφάνεια 49).
2o Πρόβλημα
Υλοποιείστε στο σύστημα Shawn τον σταθεροποιούμενο αλγόριθμο αμοιβαίου αποκλεισμού του Dijkstra για τοπολογίες δακτυλίου. Κατά την εκτέλεση του συστήματος, στον γύρο 3×δ, οι διεργασίες όπου id%AM==0 (το τελευταίο ψηφίο του AM σας + 1) λόγο σφαλμάτων αποκτούν μια τυχαία τιμή στην εσωτερική μεταβλητή του αλγορίθμου (στο διάστημα 0...k). Μελετήστε την συμπεριφορά του αλγόριθμου στις τοπολογίες που σας έχουν δοθεί. Μετρήστε τον χρόνο σταθεροποίησης του αλγορίθμου. Σχολιάστε την συμπεριφορά του αλγορίθμου.


Παράδοση:

  • Η άσκηση είναι ατομική
  • Η παράδοση γίνεται με την χρήση του εργαλείου submit-ds
  • Η προθεσμία υποβολής είναι η Παρασκευή 25 Φεβρουαρίου, ώρα 23:59 Παρασκευή 4 Μαρτίου, ώρα 23:59
  • Σε περίπτωση που εντοπιστεί αντιγραφή, η άσκηση θα μηδενιστεί


Σχετικό υλικό:


Απαντήσεις:

 ΑΜ   Βαθμός   1   2 
 3518  1  ✓  ✓ 
 3796  0.5  ✓  - 
 3889  0.5  ✓  - 
 3911  0.5  ✓  - 
 3941  0.5  ✓  - 
 3950  0.5  ✓  - 
 3992  0.7  ✓  -0.3 
 3997  0.6  -0.4  ✓ 
 3998  0.5  ✓  - 
 4009  0.5  ✓  - 
 4045  1  ✓  ✓ 
 4053  0.5  ✓  - 
 4060  0.5  ✓  - 
 4082  0.5  ✓  - 
 4112  0.5  ✓  - 
 4116  0.6  -0.2  -0.2 
 4117  0.7  -0.1  -0.2 
 4129  1  ✓  ✓ 
 4145  0.3  -0.2  - 
 4182  0.8  -0.1  -0.1 
 4183  1  ✓  ✓ 
 4188  0.9  ✓  -0.1 
 4200  0.3  -0.2  - 
 4251  0.5  -  ✓ 
 4270  1  ✓  ✓ 
 4288  0.8  ✓  -0.2 
 4387  0.5  ✓  - 
 4397  0.5  -  ✓ 


Τελικός Βαθμός

Ο τελικός βαθμός υπολογίζεται με τον ακόλουθο τύπο:

(Βαθμός 1ης άσκησης) + (Βαθμός 2ης άσκησης) + (Βαθμός 3ης άσκησης) + (Βαθμός 4ης άσκησης) + (Βαθμός 5ης άσκησης) + (Βαθμός 6ης άσκησης)

Η στρογγυλοποιήση γίνεται στο τέλος, στο πλησιέστερο (προς τα πάνω, δηλ. υπέρ του φοιτητή) μισό ή ολόκληρο βαθμό.


Βαθμολογία:

 ΑΜ   1η Άσκηση   2η Άσκηση   3η Άσκηση   4η Άσκηση   5η Άσκηση   6η Άσκηση   Bonus   Βαθμός 
 2097  1.8  2  2  2  2.2      10 
 2702  1.7  1.7  1.8  1.6  2.4      9.5 
 3086  1.6  0  0  0  0      2 
 3211  1.5  2  1.9  1.9  2.5      10 
 3270  0.8  1.5  1.1  1.7  2.2      7.5 
 3290  0.6  0  0  0  0      1 
 3304  1.2  0  0  0.8  1.25      3.5 
 3356  1.6  1.8  1.9  2  2.5      10 
 3414  1  0  0  0  0      1 
 3477  1.7  1.4  1.8  1.7  1.85      8.5 
 3497  1.1  1.6  1.4  0.6  2.1      7 
 3518  1.6  1.4  2  1.6  2  1    10 
 3699  1  1.8  1.5  1.3  1.55      7.5 
 3761  1.8  0  0  0  0      2 
 3796  1.2  2  1.6  1.6  2.4  0.5    9.5 
 3828  1.6  1.3  1.9  2  2.2      9.5 
 3832  1.6  0.7  0.9  0.6  1.05      5 
 3837  0.9  0  0  0  0      1 
 3880  1.4  0  0  0  0      1.5 
 3881  1.3  0.9  0.6  0.6  1.25      5 
 3887  1.6  1.4  1.6  1.2  2.4      8.5 
 3889  1.6  2  1.4  1.6  2.5  0.5    10 
 3893  1.4  0.7  0.9  0  0      3 
 3895  1.8  2  2  2  2.2    +2  10 
 3896  1.6  2  1.7  0  1.25    +1  8 
 3900  1.4  2  1.8  1.3  2.2      9 
 3911  2  1.3  1.6  0.8  2.4  0.5    9 
 3912  1.6  0  0  0  0      2 
 3914  1.9  1.8  1.7  2  2.4      10 
 3918  1.1  1.9  1.8  1.2  0.7      7 
 3929  1.6  0  0  0  0      2 
 3934  2  2  1.6  2  2.4    +2  10 
 3941  1.6  1.9  1  0.8  2.4  0.5    8.5 
 3944  1.5  1.1  1.5  1.9  0.7      7 
 3946  1.5  1.3  1  1.6  2      7.5 
 3950  1.7  1.7  1.5  1.3  1.9  0.5    9 
 3953  1.3  2  1.8  1.7  2.3      9.5 
 3959  1.6  2  1.7  2  2.4      10 
 3960  1.7  1.8  2  1.8  2.5      10 
 3961  1.8  1.9  2  2  2.05      10 
 3964  1.6  1.8  1.6  1.4  2.2      9 
 3966  1.8  1.6  1.6  1  1.9      8 
 3967  1.4  1.8  2  1.8  0    +1  8 
 3971  1.4  2  1.8  2  2.4      10 
 3974  1.8  2  1.9  2  2.5    +1  10 
 3986  1.3  1.5  1.3  1.7  2      8 
 3992  1.4  1.8  1.2  1.6  2.5  0.7    9.5 
 3996  1.4  2  2  2  2.5      10 
 3997  1.2  1.8  1.7  1.7  2.1  0.6    9.5 
 3998  1.6  2  1.1  0.8  2.2  0.5    8.5 
 4002  1.8  1.9  1.8  2  2.5      10 
 4005  1.6  1.7  1.7  2  2.1      9.5 
 4009  1.9  1.6  2  1  1.05  0.5    8.5 
 4015  2  1.8  2  2  2.5      10 
 4020  1  0  0  0  0      1 
 4025  1.5  1.9  2  1.4  2.4      9.5 
 4028  1.8  1.7  1.7  1.6  2.5      9.5 
 4033  1.4  1  1  0.8  1.25    +2  7.5 
 4038  1.6  0.6  0  0  0      2.5 
 4042  1.75  2  1.8  2  2.3      10 
 4045  1.6  2  1.7  1.7  2.4  1    10 
 4053  1.4  1.7  1.9  1.4  2  0.5    9 
 4060  1.5  2  1.7  1.8  2.3  0.5    10 
 4061  1.8  2  2  1.9  2.4      10 
 4064  1.4  2  2  1.9  2.5      10 
 4068  1.7  1.8  1.9  1.7  2.5      10 
 4071  1.6  0.5  0  0  0      2.5 
 4082  1.7  1.6  1.6  1.7  2.4  0.5    9.5 
 4090  1.4  1.3  1  0.7  2.4    +1  8 
 4095  1.8  1  1.7  1.6  2.3      8.5 
 4109  1.5  1  0  0  0      2.5 
 4112  2  2  1.6  1.6  1.9  0.5    10 
 4116  1.6  1.9  1.9  1  2.3  0.6    9.5 
 4117  1.1  1  2  1.9  2.4  0.7    9.5 
 4122  1.6  1  0  0  0      3 
 4129  1.4  1.5  1.6  1.5  1.85  1    9 
 4145  1.5  1.9  1.3  1.4  2.4  0.3    9 
 4146  1.6  1.3  1.3  1.4  2.2      8 
 4153  1.8  1.5  2  1.7  1.85      9 
 4154*  1.6  1  1.6  1.2  2.5      8 
 4160  1.8  2  1.6  2  2.5      10 
 4167  1.6  0  1.2  0  0      3 
 4175  0.3  0  0  0  0      0.5 
 4182  1  1.2  1.6  1.5  2.4  0.8    8.5 
 4183*  1.7  1.7  1.7  1.7  2.5  1    10 
 4188  1.6  1.8  1.8  1.7  2.2  0.9    10 
 4194  1.5  1.3  1.1  1.9  0.95      7 
 4198  1.2  0  0  0  0      1.5 
 4200  1.7  1.7  1.7  1  1.65  0.3    8.5 
 4211*  1.6  0  0  0  0      2 
 4214  1.9  2  1.7  1.7  0  0.5  +2  10 
 4220  1.2  1  0.3  0.6  1.25      4.5 
 4223  1.3  1.2  1.1  1  2.1      7 
 4226*  1.9  1.9  0  1.7  0    +2  7.5 
 4229  1.4  1.3  1.1  1.6  1.25      7 
 4235  0.8  0  0  0  0      1 
 4244  2  2  1.9  1.8  0    +2  10 
 4251  1.2  1.9  2  1.7  1.75  0.5    9.5 
 4253  1  1.1  1.7  0.7  2.2      7 
 4270  1.6  1.5  1.4  1.8  2.3  1    10 
 4275  1.8  1.8  1.7  1.9  2.3      9.5 
 4284  1.2  1.2  0.4  0.4  1.7      5 
 4288  1.4  1.3  1.8  1.8  2.3  0.8    9.5 
 4384  1.6  1.9  2  2  2.3    +2  10 
 4387  1.6  1.3  1.6  1  2  0.5    8 
 4397  1.7  1.9  1.5  1.8  2.2  0.5    10 
 4398  1.1  0.3  0  0  0      1.5