domingo, 28 de agosto de 2011

Búsqueda 1


Para formalizar un problema se sugieren los siguientes puntos:

  • El espacio de estados, es decir, el conjunto de todos los estados válidos posibles que cumplen con las restricciones del problema.
  • La representación de los estados es consistente: la variable que define el estado inicial contiene los mismos elementos que la del estado objetivo.
  • Los operadores específicos son en base a las variables representadas.
  • El estado inicial puede ser una configuración cualquiera de las variables en caso de no tener una determinada.
  • Los estados corresponden a estructuras de datos del programa.
  • Los operadores se encargan de modificar con algoritmos las estructuras de datos.
  • Completo significa que se representan todos los estados posibles. No redundante, que se eliminan ciclos.
  • Los elementos esenciales de un nodo son: estado, profundidad, operador que lo creó y su nodo padre.

En el ejemplo de la búsqueda de un número telefónico teniendo el nombre y apellido de la persona a buscar, en clase se planteó lo siguiente:

Estado inicial: Directorio, Nombre, Apellido
Operadores: Cambiar directorio, verificar directorio, buscar en índice, ir a página, cambiar página, buscar en página, comparar apellido y nombre.
Estado objetivo: Directorio, Nombre, Apellido y número conocidos.
Costo de la ruta: Cuántas veces se cambió de directorio o página.

Como podemos observar, el número de variables en el estado inicial no concuerda con las variables del estado objetivo, por lo que tenemos un primer problema. Como siguiente observación, nos podemos dar cuenta que los operadores son muy generales y no están completos y/o correctos. Tenemos que recordar que los operadores deben ser lo más claros y específicos posibles.

Como segundo ejemplo se expuso la resolución del cubo de rubik, teniendo lo siguiente:

-Estado inicial: 6 caras cada una con una combinación de 9 bloques con un máximo de 6 distintos colores.
    *6 matrices de 3x3, cada una con 4 matrices adyacentes donde cada celda es de un color.
-Operadores: Giro de 90° hacia la derecha, izquierda, arriba o abajo.
    *Girar una cara 90°
-Estado objetivo: Cada cara del cubo tiene que tener todos los bloques del mismo color.
    *Todas las celdas de cada matriz deben tener sólo un color.
-Costo de la ruta: Número de movimientos realizados hasta llegar al estado objetivo.

En este caso se corrigió cada uno de los puntos expuestos arriba, de modo que las líneas que comienzan con asteriscos (*) indican la corrección de cada parte de la formulación de este problema. De nuevo, los operadores deben ser lo más específicos posibles pero también se deben minimizar en la medida de lo posible, como fue el caso de este planteamiento.

domingo, 21 de agosto de 2011

Analizando el Test de Turing

En el artículo "Computer Machinery and Intelligence" de A.M. Turing se plantea una prueba para validar la inteligencia de una máquina, y también se proponen algunas objeciones potenciales contra la búsqueda de una inteligencia artificial, entre ellas, la objeción que consideramos más relevante es la de Lady Lovelace.

Su argumento ofrece una visión empirista acerca de cómo pueden aprender las máquinas, establece que no podrían generar una inteligencia más allá de lo que sepamos ordenarles, y una vez que se alcance ese grado de investigación acerca del funcionamiento de la misma, traería más complicaciones que las iniciales.

Además, esto provoca que no exista una metacognición de un estado de inteligencia dentro de la máquina, por lo que el desarrollo de una inteligencia artificial siempre se verá limitado a las capacidades humanas y será sujeto a una interpretación de la percepción que se le otorgue de parte de quien este designando como inteligencia a las habilidades de la máquina.

Esto último, también en base a una expectativa humana, que espera resultados más allá de un conjunto de bits pero que al mismo tiempo espera que sólo sea un conjunto de mecanismos sin razonamiento.

Por otra parte, tomando en cuenta los más recientes avances tecnológicos, creemos que seguramente en este tiempo se han desarrollado más argumentos en contra de un desarrollo de la inteligencia artificial, pero al mismo tiempo existen esfuerzos a favor, como el premio Loebner, que se basan en la prueba de Turing, el cual consiste en una competición de carácter anual que concede premios al programa de ordenador que esté considerado como el más inteligentes de los que hayan sido presentados ante el jurado de dicha competencia.

Posiblemente sigan existiendo objeciones como las ya mencionadas por Alan Turing en 1950, y que se hayan generado nuevas objeciones desde ese tiempo y se sigan generando en un futuro. Sin embargo, también se deben de haber generado nuevas respuestas y justificaciones para respaldar el desarrollo de la inteligencia artificial, además de que difícilmente alguna persona no tendría la curiosidad de saber y/o ver a una máquina capaz de superar la prueba de Turing, y por lo tanto tener la inteligencia suficiente como para poder sostener una conversación con una persona o imitar cualquier otro comportamiento de los seres humanos.

El artículo fue escrito en 1950 y en éste Turing predice que para el año 2000 una computadora debería tener un 30% de probabilidades de pasar un Test de Turing de 5 minutos con un interrogador promedio (que no sea muy letrado). Tomando en cuenta que estamos en el 2011, en la era de las comunicaciones instantáneas, opinamos que no era la velocidad ni la memoria lo que hacía falta pues eso sí ha superado las expectativas que se tenían para esa época acerca de las futuras capacidades de una máquina, sino que se han ido descubriendo que se necesitan más cualidades que las anteriores para otorgar una respuesta aceptable dentro de la prueba de imitación de Turing.

A pesar de lo anterior, existen intentos de al menos simular una situación parecida a la propuesta en la prueba de Turing, con muy buenos resultados y muy cercanos a lo que se plantea en la prueba de Turing. Es por ello que creemos que, aunque no existe actualmente una computadora capaz de superar la prueba de Turing, es sólo cuestión de tiempo para que esto ocurra, es decir, algunos años solamente.

Algunos ejemplos de los intentos que mencionamos en el párrafo anterior para lograr simular una situación parecida a la de la propuesta de la prueba de Turing son:

- Dr. Abuse (psicoterapeuta computarizado)(Español)
http://www.psicoactiva.com/abuse/drabuse.htm

- Turinghub (Inglés)
http://www.turinghub.com/

- Jabberwacky (puedes enseñarle y usa emociones indicándoselas)(Inglés)
http://www.jabberwacky.com/

- Igod (simula chat con Dios)(Inglés)
http://www.titane.ca/concordia/dfar251/igod/main.html

- Watson (creada por IBM y concursó en Jeopardy)
http://www-03.ibm.com/innovation/us/watson/

miércoles, 17 de agosto de 2011

Clase 1

Ejercicio de clase:

¿Qué sabemos acerca de inteligencia artificial y agentes inteligentes?
-Que se refiere a las técnicas usadas para tratar de simular la inteligencia humana.
-Existen algoritmos que se usan en este campo como son las redes neuronales y algoritmos genéticos.
-Es usado en la industria para reconocer patrones y tomar decisiones.
Usan procesos que aprenden y modifican su comportamiento de a cuerdo a su entorno.


¿Qué esperamos de la materia?
-Aprender algoritmos y aplicaciones de la inteligencia artificial.
-Aplicar lo aprendido usando los robots lego del curso.
-Ejemplos de uso de la IA en la vida diaria.
-Saber que son los sistemas multiagentes.

Curso de agentes inteligentes 2011

Curso de agentes inteligentes, ITESO 2011.

Equipo:
Edgard Francisco Caballero Zúñiga
Juan Pablo Garduño Calderón
Karla Maribel Zuloaga Sánchez