Różnice

Różnice między wybraną wersją a wersją aktualną.

Odnośnik do tego porównania

Both sides previous revision Poprzednia wersja
Nowa wersja
Poprzednia wersja
pl:miw:miw08_rbs_back [2008/07/11 12:43]
miw
pl:miw:miw08_rbs_back [2019/06/27 15:50] (aktualna)
Linia 1: Linia 1:
 ====== Opis ====== ====== Opis ======
 +__**Projekt zakończony**__
 +
 Dawid, Zwoźniak, <​david_z@poczta.fm>​ Dawid, Zwoźniak, <​david_z@poczta.fm>​
  
 RBS_Back RBS_Back
 Przegląd metodologii reprezentacji reguł dla wnioskowania w tył (wstecz). Należy szczególnie uwzględnić reprezentacje graficzne oraz zwrócić uwagę na: przejrzystość reguł, gęstość reprezentowanej informacji. Przegląd metodologii reprezentacji reguł dla wnioskowania w tył (wstecz). Należy szczególnie uwzględnić reprezentacje graficzne oraz zwrócić uwagę na: przejrzystość reguł, gęstość reprezentowanej informacji.
- 
- 
-====== Spotkania ====== 
-===== 080304 ===== 
-przydzielenie projektu 
- 
-===== 080311 ===== 
-planowane konsultacje 
- 
- 
-===== 080318 ===== 
-? 
- 
- 
- 
- 
-===== 080527 ===== 
- 
- 
-? 
- 
-===== 080626 ===== 
-? 
  
  
Linia 61: Linia 40:
   * Tools for Software Visualization – SVT (Semantic Visualization Tools) and Vmax   * Tools for Software Visualization – SVT (Semantic Visualization Tools) and Vmax
   * VPP (Visual Programming in Prolog)   * VPP (Visual Programming in Prolog)
 +
  
  
Linia 148: Linia 128:
 PTP obsługuje 19 różnych stanów uruchamiania (Spy tylko 4). Również wyróżnia osiągnięcie celu i klauzuli w programie, które były wykorzystywane do osiągnięcia tego celu, poprzez używanie różnych symboli dla wchodzenia i wychodzenia z klauzuli i osiągniętego celu. PTP obsługuje 19 różnych stanów uruchamiania (Spy tylko 4). Również wyróżnia osiągnięcie celu i klauzuli w programie, które były wykorzystywane do osiągnięcia tego celu, poprzez używanie różnych symboli dla wchodzenia i wychodzenia z klauzuli i osiągniętego celu.
  
-Przykładowy program: 
- 
-''​p(X) :- q(X), r(X).''​ 
- 
-''​q(a).''​ 
- 
-''​q(b).''​ 
- 
-''​r(b).''​ 
- 
-'':​- p(What).''​ 
  
 PTP - reprezentacja przykładowego programu: PTP - reprezentacja przykładowego programu:
Linia 185: Linia 154:
 12: + p(b) [1]''​ 12: + p(b) [1]''​
  
-[[Internal Link]]+ 
 +== TPM (Transparent Prolog Machine) == 
 + 
 +TPM wykorzystuje AND/OR model drzewa dla wykonywania programu Prologu. Został stworzony przez Eisenstadt and Brayshaw, 1988; Brayshaw and Eisenstadt, 1991. 
 +Opis TPM jest przedstawiony jako osobne narzędzie do wizualizacji. 
 + 
 +== TTT (Textual Tree Tracer)== 
 + 
 +TTT ma zasadniczo podobny model jak TPM, jednak używa tekstowej reprezentacji drzewa prez co dostarcza pojedynczego widoku uruchamiania programu. 
 +Został stworzony przez Taylor et al, 1991. 
 + 
 +W przeciwieństwie do liniowych tekstowych programów śledzących wykonywanie programu takich jak Spy i PTP, bieżąca informacja określająca związek z poprzednio osiągniętym celem jest wyświetlana z lub nad poprzednią informacją. To utrzymuje wszystkie powiązane informacje poszczególnych celów w jednym miejscu. 
 + 
 +Siedem symboli relacji klauzul jest zaimplementowanych. Zmienne powiązane z historią celu są wyświetlane bezpośrednio pod nim. 
 + 
 + 
 +TTT- reprezentacja przykładowego programu: 
 + 
 +''>>>​1:​ p(What) 1S 
 + 
 +|1 What = b 
 + 
 +***2: q(What) 1SF/2S 
 + 
 +|1 What ≠ a 
 + 
 +|2 What = b 
 + 
 +***3: r(a) Fm 
 + 
 +***4: r(b) 1S''​ 
 + 
  
  
Linia 191: Linia 192:
  
 ====== ISVL (The Internet Software Visualization Laboratory) ======== ====== ISVL (The Internet Software Visualization Laboratory) ========
 +
 +ISVL jest projektem, który miał na celu pomoc studentom w rozumieniu uruchamianych programów napisanych w Prolog-u, poprzez internet.
 +Projekt ten wywiązał się jakby z PPVL, jednak zaimplementowano w nim jedynie TPM.
 +
 +Demonstracje działania ISVL można zobaczyc na stronie:
 +
 +[[http://​www-jime.open.ac.uk/​97/​1/​java/​isvl-09.html|http://​www-jime.open.ac.uk/​97/​1/​java/​isvl-09.html]]
  
  
Linia 266: Linia 274:
  
 Vmax daje możliwość edycji klauzul na różne sposoby zarówno tekstowo jak i graficznie. Jednak zmiany w trybie graficznym nie są zapisywane do kodu źródłowego,​ dlatego jest to mało użyteczne. Lepszym rozwiązaniem w tym przypadku jest edycja kodu źródła programu. Vmax daje możliwość edycji klauzul na różne sposoby zarówno tekstowo jak i graficznie. Jednak zmiany w trybie graficznym nie są zapisywane do kodu źródłowego,​ dlatego jest to mało użyteczne. Lepszym rozwiązaniem w tym przypadku jest edycja kodu źródła programu.
 +
  
  
Linia 310: Linia 319:
  
  
 +====== Podsumowanie ======
 +
 +Próby wizualizacji programów napisanych w Prologu były tworzone juz na początku lat 80-tych.
 +Powstało kilka projektów/​systemów,​ które dają możliwość wizualizacji i śledzenia wykonywania programów Prologu, jednak nie można żadnego z nich zdobyć.
 +Są to albo wersje komercyjne (TPM na UNIX-a, SVT i Vmax) lub akademickie na system MAC (TPM, PPVL, ale tez nie udało się ich odnaleźć na sieci).
 +
 +Większość z tych systemów podczas graficznej wizualizacji korzysta ciągle z tego samego, czyli TPM, a nie udało się odnaleźć bardziej szczegółowego opisu działania.
 +Wydana została książka o TPM (koszt 150$ + przesyłka) a wszystkie inne informacje na sieci są bardzo pobieżne i piszą ciągle o tym samym (w skrócie jak to ladnie sobie można robić wizualizacje śledzenia programów w Prolog-u przy pomocy TPM).
 +
 +Projekt niestety nie jest oparty na własnych próbach wykonywania programów z powodu braku dostępu do systemów SV dla Prologu. Zatem zostały opisane i przetłumaczone informacje jakie udało mi się odnaleźć w sieci.
 +
 +Opisanie tych programów było bardzo trudne. Ciężko pisać o czymś czego nie można wypróbować opierając sie tylko na bardzo ogólnych opisach.
  
 ====== Sprawozdanie ====== ====== Sprawozdanie ======
 +
 +
 +
 ====== Materiały ====== ====== Materiały ======
 +
 +{{:​pl:​miw:​miw08_rbs_back:​005.pdf|:​pl:​miw:​miw08_rbs_back:​005.pdf}}
 +
 +{{:​pl:​miw:​miw08_rbs_back:​declarative-debugging-with-the.pdf|:​pl:​miw:​miw08_rbs_back:​declarative-debugging-with-the.pdf}}
 +
 +{{:​pl:​miw:​miw08_rbs_back:​domingue-97-1.pdf|:​pl:​miw:​miw08_rbs_back:​domingue-97-1.pdf}}
 +
 +{{:​pl:​miw:​miw08_rbs_back:​iee_20vis_20prolog_2091.pdf|:​pl:​miw:​miw08_rbs_back:​iee_20vis_20prolog_2091.pdf}}
 +
 +{{:​pl:​miw:​miw08_rbs_back:​mulholland97incorporating.pdf|:​pl:​miw:​miw08_rbs_back:​mulholland97incorporating.pdf}}
 +
 +{{:​pl:​miw:​miw08_rbs_back:​ppigvisprologfixed.pdf|:​pl:​miw:​miw08_rbs_back:​ppigvisprologfixed.pdf}}
 +
 +{{:​pl:​miw:​miw08_rbs_back:​tbpa91.pdf|:​pl:​miw:​miw08_rbs_back:​tbpa91.pdf}}
 +
 +{{:​pl:​miw:​miw08_rbs_back:​ucam-cl-tr-511.pdf|:​pl:​miw:​miw08_rbs_back:​ucam-cl-tr-511.pdf}}
 +
 +{{:​pl:​miw:​miw08_rbs_back:​visandor-iclp93.pdf|:​pl:​miw:​miw08_rbs_back:​visandor-iclp93.pdf}}
 +
 +
 +
 +[[http://​citeseer.ist.psu.edu/​cache/​papers/​cs/​20963/​http:​zSzzSzkmi.open.ac.ukzSzmarczSzpaperszSzIJMMS-91.pdf/​brayshaw91practical.pdf|http://​citeseer.ist.psu.edu/​cache/​papers/​cs/​20963/​http:​zSzzSzkmi.open.ac.ukzSzmarczSzpaperszSzIJMMS-91.pdf/​brayshaw91practical.pdf]]
 +
 +[[http://​kmi.open.ac.uk/​kmi-misc/​tpm/​tpm.html|http://​kmi.open.ac.uk/​kmi-misc/​tpm/​tpm.html]]
 +
 +[[http://​www.amazon.com/​Transparent-Prolog-Machine-Visualizing-Programs/​dp/​0792314476|http://​www.amazon.com/​Transparent-Prolog-Machine-Visualizing-Programs/​dp/​0792314476]]
 +
 +[[http://​www.cc.gatech.edu/​classes/​cs7390_98_winter/​talks/​logic/​topic3.html|http://​www.cc.gatech.edu/​classes/​cs7390_98_winter/​talks/​logic/​topic3.html]]
 +
 +[[http://​citeseer.ist.psu.edu/​cache/​papers/​cs/​6324/​http:​zSzzSzwww.cs.usask.cazSzprojectszSzenvlopzSzWLPEzSz8WLPEzSzproceedingszSzmulholland.pdf/​mulholland97incorporating.pdf|http://​citeseer.ist.psu.edu/​cache/​papers/​cs/​6324/​http:​zSzzSzwww.cs.usask.cazSzprojectszSzenvlopzSzWLPEzSz8WLPEzSzproceedingszSzmulholland.pdf/​mulholland97incorporating.pdf]]
 +
 +[[http://​citeseer.ist.psu.edu/​cache/​papers/​cs/​150/​ftp:​zSzzSzfrost.open.ac.ukzSzpubzSzpaulmzSzMul-HCRL107.pdf/​mulholland93evaluating.pdf|http://​citeseer.ist.psu.edu/​cache/​papers/​cs/​150/​ftp:​zSzzSzfrost.open.ac.ukzSzpubzSzpaulmzSzMul-HCRL107.pdf/​mulholland93evaluating.pdf]]
 +
 +[[http://​books.google.pl/​books?​id=ATqiSr7QE24C&​dq=Transparent+Prolog+Machine&​pg=PP1&​ots=-V8A0bzMyv&​sig=9x21p9xwmyNquvVrCXlOcsBzQmA&​hl=pl&​sa=X&​oi=book_result&​resnum=1&​ct=result#​PPP1,​M1|http://​books.google.pl/​books?​id=ATqiSr7QE24C&​dq=Transparent+Prolog+Machine&​pg=PP1&​ots=-V8A0bzMyv&​sig=9x21p9xwmyNquvVrCXlOcsBzQmA&​hl=pl&​sa=X&​oi=book_result&​resnum=1&​ct=result#​PPP1,​M1]]
 +
 +[[http://​citeseer.ist.psu.edu/​cache/​papers/​cs/​27638/​http:​zSzzSzwww.cl.cam.ac.ukzSzTechReportszSzUCAM-CL-TR-511.pdf/​grant99software.pdf|http://​citeseer.ist.psu.edu/​cache/​papers/​cs/​27638/​http:​zSzzSzwww.cl.cam.ac.ukzSzTechReportszSzUCAM-CL-TR-511.pdf/​grant99software.pdf]]
 +
 +[[http://​www-jime.open.ac.uk/​97/​1/​isvl-01.html|http://​www-jime.open.ac.uk/​97/​1/​isvl-01.html]]
 +
 +
 +
pl/miw/miw08_rbs_back.1215773006.txt.gz · ostatnio zmienione: 2019/06/27 15:58 (edycja zewnętrzna)
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0