Plan przygotowania projektu 1. Przygotowanie krótkiego opisu projektu. 2. Opis sposobu zastosowania projektu. 3. Implementacja w języku Prolog: 3.1 definicja regułowego systemu ekspertowego dedykowanego pod realizacje projektu, 3.2 określenie środków reprezentacji wiedzy przez implementowany system w języku Prolog: 3.2.1 reprezentacji ikonicznej, 3.2.2 problemu informatycznego, 3.2.3 reprezentacji symbolicznej, 3.2.4 systemu reguł, 3.2.5 reprezentacji interaktywnej, 3.3 implementacja bloków systemu ekspertowego: 3.3.1 bazy wiedzy, 3.3.2 reprezentacji wiedzy, 3.3.3 sieci semantycznej, operacji, ramy i realizacji, 3.4 implementacja zaprojektowanego interfejsu. Tematy projektów Zad. 1 Sterowanie oświetleniem living-room: definicja opcji oświetleniowych, język interakcji - poleceń, pytań i odpowiedzi, uwzględniający komunikaty proste i złożone. Zad. 2 Sterowanie oświetleniem kuchni: definicja opcji oświetleniowych, język interakcji - poleceń, pytań i odpowiedzi, uwzględniający komunikaty proste i złożone. Zad. 3 Sterowanie oświetleniem stanowiska pracy przy biurku: definicja opcji oświetleniowych, język interakcji - poleceń, pytań i odpowiedzi, uwzględniający komunikaty proste i złożone. Zad. 4 Sterowanie grą w szachy: definicja szachów, język interakcji - poleceń, pytań i odpowiedzi, uwzględniający komunikaty proste i złożone. Zad. 5 Sterowanie grą w warcaby: definicja warcabów, język interakcji - poleceń, pytań i odpowiedzi, uwzględniający komunikaty proste i złożone.
Zad. 6 Sterowanie wybrana grą planszową: definicja wybranej gry, język interakcji - poleceń, pytań i odpowiedzi, uwzględniający komunikaty proste i złożone, kompilator języka interakcji, przykład kompilacji. Zad. 7 Sterowanie konwersacją językową na zadany temat z wykorzystaniem do dziesięciu typowych pytań oraz schematów typowych zwrotów. Zad. 8 Sporządzanie opisu horoskopu urodzeniowego dla danej pozycji planet w znakach zodiaku. Zad. 9 Sterowanie robotem-odkurzaczem: definicja opcji sprzątania, język interakcji - poleceń, pytań i odpowiedzi, uwzględniający komunikaty proste. Zad. 10 Głosowe sterowanie łóżkiem szpitalnym: definicja ruchów łóżka, język interakcji - poleceń, pytań i odpowiedzi, uwzględniający komunikaty proste i złożone. Zad. 11 Sterowanie robotem dedykowanym do wykonania zadania O naczyniach z wodą : definicja zadania O naczyniach z wodą, język interakcji - poleceń, pytań i odpowiedzi, uwzględniający komunikaty proste i złożone. Zad. 12 Sterowanie automatem dedykowanym do wykonania zadania wybranego zadania informatycznego: definicja wybranego zadania, język interakcji - poleceń, pytań i odpowiedzi, uwzględniający komunikaty proste i złożone. Zad. 13 Kalkulator programowany do obliczeń parametrów prądu elektrycznego w układzie zbudowanym ze źródła prądu, oporników i kondensatorów: definicja układu elektrycznego, język obliczeń parametrów układu. Zad. 14 Maszyna matematyczna Z. Pawlaka przyjmująca stany obliczeń określone przez ściany dwunastościanu foremnego i ich krawędzie (w prostszej wersji: ściany sześcianu i ich krawędzie): definicja obliczeń, język programowania. Zad. 15 Edytor i wyświetlarka plików tekstowych zawierających treści emocjonalne kodowane za pomocą stosownej cyklicznie animacji liter, np. radość to podskakujące nieregularnie litery tekstów wyrażających radość, smutek
pochylające się kolejno litery tekstu, neutralność bez zmian, uwaga! mruganie tekstu na który należy zwrócić uwagę. Zad. 16 Opisz rzeczywistość poznawczą, opisaną w poniższych sformułowaniach problemów, jako ekspertowy system ekspertowy reprezentujący treść tych problemów (uniwersum, cechy, przyporządkowania-operacje, relacje i dane, czy też znane przedmioty indywidua, stany i reguły przejść). Następnie zadeklaruj ten system w języku Proplog. Określ obliczenia realizowane w tych systemach iteracyjnych. Podaj przykładowe programy rozwiązujące poniższe problemy i skompiluj je w zaimplementowanym systemie. Problem 1 (ŻABIE SKOKI) Po obydwu stronach strumienia siedzą żaby. Po prawej trzy żaby wodne (Rana esculenta), po lewej trzy żaby trawne (Rana temporaria). A w strumieniu kamień, wystający ponad powierzchnię wody. Załóżmy, że każda żaba chce przeskoczyć na drugą stronę strumienia, tzn. żaby wodne chcą zamienić się miejscami z trawnymi. Każda żaba może skakać o jedno miejsce do przodu (również na wystający z wody kamień) oraz przeskakiwać jedną żabę innego koloru, za którą jest wolne miejsce. (Żaby tego samego koloru nie przeskakują się). Żaby nie mogą poruszać się wstecz. Ile skoków muszą wykonać żaby, aby zamienić się brzegami? Można zmieniać warunki zadania, biorąc dwa razy po dwie żaby, dwa razy po cztery itd. i znaleźć w ten sposób ciekawy algorytm żabich skoków. Matchematische Kurzweil Ch. A. Schwengeler, str. 8 Problem 2 (MISJONARZE I LUDOŻERCY) Trzech misjonarzy i trzech ludożerców usiłuje przeprawić się z jednego brzegu rzeki na drugi. Mają do dyspozycji łódź, która mieści co najwyżej 2 osoby. Jeżeli w jakimkolwiek momencie przeprawy przez rzekę liczba ludożerców na dowolnym brzegu przewyższa liczbę znajdujących się tam misjonarzy, ludożercy folgują swym naturalnym skłonnościom i zjadają misjonarzy. Podać najprostszy schemat przeprawy przez rzekę, który pozwoli wszystkim misjonarzom i ludożercom bezpiecznie przeprawić się na drugi brzeg. Problem 3 MĘŻCZYZNA, KOZA, WILK I SAŁATA znajdują się na lewym brzegu rzeki. Na brzegu jest ponadto łódź na tyle pojemna, by pomieścić jednorazowo mężczyznę i tylko jedno z pozostałych stworzeń lub rzeczy. Mężczyzna wraz z anturażem pragnie przeprawić się na prawy brzeg rzeki. Jeżeli wilk i koza pozostaną razem bez dozoru mężczyzny, wilk z pewnością zje kozę. Podobnie, jeżeli bez jego dozoru koza pozostanie na brzegu razem z sałatą, koza sałatę zje. Czy możliwa jest przeprawa przez rzekę tak, by koza i sałata nie zostały zjedzone? Problem 4 (PIES I ZAJĄC)
Pies zauważył zająca. Zanim zaczął go gonić, dzieliła ich odległość 150 stóp. Jednym skokiem zając pokonuje odległość siedmiu stóp, a pies dziewięciu stóp. Po ilu skokach pies dogoni zająca? Jaką odległość ( w stopach ) pokona pies, nim dopadnie szaraka? Matchematische Kurzweil Ch. A. Schwengeler Problem 5 (PRZELEWANIE) Mając do dyspozycji dwa naczynia o pojemnościach: 3 litrów i 5 litrów oraz wodę z rzeki, odmierzyć dokładnie 4 litry wody. Inne wersje tego zadania: mając do dyspozycji dwa naczynia o pojemnościach: 2n-1 litrów i 2n+1 litrów, odmierzyć dokładnie 2n litrów wody. Poszczególne przypadki przedstawia tabelka: Rys.1. Implementacja różnych wersji zadania o odmierzaniu wody. Źródło: J. Kotyczka, Programowanie logiczne w rozwiązywaniu zadań na poziomie szkolnym, Praca magisterska, Instytut Matematyki i Informatyki, Uniwersytet Opolski, Opole 2003. Problem 6 (MONETY) Mamy osiem monet. Jedna z nich jest lżejsza od pozostałych (nie wiemy, która). Jak wykryć lżejszą monetę, jeśli możemy tylko dwukrotnie dokonać ważenia przy użyciu wagi szalkowej? Można zmieniać warunki zadania, biorąc: liczbę dozwolonych ważeń: n = 3, liczbę monet: 18, albo:... Problem 7 (WIĘZIENIE NA PUSTYNI) Król Sztam jest surowym władcą. Jego ulubioną karą jest zsyłanie ludzi do więzienia na pustyni. Nie ma tam cel. Więzień może więc swobodnie spacerować, ale każdy może mieć przy sobie zapas jedzenia i wody jedyni na trzy dni. Na pustyni, aby przeżyć, trzeba mieć prowiant na każdy spędzony na niej dzień. Jak można by uciec z więzienia, gdyby najbliższa oaza była odległa od więzienia o
cztery dni drogi? (oaza - miejsce, w którym jest schowane jedzenie). Ile dni zajęłaby ucieczka? ROZWIĄZANIE: Trzeba wziąć jedzenie na trzy dni, maszerować jeden dzień w kierunku oazy, zostawić jednodniowy zapas pożywienia i wrócić do więzienia. Znowu zabrać prowiant na trzy dni, iść przez jeden dzień w stronę oazy, wziąć pozostawione zapasy (znowu jest do dyspozycji pożywienie na trzy dni) i udać się dalej. Ucieczka zajęłaby 6 dni. Jak długo trwałaby ucieczka, gdyby oaza była odległa o pięć dni drogi od więzienia? A o sześć dni?... Jak zmienia się sposób ucieczki, gdy można mieć przy sobie prowiant na cztery dni? Na pięć dni?... Łamigłówki z Manchesteru cz. II, (tłum. M. E. Dawidziuk, M. Dąbrowski,) Biblioteczka Stowarzyszenia Nauczycieli Matematyki, WSiP, W-wa 1993. Problem 8 (WIELBŁĄD NA PUSTYNI) Przejście przez Pustynię Żółtą zajmuje wielbłądowi 8 dni. Każdego dnia zwierzę musi wypić jeden bukłak wody. Niestety, na wielbłąda można załadować jedynie 5 pełnych bukłaków. Można jednak ustawiać na pustyni magazyny z wodą (i woda ta na szczęście nie wyparuje). Podaj sposób przeprawy wielbłąda przez Pustynię Żółtą i określ najmniejszą liczbę wypraw, które musi odbyć. Ilu wypraw potrzeba do przebycia Pustyni Czerwonej, którą wielbłąd pokonuje w 10 dni? Ile dni trwa najdłuższa podróż, jaką można odbyć na wielbłądzie? Nowa rasa wielbłądów może nosić 6 bukłaków z wodą. Jakie będą tym razem odpowiedzi na powyższe pytania? Łamigłówki z Manchesteru cz. II, (tłum. M. E. Dawidziuk, M. Dąbrowski,) Biblioteczka Stowarzyszenia Nauczycieli Matematyki, WSiP, W-wa 1993. Problem 9 (DOMEK i GWIAZDA) Jak bez odrywania ołówka od kartki narysować domek, gwiazdkę itp.