La idea central de la integración de sistemas de inteligencia artificial es hacer que los componentes de software individuales , como los sintetizadores de voz , sean interoperables con otros componentes, como las bases de conocimientos de sentido común , para crear sistemas de IA más grandes, más amplios y más capaces. Los principales métodos que se han propuesto para la integración son el enrutamiento de mensajes o protocolos de comunicación que los componentes de software utilizan para comunicarse entre sí, a menudo a través de un sistema de pizarra de middleware .
La mayoría de los sistemas de inteligencia artificial implican algún tipo de tecnologías integradas, por ejemplo, la integración de tecnologías de síntesis de voz con la del reconocimiento de voz. Sin embargo, en los últimos años ha habido un debate cada vez mayor sobre la importancia de la integración de sistemas como un campo por derecho propio. Los defensores de este enfoque son investigadores como Marvin Minsky , Aaron Sloman , Deb Roy , Kristinn R. Thórisson y Michael A. Arbib . Una razón de la reciente atención que está atrayendo la integración de la IA es que ya se han creado varios sistemas de IA (relativamente) simples para dominios de problemas específicos (como visión por computadora , síntesis de voz)., etc.), y que integrar lo que ya está disponible es un enfoque más lógico para una IA más amplia que construir sistemas monolíticos desde cero.
¿Por qué la integración?
El enfoque en la integración de sistemas, especialmente con respecto a los enfoques modulares, se deriva del hecho de que la mayoría de las inteligencias de escalas significativas se componen de una multitud de procesos y / o utilizan entradas y salidas multimodales . Por ejemplo, una inteligencia de tipo humanoide preferiblemente tendría que ser capaz de hablar usando síntesis de voz, escuchar usando reconocimiento de voz, entender usando un mecanismo lógico (o algún otro indefinido) y así sucesivamente. Para producir software artificialmente inteligente de inteligencia más amplia, es necesaria la integración de estas modalidades.
Desafíos y soluciones
La colaboración es una parte integral del desarrollo de software, como lo demuestra el tamaño de las empresas de software y el tamaño de sus departamentos de software. Entre las herramientas para facilitar la colaboración de software se encuentran varios procedimientos y estándares que los desarrolladores pueden seguir para garantizar la calidad, confiabilidad y que su software sea compatible con el software creado por otros (como los estándares W3C para el desarrollo de páginas web). Sin embargo, ha faltado colaboración en los campos de la IA, en su mayor parte no se ve fuera de las escuelas, departamentos o institutos de investigación respetados (y, a veces, tampoco dentro de ellos). Esto presenta a los profesionales de la integración de sistemas de IA con un problema sustancial y, a menudo, hace que los investigadores de IA tengan que 'reinventar la rueda' cada vez que quieren que una funcionalidad específica funcione con su software. Aún más dañino es el síndrome de "no inventado aquí", que se manifiesta en una fuerte reticencia de los investigadores de IA a basarse en el trabajo de otros.
El resultado de esto en la IA es un gran conjunto de "islas de soluciones": la investigación de la IA ha producido numerosos componentes y mecanismos de software aislados que tratan con varias partes de la inteligencia por separado. Para tomar algunos ejemplos:
- Síntesis de voz
- FreeTTS de CMU
- Reconocimiento de voz
- Esfinge de CMU
- Razonamiento logico
- Open Cyc de Cycorp
- Red de sentido común de mente abierta del MIT
Con la creciente popularidad del movimiento del software libre , gran parte del software que se está creando, incluidos los sistemas de inteligencia artificial, está disponible para su explotación pública. El siguiente paso natural es fusionar estos componentes de software individuales en sistemas coherentes e inteligentes de naturaleza más amplia. Como la comunidad ya ha creado una multitud de componentes (que a menudo tienen el mismo propósito), la forma más accesible de integración es brindar a cada uno de estos componentes una manera fácil de comunicarse entre sí. Al hacerlo, cada componente por sí solo se convierte en un módulo que luego se puede probar en varios entornos y configuraciones de arquitecturas más grandes.
Existen muchas comunidades en línea para desarrolladores de IA donde los tutoriales, ejemplos y foros tienen como objetivo ayudar tanto a principiantes como a expertos a construir sistemas inteligentes (por ejemplo, AI Depot , Generación 5 ). Sin embargo, pocas comunidades han logrado popularizar un cierto estándar o un código de conducta para permitir que la gran colección de sistemas diversos se integre con facilidad. Recientemente, sin embargo, ha habido intentos enfocados en producir estándares para la colaboración en investigación de IA, Mindmakers.org es una comunidad en línea creada específicamente para albergar la colaboración en el desarrollo de sistemas de IA. La comunidad ha propuesto el mensaje OpenAIR y el protocolo de enrutamiento para la comunicación entre componentes de software, lo que facilita a los desarrolladores individuales hacer que los módulos se integren instantáneamente en los proyectos de otras personas.
Metodologías
Metodología de diseño construccionista
La metodología de diseño construccionista (CDM, o 'AI construccionista') es una metodología formal propuesta en 2004, para su uso en el desarrollo de robótica cognitiva, humanoides comunicativos y amplios sistemas de inteligencia artificial. La creación de tales sistemas requiere la integración de una gran cantidad de funcionalidades que deben coordinarse cuidadosamente para lograr un comportamiento coherente del sistema. El CDM se basa en pasos de diseño iterativos que conducen a la creación de una red de módulos interactivos con nombre, que se comunican a través de flujos escritos explícitamente y mensajes discretos. El protocolo de mensajes OpenAIR (ver más abajo) se inspiró en el CDM y se ha utilizado con frecuencia para ayudar en el desarrollo de sistemas inteligentes que utilizan CDM.
Uno de los primeros proyectos en utilizar CDM fue Mirage , un agente gráfico incorporado visualizado a través de la realidad aumentada que podía comunicarse con los usuarios humanos y hablar sobre los objetos presentes en la habitación física del usuario. Mirage fue creado por Kristinn R. Thórisson , el creador de CDM, y varios estudiantes de la Universidad de Columbia en 2004. La metodología se está desarrollando activamente en la Universidad de Reykjavik .
Herramientas
Protocolo OpenAIR
OpenAIR es un protocolo de enrutamiento y comunicación de mensajes que ha ido ganando popularidad durante los últimos dos años. El protocolo es administrado por Mindmakers.org y se describe en su sitio de la siguiente manera:
" OpenAIR es un protocolo de enrutamiento y comunicación basado en una arquitectura de publicación-suscripción. Está destinado a ser el" pegamento "que permite a numerosos investigadores de IA compartir código de manera más eficaz:" AIR para compartir ". Es una definición o un modelo de la "oficina de correos y sistema de entrega de correo" para sistemas distribuidos de varios módulos. OpenAIR proporciona una base fundamental sobre la que se pueden basar los lenguajes de marcado y la semántica posteriores, por ejemplo, reconocimiento y generación de gestos, visión por computadora, interfaz hardware-software, etc .; para un ejemplo reciente, ver CVML ". [1]
OpenAIR se creó para permitir que los componentes de software que cumplen su propio propósito se comuniquen entre sí para producir un comportamiento general a gran escala de los sistemas inteligentes. Un ejemplo simple sería tener un sistema de reconocimiento de voz y un sintetizador de voz comunicarse con un sistema experto a través de mensajes OpenAIR, para crear un sistema que pueda escuchar y responder varias preguntas a través del diálogo hablado. CORBA (ver más abajo) es una arquitectura más antigua pero similar que se puede usar para comparar, pero OpenAIR fue creado específicamente para la investigación de IA, mientras que CORBA es un estándar más general.
El protocolo OpenAIR se ha utilizado para la colaboración en varios sistemas de inteligencia artificial; se puede encontrar una lista en las páginas del proyecto Mindmakers Archivado 2007-01-24 en Wayback Machine . Psyclone es una plataforma popular para emparejarse con el protocolo OpenAIR (ver más abajo).
Psyclone AIOS
Psyclone es una plataforma de software, o un sistema operativo de IA (AIOS), desarrollado por Communicative Machines Laboratories para su uso en la creación de grandes sistemas de IA multimodales. El sistema es una implementación de un sistema de pizarra que admite el protocolo de mensajes OpenAIR. Psyclone está disponible de forma gratuita para fines no comerciales y, por lo tanto, a menudo ha sido utilizado por institutos de investigación con presupuestos reducidos y desarrolladores de IA novatos.
Elvin
Elvin es un enrutador basado en contenido con una estación de enrutamiento central, similar al Psyclone AIOS (ver arriba).
OAA
El OOA es una arquitectura híbrida que se basa en un lenguaje de comunicación entre agentes (ICL) especial, un lenguaje declarativo basado en la lógica que es bueno para expresar tareas complejas de alto nivel y expresiones de lenguaje natural.
CORBA
La Common Object Request Broker Architecture ( CORBA ) es un estándar que permite que los componentes de software escritos en múltiples lenguajes de computadora y que se ejecutan en múltiples computadoras interoperen. CORBA está definido por el Object Management Group (OMG). CORBA sigue principios similares a los del protocolo OpenAIR (ver arriba) y se puede utilizar para la integración de sistemas de IA.
MOSID
La definición de interfaz de servicio abierta de mensajería ( OSID ) es una especificación de OKI que proporciona un medio para enviar, suscribir y recibir mensajes. Los OSID son interfaces programáticas que comprenden una arquitectura orientada a servicios para diseñar y construir software reutilizable e interoperable .
Ejemplos de sistemas integrados
- MIRAGE , una IA encarnada en un humanoide en un entorno de realidad aumentada.
- ASIMO , el robot humanoide de Honda y QRIO , la versión de Sony de un robot humanoide.
- Cog , proyecto de robot humanoide del MIT bajo la dirección de Rodney Brooks .
- AIBO , el perro robot de Sony integra visión, audición y habilidades motoras.
- TOPIO , el robot humanoide de TOSY puede jugar ping-pong con humanos
Ver también
- Sistema inteligente híbrido , sistemas que combinan los métodos de la IA convencional (o GOFAI) y el de la inteligencia computacional .
- Los robots humanoides utilizan intensamente la integración de sistemas.
- Metodología de diseño construccionista
- Arquitecturas cognitivas
Referencias
- La página del proyecto Mirage
- La página de OpenAIR en Mindmakers.org
- Metodología de diseño construccionista, publicada en la revista AI
- MissionEngine: integración de múltiples sistemas usando Python en el proyecto de lenguaje táctico
enlaces externos
- Mindmakers.org Archivado el 24 de enero de 2007 en Wayback Machine , un portal comunitario para la colaboración en la investigación de IA y la integración de sistemas.
- COG, un robot humanoide en el MIT
- La biblioteca de la Iniciativa de conocimiento abierto