ΘΕΜΑ 1 ο (2.5 κνλάδεο) ΠΑΝΕΠΙΣΗΜΙΟ ΜΑΚΕΔΟΝΙΑ ΟΙΚΟΝΟΜΙΚΩΝ ΚΑΙ ΚΟΙΝΩΝΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΣΜΗΜΑ ΕΦΑΡΜΟΜΕΝΗ ΠΛΗΡΟΦΟΡΙΚΗ ΣΕΥΝΗΣΗ ΝΟΗΜΟΤΝΗ Σελικέρ εξετάσειρ Σπίτη 23 Ιανοςαπίος 2007 Διάπκεια: 12:00-15:00 Κσδηθνπνηείζηε θαη ιύζηε ην πξόβιεκα ησλ 4 βαζηιηζζώλ κε ηνπο εμήο ελαιιαθηηθνύο ηξόπνπο: α) Με απμεηηθή δηαηύπσζε θαη αλαδήηεζε πξώηα θαηά βάζνο. Δμεξεπλείζηε νιόθιεξν ην ρώξν αλαδήηεζεο γηα λα εληνπίζεηε όιεο ηηο ελαιιαθηηθέο ιύζεηο. (1.25) β) Με δηαηύπσζε κε πιήξεηο θαηαζηάζεηο θαη αλαδήηεζε αλαξξίρεζεο ιόθσλ. Φξεζηκνπνηείζηε σο επξεηηθή ζπλάξηεζε ην πιήζνο ησλ δεπγώλ βαζηιηζζώλ πνπ αιιειναπεηινύληαη. Πεξηγξάςηε ηε δηαδηθαζία κέρξη λα βξείηε ηελ πξώηε ιύζε. (1.25) Υπόδεημε: Φξεζηκνπνηείζηε δηαλύζκαηα 4 ζέζεσλ γηα λα πεξηγξάςεηε ηηο δηάθνξεο θαηαζηάζεηο. Σε θάζε ζέζε ηνπ δηαλύζκαηνο λα ππάξρεη έλαο αξηζκόο από ην 0 έσο ην 4. Κάζε έλαο από ηνπο 4 αξηζκνύο ηνπ δηαλύζκαηνο αληηζηνηρεί ζε κηα από ηηο 4 ζηήιεο (αξηζκνύληαη από αξηζηεξά πξνο ηα δεμηά), ελώ ε ηηκή ηνπ θάζε αξηζκνύ δειώλεη ηε γξακκή ζηελ νπνία έρεη ηνπνζεηεζεί ε βαζίιηζζα απηήο ηεο ζηήιεο (αξηζκνύληαη από πάλσ πξνο ηα θάησ). Δηδηθά ν αξηζκόο 0 δειώλεη όηη δελ έρεη αθόκε ηνπνζεηεζεί βαζίιηζζα ζηελ αληίζηνηρε ζηήιε. Γηα παξάδεηγκα, ην δηάλπζκα 0000 αληηζηνηρεί ζε κία άδεηα ζθαθηέξα, ην 1300 δειώλεη όηη έρνπλ ηνπνζεηεζεί βαζίιηζζεο ζηηο δύν αξηζηεξόηεξεο ζηήιεο θαη κάιηζηα ζηελ πξώηε θαη ηξίηε γξακκή αληίζηνηρα ελώ ην δηάλπζκα 1111 δειώλεη όηη ππάξρεη κία βαζίιηζζα ζε θάζε κία από ηηο ηέζζεξηο ζηήιεο θαη κάιηζηα όιεο βξίζθνληαη ζηελ πξώηε γξακκή. Απάντηση: α) Με απμεηηθή δηαηύπσζε μεθηλάκε από κηα άδεηα ζθαθηέξα θαη ζε θάζε βήκα πξνζζέηνπκε κηα λέα βαζίιηζζα ζε ζέζε πνπ λα κελ απεηιείηαη από ηηο ήδε ηνπνζεηεκέλεο. Γηα λα πεξηνξίζνπκε ην ρώξν αλαδήηεζεο ζεσξνύκε όηη θάζε κία από ηηο ηέζζεξηο βαζίιηζζεο επηηξέπεηαη λα ηνπνζεηεζεί ζε δηαθνξεηηθή ζηήιε, θαη ηνπνζεηνύκε ηηο 4 βαζίιηζζεο κε ηε ζεηξά, μεθηλώληαο από ηελ αξηζηεξή ζηήιε θαη πξνρσξώληαο πξνο ηα δεμηά. Ο παξαθάησ πίλαθαο πεξηγξάθεη ηε δηαδηθαζία εθαξκνγήο ηνπ αιγνξίζκνπ πξώηα ζε βάζνο: # ύνορο αναζήτησης Σρέτοσσα κατάσταση Παιδιά 1 0000 0000 1000, 2000, 3000, 4000 2 1000, 2000, 3000, 4000 1000 1300, 1400 3 1300, 1400, 2000, 3000, 4000 1300-4 1400, 2000, 3000, 4000 1400 1420 5 1420, 2000, 3000, 4000 1420-6 2000, 3000, 4000 2000 2400 7 2400, 3000, 4000 2400 2410 8 2410, 3000, 4000 2410 2413 9 2413 2413 Λύση! 10 3000, 4000 3000 3100 11 3100, 4000 3100 3140 12 3140, 4000 3142 Λύση!
13 4000 4000 4100, 4200 14 4100, 4200 4100 4130 15 4130, 4200 4130-16 4200 4200-17 Σέλος αναζήτησης Η ιύζε 2413 αληηζηνηρεί ζηελ θαηάζηαζε: Η ιύζε 3142 αληηζηνηρεί ζηελ θαηάζηαζε: Απηέο είλαη θαη νη δύν κνλαδηθέο ιύζεηο ηνπ πξνβιήκαηνο. Οη δύν ιύζεηο είλαη ζπκκεηξηθέο σο πξνο νξηδόληην (ή θαηαθόξπθν) άμνλα πνπ δηέξρεηαη από ην κέζν ηεο ζθαθηέξαο. Πξαθηηθά ζα κπνξνύζακε λα απνθύγνπκε λα ηηο βξνύκε θαη ηηο δύν, εμνηθνλνκώληαο πνιύηηκν ππνινγηζηηθό ρξόλν, εάλ παξαηεξνύζακε όηη από ηα παηδηά ηεο 0000, ην 1000 είλαη ζπκκεηξηθό κε ην 4000, ελώ ην 2000 είλαη ζπκκεηξηθό κε ην 3000, άξα δελ ρξεηαδόηαλ λα εμεηάζνπκε ηα 3000 θαη 4000. β) Σηε δηαηύπσζε κε πιήξεηο θαηαζηάζεηο μεθηλάκε από κηα αξρηθή θαηάζηαζε ζηελ νπνία όιεο νη βαζίιηζζεο είλαη πάλσ ζηε ζθαθηέξα κε ελδερόκελεο σζηόζν απεηιέο κεηαμύ ηνπο θαη ζηε ζπλέρεηα επηιέγνπκε λα θάλνπκε κεηαθηλήζεηο ησλ βαζηιηζζώλ έηζη ώζηε λα κεησζνύλ νη απεηιέο. Κάζε βαζίιηζζα κπνξεί λα κεηαθηλεζεί κόλν κέζα ζηε ζηήιε ηεο. Οη δπλαηέο κεηαθηλήζεηο βαζκνινγνύληαη κε βάζε ην πιήζνο ησλ απεηιώλ θαη επηιέγεηαη πάληα ε θαιύηεξε κεηαθίλεζε, ελώ νη ππόινηπεο μερληνύληαη. Έζησ όηη αξρηθή είλαη ε θαηάζηαζε 1111 6, όπνπ 6 ην πιήζνο ησλ δεπγαξηώλ βαζηιηζζώλ ηα νπνία αιιειναπεηινύληαη. Η εθαξκνγή ηνπ αιγνξίζκνπ αλαξξίρεζεο ιόθσλ κε ηε ζπγθεθξηκέλε δηαηύπσζε θαίλεηαη πίλαθα πνπ αθνινπζεί: # Σρέτοσσα κατάσταση Παιδιά 1 11116 2111 4, 3111 4, 4111 4, 1211 5, 1311 4, 1411 3, 1121 5, 1131 4, 1141 3, 1112 4, 1113 4, 1114 4 2 1411 3 2411 1, 1111 6, 1421 2, 1412 2, 3411 3, 1211 5, 1431 2, 1413 1, 4411 3, 1311 4, 1441 2, 1414 2 3 2411 1 1411 3, 2111 4, 2421 2, 2412 3, 3411, 2211 3, 2431 1, 2413 0, 4411 3, 2311 3, 2441 2, 2414 1, 4 2413 0 Λύζε! Σηελ πεξίπησζε ηεο αλαξξίρεζεο ιόθσλ δελ έρεη λόεκα λα ζπλερίζνπκε ηελ αλαδήηεζε κεηά ηελ εύξεζε ηεο πξώηεο ιύζεο, κηαο θαη ν αιγόξηζκνο απηόο δελ εγγπάηαη όηη ζα βξεη όιεο ηηο ιύζεηο. ΘΕΜΑ 2 ο (2.5 κνλάδεο) Γίλεηαη ην παξαθάησ ζηηγκηόηππν κηαο απινπνηεκέλεο εθδνρήο ηνπ παηρληδηνύ SUDOKU.
1 2 Δηδηθόηεξα, νη θαλόλεο είλαη νη εμήο: Σπκπιεξώζηε ηα θελά ηεηξάγσλα κε αξηζκνύο από ην 1 έσο ην 4 έηζη ώζηε: α) Να κελ εκθαλίδεηαη δύν ή πεξηζζόηεξεο θνξέο ν ίδηνο αξηζκόο ζηελ ίδηα ζεηξά ηνπ κεγάινπ ηεηξαγώλνπ. β) Να κελ εκθαλίδεηαη δύν ή πεξηζζόηεξεο θνξέο ν ίδηνο αξηζκόο ζηελ ίδηα ζηήιε ηνπ κεγάινπ ηεηξαγώλνπ. γ) Να κελ εκθαλίδεηαη δύν ή πεξηζζόηεξεο θνξέο ν ίδηνο αξηζκόο ζε θάζε έλα από ηα ηέζζεξα ππνηεηξάγσλα 2x2. Μνληεινπνηήζηε ην πξόβιεκα σο πξόβιεκα ηθαλνπνίεζεο πεξηνξηζκώλ θαη βξείηε όιεο ηηο ιύζεηο ηνπ ρξεζηκνπνηώληαο έιεγρν ζπλέπεηαο θαη αλαδήηεζε. Υπόδεημε: Γηα λα νξίζεηε όηη ηξεηο κεηαβιεηέο X,Y,Z είλαη όιεο δηαθνξεηηθέο αλά δύν κεηαμύ ηνπο, αληί γηα X Y, X Z, Y Z, γξάςηε πην ζύληνκα all_different(x,y,z). Ο πεξηνξηζκόο all_different κπνξεί λα επεθηαζεί θαη γηα πεξηζζόηεξεο από ηξεηο κεηαβιεηέο. 4 Απάντηση: Οξίδνπκε ηόζεο κεηαβιεηέο πεξηνξηζκώλ, όζα είλαη ηα ηεηξάγσλα. Τν πεδίν θάζε κίαο εμ απηώλ είλαη ην ζύλνιν {1,2,3,4}. Ολνκάδνπκε ηηο κεηαβιεηέο σο εμήο: Α Β C D E F G H I J K L M N O P Οη πεξηνξηζκνί είλαη νη εμήο: all_different(a,b,c,d). all_different(e,f,g,h). all_different(i,j,k,l). all_different(m,n,o,p). all_different(a,e,i,m). all_different(b,f,j,n). all_different(c,g,k,o). all_different(d,h,l,p). all_different(a,b,e,f). all_different(c,d,g,h). all_different(i,j,m,n). all_different(k,l,o,p). (C1) (C2) (C3) (C4) (C5) (C6) (C7) (C8) (C9) (C10) (C11) (C12) Ήδε γλσξίδνπκε ηηο ηηκέο ηξηώλ ζέζεσλ, θαη εηδηθόηεξα όηη Α=1, G=2 θαη Ο=4. Άξα κπνξνύκε λα πνύκε όηη αξρηθά ηα πεδία ησλ κεηαβιεηώλ είλαη ηα εμήο: 1 1,2,3,4 1,2,3,4 1,2,3,4 1,2,3,4 1,2,3,4 2 1,2,3,4 1,2,3,4 1,2,3,4 1,2,3,4 1,2,3,4 1,2,3,4 1,2,3,4 4 1,2,3,4
Σηε ζπλέρεηα, εθαξκόδνληαο ηνπο πεξηνξηζκνύο αξρίδνπκε θαη δηαγξάθνπκε ηηκέο από ηα πεδία ησλ κεηαβιεηώλ. Γηα παξάδεηγκα, κπνξνύκε λα δηαγξάςνπκε από ην πεδίν ηεο C ηηο ηηκέο 1 (από C1), 2 (από C10) θαη 4 (από C7), άξα C=3. Έηζη ν πίλαθαο γίλεηαη: 1 1,2,3,4 3 1,2,3,4 1,2,3,4 1,2,3,4 2 1,2,3,4 1,2,3,4 1,2,3,4 1,2,3,4 1,2,3,4 1,2,3,4 1,2,3,4 4 1,2,3,4 Ακέζσο κεηά, ιόγσ ηνπ C7, δηαγξάθνπκε από ηελ K ηηο ηηκέο 2, 3 θαη 4, νπόηε έρνπκε: 1 1,2,3,4 3 1,2,3,4 1,2,3,4 1,2,3,4 2 1,2,3,4 1,2,3,4 1,2,3,4 1 1,2,3,4 1,2,3,4 1,2,3,4 4 1,2,3,4 Παξαιείπνληαο κεξηθά βήκαηα, δηαγξάθνπκε επαλαιεπηηθά ηηκέο πνπ εκθαλίδνληαη δύν θνξέο ζηελ ίδηα γξακκή, ζηήιε ή ππν-ηεηξάγσλν 2x2, νπόηε θαηαιήγνπκε ζηα παξαθάησ πεδία ηηκώλ: 1 2 3 4 3,4 3,4 2 1 2,3,4 3,4 1 2,3 2,3 1,3 4 2,3 Σην ζεκείν απηό ήδε έρνπκε βξεη ηηο ηηκέο δύν αθόκε κεηαβιεηώλ, σζηόζν δελ κπνξνύκε λα θάλνπκε θακία άιιε δηαγξαθή ηηκώλ, άξα είκαζηε αλαγθαζκέλνη λα θάλνπκε αλάζεζε ηηκήο. Με δεδνκέλν όηη όιεο νη κεηαβιεηέο ζπκκεηέρνπλ ζην ίδην πιήζνο πεξηνξηζκώλ, επηιέγνπκε ζηελ ηύρε ηε κεηαβιεηή Δ θαη ηεο αλαζέηνπκε ηελ ηηκή E=3. Σηε ζπλέρεηα εθαξκόδνπκε επαλαιεπηηθά ηνλ έιεγρν ζπλέπεηαο θαη ην απνηέιεζκα είλαη ην εμήο: 1 2 3 4 3 4 2 1 4 3 1 2 2 1 4 2 ην νπνίν απνηειεί θαη κία ιύζε ηνπ πξνβιήκαηνο. Γηα λα βξνύκε ελαιιαθηηθέο ιύζεηο δνθηκάδνπκε ηελ ελαιιαθηηθή ηηκή γηα ηε κεηαβιεηή Δ, δειαδή έζησ Δ=4. Δθαξκόδνληαο θαη πάιη επαλαιεπηηθά ηνλ έιεγρν ζπλέπεηαο ην απνηέιεζκα είλαη ην εμήο: 1 2 3 4 4 3 2 1 2,3 4 1 2,3 2,3 1 4 2,3 Σην ζεκείν απηό θαη πάιη δελ κπνξνύκε λα θάλνπκε άιιε δηαγξαθή ηηκήο από ηα πεδία ησλ κεηαβιεηώλ, νπόηε αλαγθαδόκαζηε θαη πάιη λα θάλνπκε αλάζεζε ηηκήο. Δπηιέγνπκε ζηελ ηύρε ηε κεηαβιεηή I θαη έζησ I=2. Τν απνηέιεζκα, κεηά ηελ εθαξκνγή ηνπ ειέγρνπ ζπλέπεηαο, είλαη ην: 1 2 3 4 4 3 2 1 2 4 1 3 3 1 4 2 πνπ απνηειεί θαη ελαιιαθηηθή ιύζε ηνπ πξνβιήκαηνο. Δάλ ζέινπκε λα βξνύκε θαη άιιε ελαιιαθηηθή ιύζε ειέγρνπκε ηελ αλάζεζε Ι=3, ε νπνία, κεηά ηελ εθαξκνγή ηνπ ειέγρνπ ζπλέπεηαο, καο νδεγεί ζηε ιύζε: 1 2 3 4 4 3 2 1 3 4 1 2 2 1 4 3
Βξήθακε ινηπόλ ζπλνιηθά ηξεηο ελαιιαθηηθέο ιύζεηο ηνπ ζπγθεθξηκέλνπ πξνβιήκαηνο Sudoku. ΘΕΜΑ 3 ο (2.5 κνλάδεο) Έζησ κηα απινπνηεκέλε εθδνρή ηνπ θαξηνπαηρληδηνύ UNO (έλα από ηα πην δεκνθηιή παηρλίδηα κε θάξηεο ζηελ Ακεξηθή). Οη θάξηεο ραξαθηεξίδνληαη από δύν ηδηόηεηεο: Φξώκα: Άζπξν (Α) ή Μαύξν (Μ). Αμία: 0, 1, 2, 3 ή 4. Σηελ αξρή ηνπ παηρληδηνύ θάζε παίθηεο ιακβάλεη ηέζζεξηο (4) θάξηεο, νη νπνίεο ζεσξνύκε όηη είλαη θαλεξέο θαη ζηνλ αληίπαιν. Έζησ νη δύν καο παίθηεο, Α θαη Β, νη νπνίνη έιαβαλ ηηο αθόινπζεο θάξηεο: Παίθηεο Α: 0 Α, 1 Μ, 1 Α, 4 Α Παίθηεο Β: 1 Α, 2 Μ, 2 Α, 3 Α Οη δύν παίθηεο παίδνπλ ελαιιάμ. Έζησ όηη μεθηλά πξώηνο ν παίθηεο Α. Απηόο επηιέγεη κία από ηηο θάξηεο ηνπ θαη ηελ ηνπνζεηεί πάλσ ζην ηξαπέδη, μεθηλώληαο έηζη ηε δεκηνπξγία ελόο ζσξνύ από θάξηεο. Σηε ζπλέρεηα, νη δύν παίθηεο ελαιιάζζνληαη πξνζζέηνληαο θάζε θνξά κία από ηηο δηθέο ηνπο θάξηεο ζηελ θνξπθή ηνπ ζσξνύ, εθόζνλ πιεξείηαη κία από ηηο παξαθάησ πξνϋπνζέζεηο: Η θάξηα πνπ πξνζζέηνπλ είλαη ίδην ρξώκα κε ηελ θάξηα ζηελ θνξπθή ηνπ ζσξνύ. Η θάξηα πνπ πξνζζέηνπλ είλαη ίδηαο αμίαο κε ηελ θάξηα ζηελ θνξπθή ηνπ ζσξνύ. Δάλ θάπνηνο παίθηεο δελ έρεη κηα θαηάιιειε θάξηα λα πξνζζέζεη ζην ζσξό, ράλεη ηε ζεηξά ηνπ. Θεσξνύκε όηη ην παηρλίδη παίδεηαη γηα δύν κόλν γύξνπο (δύν θηλήζεηο γηα θάζε παίθηε). Σην ηέινο ησλ δύν γύξσλ θάζε παίθηεο ρξεώλεηαη ηελ αζξνηζηηθή αμία ησλ θαξηώλ πνπ ηνπ έκεηλαλ ζηα ρέξηα, ελώ ληθεηήο αλαδεηθλύεηαη απηόο πνπ έρεη ηε κηθξόηεξε αζξνηζηηθή αμία. Καηαζθεπάζηε ην δέλδξν ηνπ παηρληδηνύ εάλ ν παίθηεο Α μεθηλήζεη κε ηελ θάξηα 0 Α. Σεκείσζε: Σην πξαγκαηηθό παηρλίδη νη θάξηεο είλαη πνιύ πεξηζζόηεξεο (ηέζζεξα ρξώκαηα, αμίεο από ην 0 έσο ην 9, εηδηθέο θάξηεο θιπ), ν θάζε παίθηεο δελ γλσξίδεη ηηο θάξηεο ηνπ αληίπαινπ, κπνξνύλ λα ππάξρνπλ πεξηζζόηεξνη από δύν παίθηεο θαη θπζηθά ππάξρνπλ αλάινγνη θαλόλεο (http://en.wikipedia.org/wiki/uno_(game), κηα freeware έθδνζε ηνπ παηρληδηνύ ζα βξείηε κεηά ηελ εμέηαζε ζην site ηνπ καζήκαηνο). Απάντηση: Δάλ ν παίθηεο Α θαηεβάζεη αξρηθά ηελ θάξηα 0 Α, ν παίθηεο Β κπνξεί λα απαληήζεη κε ηηο 1 Α, 2 Α θαη 3 Α. Άξα ην δέλδξν ηνπ παηρληδηνύ γηα ηνλ πξώην γύξν είλαη ην: 0 Α 1 Α 2 Α 3 Α Μεηά ηελ απάληεζε 1 Α ηνπ Β, ν Α κπνξεί λα παίμεη 1 Μ, 1 Α ή 4 Α. Μεηά ηελ απάληεζε 2 Α ηνπ Β, ν Α κπνξεί λα παίμεη 1 Α ή 4 Α. Τέινο κεηά ηελ απάληεζε 3 Α ηνπ Β, ν Α κπνξεί λα παίμεη 1 Α ή 4 Α. Τν δέλδξν ηνπ παηρληδηνύ κε 3 ζηξώζεηο είλαη ην:
0 Α 1 Α 2 Α 3 Α 1 Μ 1 Α 4 Α 1 Α 4 Α 1 Α 4 Α Τέινο, γηα θάζε δεύηεξε θίλεζε ηνπ Α ππνινγίδνπκε ηηο δπλαηέο δεύηεξεο θηλήζεηο ηνπ Β όπσο θαίλεηαη ζην παξαθάησ ζρήκα: 0 Α 1 Α 2 Α 3 Α 1 Μ 1 Α 4 Α 1 Α 4 Α 1 Α 4 Α 2 Μ 2 Α 3 Α 2 Α 3 Α 1 Α 3 Α 1 Α 3 Α 1 Α 2 Α 1 Α 2 Α Βαζκνινγνύκε ηα θύιια κε ηε δηαθνξά ηνπ αζξνίζκαηνο ηεο αμίαο ησλ θύιισλ πνπ έρεη ζηα ρέξηα ηνπ ν Β κείνλ ην άζξνηζκα ηεο αμίαο ησλ θύιισλ πνπ έρεη ζηα ρέξηα ηνπ ν Α. Δίλαη πξνθαλέο πσο όζν κεγαιύηεξε είλαη ε παξαπάλσ δηαθνξά, ηόζν ην θαιύηεξν γηα ηνλ Α, ελώ όζν κηθξόηεξε είλαη ε παξαπάλσ δηαθνξά, ηόζν ην θαιύηεξν γηα ηνλ Β. Δηδηθόηεξα, εάλ ε δηαθνξά απηή είλαη ζεηηθή, έρεη θεξδίζεη ν Α, αλ είλαη αξλεηηθή έρεη θεξδίζεη ν Β θαη αλ είλαη 0 ηόηε έρνπκε ηζνπαιία. Άξα, κε απηό ηνλ ηξόπν βαζκνιόγεζεο ησλ θύιισλ ν Α είλαη ν MAX θαη ν Β είλαη ν MIN. Τν ζρήκα πνπ αθνινπζεί δείρλεη νιόθιεξε ηελ αλάιπζε θαη ηνλ ληθεηή. Τν δέλδξν μεθηλά κε πξώηε θίλεζε ηνπ MIN, κηαο θαη ε πξώηε θίλεζε ηνπ MAX καο έρεη ήδε δνζεί. Τειηθά βιέπνπκε όηη εάλ θαη νη δύν παίθηεο παίμνπλ ζσζηά, θεξδίδεη ν Α (σο MAX) κε δηαθνξά 1 βαζκνύ. Οη θαιύηεξεο πξώηεο θηλήζεηο γηα ηνλ Β (MIN) θαίλνληαη κε παρηά γξακκή θαη ζθηαζκέλα ηεηξάγσλα.
ΜIN 1 0 Α ΜAX 2 1 Α 1 2 Α 1 3 Α ΜIN 0 1 Μ -1 1 Α 2 4 Α -2 1 Α 1 4 Α -2 1 Α 1 4 Α 2 Μ 2 Α 3 Α 2 Α 3 Α 1 Α 3 Α 1 Α 3 Α 1 Α 2 Α 1 Α 2 Α 5-5=0 5-5=0 4-5=-1 5-2=3 5-5=0 3-5=-2 5-2=3 3-2=1 4-5=-1 3-5=-2 4-2=2 3-2=1 4-2=2 ΘΕΜΑ 4 ο (2.5 κνλάδεο) Γίλεηαη ην παξαθάησ ςεθηαθό θύθισκα ελόο πιήξε αζξνηζηή ελόο bit: Οη πύιεο A 1 θαη A 2 είλαη πύιεο AND, νη πύιεο X 1 θαη Φ 2 είλαη πύιεο XOR θαη ε πύιε O 1 είλαη πύιε OR. Γίλνληαη επίζεο παξαθάησ δηάθνξεο ζπλαξηήζεηο θαη θαηεγνξήκαηα πνπ κπνξνύλ λα ρξεζηκνπνηεζνύλ γηα ηελ πεξηγξαθή ςεθηαθώλ θπθισκάησλ: Σπλαξηήζεηο: Εξ(y, x): Ειζ(y, x): Σήμα(x): Τύπορ(x): Καηεγνξήκαηα: Πύλη(x): Ακποδέκηηρ(x): Σςνδεδεμένο(x,y): Η y (ζε ζεηξά) έμνδνο ηεο πύιεο x. Γηα παξάδεηγκα, ην Εξ(1,Χ 1 ) αλαθέξεηαη ζηελ πξώηε έμνδν ηεο πύιεο X 1. Η y (ζε ζεηξά) είζνδνο ηεο πύιεο x. Γηα παξάδεηγκα, ην Ειζ(1,Χ 1 ) αλαθέξεηαη ζηελ πξώηε είζνδν ηεο πύιεο X 1. Η ηηκή ηνπ ζήκαηνο ηνπ αθξνδέθηε (είζνδνο ή έμνδνο θάπνηαο πύιεο) x, ε νπνία κπνξεί λα είλαη 1 ή 0. Γηα παξάδεηγκα, ην Σήμα(Ειζ(1,Χ 1 )) αλαθέξεηαη ζηελ ηηκή ζήκαηνο ζηελ 1 ε είζνδν ηεο πύιεο X 1. Ο ηύπνο ηεο ινγηθήο πύιεο Χ, π.ρ. Τύπορ(XOR 1 )=XOR. Τν αληηθείκελν x είλαη ινγηθή πύιε. Τν αληηθείκελν x είλαη αθξνδέθηεο. Ο αθξνδέθηεο x είλαη ζπλδεδεκέλνο κε ηνλ αθξνδέθηε y. Γηα παξάδεηγκα, ην Σςνδεδεμένο(Εξ(1, X 1 ), Ειζ(1, X 2 )) δειώλεη όηη ε 1 ε έμνδνο ηεο πύιεο Χ 1 είλαη ζπλδεδεκέλε κε ηελ πξώηε είζνδν ηεο πύιεο Χ 2. α) Φξεζηκνπνηώληαο ηηο παξαπάλσ ζπλαξηήζεηο θαη ηα θαηεγνξήκαηα, γξάςηε ζε ινγηθή πξώηεο ηάμεο ηηο αθόινπζεο πξνηάζεηο: (1.5)
α1) Αλ δύν αθξνδέθηεο είλαη ζπλδεδεκέλνη, ηόηε έρνπλ ην ίδην ζήκα α2) Τν ζήκα ζε θάζε αθξνδέθηε είλαη είηε 1 είηε 0. α3) Τν θαηεγόξεκα Σςνδεδεμένο είλαη αληηκεηαζεηηθό. α4) Η έμνδνο κηαο πύιεο OR είλαη 1 εάλ θαη κόλν εάλ νπνηαδήπνηε από ηηο εηζόδνπο ηεο είλαη 1. α5) Η έμνδνο κηαο πύιεο AND είλαη 0 εάλ θαη κόλν εάλ νπνηαδήπνηε από ηηο εηζόδνπο ηεο είλαη 0. α6) Η έμνδνο κηαο πύιεο XOR είλαη 1 εάλ θαη κόλν εάλ νη είζνδνί ηεο είλαη δηαθνξεηηθέο. α7) Η έμνδνο κηα πύιεο NOT είλαη δηαθνξεηηθή από ηελ είζνδό ηεο. β) Κσδηθνπνηήζηε ην ςεθηαθό θύθισκα ηνπ δπαδηθνύ αζξνηζηή. (1) Απάντηση: α) α1) x, y, Ακποδέκηηρ(x) Ακποδέκηηρ(y) Σςνδεδεμένο(x,y) Σήμα(x)=Σήμα(y) α2) x, Ακποδέκηηρ(x) Σήμα(x)=0 Σήμα(x)=1. α3) x, y, Σςνδεδεμένο(x,y) Σςνδεδεμένο(y,x) α4) x, Πύλη(x) Τύπορ(x)=OR (Σήμα(Εξ(1,x))=1 Σήμα(Ειζ(1,x))=1 Σήμα(Ειζ(2,x))=1) α5) x, Πύλη(x) Τύπορ(x)=AND (Σήμα(Εξ(1,x))=0 Σήμα(Ειζ(1,x))=0 Σήμα(Ειζ(2,x))=0) α6) x, Πύλη(x) Τύπορ(x)=XOR (Σήμα(Εξ(1,x))=1 Σήμα(Ειζ(1,x)) Σήμα(Ειζ(2,x))) α7) x, Πύλη(x) Τύπορ(x)=ΝΟΤ Σήμα(Εξ(1,x)) Σήμα(Ειζ(1,x)) β) Πύλη(Χ 1 ) Πύλη(Χ 2 ) Πύλη(Α 1 ) Πύλη(Α 2 ) Πύλη(Ο 1 ) Τύπορ(Χ 1 )=XOR Τύπορ(Χ 2 )=XOR Τύπορ(A 1 )=AND Τύπορ(A 2 )=AND Τύπορ(O 1 )=NOT Σςνδεδεμένο( Εξ(1, X 1 ), Ειζ(1, X 2 ) ) Σςνδεδεμένο( Ειζ(1, C 1 ), Ειζ(1, X 1 ) ) Σςνδεδεμένο( Εξ(1, X 1 ), Ειζ(2, A 2 ) ) Σςνδεδεμένο( Ειζ(1, C 1 ), Ειζ(1, A 1 ) ) Σςνδεδεμένο( Εξ(1, A 2 ), Ειζ(1, O 1 ) ) Σςνδεδεμένο( Ειζ(2, C 1 ), Ειζ(2, X 1 ) ) Σςνδεδεμένο( Εξ(1, A 1 ), Ειζ(2, O 1 ) ) Σςνδεδεμένο( Ειζ(2, C 1 ), Ειζ(2, A 1 ) ) Σςνδεδεμένο( Εξ(1, X 2 ), Εξ(1, C 1 ) ) Σςνδεδεμένο( Ειζ(3, C 1 ), Ειζ(2, X 2 ) ) Σςνδεδεμένο( Εξ(1, O 1 ), Εξ(2, C 1 ) ) Σςνδεδεμένο( Ειζ(3, C 1 ), Ειζ(1, A 2 ) ). Θέμα 5 ο (2.5 κνλάδεο) Έζησ ην παξαθάησ ζηηγκηόηππν από ηνλ θόζκν ησλ θύβσλ. Α Β C D E
Σηόρνο είλαη λα ηνπνζεηεζεί ν θύβνο C πάλσ ζηνλ θύβν Β θαη ν θύβνο Δ πάλσ ζηνλ θύβν C. Γελ καο ελδηαθέξεη ε ζέζε ησλ θύβσλ A θαη D ζηελ ηειηθή θαηάζηαζε. Γηα ηελ πεξηγξαθή ηνπ θόζκνπ ησλ θύβσλ ρξεζηκνπνηνύκε ηα εμήο θαηεγνξήκαηα: On(x,y): Ο θύβνο x είλαη πάλσ ζηνλ θύβν y. On_table(x): Ο θύβνο x βξίζθεηαη πάλσ ζην ηξαπέδη. Clear(x): Ο θύβνο x έρεη ειεύζεξε ηελ πάλσ έδξα ηνπ. Οη δηαζέζηκεο ελέξγεηεο είλαη νη εμήο: Move(x,y,z): Μεηαθίλεζε ηνπ θύβνπ x από ηνλ θύβν y ζηνλ θύβν z. Πξνϋπνζέζεηο: On(x,y), Clear(x), Clear(z) Απνηειέζκαηα: On(x,y), On(x,z), Clear(y), Clear(z) Move_from_table(x,y): Μεηαθίλεζε ηνπ θύβνπ x από ην ηξαπέδη πάλσ ζηνλ θύβν y. Πξνϋπνζέζεηο: On_table(x), Clear(x), Clear(y) Απνηειέζκαηα: On_table(x), On(x,y), Clear(y) Move_to_table(x,y): Μεηαθίλεζε ηνπ θύβνπ x από ηνλ θύβν y ζηνλ ηξαπέδη. Πξνϋπνζέζεηο: On(x,y), Clear(x) Απνηειέζκαηα: On(x,y), On_table(x), Clear(y) Λύζηε ην πξόβιεκα ρξεζηκνπνηώληαο πξνο ηα πίζσ αλαδήηεζε ζην ρώξν ησλ θαηαζηάζεσλ (νπηζζνρώξεζε). Θεσξείζηε όηη έρεηε ζηε δηάζεζε ζαο επξεηηθή ζπλάξηεζε ε νπνία ζην ζπγθεθξηκέλν πξόβιεκα ζαο ππνδεηθλύεη λα επηιέγεηε πάληα ηε βέιηηζηε ελέξγεηα. Πξνζνρή: Ο ζρεδηαζκόο κε πξνο ηα πίζσ αλαδήηεζε ζην ρώξν ησλ θαηαζηάζεσλ παξάγεη γξακκηθά πιάλα (ζε αληίζεζε κε ην ζρεδηαζκό κεξηθήο δηάηαμεο, ν νπνίνο κνινλόηη έρεη επίζεο θαηεύζπλζε πξνο ηα πίζσ, εθαξκόδεηαη ζην ρώξν ησλ πιάλσλ θαη παξάγεη κε-γξακκηθά πιάλα). Απάντηση: Σην ζρεδηαζκό κε νπηζζνρώξεζε θαηαζθεπάδνπκε έλα γξακκηθό πιάλν, μεθηλώληαο από ηνπο ζηόρνπο θαη πξνζζέηνληαο κία-κία ηηο ελέξγεηεο κε ζεηξά αληίζηξνθε ρξνλνινγηθή. Η ελέξγεηα πνπ πξνζηίζεηαη θάζε θνξά ζα πξέπεη λα είλαη ηέηνηα ώζηε λα πξνζζέηεη έλα (ή πεξηζζόηεξα) από ηα γεγνλόηα ηνπ ηξέρνληνο ζπλόινπ ζηόρσλ ρσξίο ηαπηόρξνλα λα δηαγξάθεη θάπνην άιιν. Ο ζηόρνο ζην ζπγθεθξηκέλν πξόβιεκα είλαη ην ζύλνιν ησλ γεγνλόησλ: Goal={On(C,B), On(E,C)} ελώ ε αξρηθή θαηάζηαζε είλαη ε: Initial={On(A,B), Clear(A), On_table(B), On_table(C), Clear(C), On(D,E), Clear(D), On_table(E)} Δπηιέγνπκε λα πξνζζέζνπκε ζην πιάλν ηελ ελέξγεηα: Move_from_table(Ε,C): Μεηαθίλεζε ηνπ θύβνπ Δ από ην ηξαπέδη πάλσ ζηνλ θύβν C. Πξνϋπνζέζεηο: On_table(Δ), Clear(Δ), Clear(C) Απνηειέζκαηα: On_table(Δ), On(Δ,C), Clear(C) Η παξαπάλσ ελέξγεηα πεηπραίλεη ην On(E,C), ρσξίο λα δηαγξάθεη θάπνηνλ άιιν ζηόρν. Τν λέν ζύλνιν ζηόρσλ πξνθύπηεη αλ αθαηξέζνπκε από ην πξνεγνύκελν ζύλνιν ζηόρσλ όζα ιεθηηθά πεηπραίλεη ε ελέξγεηα θαη πξνζζέζνπκε ηα ιεθηηθά ησλ πξνϋπνζέζεσλ ηεο ελέξγεηαο. Έηζη ην λέν ζύλνιν ζηόρσλ είλαη ην εμήο: Goal 1 ={On(C,B), On_table(Δ), Clear(Δ), Clear(C)} Σηε ζπλέρεηα επηιέγνπκε λα πξνζζέζνπκε ζην πιάλν ηελ ελέξγεηα: Move_to_table(D,E): Μεηαθίλεζε ηνπ θύβνπ D από ηνλ θύβν E ζηνλ ηξαπέδη. Πξνϋπνζέζεηο: On(D,E), Clear(D) Απνηειέζκαηα: On(D,E), On_table(D), Clear(E) Η παξαπάλσ ελέξγεηα πεηπραίλεη ην Clear(E), ρσξίο λα δηαγξάθεη θάπνηνλ άιιν ζηόρν. Τν λέν ζύλνιν ζηόρσλ πξνθύπηεη αλ αθαηξέζνπκε από ην πξνεγνύκελν ζύλνιν ζηόρσλ όζα ιεθηηθά
πεηπραίλεη ε ελέξγεηα θαη πξνζζέζνπκε ηα ιεθηηθά ησλ πξνϋπνζέζεσλ ηεο ελέξγεηαο. Έηζη ην λέν ζύλνιν ζηόρσλ είλαη ην εμήο: Goal 2 ={On(C,B), On_table(Δ),, Clear(C), On(D,E), Clear(D)} Σηε ζπλέρεηα επηιέγνπκε λα πξνζζέζνπκε ζην πιάλν ηελ ελέξγεηα: Move_from_table(C,B): Μεηαθίλεζε ηνπ θύβνπ C από ην ηξαπέδη πάλσ ζηνλ θύβν B. Πξνϋπνζέζεηο: On_table(C), Clear(C), Clear(B) Απνηειέζκαηα: On_table(C), On(C,B), Clear(B) Η παξαπάλσ ελέξγεηα πεηπραίλεη ην On(C,B), ρσξίο λα δηαγξάθεη θάπνηνλ άιιν ζηόρν. Τν λέν ζύλνιν ζηόρσλ πξνθύπηεη αλ αθαηξέζνπκε από ην πξνεγνύκελν ζύλνιν ζηόρσλ όζα ιεθηηθά πεηπραίλεη ε ελέξγεηα θαη πξνζζέζνπκε ηα ιεθηηθά ησλ πξνϋπνζέζεσλ ηεο ελέξγεηαο. Έηζη ην λέν ζύλνιν ζηόρσλ είλαη ην εμήο: Goal 3 ={On_table(Δ),, Clear(C), On(D,E), Clear(D), On_table(C), Clear(C), Clear(B)} Σηε ζπλέρεηα επηιέγνπκε λα πξνζζέζνπκε ζην πιάλν ηελ ελέξγεηα: Move_to_table(A,B): Μεηαθίλεζε ηνπ θύβνπ A από ηνλ θύβν B ζηνλ ηξαπέδη. Πξνϋπνζέζεηο: On(A,B), Clear(A) Απνηειέζκαηα: On(A,B), On_table(A), Clear(B) Η παξαπάλσ ελέξγεηα πεηπραίλεη ην Clear(B), ρσξίο λα δηαγξάθεη θάπνηνλ άιιν ζηόρν. Τν λέν ζύλνιν ζηόρσλ πξνθύπηεη αλ αθαηξέζνπκε από ην πξνεγνύκελν ζύλνιν ζηόρσλ όζα ιεθηηθά πεηπραίλεη ε ελέξγεηα θαη πξνζζέζνπκε ηα ιεθηηθά ησλ πξνϋπνζέζεσλ ηεο ελέξγεηαο. Έηζη ην λέν ζύλνιν ζηόρσλ είλαη ην εμήο: Goal 4 ={On_table(Δ),, Clear(C), On(D,E), Clear(D), On_table(C), On(A,B), Clear(A)} Τν παξαπάλσ ζύλνιν ζηόρσλ είλαη ππνζύλνιν ηεο αξρηθήο θαηάζηαζεο, άξα ην πξόβιεκα έρεη ιπζεί. Τν πιάλν ην νπνίν βξέζεθε ηειηθά είλαη ην: Move_to_table(A,B) Move_from_table(C,B) Move_to_table(D,E) Move_from_table(Ε,C) ΑΠΑΝΣΗΣΕ 4 ΑΠΟ ΣΑ ΠΑΡΑΠΑΝΩ 5 ΘΕΜΑΣΑ (Δλδεηθηηθέο ιύζεηο ζα αλαξηεζνύλ κεηά ηελ εμέηαζε ζην site ηνπ καζήκαηνο)