AI Kunskapsrepresentation, Intelligent Agents & Reasoning Flashcards
Vad innebär kunskapsrepresentation?
Kunskapsrepresentation innefattar tekniker och processer som används för att representera eller lagra kunskap i ett datorsystem på ett sätt som gör att den kan användas av intelligenta agenter eller system.
Vad är ett kunskapsrepresentationssystem?
Ett kunskapsrepresentationssystem är en uppsättning tekniker, metoder och verktyg som används för att representera kunskap inom ett specifikt domän på ett strukturerat och organiserat sätt.
Varför vill vi använda kunskapsrepresentation inom en väl avgränsad domän?
Vi vill bygga system som beter sig som om de har verklig förståelse, även om de inte har det i filosofisk mening.
Vi vill bygga system som använder befintlig kunskap för att härleda ny kunskap, fatta beslut och utföra operationer.
Vilka är de önskvärda egenskaperna för ett kunskapsrepresentationssystem?
All sorts kunskap i domänen måste kunna representeras.
Ny kunskap måste vara enkel att lägga in (helst automatiskt).
Ny kunskap måste kunna härledas från existerande kunskap.
Nya regler för härledningar måste vara enkla att lägga in.
Vad är kunskap enligt presentationen?
Kunskap kan vara en proposition som “Det regnar ute” och relationer som “Kalle vet att det regnar ute”.
Vad är symboler i kunskapsrepresentation?
Symboler är representationer av objekt eller tillstånd, till exempel kan “vR” vara en symbol för “vet att det regnar ute”.
Vad innebär resonerande i kontexten av kunskapsrepresentation?
Resonerande innebär att härleda ny kunskap från givna fakta, till exempel “John älskar Mary” och “Mary kommer på festen” kan leda till “Någon John älskar kommer på festen”.
Vilka praktiska frågeställningar finns kring hur kunskap ska representeras?
Vilket format ska användas? Till exempel naturligt språk.
Fördelar med naturligt språk inkluderar att det är extremt uttrycksfullt och används av människor.
Nackdelar inkluderar att syntax och semantik är komplicerade och inte fullt förstådda, och att naturliga språk ofta är tvetydiga.
Vad är exempel på tidiga kognitiva simuleringar?
Logic Theorist och General Problem Solver av Newell & Simon, som definierar heuristiska algoritmer för att simulera mänsklig kognition.
Vad är production rules och hur används de i kognitiva simuleringar?
Production rules är villkorssatser som säger “om en viss villkor gäller, utför en viss åtgärd”. If a certain condition holds, then perform a certain action.
Dessa används för att addera kunskap till kognitiva simuleringar och lagras i långtidsminnet.
Vad är formella logikmodeller och hur används de i AI? Vad innebär formella logikmodeller och hur skiljer de sig från heuristiska regler?
Formella logikmodeller använder formell logik för att representera kunskap och dra slutsatser:
Heuristiska regler: Simulerar mänskligt resonemang med hjälp av empiriska regler.
Formell logik: Använder strikta logiska principer för att dra slutsatser, vilket ger mer exakta och pålitliga resultat.
Imperativa algoritmer vs. Deklarativa metoder: Imperativa algoritmer beskriver steg-för-steg hur något ska göras, medan deklarativa metoder beskriver vad som ska uppnås utan att specificera hur.
Grundlade ett helt nytt paradigm inom programmering. Ledde till AI-språken LISP och senare PROLOG
Vilka är de olika programmeringsparadigmen och hur definieras de?
Imperativa programmeringsspråk: Algoritmer beskriver hur programmet tar sig från ett tillstånd till ett annat genom stegvisa instruktioner.
Deklarativa programmeringsspråk: Beskriver vad som ska uppnås, inte hur det ska göras.
Objektorienterade (I) programmeringsspråk: Programflödet styrs av objekt som interagerar genom att skicka meddelanden till varandra.
Procedurella (I) programmeringsspråk: Algoritmer beskriver sekventiella steg för att lösa ett problem.
Logiska programmeringsspråk (D): Definierar fakta och logiska regler.
Funktionella programmeringsspråk (D): Definierar procedurer genom matematiska funktioner.
Vilka är nackdelarna med imperativa programmeringsspråk för kunskapsrepresentation?
Manuell uppdatering: Datastrukturer måste uppdateras manuellt.
Brist på härledningsmekanismer: Imperativa språk saknar en generell mekanism för att härleda nya fakta från existerande.
Inte lämpliga för kunskapsrepresentation: Imperativa språk är inte lämpade för att modellera kunskap inom en viss domän och härleda ny kunskap.
Vad är PROLOG och hur fungerar det?
PROLOG är ett deklarativt (logiskt) programmeringsspråk som beskriver vad som vill uppnås utan att specificera hur det ska göras. Ett program i PROLOG består av fakta och regler, och systemet härleder nya fakta genom att utföra logiska härledningar baserade på dessa regler.
Hur ser ett enkelt exempel på PROLOG-kod ut som representerar föräldrarelationer?
/* Some facts about parent relationships */
parent(sam, mark).
parent(mark, Jim).
Detta definierar att Sam är förälder till Mark och att Mark är förälder till Jim.
Hur ställer man frågor till ett PROLOG-system och vad är ett exempel på en fråga och dess svar?
Frågor ställs genom att skriva frågor till systemet som sedan besvarar dem baserat på de definierade fakta och reglerna.
Exempel:
?- parent(sam, mark).
true.
?- parent(sam, jim).
false.
Hur definieras generella regler i PROLOG och ge ett exempel på en regel?
Generella regler definieras för att härleda nya fakta baserat på existerande fakta:
/* A general rule */
grandparent(GRANDPARENT, CHILD) :- parent(GRANDPARENT, PARENT), parent(PARENT, CHILD).
?– grandparent(sam,jim) true
Detta definierar att någon är en farförälder om de är förälder till en förälder till ett barn.
Vad innebär det för en agent att handla rationellt?
En rationell agent är en som gör det rätta, vilket innebär att välja den åtgärd som gör att agenten blir mest framgångsrik. Detta utvärderas genom en fast prestationsmått som utvärderar sekvensen av observerade åtgärdseffekter på miljön.
Hur interagerar en intelligent agent med sin miljö?
Miljö: Agentens omgivning som den interagerar med.
Sensorer: Uppfattar miljön.
Aktuatorer: Agerar i miljön baserat på sensorinput.
Mänsklig agent: Ögon, öron, händer, ben, mun.
Robotagent: Kameror, infraröda avståndsmätare, motorer.
Vilka egenskaper har intelligenta agenter?
An intelligent agent is a program that can make decisions or perform
a service based on its environment, user input and experiences.
Autonoma: Kan fatta egna beslut utan mänsklig inblandning.
Interagerar med andra agenter och miljön.
Reaktiva: Svarar på förändringar i miljön.
Proaktiva: Målstyrda, agerar för att uppnå specifika mål.
Ge exempel på tillämpningar av intelligenta agenter.
Exempel inkluderar sökmotorer, diagnostiska system, robotar och virtuella assistenter.
Hur påverkar miljöns egenskaper designen av en intelligent agent?
Miljöns egenskaper som tillgänglighet, determinism, episodisk eller sekventiell, statisk eller dynamisk, och diskret eller kontinuerlig påverkar agentens design och funktionssätt.