-
Path: news-archive.icm.edu.pl!agh.edu.pl!news.agh.edu.pl!newsfeed2.atman.pl!newsfeed.
atman.pl!.POSTED!not-for-mail
From: Sebastian Biały <h...@p...onet.pl>
Newsgroups: pl.comp.programming
Subject: Re: Prolog i hierarchiczna baza faktów
Date: Wed, 28 May 2014 20:35:23 +0200
Organization: ATMAN - ATM S.A.
Lines: 92
Message-ID: <lm5a9l$gt7$1@node2.news.atman.pl>
References: <lllk9q$lfi$1@node1.news.atman.pl> <lm31eu$5qr$1@node2.news.atman.pl>
NNTP-Posting-Host: 193.0.194.227
Mime-Version: 1.0
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
X-Trace: node2.news.atman.pl 1401302133 17319 193.0.194.227 (28 May 2014 18:35:33
GMT)
X-Complaints-To: u...@a...pl
NNTP-Posting-Date: Wed, 28 May 2014 18:35:33 +0000 (UTC)
User-Agent: Mozilla/5.0 (Windows NT 6.0; rv:24.0) Gecko/20100101 Thunderbird/24.5.0
In-Reply-To: <lm31eu$5qr$1@node2.news.atman.pl>
Xref: news-archive.icm.edu.pl pl.comp.programming:205856
[ ukryj nagłówki ]On 2014-05-27 23:52, Edek wrote:
> Nie ty pierwszy - poczytaj zanim się zabierzesz do tematu.
> Oprogramowanie potrafiące "przeczytać" książkę w miarę techniczną
Nie analizuje języka naturalnego.
> Hierarchiczną? Czy punkt a jest b czy b nad a i dlaczego?
Ponieważ niezygle czesto wystepują tam zalezności "coś jest wewnątrz
czegoś". Z programowania to oznacza częste relacje parent<->child
wyrażone z relacji między obiektami w pamięci. Myślę że to dość istotna
obsewacja.
> Sformułuj
> najpierw problem. Nie ja jedyny chętnie bym zobaczył drobny przykład,
> albo kilka, które pokazywałyby w czym jest problem.
To nie jest trywialne. Rzeczywisty problem jest - powiedzmy - komercyjny
i nie bardzo mogę go przedstawić w naturalnej postaci.
> Domena nie gra
> roli, może być "jakie kfiatki rosną nad rzeczką w której pływał
> pstrąg którego zjadł złodziej kradnąc go z marketu".
Sprawdze czy mogę przygotowac probkę danych.
> - to jest graf. Nie chce mi się uzasadniać.
Zgadzam sie, jednak przypuszczam że sensowniej będzie powiedzieć: to
wiele grafów, niekoniecznie zaleznych od siebie, pracujące na wspólnych
węzłach.
> - nie widzę hierarchii
"hierarchia" oznacza że mam taką strukture wejściową w formie relacji
elementów wlasnie tak zapisaną (dla bardzo ciekawskich: obiekty w C++
mające "iteratory na dzieci", oraz relacje przez indeksy w mapach). Mogę
ją przekształcić do dowolnej postaci oczywiście.
> Sam SQL nie, ale tak w kwestii technicznej zacząłbym (co już było) od
> pytania "co trzeba zrobić i jak" a potem wybrał narzędzia. Może SQL,
> który sam w sobie nie ma takich możliwości, da się użyć tworząc serię
> zapytań a wtedy podstawową strukturę grafu ma się za free. Pytanie
> też ile tych danych jest i czy trzeba trzymać je na dysku. Czyli aspekty
> techniczne, w tym kopanie się z koniem Prologiem, którego się nie zna.
Danych jest *bardzo* dużo, powiedzmy ze zajmuja solidne gigabajty w
pamięci. Jednak relacji nie ma za wiele, w dodatku mają taką cechę że
raczej układają się w gęste grupy powiązane dość luźno między sobą.
Istnieje widoczne lokalne zagęszczenie.
> Jeżeli nauczenie się Prologu zajmuje 12-18 miesięcy do tego przeczytanie
> książki, pytanie jest: czy problem jest na tyle rozbudowany, żeby poświęcać
> na niego tyle czasu. Drugie: nawet jeżeli tak, to czy nie lepiej odpuścić
> Prolog i zaimplementować struktury danych i algorytmy samemu z pomocą
> dostępnych bibliotek, a czas poświęcić na przeszukanie dostępnych źródeł
> wiedzy na temat problemu.
Szukam metod wielowątkowo. Z mojej strony zrobiłem już pewne fragmenty w
C++ (oryginalne struktury pamięciowe są w nim wlasnie), w javascripcie,
zrzuciłem do standardowej bazy danych SQL. Te etapy mam wstepnie za
sobą. Przy czym *bardzo* istotny element to wlasnie umozliwienie
koncowemu userowi grzebanie w "zapytaniach".
> Niestety nie znam dostępnej literatury, ale google scholar wypluwa
> po kilkadziesiąć tysi publikacji, trzeba poświęcić trochę czasu na
> dospracowanie zapytań, wybrać przeglądowe prace na początek, albo
> dać konkretny przykład Panu A.L.
Zgadza się, wiele przeszukałem sieci zanim zadałem pytanie, ale utopiłem
się w ilości zagadnień o ktorych mam nikłe pojęcie. Interesuje mnie
głównie filtr który pozwoli mi zawężyć zakres literatury. Przypuszczam
że prologowcy mają o tym największe pojęcie.
> Powiedz od razu, że chcesz się nauczyć Prologa
Nie chcę :). Ale mam wrażenie, że ten język będzie po prostu godny uwagi
w tym zastosowaniu.
>, po co zarzucasz jakiś
> abstrakcyjny temat... żartuję, ale może najpierw problem potem narzędzie.
Problem już został wstepnie rozwiązany w C++ i tam mam najbardziej
rozbudowane "zapytania" eksperymentalne. Niestety wygląd kodu ukrywa
intencje (więcej emulacji logiki niż sensu zapytania). Chcę zrobić
eksperyment z językiem zorientowanym logicznie aby sprawdzić czy będzie
bardziej czytelny. Nie jestem tez zadowolony z mojej "bazy danych" i mam
przeczucie że zmiene jej organizacji może coś pomóc. Tu muszę szeroko
poczytać o innych organizacjach baz danych.
Nie jestem ograniczony czasowo.
Następne wpisy z tego wątku
- 28.05.14 23:54 Andrzej Jarzabek
- 29.05.14 01:36 A.L.
- 29.05.14 01:39 A.L.
- 29.05.14 10:55 firr
Najnowsze wątki z tej grupy
- Arch. Prog. Nieuprzywilejowanych w pełnej wer. na nowej s. WWW energokod.pl
- 7. Raport Totaliztyczny: Sprawa Qt Group wer. 424
- TCL - problem z escape ostatniego \ w nawiasach {}
- Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
- testy-wyd-sort - Podsumowanie
- Tworzenie Programów Nieuprzywilejowanych Opartych Na Wtyczkach
- Do czego nadaje się QDockWidget z bibl. Qt?
- Bibl. Qt jest sztucznie ograniczona - jest nieprzydatna do celów komercyjnych
- Co sciaga kretynow
- AEiC 2024 - Ada-Europe conference - Deadlines Approaching
- Jakie są dobre zasady programowania programów opartych na wtyczkach?
- sprawdzanie słów kluczowych dot. zła
- Re: W czym sie teraz pisze programy??
- Re: (PDF) Surgical Pathology of Non-neoplastic Gastrointestinal Diseases by Lizhi Zhang
- CfC 28th Ada-Europe Int. Conf. Reliable Software Technologies
Najnowsze wątki
- 2024-12-25 Wrocław => Architekt rozwiązań (doświadczenie w obszarze Java, AWS
- 2024-12-25 Warszawa => Sales Assistant <=
- 2024-12-25 Kraków => Inżynier bezpieczeństwa aplikacji <=
- 2024-12-25 Lublin => System Architect (Java background) <=
- 2024-12-25 Szczecin => Specjalista ds. public relations <=
- 2024-12-25 Wrocław => Key Account Manager <=
- 2024-12-25 Kraków => Full Stack .Net Engineer <=
- 2024-12-25 Kraków => Programista Full Stack .Net <=
- 2024-12-25 Bieruń => Regionalny Kierownik Sprzedaży (OZE) <=
- 2024-12-25 Białystok => Inżynier Serwisu Sprzętu Medycznego <=
- 2024-12-25 Białystok => Delphi Programmer <=
- 2024-12-25 Chrzanów => Team Lead / Tribe Lead FrontEnd <=
- 2024-12-25 Kraków => Ekspert IT (obszar systemów sieciowych) <=
- 2024-12-25 Mińsk Mazowiecki => Spedytor Międzynarodowy <=
- 2024-12-24 Dzisiaj Bentlejem czyli przybieżeli sześciu Króli do Rysia na kasie