Showing posts with label system ekspercki. Show all posts
Showing posts with label system ekspercki. Show all posts

Sunday, October 7, 2007

Powrót

Trochę wody upłynęło w rzece od ostatniego postu (posta ?), ale nawał obowiązków ograniczył możliwości propagowania rozwiązań open source w archeologii. Ta przerwa, wynikająca z jednej strony z zajęć, o których już blogowałem - koder, programowanie w logice (archeologiczny słownik angielsko-polski niestety tej uwagi nie doświadczył - zainteresowanych przejęciem i dalszym rozwijaniem proszę o kontakt) i związanych z tym "prac pisemnych" a z drugiej konieczność skupienia się na lekturach niekoniecznie powiązanych stricte z tą problematyką, pozowlił na ocenę roli tego dziennika z jakieś perspektywy.

Wnioski z tej analizy są takie, że trzeba nieco zmienić profil tego bloga. Tematyka związana z open source oczywiście zniknie, choćby z uwagi na to, że nadal będą się tu pojawiały informacje o projektach, których jestem autorem. Niestety realia są takie, że poza nielicznymi wyjątkami archeolody "made in poland" nadal nie przyjmują do wiadomości, że komputer to coś więcej niż wygodniejsza wersja maszyny do pisania. Nowy cel jaki sobie postawiłem w związku z publikowaniem na archeodict jest popularyzacja komputera jako doskonałego narzędzia analitycznego. W szczególności mam tu na myśli modelowanie zjawisk, procesów, czy całych systemów. Po drugie wykorzystanie automatycznych metod analizy danych - i tu w grę wchodzi programowanie w logice (Prolog), czy systemy eksperckie.

Na dniach napiszę pare słów o rozwoju kodera i dalszych perspektywach jego rozwoju, bo to jest problem, który od pewnego czasu zaczął znowu zaprzątać moją głowę. A zatem do zobaczenia ... ;)

Friday, February 9, 2007

Epoka1 - ciąg dalszy

W poprzednim poście pisałem o systemie eksperckim [1] od strony
ideologiczno-teoretycznej, tym razem parę słów o technologii. Skrypt
systemu jest banalny, jego właściwa część składa się z kilku lini w
Pythonie [2]. Diabeł tkwi jednak w konstrukcji bazy wiedzy. Jest
zbudowana w oparciu o graf skierowany, gdzie poszczególne pytania są
jego wierzchołkami, natomiast łuki są odpowiedziami tak/nie. W
zależności od wyboru odpowiedzi wybierany jest ten wierzchołek do
którego ona prowadzi. Procedura powtarza się dopóki algorytm nie natrafi
na wierzchołek, z którego nie ma łuków wychodzących. Oznacza to, że
wierzchołek ten jest odpowiedzią. Tak więc system jest jednoznaczny.
Określone odpowiedzi pociągają za sobą JEDEN i tylko jeden rezultat.
Z drugiej strony system nie jest liniowy, gdyż jeden rezultat może być
osiągnięty kilkoma drogami, to znaczy niektóre wierzchołki mają stopień
wejściowy większy od 1.
Skrypt jest na tyle uniwersalny, że zbudowanie w oparciu o niego innego
systemu eksperckiego jest banalnie proste. Jak zwykle problem tkwi w
skonstruowaniu dobrej bazy wiedzy, co nie jest wcale takie proste.

[1] http://www.piglas.ys.pl/cgi-bin/system.py
[2] http://www.python.org

Tuesday, February 6, 2007

System ekspercki

Zgłębiam właśnie programowanie w logice (deklaratywne) i niejako przy okazji spłodziłem system ekspercki. Ponieważ zasada działania systemów jest oparta o metodę indukcyjną nie są one narzędziem idealnym, więc trzeba go stosować z rozsądkiem i świadomością, że nie jest to sztuczna inteligencja.
System pomaga rozpoznawać, z jaką epoką (paleolit - epoka żelaza) można powiązać dane stanowisko. Najlepiej by było to stanowisko osadowe i jedno fazowe, wtedy możliwość przekłamań w wynikach jest mniejsza.
Implementacja algorytmu nie jest jeszcze ukończona - brakuje między innymi wyświetlania dowodu, ale można go już z powodzeniem stosować.
Jak to działa.
System w drodze do ostatecznego wniosku zadaje pytania, które rozstrzygają kolejne wątpliwości. Zadaniem użytkownika jest odpowiedź na te pytania, zaznaczając opcję Tak lub Nie. W zależności od tego jakie odpowiedzi są udzielane, inny jest wniosek końcowy (w tym przypadku określenie epoki, w której stanowisko funkcjonowało).
System jest narazie bardzo prosty, jeśli nie prymitywny i ewolucjonistyczny, ale to ma być raczej przykład możliwości wykorzystania informatyki w archeologii, niż narzędzie przydatne w codziennej pracy.