Archive for the 'IA' Category

Mentes nubladas 1

Posted in IA on August 26th, 2005

Volvamos al tema de la inteligencia artificial con un apunte de mi último currele:

Comienzo a despegar un poquito con Maya y sus manías. En particular llevo unas semanas dándole a AI.Implant , un paquete de inteligencia artificial a modo de plug in.

Evidentemente hay muchas diferencias entre un plugin y un auténtico stand alone como Massive (quién le echara mano) ó Behavior (que tampoco está mal y nos va a pagar el alquiler durante un par de meses ;) ) Pero se pueden aprovechar las limitaciones propias de un plugin y emplear el contenedor, Maya, como una plataforma de comunicación de componentes. Es decir, en behavior puedes emplear razonamiento por máquinas de estado jerárquicas, lo que es bastante potente, pero, ¿y si quieres emplear control difuso? ¿ó razonamiento dirigido por objetivos? Pues te toca jorobarte y buscarte la vida con algún montaje más o menos ingenioso. Sin embargo a través de Maya debería ser posible comunicar un motor de lógica difusa, FFLL por poner un ejemplo, con Implant, ya que están compartiendo toda la infraestructura Mayesca. Sin embargo, antes de volar, hay que andar.

Para trabajar con lógica difusa, lo primero que haces es considerar que cualquier aserción no es taxativamente verdadera ó falsa, tiene un grado de verdad, un DOM (degree of membership) de entre [0..1], evidentemente esto se hace con una función que relaciona la(s) entrada(s) x,y,… con una salida DOM, la primera aproximación que he tenido es mediante funciones de respuesta, una idea que saqué del Ai Game programming wisdom (comentado por ahí abajo). Además me lo he progrado sobre el propio motor del Ai.Implant: inconvenientes: ¡todos los del mundo!

  • Los agentes no pueden almacenar de manera nativa las tablas de valores, la única estructura de datos compleja es el vector de 3 posiciones … :-P
  • No hay structs
  • Lenguaje procedural, baja encapsulación
  • Y podríamos seguir hasta el infinito. De todas maneras algo he logrado hacer.
    En este momento trato de integrar FFLL en la propia API del Maya compilándolo como si fuese una DLL. Otro rato más ….