# Inteligencia artificial para videojuegos/Fundamentos de la inteligencia artificial
## Motivación

* Lógico-matemáticas, como demostrar teoremas.
* Gestión del conocimiento y asistencia a expertos para tomar decisiones económicas y de otro tipo. Estas decisiones pueden llegar a replantear un nuevo modelo de distribución del trabajo.
* Accesibilidad mediante comprensión, traducción y generación de lenguaje natural, verbal o no verbal, incluyendo el tratamiento de emociones.
* Vigilancia y análisis de imágenes y vídeos, para diagnósticos médicos o peritajes judiciales. Gracias al IBM, se pueden dar diagnósticos de cáncer con una precisión del 83%.
* Ayudar a filtrar información de ámbito médico, jurídico...
* Fabricación, logística y transporte delegado a robots, o tareas muy precisas como microcirujía.
* Militares, de gobierno, asistencia personal...

## Definición

La inteligencia es una capacidad mental muy general que, entre otras, incluye la habilidad de asimilar percepciones, razonar, planificar, resolver problemas, pensar en abstracto, entender ideas complejas, extraer conclusiones, elaborar respuestas, aprender rápido y mediante nuevas experiencias, e identificar y extrapolar patrones.
La inteligencia artificial son métodos, datos y algoritmos que permiten que el computador se comporte de manera inteligente ante problemas sin fácil solución computacional. Estas son tareas que, según Marvin Minsky, requerirían inteligancia si las hiciese el ser humano (i.e., reconocer rostros y voces, demostrar sentido común o adaptarse a nuevos dominios).
El término fue usado por primera vez en 1956, en la Conferencia de Dartmouth, un evento en el que se reunieron expertos del ámbito de la informática. Durante un verano trabajaron sobre la conjetura de que cada aspecto del aprendizaje y cada característica de la inteligencia podían ser tan precisamente descritos, que se podrían crear máquinas que las simularan.

## Test de Turing

Alan Turing propuso este juego de imitación en su artículo de 1950 Computing Machinery and Intelligence.
El experimento consiste en que un entrevistador habla a través de una terminal con un ser humano y una máquina. El objetivo del test es que la máquina demuestre un comportamiento inteligente tan similar al de un ser humano que el entrevistador no sepa que se trata de una máquina.
En el test original, el entrevistador pensaba que sus interlocutores eran un hombre y una mujer, y debía adivinar cuál de los dos era la mujer.

## Efecto Eliza

El efecto Eliza es la tendencia asumir, inconscientemente, que los comportamientos informáticos son análogos a los comportamientos humanos. La susceptibilidad de las personas a buscar una mayor comprensión en cadenas de símbolos ensartados por computadoras.
En 1966, Joseph Weizenbaum publicó un artículo sobre su chatterbot ELIZA, el cual se hacía pasar por un psiquiatra que respondía con preguntas a todo lo que el usuario le decía. Las personas que hablaban con ELIZA empatizaban con el bot e, inconscientemente, le atribuían intención y emoción.
Esto demuestra que pasar el Test de Turing puede ser más "Ingeniería Social" que IA, lo cual puede ser útil a la hora de hacer IA en videojuegos.
Por otra parte, si un interlocutor humano finge ser una máquina y habla por la terminal con usuarios humanos con el objetivo de hacerles pensar que es un máquina, a este experimento se le llama "de Mago de Oz" (Oz Paradigm). Existen anécdotas sobre este tipo de experimento, como la de Opera Soft.

## El problema del tranvía

Diseñado por el filósofo Philippa Foot el problema del tranvía consiste en un tranvía que se dirige hacia dos personas atadas en las vías del tren y se pone al usuario en la hipotética situación de poder empujar a una persona a las vías del tren para detener al tranvía o dejar que este siga su curso y mueran las dos personas. Este dilema tiene cierta controversia debido a que el usuario tiene que decidir si asesinar de forma directa a una persona o ser el culpable indirecto de la muerte de dos personas.
Este es un dilema muy relevante en la historia de la IA puesto que al no poseer una inteligencia emocional ni moral propia puede ser una mera decisión de azar o la deberá tomar el programador de software cuando, por ejemplo, deba elegir en una situación de riesgo durante la conducción automática de un coche tesla priorizar la vida del conductor o la de la gente a la que pueda atropellar.

## Enfoques de la IA

A la hora de enfocar la IA tenemos dos formas de pensar y dos formas de actuar. En ambas, la manera es humanamente o racionalmente.
* Pensar humanamente, utilizamos la ciencia cognitiva (IA + Psicología). El objetivo es que la IA piense como un ser humano.
* Pensar racionalmente, relacionado con la Lógica y Matemáticas. El objetivo no es que la IA emule el cerebro humano, sino que demuestre cosas de forma lógica. Se utiliza un resolutor para dar una solución a un problema.
* Actuar humanamente, debería ser capaz de pasar el Test de Turing. El objetivo es que la IA imite al ser humano, con las mismas imperfecciones. En este tipo de problemas, donde se intenta crear nuevos contenidos de forma "creativa" y fingir humanidad, necesitamos generadores que tienen en cuenta ciertos contenidos. En un videojuego, a partir de misiones previas, sería capaz de generar una misión nueva que tenga sentido.
* Actuar racionalmente, se utlizan Agentes Racionales. El objetivo es que la IA resuelva problemas reales y que los haga bien. Se usa, por ejemplo, en coche autónomos. Para ello se requiere un agente que tenga en cuenta en entorno.
Se denomina IA Fuerte a aquella que pretende actuar o pensar humanamente. Mientras que la que pretende actuar o pensar racionalmente, es la denominada IA Débil.

## Historia
### Antes

* Ars Magna (s. XIII)
* El Turco (s. XVIII) - supuesto autómata que jugaba al ajedrez a un alto nivel contra su oponente humano. Se trataba de una estructura formada por una cabina con un maniquí y, aunque se sospechaba que realmente era un engaño y se trataba de una persona de baja estatura dentro de la estrucutra, nunca pudo ser confirmado.

### Años 40

Se dan los inicios de la computación neuronal. Esto es lo que actualmente se conoce como Redes Neuronales Artificiales.

### Años 50

Se propone el Test de Turing a principios de la década. Turing fue un matemático, lógico, científico de la computación que consolidó el campo de la inteligencia artificial con su artículo "Computing Machinery and Intelligence" (Artículo). En dicho artículo propuso el Test de Turing para determinar si una máquina es inteligente o no. Aparece el término "Inteligencia Artificial" como tal durante una conferencia donde se hicieron previsiones muy positivas sobre la inteligencia artificial que posteriormente no se cumplieron. El hecho de que no se cumplieran las previsiones mas adelante hizo que en los años venideros se fuese abandonando casi en su totalidad las investigaciones sobre la IA. Se dan los primeros congresos y los primeros sistemas (LT, GPS...).
Se desarrolló el popular lenguaje funcional LISP.

### Años 60

Aparece la primera colección de artículos, Minsky y Papert escriben Perceptrons. Esta publicación influyó para enfatizar más los modelos simbólicos (A -> C <==> C = A) que los subsimbólicos, como las redes neuronales, que se dejan de investigar.

### Años 70

Los resolutores generales no funcionan por lo que se busca representar conocimiento específico (ej. sistemas de marcos), reglas de producción en "sistemas expertos" (ej. MYCIN), robots (ej. Shakey).
Aparte, se desarrolló el lenguaje declarativo PROLOG, que fue popular en Europa.

### Años 80

Se inicia el proyecto Cyc, se recurre al razonamiento basado en casos, perceptrón muticapa y aprendizaje por retropropagación del error. Aparecen claras aplicaciones industriales de la IA.
en 1987 se definen los atributos de un agente inteligente de forma mas amplia. Dichos atributos eran:
-Actitudes mentales como creencias e intenciones
-Capaz de realizar operaciones complejas.
-conocimiento del límite sus habilidades.
-Capacidad para aprender.
-Puede ser original.
-Capacidad para generalizar.
-Percibir y modelar si concepción de un entorno.
-Capacidad para comprender ideas ambiguas o contradictorias
-Distinción de cosas muy similares.
Y una larga lista de capacidades que se le atribuían a un agente inteligente. Dichas capacidades se consideran características habituales en los seres humanos y son las que una Inteligencia artificial intenta imitar.

### Años 90

Aparecen sistemas "basados en conocimiento" (y no en reglas), con sentido común, agentes, minería de datos, etc.
Se utiliza la fuerza bruta, usando mucho hardware para solucionar problemas. De esta manera se consiguen éxitos como el de Deep Blue contra Kasparov (la supercomputadora de IBM, Deep Blue, gana al campeón mundial de ajedrez, Gary Kasparov)

### Actualidad

Se ve el resurgir de la Red Neuronal Artificial (ej. Google DeepMind), aprendizaje no supervisado, proyectos sobre Big Data, Robótica industrial y doméstica...

## Inviernos de la IA

A lo largo de la historia de la inteligencia artificial, como en otros ámbitos de la tecnología, hay ciclos de entusiasmo con subidas y bajadas. Se pueden observar lagunas entre los años 1970-80 y entre finales de los 80 y principios de los 90, además de decepciones puntuales. De una manera más específica:
* 1966: Falla la traducción automática.
* 1969: Perceptrons
* 1970: Se abandona el conexionismo.
* 1973: UK deja de financiar IA.
* 1973-74: DARPA también.
* 1993: Los sistemas expertos caen.
* 1990s: Los proyectos del computador de quinta generación desaparecen.

## Fronteras de la IA

La IA deja de ser inteligencia artificial cuando se nos hace fácil resolver los problemas hacia los que va dirigida. Es decir, según conseguimos más datos y mejores algoritmos, hay menos problemas difíciles.
Recordemos que la IA pretende ser un conjunto de métodos, datos y algorítmos que permiten que el computador se comporte de manera inteligente antes problemas difíciles. Por eso, lo que antes era IA, ahora ya no se considera como tal. Entre estos casos encontramos a Siri, Google, Cortana, las calculadoras, etc.

## Controversias

Se presentan amenazas:
* De privacidad. El miedo a ser controlados en vez de controlar.
* De seguridad. Existen solicitudes de prohibición a los "robots soldado".
* Singularidad tecnológica. Se cree que la IA puede llegar a sobrepasar el ritmo del progreso humano.
* Tanshumanismo. Esta controversia se refiere a la posibilidad de que, en un futuro, el mundo sea mitad humano, mitad IA. Incluso se especula con el fin de nuestra civilización.
* De concepto de inteligencia puesto que al no saber que es del todo la inteligencia es difícil considerar si una máquina es mas inteligente que un humano. Por ejemplo, el ordenador Sunway Tahulight es capaz de realizar 93 mil billones de operaciones por segundo (93 petaFLOPS) mientras que el cerebro humano tiene una capacidad de unos 40 billones de operaciones por segundo (40 petaFLOPS), pero como no se sabe que es la inteligencia con exactitud no podemos determinar si esto hace a una máquina mas inteligente que el humano.
* De Trabajo. La inteligencia artificial esta poco a poco obteniendo habilidades que van robando puestos de trabajo a la gente. "Sunspring" es un ejemplo de como una inteligencia artificial fue capaz de escribir un guión y diseñar entornos, trajes y actos de los personajes. El guión fue interpretado por personas y aunque no es un buen guión lo creó en cuestión de segundos. Por esto se puede ver como cada vez amenazan con tener capacidad de ocupar todos los puestos de trabajo en su totalidad.
Pero, en palabras de Mark Zuckerberg: “En cierto sentido, la IA está al mismo tiempo más cerca y más lejos de lo que imaginamos. La IA está cerca de conseguir hacer cosas más potentes de lo que la gente espera: conducir coches, curar enfermedades, descubrir planetas, comprender los medios. Eso va a tener un gran impacto en el mundo, pero todavía seguimos tratando de entender qué es la verdadera inteligencia.”