Universidad de Buenos Aires Facultad de Ingeniería 2010 - Trabajo Profesional Docente Jorge...

28
Universidad de Buenos Aires Universidad de Buenos Aires Facultad de Ingeniería Facultad de Ingeniería 2010 - Trabajo Profesional 2010 - Trabajo Profesional Docente Docente Jorge Salvador Iercahe Jorge Salvador Iercahe Alumnos Alumnos Milton Berman Milton Berman Fernando Torres Fernando Torres Leonardo Yagi Leonardo Yagi Framework de Sistemas Framework de Sistemas Autónomo de Robots Autónomo de Robots

Transcript of Universidad de Buenos Aires Facultad de Ingeniería 2010 - Trabajo Profesional Docente Jorge...

Page 1: Universidad de Buenos Aires Facultad de Ingeniería 2010 - Trabajo Profesional Docente Jorge Salvador Iercahe Alumnos Milton Berman Fernando Torres Leonardo.

Universidad de Buenos AiresUniversidad de Buenos AiresFacultad de IngenieríaFacultad de Ingeniería

2010 - Trabajo Profesional2010 - Trabajo Profesional

DocenteDocenteJorge Salvador IercaheJorge Salvador Iercahe

AlumnosAlumnosMilton BermanMilton BermanFernando TorresFernando TorresLeonardo YagiLeonardo Yagi

Framework de Sistemas Framework de Sistemas Autónomo de RobotsAutónomo de Robots

Page 2: Universidad de Buenos Aires Facultad de Ingeniería 2010 - Trabajo Profesional Docente Jorge Salvador Iercahe Alumnos Milton Berman Fernando Torres Leonardo.

ObjetivoObjetivoAlcanceAlcanceProblemaProblemaSoluciónSolución

IntroducciónIntroducción

Page 3: Universidad de Buenos Aires Facultad de Ingeniería 2010 - Trabajo Profesional Docente Jorge Salvador Iercahe Alumnos Milton Berman Fernando Torres Leonardo.

ObjetivoObjetivo

Page 4: Universidad de Buenos Aires Facultad de Ingeniería 2010 - Trabajo Profesional Docente Jorge Salvador Iercahe Alumnos Milton Berman Fernando Torres Leonardo.

AlcanceAlcance

Page 5: Universidad de Buenos Aires Facultad de Ingeniería 2010 - Trabajo Profesional Docente Jorge Salvador Iercahe Alumnos Milton Berman Fernando Torres Leonardo.

ProblemaProblema

Page 6: Universidad de Buenos Aires Facultad de Ingeniería 2010 - Trabajo Profesional Docente Jorge Salvador Iercahe Alumnos Milton Berman Fernando Torres Leonardo.

SoluciónSolución

Page 7: Universidad de Buenos Aires Facultad de Ingeniería 2010 - Trabajo Profesional Docente Jorge Salvador Iercahe Alumnos Milton Berman Fernando Torres Leonardo.

Conceptos básicosConceptos básicosCiclo de vidaCiclo de vidaIntercambio de operadoresIntercambio de operadoresMutaciónMutaciónPlanificaciónPlanificación

Sistemas Autónomos de Sistemas Autónomos de RobotsRobots

Page 8: Universidad de Buenos Aires Facultad de Ingeniería 2010 - Trabajo Profesional Docente Jorge Salvador Iercahe Alumnos Milton Berman Fernando Torres Leonardo.

Conceptos básicosConceptos básicos

TeoríaTeoría AccionAccion SituacionSituacion P, K , UtilidadP, K , Utilidad

AmbienteAmbiente RobotRobot

Page 9: Universidad de Buenos Aires Facultad de Ingeniería 2010 - Trabajo Profesional Docente Jorge Salvador Iercahe Alumnos Milton Berman Fernando Torres Leonardo.

Ciclos de vidaCiclos de vida

BornBorn

NewbieNewbie

TrainedTrained

MatureMature

Page 10: Universidad de Buenos Aires Facultad de Ingeniería 2010 - Trabajo Profesional Docente Jorge Salvador Iercahe Alumnos Milton Berman Fernando Torres Leonardo.

Intercambio de Intercambio de operadoresoperadores

CooperaciónCooperación ColaboraciónColaboración

Page 11: Universidad de Buenos Aires Facultad de Ingeniería 2010 - Trabajo Profesional Docente Jorge Salvador Iercahe Alumnos Milton Berman Fernando Torres Leonardo.

MutaciónMutación

DescripciónDescripción ImplementaciónImplementación Algoritmo??Algoritmo??

Page 12: Universidad de Buenos Aires Facultad de Ingeniería 2010 - Trabajo Profesional Docente Jorge Salvador Iercahe Alumnos Milton Berman Fernando Torres Leonardo.

PlanificaciónPlanificación

Método SAR ReactivoMétodo SAR Reactivo Método SAR ClásicoMétodo SAR Clásico

Ponderador ClásicoPonderador Clásico

Método SAR RankingMétodo SAR Ranking ConclusiónConclusión

Page 13: Universidad de Buenos Aires Facultad de Ingeniería 2010 - Trabajo Profesional Docente Jorge Salvador Iercahe Alumnos Milton Berman Fernando Torres Leonardo.

IntroducciónIntroducciónInteracciónInteracciónDiseñoDiseño

SAR en WebotsSAR en Webots

Page 14: Universidad de Buenos Aires Facultad de Ingeniería 2010 - Trabajo Profesional Docente Jorge Salvador Iercahe Alumnos Milton Berman Fernando Torres Leonardo.

IntroducciónIntroducción

Kheppera Kheppera RobotsRobots

My-BotMy-Bot E-PuckE-Puck

PruebasPruebas

Page 15: Universidad de Buenos Aires Facultad de Ingeniería 2010 - Trabajo Profesional Docente Jorge Salvador Iercahe Alumnos Milton Berman Fernando Torres Leonardo.

InteracciónInteracción

Plataforma WebotsSistema Ejecutor Sistema Sensor

Conversor de Lecturas

Subsistema de aprendizajeSistema Controlador de Planes en Ejecución

Subsistema PlanificadorSubsistema

ponderador deplanes

Conversor de Acciones

Acción

Acción

TeoríasPlanes

Plan

Confiable si/no

Teorías

Situacion

Situacion

Page 16: Universidad de Buenos Aires Facultad de Ingeniería 2010 - Trabajo Profesional Docente Jorge Salvador Iercahe Alumnos Milton Berman Fernando Torres Leonardo.

DiseñoDiseño class Class Model

IAprendizaje

+ RegistrarTeoria() : void

IControlador

+ Controlar() : void

IIntercambio

+ Intercambiar() : void

IListaTeorias

IPlanificador

+ ObtenerPlan() : l ist<ITeoria*> *

IPonderador

+ Ponderar() : float

IRobot

+ EjecutarAccion() : void+ GetSituacionActual()

ISIA

+ Ejecutar() : void

IPersistente

ITeoria

IPersistente

ISituacion

IPersistente

IAccion

Page 17: Universidad de Buenos Aires Facultad de Ingeniería 2010 - Trabajo Profesional Docente Jorge Salvador Iercahe Alumnos Milton Berman Fernando Torres Leonardo.

IntroducciónIntroducciónArquitecturaArquitecturaDiseñoDiseñoImplementaciónImplementación

Framework SAR Framework SAR

Page 18: Universidad de Buenos Aires Facultad de Ingeniería 2010 - Trabajo Profesional Docente Jorge Salvador Iercahe Alumnos Milton Berman Fernando Torres Leonardo.

IntroducciónIntroducción

Aplicación WebAplicación Web JavaJava

Page 19: Universidad de Buenos Aires Facultad de Ingeniería 2010 - Trabajo Profesional Docente Jorge Salvador Iercahe Alumnos Milton Berman Fernando Torres Leonardo.

ArquitecturaArquitectura

CapasCapas DominioDominio ServicioServicio Interfaz usuarioInterfaz usuario

MVCMVC ModeloModelo VistaVista ControladorControlador

Page 20: Universidad de Buenos Aires Facultad de Ingeniería 2010 - Trabajo Profesional Docente Jorge Salvador Iercahe Alumnos Milton Berman Fernando Torres Leonardo.

DiseñoDiseño class domain

AbstractPersistenceObject

Accion

- speed0: Double- speed1: Double

AbstractPersistenceObject

ComponenteRobot

AbstractPersistenceObject

ConfiguracionCuerpoConocimiento

- configuracionIntercambio: ConfiguracionComparticionConocimientos- configuracionMutacion: ConfiguracionMutacion- configuracionPonderacion: ConfiguracionPonderacion- metodoComparacion: MetodoComparacion- metodoCreadorSAR: CreadorSAR- metodoUtil idad: MetodoUtil idad- configuracionEstadistica: ConfiguracionEstadistica

AbstractPersistenceObject

ConfiguracionComparticionConocimientos

- cuerpoConocimiento1: CuerpoConocimiento- cuerpoConocimiento2: CuerpoConocimiento

+ esValido(TipoAmbiente, TipoAmbiente) : boolean

ConfiguracionColaboracion

+ esValido(TipoAmbiente, TipoAmbiente) : boolean

ConfiguracionCooperacion

+ esValido(TipoAmbiente, TipoAmbiente) : boolean

AbstractPersistenceObject

ConfiguracionMutacion

- porcentajeUmbral: Double- umbralMaximo: Double

AbstractPersistenceObject

ConfiguracionPonderacion

- metodoPonderacion: MetodoPonderacion- umbral: Double

AbstractPersistenceObject

CuerpoConocimiento

- configuracion: ConfiguracionCuerpoConocimiento- descripcion: String- escenario: Ambiente- estadisticas: List<Estadistica>- fechaCreacion: Date- teorias: List<Teoria>- layer: LayerSAR

+ agregarEstadistica(Estadistica) : void

AbstractPersistenceObject

Ambiente

- nombre: String- obstaculos: Map<Obstaculo,Integer>- tipoEscenario: TipoAmbiente

AbstractPersistenceObject

SAR

- conocimientos: List<CuerpoConocimiento>- nombre: String- tipoRobot: TipoRobot- estado: EstadoSAR

Actuador Sensor

AbstractPersistenceObject

Situacion

- sensor0: Double- sensor1: Double- sensor2: Double- sensor3: Double- sensor4: Double- sensor5: Double- sensor6: Double- sensor7: Double

AbstractPersistenceObject

Teoria

- accion: Accion- k: Double- p: Double- situacionFinal: Situacion- situacionInicial: Situacion- uti l idad: Double

AbstractPersistenceObject

TipoRobot

- componentes: Map<ComponenteRobot,Integer>- descripcion: String- nombre: String

«enumerati...enums::

CreadorSAR

«enum» REACTIVO CLASICO RANKING

«enumeration»enums::MetodoPonderacion

«enum» CLASICO_CON_PONDERADOR CLASICO_SIN_PONDERADOR

«enumeration»enums::MetodoUtil idad

«enum» CLASICO COEFICIENTES

«enumeration»enums::TipoAmbiente

«enum» BORN_NEWBIE(BIO) NEWBIE_TRAINED(TBO) TRAINED_MATURE(WIO)

Mundo

- robots: List<Robot>- ambientes: List<Ambiente>

SensorProximidad

- rango: Double

«enumeratio...EstadoSAR

«enum» BORN NEWBIE TRAINED MATURE

AbstractPersistenceObject

Estadistica

- archivo: File- nombreArchivo: String~ renglones: List<EstadisticaRenglon>- descripcionParaGrafico: String

AbstractPersistenceObject

ConfiguracionEstadistica

- ciclo: Integer- intervaloTeoria: Integer

AbstractPersistenceObject

EstadisticaRenglon

- cantidadAzares: Integer- cantidadPlanes: Integer- cantidadPlanesConExito: Double- cantidadPlanesSinExito: Integer- cantidadSituaciones: Integer- cantidadTeorias: Integer- cantidadTeoriasExitosasSimulacion: Integer- pasada: Integer- probabil idadGeneral: Double- probabil idadOcurrenciaTeorias: String- teoriasPorIntervalo: String- uti l idad: Double

«enumeration»MetodoComparacion

«enum» EXACTO UMBRAL_VARIABLE UMBRAL_FIJO

«enumeratio...LayerSAR

«enum» BIO TBO WIO

Rueda

- velocidad: Double

«enumeration»enums::Obstaculo

«enum» CUADRADO RECTANGULAR ESQUINA

Page 21: Universidad de Buenos Aires Facultad de Ingeniería 2010 - Trabajo Profesional Docente Jorge Salvador Iercahe Alumnos Milton Berman Fernando Torres Leonardo.

ImplementaciónImplementación

Aplicación WebAplicación Web JavaJava

HibernateHibernate SpringSpring JSFJSF

RichFacesRichFaces AjaxAjax

MySQLMySQL

Page 22: Universidad de Buenos Aires Facultad de Ingeniería 2010 - Trabajo Profesional Docente Jorge Salvador Iercahe Alumnos Milton Berman Fernando Torres Leonardo.

WebotsWebotsFramework SARFramework SARVideosVideos

ExperimentaciónExperimentación

Page 23: Universidad de Buenos Aires Facultad de Ingeniería 2010 - Trabajo Profesional Docente Jorge Salvador Iercahe Alumnos Milton Berman Fernando Torres Leonardo.

WebotsWebots

IDEIDE Creación de mundoCreación de mundo SimulaciónSimulación

Page 24: Universidad de Buenos Aires Facultad de Ingeniería 2010 - Trabajo Profesional Docente Jorge Salvador Iercahe Alumnos Milton Berman Fernando Torres Leonardo.

Framework SARFramework SAR

Configuración SARConfiguración SARact Configuracion

ConfiguraciónSAR

Configuración Parámetros Generales

Setear Cantidad Ciclos Corrida

Setear Método de Comparación de

Teorias

Los métodos pueden ser:- Exacto- Umbral fi jo- Umbral variable

Configuración Estadistica y Rendimiento de Aprendizaje

Setear Interv alo de Muestra

Setear Interv alo de Distribución de

Utilidad de Teoría

Cada cuantos ciclos se toma una muestradel estado de la ejecución.

Cantidad de intervalos en el que se divide el rengo de util idad [0;1]

Elección de datos a registrar

-Ciclos-Cant. de Situaciones-Cant. de Teorias Acumuladas-Cant. de Teorias Nuevas-Cant. de Teorias Exitosas-Cant. de Teorias por Intervalo de Util idad-Cant. de Ciclos Exitosos-Cant. de Planes Exitosos-Cant. de Azares

Seleccionar Tipo SAR

Seleccionar Base de

Conocimiento

Base de Conocimiento en función del estado de evolución del SAR

Usa Base deConocimiento

Seleccionar Ambiente Escenario Born - Newbie

(Layer BIO)Escenario Newbie - Trained (Layer TIO)Escenario Trained - Mature (Layer WIO)

FinConfiguración

SAR

SAR

Setear Rendimiento de

Aprendizaje

% de rendimiento de ciclos exitosos (%rce)% de rendimiento teorias nuevas (%rtn)a alcanzar para la evolucion de estado del SAR.

[SI]

Page 25: Universidad de Buenos Aires Facultad de Ingeniería 2010 - Trabajo Profesional Docente Jorge Salvador Iercahe Alumnos Milton Berman Fernando Torres Leonardo.

Framework SARFramework SAR

Configuración SARConfiguración SARact Seleccionar SAR

Seleccionar SAR

SAR reactivoSARp neutroSARp P SARp P,MSARp M SARr neutro SARr M

Usar Planificador

UsarMutación

Setear Parámetros

Mutación

- Clásica : basada en la situación- Coeficientes: basada enla acción.

- % umbral- umbral máximo

Setear Umbral

Ponderación

UsaPonderador

valor dentro del rango [0;1] que permite determinar si un plan es viable o no

Elegir Planificador

- Planificador Clásico- Planificador Ranking

Setear Método Utilidad

UsaPonderador

SARp SARr

UsarMutación

Setear Parámetros

Mutación

Setear Umbral

Ponderación

[NO]

[SI]

[NO]

[NO]

[SI]

[SI]

[NO]

[SI]

[SI]

[NO]

Page 26: Universidad de Buenos Aires Facultad de Ingeniería 2010 - Trabajo Profesional Docente Jorge Salvador Iercahe Alumnos Milton Berman Fernando Torres Leonardo.

VideosVideos

Page 27: Universidad de Buenos Aires Facultad de Ingeniería 2010 - Trabajo Profesional Docente Jorge Salvador Iercahe Alumnos Milton Berman Fernando Torres Leonardo.

Pruebas Pruebas RobotsRobotsFuzzyFuzzyIntercambio On-LineIntercambio On-Line

Futuras líneasFuturas líneas

Page 28: Universidad de Buenos Aires Facultad de Ingeniería 2010 - Trabajo Profesional Docente Jorge Salvador Iercahe Alumnos Milton Berman Fernando Torres Leonardo.

AgradecimientosAgradecimientos