ΘΕΜ 1 ο (.5 κνλάδεο) ΠΝΕΠΙΣΗΜΙΟ ΜΚΕΔΟΝΙ ΟΙΚΟΝΟΜΙΚΩΝ ΚΙ ΚΟΙΝΩΝΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΣΜΗΜ ΕΦΡΜΟΜΕΝΗ ΠΛΗΡΟΦΟΡΙΚΗ ΣΕΥΝΗΣΗ ΝΟΗΜΟΤΝΗ Σελικέρ εξετάσειρ Παπασκεςή 1 Ιοςνίος 009 11:30-14:30 Έζησ 3 θύβνη πάλσ ζε έλα ηξαπέδη, κε νλόκαηα, θαη, από ηνλ γλσζηό θόζκν ησλ θύβσλ (πξνβιήκαηα ζρεδηαζκνύ). α) Σρεδηάζηε έλαλ κε θαηεπζπλόκελν γξάθν G=(V,E), ηνπ νπνίνπ θάζε θνξπθή v V αληηζηνηρεί ζε κηα δηάηαμε ησλ θύβσλ πάλσ ζην ηξαπέδη. ύν θόκβνη v 1 θαη v ηνπ γξάθνπ ζπλδένληαη κε αθκή εάλ είλαη δπλαηή ε κεηάβαζε από ηελ θαηάζηαζε ηνπ ελόο θόκβνπ ζηελ θαηάζηαζε ηνπ άιινπ θόκβνπ κε κία κεηαθίλεζε ελόο κόλν θύβνπ (έλαο θύβνο κπνξεί λα κεηαθηλεζεί κόλν εθόζνλ είλαη ειεύζεξε ε πάλσ έδξα ηνπ). ηα παξάδεηγκα, νη παξαθάησ δύν θόκβνη ζπλδένληαη κεηαμύ ηνπο. (1) β) ξείηε κηα δηαδξνκή πνπ ζπλδέεη ηνπο δύν παξαθάησ θόκβνπο (όρη απαξαηηήησο ηε ζπληνκόηεξε), εθαξκόδνληαο ηνλ αιγόξηζκν αλαδήηεζεο πξώηα ζε βάζνο. (0.75) Ζ πξνηεξαηόηεηα κε ηελ νπνία ζα επηζθέπηεηαη ηηο γεηηνληθέο θνξπθέο ν αιγόξηζκόο λα είλαη ε εμήο: Πξνηεξαηόηεηα έρεη ε κεηαθηλήζε ηνπ θύβνπ, κεηά ηνπ θαη κεηά ηνπ. ηα ηνλ ίδην κεηαθηλνύκελν θύβν, πξνηεξαηόηεηα έρεη ε κεηαθίλεζή ηνπ πξνο ην ηξαπέδη (εθόζνλ δελ είλαη ήδε εθεί) θαη ζηε ζπλέρεηα ε κεηαθίλεζε ηνπ πάλσ ζε άιινπο θύβνπο κε αιθαβεηηθή πξνηεξαηόηεηα. γ) ηα ην ίδην πξόβιεκα, βξείηε ηε δηαδξνκή πνπ επηζηξέθεη ν αιγόξηζκνο αλαδήηεζεο πξώηα ζε πιάηνο, ρξεζηκνπνηώληαο ηελ ίδηα πξνηεξαηόηεηα επίζθεςεο θόκβσλ. (0.75) Σεκείσζε: Καη ζηηο δύν πεξηπηώζεηο ζεσξνύκε όηη ν αιγόξηζκνο αλαδήηεζεο πξαγκαηνπνηεί έιεγρν επαλάιεςεο θαηαζηάζεσλ. πάντηση: α)
A B β) Σην παξαπάλσ ζρήκα, ν θόκβνο-αξρή θαίλεηαη κε θίηξηλν ρξώκα θαη ν θόκβνο-ηέινο κε πξάζηλν. Ζ δηαδξνκή πνπ ζα βξεη ν αιγόξηζκνο depth-first search θαίλεηαη κε ηε ζπλερή γξακκή. Ζ δηαδξνκή πνπ ζα βξεη ν αιγόξηζκνο breadth-first search θαίλεηαη κε ηε δηάζηηθηε γξακκή. Όπσο γλσξίδνπκε θαη από ηελ Δ8, ν breadth-first search βξίζθεη βέιηηζηεο δηαδξνκέο. ΘΕΜ ο (.5 κνλάδεο) Έλα καγηθό ηεηξάγσλν είλαη έλα ηεηξάγσλν 3x3, θάζε θειί ηνπ νπνίνπ πεξηιακβάλεη έλαλ δηαθνξεηηθό αξηζκό από ην 1 έσο ην 9, έηζη ώζηε ην άζξνηζκα ησλ αξηζκώλ ζε θάζε γξακκή, ζηήιε θαη δηαγώλην λα ηζνύηαη κε 15. α) Μνληεινπνηήζηε ην πξόβιεκα θαηαζθεπήο καγηθώλ ηεηξαγώλσλ σο πξόβιεκα ηθαλνπνίεζεο πεξηνξηζκώλ. (1.5) β) Δπηιύζηε ην πξόβιεκα ρξεζηκνπνηώληαο έιεγρν ζπλέπεηαο θαη αλαδήηεζε. (1.5) πάντηση: α) Οξίδνπκε 9 αθέξαηεο κεηαβιεηέο, έζησ,,,, Δ, Ε, Ζ, Θ θαη Η ηα νλόκαηά ηνπο, κε πεδία ην ζύλνιν {1,, 3, 4, 5, 6, 7, 8, 9}. Κάζε κεηαβιεηή αληηζηνηρεί ζε έλα θειί ηνπ καγηθνύ ηεηξαγώλνπ, σο εμήο: Οη πεξηνξηζκνί είλαη νη εμήο: Δ Ε Ζ Θ Η all_different(,,,, Δ, Ε, Ζ, Θ, Η) ++=15 +Δ+Ε=15 Ζ+Θ+Η=15 ++Ζ=15 +Δ+Θ=15
+Ε+Η=15 +Δ+Η=15 Ζ+Δ+=15 β) ελ κπνξνύκε λα πξνρσξήζνπκε εμαξρήο ζε δηαγξαθέο ηηκώλ από ηα πεδία ησλ κεηαβιεηώλ, νπόηε πξνρσξάκε ζε αλάζεζε. Έζησ ε κεηαβιεηή Δ πνπ εκπιέθεηαη ζηνπο πεξηζζόηεξνπο πεξηνξηζκνύο, θαη έζησ Δ=5 (θάζε ηηκή πνπ αλαζέηνπκε ζε κεηαβιεηή αθαηξείηαη από ηα πεδία όισλ ησλ ππνινίπσλ). λαγθαδόκαζηε λα πξνρσξήζνπκε θαη ζε δεύηεξε αλάζεζε, έζησ =1, νπόηε πξνθύπηεη όηη Ε=9. 1 5 9 Ζ Θ Η Έζησ =8, νπόηε Η=, Ζ=6, Θ=7...... θαη ζπλερίδνληαο =3 θαη =4. 8 1 5 9 6 7 8 3 4 1 5 9 6 7 Ζ ηειεπηαία αλάζεζε πιεξεί όινπο ηνπο πεξηνξηζκνύο, νπόηε είλαη θαη ιύζε ηνπ πξνβιήκαηνο. ΘΕΜ 3 ο (.5 κνλάδεο) Έζησ ην παξαθάησ δέλδξν παηρληδηνύ δύν αηόκσλ, όπνπ πξώηνο παίδεη ν παίθηεο. α) ξείηε ηελ θίλεζε πνπ ζα επηιέμεη ν παίθηεο, εθαξκόδνληαο ηνλ αιγόξηζκν minimax. (1.5) β) Φξεζηκνπνηώληαο ηελ ηερληθή θιαδέκαηνο άιθα-βήηα κε εμέηαζε ησλ θόκβσλ από αξηζηεξά πξνο ηα δεμηά, βξείηε πνηνη θόκβνη δελ ζα ρξεηαζηεί λα εμεηαζζνύλ θαζόινπ. (1.5) C D E F G H I J K L M N O P Q R 3 1 0 7 6 0 1 5 8 4 6 7 Υπόδεημε: Ζ ηερληθή θιαδέκαηνο άιθα-βήηα δίλεη πξνηεξαηόηεηα ζην αλέβαζκα ησλ ηηκώλ πξνο ηε ξίδα: Κάζε θνξά πνπ όια ηα παηδηά ελόο θόκβνπ έρνπλ πάξεη ηηκέο, ππνινγίδεηαη θαη ε ηηκή ηνπ γνλέα. ηα παξάδεηγκα, εθόζνλ ηα θύιια εμεηάδνληαη από αξηζηεξά πξνο ηα δεμηά, ε ηηκή ηνπ θόκβνπ πξέπεη λα βξεζεί πξηλ από ηελ ηηκή ηνπ θόκβνπ R. πηή ε ζεηξά δίλεη ηε δπλαηόηεηα θιαδέκαηνο όρη κόλν ζην ηειεπηαίν, αιιά θαη ζην πξνηειεπηαίν επίπεδν ηνπ ζπγθεθξηκέλνπ δέλδξνπ παηρληδηνύ. S T U V W X Y
πάντηση: α) Σην παξαθάησ ζρήκα θαίλνληαη νη βαζκνί όισλ ησλ θόκβσλ θαη κε έληνλε γξακκή ε θίλεζε πνπ επηιέγεη ν παίθηεο MAX γηα πξώηε ηνπ θίλεζε. 6 C 6 D MAX E 0 F 6 G 0 H I 4 J 6 K L M N O P Q β) Σην παξαθάησ ζρήκα κε γθξη ρξώκα θαίλνληαη νη θόκβνη πνπ, κε ηελ ηερληθή θιαδέκαηνο άιθα-βήηα, δελ ζα ρξεηαδόηαλ λα εμεηάζεη ν παίθηεο MAX. Τν θιάδεκα απηώλ ησλ θόκβσλ νδεγεί θαη ζε αιιαγή ησλ ηηκώλ θάπνησλ ελδηάκεζσλ θόκβσλ, σζηόζν ν βαζκόο ηεο ξίδαο θαη άξα ε ηειηθή επηινγή ηνπ παίθηε δελ αιιάδεη. R 3 1 0 7 6 0 1 5 8 4 6 7 S T U V W X Y 6 C 4 D MAX E 1 F 6 G 0 H I 4 J K L M N O P Q R S T U V W 3 1 7 6 0 1 5 8 4 X Y ΘΕΜ 4 ο (.5 κνλάδεο) Έζησ ηα παξαθάησ θαηεγνξήκαηα: κέραιος(x): Ο x είλαη αθέξαηνο αξηζκόο Σύνολο(s): Τν s είλαη ζύλνιν αθεξαίσλ αξηζκώλ. νήκει(x,s): Ο αθέξαηνο x αλήθεη ζην ζύλνιν s. Φξεζηκνπνηώληαο ηα παξαπάλσ βαζηθά θαηεγνξήκαηα, γξάςηε ινγηθέο ζρέζεηο πνπ λα νξίδνπλ ηα εμήο λέα θαηεγνξήκαηα: Υποσύνολο(s1,s): Τν ζύλνιν s1 είλαη ππνζύλνιν ηνπ ζπλόινπ s. Ίσα(s1,s): Τα ζύλνια s1 θαη s είλαη ίζα κεηαμύ ηνπο, δειαδή πεξηέρνπλ αθξηβώο ηα ίδηα ζηνηρεία.
Κενό(s): Τν ζύλνιν s είλαη θελό, δειαδή δελ πεξηέρεη θαλέλα ζηνηρείν. Ένωση(s1,s,s): Τν ζύλνιν s απνηειείηαη από ηελ έλσζε ησλ ζηνηρείσλ ησλ ζπλόισλ s1 θαη s. Διαυορά(s1,s,s): Τν ζύλνιν s απνηειείηαη από ηε δηαθνξά ησλ ζηνηρείσλ ησλ ζπλόισλ s1 θαη s, δειαδή ην ζύλνιν απνηειείηαη από ηα ζηνηρεία πνπ αλήθνπλ ζην s1 αιιά δελ αλήθνπλ ζην s, θαη κόλν απηά. πάντηση: Υποσύνολο(s1,s) ( x, νήκει(x,s1) νήκει(x,s) ) Ίσα(s1,s) Υποσύνολο(s1,s) Υποσύνολο(s,s1) Κενό(s) x νήκει(x,s) Ένωση(s1,s,s) ( x, νήκει(x,s1) νήκει(x,s) νήκει(x,s) ) Διαυορά(s1,s,s) ( x, νήκει(x,s1) νήκει(x,s) νήκει(x,s) ) ΘΕΜ 5 ο (.5 κνλάδεο) Τν παηρλίδη Sokoban παίδεηαη σο εμήο: Σε έλα πιέγκα ζέζεσλ πεξηνξηζκέλσλ δηαζηάζεσλ, όπσο απηό ηεο παξαθάησ εηθόλαο, ππάξρνπλ εκπόδηα, θηβώηηα θαη έλα ξνκπόη. Σηόρνο ηνπ ξνκπόη είλαη λα κεηαθηλήζεη ηα θηβώηηα ζε πξνθαζνξηζκέλεο ζέζεηο. Τν ξνκπόη κπνξεί θαη κεηαθηλείηαη πξνο ηηο ηέζζεξηο θαηεπζύλζεηο, έλα ηεηξάγσλν ηε θνξά. ηα λα κεηαθηλήζεη έλα θηβώηην θαηά κία ζέζε, ζα πξέπεη ην ξνκπόη λα βξίζθεηαη ζε ζέζε γεηηνληθή πξνο ην θηβώηην θαη λα επηρεηξήζεη λα θηλεζεί πξνο ην θηβώηην. Σε απηή ηελ πεξίπησζε, εθόζνλ ε ζέζε κεηά ην θηβώηην πξνο ηελ θαηεύζπλζε θίλεζεο ηνπ ξνκπόη, είλαη θελή, ην ξνκπόη θαηαιακβάλεη ηελ πξνεγνύκελε ζέζε ηνπ θηβσηίνπ θαη ην θηβώηην ηελ ακέζσο επόκελε. Δάλ ε ζέζε κεηά ην θηβώηην πξνο ηελ θαηεύζπλζε θίλεζεο ηνπ ξνκπόη δελ ήηαλ θελή, ε κεηαθίλεζε (ηόζν ηνπ θηβσηίνπ όζν θαη ηνπ ξνκπόη) δελ πξαγκαηνπνηείηαη. Κιβώτια Σελικές θέσεις Ρομπότ Τν παηρλίδη Sokoban κπνξεί λα ζεσξεζεί σο έλα πξόβιεκα ζρεδηαζκνύ. Σηελ άζθεζε απηή ζαο δεηείηαη λα πεξηγξάςεηε ηηο ελέξγεηεο ηνπ πξνβιήκαηνο, ρξεζηκνπνηώληαο ηα παξαθάησ θαηεγνξήκαηα: Θέση(x): Τν x είλαη κηα ζέζε ηνπ πξνβιήκαηνο. Τελική(x): Τν x είλαη κηα ζέζε ηνπ πξνβιήκαηνο. Ελεύθερη(x): Τν x είλαη κηα ειεύζεξε ζέζε, δειαδή δελ έρεη νύηε θηβώηην νύηε ξνκπόη. Κατειλημμένη(x): Τν x είλαη κηα θαηεηιεκκέλε ζέζε, δειαδή πεξηέρεη είηε έλα θηβώηην είηε έλα ξνκπόη. Κιβώτιο(x): Τν x είλαη έλα θηβώηην. Ρομπότ(x): Τν x είλαη έλα ξνκπόη. ΚιβωτίοΣε(x,y): Τν θηβώηην x βξίζθεηαη ζηε ζέζε y. ΡομπότΣε(x,y): Τν ξνκπόη x βξίζθεηαη ζηε ζέζε y. Κατεύθσνση(x): Τν x είλαη κηα θαηεύζπλζε (επάλσ, θάησ, αξηζηεξά ή δεμηά).
ειτονικό(x,y,z): Τν y είλαη γεηηνληθό ηνπ x πξνο ηελ θαηεύζπλζε z. Δηδηθόηεξα, ζην πξόβιεκα ππάξρνπλ δύν ελέξγεηεο: Ζ κεηαθίλεζε ηνπ ξνκπόη ρσξίο ηαπηόρξνλε ώζεζε θάπνηνπ θηβσηίνπ θαη ε κεηαθίλεζε ηνπ ξνκπόη κε ηαπηόρξνλε ώζεζε θάπνηνπ θηβσηίνπ. ηα θάζε κία από απηέο ηηο δύν ελέξγεηεο δεηείηαη λα θαηαγξαθνύλ νη πξνϋπνζέζεηο θαη ηα απνηειέζκαηά (επηδξάζεηο) ηνπο. πάντηση: Δλέξγεηα: Μετακίνηση(r, x, y, dir): Πξνϋπνζέζεηο: Ρομπότ(r), Θέση(x), Θέση(y), Κατεύθσνση(dir), ειτονικό(x,y,dir), ΡομπότΣε(r,x), Ελεύθερη(y) Δπηδξάζεηο: ΡομπότΣε(r,x), ΡομπότΣε(r,y), Ελεύθερη(x), Ελεύθερη(y), Κατειλημμένη(x), Κατειλημμένη(y) Δλέξγεηα: Ώθηση(r, x, y, z, p, dir): Πξνϋπνζέζεηο: Ρομπότ(r), Θέση(x), Θέση(y), Θέζε(z), Κατεύθσνση(dir), Κιβώτιο(p), ειτονικό(x,y,dir), ειτονικό(y,z,dir), ΡομπότΣε(r,x), ΚιβώτιοΣε(p,y), Ελεύθερη(z) Δπηδξάζεηο: ΡομπότΣε(r,x), ΡομπότΣε(r,y), ΚιβώτιοΣε(p,y), ΚιβώτιοΣε(p,z), Ελεύθερη(x), Ελεύθερη(z), Κατειλημμένη(x), Κατειλημμένη(z) ΠΝΣΗΣΕ 4 ΠΟ Σ ΠΡΠΝΩ 5 ΘΕΜΣ (Δλδεηθηηθέο ιύζεηο ζα αλαξηεζνύλ κεηά ηελ εμέηαζε ζην site ηνπ καζήκαηνο)