1. Inteligencia Artificial y Robótica
Ing. Paco Márquez
INTELIGENCIA ARTIFICIAL
Fundamentos de la Inteligencia Artificial
2. 1
Inteligencia Artificial y Robótica
Integrantes:
Marcos Avalos Christian
Mendoza Valdez Jorge
Torres Alarcón Stewart
Valdez Huaraca Abner
Huamaní Ojeda Helton
Ingeniería de Sistemas UNICA 2013-II
3. 2
Inteligencia Artificial y Robótica
INDICE
INTRODUCCION ............................................................................................................................. 4
1.
INTELIGENCIA ARTIFICIAL ...................................................................................................... 5
1.1.
1.2.
Importancia de la Inteligencia Artificial ........................................................................ 5
1.3.
Características de la Inteligencia Artificial .................................................................... 6
1.4.
2.
Objetivos de la Inteligencia Artificial............................................................................. 5
Categorías de la Inteligencia Artificial ........................................................................... 6
APLICACIONES DE INTELIGENCIA ARTIFICIAL ........................................................................ 8
2.1.
Prueba de Turing ........................................................................................................... 8
2.2.
Agentes.......................................................................................................................... 9
2.3. Búsqueda Heurística......................................................................................................... 11
2.3.1. Algoritmo *A.- ........................................................................................................... 12
2.3.2 Algoritmo MINIMAX.- ................................................................................................. 12
2.3.3 Poda.- ......................................................................................................................... 12
2.3.4 Algoritmo MTD-f.- ..........................................................Error! Bookmark not defined.
2.4. Visión Artificial ................................................................................................................. 13
2.5. Redes Neuronales ............................................................................................................ 13
2.6. Sistemas Expertos ............................................................................................................ 13
2.7. Robótica ........................................................................................................................... 14
2.7.1. Clases:........................................................................................................................ 14
2.7.2. Hardware Robótico: .................................................................................................. 14
2.7.3. Aplicaciones:.............................................................................................................. 15
2.8. Comunicación ................................................................................................................... 16
2.8.1. Tipos de Lenguaje: ..................................................................................................... 17
2.8.2. Etapas: ....................................................................................................................... 17
2.8.3. Aplicaciones:.............................................................................................................. 17
3.
OTRAS AREAS DE APLICACIONES DE INTELIGENCIA ARTIFICIAL.......................................... 17
3.1.
Procesamiento de lenguaje Natural ............................................................................ 18
3.2.
Percepción y Reconocimiento de Patrones................................................................. 18
3.3.
Auto Aprendizaje ......................................................................................................... 18
3.4.
Lógica........................................................................................................................... 18
3.5.
Lógica difusa ................................................................................................................ 18
3.6.
Algoritmos Genéticos .................................................................................................. 18
3.7.
Juegos .......................................................................................................................... 19
Ingeniería de Sistemas UNICA 2013-II
4. 3
Inteligencia Artificial y Robótica
4.
INTELIGENCIA ARTIFICIAL CONVENCIONAL......................................................................... 19
5.
INTELIGENCIA ARTIFICIAL COMPUTACIONAL...................................................................... 19
6.
INTELIGENCIA ARTIFICIAL HUMANA ................................................................................... 19
7.
ELEMENTOS DE LA INTELIGENCIA ARTIFICIAL ..................................................................... 20
7.1.
7.2.
8.
Estrategias de comportamiento inteligente: .............................................................. 20
Saber: .......................................................................................................................... 20
TECNICAS DE BUSQUEDA DE INTELIGENCIA ARTIFICIAL ..................................................... 20
8.1.
Arboles de Búsqueda................................................................................................... 20
8.2.
Técnicas Look-Back...................................................................................................... 21
8.2.1.
Backtracking Cronológico .................................................................................... 21
8.2.2.
Backtracking Guiado por el Grafo de Restricciones ............................................ 22
8.3.
9.
Técnicas Look-Ahead ................................................................................................... 22
SISTEMA BASADO EN CONOCIMIENTO ............................................................................... 23
CONCLUSION ............................................................................................................................... 26
BIBLIOGRAFIA .............................................................................................................................. 27
ILUSTRACIONES
Figura: Prueba Global de Turing .................................................................................................... 9
Figura: Diseño de un agente a base de inferencia ...................................................................... 10
Figura. Estructura Look-Back ....................................................................................................... 21
Figura. Backtracking Cronológico ................................................................................................ 22
Figura. Backtracking Guiado ........................................................................................................ 22
Figura. Técnica Look-Ahead ........................................................................................................ 23
Ingeniería de Sistemas UNICA 2013-II
5. 4
Inteligencia Artificial y Robótica
INTRODUCCION
La Inteligencia Artificial (IA) estudia las estrategias y algoritmos que permiten a los
computadores pensar “igual” que las personas. Esta disciplina puede ser aplicada en distintas
áreas del conocimiento: Medicina, Control automático, Análisis de datos, etc. Es por ello que,
el propósito de esta investigación es aprender las técnicas adecuadas para enseñar al
computador a pensar y conocer su aplicabilidad en el ámbito informático.
Fundamentos de la Inteligencia Artificial, donde se conocerán aspectos generales de esta
disciplina, Agentes inteligentes, Resolución de problemas mediante búsqueda y Estrategias de
búsqueda informada y de exploración. Seleccionamos estos temas ya que creemos que son la
base fundamental de “cómo piensa un computador”.
La IA es una nueva generación de tecnología informática, caracterizada no sólo por
su arquitectura (hardware), sino también por sus capacidades. El énfasis de generaciones
previas fue en las computaciones numéricas para aplicaciones científicas o de negocios. La
nueva generación de tecnología informática incluye además la manipulación simbólica, con
el objetivo de emular el comportamiento inteligente; y, la computación en paralelo, para tratar
de conseguir resultados prácticamente en tiempo real. La capacidad predominante de la nueva
generación, también conocida como la Quinta Generación, es la habilidad de emular (y tal vez
en algunos casos superar) ciertas funciones inteligentes del ser humano.
Ingeniería de Sistemas UNICA 2013-II
6. 5
Inteligencia Artificial y Robótica
1. INTELIGENCIA ARTIFICIAL
Inteligencia artificial (IA) es la rama de las Ciencias de la Computación dedicada al desarrollo de
agentes racionales no vivos.
La IA como un conjunto de habilidades desarrolladas por el hombre para recibir información,
analizarla, comprenderla, almacenarla y saberla aplicar en el futuro para la resolución de
problemas.
La IA es una ciencia que trata de la comprensión de la inteligencia y del diseño de máquinas
inteligentes, es decir, el estudio y la simulación de las actividades intelectuales del hombre
(manipulación, razonamiento, percepción, aprendizaje, creación).
1.1.
Objetivos de la Inteligencia Artificial
Desarrollar una máquina inteligente capaz de aprender a través de la experiencia,
exhibir verdadera creatividad, tomar sus propias decisiones e interactuar con el medio
que la rodee.
Elevar el Coeficiente Intelectual de las máquinas (machine-IQ).
Desarrollar las capacidades de la computadora más allá de su uso tradicional actual.
1.2.
Importancia de la Inteligencia Artificial
Conforme el mundo se vuelve más complejo, debemos usar nuestros recursos materiales y
humanos con más eficiencia, y para lograrlo, se necesita la ayuda que nos ofrecen los
computadores.
Existe la falsa impresión de que uno de los objetivo del IA es sustituir a los trabajadores
humanos y ahorrar dinero. Pero en el mundo de los negocios, la mayoría de personas está más
entusiasmada ante las nuevas oportunidades que ante el abatimiento de costos. Además, la
tarea de reemplazar totalmente a un trabajador humano abarca de lo difícil a lo imposible, ya
que no se sabe cómo dotar a los sistemas de IA de toda esa capacidad de percibir, razonar y
actuar que tienen las personas. Sin embargo, debido a que los humanos y los sistemas
inteligentes tienen habilidades que se complementan, podrían apoyarse y ejecutar acciones
conjuntas.
Ejemplo:
En la agricultura, controlar plagas y manejar cultivos en forma más eficiente.
En las fábricas, realizar montajes peligrosos y actividades tediosas (labores de
inspección y mantenimiento).
En la medicina, ayudar a los médicos a hacer diagnósticos, supervisar la condición de
los pacientes, administrar tratamientos y preparar estudios estadísticos.
En el trabajo doméstico, brindar asesoría acerca de dietas, compras, supervisión y
gestión de consumo energético y seguridad del hogar.
En las escuelas, apoyar la formación de los estudiantes, especialmente en aquellas
materias consideradas complejas.
Ayudar a los expertos a resolver difíciles problemas de análisis o a diseñar nuevos
dispositivos.
Ingeniería de Sistemas UNICA 2013-II
7. 6
Inteligencia Artificial y Robótica
Aprender de los ejemplos para explorar bases de datos en busca de regularidades
explotables.
Proporcionar respuestas a preguntas en lenguaje natural usando datos estructurados y
texto libre.
1.3.
1.4.
Características de la Inteligencia Artificial
Disponibilidad casi completa
Conservación del conocimiento
Capacidad de resolver problemas disponiendo de información incompleta
Capacidad de explicar los resultados y la forma de obtenerlos
Categorías de la Inteligencia Artificial
Sistemas que piensan como humanos:
Estos sistemas tratan de emular el pensamiento humano; por ejemplo las redes
neuronales artificiales. La automatización de actividades que vinculamos con procesos
de pensamiento humano, actividades como la Toma de decisiones, resolución de
problemas, aprendizaje.
Figura 1: Sistemas que piensan como humanos
A)
B)
Para poder decir que un programa piensa como los humanos. Es necesario
contar con un mecanismo para determinar cómo piensan los humanos. Es
necesario penetrar en el funcionamiento de las mentes humanas.
Hay dos formas de hacerlo: mediante introspección(intentando atrapar
nuestros propios pensamientos conforme van apareciendo) y mediante
experimentos psicológicos.
Sistemas que actúan como humanos:
Estos sistemas tratan de actuar como humanos; es decir, imitan el comportamiento
humano; por ejemplo la robótica. El estudio de cómo lograr que los computadores
realicen tareas que, por el momento, los humanos hacen mejor.
El arte de desarrollar maquinas con capacidad para realizar funciones que cuando son
realizadas por personas requieren de inteligencia”. (kurzweil, 1990).
Prueba de Turing.
S.E. para justificar un diagnóstico.
Máquina de dialogo con los humanos.
Ingeniería de Sistemas UNICA 2013-II
8. 7
Inteligencia Artificial y Robótica
Sistemas que piensan racionalmente:
Es decir, con lógica (idealmente), tratan de imitar o emular el pensamiento lógico
racional del ser humano; por ejemplo los sistemas expertos. El estudio de
los cálculos que hacen posible percibir, razonar y actuar.
“El estudio de las facultades mentales a través del uso de modelos computacionales".
(Charniak y McDermott, 1985).
“El estudio de los cálculos que hacen posible percibir, razonar y actuar”.
(Winston, 1992).
Sistemas que actúan racionalmente (idealmente):
Tratan de emular de forma racional el comportamiento humano; por ejemplo
los agentes inteligentes .Está relacionado con conductas inteligentes en artefactos.
“La inteligencia computacional es el estudio del diseño de agentes inteligentes".
(Poole, 1998).
“La inteligencia artificial está relacionada con conductas inteligentes en las maquinas".
(Nilsson, 1998).
Figura 2: Agente Inteligente
Un agente racional es aquel que actúa con la intención de alcanzar el mejor
resultado o, cuando hay incertidumbre el mejor resultado esperado.
Ingeniería de Sistemas UNICA 2013-II
9. 8
Inteligencia Artificial y Robótica
2. APLICACIONES DE INTELIGENCIA ARTIFICIAL
Prueba de Turing
Agentes
Búsqueda Heurística
Visión Artificial
Redes Neuronales
Sistemas Expertos
Robótica
La Comunicación
2.1.
Prueba de Turing
En los comienzos de la I.A se daban grandes listas de lo que un sistema de I.A debía
cumplir para serlo. Alan Turing, propuso un Test en 1950, para acabar con estas listas tan
largas e inútiles, ya que lo único que buscaban era imitar al ser humano y no desarrollar una
I.A científica. Turing basó su prueba en una entrevista entre un humano con un computador y
otro humano ocultos, de manera que ninguno se pueda ver. Si el entrevistador no puede
distinguir las respuestas dadas por el hombre y la máquina, se puede hablar de un Sistema
Inteligente. Esta prueba merece ser reconocida, ya que no ha perdido validez hasta hoy. Para
poder superar la Prueba de Turing original, el computador debe contar con:
Procesamiento del Lenguaje Natural que permita comunicarse perfectamente en
inglés.
Representación del Conocimiento para almacenar lo que se conoce o siente.
Razonamiento Automático, para usar la información almacenada para responder a
preguntas o extraer conclusiones.
Aprendizaje Automático, para adaptarse a muchas circunstancias y para detallar y
extrapolar patrones.
Ingeniería de Sistemas UNICA 2013-II
10. 9
Inteligencia Artificial y Robótica
Figura: Prueba Global de Turing
Existe una variante de la Prueba de Turing: La Prueba Global de Turing, esta además de exigir
lo anterior, incluye una señal de video que permite evaluar la capacidad de visión del evaluado
y además le da la capacidad de pasar objetos a través de una pequeña ventana. Para que el
computador pase esta variante, se requiere además de lo anterior:
Visión Computacional, para percibir objetos.
Robótica, para manipular y mover objetos.
Como se dijo anteriormente esta Prueba mantiene su vigencia hasta hoy (56 años), sino que
además revolucionó la I.A ya que propuso estudiar la Inteligencia en lugar de emularla. Bajo un
concepto similar, los hermanos Wright, crearon la aviación: Al comprender los principios
aerodinámicos y al dejar de imitar a los pájaros.
2.2.
Agentes
Un Agente es algo que razona (Viene del latín agere, hacer). Sin embargo los agentes
informáticos deben tener algo que los diferencie de los programas comunes. Entre ellos está
tener controles autónomos, percibir su entorno, que persistan por un periodo de tiempo
prolongado, que se adapten a los cambios y que sean capaces de alcanzar objetivos distintos.
Tipos:
Agente Racional: Es el que actúa con la intención de obtener el mejor resultado, o si
hay incertidumbre, el más apropiado. Estos agentes se basan en Inferencias, aunque
existen situaciones en las que no se puede hacer nada correcto, pero se debe tomar
una decisión; también poseen Actos Reflejos, ya que son mucho más eficientes que
una larga inferencia en algunos casos. Para pasar la Prueba de Turing, los sistemas
deben tener estas características. Estudiar la I.A en base a Agentes Racionales, es
beneficioso ya que nos hace diseñar al agente en base a inferencias, una forma
correcta según las leyes del pensamiento. Sin embargo, por cuestiones de espacio es
imposible diseñar una personalidad perfecta. En la práctica se usa una racionalidad
l
i
m
i
t
a
d
a
,
p
o
r
r
a
zones de tiempo y espacio.
Ingeniería de Sistemas UNICA 2013-II
11. 10
Inteligencia Artificial y Robótica
Figura: Diseño de un agente a base de inferencia
Agente Inteligente: Son capaces de percibir un medio ambiente, usando sensores y
actuar usando actuadores, los sensores pueden ser de un agente robot: Teclado, red,
detectores de luz, etc. Y los activadores pueden ser una pantalla o la red. Se dice que
una agente tiene percepción si puede recibir múltiples entradas en cualquier instante.
En general este agente tomará decisiones de acuerdo a todas las entradas que recibió.
A esta secuencia se le ordena en una tabla, no obstante por lo infinita o grande que
puede llegar a ser, se limitan algunas entradas. El Agente es manejado por el programa
del
Agente, se debe diferenciar entre la función que es una descripción abstracta en el
programa con el propio programa, que es la implementación real.
Ingeniería de Sistemas UNICA 2013-II
12. 11
Inteligencia Artificial y Robótica
Figura: Agentes Inteligentes
Agentes de Estímulo-Respuesta: Estos agentes solo reaccionan de acuerdo a los
estímulos que reciben del mundo exterior donde operan, esta es la forma más sencilla
de I.A.
Tomemos por ejemplo el caso de un robot que puede moverse en una superficie cuadricular,
es capaz de percibir si las celdas están ocupadas o no y ser capaz de moverse a las
desocupadas. El robot entonces dispondrá de 8 entradas que llamaremos S1, S2, S3, S4, S5, S6,
S7, S8. Y que están numeradas en sentido horario. Además tiene 4 movimientos posibles:
Norte: Se mueve
una celda arriba.
Sur: Se
una celda abajo.
mueve
Este: Se mueve
una celda a la derecha.
Oeste: Se mueve
una celda a la izquierda.
Características:
- Percepción: Según el
ejemplo anterior hay 8
variables para ubicarnos,
por tanto existen 28=256
combinaciones de valores posibles. Algunos pueden ser descartados, ya que no existen pasillos
estrechos. Podemos elegir 4 características llamadas X1, X2, X3, X4.
- Acción: De las características definidas, lo siguiente que debemos hacer es darles alguna
definición para que puedan cumplir su cometido.
2.3. Búsqueda Heurística
Se llama Búsqueda Heurística debido a que usa conocimientos específicos del problema. Con
esta búsqueda podemos encontrar soluciones más eficientemente en el tiempo más rápido
posible sin repetir ninguna ciudad. No obstante existe un tope de 30 ciudades, ya que aún a 1
µser por solución, se tardaría 1020 años en resolver el problema. (El universo solo tiene 1,6 x
1010 años). Una solución común es de 9 ciudades, que nos da una combinación de 9!=362 880
viajes posibles. Como se ve, la Búsqueda Heurística nos da la ventaja de rapidez en estos casos.
A la aproximación de la Búsqueda Heurística, la llamaremos: Búsqueda Primero el Mejor.
Existen algunas variantes:
Ingeniería de Sistemas UNICA 2013-II
13. 12
Inteligencia Artificial y Robótica
2.3.1. Algoritmo *A.-Es la forma de búsqueda Primero la Mejor más conocida, sirve
para el pathfinding (Búsqueda de Caminos) y es muy usada en juegos. Un ejemplo es el famoso
juego Pacman: Los fantasmas que persiguen a Pacman buscan el camino más corto, en lugar
de aparecer en forma aleatoria en el Mapa del Juego, otro ejemplo es el Age of Empires, un
juego de conquista de civilizaciones, los enemigos salvan obstáculos para llegar a la ciudad del
adversario. El Algoritmo *A, no desarrolla un camino por interacción, sino que desarrolla varios
caminos y elige los más prometedores. (Para ver un ejemplo del Algoritmo *A.
2.3.2 Algoritmo MINIMAX.-Se poseen 2 jugadores: MAX y MIN, primero jugará
MAX y así seguirá el flujo hasta acabar el juego. Existe un árbol de juegos que los programas
utilizan para calcular los Movimientos Legales (Permitidos). El valor MINIMAX será un valor
que determine el estado final del juego (En el ajedrez: -1, 0, 1; que son triunfo, derrota o
empate). En algunos juegos este valor MINIMAX puede ser muy alto (Como en el Back gamón,
se estima algo de -192 a 192 valores).
Incluso el TicTacToe (3 en Raya), es complejo para armar el árbol de juegos. A los niveles del
árbol se les llama capas.
Para determinar la estrategia óptima a seguir se usan valores MINIMAX. MAX adoptará
el valor máximo y MIN el mínimo. La decisión MINIMAX supone que los 2 jugadores son
óptimos, si uno es un novato será fácilmente derrotado por esta decisión.
El Algoritmo MINIMAX es la forma computacional en la que se calcula el valor
MINIMAX de cada estado de sucesos. Lo interesante del Algoritmo MINIMAX es que no calcula
todo el árbol de juegos, sino que calcula solo un horizonte de k niveles. Un cálculo detallado
del árbol de juegos perdería tiempo, ya que como ejemplo, en el ajedrez se calculan algo de
35100 movimientos totales. El objetivo de MAX aquí es ganar a MIN tomando alguna decisión
sobre la mejor jugada que se puede hacer. El Algoritmo MINIMAX no se usa como tal en la
Industria de Juegos, ya que es en algunas ocasiones lento, en vez de este se usan versiones
optimizadas que veremos a continuación.
2.3.3 Poda.-El resultado del Algoritmo MINIMAX es el valor MINIMAX que nos
permite tomar la decisión más acertada para el horizonte de búsqueda fijado, no obstante hay
ocasiones en el que la ramificación del árbol de juegos es muy alta. (En ajedrez se calcula algo
de 35100 o 10154 movimientos). Sería un derroche tratar de probarlos todos, esta es la razón
por la cual el Algoritmo MINIMAX no se usa como tal en la Industria de Juegos.
Afortunadamente se puede simplificar el proceso, evitando algunos nodos. Esto se basa en que
al momento de explorar se determina que el nodo no va a cambiar el valor MINIMAX, es
obviado, ya que no nos va a servir de mucho. Estos nodos quedan “Podados”, ahorrando así
tiempo de proceso en los programas.
El Algoritmo que implementa la poda se llama Algoritmo, y se basa en ajustar los límites
llamados: límite -" y límite +"; para el nodo raíz estos son de -" y "+; ya que el valor MINIMAX
estará entre esos 2 límites. Estos valores se propagan hacia abajo y se actualizan. Los nodos
MAX actualizan su valor si v> y los nodos MIN actualizan su valor si v<. La situación de Poda se
detecta si un nodo satisface a " y ello implica obviar la exploración del sub-árbol siguiente y
devolver como si se tratara de un nodo MIN. Si no existiera Poda (Es decir no se satisface la
expresión"), el algoritmo se comportará como un Algoritmo MINIMAX normal.
Ingeniería de Sistemas UNICA 2013-II
14. 13
Inteligencia Artificial y Robótica
2.4. Visión Artificial
Hasta ahora los agentes usaban formas sensoriales demasiado limitadas. La Visión por
Computador, es uno de los campos más extensos de la I.A ya que influyen muchos aspectos. La
Visión para los humanos no es ningún problema, pero para las máquinas es un campo muy
complicado. Influyen Texturas, Luminosidad, Sombras, Objetos Complejos, etc. El primer paso
es captar la imagen mediante una cámara de TV. Las imágenes a color tienen una matriz I(x,
y,t); donde(x, y) nos indican la ubicación de un punto en la matriz de colores y t, nos indica el
tiempo.
Este proceso obtiene una imagen invertida, pero simplemente rotarla no nos dará la
visión del terreno. Influyen muchos elementos haciendo a este proceso complicado.
En la actualidad, algunos Robots emiten una señal y la reciben generando bajo esto
una especie de espacio, esta forma de “ver” es muy rústica, pero se sigue usando ya que
desafortunadamente es imposible lograr una reconstrucción de la imagen capturada. Y aunque
así fuera, las computadoras no podrían distinguir un objeto de juguete y uno real. Lo peor es
que los modelos que existen tratan de resolver esto de forma muy complicada. Al proceso de
captar imágenes podemos dividirlo en: Bajo Nivel, Nivel Medio y Alto Nivel.
El primero se encarga de suavizar y quitar ruido a la imagen y de extraer características
de la imagen bidimensional, en particular de las aristas, el segundo se encarga de agrupar estas
aristas para formar imágenes bidimensionales y la tercera de usar estas imágenes para
reconocer objetos del mundo real. Generalmente las imágenes captadas por los robots son
suficientes para sus propósitos.
2.5. Redes Neuronales
En biología, las neuronas tienen un cuerpo circular y una serie de ramificaciones: El axón y las
dendritas. El axón transporta la señal de salida otra célula y las dendritas permiten que la
información llegue a la neurona. Las conexiones intermedias se llaman Sinapsis, si la neurona
pasa el umbral impuesto por la sinapsis, se dispara, caso contrario no hace nada. Esto la
asemeja a dispositivos digitales, siendo esta la base de la Redes Neuronales, que buscan imitar
a la neurona en términos computacionales. Se hace esto ya que se considera que la neurona es
la base de la capacidad de aprendizaje. No obstante la emulación de la neurona no es perfecta,
a la fecha se investigan algunas cualidades importantes como la Computación Distribuida para
tolerar Ruido (Distorsión) en la entrada y para el aprendizaje. Cada conexión Neuronal
computacional posee un peso numérico que limita la fuerza con la que el impulso sale de la
neurona, de no ser así la información crecería demasiado con resultados imprevisibles. Las
Redes Neuronales reconocen solo dos estados: 0 (No hay impulso) y 1 (Si lo hay), esto las
asemeja a las compuertas lógicas de cualquier tipo: AND, XOR, OR, etc.
2.6. Sistemas Expertos
Son programas de computación inteligentes que usan conocimientos y procesos de inferencia,
para resolver problemas sumamente difíciles para un humano ya que requerirían de mucha
experiencia. En sí un Sistema Experto; emula la capacidad de experiencia de un ser humano
para tomar decisiones. Aunque los Sistemas Expertos se centran el domino del problema, no
tienen conocimientos más allá de donde fueron programados, esto es, no relaciona ningún
otro concepto, a menos que este específicamente indicado. A este conocimiento se le llama
Dominio del Conocimiento y como ya se apuntó es muy cerrado. Los Sistemas Expertos se
Ingeniería de Sistemas UNICA 2013-II
15. 14
Inteligencia Artificial y Robótica
basan en las Redes Neuronales. Sus partes son: La Base del Conocimiento, el Motor de
Inferencia, el Subsistema de Explicación y la Interfaz.
La Base del Conocimiento: Aquí están almacenados todos los datos que el Sistema
Experto tiene para tomar decisiones.
El Motor de Inferencias: Contiene todos los procesos que manipulan la Base del
Conocimiento, para deducir la información pedida por el usuario. (Por Ejemplo,
resolución, encadenamiento atrás hacia delante, etc.
El Subsistema de Explicación analiza la estructura del razonamiento y da una
explicación al usuario.
La Interfaz, que es el puente de comunicación entre el sistema y el usuario.
2.7. Robótica
Es uno de los campos de aplicación más apasionantes de la I.A; los Robots son agentes físicos
que realizan tareas mediante la manipulación física del mundo; por ser agentes y realizar su
trabajo en forma autónoma, se excluyen a los robots que son controlados por un operario
humano, como son los que hacen tareas de rutina, ya que la I.A busca robots con sistemas
autónomos.
La palabra Robot, proviene de la voz eslovaca Robota, que significa Trabajador Forzado. En
realidad esta rama comenzó como una historia de Ciencia Ficción, pero interesó mucho a los
desarrolladores de I.A. Los primeros Robots, solo podían seguir una línea blanca pintada en el
suelo. En la actualidad este campo ha avanzado tremendamente.
2.7.1. Clases:
Robots Manipuladores: Son brazos robóticos que están fijos en un lugar de trabajo y
se usan generalmente para ensamblar piezas, aunque también hay brazos usados para
ayudar en hospitales o incluso brazos que pintan lienzos con resultados muy originales.
Robots Móviles: Se desplazan por el medio usando ruedas, piernas u otros. Hay 3
variantes: ULV (Vehículo Terrestre sin Tripulación, en inglés), son robots que permiten
un desplazamiento autónomo por autopistas. UAV (Vehículo Aéreo sin Tripulación, en
inglés), son robots que permiten operaciones de fumigación autónoma, así como de
vigilancia o militares. AUV (Vehículo Submarino sin Tripulación), son robots que
permiten exploraciones marinas autónomas o incluso paseos planetarios.
Robots Humanoides: Son un tipo de Robots que se asemejan al torso humano. Esta
clase usa sus efectores mejor que los otros tipos, pero son mucho más complejas que
los otros robots.
2.7.2. Hardware Robótico:
Sensores: Hay 2 clases, los Sensores Pasivos, que solo recogen información del medio,
su desventaja es que su margen de error es alto, y los Sensores Activos, que emiten
energía al medio y la reciben para usarla para las mediciones. Su única desventaja es
que a más se implementen en un robot, mayor es el riesgo de interferencia. Su ventaja
es que su margen de error es mínimo. Existen algunos que merecen ser mencionados:
Escáneres de Rango: Miden la distancia.
Sistemas Táctiles: Sensores sensibles al tacto.
Ingeniería de Sistemas UNICA 2013-II
16. 15
Inteligencia Artificial y Robótica
GPS: Calculan la posición absoluta del robot en la tierra.
Sensores de Imagen: Permiten obtener imágenes y procesarlas.
Sensores Perceptores: Informan al robot de su propio estado.
Decodificadores de Ejes: Permiten medir las revoluciones de los motores para
usarlas en mediciones, en edometría. Este proceso es muy propenso a error
debido a desgaste físico.
Sensores Inerciales: Una alternativa al decodificador de ejes, pero no
soluciona mucho.
Sensores de Fuerza y Tensión: Le indican al robot con cuanta fuerza está
cogiendo algo y con cuanta fuerza lo está girando.
Efectores: Existen varias clases:
o
Articuladores de Revolución: Generan movimiento rotacional.
o
Articulación Prismática: Genera desplazamiento lateral.
Las personas contamos con los 6 grados de libertad (x, y, z, que nos localizan en el espacio y
desvió, balanceo y cabeceo: Yaw, Roll y Pitch). Los robots tienen todos o algunos de estos
grados de libertad.
Los robots no holomínicos son aquellos que tienen más grados de libertad efectivos que
controlables, y los holomínicos son los que tienen el mismo número, sin embargo los
holomínicos aunque son fáciles de manejar, son más complejos de desarrollar.
Los Robots de Impulsión poseen 2 ruedas; como un tanque y cada rueda se mueve
independientemente de la otra.
La Conducción Sincronizada se da cuando pueden girar y moverse en su propio eje.
Un Robot es dinámicamente estable si puede mantenerse en pie mientras camina.
Un Robot es estáticamente estable, si el centro de gravedad está encima del polígono
que une a sus piernas.
No obstante, no solo las partes hacen funcionar al Robot, se necesita una fuente de energía
para hacer funcionar sus efectores, la más popular es el motor electrónico, aunque también
hay modelos hidráulicos y neumáticos.
2.7.3. Aplicaciones:
Industria y Agricultura: Los Robots han sido usados en entornos peligrosos para el
hombre y en muchas ocasiones son más rentables que trabajadores humanos. En la
Agricultura, los Robots, están siendo usados para sustituir las grandes máquinas
usadas para excavar, cosechar, etc. Por ahora son prototipos, pero pronto remplazarán
a los humanos en estas tareas.
Transporte: Los robots han servido mucho aquí: Desde helicópteros autónomos hasta
sillas de ruedas automáticas, e incluso portadores de carga que superan a humanos
especializados. Incluso algunos ayudan transportando cosas en los hospitales, como el
Robot Helpmate.
Ingeniería de Sistemas UNICA 2013-II
17. 16
Inteligencia Artificial y Robótica
Entornos Peligrosos: Los Robots ayudaron en la limpieza de lugares de accidentes
nucleares como Chernóbil, Three Mile Island. Incluso estuvieron en la búsqueda y
limpieza durante el colapso del World Trade Center, ingresando a entornos muy
peligrosos, además hay otros que desactivan bombas o limpian campos minados.
Exploración: Los Robots han explorado lugares inaccesibles para la gente, como Marte
y los Volcanes. Incluso existen los Drones, vehículos aéreos autónomos usados para
fines militares.
Salud: Los Robots son usados para ayudar en operaciones de alto riesgo, también
sirven de ayuda a los ancianos como andadores robóticos o juguetes que recuerdan
cuando tomar la medicación.
Servicios Personales: Algunos robots pueden prestar servicio en el hogar, como aspirar
el hogar, cortar el césped e incluso remplazar los quioscos por quioscos robóticos.
Entretenimiento: Los robots han empezado a conquistar la industria de los juguetes,
por ejemplo el robot-perro Sony AIBO; está siendo usado para estudios de I.A en todo
el mundo, siendo a la vez un juguete.
En 1995 se inició el torneo de fútbol de robots autónomos Robocup, cuyo
objetivo es lograr que robots autónomos ganen un partido de fútbol. Esto está
provocando una investigación más eficiente de la I.A, como a su vez darle algo de
animación al campo.
Aumento Humano: Se han creado máquinas que puede transportar gente, además se
investiga cómo aumentar la fuerza de las personas usando partes robóticas. Hay
además proyectos de Robots que se asemejan al ser humano, aunque en forma muy
superficial. Estos Robot están en venta por algunas compañías en Japón.
2.8. Comunicación
Es el medio principal por el que las personas se comunican con los sistemas computacionales
más inteligentes, sirve para:
Informar: Para no repetir los mismos errores.
Preguntar: Para recabar información sobre el resto del mundo.
Compartir experiencias.
Los sistemas computacionales presentan algunos problemas al intentar estudiar el lenguaje:
Descripciones Incompletas: Muchas cosas deben deducirse.
Ambigüedad de Significado: La misma frase en contextos distintos significa cosas
diferentes.
No Completitud: Los lenguajes naturales tienen siempre nuevas palabras.
Ambigüedad de Expresión: Un mismo significado puede ser dicho de muchas formas.
Dependencia de Idioma: El procesamiento del lenguaje natural será distinto en otro
idioma.
Ingeniería de Sistemas UNICA 2013-II
18. 17
Inteligencia Artificial y Robótica
Hay que pensar porqué un agente necesita hablar, cuando puede hacer una acción.
Comunicarse le da las siguientes ventajas:
Aceptación de Peticiones
Solicitar la realización de acciones
Prometer o comprometerse a un plan.
2.8.1. Tipos de Lenguaje:
Lenguajes Formales: Son lenguajes en los que están muy bien definidos lo que se
puede y no puede decir. Sus definiciones son muy estrictas, a estos lenguajes
pertenecen los Lenguajes de Programación (ASM, C++, Basic, Java, etc).
Lenguajes Naturales: Son lenguajes que, al contrario de los formales tienen una
gramática más flexible y se pueden añadir nuevas palabras. A estos lenguajes
pertenecen los lenguajes del mundo (inglés, danés, español, etc).
2.8.2. Etapas:
La comunicación tiene varias etapas que es preciso conocer. Supongamos que el hablante A
desea comunicarle algo a B; las fases que deberían seguir serían:
Intención: Por algún motivo A, desea transmitirle información a B.
Generación: A; planifica como transmitirle su mensaje B.
Síntesis: A; pone en práctica su plan para transmitir su mensaje a B. Puede transmitir
el mensaje por medio de la voz, papel, etc.
Percepción: B recibe el mensaje de A y lo decodifica de acuerdo a la forma en la que
fue transmitido.
Análisis: B inferirá que el mensaje recibido por A, tiene algún significado. Esto puede
causar algunos problemas ya que algunas palabras se interpretan en varios sentidos y
esto da lugar a la ambigüedad: No saber el significado de ciertas palabras.
2.8.3. Aplicaciones:
Basadas en Texto: Encontrar documentos relacionados con ciertos temas en una base
de datos documental, extraer información de mensajes y artículos, traducir texto entre
idiomas y resumir texto.
Basadas en Diálogo: Síntesis del control en un lenguaje natural, donde la salida puede
ser un comando a un sistema operativo, un robot, etc.; sistema automático de
mensajes, compras por teléfono, sistema de acceso a una base de datos en lenguaje
natural y sistemas tutores.
3. OTRAS AREAS DE APLICACIONES DE INTELIGENCIA
ARTIFICIAL
Las definiciones anteriores implican que las máquinas para ser consideradas inteligentes deben
exhibir ciertas habilidades, suficientemente complejas como para ser tratadas como áreas
Ingeniería de Sistemas UNICA 2013-II
19. 18
Inteligencia Artificial y Robótica
independientes. La forma de abordaje de cada una de estas áreas suele ser tan disímil, que es
difícil reconocerles un origen común.
Procesamiento del Lenguaje Natural
Algoritmos Genéticos
Lógica difusa
Lógica
Percepción y reconocimiento de patrones
Auto aprendizaje
Juegos
3.1.
Procesamiento de lenguaje Natural
Para muchos investigadores, es el más difícil de alcanzar de todos los objetivos de la
Inteligencia Artificial: Permitir a la computadora comprender el lenguaje humano
directamente; sin el complicado conjunto de lenguajes intermedios.
3.2.
Percepción y Reconocimiento de Patrones
Engloba un conjunto de técnicas de la matemática aplicada y de la informática, ha
despertado un gran interés en las últimas décadas por sus numerosas aplicaciones, entre las
que se pueden citar las siguientes: ayuda al diagnóstico médico, análisis automático de
señales, teledetección, inspección automática de productos industriales, sistemas de vigilancia
automática, procesamiento de documentos, búsqueda automática de información digitalizada
etc.
3.3.
Auto Aprendizaje
Esta área de la Inteligencia Artificial trata de la realización de programas que aprendan de
sus errores, de observaciones o por encargo. En este sentido, aprender simplemente significa
hacer a una computadora capaz de beneficiarse de la experiencia.
3.4.
Lógica
Uno de los productos de la I.A. de gran importancia práctica actual son aquellos
programas que se pueden usar para estudiar la corrección lógica de argumentos mediante la
aplicación de reglas estándar de lógica. Esto incluye demostraciones matemáticas, lógica
formal y lógica filosófica.
3.5.
Lógica difusa
Esta área de la Inteligencia Artificial estudia los problemas de hacer que una computadora
sea capaz de tomar decisiones (“pensar”) usando conocimiento incompleto o probabilístico.
3.6.
Algoritmos Genéticos
Los Algoritmos Genéticos son una técnica computacional inspirada en modelos biológicos
que han sido utilizados para realizar búsquedas eficientes en espacios de soluciones altamente
complejos y grandes. Los Algoritmos Genéticos son métodos adaptivos que pueden ser
utilizados para implementar búsquedas y problemas de optimización. Los Algoritmos
Genéticos están basados en los procesos genéticos de los organismos biológicos, codificando
una posible solución a un problema en un “cromosoma” compuesto por una cadena de bits o
caracteres.
Ingeniería de Sistemas UNICA 2013-II
20. 19
Inteligencia Artificial y Robótica
3.7.
Juegos
Una de las primeras aplicaciones de I.A. Fueron los juegos, el primer programa para jugar
damas fue concebido en 1947 pero se realizó hasta 1962. Se dice que el primer juego de
ajedrez por computadora fue creado por Claude Shannon en 1953. Actualmente la pasión por
los videojuegos es dominante en todo el mundo por niños e inclusive adultos.
4. INTELIGENCIA ARTIFICIAL CONVENCIONAL
Se conoce también como IA simbólico-deductiva. Está basada en el análisis formal y estadístico
del comportamiento humano ante diferentes problemas:
Razonamiento basado en casos: Ayuda a tomar decisiones mientras se resuelven
ciertos problemas concretos y aparte de que son muy importantes requieren de un
buen funcionamiento.
Sistemas expertos: Infieren una solución a través del conocimiento previo del
contexto en que se aplica y ocupa de ciertas reglas o relaciones.
Redes bayesianas: Propone soluciones mediante inferencia probabilística.
Inteligencia artificial basada en comportamientos: que tienen autonomía y pueden
auto-regularse y controlarse para mejorar.
Smart process management: facilita la toma de decisiones complejas, proponiendo
una solución a un determinado problema al igual que lo haría un especialista en la
actividad.
5. INTELIGENCIA ARTIFICIAL COMPUTACIONAL
Es una rama de la inteligencia artificial centrada en el estudio de mecanismos adaptativos para
permitir el comportamiento inteligente de sistemas complejos y cambiantes. Se presenta
como una alternativa a la GOFAI ("Good Old-Fashioned Artificial Intelligence"), tratando de no
confiar en algoritmos heurísticos tan habituales en la Inteligencia Artificial más tradicional.
Dentro de la Inteligencia Computacional podemos encontrar técnicas como las Redes
Neuronales, Computación
Evolutiva, Swarm
Intelligence, Sistemas
Inmunes
Artificiales oSistemas difusos. También se relaciona con técnicas como los Fractales, Teoría del
Caos, Wavelets, Autómata celular, etc.
La Inteligencia Computacional combina elementos de aprendizaje, adaptación, evolución
y Lógica difusa para crear programas que son, en cierta manera, inteligentes. La investigación
en Inteligencia Computacional no rechaza los métodos estadísticos, pero muy a menudo
aporta una vista complementaria. Las Redes Neuronales son una rama de la inteligencia
computacional muy relacionada con el aprendizaje automático.
6. INTELIGENCIA ARTIFICIAL HUMANA
Es notable como hoy en día la tecnología se ha desarrollado hasta puntos quizás inimaginables
algunas décadas atrás o tan solo años atrás. La variedad y rapidez de las funciones de una PC
nos llevan a pensar serán nuestros cerebros inferiores a las máquinas.
Creo que si a alguien le hacen esta pregunta y debe responder en una manera
impulsiva y rápida, esta podría llegar a decir que las maquinas son más “inteligentes”. No sería
una respuesta totalmente errónea, hoy en día las maquinas realizan, por ejemplo,
complicadísimos cálculos matemáticos en segundos, buscan información también en
Ingeniería de Sistemas UNICA 2013-II
21. 20
Inteligencia Artificial y Robótica
segundos. Esto podría provocar que la gente irreflexivamente conteste que las más
inteligentes son las máquinas.
Personalmente, me atrevo a criticar esta respuesta. El fundamento es simple, sabemos
que los seres humanos no somos perfectos, no habrá una sola vez en la que no comentamos ni
el más mínimo error; es por eso que algo imperfecto no puede hacer algo perfecto ¿Me
explico? Simplificadamente. Acaso Microsoft no tiene fallas.
7. ELEMENTOS DE LA INTELIGENCIA ARTIFICIAL
En verdad, la inteligencia artificial consiste en la asimilación de los procesos inductivos y
deductivos del cerebro humano. Este intento de imitación se enfrenta a duras restricciones del
hardware. Una computadora no es un cerebro; su complejidad electrónica se encuentra a una
distancia abismal de la superior complejidad neurológica cerebral. La inteligencia artificial
acepta el reto de la imitación de los procesos del cerebro aplicando mucho ingenio para
aprovechar los medios de que se dispone y que se elaboran.
Sea cual sea la aplicación de que se trate, la lA se sustenta sobre los dos elementos siguientes:
Estrategias de comportamiento inteligente.
Saber.
Estos elementos forman una construcción coherente: son forma y contenido, estructura y
materia.
7.1. Estrategias de comportamiento inteligente:
Se conjuga en la disposición de reglas para formular buenas inferencias o conjeturas y,
también, en su utilidad para la búsqueda de una solución a la cuestión o tarea planteada. De
esta forma, las estrategias son la parte estructural o formal.
7.2.
Saber:
Significa lo material o el contenido, y, por tanto, varía en cada caso de un modo más
profundo; se trata del saber. En realidad, no se puede pretender reunir el saber, sino los
saberes. Por ejemplo, cada sistema experto posee en memoria todos los conocimientos
distintivos que tendría un especialista en la materia, sea un médico, un abogado o un químico.
El saber que se recoge tiene un carácter especializado y alcanza un volumen conceptual
considerable.
8. TECNICAS DE BUSQUEDA EN INTELIGENCIA ARTIFICIAL
Técnicas de Búsqueda de Soluciones
Arboles de Búsqueda
Técnicas Look-Back
Técnicas Look-Ahead
Gua de Búsqueda
8.1.
Arboles de Búsqueda
Estructura en forma de árbol que permite construir instanciaciones en un problema
de búsqueda.
Un árbol de búsqueda posee tantos niveles como variables tiene el problema + 1.
Ingeniería de Sistemas UNICA 2013-II
22. 21
Inteligencia Artificial y Robótica
Un árbol tiene tantos descendientes por nivel como valores tenga el dominio de cada
variable.
8.2.
Técnicas Look-Back
Los algoritmos con enfoque look-back tratan de explotar la información del problema
para comportarse más eficientemente en las situaciones sin salida. Llevan a cabo el chequeo
de la consistencia hacia atrás, es decir, entre la variable actual y las pasadas.
Figura. Estructura Look-Back
8.2.1. Backtracking Cronológico
Si asumimos un orden estáticolas variables y de los valores en las variables, estealgoritmo
trabaja de la siguiente manera. El algoritmo selecciona la siguiente variable de acuerdoal
orden de las variables y le asigna su próximo valor. Esta asignación de la variable se comprueba
en todas las restricciones en las que forma partela variable actual y las anteriores. Si todas las
restricciones se han satisfecho, el backtracking cronológico selecciona la siguiente variable y
trata deencontrar un valor para ella de la misma manera. Si alguna restricción no se satisface
entonces la asignación actual se deshace y se prueba con el próximo valor de la variable actual.
Si no seencuentra ningún valor consistente entonces tenemos una situación sin salida
(dead-end) y elalgoritmo retrocede a la variable anteriormente asignada y prueba asignándole
un nuevo valor. Si asumimos que estamos buscando una sola solución, el backtracking
cronológicofinaliza cuandoa todas las variables se les ha asignado un valor, en cuyo caso
devuelve una solución, o cuandotodas las combinaciones de variable-valor se han probado sin
éxito, en cuyo caso no existe solución.
El backtracking cronológico es un algoritmo muysimple pero es muy ineficiente. El
problema es que tiene una visión local del problema. Solo comprueba restricciones que están
formadas por la variable actual y las pasadas, e ignora la relación entre la variable actual y las
futuras. Además, este algoritmo es ingenuo en el sentido de que no'recuerda' las acciones
previas, y como resultado, puede repetir la misma acción varias veces innecesariamente. Para
ayudar a combatir este problema, se han desarrollado algunos algoritmos de búsqueda más
robustos.
Ingeniería de Sistemas UNICA 2013-II
23. 22
Inteligencia Artificial y Robótica
Figura. Backtracking Cronológico
8.2.2. Backtracking Guiado por el Grafo de Restricciones
En caso de error sobre una variable se regresa a la variable conectada por una restricción
más recientemente instanciada. Método interesante para los grafos de restricciones sparse.
Figura. Backtracking Guiado
8.3.
Técnicas Look-Ahead
Como ya indicamos anteriormente, los algoritmos look-back tratan de reforzar el
comportamiento de Backtracking mediante un comportamiento más inteligente cuando se
encuentran en situaciones sin salida. Sin embargo, en todos los casos, el chequeo de la
consistencia se realiza solamente hacia atrás, ignorando las futuras variables.
Los algoritmos con enfoque Look-ahead hacen un chequeo hacia adelante en cada
etapa de la búsqueda, es decir, ellos chequean para obtener las inconsistencias de las variables
futuras involucradas, además de las variables actual y pasadas. De esta manera, las situaciones
sin salida se pueden identificar antes y además, los valores inconsistentes se pueden descubrir
y podar en las variables futuras.
Ingeniería de Sistemas UNICA 2013-II
24. 23
Inteligencia Artificial y Robótica
Figura. Técnica Look-Ahead
9. SISTEMA BASADO EN CONOCIMIENTO
Los métodos generales desarrollados para la resolución de problemas y técnicas de búsqueda
al inicio de la era de la IA demostraron no ser suficientes para resolver los problemas
orientados a las aplicaciones, ni fueron capaces de satisfacer los difíciles requerimientos de la
investigación.
Es un sistema computarizado capaz de resolver problemas en el dominio en el cual posee
conocimiento específico.
La solución es esencialmente la misma que hubiera dado un ser humano confrontado con
idéntico problema, aunque no necesariamente el proceso seguido por ambos puede ser igual.
A este conjunto de métodos, procedimientos y técnicas, se lo conoce
como Inteligencia Artificial Débil.
Figura: Representación lingüística del conocimiento
Los sistemas basados en conocimiento son excelentes para representar conocimiento
asociativo. Este tipo de experiencia refleja la habilidad heurística o el conocimiento que es
adquirido mayoritariamente, a través de la observación. Puede ser que no se comprenda
exactamente lo que ocurre al interior de un sistema (caja negra), pero se puede asociar
entradas o estímulos con salidas o respuestas, para resolver problemas que han sido
previamente conocidos.
Ingeniería de Sistemas UNICA 2013-II
25. 24
Inteligencia Artificial y Robótica
Estructura de los SBC
La arquitectura de un sistema basado en conocimiento de alguna manera refleja la
estructura cognitiva y los procesos humanos. La primera parte es la memoria de largo
plazo, en la que guarda los hechos (Razonamiento) y los conocimientos (Base de
Conocimientos) acerca del dominio en el que tiene experiencia.
Figura: Estructura de un sistema basado en conocimiento
9.1. Representación de un sistema basado en conocimiento
Lo que intentaremos explicar es como traducir o representar los estímulos percibidos (que al
fin y al cabo es la información sobre hechos del mundo que nos rodea) en una lengua de
representación que permita almacenarlo y recuperarlo es caso de necesitar esa información.
Podemos representar el conocimiento de varias formas:
Simbólicamente podría ser a través de un lenguaje formal como la lógica de primer
orden o mediante otros mecanismos como las reglas de producción, las redes
semánticas o los marcos (frames) de Marvin Minsky.
Si partimos del enfoque conexionista el conocimiento, como ya hemos dicho, está
representada en cada una de los nodos de la red neuronal, que la adquirió en el
proceso de entrenamiento o presentándole un cierto patrón de entrada, y si es
aprendizaje supervisado la salida deseada.
9.2. Ciclo de vida de los Sistemas basado en conocimiento
Análisis del Problema:Evaluar el problema y los recursos disponibles para determinar
la aplicabilidad de una solución basada en conocimiento. Se debe realizar un análisis
costo - beneficio del SBC propuesto para saber si su desarrollo puede ser garantizado.
Especificación de Requerimientos:Formalizar y poner por escrito lo que fue adquirido
durante la fase de análisis. Esto permite determinar los objetivos del proyecto, ojalá,
de una manera inequívoca y establece los medios para obtener dichos objetivos.
Ingeniería de Sistemas UNICA 2013-II
26. 25
Inteligencia Artificial y Robótica
Diseño Preliminar:Esta etapa considera únicamente las decisiones de alto nivel
necesarias para preparar y desarrollar rápidamente el prototipo inicial.
Específicamente, esta etapa determina el paradigma de representación del
conocimiento, la herramienta escogida para construir el prototipo, y la selección de los
expertos
Prototipo Inicial y Evaluación:Esta es una etapa clave debido a que todas las
decisiones tomadas en el diseño preliminar deben ser ya sea confirmadas, rectificadas
o desechadas, sobre la base del conocimiento recopilado de los expertos en el proceso
hasta completar esta etapa
Diseño Final:comprende la selección de las herramientas y de los recursos necesarios
para desarrollar el sistema a ser entregado. En muchos casos puede ser aplicable y
muy útil realizar una descripción gráfica de los diferentes módulos del sistema,
empleando las herramientas CASE propias de los sistemas de software convencionales
Implementación:comprende el proceso completo de adquisición del conocimiento
para todos los módulos o subsistemas. Es en esta etapa que tiene lugar el desarrollo
incremental.
Pruebas:El asegurar la calidad de un SBC es una tarea muy importante que debe ser
cuidadosamente planificada, especialmente a medida que el SBC es más grande y
complejo, o es de aplicación crítica. El plan de pruebas, es bastante similar al que se
prepara para un sistema cconvencional, basándose en la validación y la verificación.
Ajustes al Diseño:A medida que el trabajo avanza y los ingenieros cognoscitivos tienen
a la vista los problemas detectados, deben realizar los ajustes necesarios al inicio de
cada iteración. Si estos ajustes cada vez son relativamente más pequeños y no son
retroactivos, se tiene una buena medida de que se está progresando. Pero si ocurre lo
contrario, puede representar un serio retardo al proyecto y posiblemente requerir un
cambio de paradigma
Instalación, Implantación y MantenimientoEn la etapa final del ciclo de vida de un
SBC se traslada el sistema desarrollado, como un producto operativo hacia el entorno
de los usuarios. Para ello, se deben realizar varias actividades de instalación,
implantación y mantenimiento similares a las de un sistema de software convencional.
9.3. Problemas fundamentales en la construcción de los SBC
La adquisición del conocimiento y cómo representar el conocimiento humano
a una representación abstracta efectiva.
La representación del conocimiento en términos de una estructura de datos
que una maquina pueda procesar.
La generación de inferencias o cómo hacer uso de esas estructuras abstractas
para generar información útil en el contexto de un caso específico.
Ingeniería de Sistemas UNICA 2013-II
27. 26
Inteligencia Artificial y Robótica
CONCLUSION
La I.A tiene muchas aplicaciones en la vida real.
La I.A no es como se ve en las películas, falta mucho por hacer.
El mayor campo de aplicación de la I.A son los juegos.
La robótica es otro de los campos en los que más se aplica la I.A
Hospitales, Industrias y otros se benefician de la I.A, específicamente en la Robótica.
Los Sistemas Expertos son útiles en muchas ocasiones.
La Visión Artificial es el campo menos desarrollado de la I.A
Las Neuronas humanas son parecidas a las computacionales.
Los Robots están captando la atención de muchos debido a lo que pueden hacer
gracias a la I.A (Por ejemplo, el campeonato Robocup).
Existen Robots que ayudan en Hospitales, a personas.
El objetivo de la I.A es lograr un sistema totalmente autónomo.
Ingeniería de Sistemas UNICA 2013-II