Post on 04-Jul-2015
description
ANDREA ESPINOSA, MAYRA CRIOLLO, MERCY JIMENEZ
Blog: http://agentefarma.wordpress.com/
INTELIGENCIA ARTIFICIAL
UNIVERSIDAD TÉCNICA PARTICULAR DE LOJA
La Universidad Católica de Loja
INTRODUCCION La inteligencia artificial se ha enfocado sobre la explicación del trabajo
mental y construcción de algoritmos de solución a problemas depropósito general. Ya que un sistema de inteligencia artificial tieneenormes ventajas respecto a los humanos. Por ejemplo, su capacidadde almacenamiento, su capacidad para tomar decisiones racionales sinprejuicios o emociones que perturben el resultado.
Debemos saber que es un agente inteligente; es una entidad softwareque, basándose en su propio conocimiento, realiza un conjunto deoperaciones para satisfacer las necesidades de un usuario o de otroprograma, bien por iniciativa propia o porque alguno de éstos se lorequiere [1]. La efectividad del agente se mide a través de las medidasde rendimiento y las decisiones que tome en un momento dadodependerán de la secuencia de percepciones que tenga hasta eseinstante.
Un agente posee cierto conocimiento inicial el cual debe serretroalimentado con las experiencias y percepciones que está captandodel entorno que lo rodea, se espera que exista una especie deaprendizaje continuo y evolutivo.
3. OBJETIVOS
Nuestro objetivo es presentar, identificar, definir y clasificar el tipo
de agente inteligente que tratamos de modelar.
Aplicar medidas de desempeño o rendimiento que sirvan para
definir que tan exitoso es nuestro agente
Conocer los tipos de ambiente en los que un agente inteligente
trabaja.
4. DESARROLLO
El contexto del problema se ubica en una farmacia, lacual necesita de una mejor atención a sus clientes ysobre todo eficiencia para su negocio, ya que lasestanterías dispone de varias alturas para almacenar losmedicamentos, y por lo general los encargados deatender a los clientes no tienen esa eficiencia y la rapidezque se necesita para el momento de atender y despacharel pedido.
Por lo que la solución y la mejor manera de incrementarla venta en el negocio y tener una mejor atención alcliente se ha optado por la implementación de un agenteinteligente farmacéutico, que pueda resolver esteinconveniente.
Punto de Partida o estado inicial, es el punto deinicio de la actividad del agente donde procede adespachar las recetas médicas.
Punto de Destino, Este punto siempre coincidirácon el punto de inicio ya que el agente siempredeberá regresar a él para entregar los productospedidos por los clientes.
Ruta, Es el objetivo que tendrá que perseguir elagente, la misma que puede tener varios puntos dedestino intermedios, estos corresponderán a laubicación de cada producto seleccionado de acuerdocon la receta medica.
El Agente Farmaceutico necesita de:
Figura 1. Esquema del Agente
Esquema de la matriz de la Farmacia
5. ESPACIO DE ESTADOS
Un espacio es una configuración posible delsistema, esto en nuestro ámbito es un casoreal, al conjunto de éstos se denomina espaciode estados que englobará el conjunto deestados que definen el ámbito total de nuestroagente, es decir el conjunto de todas lascombinaciones posible Agente – Estado.
El espacio de estados es la totalidad de lafarmacia, pues el agente puede posicionarse encualquier lado del mismo.
6. OBJETIVO DEL AGENTE
El objetivo del agente es recoger todos los
medicamentos o productos que se le pida y
alcanzar el punto de inicio para depositarlos en
la zona de intercambio, para ello el agente
deberá evaluar en función de los obstáculos
fijos el camino o caminos a seguir, así mediante
comparaciones sucesivas se interrogará sobre
si el estado alcanzado coincide con el estado
objetivo o estado final que se
persigue, ejecutará en ese punto la acción
pertinente.
7. RESTRICCIONES
Las restricciones o limitaciones de nuestro agente sonlos obstáculos que se le presentan para llegar alobjetivo, este agente estará diseñado para evaluar si unobstáculo es móvil y permanente o fijo, el mismo que iráactualizando su base de conocimientos y marcará eseobstáculo, y procederá a ejecutar una nueva búsquedapara llegar hasta el objetivo.
Obstáculos Fijos.- Estos son las paredes del almacén ylas estanterías.
Obstáculos Móviles.- Son aquellos como cajasdesparramadas, miembros del personal con los que elagente se pueda topar, para llegar al objetivo.
8. EL AMBIENTE
Para poder saber el tipo de ambiente sobre el cual sedesenvolverá el agente farmacéutico debemos conocerbien el problema y el entorno físico sobre el cual va aactuar, siempre tomando en cuenta las necesidades quedebemos cubrir.
En nuestro caso analizando los tipos de ambientes queexisten podemos ver que el agente farmacéutico operarásobre un entorno parcialmente observable ya que poralgún factor como el ruido dentro de la farmacia puede noobtener la información necesaria para buscar el productoque desea el cliente y discreto por que en efecto laspercepciones que realiza el agente son finitas y estáncuantificadas así como sus acciones.
9. COMPONENTES
9.1 Sensores
Los sensores son una parte esencial en el agenteinteligente farmacéutico para que tenga lacapacidad de percibir lo que sucede en el medioambiente, para lo cual incorporará:
Sensor sonar, le servirá para detectar objetos adistancia o los obstáculos que se le presenten enel camino
Sensores de Fuerza sensitiva, le permite al agentepercibir y controlar la ubicación de susarticulaciones con mucha mayor precisión.
Sensor Táctil le permite tener contacto con laspersonas y aplicar la fuerza necesaria de acuerdo almedicamento
Sensor Inercial, éste sensor le ayuda para la captura yanálisis de movimiento, y a medir la aceleración yvelocidad angular.
Cámara, le permite capturara las imágenes en tiemporeal, es decir captar escenas del medio ambiente.
sensores Bump izquierda y derecha para detectarchoques.
Programa de OCR, para el reconocimiento de loscaracteres de la receta médica escrita de formamanuscrita por los médicos
9.2 Actuadores
El agente debe responder ante los estímulos que lellegan mediante acciones físicas, nuestro agentecontará con los siguientes actuadores:
Locomoción, este actuador está relacionado con elsensor inercial por que le permitirá trasladarse deun lugar a otro.
Motor, le servirá para activar el dispositivo detraslado del agente, que consistirá en un engranajede ruedas y cadenas, para que el agente puedaavanzar y retroceder.
Rotor, es necesario para posibilitar el giro delos engranajes y que el agente puedaconseguir movimientos circulares.
Brazo y mano articulados, le ayudarán almovimiento adecuado para la recepción delproducto y la receta médica.
Micrófonos y Altavoces, para escucha deórdenes.
Figura 2. Componentes del Agente
10. TIPO DE AGENTE
Entre los distintos tipos de agentes que sepresentan en Inteligencia Artificial, y analizandolas tareas o actividades que realizará nuestroagente se ha podido concluir que es un AgenteBasado en objetivos ya que nuestro problemase basa en la consecución de un fin y basadoen utilidad porque debe emprender todasaquellas acciones que favorezcan obtener elmáximo de su medida de rendimiento para eléxito en la realización de sus tareas encontrarla mejor ruta.
11.FICHA DEL AGENTE
TIPO DE AGENTE Farmacéutico.
Medidas de rendimiento: Rápido.
Eficiente.
Seguro.
Calidad de trabajo.
Entorno: Personas.
Almacén.
Medicamento.
Actuadores: Locomoción.
Motor
Rotor
Brazo y mano articulados.
Micrófono
Altavoces
Sensores: sonar
Inercial
táctil
Fuerza sensitiva
Bumpers
Infrarrojo
Cámaras
12. TIPOS DE BÚSQUEDA
Todo problema en inteligencia Artificial llevainherente un problema de búsqueda. Paraelegir el algoritmo con el cual actuará yaplicará nuestro agente para encontrar la mejorruta al objetivo y para ir aprendiendo se debeprimeramente saber en que consiste cada tipode búsqueda y haber comprendido el problemaque se desea resolver.
Los algoritmos que podemos implementar ennuestro agente son:
El algoritmo de búsqueda que se acopla con el agentefarmacéutico es el algoritmo A* también pronunciadabúsqueda en estrella. La ventaja que ofrece estealgoritmo a nuestro agente es que permite evaluar losnodos combinados g(n) determinando el coste paraalcanzar el nodo, y h(n) evalúa el coste para llegar alobjetivo; como sabemos este algoritmo es para encontrarcaminos en grafos, apoyándose en el hecho de que aveces para llegar a la solución hay que dar pasos quetienen un mayor coste que otros. Es una combinación delalgoritmo en profundidad y el de anchura, lo que ayuda aencontrar la solución optima.
12.1 Algoritmo de búsqueda A*
El agente puede basarse en algunas técnicas
para su aprendizaje (árboles de
decisión, algoritmos genéticos, reglas de
inducción); para el agente farmacéutico que
se modela en este proyecto se lo caracteriza
dentro del aprendizaje inductivo, ya que
permite al agente aprender de los hechos
observados.
Este tipo de algoritmos se puede utilizar en
cualquier tipo de problema, ya que se basa en
el principio de la evolución natural
12.3 Algoritmo Genético
13. PLANTEAMIENTO DEL
PROBLEMA
El problema es encontrar la mejor ruta parallegar al medicamento solicitado por elcliente. Con el Agente Farmacéuticoqueremos mejorar la atención en lasfarmacias sobre todo en tiempo, rapidez yseguridad.
Como una solución a este problema se haelegido dos algoritmos para uno para queelija la mejor ruta (Algoritmo A*) y el otro parasu aprendizaje (Algoritmo Genético).
14. ¿POR QUÉ IMPLEMENTAMOS
ESTOS ALGORITMOS? Algoritmo A*:
Lo utilizamos por que nuestro agente inteligente debepercibir que una persona se encuentra en la farmaciasolicitando que le despachen una receta médica, el tieneque estar en la capacidad de recibir la receta médica einterpreta mediante el sensor OCR(reconocimiento ópticode caracteres) el pedido de los fármacos y determinarcuántas capturas debe realizar en los estantes comoejemplo con una captura de 5 fármacos primeramente seacercara a buscar la medicina que se encuentre máspróxima a él, calculando las distancias de cada una de losproductos solicitados y dependiendo de los resultados delcálculo de las distancias se moverá buscando el siguientemedicamento.
ALMACEN
1 2 3 4 5 6 7 8 9 10
1
2
3
4
5
6
7
8
9
1
0
Medicamento 1
Medicamento 2
Figura 3. Esquema de recorrido
15. Algoritmo A* En la función principal crea el frame donde se va
implementar la matriz aquí se llevará a cabo la
búsqueda, además llama a la función init() y start () que
permiten definir el tamaño de la matriz y la creación de
cada celda
La función encuentraCamino permite buscar en lasceldas ordenadas el camino mediante el coste decada uno de ellos, calcula en las celdas hijas conel valor mínimo para seguir expandiendo la celda yde esta manera llegar al objetivo.
Cuando aún no se encuentra el camino solución lavariable sol_encontrada denota el valor de falso,entonces compara si la solución es diferente defalso y abiertos diferente de vacía expande unanueva celda y de esta manera genera sussucesores para encontrar el mejor nodo objetivo.
FUNCIONALIDAD
16.DESCRIPCION: CODIGO DE
ALGORITMO GENÉTICO
El algoritmo genético puede presentardiversas variaciones, dependiendo de cómose aplican los operadores genéticos(cruzamiento, mutación), de cómo se realizala selección y de cómo se decide elreemplazo de los individuos para formar lanueva población, para generar las distintasrutas hemos ejecutado cada una de las parteque lo conforma estas son:
Inicialización
Para escoger unaparte de la población segenera aleatoriamente y serealizan operaciones enestado inicial, que estáconstituida por un conjuntode cromosomas los cualesrepresentan las posiblessoluciones del problema. Encaso tenemos registrada unapoblación en un archivo .txtpara que se vaya llamandocada elemento, véase en laFigura.Figura. Archivo de la población
2.- Evaluación
Cada uno de los
cromosomas de esta población
se aplicará la función de
aptitud para saber cómo que
tan buena es la solución de la
ruta encontrada, refiérase a la
figura.
Con la función Fitness permite
indicar que aptitud para saber
que tan buena es la elección.Figura. Cálculos de la aptitud
3.- Condición de
término
El Algoritmo Genético se detiene cuando se
alcanza la solución óptima, pero
entendemos que se desconoce por qué el
algoritmo genético aun no aplica todas las
operaciones para buscar la ruta óptima.
Hemos indicado que el algoritmo genético
mantiene un tamaño de población, tamaño
ELITE (una porción de esa
población), cruzamiento, generaciones, TS
P (problema de resolución de
rutas), observe en la figura, que indica la
inicialización de cada operación.
Figura . Inicialización de operaciones
Selección.-
Después de saber la aptitud de cada
cromosoma se procede a elegir los
cromosomas que serán cruzados en
la siguiente generación. Los
cromosomas con mejor aptitud tienen
mayor probabilidad de ser
seleccionados. Refiérase a la
figura11, indica como hemos
realizado la operación de selección.
Figura . Operaciones de selección de
población.
Cruzamiento
El cruzamiento es el principal
operador genético que se establece,
representa la reproducción sexual,
opera sobre dos cromosomas a la
vez para generar dos descendientes
donde se combinan las
características de ambos
cromosomas padres. Vea la figura
Figura . Operaciones de selección de
población.
Mutación.-
Modifica al azar parte del
cromosoma de los individuos, y
permite alcanzar zonas del
espacio de búsqueda que no
estaban cubiertas por los
individuos de la población
actual. Véase la figura
Reemplazo.-
Una vez aplicados los
operadores genéticos, se
seleccionan los mejores
individuos para conformar la
población de la generación
siguiente
OBTENCIÓN DE LA MEJOR RUTA:
Figura . Obtención de la mejor ruta.
17. CONCLUSIONES
Un agente puede ayudar a resolver
problemas que se presentan en la vida
cotidiana cumpliendo ciertas medidas de
rendimiento que permitan cumplir los
objetivos para los cuales fue creado.
Debemos tener bien definido lo que
queremos resolver con el agente
inteligente, para poder aplicar algoritmos
de búsqueda y de aprendizaje.
18. REFERENCIAS
BIBLIOGRÁFICAS [1] Wooldridge y Jennings, 1995
[2] Díaz Noel Mamoghli disponible en http://profesores.sanvalero.net/~w0467/iartificial4/Agentes%20Inteligentes/Ejemplos%20de%20Trabajos/Agente%20Farmaceutico.doc
[3] http://www.ceaifac.es/actividades/jornadas/XXI/documentos/ja00_075/ja00_75.pdf
[4] El cerro de reyes estrena la primera farmacia con robot de dispensación automática citado (2010 enero 08) disponible en http://www.hoy.es/20090605/badajoz/cerro-reyes-estrena-primera-u20090605.html
[5] http://lear.inforg.uniovi.es/ia/Archivos/Apuntes%20y%20t/Tema4.2(BESolCompletas-BL).pdf
[6] Genetic Algorithm http://www.obitko.com/tutorials/genetic-algorithms/ga-basic-description.php
[7] Russell Stuart, Norvig Peter Inteligencia Artificial Un enfoque moderno, 2da edición
[8] Citado (2010 enero 08) La farmacia del futuro disponible en http://www.lafarmaciadelfuturo.net/2009/08/robots-de-farmacia.html
[9] ArtificialInteligencia http://www.a-i.com/