Siempre digo que cuando la Inteligencia Artificial mejore, los traductores y los programadores tendremos que ser los primeros en reciclarnos convirtiéndonos en profesores de máquinas. A pesar de lo que se pretende enseñar en algunas películas, la inteligencia artificial no tiene que ver con que la máquina tenga cara, pies o brazos. De hecho, un porcentaje pequeño tiene que ver con la robótica en la que seres de metal o plástico se desplazan o realizan acciones pareciendo seres vivos.
La inteligencia artificial son prácticamente algoritmos y datos en estado puro. Hay muchas personas que han definido la IA como la ciencia que pretende simular mediante máquinas un comportamiento racional o humano. Antes de inventarse los ordenadores ya existían experimentos como la máquina de Turing en el que una persona a partir de unas preguntas y siguiendo de manera estricta unas instrucciones debía dar una respuesta mecánica pero inteligente. El objetivo era intentar engañar a la primera persona haciéndole pensar que estaba hablando con otra persona racional.
Introducción
En mi opinión, dado que la IA se ha buscado desde los inicios de la informática por la ciencia ficción creo que no existe un único tipo de IA, sino que el propósito de las aplicaciones y forma de desarrollo de la IA es diferente según la época. Por ello, yo definiría varios tipos: algoritmos de resolución de problemas, redes neuronales y detección del entorno para la interacción máquina/mundo.
Tipos de algoritmos
La resolución de problemas consiste en hacer que la máquina resuelva un problema de una manera más o menos eficiente y resolutiva. Esto en realidad no considero que sea una IA natural ya que, a fin de cuentas, las instrucciones hay que introducirlas y/o simplemente se aprovecha que las máquinas pueden resolver ciertos cálculos más rápido para probar muchas combinaciones y buscar la óptima.
Las redes neuronales se basan en la sinapsis cerebral para emular un aprendizaje. Existen diferentes tipos de redes neuronales y la mayor complejidad de desarrollarlas consiste en como representar con valores los conceptos que queremos que la red aprenda.
La interacción con el entorno consiste en la lectura o muestreo de información como la visual o auditiva e intentar analizar que es lo que se está percibiendo. Existen muchas aplicaciones que consisten en vehículos autodirigidos, reconocimiento facial, asistentes de voz como Siri, etc.
Algunos vídeos de avances del 2011
El propósito de este post es para mostrar algunos avances que ha habido este año sobre IA. Nos podemos encontrar desde los típicos robots ASIMO u otros más curiosos como Swarmanoid hasta interesantes algoritmos para detectar jugadores de basket en un partido cuya aplicación puede permitir la creación de comentaristas artificiales.
Me ha parecido curioso un vídeo de un concurso en el que una computadora llamada Watson se enfrentaba a dos concursantes en un concurso. Aunque parezca lo contrario, la complejidad de desarrollo no está en que la computadora tenga acceso al conocimiento, sino a que reconozca que es lo que le está preguntando el presentador y como sabe que es su turno.
Un último video a destacar, dejando de lado robots, es un curioso video en el que se ponen dos asistentes Chatbot e intentan que puedan hablar entre ellos. La parte más inquietante es cuando uno delata al otro diciéndole que es un robot “Tu eres un robot” y responde “Yo no soy un robot. Soy un unicornio”.
Conclusión
Estos 10 videos los podéis ver en Alt1040 cuya referencia la dejamos indicado en el post. A mi personalmente me parecen dignos de apreciar los que se basan en lógica y algoritmos en vez de los robots que, aunque llaman más la atención, son menos accesibles para investigar para los programadores. Esperamos os gusten.
Vía | Alt1040
Comentarios
Creo que te has botado un poco con los tipos, hay muchos subcampos en IA. No obstante, felicidades por tú post, sin duda, la IA en los próximos años, será un tema importante para todo aquel que se dedique a la programación como algo más que una profesión.
mmm que es la inteligencia? Cuál es su funcionamiento más básico?
Para ser programador debes de entender que es lo que haces y saber cómo se hace, lo demás es escribir código y desvelarse un poco, pero mucho me temo que pocos o nadie sabe a ciencia cierta que es o cómo funciona la inteligencia, y al ser tan abstracta, nadie podrá programar IA real.
Lo que hay ahora no deja de ser consulta masiva a BD o sensores, si algo simplemente se sale de los parámetros establecidos se cae el sistema, a diferencia de la inteligencia, que tiene verdadera adaptabilidad a cualquier parámetro o situación.
Pd. Escribo lo anterior porque tengo dudas serias sobre si los ejemplos del post, se pueden tomar como inteligencia real, o no son más que programas especializados.
Deberías revisar el estado del arte de Machine Learning, y verás que va más allá de "if X then".
Saludos
mmm no lo sé, el aprendizaje es un proceso mecánico, tiene que ver más con el análisis y guardado de datos, que con lo que es la inteligencia en sí.
Todos estos programas y los ejemplos del post se salen de lo que es el clásico if, y no es moco de pavo programar algo así, pero no dejan de ser algoritmos, y ese precisamente es el problema, la inteligencia no sigue algoritmos, sino sistemas basados en el caos absoluto, es decir nunca sabes con exactitud como se comportara un ser inteligente ante ciertos estímulos, mientras que sabes con exacta precisión, como se comportara un programa diseñado para simular inteligencia (claro si eres su autor).
Y he ahí la cuestión, como haces un software que piense, sin que le tengas que decir como pensar (por qué aun niño por ejemplo le puedes enseñar, pero no enseñar a pensar).
Saludos también.
Bueno, comparto tu punto de vista, pero hay matices que no están claros, como por ejemplo, la inteligencia no sigue algoritmos, a día de hoy, se sabe que eso no es cierto, hay investigadores que están intentando modelizar (y con cierto grado de éxito) matemáticamente el cerebro, llevado al extremo de simplicidad, el cerebro no es más que un tipo de grafo especial, con las neuronas como vértices y la conexiones entre ellas como aristas, quizá es demasiado simplista, y no estamos en situación de discutir algo así, pero si lo pensamos un poco, no resulta descabellado decir afirmar algo así.
Escribir un comentario
Para hacer un comentario es necesario que te identifiques: ENTRA o conéctate con FacebookConnect