1 / 29

Kalkul událostí (Event Calculus)

Kalkul událostí (Event Calculus). Prezentaci vypracovala: Martina Číhalová. Úvod:. Formalismy pro reprezentaci akcí a jejich důsledků, využívány v databázových aplikacích. Účel: rozhodování o provedení akce na základě znalosti důsledků akcí. Kalkul událostí (event calculus)

alissa
Download Presentation

Kalkul událostí (Event Calculus)

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Kalkul událostí(Event Calculus) Prezentaci vypracovala: Martina Číhalová

  2. Úvod: • Formalismy pro reprezentaci akcí a jejich důsledků, využívány v databázových aplikacích. • Účel: rozhodování o provedení akce na základě znalosti důsledků akcí. • Kalkul událostí (event calculus) • Situační kalkul (situation calculus)

  3. Kalkul událostí(Event calculus) • Poprvé uvedl: Robert Kowalski, Marek Sergot v roce 1986 • Rozšíření: Murray Shanah, Rob Miller 90 léta 20. stol.

  4. Kalkul událostí(Event calculus) • Umožňuje časovou projekci, predikci - řešení deduktivních úloh • Umožňuje časovou explanaci, postdikci - řešení abduktivních úloh • Hledání teorie pro důsledky akcí - řešení induktivních úloh (učení)

  5. Kalkul událostíÚvod • Umožňuje reprezentaci následujících typů akcí: • Akce s nepřímými důsledky • Akce s nedeterministickými důsledky • Složené akce • Souběžné akce • Nepřetržitá změna(?)

  6. Kalkul událostí Formalismus • Založen na predikátové logice prvního řádu • Speciální predikátové a funkční symboly • Množina axiomů vymezující požadovaný model

  7. Kalkul událostí Základní proměnné • AKCE (ACTIONS (EVENTS)) • STAVY (FLUENTS) - pro representaci propozic, které se mění v čase; lze specifikovat jejich hodnotu pro určitý časový okamžik • ČASOVÉ OKAMŽIKY (TIME POINTS)

  8. Kalkul událostí Predikáty • Pomocí příslušných predikátů vyjadřujeme: • Podmínku „co se stane, když“ • Počáteční podmínku • Důsledky (účinky) akcí • Platnost stavu (fluent) v příslušných časových okamžicích

  9. Kalkul událostí Predikáty

  10. Kalkul událostí Fluents Účinky akcí jsou dány pomocí predikátů: • INITIATES: jestliže je vykonána akce vyjádřená termem av čase t, pak stav (fluent) bude po čase t pravdivý • TERMINATES:jestliže je vykonána akce vyjádřená termem av čase t, pak stav (fluent) bude po čase t nepravdivý

  11. Kalkul událostí Axiomy • (InitiallyP(f)  Clipped(0,f,t)) HoldsAt(f,t) (SC1) • Happens(a,t1)  Initiates(a,f,t1)  t1 t2   Clipped(t1,f,t2)  HoldsAt (f,t2) (SC2) •  a,t  Happens(a,t)  t1  t  t2  Terminates(a,f,t)  Clipped(t1,f,t2) (SC3)

  12. Kalkul událostí Axiomy Dle výchozích axiomů (SC1, SC2) neplatí stav (fluent) v čase akce, která ho iniciovala, ale platí v čase akce, která ho ukončuje. Tedy intervaly, které vyjadřují časovou platnost stavu (fluent) jsou zleva otevřené a zprava ostré.

  13. Problém rámce(frame problem) • Technický problém umělé inteligence, spočívá v logice. • Formulován v r. 1969 Mc Carthym a Hayem (tzv. Yale shooting scenario) • Jde o problém toho, jak vyjádřit důsledky akcí, aniž by muselo být explicitně specifikováno, které stavy(fluents) nejsou příslušnou akcí ovlivněny.

  14. Rámcový problém Yale Shooting scenario • Tři možné akce: nabít, odjistit, vystřelit • Tři možné stavy (fluents) : nabito, živý, mrtvý • Důsledkem akce nabít je stav nabito • Důsledkem akce vystřelit je stav mrtvý • Akce odjistit nemá žádný důsledek • Scénář se skládá z akce nabít, následované akcí odjistit,následované akcí vystřelit

  15. Rámcový problém Yale Shooting scenario • Formální specifikace: • Initiates(Load,Loaded,t)(Y1.1) • HoldsAt(Loaded,t)  Initiates(Shoot,Dead,t) (Y1.2) • HoldsAt(Loaded,t) Terminates(Shoot,Alive,t) (Y1.3)

  16. Rámcový problém Yale Shooting scenario • InitiallyP(Alive) (Y2.1) • Happens(Load,T1)(Y2.2) • Happens(Sneeze,T2)(Y2.3) • Happens(Shoot,T3)(Y2.4) • T1 T2 (Y2.5) • T2  T3 (Y2.6) • T3  T4 (Y2.7)

  17. Rámcový problém Yale Shooting scenario • …konjunkce (Y1.1) až (Y1.3) • …konjunkce (Y2.1) až (Y2.7) • Tedy mělo by platit následující: •    SC l= HoldsAt(Dead,T4)

  18. Rámcový problém Yale Shooting scenario • Tento úsudek je však neplatný! • Neboť jsme explicitně neuvedli stavy, které nejsoudůsledkem příslušných akcí • Neboť nejsme například schopni říci, zda akce odjistit nezpůsobí to, že zbraň přestane být nabitá

  19. Rámcový problém Yale Shooting scenario • Existuje model formulí   SC, v němž: • Terminates(Sneeze,Loaded,T2) je pravdivé • Holds(Alive,T4) je pravdivé • HoldsAt(DeadT4) je nepravdivé • Tedy je nutné zavedením dalších pravidel zohlednit další okolnosti, pokud chceme, aby závěr z předpokladů opravdu vyplýval.

  20. Rámcový problém Řešení rámcového problému • Využitím nemonotónního formalismu, např. defaultní logiky (možnost vyjádření faktů typu: „něco je defaultně považováno za pravdivé“) (Reiter,1980) • Pomocí specifikace (McCarthy 1980), formalizace takzvaného common sense law of inertia(stav (fluent) je považován za stále platný, dokud není důvod věřit, že je tomu jinak)

  21. Kalkul událostí Plná verze: predikáty

  22. Kalkul událostí Plná verze: axiomy • InitiallyP(f)  Clipped(0,f,t)  HoldsAt(f,t) (EC1) • Happens(a,t1,t2)  Initiates(a,f,t2)  t2  t3   Clipped(t1,f,t3)  HoldsAt(f,t3) (EC2) • a,t1,t3 Happens(a,t1,t3)  t1  t3  t2  t4   Terminates(a,f,t2)  Releases (a,f,t2)   Clipped(t1,f,t4) (EC3)

  23. Kalkul událostí Plná verze: axiomy • InitiallyN(f)  Declipped(0,f,t)  HoldsAt(f,t) (EC4) • Happens(a,t1,t2) Teminates(a,f,t1)  t2<t3   Declipped(t1,f,t3)  HoldsAt(f,t3) (EC5) •  a,t2,t3Happens(a,t2,t3)  t1<t3  t2<t4   Initiates(a,f,t2)  Releases(a,f,t2)   Declipped(t1,f,t4) (EC6) • Happens(a,t1,t2)  t1  t2 (EC7)

  24. Situační kalkul • Jde o logický formalismus navržený pro reprezentaci znalostí a rozhodování nad dynamickými doménami. • Využívá predikátovou logiku druhého řádu. • Představen roku 1963 J. McCarthym. • Jeho základní verzi vyvinul roku 1991 Ray Reiter.

  25. Situační kalkul:základní prvky • Akce (Actions) • Stavy (Fluents) • Situace (Situations): konečné sekvence akcí • Objekty (Objects): (cokoliv co není akce, nebo situace)

  26. Situační kalkul Axiomy • Axiomy udávajícípodmínkypříslušných akcí, jeden pro každou akci • Axiomy udávající následníka stavu, jedenpro každýstav(fluent) • Axiomypopisujícísvětv různých situacích • Základní axiomysituačního kalkulu

  27. Situační kalkul Základní prvky • Jde o kalkul nad doménou tří typů entitních sort: • Akce, situace, objekty • Stavy (fluents)jsoumodeloványpomocí predikátůnebofunkcí. • Spec. Predikát pro vyjádření toho, že je akce proveditelná Poss(action)

  28. Situační kalkul Příklady formalizace • do(a,S) (akce) • is_carrying(o,S) (stav) • is_carrying(Ball,S0) • is_carrying(Ball,do(pickup(Ball),S0)) situace

  29. Situační kalkul Příklad formalizace • Poss(pickup(o),S)  (zis_carrying(z,S)) heavy(o) • Akci zvednout objekt v situaci S je možné provést jen tehdy a tehdy, když pro všechny objekty platí stav, že nejsou neseny v situaci S a nejsou těžké.

More Related