Clase: Búsqueda Heurísticaac/sia/downloads/Clases Practicas/Clase Prac… · 䡧Los métodos de...
Transcript of Clase: Búsqueda Heurísticaac/sia/downloads/Clases Practicas/Clase Prac… · 䡧Los métodos de...
ConceptosdeInteligenciaArtificial SistemasInteligentesArtificiales
SegundoCuatrimestre2019
DepartamentodeCienciaseIngenieríadelaComputaciónUniversidadNacionaldelSur
Clase:BúsquedaHeurísticaAlgoritmoA*
BúsquedaHeurística
Losmétodosdebúsquedaheurística(obúsquedainformada)consideraninformaciónpresenteenlosestadosparaguiarlaexploracióndelespaciodeestadoshaciaunabuenasolución.
Lainformaciónpresenteenlosestadospermitedefinirunafunciónheurísticah(N)que,aplicadaaunnodoN,proveeunaestimacióndelcostodelcaminomenoscostosoparaalcanzarunametaapartirdeN.
Laestrategiageneraldeestetipodemétodosconsisteenseleccionardelafronteraelnodomáspromisorioparaasíllegarmásrápidamenteaunameta.
2
AlgoritmoA*Almomentodeseleccionarunnododelafrontera,A*eligeaquelqueprometearribaraunamejorsolución.
ParacadanodoNalmacenadoenlafronteraseconoce:▪ CostodelcaminodesdeelEstadoInicialhastaN:g(N)▪ EstimacióndelcostodelcaminodesdeNhastaunameta:h(N)
3
Estado Inicial N Meta
g(N) h(N)
yaexplorado sinexplorar
f(N)=g(N)+h(N)esunaestimacióndelcostototaldeuncaminodesdeelEstadoInicialalaMeta(solución)quepasaporN.
A*seleccionaelnodoNcuyovalordef(N)seaelmenor
AlgoritmoA*-ControldeCiclos
AlutilizarseelmétododebúsquedaA*puedeefectuarsecontroldeciclosporrazonesdeeficiencia,podandoasíelárboldebúsqueda.
Enparticular,unmismoestadoEpuedeseralcanzadopordiferentescaminoscondistintoscostosasociados.
Porlotanto,siunestadoesgeneradonuevamenteperosobreunmejorcamino,valelapenavolveraconsiderarlo.
4
AlgoritmoA*-ControldeCiclos(1)
5
DadounnodoN’correspondienteaunestadoEobtenidoenelprocesodegeneracióndevecinos:
SiexisteenlaFronteraunnodoNetiquetadoconelestadoEtalquef(N’)<f(N)(i.e.,esposiblealcanzarelestadoEporunmejorcaminoqueelasociadoalnodoN),entoncesreemplazamosNenlaFronteraporelnodoN’.
SiexisteenelconjuntodenodosVisitadosunnodoNetiquetadoconelestadoEtalquef(N’)<f(N)(i.e.,esposiblealcanzarelestadoEporunmejorcaminoqueelasociadoalnodoN),entoncesremovemoselnodoNdelconjuntodeVisitadosyañadimosalaFronteraelnodoN’.
AlgoritmoA*-ControldeCiclos(2)
6
DadounnodoN’correspondienteaunestadoEobtenidoenelprocesodegeneracióndevecinos:
SiexisteenlaFronteraoenelconjuntodeVisitadosunnodoNetiquetadoconelestadoEtalquef(N’)>=f(N),entoncessedescartaelnodoN’(noseefectúancambiosenlaFronteranienVisitados).
SinoexisteenlaFronteranienelconjuntodeVisitadosunnodoNetiquetadoconelestadoE,entoncesañadimosalaFronteraelnodoN’.
A - [ ] - 5
7
Frontera Visitados
A:5
B:1
C:2
E:1
D:0
5 km3 km
1 km
2 km
3 km
2 km
A*:f(N)=g(N)+h(N)–Traza
A:5
A - [ ] - 5
8
Frontera Visitados
A:5
B:1
C:2
E:1
D:0
5 km3 km
1 km
2 km
3 km
2 km
A:5
B - [A] - 6 A - [ ] - 5 C - [A] - 5
B:1
C:2
5 km3 km
A*:f(N)=g(N)+h(N)–Traza
A - [ ] - 5
9
Frontera Visitados
A:5
B:1
C:2
E:1
D:0
5 km3 km
1 km
2 km
3 km
2 km
A:5
B - [A] - 6 C - [A] - 5
B:1
C:2
5 km3 km
B:1 E:1
1 km
3 km
E - [A,C] - 7
EnlaFronterayahayunnodoparaelestadoB¿quéhayquehacer?
Como B fue alcanzado por unmejor camino(convalor f(N)=5)entonces reemplazamoselnodoB-[A]-6porB-[A,C]-5
A*:f(N)=g(N)+h(N)–Traza
A - [ ] - 5
C - [A] - 5 A - [ ] - 5 B - [A] - 6
10
Frontera Visitados
A:5
B:1
C:2
E:1
D:0
5 km3 km
1 km
2 km
3 km
2 km
A:5
B:1
C:2
5 km3 km
B:1 E:1
1 km
3 km
A*:f(N)=g(N)+h(N)–Traza
A - [ ] - 5
B - [A] - 6 C - [A] - 5
E - [A,C] - 7
A - [ ] - 5
C - [A] - 5 A - [ ] - 5 B - [A] - 6
B - [A,C] - 5
11
Frontera Visitados
A:5
B:1
C:2
E:1
D:0
5 km3 km
1 km
2 km
3 km
2 km
A:5
B:1
C:2
5 km3 km
B:1 E:1
1 km
3 km
A*:f(N)=g(N)+h(N)–Traza
A - [ ] - 5
B - [A] - 6 C - [A] - 5
E - [A,C] - 7
A - [ ] - 5
C - [A] - 5 A - [ ] - 5 B - [A] - 6
B - [A,C] - 5
Continuar☺
12
Frontera Visitados
A:25
B:5
C:12
D:0
20 km15 km
4 km
10 km 20 km
Ejercicio☺
A*:f(N)=g(N)+h(N)–Traza