Sie sind auf Seite 1von 12

UNIVERSIDAD NACIONAL DE SAN AGUSTIN

CURSO: Inteligencia artificial Laboratorio : 1


NOMBRE: Vega Colque Milagros Rosario
___________________________________________________________________

PRACTICA DE LABORATORIO

1. EL JUEGO DE LAS 20 PREGUNTAS

El juego de las 20 preguntas (http://y.20q.net/anon-es) consiste en adivinar un objeto


pensado por otra persona haciendo como máximo 20 preguntas.

 Necesita una gran cantidad de conocimiento para ser efectivo (¿Cómo


representarlo?)
Pienso que este juego hace uso de un árbol con diferente tipo de información,
además que contiene conceptos clasificados y este va tomando cada
respuesta y va seleccionando cada respuesta en cada rama hasta llegar a
adivinar lo que queremos.

 Necesita saber que preguntas hacer (¿Cómo tomamos la decisión?)


Pienso que en cada ronda de preguntas son aleatorias, y poco a poca va
descartando algunas preguntas dependiendo de la respuesta anterior.
 Necesita ser tolerante a conocimiento impreciso, respuestas incorrectas
(¿Cómo lo representamos? ¿Cómo influye esto en las preguntas y
respuestas ?)
Se contestan las 20 primeras preguntas, si aun no se obtiene una respuesta
del objeto o cosa que se quiere, el sistemas sigue preguntando hasta el
máximo, ya que si no se da un respuesta muestra una lista de las posibles
cosas relacionadas con las respuestas.

La experiencia puede mejorar el sistema (¿Cómo podemos aprender?)

El juego tiene la meta de saber cuál es el objeto, puesto que continuara


haciendo nuevas preguntas, aunque ya haya perdido, el juego muestra cuando
hay contradicciones en las respuestas y a pesar de ello trata de llegar a
adivinar.

 Jugar un rato con el sistema y comprobar cuantas veces adivina lo que


piensan.
acierto

desacierto

1.1. FUNCIONAMIENTO

20Q es, en realidad, una aplicación basada en una red neuronal artificial, que es una
de las ramas de estudio de la inteligencia artificial.
Las redes neuronales son un modelo de aprendizaje y procesamiento de información
automático inspirado en el sistema nervioso biológico.

En las redes neuronales artificiales las neuronas se modelan mediante unidades de


proceso, que están unidas mediante conexiones ponderadas.
Cada conexión tiene un peso asociado, que equivale a la fuerza de la conexión. La
función de red es la encargada de calcular la entrada global, que generalmente se
calcula mediante una suma ponderada de todas las entradas recibidas.
La función de activación, generalmente se encarga de determinar el nivel de activación
basándose en la entrada global. Este valor de activación será el que se transmitirá a
todas las unidades con las que esté conectada.
Una de las características más importantes de las redes neuronales es el aprendizaje.
El aprendizaje en las redes neuronales biológicas se produce mediante el ajuste de la
efectividad de la sinopsis, de esta manera cambia la influencia que unas neuronas
ejercen sobre otras. En las redes neuronales artificiales el aprendizaje consiste en el
ajuste de los pesos en las conexiones.

Inicialmente, habremos establecido unos pesos para las conexiones de nuestra red
neuronal artificial, pero a través de entrenamiento podemos conseguir que estos pesos
cambien. En nuestro caso, entrenamos a 20Q cada vez que jugamos. Si para el
mismo objeto repetidas veces obtiene la misma respuesta, esa conexión se irá
reforzando y terminará reconociendo esa respuesta como válida.

1.1. APLICACIONES DE LAS REDES NEURONALES EN LA ACTUALIDAD

1.1.1. MEDICINA

Las aplicaciones en medicina encuentran su reflejo en problemas de diagnóstico


médico. Es uno de los campos con más futuro y, hoy por hoy, uno de los menos
desarrollados. Aplicaciones en este campo serían:

 Detección de tumores cancerígenos


Una red neuronal entrenada localiza y clasifica en imágenes médicas la posible
existencia de tumores cancerígenos.
 Predicción del riesgo de intoxicación por digoxina
En esta aplicación la tarea de la red neuronal es predecir el posible riesgo de
intoxicación por digoxina que es un fármaco usado en problemas de corazón.
 Predicción de enfermedades degenerativas cardíacas
Pacientes que han sufrido un infarto recientemente presentan un cierto factor
de riesgo de sufrir otro. Se puede usar una red para modelizar el
comportamiento de las arterias coronarias.
 Compresión de señales de electrocardiografía
Uno de los temas más activos actualmente en el campo de la ingeniería
biomédica es la tele-medicina. Esta disciplina consiste en el desarrollo
de algoritmos que permitan el diagnóstico de una determinada enfermedad sin
que el paciente se tenga que desplazar al centro médico. Las diferentes
señales que necesita el médico se transmiten vía telefónica. Para aumentar la
eficacia de esta transmisión se podría pensar en la compresión de la señal que
consiste en aplicar diferentes algoritmos para reducir su tamaño. Uno de
los métodos de compresión es con redes neuronales.
 Predicción de la respuesta emética
En esta aplicación la red neuronal determina como salida la respuesta emética.
Esta respuesta está relacionada con el número de nauseas y vómitos
que siente un paciente oncológico tras un tratamiento con quimioterapia.
 Predicción del nivel de ciclosporina
La ciclosporina es un fármaco usado habitualmente para evitar la reacción de
rechazo en trasplantes de riñón, corazón, pulmón e hígado. Predecir
la concentración de este fármaco a corto plazo ayudaría a la optimización de la
dosis siguiente. Esta predicción se puede hacer con una red neuronal.
 Diagnóstico de cardiopatías
Este tipo de aplicaciones nos clasifican el electrocardiograma en diferentes
tipos o clases
 Predicción del nivel de Tacrolimus en sangre
Este fármaco se utiliza en la terapia post-trasplante. Presenta un estrecho
ámbito terapéutico (la concentración en sangre se debe mantener entre 5 y 15
ng/ml) . Una red neuronal ha demostrado su utilidad en la predicción del
nivel de este fármaco en sangre.

1.1.2. TELECOMUNICACIONES

En este campo las redes neuronales han encontrado un gran hueco de tal forma que
ya existe una sociedad internacional sobre la aplicación de redes neuronales en
problemas de procesado de la señal. Algunos problemas de clasificación donde se
aplican las redes neuronales serían:

 Sonar y Radar
La capacidad de las redes neuronales para clasificar determinados objetos
(imágenes, sonidos, señales unidimensionales, ...) les permite su aplicación en
este campo como dispositivos para discernir los diferentes objetivos.
 Reconocimiento de voz
Esta aplicación, de gran importancia de cara a la implementación de sistemas
controlados por la voz, ha encontrado en las redes neuronales un camino para
su desarrollo.
 Reconocimiento de patrones en imágenes
Esta aplicación evidencia la capacidad de las redes neuronales ya que se trata
de una tarea relativamente sencilla para un ser humano pero tremendamente
costosa de implementar en un sistema artificial.
 Ecualización de canales de comunicación
Ecualizar un canal consiste en recuperar la señal que, al pasar a través de un
canal de comunicaciones, sufre una distorsión. Esta aplicación tiene entonces
gran importancia con el auge de las comunicaciones móviles. La aplicación de
redes neuronales se ha mostrado más efectiva que el uso de otros sistemas.
 Eliminación activa de ruido
Cuando el ruido y la señal de interés tienen los espectros
frecuenciales solapados un filtrado selectivo en frecuencia no tiene sentido. En
este caso hay que intentar otras aproximaciones. Una de estas es la
cancelación activa de ruido aplicando sistemas adaptativos y redes neuronales.
1.1.3. ECONOMIA

En esta disciplina, donde hay que tomar decisiones entre un número de opciones, las
redes neuronales son directamente aplicables frente a otros métodos por sus
características intrínsecamente no lineales. Así algunas de estas aplicaciones serían

 Concesión de créditos
En esta aplicación las redes neuronales en virtud de determinados marcadores
económicos de la persona que pide el préstamo decide su viabilidad o no .
 Determinación de la posibilidad de quiebra de un banco
En esta aplicación la red neuronal determina el riesgo de quiebra de un banco
en virtud de determinados parámetros económicos.
 Predicción de stocks. Uno de los mayores problemas que se puede
encontrar una fábrica es la falta o un exceso de suministros
En el primer caso no puede producir y, en el segundo, si no dispone de un
buen almacén, se puede producir el caos. Una buena previsión de la
cantidad necesaria justa podría evitar muchos problemas.
 Detección de posibles fraudes en tarjetas de crédito
Las redes neuronales pueden ser usadas como elementos discriminatorios
para conceder o no una determinada cantidad en un cajero automático.
 Predicción del gasto eléctrico de empresas y centrales
Mediante el uso de una red neuronal podemos estimar el consumo de una
empresa y, por tanto, podemos administrar mejor los recursos eléctricos de
dicha empresa. Extensiones de este trabajo abarcan otros recursos como,
por ejemplo, el consumo de aguas.
 Tendencias a corto y medio plazo en bolsas de valores
Si se buscan por Internet los productos derivados de las redes neuronales que
se comercializan se encontrará rápidamente que la gran mayoría de ellos se
orientan a aplicaciones de este tipo.

2. PLANIFICACION

Muchas situaciones prácticas requieren obtener el conjunto de acciones que permiten


resolver un problema concreto dado un planteamiento inicial y un objetivo (Ensamblaje
de objetos, diseño, cadenas de montaje, gestión de entregas, organización de tareas,
asignación de recursos, ...)

Estos problemas se pueden plantear a partir de una representación basada en lógica


(estado inicial y final, efectos de las acciones, precondiciones)

¿Cómo encontrar la secuencia de pasos?

El sistema de planificación que existe nos permite jugar con un conjunto de bloques
apilables.

2.1 Problema Mundo de bloques(ejemplo)

 DOMINIO O ESTADO INICIAL


 Conjunto de bloques sobre un tablero
 Sólo es posible situar un bloque sobre otro
 Los bloques los mueve un brazo mecánico, uno cada vez
 OBJETIVO O ESTADO DE META
 Construir uno o más montones de bloques

 OPERADORES O ACCIONES
 On(bloque, posición)
On ( C, Fl)
 Move(bloque, pos_x, pos_y)
Requieres PC. Para mover un bloque requiere que no haya otro sobre
él. Con el predicado CLEAR garantizaremos esta restricción
Move(B, Fl, C)
Move (B, C, C) acción espuria o degenerada (se puede solventar
añadiendo PC de igualdad)

3. ROBOTS CONVERSADORES

Los robots conversadores son una aplicación de técnicas de tratamiento de lenguaje


natural

El más famoso es ELIZA (1966) del que tenemos una implementación en castellano
Evidentemente los robots conversadores más evolucionados hablan Inglésx ,
tenemos una lista extensa de ellos, se puede probar por ejemplo ALICE
(http://alice.pandorabots.com/)

Estos robots incluyen todos los elementos de una aplicación de IA: Representación del
conocimiento (temas de conversación, gramática del idioma, …), razonamiento (que
responder, que preguntas), interacción (tratamiento del lenguaje natural, aprendizaje
(sí, algunos aprenden) Se puede pasar un rato entretenido con alguno de los robots.

ELIZA-1964

El primer Bot, desarrollado por Joseph Weizenbaum, en el MIT para la IBM 7094,
considerado como el primer bot, capaz de dialogar en inglés sobre cualquier tema,
Eliza, utilizaba etiquetas para entender los textos y catalogarlos. Además, fue
configurada para hablar con los usuarios acerca de sus problemas para ejercer el papel
de un psiquiatra.

FUNCIONAMIENTO

ELIZA funciona buscando palabras clave en la frase escrita por el usuario y responde
con una frase modelo registrada en su base de datos.
A veces, las respuestas de este bot resultaban tan convincentes que al conversar con
él, las personas creyeron que en verdad estaban dialogando con un interlocutor
humano.
Sin embargo, esto tuvo un límite cuando el usuario encontraba mensajes implícitos o
subliminales en las respuestas del bot, que hacían la conversación incoherente.
Cuando se escribía determinada frase que el bot no conocía, el mismo reformulaba
dicha expresión a modo de pregunta o reflexión.

ALICE- 1995

No es usado comercialmente como bot, pero se comercializa su código. Ofrece una


base modificable y personalizable a partir de la cual se pueden desarrollar
aplicaciones comerciales o de uso privado. Dado que se basa en AIML, un lenguaje
diseñado específicamente para el conocimiento de los bots.

En las diferentes pruebas realizadas, se ha podido observar que el tiempo de


respuesta en los casos de ALICE son notoriamente más pequeños, por tanto,
funcionan más rápido. El tiempo de respuesta puede deberse bien a la búsqueda del
vocabulario, o a otros aspectos relacionados con la interpretación de la pregunta y la
generación de la respuesta. ALICE ofrece un tiempo de respuesta bajo, es probable
que, se utilice respuestas preconstruidas y, por tanto, debe guardarlas en ficheros.

3.1. ¿Qué ES AIML?

AIML es un lenguaje de programación, nombrado mediante una sigla que responde a


las palabras inglesas “Artificial Intelligence Markup Language” (en español, “Lenguaje
de marcas para Inteligencia Artificial).

AIML está basado en XML y se diseñó específicamente para la construcción del bot
ALICE . Sin embargo, su uso es abierto y puede ser utilizado como lenguaje de base
para la creación de nuevos bots, aprovechándose de una estructura creada
precisamente para ese fin.

Habitualmente, los bots basados en AIML son conocidos como Alicebots debido a su
origen .

La principal característica de funcionamiento de un bot basado en AIML es el uso de


patrones (patterns) y plantillas (templates). El reconocimiento de las entradas consiste
en identificar en las distintas palabras patrones conocidos para asociarlos
posteriormente a una plantilla. Esta plantilla contiene diferentes respuestas que
guardan relación con el patrón entrado y pueden incluso reutilizar parte de la entrada
en la respuesta para simular una mayor comprensión.

3.2. ¿Cuáles son las ventajas de los chatbots para las empresas?

 Permiten automatizar respuestas que, pueden ser respondidas de forma


automática.
 Ahorran costes de personal en los servicios de call center y permiten desviar
aquellas llamadas o consultas que realmente necesitan la atención de un
operador. Optimizan el tiempo de la empresa.
 Posibilitan un contacto permanente de la marca con sus clientes, uno de los
principales reclamaciones de los usuarios a las empresas.
 Impulsan la comunicación y la reputación de la marca en sus canales de redes
sociales ofreciendo un servicio de atención de consultas propio a través de
mensajes privados o chat.
 Responden de forma inmediata al usuario sobre cuestiones que afectan a los
servicios que ofrece la empresa.
 Son realmente útiles cuando hablamos del uso de nuevos servicios nformáticos
o en la gestión de compras o incidencias en el terreno del ecommerce
(comercio electrónico).

3.3. APLICACIONES

TURISMO:

Los bots se están convirtiendo en el asistente perfecto a lo largo de todo nuestro viaje:
nos ayudan a encontrar y reservar el vuelo o el hotel, a resolver las dudas que nos
surgen durante nuestra estancia y, por supuesto, a valorar la experiencia.

SALUD :

Procesamiento de datos clínicos, gestión de revisiones, cita La Inteligencia Artificial y


los chatbots están transformando por completo este sector. Un ejemplo de ello es Billy
Farmabot, que suministra información del prospecto de más de 22.000 medicamentos
directamente desde Whatsapp, Facebook Messenger o Telegram.

ECOMMERCE:

Según un informe reciente de Business Insider, más de 200 millones de usuarios en


China han agregado información de pagos a WeChat, la aplicación de mensajería líder
en ese país, WeChat puede convertirse en el canal perfecto para comercializar
diferentes productos.

GESTION EMPRESARIAL:

Si bien no se trata de un sector en concreto, en la actualidad, muchos departamentos


de grandes empresas están introduciendo bots con el objetivo de mejorar la eficiencia
y dinamizar la gestión interna de algunos procesos repetitivos de poco valor pero que
consumen importantes recursos e, incluso, para testar la tecnología internamente
antes de lanzarla al público.

3.4. EMPRESAS QUE USAN CHATBOTS

 El banco de Crédito del Perú (BCP)


En el Perú, esto ya es una realidad. Arturito es el chatbot del BCP que opera
con lo último de la tecnología de inteligencia artificial. Está preparado para
responder todo tipo de preguntas alrededor de los temas que maneja. Pero, lo
más interesante, es que su programa le permite aprender de cada nueva
comunicación, por lo que su repertorio de respuestas se incrementa mientras
más se comunica con los usuarios.
 Destinia:
La agencia de viajes online Destinia ha puesto en marcha en España
un chatbot para Facebook Messenger que permite le a sus clientes buscar
hoteles en la plataforma. Este programa simula mantener una conversación
gracias a las respuestas automáticas. El objetivo es incluir otras peticiones
como cancelaciones de reservas o búsqueda de otros servicios, como vuelos.

 ImaginBank:
El banco móvil de CaixaBank lanzó el primer chatbot del sector financiero en
España. La entidad creó un servicio por el cual los clientes de imaginBank
pueden dialogar con el software. El cliente puede preguntar directamente
al chatbot, a través de mensajes escritos o de voz, qué ofertas existen para un
determinado ámbito o un lugar concreto. El servicio está disponible en el del
sistema de mensajería de Facebook Messenger.

 Ikea:
Anna es la asistente virtual de IKEA. Ella responde preguntas sobre productos,
precios, tamaños, entrega, piezas de repuesto, horario de apertura, entre otros.
También abre páginas relacionadas a la consulta en una nueva ventana del
navegador.

 Pizza Express:
Para aquellos amantes de la piza pueden reservar una mesa con el bot del
restaurante Pizza Express Messenger. La compañía dice que es posible hacer
una reserva en poco más de 60 segundos a través del bot, quien pregunta por
los platos y preferencias culinarias.

 Genius:
Para algo un toque más intelectual, National Geographic creó un chatbot de
Albert Einstein para promover su programa Genius sobre el famoso físico.
El chatbot enseña al usuario sobre la vida de Einstein, usando una mezcla de
respuestas basadas en texto, imágenes y GIF’s. Es bastante básico pero
muestra cómo los robots de AI pueden ser utilizados como una herramienta
educativa.
 Mitsuku:
Este chatbot basado en la web es un chatbot más parecido a la humanidad.
Mitsuku es un “amigo virtual”, puede responder preguntas, jugar y hacer trucos
a petición del usuario, y es capaz de razonamiento básico. También está
disponible en Kik Messenger.

4. JUGADOR DE TETRIS

http://www.lsi.upc.edu/~bejar/ia/material/laboratorio/intro/JTetris.jar

Tetris es un juego de computadora, originalmente diseñado y programado por Alekséi


Pázhitnov en la Unión Soviética.
Salió a la luz pública el 6 de junio de 1984.El juego deriva su nombre del prefijo
numérico griego tetra- (todas las piezas del juego, conocidas como Tetrominós que
contienen cuatro segmentos) y del tenis, el deporte favorito de Pázhitnov.

Para entender la mecánica del juego Tetris en el NES, el ROM fue explorado. El NES
usa un MOS 6502, el mismo procesador de la Commodore 128 y la Apple II. Esto
implicó entrarle al lenguaje de máquina de dicho procesador. El artículo muestra cómo
los bloques (llamados tetriminos) son creados y cómo se mueven en la pantalla. Se
examina la rutina “random”. Incluso se dan detalles de la pantalla legal y se explican
los modos de demostración.

El juego Tetris funciona con un algoritmo de inteligencia artificial. Esto está


implementado en Lua dentro del emulador FCEUX NES/Famicom. Funciona
evaluando todos los posibles lugares para poner cada tetrimino y elige el mejor basado
en un número de criterios. El pso de cada criterio se determina usando un sistema de
optimización de partículas.

Das könnte Ihnen auch gefallen