Miguel Lozano Ibáñez Grupo Artec, Instituto de Robótica Departament d’Informàtica

42
II Jornada de Informática Gráfica, Universitat Jaume I, Castelló. Julio 02 Entornos virtuales tontos tontos e inteligentes inteligentes, viejos algoritmos de IA para los nuevos dominios gráficos Miguel Lozano Ibáñez Miguel Lozano Ibáñez Grupo Artec, Instituto de Robótica Grupo Artec, Instituto de Robótica Departament d’Informàtica Departament d’Informàtica Facultat de Físiques Facultat de Físiques Universitat de València Universitat de València

description

Entornos virtuales tontos e inteligentes , viejos algoritmos de IA para los nuevos dominios gráficos. Miguel Lozano Ibáñez Grupo Artec, Instituto de Robótica Departament d’Informàtica Facultat de Físiques Universitat de València. Índice. E ntornos virtuales “tontos” - PowerPoint PPT Presentation

Transcript of Miguel Lozano Ibáñez Grupo Artec, Instituto de Robótica Departament d’Informàtica

Page 1: Miguel Lozano Ibáñez Grupo Artec, Instituto de Robótica Departament d’Informàtica

II Jornada de Informática Gráfica, Universitat Jaume I, Castelló. Julio 02

Entornos virtuales tontostontos e inteligentesinteligentes, viejos algoritmos

de IA para los nuevos dominios gráficos

Miguel Lozano IbáñezMiguel Lozano IbáñezGrupo Artec, Instituto de RobóticaGrupo Artec, Instituto de Robótica

Departament d’InformàticaDepartament d’Informàtica Facultat de FísiquesFacultat de Físiques

Universitat de ValènciaUniversitat de València

Page 2: Miguel Lozano Ibáñez Grupo Artec, Instituto de Robótica Departament d’Informàtica

II Jornada de Informática Gráfica, Universitat Jaume I, Castelló. Julio 02

Índice

• Entornos virtuales “tontos”“tontos”

• Inteligencia Artificial para Humanos Virtuales• Personajes, avatares• Agentes autónomos

• Animación comportamental: actores capaces de comportarse y reaccionar en su entorno.

• Path-Planning: navegación de actores en entornos virtuales.

• Simulación multi-agente: MAS y coordinación.

• Problemas pendientes: Futuro

Page 3: Miguel Lozano Ibáñez Grupo Artec, Instituto de Robótica Departament d’Informàtica

II Jornada de Informática Gráfica, Universitat Jaume I, Castelló. Julio 02

Entornos virtuales “tontos”

• Basados en alguna API gráfica (OpenGL), los entornos se crean a partir de:

– Modelado y Representación de la Geometría.Modelado y Representación de la Geometría.– Modelos Polígonales.– Modelos de Superficies.– Modelado Sólido.– Modelos de partición Espacial

• Normalmente se trabaja a partir de primitivas poligonales optimizadas.Normalmente se trabaja a partir de primitivas poligonales optimizadas.– Tira de cuadrados.Tira de cuadrados.– Tira de Triangulos.Tira de Triangulos.– Abanico de Triangulos...Abanico de Triangulos...

v0

v2

v4

v1

v3

v5

V1

V0

V5

V4

V3

V2

Page 4: Miguel Lozano Ibáñez Grupo Artec, Instituto de Robótica Departament d’Informàtica

II Jornada de Informática Gráfica, Universitat Jaume I, Castelló. Julio 02

Entornos virtuales “tontos”

• Propiedades de color y textura: la luz.Propiedades de color y textura: la luz.

• ... propiedades de los objetos.• ... comportamiento de la Luz.• Soluciones computables:

– Modelos de Iluminación • Iluminación Local (pto, normal, nvértices, no interacción entre objetos, (pto, normal, nvértices, no interacción entre objetos,

...)...)

– ... sombreado.• Phong• Goraud• ...

• Iluminación global (interacción entre objetos, sombras, ...)(interacción entre objetos, sombras, ...)

• T.Rayos• Radiosidad

• Mejora de las Soluciones: Mapeado de Texturas.

Page 5: Miguel Lozano Ibáñez Grupo Artec, Instituto de Robótica Departament d’Informàtica

II Jornada de Informática Gráfica, Universitat Jaume I, Castelló. Julio 02

Entornos virtuales “tontos”

El procesamiento de los Gráficos 3D. La El procesamiento de los Gráficos 3D. La pipelinepipeline Gráfica. Gráfica.

• Procesamiento de Objetos.• Procesamiento de Vértices

– Transformaciones del Modelo.– Transformaciones de la Vista.– Iluminación– Proyección.

Polígonos Vertices 2D +Z

RASTERINGPixels

Imagen final

Base de datos

Seleccinar objetos

Operaciones por pixels

Cálculo por vétices

1 2 3 4

C Á LC U LO D EL C O LO R

P R O Y E C TA R 3D -2D

•Procesamiento de Pixels:

–Zbuffer.

–Rellenado de color.

–Texturación.

Page 6: Miguel Lozano Ibáñez Grupo Artec, Instituto de Robótica Departament d’Informàtica

II Jornada de Informática Gráfica, Universitat Jaume I, Castelló. Julio 02

Entornos virtuales “tontos”

• Interacción mínima/nula con el entorno, orientados a la orientados a la visualización ...visualización ...

Entornos estáticos no Entornos estáticos no demasiado amigables demasiado amigables

(frios) calidad gráfica != (frios) calidad gráfica != calidad comportamental calidad comportamental

• Ausencia de actores/personajes autónomos

Page 7: Miguel Lozano Ibáñez Grupo Artec, Instituto de Robótica Departament d’Informàtica

II Jornada de Informática Gráfica, Universitat Jaume I, Castelló. Julio 02

Entornos virtuales “tontos”

Simulación (Man In the (Man In the Loop)Loop)

t

D a to S e n so rP ro c e s o d e l

M o d e lo

D is p o s it iv oV is u a liz a c ió n

G e n e rac ió n d eM o v im ie n to

S a l id a s

Ta T p

T i

Ts1

Ts2

Ts = m a x (Ts 1 ,Ts 2 )

T r = Ta + T p + Ts

Interacción usuari@ - entorno a través del modelo simulado

Page 8: Miguel Lozano Ibáñez Grupo Artec, Instituto de Robótica Departament d’Informàtica

II Jornada de Informática Gráfica, Universitat Jaume I, Castelló. Julio 02

Entornos virtuales “tontos”

–Grafos acíclicos dirigidos.

–Recorrido o traversal del grafo se obtiene como resultado un conjunto de primitivas con las transformaciones del modelo acumuladas.

–Los nodos sirven para organizar la escena, aplicar transformaciones, toma de decisiones, indicar geometría, propiedades visuales de los objetos, etc.

Estructuras de datos para la simulación 3D TR:Estructuras de datos para la simulación 3D TR:

–Nodos Visuales (geom & propiedades).

–Nodos de Operación (traversal: agrupación, recorte, LODs, Switch ...).

–Nodos de Transformación.

–Nodos de Retroalimentación (navegación ..).

Page 9: Miguel Lozano Ibáñez Grupo Artec, Instituto de Robótica Departament d’Informàtica

II Jornada de Informática Gráfica, Universitat Jaume I, Castelló. Julio 02

Entornos virtuales “tontos”

–El aumento de calidad gráfica de los entornos virtuales 3D ha generado la correspondiente expectación a nivel comportamental.

–Grafo de escena claramente orientado a la visualización tiempo real (militar), pero no al mantenimiento de la información de un entorno dinámico (IA) .

–Difícil integración de actores/personajes/criaturas articuladas autónomas en estos entornos ... sensores?, comunicación?, mantenimiento del mundo? ....

–Aylett(00)Aylett(00): La combinación de técnicas inteligentes de IA + VA integradas en criaturas autónomas con capacidad de actuación/interacción ... Entornos Virtuales Inteligentes.

Conclusiones:Conclusiones:

Page 10: Miguel Lozano Ibáñez Grupo Artec, Instituto de Robótica Departament d’Informàtica

II Jornada de Informática Gráfica, Universitat Jaume I, Castelló. Julio 02

Inteligencia Artificial para humanos virtuales

Categorías …Categorías …

– Personajes virtuales– Avatares – Agentes autónomos

LIG-EPFL

Agentes FísicosAgentes FísicosComportamiento físico Comportamiento físico

realista (gestos, expr. realista (gestos, expr. Faciales)Faciales)

Agentes CognitivosAgentes CognitivosComportamiento cognitivo:, Comportamiento cognitivo:,

repr. simbólica, leng. repr. simbólica, leng. natural, procesos natural, procesos cognitivos (planning)cognitivos (planning)

Page 11: Miguel Lozano Ibáñez Grupo Artec, Instituto de Robótica Departament d’Informàtica

II Jornada de Informática Gráfica, Universitat Jaume I, Castelló. Julio 02

Inteligencia Artificial para humanos virtuales

Personajes virtuales

AnanovaKyoko Date Webbie Tookay

Page 12: Miguel Lozano Ibáñez Grupo Artec, Instituto de Robótica Departament d’Informàtica

II Jornada de Informática Gráfica, Universitat Jaume I, Castelló. Julio 02

Inteligencia Artificial para humanos virtuales

Avatares virtuales

• Ciertas capacidades físicas y efectoras sobre el entorno (correr, saltar, volar, bailar, ... ).• Expresan un conjunto de emociones.

representación del usuari@representación del usuari@

Active Worlds

Page 13: Miguel Lozano Ibáñez Grupo Artec, Instituto de Robótica Departament d’Informàtica

II Jornada de Informática Gráfica, Universitat Jaume I, Castelló. Julio 02

Inteligencia Artificial para humanos virtualesAgentes autónomos

Comportamiento autónomo individual y/o Comportamiento autónomo individual y/o colectivocolectivo

LIG-EPFL

Page 14: Miguel Lozano Ibáñez Grupo Artec, Instituto de Robótica Departament d’Informàtica

II Jornada de Informática Gráfica, Universitat Jaume I, Castelló. Julio 02

Inteligencia Artificial para humanos virtuales

Agentes autónomos … inteligentes?

Sistema capaz de cumplir sus objetivosobjetivos

en un entorno complejo y dinámico, sensorizando su entorno y

actuando sobre el mismo.(Maes95)

No hay intervención humana

Flexibilidad en la toma de decisiones (AI-based, Wooldridge)

Autonomía, sociabilidad, reactividad, proactividadAutonomía, sociabilidad, reactividad, proactividad ...

+ fuerte: en base a conceptos humanos, creencias, intenciones, ...

Page 15: Miguel Lozano Ibáñez Grupo Artec, Instituto de Robótica Departament d’Informàtica

II Jornada de Informática Gráfica, Universitat Jaume I, Castelló. Julio 02

(AI Techniques for NPC Behaviours)(AI Techniques for NPC Behaviours)Animación comportamental

• Comportamiento: Las posibles acciones que los personajes autónomos (Non-Player Characters (NPCs)Non-Player Characters (NPCs)) llevarán a cabo en función de:– el estado de su entorno (e.j. Lemmings)– Localización espacial del usuari@ o estado del mismo (e.j.

Doom, Tekken, Air Combat …)– estado/reglas del juego (e.j. RISK)– propia iniciativa (objetivosobjetivos)

• Flexibilidad en la toma de decisiones (AI-based, WooldridgeAI-based, Wooldridge)– Ej: El cálculo de las trayectorias necesarias en juegos de

simulación, basado unicamente en módulos de simulación matemática/cinemática no debería ser considerado, estrictamente hablando, como comportamiento inteligente.

• … pero las decisiones a llevar a cabo (ej: atacar/adelantaratacar/adelantar a otros coches ... sí.

Comportamientos ... Reactivos? ... Inteligentes? ...Comportamientos ... Reactivos? ... Inteligentes? ...

Page 16: Miguel Lozano Ibáñez Grupo Artec, Instituto de Robótica Departament d’Informàtica

II Jornada de Informática Gráfica, Universitat Jaume I, Castelló. Julio 02

Animación comportamental (AI Techniques for NPC Behaviours)(AI Techniques for NPC Behaviours)

Comportamientos Comportamientos reactivosreactivos

• Descritos en base a la inmediata reacción ante determinadas situaciones

• Generalmente son comportamientos de bajo nivel – pueden ser parte de un plan más complejo – algunos NPC pueden ser programados únicamente en base

a comportamientos reactivos

... Comportamientos deliberativos... Comportamientos deliberativos

• Razonamiento Lógico/Planificación: búsqueda de la secuencia de acciones que permite al agente alcanzar su objetivo. En nuestro contexto puede ser considerada como la forma más genérica de animación comportamental para agentes virtuales inteligentes.

Page 17: Miguel Lozano Ibáñez Grupo Artec, Instituto de Robótica Departament d’Informàtica

II Jornada de Informática Gráfica, Universitat Jaume I, Castelló. Julio 02

Formalismos (AI Techniques for NPC Behaviours)(AI Techniques for NPC Behaviours)

Geometría Geometría Geometría Geometría

Precálculos cinemáticos(motion capture) Cinemática Cinemática Cinemática

Simulación dinámica

Comportamientoreactivo

Comportamientoreactivo

Modeladocognitivo

(dirigido por objetivo)IntegraciónIntegración

Comportamiento - Sistema Comportamiento - Sistema motor/actuadormotor/actuador

• Introduciremos tres formalismos:Introduciremos tres formalismos:– Máquinas de estados finitos (Máquinas de estados finitos (Case-based reasoningCase-based reasoning))– Razonamiento basado en reglas (Razonamiento basado en reglas (Rule-based reasoning)Rule-based reasoning)

• Sistemas de producción Sistemas de producción – Planificación jerárquicaPlanificación jerárquica

• Árboles Y/O (Árboles Y/O (AND/OR GraphsAND/OR Graphs))

ReactivosReactivos

DeliberativosDeliberativos

Page 18: Miguel Lozano Ibáñez Grupo Artec, Instituto de Robótica Departament d’Informàtica

II Jornada de Informática Gráfica, Universitat Jaume I, Castelló. Julio 02

Máquinas de estados finitos

• Técnica dominante en juegos– Formalmente son tuplas (V, Q, I, F, m) ...– Técnica eficiente ... adecuada para actores virtuales– Alto grado de descripción y fácilidad de mantenimiento:

normalmente máquinas con un número de estados reducido

(AI Techniques for NPC Behaviours)(AI Techniques for NPC Behaviours)

Puerta Cerrada

Abrir Puerta

Puerta Abierta

• Nodos representan estados, mientras que los arcos representan transiciones entre estados• Pueden ser vistos como “planes compilados”“planes compilados”

Page 19: Miguel Lozano Ibáñez Grupo Artec, Instituto de Robótica Departament d’Informàtica

II Jornada de Informática Gráfica, Universitat Jaume I, Castelló. Julio 02

A

B

C

D

1

2

3

3

1

Distintos autómatas basados en la Teoría de autómatas finitos (ATN,

FSTN, ...)(adaptación de A. Whittaker)

A

B

C

D

1

2

3

3

1

ab

d

A

B

C

D

1

2

3

3

1

ab

dState

Percept

Transition

Action

iii

iii

Register

Máquinas de estados finitos ((FFinite inite SState tate TTransition ransition NNetworks)etworks)

Page 20: Miguel Lozano Ibáñez Grupo Artec, Instituto de Robótica Departament d’Informàtica

II Jornada de Informática Gráfica, Universitat Jaume I, Castelló. Julio 02

Ejemplo: Quake

• El comportamiento está basado en la definición del autómata, estados (idle, attacking, reacting to attack, idle, attacking, reacting to attack, …… etc.) y transiciones.

The QUAKE™ FSA

(AI Techniques for NPC Behaviours)(AI Techniques for NPC Behaviours)

Page 21: Miguel Lozano Ibáñez Grupo Artec, Instituto de Robótica Departament d’Informàtica

II Jornada de Informática Gráfica, Universitat Jaume I, Castelló. Julio 02

idleidle attackattack deaddead

searchsearch hurthurt

Sees enemySees enemy

Kills enemyKills enemy

Loses interestLoses interestloses sightloses sightof enemyof enemy

Gets killedGets killed

gets hurtgets hurt

Compute LOSCompute LOS

Compute LOSCompute LOS

Compute damageCompute damage

Compute, e.g. time limitCompute, e.g. time limit

retaliateretaliate

Search procedureSearch procedure

Change Change appearanceappearance

• Data-drivenData-driven system ... división entre tareas de programación de perceptspercepts/actionsactions y las tareas de diseño comportamental (creación del autómata).

• Un buen formalismo debería proporcionar mecanismos necesarios para realizar cambios consistentes o mejoras.

• Ajustes mediante parametrización– Variar el tiempo límite de pérdida de interés para hacer a

los personajes más persistentes– Alterar la línea de visión

Ejemplo: Quake (comentarios)(AI Techniques for NPC Behaviours)(AI Techniques for NPC Behaviours)

Page 22: Miguel Lozano Ibáñez Grupo Artec, Instituto de Robótica Departament d’Informàtica

II Jornada de Informática Gráfica, Universitat Jaume I, Castelló. Julio 02

(AI Techniques for NPC Behaviours)(AI Techniques for NPC Behaviours)

Razonamiento basado en reglas (rule-based systems)

• Técnica muy utilizada en IA– Tradicionalmente asociada con los sistemas expertos– Paradigma de programación (alta aplicabilidad)– Declaratividad, ModularidadDeclaratividad, Modularidad ... Separación control/datos +

robusto

• Elementos– Hechos (memoria dinámica)– Reglas (memoria estática/dinámica?)– Motor de inferencia– Mecanismo de unificación (eficiencia?)(eficiencia?)

• En Entornos Virtuales ha sido utilizada– Toma de decisiones (forward/backward chaining)(forward/backward chaining)– Simulación comportamental [1..n] actores (Ej: Flock of birds (Reynolds)) (forward(forward chaining)chaining)

equilibrio

Page 23: Miguel Lozano Ibáñez Grupo Artec, Instituto de Robótica Departament d’Informàtica

II Jornada de Informática Gráfica, Universitat Jaume I, Castelló. Julio 02

(AI Techniques for NPC Behaviours)(AI Techniques for NPC Behaviours)

Sistemas de producción (rule-based systems)

• Las reglas/producciones son de la forma

IF (hechoshechos) THEN (hechos | accioneshechos | acciones)

• … añadir nuevos hechos a la M.T. hará que se disparen nuevas reglas ..

• … proponer acción …

IF (health < 10%) and (Medikit nearby)IF (health < 10%) and (Medikit nearby)

THEN (pick up the Medikit at once)THEN (pick up the Medikit at once)

IF (health < 40%) THEN (health_is_bad) IF (health < 40%) THEN (health_is_bad)

IF (health_is_bad)IF (health_is_bad) and (no plasma_gun)and (no plasma_gun)THEN (situation_is_bad)THEN (situation_is_bad)

forward chainingforward chaining

facts_0

rules

facts_1

facts_2...rules

Page 24: Miguel Lozano Ibáñez Grupo Artec, Instituto de Robótica Departament d’Informàtica

II Jornada de Informática Gráfica, Universitat Jaume I, Castelló. Julio 02

Elaboration

Propose Operators

Evaluate Proposed Operators

Select One Operator

Perform Operator Actions

Soar

(AI Techniques for NPC Behaviours)(AI Techniques for NPC Behaviours)

Sistemas de producción (rule-based systems)

Ejemplo: Soar Quakebots (Laird): QuakeII, Unreal, …QuakeII, Unreal, …

Sistema experto en tiempo real, el conocimiento del juego está codificado en aproximadamente 800 reglas

IF enemy visible AND my health is < very-low-health-value (20%) OR his weapon is much better than mineTHEN propose retreat

(Toma de decisiones: (Toma de decisiones: Inteligencia táctica Inteligencia táctica aplicada a las ppales fases del juego, aplicada a las ppales fases del juego,

coger armas, atacar, retirarse,…)coger armas, atacar, retirarse,…)

Page 25: Miguel Lozano Ibáñez Grupo Artec, Instituto de Robótica Departament d’Informàtica

II Jornada de Informática Gráfica, Universitat Jaume I, Castelló. Julio 02

(AI Techniques for NPC Behaviours)(AI Techniques for NPC Behaviours)

Sistemas de producción (rule-based systems)

Encadenamiento hacia atrás (Backward chaining)

… demostrar que una conclusión/hecho es cierto buscando “hacia “hacia atrás …”atrás …”

IF A and B THEN CIF A and B THEN C

IF C or D THEN EIF C or D THEN E

IF E and F THEN G IF E and F THEN G

demostrar A y B

Demostrar G

… F

Laird, GDC99Laird, GDC99

Page 26: Miguel Lozano Ibáñez Grupo Artec, Instituto de Robótica Departament d’Informàtica

II Jornada de Informática Gráfica, Universitat Jaume I, Castelló. Julio 02

(AI Techniques for NPC Behaviours)(AI Techniques for NPC Behaviours)

Computer-Aided Instruction: Steve

• Steve es un humano virtual autónomo para el entrenamiento de tareas de mantenimiento

• Steve se comunica con el usuari@ por medio de voz sintética …

University of Southern CaliforniaUniversity of Southern California

Sistemas de producción (rule-based systems)

Page 27: Miguel Lozano Ibáñez Grupo Artec, Instituto de Robótica Departament d’Informàtica

II Jornada de Informática Gráfica, Universitat Jaume I, Castelló. Julio 02

• Control es complicado ... número de reglas ..• ... a menudo muchas reglas se disparan ...• ... consecuencias contradictorias? ... acciones

incompatibles ... conflictosconflictos • ..en algunos casos todas las reglas son plausibles ...

En otros no ... Agrupaciones de reglas ...

(AI Techniques for NPC Behaviours)(AI Techniques for NPC Behaviours)

Sistemas de producción (rule-based systems)

Problemas …

IF (you are unarmed) IF (you are unarmed) and (guard has not noticed you)and (guard has not noticed you)THENTHEN (attack with bare fists)(attack with bare fists)

IF (you are unarmed) IF (you are unarmed) and (guard has not noticed you)and (guard has not noticed you)THENTHEN (wait)(wait)

• Meta-reglas que operan sobre reglas ..• Son usadas para la resolución de conflictos,

donde varias reglas se han disparado

IF (several rules can be applied)(several rules can be applied)

THEN (apply first rules dealing with health)(apply first rules dealing with health)

• Asociar valores numéricos a las reglas (v. certeza/ prob ...)

• Usar estos “marcadores” para resolver el conflicto

Page 28: Miguel Lozano Ibáñez Grupo Artec, Instituto de Robótica Departament d’Informàtica

II Jornada de Informática Gráfica, Universitat Jaume I, Castelló. Julio 02

• Juegos Interactivos …Cine interactivo ... Planes de “nivel alto”

Ejemplo II: Virtual Storytelling(AI Techniques for NPC Behaviours)(AI Techniques for NPC Behaviours)

Planificación jerárquica

Cavazza, VR00Cavazza, VR00

Page 29: Miguel Lozano Ibáñez Grupo Artec, Instituto de Robótica Departament d’Informàtica

II Jornada de Informática Gráfica, Universitat Jaume I, Castelló. Julio 02

(AI Techniques for NPC Behaviours)(AI Techniques for NPC Behaviours)

Generación de la historia …

Los personajes compiten Los personajes compiten por los por los

“recursos/objetos” que “recursos/objetos” que percibe en su escenariopercibe en su escenario

(… The Sims)(… The Sims)

Virtual Storytelling

Planificación jerárquica

Page 30: Miguel Lozano Ibáñez Grupo Artec, Instituto de Robótica Departament d’Informàtica

II Jornada de Informática Gráfica, Universitat Jaume I, Castelló. Julio 02

Recordemos ...

• Entornos virtuales “tontos”“tontos”

• Inteligencia Artificial para Humanos Virtuales

• Problemas principales

• Animación comportamental: actores capaces de comportarse y reaccionar en su entorno.

• Path-Planning: navegación de actores en entornos virtuales.

• Sistemas multi-agente e IAD

• Problemas pendientes: Futuro

Page 31: Miguel Lozano Ibáñez Grupo Artec, Instituto de Robótica Departament d’Informàtica

II Jornada de Informática Gráfica, Universitat Jaume I, Castelló. Julio 02

Navegación de actores virtuales (Path-planning)(Path-planning)

• … entornos robóticos y virtuales …

• 2 enfoques:

• Global• NPC: acceso a toda la BD … no tienen limitación

sensorial (omniscientes?, entornos estáticos?) … • Familia de algortimos de Búsqueda Heuristica

(A*, RTA*, D*…)

• Local• Robots & Agentes/Humanos Virtuales• Navegación reactiva … orientados a entornos

dinámicos• Reglas, Redes Neuronales, …

Page 32: Miguel Lozano Ibáñez Grupo Artec, Instituto de Robótica Departament d’Informàtica

II Jornada de Informática Gráfica, Universitat Jaume I, Castelló. Julio 02

Navegación de actores virtuales (Path-planning)(Path-planning)

Navegando con información global ...

• Problema de búsqueda aplicado al problema de la navegación ... Laberinto (real?)

• Ir de A a B evitando obstáculos• Moviemintos válidos 4/8

vecinos• Camino más corto …

DiscretizaciónDiscretizacióndel entornodel entorno

Page 33: Miguel Lozano Ibáñez Grupo Artec, Instituto de Robótica Departament d’Informàtica

II Jornada de Informática Gráfica, Universitat Jaume I, Castelló. Julio 02

Navegación de actores virtuales (Path-planning)(Path-planning)

Camino A-B

A

B

• A* es un algoritmo de búsqueda que garantiza una solución/camino óptimo.

• A* reduce el numero de nodos expandidos por medio de una función heuristica, ... de esta manera explora el árbol más rápido.

A

B

Page 34: Miguel Lozano Ibáñez Grupo Artec, Instituto de Robótica Departament d’Informàtica

II Jornada de Informática Gráfica, Universitat Jaume I, Castelló. Julio 02

Navegación de actores virtuales (Path-planning)(Path-planning)

• Cada nodo tendrá asociado una función de evaluación o coste

f’(n) = h’(n) + g(n)f’(n) = h’(n) + g(n)

• Coste estático (g(n)g(n)) : derivado a partir de su padre

g(n) g(n) = g(padre) + c(padre,n)

• La función heuristica corresponderá a algún tipo de distancia al nodo/celda objetivo (h’(n) h’(n) estimará a la distancia real h(n) )

A

B

x

z

Distancia Euclidea

Distancia de Manhattan

Page 35: Miguel Lozano Ibáñez Grupo Artec, Instituto de Robótica Departament d’Informàtica

II Jornada de Informática Gráfica, Universitat Jaume I, Castelló. Julio 02

Navegación de actores virtuales (Path-planning)(Path-planning)

f’(n) = g(n) + h’(n) f’(n) = g(n) + h’(n)

“Depth-first” component“Breadth-first” component

f’f’ww(n) = (1-w) g(n) + w h’(n)(n) = (1-w) g(n) + w h’(n)

... con pesos (Pohl)... con pesos (Pohl)

w = 0 (breadth-first)w = 1/2 (A*)w = 1 (BF*, with f = h)

… equilibrio entre eficienciay seguridad ...

Page 36: Miguel Lozano Ibáñez Grupo Artec, Instituto de Robótica Departament d’Informàtica

II Jornada de Informática Gráfica, Universitat Jaume I, Castelló. Julio 02

Navegación de actores virtuales (Path-planning)(Path-planning)

• Complejidad …• La complejidad temporal de A* es exponencial, a menos

que la función heurística sea excelente (.. el error por debajo de la función logarítmica)

• Una restricción más fuerte es la complejidad espacial de A*’, … también exponencial, limitando su uso práctico (n-puzzles)

• IDA* (Korf) soluciona este problema de A*, sin sacrificar su optimalidad.

Es aconsejable? ...

• Humanos tenemos un campo de visión limitado, lo que nos hace“buscar” los objetos que caen fuera de él.

• Caminos poco realistas (suavizados posteriormente)

• Entornos dinámicos !!

Page 37: Miguel Lozano Ibáñez Grupo Artec, Instituto de Robótica Departament d’Informàtica

II Jornada de Informática Gráfica, Universitat Jaume I, Castelló. Julio 02

Navegación de actores virtuales (Path-planning)(Path-planning)

La familia de A*La familia de A*

• RTARTA*:*: Real-Time A*. .. Calcula un mvto. por ciclo … no todo el camino off-line

• LRTA*:LRTA*: Learning RTA* (pesos dinámicos, objetivo móvil)

• IDA*:IDA*: Iterative-Deepening A*

• D*:D*: Dynamic A*, permite “replanningreplanning”

• Rd*:Rd*: Variante que utiliza información a cerca de la bondad de la función heurística

Page 38: Miguel Lozano Ibáñez Grupo Artec, Instituto de Robótica Departament d’Informàtica

II Jornada de Informática Gráfica, Universitat Jaume I, Castelló. Julio 02

... más de 1 agente

… sistemas multiagente (MAS)(MAS) e IAD (distributed problem (distributed problem solving)solving)

¿trabajan en común resolviendo un problema?¿trabajan en común resolviendo un problema?

las tareas “inteligentes” (planning, etc) son llevadas

a cabo por agentes con capacidad de comunicarse

para cooperar

Rama de la IA que estudia la resolución de problemas mediante procesamiento

descentralizado

contiene a ...contiene a ...

• Algunos juegos/simulaciones, etc. están basados en la interacción de agentes/actores ...

• ... es posible obtener comportamientos globales complejos como resultado de los comportamientos individuales (MAS)

• Las técincas Multi-agente son también una forma de resolver problemas (general problem-solving technique)(general problem-solving technique) ... No confundir con coordinación multi-agente (multi-agent co-ordination)(multi-agent co-ordination)

Page 39: Miguel Lozano Ibáñez Grupo Artec, Instituto de Robótica Departament d’Informàtica

II Jornada de Informática Gráfica, Universitat Jaume I, Castelló. Julio 02

Multi-agent (High-Level) Co-ordination (simulation agents)

En juegos … NPC co-ordinationNPC co-ordination

– … con el usuari@ (Team Buddies, X-Squad, etc.)– … con otros agentes– ... comportaminto colectivo agentes: coches, hormigas,

aviones, gente …

• Basados en algún lenguaje de comunicación entre agentes

KQMLKQML, ACL (FIPA), COOL, (CFOR)

• Tratamiento de mensajes …Blackboard Controller

Controller Buffer

Battle ScriptOverride

KS Controller

KS1 KS2 KS3

KS Interface

Agent1

Agent2

Agent3

AgentNotificationController

Blackboard

Time

SYSTEMTIME

Message Processing

FormalUnification

KSn

Agentn

KSDB

Page 40: Miguel Lozano Ibáñez Grupo Artec, Instituto de Robótica Departament d’Informàtica

II Jornada de Informática Gráfica, Universitat Jaume I, Castelló. Julio 02

IAD (resolución de problemas) y Sistemas Multiagente

1 2 3

4

567

8

• La solución de la IAD sería asociar un agente a cada celda

• Cada agente tendría comportamientos elementales como “atacar otra celda para ocupar su posicón” o “escapar en caso de ataque”

• Además cada agente tendría su objetivo “ocupar su posición final”

Este metodo proporciona Este metodo proporciona resultados similares a RTA* y resultados similares a RTA* y LRTA*, es decir, similar a los LRTA*, es decir, similar a los

mejores métodos de búsqueda mejores métodos de búsqueda heuristicaheuristica LemmingLemming

s’s’

Page 41: Miguel Lozano Ibáñez Grupo Artec, Instituto de Robótica Departament d’Informàtica

II Jornada de Informática Gráfica, Universitat Jaume I, Castelló. Julio 02

Futuro …

Problemas pendientes …Problemas pendientes …

Page 42: Miguel Lozano Ibáñez Grupo Artec, Instituto de Robótica Departament d’Informàtica

II Jornada de Informática Gráfica, Universitat Jaume I, Castelló. Julio 02

Entornos virtuales tontostontos e inteligentesinteligentes, viejos algoritmos

de IA para los nuevos dominios gráficos

Miguel Lozano IbáñezGrupo Artec, Instituto de Robótica

Departament d’Informàtica Facultat de Físiques

Universitat de València