Está en la página 1de 17

¿Qué es la IA?

4 enfoques
Sistemas que piensan como humanos: «El nuevo y excitante esfuerzo de hacer que los
computadores piensen... máquinas con mentes, en el más amplio sentido literal».
Sistemas que piensan racionalmente: «El estudio de las facultades mentales mediante el uso
de modelos computacionales»
Sistemas que actúan como humanos: «El arte de desarrollar máquinas con capacidad para
realizar funciones que cuando son realizadas por personas requieren de inteligencia».
Sistemas que actúan racionalmente: «La Inteligencia Computacional es el estudio del diseño de
agentes inteligentes»
Ciencia que se encarga del estudio de la conducta inteligente.
Areas IA: Robótica, Redes Neuronales Artificiales, Sistemas Expertos, Visión Computacional.
Aplicaciones IA:
Planificación autónoma: el programa de la NASA Agente Remoto se convirtió en el primer
programa de planificación autónoma a bordo que controlaba la planificación de las operaciones
de una nave espacial desde abordo.
Juegos Deep Blue de IBM fue el primer sistema que derrotó a un campeón mundial en una
partida de ajedrez cuando superó a Garry Kasparov por un resultado de 3.5 a 2.5
Robótica: muchos cirujanos utilizan hoy en día asistentes robot en operaciones de microcirugía.
Diagnóstico: los programas de diagnóstico médico basados en el análisis probabilistico han
llegado a alcanzar niveles similares a los de médicos expertos.

LA PRUEBA DE TURING, se diseñó para proporcionar una definición operacional y satisfactoria


de inteligencia. En vez de proporcionar una lista larga de cualidades necesarias para obtener
inteligencia artificialmente, él sugirió una prueba basada en la incapacidad de diferenciar entre
entidades inteligentes indiscutibles y seres humanos. El computador supera la prueba si un
evaluador humano no es capaz de distinguir si las respuestas, a una serie de preguntas
planteadas, son de una persona o no.
Hoy por hoy, podemos decir que programar un computador para que supere la prueba
requiere un trabajo considerable. Debería poseer las siguientes capacidades:
• Procesamiento de lenguaje natural que le permita comunicarse satisfactoriamente en inglés.
• Representación del conocimiento para almacenar lo que se conoce o siente.
• Razonamiento automático para utilizar la información almacenada para responder a
preguntas y extraer nuevas conclusiones.
• Aprendizaje automático para adaptarse a nuevas circunstancias y para detectar y extrapolar
patrones.
Prueba Global de Turing el computador debe estar dotado de
• Visión computacional para percibir objetos.
• Robótica para manipular y mover objetos.

Entorno de trabajo: REAS (Rendimiento, Entorno, Actuadores, Sensores).


PROPIEDADES DE LOS ENTORNOS DE TRABAJO
Totalmente observable vs. Parcialmente observable: Si los sensores del agente le
proporcionan acceso al estado completo del medio en cada momento. Un entorno puede ser
parcialmente observable debido al ruido y a la existencia de sensores poco exactos o porque los
sensores no reciben información de parte del sistema.
Determinista vs. Estocástico: Si el siguiente estado del medio está totalmente determinado por
el estado actual y la acción ejecutada por el agente. Si el medio es parcialmente observable
entonces puede parecer estocástico.
Episódico vs. Secuencial: La experiencia del agente se divide en episodios atómicos, el siguiente
episodio no depende de las acciones que se realizaron en episodios previos. En entornos
secuenciales, por otro lado, la decisión presente puede afectar a decisiones futuras.
Estático vs. Dinámico: Si el entorno puede cambiar cuando el agente está deliberando,
entonces se dice que el entorno es dinámico para el agente; de otra forma se dice que es
estático.
Discreto vs. Continuo: La distinción entre discreto y continuo se puede aplicar al estado del
medio, a la forma en la que se maneja el tiempo y a las percepciones y acciones del agente.
Agente individual vs. Multiagente: un agente resolviendo un crucigrama por sí mismo está
claramente en un entorno de agente individual, mientras que un agente que juega al ajedrez
está en un entorno con dos agentes.
El caso más complejo es el parcialmente observable, estocástico, secuencial, dinámico,
continuo y multiagente.
MEDIO
ACCIONES QUE INFORMACIÓN TIPO
GENTE AMBIE META
TOMA QUE PERCIBE
NTE
Mover Ficha
Analizar Jugada Basado a
Jugador
Actualizar Jugada del Objetivos
de Usuario GANAR
tablero adversario Basado a
Ajedrez
Finalizar Utilidad
partida
Mover Ficha
Jugador Analizar Jugada Tiempo restante Basado a
de Reloj Actualizar Objetivos
GANAR
Ajedrez Usuario tablero Jugada del Basado a
con Reloj Finalizar adversario Utilidad
partida
Condici
Diferenc
Piloto ones
Girar los ia de Altura
automátic Climátic Basado a
controles de altura Presión
o de as Objetivos
mando normal
avión Tráfico
es 0
en aire
Convertid
or de Convertir
Usuario Cantidad
unidades cantidad
físicas

AGENTE Percepcion Acciones Meta Medio Amb


Clasificador Imagen de Visualizar, Categorizar en Fruta
Frutas fruta categorizar verdes y
maduras
Piloto Ubicación por Regular Ir de un lugar Alrededor
Automatico GPS, velocidad, a destino automóvil
auto imágenes de Controlar giro
alrededor
Medico Entrada de Vicualizar Paciente sano paciente
General síntomas, preguntas,
respuesta de pruebas,
pacientes diagnosticar
tratamiento
a.) Mycin era un sistema experto de diagnòstico mèdico de transtorno en la sangre.( V )
b.- Las redes neuronales se usan para resolver problemas de optimización.( V )
c.- Al preguntar a un sistema experto si Pedro es padre de Juan, se està aplicando
encadenamiento de reglas hacia adelante.( F )
d.- Un propósito para un sistema experto sería que pueda hacer pronósticos. ( V )
e.- La base de conocimientos està compuesta solamente por hechos.( F ) La base de
conocimiento se expresa mediante hechos y reglas Prolog,
f) Las heurísticas permiten buscar en un árbol de estados por amplitud ( F )
g) El problema de las jarras se resuelve con una búsqueda por profundidad
h) Heurística No es un fundamento de la lógica de predicados:
i) Los sistemas basados en reglas permiten: aprender
j) La inteligencia de las redes neuronales residen en el número de capas.( F )
Técnicas usadas en los sistemas expertos: a. redes neuronales b. lógica difusa c. reglas de
producción
k) Busqueda profundidad usa pilas (V)
l) Arbol recursivo, primero el mejor usa heurísticas (V)
m) Misioneros y Canibales búsqueda no informada
n) Problema jarras se resuelve por amplitud
Un sistema es racional si hace «lo correcto», en función de su conocimiento.
Agente inteligente es aquel que emprende la mejor acción posible ante una situación dada.
Agente es cualquier cosa que se puede ver como algo que percibe su medio ambiente a través
de sensores y que actúa dentro de ese medio ambiente a través de efectores.
La Racionalidad depende de 4 factores: La medida de rendimiento que define el criterio de
éxito. El conocimiento del medio en el que habita acumulado por el agente. Las acciones que el
agente puede llevar a cabo. La secuencia de percepciones del agente hasta el momento.
Agente Racional: En secuencia de percepciones, un agente racional deberá emprender aquella
acción que maximice su medida de rendimiento, basándose en las evidencias aportadas por la
secuencia de percepciones y en el conocimiento que el agente mantiene almacenado.
Hechos más saltantes de la Inteligencia artificial
En 1936 Alan Turing diseña formalmente una Máquina universal que demuestra la viabilidad de
un dispositivo físico para implementar cualquier cómputo formalmente definido.
Personajes: Leibnitz(sistema binario de numeracion), Turing(padre de la IA, algoritmo), Von
Newman,(Teoria de autómatas y lenguajes formales) MacCarty(Inteligencia artificial),
Newell(teorico logico)
BÚSQUEDA NO INFORMADA: No tienen información adicional acerca de los estados más allá
de la que proporciona la definición del problema. Todo lo que ellas pueden hacer es generar los
sucesores y distinguir entre un estado objetivo de uno que no lo es.
Búsqueda primero en anchura: estrategia sencilla en la que se expande primero el nodo raíz, a
continuación se expanden todos los sucesores del nodo raíz, después sus sucesores, etc. En
general, se expanden todos los nodos a una profundidad en el árbol de búsqueda antes de
expandir cualquier nodo del próximo nivel. USA COLAS
Búsqueda primero en profundidad: siempre expande el nodo más profundo en la frontera
actual del árbol de búsqueda. La búsqueda procede inmediatamente al nivel más profundo del
árbol de búsqueda, donde los nodos no tienen ningún sucesor. USA PILAS
BÚSQUEDA INFORMADA Y EXPLORACIÓN:
Búsqueda voraz primero el mejor: trata de expandir el nodo más cercano al objetivo, alegando
que probablemente conduzca rápidamente a una solución. Así, evalúa los nodos utilizando
solamente la función heurística: f(n) = h(n).
Búsqueda A* expande nodos con mínimo f[n) = g[n) + h(n). A* es completa y óptima, con tal
que garanticemos que h{n) sea admisible (para Búsqueda-Árbol) o consistente (para Búsqueda-
Grafo). La complejidad en espacio de A* es todavía prohibitiva.
El rendimiento de los algoritmos de búsqueda heurística depende de la calidad de la función
heurística. Las heurísticas buenas pueden construirse a veces relajando la definición del
problema, por costos de solución precalculados para sub-problemas en un modelo de bases de
datos, o aprendiendo de la experiencia con clases de problemas.
BRPM y A*MS son algoritmos de búsqueda robustos y óptimos que utilizan cantidades
limitadas de memoria; con suficiente tiempo, pueden resolver los problemas que A* no
Estrategias de búsqueda informada (heurísticas)
Un agente es algo que percibe y actúa en un medio.
La función del agente especifica la acción que debe realizar un agente como respuesta a
cualquier secuencia percibida.
La medida de rendimiento evalúa el comportamiento del agente en un medio. Un agente
racional actúa con la intención de maximizar el valor esperado de la medida de rendimiento,
dada la secuencia de percepciones que ha observado hasta el momento.
Entorno de trabajo incluyen: la medida de rendimiento, el medio externo, los actuadores y los
sensores.
El programa del agente implementa la función del agente.
Agente Reactivo Simple: Estos agentes seleccionan las acciones sobre la base de las
percepciones actuales, ignorando el resto de las percepciones históricas. Son simples, pero
poseen una inteligencia muy limitada.

Agentes Reactivos Basados en Modelos: La forma más efectiva que tienen los agentes de
manejar la visibilidad parcial es almacenar información de las partes del mundo que no pueden
ver. El agente debe mantener algún tipo de estado interno que dependa de la historia percibida
y que de ese modo refleje por lo menos alguno de los aspectos no observables del estado
actual.
Agentes Basados en Objetivos: El conocimiento sobre el estado actual del mundo no es
siempre suficiente para decidir qué hacer. Por ejemplo, en un cruce de carreteras, el taxista
puede girar a la izquierda, girar a la derecha o seguir hacia adelante. La decisión correcta
depende de dónde quiere ir el taxi. En otras palabras, además de la descripción del estado
actual, el agente necesita algún tipo de información sobre su meta que describa las situaciones
que son deseables, por ejemplo, llegar al destino propuesto por el pasajero.

Agentes Basados en Utilidad: Las metas por si solas no son realmente suficientes para generar
comportamiento de gran calidad. Las metas sólo proporcionan una distinción binaria entre los
estados de «felicidad» y «tristeza», mientras que una medida de eficiencia debería permitir una
comparación entre estados del mundo diferentes de acuerdo al nivel exacto de felicidad

Agentes que aprenden: En muchas áreas de IA, éste es ahora el método más adecuado para
crear sistemas novedosos. El aprendizaje tiene otras ventajas, permite que el agente opere en
medios inicialmente desconocidos y que sea más competente que si sólo utilizase un
conocimiento inicial.

Búsqueda primero en anchura:


Búsqueda primero en profundidad:

BÚSQUEDA INFORMADA Y EXPLORACIÓN:


Búsqueda voraz primero el mejor:
función heurística: f(n) = h(n). Heuristica Distancia Linea Recta
Búsqueda A* expande nodos con mínimo f[n) = g[n) + h(n). A* es completa y óptima, con tal
que garanticemos que h{n) sea admisible (para Búsqueda-Árbol) o consistente (para Búsqueda-
Grafo). La complejidad en espacio de A* es todavía prohibitiva.
f[n) = coste más barato estimado de la solución a través de n.
si tratamos de encontrar la solución más barata, es razonable intentar primero el nodo
con el valor más bajo de g(n) + h(n). Resulta que esta estrategia es más que razonable:
Se requiere desarrollar un Sistema Experto para asesorar la asignación de un analista según los
requerimientos de un cliente dado en una empresa que brinda el servicio de diseño y análisis
de redes LAN.
El sistema será capaz de determinar el tipo de analista que debe ser asignado según el
problema del cliente. Se considera 3 tipos de analista: principiante, entrenado y
experimentado. El SE también deberá estimar el costo para el cliente. Considere los siguientes
factores de análisis:
a) Tamaño de la organización (nro. de personas que trabajan en la empresa): 20, menos de
100, menos de 500 o más de 500 personas. De este modo se establece si la empresa es
pequeña, mediana, grande y muy grande.
b) Presupuesto estimado para este proyecto: menor que 10000, mayor o igual que 10000 y
menor que 50000, o mayor que 50000. Esto determina si el presupuesto es bajo, medio o alto.
c) Costo: para determinar el costo estimado el SE debe consultar por el número de
computadoras que serán conectadas, cuantas máquinas serán adicionadas en los próximos dos
años, número de pisos en el edificio y número de edificios. Para calcular el costo estimado se
procederá:
- Tarjetas de red: $600 * número de nodos
- Cableado: $2000 * número de pisos + 8000 * número de edificios
- Mantenimiento: 9% del costo neto
- Consultoría: $2000 + 6% del costo neto (sin considerar mantenimiento)
Luego se calcula un factor de costo dividiendo el costo estimado entre el presupuesto del
cliente. Si el factor de costo es menor que 1, se considera que el costo esta aceptable, si el
factor de costo es mayor que 1 y menor o igual que 1.5, el costo esta en rango, pero si el factor
de costo es mayor que 1.5. se considera que el costo es alto. La decisión se toma considerando
el nivel de presupuesto y el tamaño de la organización combinado con el nivel del costo. Por
ejemplo para pequeños presupuestos y pequeños tamaños de organización, aun sin interesar el
costo se debe asignar a un analista principiante, pero en el otro extremo, se debe seleccionar
entre un entrenado o experimentado.

NC = Nro. de computadoras, NA = Nro. de Computadoras adicionales en los próximos 2 años


NP = Nro. de Pisos NE = Nro. de Edificios
JARRAS
%Las jarras de 4L y 3L, para medir 2L
menu(R,N):- siguiente(e(0,0),[e(0,0)],R,[],N),
procesa(R),
procesa(N).
procesa([]):-!.
procesa([H|C]):- procesa(C),
writeln(H).

siguiente(e(2,_),V,V,N,N).
siguiente(e(_,2),V,V,N,N).
siguiente(e(X,Y),V,R,M,N):- accion(e(X,Y),e(Xs,Ys),Msj),
not(pertenece(e(Xs,Ys),V)),
siguiente(e(Xs,Ys),[e(Xs,Ys)|V],R,[Msj|M],N).
pertenece(X,[X|_]).
pertenece(X,[_|C]):- pertenece(X,C).
%llenar 4L
accion(e(X,Y),e(4,Y),'llenar 4L'):- X < 4.
%llenar 3L
accion(e(X,Y),e(X,3),'llenar 3L'):- Y < 3.
%vaciar 4L
accion(e(X,Y),e(0,Y),'vaciar 4L'):- X > 0.
%vaciar 3L
accion(e(X,Y),e(X,0),'vaciar 3L'):- Y > 0.
%vertir 4 a 3, 4 queda vacio
accion(e(X,Y),e(0,Z),'vertir 4 en 3'):- X > 0,
Y < 3,
Z is X + Y,
Z =<3.
%vertir 4 a 3, 3 queda lleno
accion(e(X,Y),e(Z,3),'vertir 4 en 3'):- X > 0,
Y < 3,
Z is X + Y - 3,
Z >=0.
%vertir 3 a 4, 3 queda vacio
accion(e(X,Y),e(Z,0),'vertir 3 en 4'):- X < 4,
Y > 0,
Z is X + Y,
Z =<4.
%vertir 3 a 4, 4 queda lleno
accion(e(X,Y),e(4,Z),'vertir 3 en 4'):- X < 4,
Y > 0,
Z is X + Y - 4,
Z >=0.
GRANJERO
%accion(estado(Gra,Zorro,Gall,Maiz),estado(1,Z,1,M)).

estadoMalo(estado(0,1,1,_)).
estadoMalo(estado(0,_,1,1)).
estadoMalo(estado(1,0,0,_)).
estadoMalo(estado(1,_,0,0)).

accion(estado(0,0,G,M), estado(1,1,G,M)).
accion(estado(1,1,G,M), estado(0,0,G,M)).
accion(estado(0,Z,0,M), estado(1,Z,1,M)).
accion(estado(1,Z,1,M), estado(0,Z,0,M)).
accion(estado(0,Z,G,0), estado(1,Z,G,1)).
accion(estado(1,Z,G,1), estado(0,Z,G,0)).
accion(estado(1,Z,G,M), estado(0,Z,G,M)).
accion(estado(0,Z,G,M), estado(1,Z,G,M)).

pertenece(X,[X|_]):-!.
pertenece(X,[_|L]):-pertenece(X,L).

camino(estado(1,1,1,1),V,V).
camino(Estado,Visitado,R):-accion(Estado,NuevoEstado), not(estadoMalo(NuevoEstado)),
not(pertenece(NuevoEstado,Visitado)),
camino(NuevoEstado,[NuevoEstado|Visitado],R).

solucion(L):-camino(estado(0,0,0,0),[estado(0,0,0,0)],L).
COMECOCOS
% ejecutar: solucion(L).
estadomalo(e(1,1)). estadomalo(e(1,4)). estadomalo(e(1,8)).
estadomalo(e(2,1)). estadomalo(e(6,4)). estadomalo(e(3,8)).
estadomalo(e(3,1)). estadomalo(e(8,4)). estadomalo(e(4,8)).
estadomalo(e(4,1)). estadomalo(e(11,4)). estadomalo(e(5,8)).
estadomalo(e(5,1)). estadomalo(e(11,8)).
estadomalo(e(6,1)). estadomalo(e(1,5)).
estadomalo(e(7,1)). estadomalo(e(2,5)). estadomalo(e(1,9)).
estadomalo(e(8,1)). estadomalo(e(3,5)). estadomalo(e(3,9)).
estadomalo(e(9,1)). estadomalo(e(4,5)). estadomalo(e(7,9)).
estadomalo(e(10,1)). estadomalo(e(8,5)). estadomalo(e(8,9)).
estadomalo(e(11,1)). estadomalo(e(9,5)). estadomalo(e(9,9)).
estadomalo(e(11,5)). estadomalo(e(11,9)).
estadomalo(e(3,2)).
estadomalo(e(11,2)). estadomalo(e(1,6)). estadomalo(e(1,10)).
estadomalo(e(2,6)). estadomalo(e(3,10)).
estadomalo(e(1,3)). estadomalo(e(4,6)). estadomalo(e(4,10)).
estadomalo(e(3,3)). estadomalo(e(5,6)). estadomalo(e(5,10)).
estadomalo(e(4,3)). estadomalo(e(6,6)). estadomalo(e(6,10)).
estadomalo(e(5,3)). estadomalo(e(7,6)). estadomalo(e(7,10)).
estadomalo(e(6,3)). estadomalo(e(8,6)). estadomalo(e(8,10)).
estadomalo(e(8,3)). estadomalo(e(11,6)). estadomalo(e(9,10)).
estadomalo(e(9,3)). estadomalo(e(10,10)).
estadomalo(e(11,3)). estadomalo(e(1,7)). estadomalo(e(11,10)).
estadomalo(e(7,7)).
estadomalo(e(8,7)).
estadomalo(e(10,7)).
estadomalo(e(11,7)).

%subir
accion(e(X,Y),e(X,Z)):- Z is Y+1,
Y<10.
%bajar
accion(e(X,Y),e(X,Z)):- Z is Y-1,
Y>1.
%atras
accion(e(X,Y),e(Z,Y)):- Z is X-1,
X>1.
%adelante
accion(e(X,Y),e(Z,Y)):- Z is X+1,
X<11.

pertenece(X,[X|_]).
pertenece(X,[_|C]):-pertenece(X,C).

siguiente(e(2,10),V,V).
siguiente(Estadoactual,V,L):-accion(Estadoactual,Estadonuevo),
not(estadomalo(Estadonuevo)),
not(pertenece(Estadonuevo,V)),
siguiente(Estadonuevo,[Estadonuevo|V],L).

solucion(L):-siguiente(e(1,2),[e(1,2)],L).

También podría gustarte