¿La robótica es parte de la IA? cual es la diferencia entre ellos?

No, los dos campos se superponen pero ninguno está incluido en el otro.

Algunos campos de la IA están directamente relacionados con la robótica, por ejemplo, todos los trabajos sobre localización y mapeo simultáneos (SLAM) y navegación, todo sobre la percepción activa, mucha literatura sobre aprendizaje de refuerzo, enfoques de desarrollo, etc. Más en general, hay Hay muchas cosas sobre la cognición y lo que consideramos inteligencia y comportamiento inteligente que solo tienen sentido si los aborda como el resultado emergente de un acoplamiento entre un agente (robótico o biológico) y su entorno, con el que interactúa a través de un sistema sensoriomotor. En otros términos, somos animales con cuerpos físicos que actúan (al menos ocasionalmente) de manera inteligente en el mundo físico y no cerebros en frascos o mentes sin cuerpo que procesan información abstracta, y eso es importante cuando estudias muchos aspectos de la inteligencia, artificial o no. Es la base de la cognición encarnada, que es un área de investigación fascinante y viva; Yo y el grupo de investigación del que formo parte se centran principalmente en esos aspectos de la IA incorporada para la robótica.

Ahora, la definición de IA es tan amplia como la definición que tienes de inteligencia, y claramente hay partes de ella que están fuera de este alcance. Cosas como las IA de juego abstractas (ajedrez, go, algunos videojuegos, etc.), sistemas expertos, filtros de spam, sistemas de recomendación, traducción automática (y más generalmente la mayoría de PNL), etc. no necesitan especialmente un robot (o un cuerpo ) trabajar. Esas cosas son parte de la IA, pero no de la robótica. (Por otro lado, los mismos métodos generales y marcos teóricos a menudo se pueden usar para aplicaciones robóticas y no robóticas. Las redes neuronales artificiales se usan en todas partes de diferentes maneras para muchas cosas muy diferentes, el aprendizaje por refuerzo tiene muchas -robóticas también, las redes bayesianas se pueden usar para hacer controladores de robots, así como filtros de spam, etc.)

Y la robótica también incluye muchas cosas que están bastante lejos de la IA. Mucha robótica se trata de mecánica, mecatrónica, construcción de sensores y actuadores, teoría de control y automatización. Teóricamente, bajo el paradigma de cognición incorporado, no hay razón para separar esas cosas de la IA (es el sistema sensoriotor que actúa en el entorno el que es inteligente, no una caja inteligente que tiene algunos sensores y actuadores), sino desde un punto práctico desde el punto de vista, esos requieren conjuntos de habilidades muy diferentes que tienen más que ver con la física y, a veces, con las matemáticas que con la ciencia cognitiva, la informática y lo que generalmente pensamos de “IA”.

En realidad no, los dos campos se superponen, pero ninguno es un superconjunto del otro.

La comunidad de investigación en robótica es lo que puede ver como varias personas de CS que usan robots como su dominio de aplicación. Los robots presentan la diferencia de la CS clásica para tener el sistema informático fuertemente vinculado al mundo: un mundo en tiempo real, altamente dinámico y difícil de predecir e involucra una gran cantidad de sensores y actuadores que tienden a ser ruidosos (mucho más que su computadora de escritorio típica donde los sensores – mouse y teclado – y “actuadores” – pantalla – tienden a ser muy confiables en términos relativos).

En ese sentido, el robot es un mosaico de muchos dominios CS, todos trabajando en un dominio “específico”: los robots. Encontrará muchos campos de IA (incluso algunos como el aprendizaje de refuerzo que realmente ganó impulso gracias a la robótica), pero también muchos sobre teoría de control, procesamiento de señales, …

La IA cubre el aspecto de tratar de usar una computadora para realizar tareas que pueden definirse rápidamente como “fáciles de hacer para los humanos pero difíciles para las computadoras”. Esto cubre un espectro muy amplio desde la inferencia / planificación hasta el aprendizaje pasando por el reconocimiento de lenguaje / voz o imagen tratamiento. Si bien muchos de esos son utilizados nuevamente por robot, verás mucho trabajo en IA que:

– tiene suposiciones que no funcionan bien para problemas robóticos (por ejemplo, la complejidad de la planificación y las suposiciones fuera de línea no funcionan bien con la naturaleza en tiempo real de la robótica)

– se ha desarrollado principalmente sin aspectos específicos de la aplicación robótica (la mayoría del aprendizaje automático, por ejemplo, tiende a no hacer el aprendizaje de forma incremental sino en un proceso por lotes que nuevamente juega mal con la ubicación de los robots)

– No son problemas realmente importantes o específicos para los robots (tener un robot con reconocimiento de voz es bueno, pero la forma en que funciona presenta poco o ningún desafío específico cuando se aplica a los robots)

Si bien muchas personas trabajan para integrar o incluso mejorar diversas técnicas de IA hacia la robótica, esto deja a esos 2 dominios como diferentes. Claro que algunas personas trabajan en IA aplicada a robótica (o robótica usando la técnica de IA), pero esas personas siguen siendo relativamente marginales en ambas comunidades.

No puedes hacer robótica sin IA

ArKeyHandler keyHandler;
Aria :: setKeyHandler (& keyHandler);
robot.attachKeyHandler (& keyHandler);
ArLog :: log (ArLog :: Normal, “Navegación del robot y planificación de ruta”);
Sonda ArSonarDevice;
robot.addRangeDevice (& sonar);
robot.runAsync (verdadero);
// enciende los motores, apaga los sonidos de amigobot
robot.enableMotors ();
robot.comInt (ArCommands :: SOUNDTOG, 0);
// agrega un conjunto de acciones que se combinan para lograr el comportamiento de deambular
ArActionStallRecover recuperar;
Parachoques ArActionBumpers;
vagar vagar
diagrama de dispersión diagramas de dispersión;
// render render;
//render.display(scattergrams.rightpoints);
robot.addAction (& scattergrams, 50);
robot.addAction (& recovery, 100);
robot.addAction (& bumpers, 75);
robot.addAction (& wander, 50);
// espera a que finalice el ciclo de tareas del robot antes de salir del programa
robot.waitForRunExit ();
Aria :: salida (0);
}

en la medida en que el archivo principal es solo una implementación de clases, todo el comportamiento del robot se implementa a través de instancias de clase, así que básicamente esa es la forma en que prefiero organizar mi código, en cualquier caso, la codificación AI para el robot normalmente se coloca como una clase en un encabezado ordenado y un archivo de implementación, aquí es donde haría el pesado levantamiento de AI / ML y solo usaría una instancia de clase en main llamando a las funciones requeridas. Creo que AI / ML debería ser parte de la robótica y, en mi caso, normalmente practico mi robótica usando algoritmos de IA, esto se toma de un “proyecto favorito” mío. Sí, la IA es parte de la robótica.

Si quiero renderizar algo usando la API SFML C ++, llamo a la instancia de clase apropiada, por lo tanto, es posible, esto en realidad es la API de robot ARIA C ++, pero muestro gráficos usando la biblioteca de gráficos SFML C ++.

En muchos sentidos, la robótica es más limpia que la IA, lo que puede significar muchas cosas diferentes.

La robótica comparte muchas partes de la descripción del trabajo de un ser humano: se mueven, nos movemos, usan los sentidos, usamos los sentidos, realizan principalmente tareas repetitivas, realizamos muchas tareas diferentes.

Debido a que los robots se mueven, están programados para usar sus sentidos. Esa es una tarea bien definida en 3d-space.

Cualquier parte de la IA que se ocupe de comprender idiomas es potencialmente una tarea de un millón de dimensiones, mucho más compleja.

La IA es puramente software, que reside en una vivienda física que permite su proceso de ‘pensamiento’. La IA puede verse como una máquina mental.

Los robots son máquinas físicas controladas por software. Ese software puede ser AI, o puede ser algo menos avanzado que no ‘piensa’ por sí mismo.

Los robots tienen sensores y apéndices que les permiten hacer cosas físicas.

En resumen, la IA y los robots a menudo se encuentran juntos, y esto será cada vez más así en el futuro, pero cada uno puede servir sin el otro.