AI Search & Planning Flashcards
Hur ser ett typiskt search problem ut? (sök problem)
Ett typiskt sökproblem definieras av ett initialt tillstånd och ett måltillstånd. Till exempel: Initial: A, Goal: F.
Hur ser lösningen ut för ett search problem (sökproblem)?
Lösningen är en sekvens av åtgärder eller tillstånd som leder från det initiala tillståndet till måltillståndet.
Vad är ett search tree (sökträd) och vad används det till?
Ett sökträd representerar sökutrymmet och visar möjliga lösningar från det initiala tillståndet. Det används för att organisera och visualisera sökprocessen.
Vad är en tree search och hur fungerar det?
Tree search är en algoritm som söker igenom ett sökträd genom att expandera noder och generera deras barn. Det använder en lista av noder som väntar på att kontrolleras, kallad fringe.
Vilka steg behövs för att bygga ett system som löser ett specifikt problem?
Definiera problemet med precisa specifikationer av initialt och slutligt tillstånd.
Analysera problemet för att identifiera viktiga egenskaper.
Isolera och representera dessa egenskaper i en kunskapsrepresentation.
Välj och tillämpa den bästa problemslösningstekniken.
Vilka typiska frågor behöver besvaras i en problemslösningsprocess?
Är problemslösaren garanterad att hitta en lösning?
Kommer systemet alltid att avslutas eller fastna i en oändlig loop?
Är den funna lösningen optimal?
Vad är komplexiteten i sökprocessen?
Hur kan systemet reducera sökkomplexiteten?
Hur kan det effektivt använda representationsparadigmet?
Vad är viktiga termer inom search problem (sökproblem) och deras betydelse?
Search space: Möjliga tillstånd och lösningar.
Initial state: Starttillstånd för sökprocessen.
Goal state: Sluttillståndet för sökprocessen.
Problem space: Vad som ska lösas.
Searching strategy: Strategi för att kontrollera sökningen.
Search tree: Trädrepresentation av sökutrymmet.
Vad är målet i 8-pusslet och hur kan det lösas? Vilka är de viktiga komponenterna i 8-pusslet?
Målet är att arrangera brickorna i en specifik ordning. Lösningen innebär att flytta den tomma rutan tills brickorna är i rätt ordning.
States: Positioner för brickor.
Actions: Flytta den tomma rutan vänster, höger, upp eller ner.
Goal test: Målkonfigurationen.
Path cost: 1 per flytt.
Vilka är de viktiga komponenterna i ett robotmonteringsproblem?
States: Realtidskoordinater för robotens ledvinklar och delar som ska monteras.
Actions: Kontinuerliga rörelser av robotens leder.
Goal test: Färdig montering.
Path cost: Tid att utföra.
Vad illustrerar “rice and the chess board” historien?
Historien illustrerar exponentiell tillväxt och hur snabbt antalet stater kan växa i ett sökproblem. På den 64:e rutan skulle kungen behöva placera över 18 kvintiljoner riskorn, vilket motsvarar ungefär 350 års global risproduktion.
Vad är den grundläggande idén med tree search-algoritmer?
Den grundläggande idén är offline, simulerad utforskning av sökutrymmet genom att generera efterföljare till redan utforskade tillstånd.
Vad är målet och problemet i Romania-exemplet?
Målet är att resa från Arad till Bukarest. Problemet är att formulera tillstånd (städer) och åtgärder (kör mellan städer) för att hitta en lösning (sekvens av städer).
Problemet är att hitta den kortaste körvägen mellan två städer (Arad och Bukarest) genom att använda en sökstrategi som utforskar olika vägar och kostnader.
Hur definieras en search strategy (sökstrategi) och hur utvärderas den?
En sökstrategi definieras genom att välja ordningen för nodexpansion. Den utvärderas utifrån fullständighet, tidskomplexitet, minneskomplexitet och optimalitet.
Vad är uninformed search strategies och vilka exempel finns?
Uninformed search strategies använder endast information tillgänglig i problemdefinitionen. Exempel inkluderar:
Breadth-first search
Uniform-cost search
Depth-first search
Depth-limited search
Iterative deepening search
Hur fungerar breadth-first search och hur implementeras det?
Breadth-first search expanderar den grundaste oexpanderade noden först. Det implementeras med en FIFO-kö, där nya efterföljare placeras i slutet av kön.
Breadth-first search (BFS) explores all the neighboring nodes at the
current depth before moving on to the nodes at the next depth level.
Vad är egenskaperna hos breadth-first search?
Fullständighet: Ja, om trädet är ändligt.
Minne: Behåller varje nod i minnet.
Optimalitet: Ja, om kostnaden är 1 per steg.
Problem: Hög minnesanvändning.
Hur fungerar depth-first search och hur implementeras det?
Depth-first search expanderar den djupaste oexpanderade noden först. Det implementeras med en LIFO-kö, där efterföljare placeras i början av kön.
Depth-first search (DFS) explores as far as possible along each branch
before backtracking.
Vad är egenskaperna hos depth-first search?
Fullständighet: Nej, misslyckas i oändliga djuputrymmen eller med loopar.
Optimalitet: Nej.
Vilka faktorer avgör valet mellan breadth-first och depth-first search?
Breadth-first: Bäst för att hitta den kortaste vägen eller alla möjliga lösningar.
Depth-first: Bättre för problem där vilken lösning som helst är acceptabel eller där lösningen troligtvis finns nära startpunkten.
Valet beror på det specifika problemet och dess krav.
Vad är uniform-cost search och hur fungerar det?
Uniform-cost search expanderar noder baserat på den lägsta kostnaden hittills. Det använder en prioritetskö där noder med lägst kostnad expanderas först.
Hur används en prioritetskö i uniform-cost search?
En prioritetskö används för att hantera och ordna noder baserat på deras kostnad, där noder med lägst kostnad expanderas först.
Hur bestäms vilken barnnod som är mest lovande i en sökning?
Den mest lovande barnnoden bestäms genom att utvärdera kostnaden för att nå varje barnnod och välja den med lägst kostnad.
Vad är informed search och hur skiljer det sig från uninformed search?
Informed search använder ytterligare information utöver problemdefinitionen för att vägleda sökningen mot målet mer effektivt. Det utnyttjar heuristiska funktioner som ger en uppskattning av kostnaden att nå målet från ett givet tillstånd, vilket hjälper algoritmen att fokusera på de mest lovande vägarna.
Vad är en heuristisk funktion och hur används den i informed search?
En heuristisk funktion är en funktion som uppskattar kostnaden för att nå ett måltillstånd från ett givet tillstånd. Den används i informed search för att vägleda sökningen och hjälpa algoritmen att fokusera på de mest lovande vägarna.
Är A*-algoritmen en informed eller uninformed search-algoritm?
A*-algoritmen är en informed search-algoritm eftersom den använder en heuristisk funktion för att uppskatta kostnaden för att nå måltillståndet och kombinera detta med den faktiska kostnaden hittills.
Hur uppskattar A*-algoritmen löftet av en barnnod?
A*-algoritmen använder en utvärderingsfunktion f(n) = g(n) + h(n), där:
g(n) är kostnaden hittills för att nå n.
h(n) är den uppskattade kostnaden från n till målet.
f(n) är den uppskattade totala kostnaden för vägen genom n till målet.