100% satisfaction guarantee Immediately available after payment Both online and in PDF No strings attached
logo-home
Samenvatting van hc 8 t/m 16 $4.66   Add to cart

Summary

Samenvatting van hc 8 t/m 16

 72 views  1 purchase
  • Course
  • Institution

Samenvattingen van het vak Intelligente Systemen van de hoorcolleges 8 t/m 16.

Preview 4 out of 41  pages

  • April 30, 2020
  • 41
  • 2019/2020
  • Summary
avatar-seller
INTELLIGENTE SYSTEMEN TT 2
College 8: A closer look at terms
The identity predicate
We hebben een unificatie operator (=/2) en een numerieke gelijkheid operator (=:=/2).
We hebben ook een identiteitspredikaat (==/2):
- In tegenstelling tot (=/2) instantieert het geen variabelen.
- Het checkt de identiteit van termen, ook al is het anders vermeld.
- Het ondersteunt infix en prefix notatie gelijkheid.
Voorbeelden:
1+2 = 2+1. True
1+2 =:= 3. False
1+2 == +(1,2). True
1+2 == +(2,1). False
We hebben =\=/2 voor numerieke ongelijkheid.
\==/2 geldt wanneer de argumenten niet identiek zijn.
Voorbeelden:
a == ‘a’. True
a \== a. False
X = Y. True, X= _2808, Y=_2808
X==Y. False
X \== Y. True
a = X, a == X. True, X = a
a == X, a = X. False
X \== a. True
Identiteit van complexe termen:
2-3 == -(2,3).
2*(7+2) == *(2,+(7,2)).
(2 =< 3) == =<(2,3).
(2 =:= 3) == =:=(2,3).
==((2 =:= 3), =:=(2,3)).
[a,b,c,d] == [a| [b,c,d]].
[a,b,c,d] == [a,b| [c,d]].
[a,b,c,d] == [a,b,c,d|[]].

Overview =, =:= en ==
- = Unificatie predikaat
o True als het z’n argumenten kan unificeren, anders false
- \= Negatie van unificatie predikaat
o True als = fails, en andersom
- == Identiteits predikaat
o True als argumenten gelijk zijn, anders false
- \== Negatie van identiteits predikaat
o True == fails, en andersom
- =:= Arithmetische equality predikaat
o True als argumenten evaluate zelfde getal/integer
- =\= Arithmetische equality predikaat negation
o True als argumenten andere getallen evaluaten

Built-in predikaten
- Atom/1 argument een atoom?
- Integer/1 argument een integer?
- Float/1 argument een floating point getal? (float(42) geeft false: geen integers!)
- Number/1 argument een integer of een floating point getal?

1

, - Atomic/1 argument constant?
- Var/1 argument een uninstantiated variabele
- Nonvar/1 argument een instantiated variabele of een andere term dat geen uninstantiated
variabele is (nonvar(eats(vincent, spagetti)). True)

Structure of complex terms
Hoe kunnen we de structuur van een complexe term leren?
Prolog heeft een ingebouwd predikaat, functor/3 die: Voorbeeld functor/3
- De term als het eerste argument neemt
- De functor als het tweede argument
- De ariteit als het derde argument
Checken of een argument een complexe term is:




Arg/3 neemt getal N en een complexe term T en
returnt het Nde argument van T als derde argument. 

‘=..’/2 neemt complexe term en returnt
een lijst dat de functor als hoofd heeft, en
dan alle argumenten in volgorde, als
elementen van de tail.

Atom_codes/2 staat conversions van strings
en atoms naar en van ASCII lijst
representatie



Prolog gebruikt gebruiksvriendelijke (infix) notatie voor operatoren, maar gebruikt intern onamibigu
prefix notatie.
Om gebruiksvriendelijke notatie te
disambigueren moet Prolog het operator type
(infix, prefix, postfix), its precedence en zn
associativity weten.




We kunnen onze operator definen door :- op(Precedence, Type, Name).
- Type = een atoom dat het type en associativity van de operator specificeert. Mogelijkheden
zijn:
o Infix xfx, xfy, yfx
o Prefix fx, fy
o Suffix xf, yf
- Yfx: x heeft lower precedence dan de infix operator f, terwijl y equal of lower precedence zou
kunnen hebben
- :- op(Precedence, Type, Name). Definieert geen functie.




2

,College 9: Classical Planning
- Planning is het process van computing several steps of a problem-solving procedure before
executing any of them
- Dit probleem kan opgelost worden met search
- Het grootste verschil tussen search en planning is de representatie van toestanden
o Search: toestanden worden gerepresenteerd als een enkele entity (kan complex object
zijn, maar interne structuur wordt niet gebruikt bij search algoritmes)
o Planning: toestanden hebben gestructureerde representaties (collecties van
eigenschappen) welke gebruikt worden door het planning algoritme

Verschillende toestanden representaties
- Atomic: Toestanden hebben geen interne structuur
- Factored: Toestanden zijn vectoren van attribute
values
- Structured: Toestanden bestaan uit objecten met
eigenschappen en onderlinge relaties

Toestand representatie in planning
- Toestanden zijn lijsten van ground (geen variabelen) atomische formules (positive literals)
o Bijv. S = {At(BBG), Sells(Spar, Milk)}
- Toestand beschrijving is bedoelt om alle positive ground literals die waar zijn te listen
- Als een positive ground literal niet listed is, is ie false
o Bijv. Sells(BBG, Milk) is false in s.
- Goal state beschrijving kan variabelen hebben: At(x) ^ Have(y).
- Een eigenschap met een variabele zoals At(x) is satisfied in een toestand als er een manier is
om een object te substitueren voor x, zodat de resulterende formule waar is in de toestand.

Search vs planning
Planningsystemen doen het volgende:
- Vinden actie en doelrepresentaties om selectie te veroorloven.
- Divide-and-conquer door subdoelen te stellen.
- Opeenvolgende constructie van oplossingen
Search Planning
States Data structuren Logische zinnen
Actions Code Precondities/outcomes
Goal Code Logische zinnen (conjuncties
Plan Sequence from S0 Beperkingen bij acties

Assumpties van classical planning:
- Omgeving is deterministisch
- Omgeving is oberveerbaar
- Omgeving is statisch (verandert alleen door de acties van de agent)

STRIPS-operator
STRIPS-planning language. Overzichtelijke actiebeschrijvingen, beperkte taal (> dus efficiënt
algoritme). Acties/operatoren zijn gespecificeerd met actieschema’s.
- Preconditie: conjunctie van positieve literals
- Effect: conjunctie van literals
- Goal: conjunctie van positieve literals




3

, PDDL (planning domein definitie language)
- Meer relaxed dan STRIPS
- Precondities en goals kunnen negatieve literalen bevatten
- Toestanden zijn sets van ground, functieloze atomen
- Ground atomen die niet worden genoemd zijn false (closed world assumpties)
- A \in Actions(s) iff s |= Precond(a)
- Result(s,a) = (s – Del(a)) U Add(a)
o Add(a) is de lijst van positieve literalen in het effect van a (feiten die waargemaakt
worden)
o Del(a) is de lijst van feiten die false gemaakt zijn (atomen die in negatie voorkomen in
het effect van a)
Vb. domein: blocks world
Domein bestaat uit:
o Een tafel, een set van kubussen en een robotarm
o Iedere kubus ligt op de tafel of op een andere kubus
o De arm kan een blok oppakken en naar een andere positie bewegen (op de tafel of op
een andere kubus)
o De arm kan maar een kubus per keer oppakken, dus het kan niet een kubus oppakken
met een andere kubus erop.
o Een goal is een vraag om een of meerdere stacks van kubussen te bouwen,
gespecifieerd in termen van welke kubussen op welke andere kubussen staan.
- Kubussen worden gerepresenteerd door constanten A, B, C, etc en een additionele constante
Table.
- De volgende predikaten worden gebruikt om toestanden te beschrijven:
o Bl(x): x is een kubusblok
o On(x,y): x is op y, waar y een kubusblok is of een tafel
o Clear(x): er is een lege plek on x to hold a block




Actieschema’s:

Planning problem:
= planning domein + objecten + initiele toestand + goal.
- Goal is een conjunctie van literalen, bijv: On(A,B)^
¬On(B,C)
- We kunnen dit probleem oplossen met search.

Search
- Zoek algoritmen worden meestal gezien als een
forward search van de initiële toestand naar een
goal toestand

4

The benefits of buying summaries with Stuvia:

Guaranteed quality through customer reviews

Guaranteed quality through customer reviews

Stuvia customers have reviewed more than 700,000 summaries. This how you know that you are buying the best documents.

Quick and easy check-out

Quick and easy check-out

You can quickly pay through credit card or Stuvia-credit for the summaries. There is no membership needed.

Focus on what matters

Focus on what matters

Your fellow students write the study notes themselves, which is why the documents are always reliable and up-to-date. This ensures you quickly get to the core!

Frequently asked questions

What do I get when I buy this document?

You get a PDF, available immediately after your purchase. The purchased document is accessible anytime, anywhere and indefinitely through your profile.

Satisfaction guarantee: how does it work?

Our satisfaction guarantee ensures that you always find a study document that suits you well. You fill out a form, and our customer service team takes care of the rest.

Who am I buying these notes from?

Stuvia is a marketplace, so you are not buying this document from us, but from seller elyvd. Stuvia facilitates payment to the seller.

Will I be stuck with a subscription?

No, you only buy these notes for $4.66. You're not tied to anything after your purchase.

Can Stuvia be trusted?

4.6 stars on Google & Trustpilot (+1000 reviews)

62890 documents were sold in the last 30 days

Founded in 2010, the go-to place to buy study notes for 14 years now

Start selling
$4.66  1x  sold
  • (0)
  Add to cart