This is an old revision of the document!
Căutare în spațiul stărilor
Scopul laboratorului:
- aprofundarea mecanismului de căutare din prolog
- metode de colectare a rezultatelor
Avantaje prolog
Problemele de backtracking sau de logică pot fi reprezentate, cât și rezolvate cu mare ușurință în Prolog. Să luăm un exemplu de problemă de logică - Problema lui Einstein.
Se poate observa ușurința cu care se pot adăuga noi interogări, cât și modul în care au fost reprezentate informațiile din baza de cunoștințe.
Ziua de naștere - Cheryl
Albert și Bernard trebuie să afle ziua și luna în care s-a născut Cheryl. Albert cunoaște luna de naștere, iar Bernard ziua. Aceștia mai cunosc posibilele zile de naștere:
- 15, 16, 19 - Mai
- 17, 18 - Iunie
- 14, 16 - Iulie
- 14, 15, 17 - Iulie
Discuția dintre cei 2 este următoarea:
Albert: Nu știu când s-a născut Cheryl, însă știu că nici Bernard nu știe.
Bernard: La început nu știam ziua de naștere, însă acum știu.
Albert: Acum știu și eu ziua de naștere.
Încercați pe cont propriu să raționalizați cum și-au dat seama cei doi de ziua de naștere, iar după realizați în Prolog
Torța și podul
Patru persoane ajung la un pod într-o seară. Fiecare persoana traversează podul la o viteza diferită. Vitezele celor 4 persoane sunt:
- A – 1 minut să traverseze podul
- B – 2 minute să traverseze podul
- C – 5 minute să traverseze podul
- D – 8 minute să traverseze podul
Aceștia trebuie să ajungă pe partea cealaltă a podului.
Constrângeri:
- maxim 2 persoane pot merge pe pod
- viteza cu care cele 2 persoane pot traversa podul este dată de minimul dintre viteza de mișcare a persoanelor.
- podul poate fi traversat doar dacă una dintre cele 2 persoane deține torța (podul poate fi trecut și de o singură persoană).
Cerința este să se găsească timpul minim necesar astfel încât toate persoanele să fi trecut podul.
Vârsta Cheryl
Albert și Bernard doresc să știe vârsta prietenei lor, Cheryl. Aceștia primesc următoarele informații (exact în această ordine) pentru a-și putea da seama de vârstă:
- Cheryl are 2 frați mai mici. Produsul vârstelor lor este 144.
- Suma vârstelor este un număr de 2 cifre.
- Frații au aceeași vârstă.
Încercați să vă dați seama câți ani are Cheryl și prind Albert și Bernard de ziua