1. caracterÍsticas y bases - departamento de ingeniería ...lctorress/iartificial/ia0003l.pdf ·...

26
1. CARACTERÍSTICAS Y BASES La inteligencia artificial (IA) es algo que fascina a muchas personas, especialmente aquellos que creen que los computadores serán capaces de concebir por sí mismos lo que para los humanos algunas veces es complejo: la planeación, la toma de decisiones, el razonamiento abstracto, eleiminación de juicios subjetivos, etc.; y una vez hecho esto, el paso al autoaprendizaje sería la meta. Pero por la evolución de la tecnología y el creciente incremento de capacidad en los ordenadores personales, comienza a ser realidad programas que muestran características de inteligencia. La posibilidad de construir una máquina que pueda rivalizar o superar la capacidad de razonamiento del cerebro humano potencia la imaginación del ser humano. Los esfuerzos de la IA se enfocan hacia la comprensión y construcción de entes que presenten inteligencia; es decir, construir sistemas o agentes inteligentes que desarrollen actividad mentales, solucionen problemas complejos y provean explicaciones amplias; en otras palabras, se busca construir máquinas que hagan aquello que, al parecer de otros, es tener inteligencia. La IA utiliza herramientas teóricas y experimentales de las ciencias de la computación para estudiar el fenómeno del comportamiento inteligente y el desarrollo de los sistemas respectivos. La IA comenzó como resultado de investigación en sicología cognitiva y lógica matemática. Se ha enfocado sobre la explicación del trabajo mental y construcción de algoritmos para solucionar problemas de propósito general 1 . La eficiente utilización del computador está limitada tanto al conocimiento y aplicabilidad de los lenguajes de programación como al paradigma de comunicación hombre-máquina, esta limitación busca superarse desarrollando herramientas que permitan una comunicación en lenguaje natural, con una representación de conocimiento y procesamiento no algorítmico y paralelo. Sin embargo, una aplicación es desarrollar programas computacionales que solucionen problemas a partir de una continua interacción entre la máquina y el hombre, que las máquinas "aprendan" de los hombres para realizar mejor su labor. Para que una máquina aprenda, debe poder representar lo que entiende. El conocimiento deberá estar integrado en algún tipo de mecanismo: estructura de datos, bases de datos, bases de conocimiento, árboles de decisión, estructuras lógicas, etc. La idea de construir máquinas que ejecuten tareas percibidas simbólicas de la inteligencia humana es un atractivo 2 . Las tareas estudiadas 1 En el anexo A se muestran con mayor claridad los resultados que se han dado en las investigaciones en IA, como las perspectivas. 2 Aunque muchas preguntas nos inquietan y nos incitan a investigar, otras llevan a soñar, a pensar, a

Upload: others

Post on 24-Mar-2020

6 views

Category:

Documents


0 download

TRANSCRIPT

1. CARACTERÍSTICAS Y BASES

La inteligencia artificial (IA) es algo que fascina a muchas personas, especialmenteaquellos que creen que los computadores serán capaces de concebir por sí mismos loque para los humanos algunas veces es complejo: la planeación, la toma de decisiones,el razonamiento abstracto, eleiminación de juicios subjetivos, etc.; y una vez hechoesto, el paso al autoaprendizaje sería la meta. Pero por la evolución de la tecnología yel creciente incremento de capacidad en los ordenadores personales, comienza a serrealidad programas que muestran características de inteligencia. La posibilidad deconstruir una máquina que pueda rivalizar o superar la capacidad de razonamiento delcerebro humano potencia la imaginación del ser humano.

Los esfuerzos de la IA se enfocan hacia la comprensión y construcción de entes quepresenten inteligencia; es decir, construir sistemas o agentes inteligentes quedesarrollen actividad mentales, solucionen problemas complejos y proveanexplicaciones amplias; en otras palabras, se busca construir máquinas que haganaquello que, al parecer de otros, es tener inteligencia. La IA utiliza herramientasteóricas y experimentales de las ciencias de la computación para estudiar el fenómenodel comportamiento inteligente y el desarrollo de los sistemas respectivos. La IAcomenzó como resultado de investigación en sicología cognitiva y lógica matemática.Se ha enfocado sobre la explicación del trabajo mental y construcción de algoritmospara solucionar problemas de propósito general1.

La eficiente utilización del computador está limitada tanto al conocimiento yaplicabilidad de los lenguajes de programación como al paradigma de comunicaciónhombre-máquina, esta limitación busca superarse desarrollando herramientas quepermitan una comunicación en lenguaje natural, con una representación deconocimiento y procesamiento no algorítmico y paralelo. Sin embargo, una aplicaciónes desarrollar programas computacionales que solucionen problemas a partir de unacontinua interacción entre la máquina y el hombre, que las máquinas "aprendan" de loshombres para realizar mejor su labor. Para que una máquina aprenda, debe poderrepresentar lo que entiende. El conocimiento deberá estar integrado en algún tipo demecanismo: estructura de datos, bases de datos, bases de conocimiento, árboles dedecisión, estructuras lógicas, etc. La idea de construir máquinas que ejecuten tareaspercibidas simbólicas de la inteligencia humana es un atractivo2. Las tareas estudiadas

1 En el anexo A se muestran con mayor claridad los resultados que se han dado en lasinvestigaciones en IA, como las perspectivas. 2 Aunque muchas preguntas nos inquietan y nos incitan a investigar, otras llevan a soñar, a pensar, a

Inteligencia artificial

Luis Carlos Torres Soler4

incluyen juegos, traducción y comprensión de idiomas, diagnóstico de fallas,cognición, asesoría experta en diversos temas.

Las compañías requieren expertos en muchos campos para solucionar problemas,plantear desarrollos tecnológicos o técnicos, gestionar conocimiento, tomar decisiones,realizar planes, ... pero ellos son escasos, no se hallan alrededor; tienen poco tiempo ocuestan demasiado. Para solucionar el problema del recurso humano, se ha hechoimprescindible construir sistemas capaces de almacenar millones de hechos deexperiencia, proveer su recuperación por procedimientos que generen conocimiento,den explicaciones del porqué, cómo, qué, cuándo, y sepan distinguir cualidades quepresentan los objetos.

Hasta 1981 muchos centros desarrollaban investigación en el campo de la IA con losrecursos propios. Esto cambió cuando el gobierno japonés lideró una investigaciónpara identificar los requerimientos para la década del 90. Aprovechando el temor a unposible dominio por parte de los Japoneses, empresas e investigadores obtuvieronapoyo. La investigación japonesa3 planteó que debía buscarse cuatro metasfundamentales:

1. Incrementar la productividad en áreas poco productivas como:a. Procesamiento de documentos.b. Administración de oficinas.c. Administración y toma de decisiones.

2. Competir y contribuir internacionalmente.3. Contribuir al ahorro de energía y recursos.4. Hacer frente a una sociedad envejecida.

Esto es, buscar una efectiva educación y en particular proveer por medio delcomputador el aprendizaje continuo.

A partir de ello surgieron proyectos para el desarrollo de sistemas computacionales,lenguajes y herramientas de mayor poder. Revolución que llevó al procesamiento deconocimiento, realización de programas para Instrucción Asistida por Computador(IAC), generación de Sistemas Expertos (SE), creación de Máquinas Inteligentes quetrabajen con lenguaje natural y tengan características humanas: decidan, piensen, buscar nuevas estrategias y hasta imaginar estados futuristas, todo por las capacidades que posee elcerebro humano. De hecho, parece que la naturaleza compensó con creces la aparente ineptitud físicahumana con la capacidad de razonar, imaginar, pensar y comprender mejor que cualquierotra especie.¿Qué pasaría cuando una máquina piense? ¿Llegarán a construirse máquinas con capacidadessuperiores al ser humano? 3 La investigación se desarrolla principalmente en tres campos: hardware, software y aplicaciones. En elcampo de hardware se concentra en una arquitectura de computadores caracterizada por inferenciasecuencial y/o paralelo y el desarrollo de máquinas para bases de datos afines. El grupo de softwareinvestiga sobre el lenguaje que sea flexible, versatil; esto incluye sistema operativo, lenguaje natural yrepresentación del conocimiento. El tercer grupo combina los resultados de los dos primeros grupos en lalabor sobre sistemas de gestión de bases de datos y sistemas expertos para conseguir validar las teoríaspropuestas.

Características y bases

Universidad Nacional de Colombia 5

hablen, oigan, vean, se muevan4; a trabajar en vida artificial y computación evolutiva,neuronal o molecular.

El campo de la inteligencia artificial es diverso y multifacético al enfrentar problemascientíficos profundos y complejos y, al mismo tiempo, desarrollar tecnologías de usopráctico. Científicos de diversas disciplinas incursionan gradualmente en la IA,aportando conocimiento para solucionar problemas en su área a partir de técnicas ymétodos computacionales con razgos de inteligencia.

La solución de la mayor parte de los problemas puede considerarse una actividadintelectual de generación y selección de soluciones alternativas, dentro de una gama desoluciones posibles. Inspirándose en el modelo mental, la Inteligencia artificialpersigue metas como la del razonamiento simbólico. Puesto que una inferenciacorresponde a una etapa elemental de razonamiento, la capacidad de razonamiento deun ordenador de este tipo se mide en Lips (Logical Inference per Second) y en susmúltiplos (Klips, Mlips), de modo que un Lips es una inferencia silogística porsegundo. Se estima habitualmente que una operación de inferencia necesita de cien amil pasos, de modo que un Lips equivale a 100-1.000 instrucciones por segundo.

Para hacer frente a estas exigencias técnicas y a sus velocidades, ha sido menesterrenovar las arquitecturas de los ordenadores. Al razonamiento secuencial correspondeel flujo electrónico lineal en la máquina. Pues las arquitecturas paralelas, que conectanvarias máquinas capaces de efectuar muchas operaciones en paralelo en una misma redde comunicación, rompen la relativa lentitud inherente al proceso secuencial, querealiza sus operaciones una después de otra.

La inteligencia artificial (IA) es una disciplina que analiza los comportamientoshumanos en la percepción, comprensión y resolución de los problemas, con el objetivode reproducirlos mediante máquinas.

Como conjunto de facultades, resulta más pertinente la definición de Shallis, alespecificar que la inteligencia artificial es la capacidad de aparentar conciencia através del procesamiento de información racional o lógica.

Las bases de la inteligencia artificial residen en: 1) el conocimiento sobre los procesos

4 El ordenador de quinta generación tendría capacidad para el proceso de datos numéricos y nonuméricos (incluyendo, por lo tanto, el lenguaje natural, la escritura, los grafismos y las imágenesicónicas). Supone por lo tanto, un paso definitivo desde una cuantificación (numerización) del mundo auna visión que, junto a las cantidades, admite ciertas categorías cualitativas. Además, este ordenadorestaría capacitado para los procesos de aprendizaje, inferencia y asociación, capacidades muysofisticadas del ser humano. De conseguirse plenamente tales capacidades no sería descabellado afirmarque el hombre habría sido capaz de construir un neocórtex órbito-frontal electrónico, culminando conello su ingeniería de simulacros antropomórficos. Logros hallados ha sido una máquina basada en elconocimiento, llamada Delta que comprende un sistema de inferencia, un sistema de conocimiento, unsistema de software y un sistema para el desarrollo de prototipos de software.

Inteligencia artificial

Luis Carlos Torres Soler6

mentales del ser humano; 2) el conocimiento acerca de cómo seleccionar y utilizar elmismo conocimiento (llamado metaconocimiento). Con estas bases, el objetivofundamental de la IA es reproducir las funciones de la inteligencia humana, mediantelas estrategias utilizadas para cumplir diversas funciones y de las que el hombre,incluso el científico o el intelectual, es muy raramente consciente.

No existe una definición que posea amplia aceptación entre los investigadores por losdiferentes enfoques que se presentan, pero, algunas definiciones dadas de IA son:

La interesante tarea de lograr que los computadores piensen... máquinas con mente,en su amplio sentido literal (Haugeland).

Disciplina científico técnica que trata de crear sistemas artificiales capaces de uncomportamiento que, de ser realizado por seres humanos, se diría que requiere deinteligencia.

La automatización de actividades vinculadas con procesos de pensamiento humano,actividades tales como toma de decisiones, resolución de problemas, aprendizaje...(Bellman).

El arte de crear máquinas con capacidad de realizar funciones que efectuadas porpersonas requieren inteligencia (Kurzweil).

El estudio de cómo lograr que los computadores realicen tareas que, por el momento,los humanos hacen mejor (Rich & Knight).

El estudio de las facultades mentales mediante el uso de modelos computacionales(Charniak & McDermott).

El estudio de los procesos que permiten percibir, razonar y actuar al ser humano(Winston).

Estudio de los mecanismos de la inteligencia y las tecnologías que los sustentan(Newell).

Intento de reproducir (modelar) la manera en que las personas identifican,estructuran y resuelven problemas difíciles (Pople).

Un campo de estudio que se enfoca a la explicación y emulación de la conductainteligente en función de procesos computacionales (Schalkoff).

La rama de la ciencia de la computación que se ocupa de la automatización de laconducta inteligente (Luger & Stubblefield).

La IA es la disciplina científica que se ocupa del estudio de las ideas que permiten serinteligentes a los ordenadores (Winston).

Características y bases

Universidad Nacional de Colombia 7

Todas estas definiciones, como puede apreciarse, presentan enfoques diferentes, cadauna es válida en su contexto, pero no necesariamente satisfacen los requerimientos enun amplio campo. No es posible dar una definición universalmente aceptable de IA, locual no es de extrañar ya que tampoco existe una definición aceptada en forma generalde inteligencia [humana]. Pero los procesos y mecanismos en desarrollo buscan que elcomputador llegue a ser inteligente. La definición de IA en este documento es: ramade la computación que se encarga, entre otras cosas, de los problemas de percepción,razonamiento y aprendizaje en sistemas artificiales, y que tiene como áreascomplementarias: sistemas expertos y de conocimiento, robótica, lenguajes naturales,redes neuronales, lógica difusa, entre otras.

"El grado de inteligencia que se atribuye al comportamiento de algoestá determinado tanto por nuestro propio estado mental

y nuestra capacitación como por las propiedades del objeto que se analiza"Alan Turing.

0Figura 1.1. Ciencias y áreas para la inteligencia artificial.

Una de las características de los métodos de la IA es el uso de símbolos. Además, queel comportamiento en los programa no es descrito por algoritmos, se trata de unconjunto de pasos necesarios para resolver un problema dado sin definirse cuál es lasecuencia. El razonamiento dependiente del conocimiento, implica programas queincorporan factores y relaciones del mundo real y del ámbito del conocimiento en que

Inteligencia artificial

Luis Carlos Torres Soler8

opera.

La IA es una combinación de la ciencia de la computación, fisiología, sicología yfilosofía, tan general y amplia como eso, reuniendo varios campos (robótica, sistemasexpertos, ...), todos teniendo en común la creación de máquinas que puedan "pensar"5

(ver figura 1.1).

Cada ciencia con su propio método de trabajo y de verificación ha logrado escalarpeldaños muy importantes, liderando continuamente los paradigmas que las sustentan.Con el advenimiento de las ciencias de la información (informática) y la mecanizaciónde la misma, nace la IA. Es un reto a la propia creatividad y un medio ejemplar pararefinar el conocimiento humano.

La sicología y la filosofía se ocupan de la inteligencia humana; la IA se encamina tantoa la construcción de entidades, agentes o sistemas inteligentes6, como a sucomprensión.

La IA difiere mucho de la sicología dado que aplica con énfasis la computación, ydifiere mucho de las ciencias de la computación por la atención que presta a lapercepción, al razonamiento y a la acción.

La filosofía tiene una relación amplia con la IA, ya que buscan formalizar el sentidocomún:

1. Construir una visión del mundo en un programa no le da la habilidad alprograma de expresar explícitamente esa visión.

2. El sentido común requiere de una formulación científica.3. Se requiere una formalización, pero la estructura fundamental del mundo

todavía no se conoce; por tanto, exige formulaciones imprecisas y a vecesinconsistentes.

4. Se requieren conceptos que tienen sentido sólo en teorías aproximadas. Senecesita un formalismo que permita ir mas allá de las aseveraciones hacia unsiguiente nivel de aproximación cuando sea posible y necesario.

5. Existen dos formas genéricas de hacer programas: i) empíricamente (teoríasque concretan datos con acciones); ii) realísticamente (hechos que existenindependientemente del programa y que la realidad no es sólo lo queinteractúa con el programa). Ésta última es el interés de la IA.

5 Para clasificar una máquina de "pensante", es necesario determinar elementos de la inteligencia queimpliquen resolver problemas complejos, hacer generalizaciones o relaciones, percibir, entender ocomprender. 6 Un agente o entidad inteligente es algo capaz de percibir y actuar. Entender algún lenguaje natural,reconocer imágenes, encontrar la mejor manera de resolver un problema, encontrar la ruta óptima parallegar a un objetivo específico, etcétera, actividades inherentes al razonamiento humano y que podríarealizar un agente inteligente.

Características y bases

Universidad Nacional de Colombia 9

La lingüística ofrece teorías sobre la estructura y significado de los lenguajes naturalesy de la computación.

Durante siglos de la matemática han surgido teorías formales relacionadas con lalógica, la probabilidad, la toma de decisiones, la computación y otras que facilitan lasolución de gran cantidad de problemas, que en general, para su solución se requiereinteligencia.

La robótica estudia el desarrollo de máquinas capaces de realizar procesos mecánicosrepetitivos y tareas manuales que efectúa el hombre. La robótica es la conexióninteligente entre la percepción y la acción [Brady M.]. Es una síntesis entre laautomática y la informática. La IA sería centrarse únicamente en habilidad mentalhumana, mientras que la robótica dirige sus esfuerzos a producir comportamientosfísicos animados.

La IA tiene aplicación en la robótica cuando se requiere que un robot "piense" y tomeuna decisión entre dos o más opciones; entonces, ambas ciencias comparten algo encomún. El robot se define: "un agente artificial, activo, cuyo entorno es el mundofísico"7. Con el término activo se descarta de la definición a los objetos inanimados;con el término artificial se descarta a los seres vivos; con el término físico se descarta alos agentes constituidos únicamente por software.

La robótica es un área de investigación multidisciplinaria8. El diseño de robots requiereconocer estructuras, materiales, cinemática, dinámica, actuadores, sensores, control yprogramación, entre otros. Los sensores son las herramientas de la percepción de losrobots porque les permite, al igual que los humanos, saber dónde se localizan losobjetos y qué acciones tomar según el entorno.9 Isaac Asimov propuso en sus obras de 7 La palabra robot procede del término checo robota (trabajador, siervo) utilizada por el escritor checoKarel Capek en 1920. En la actualidad, el término se aplica a todos los ingenios mecánicos, accionados ycontrolados electrónicamente, capaces de llevar a cabo secuencias simples que permiten realizaroperaciones tales como carga y descarga, accionamiento de máquinas; ensamble, soldadura, torno,pintura, ... 8 Importante aclarar que existe una gran diferencia entre robótica y cibernética. La cibernética es unaciencia interdisciplinaria que trata la comunicación y el control en organismos vivos, máquinas uorganizaciones. El término es una derivación del vocablo griego kybernetes que significa gobernador opiloto, y fue aplicado por primera vez en 1948 a la teoría del control de mecanismos por el matemáticoamericano Norbet Wiener. En el cuerpo humano, el cerebro y el sistema nervioso funcionan paracoordinar la información, la cual es utilizada para determinar el futuro curso de una acción; controlar losmecanismos para la autocorrección en máquinas que sirven con un propósito similar. Este principio seconoce como retroalimentación, el cual es fundamental en la automatización. La cibernética se aplica enla sicología, servomecanismo, economía, neuropsicología, ingeniería en sistemas y al estudio de sistemassociales. 9 Se entiende por robot industrial a un dispositivo de maniobra destinado a ser utilizado en la industria ydotado de uno o varios brazos, fácilmente programable para cumplir operaciones diversas con variosgrados de libertad y destinado a sustituir la actividad física del hombre en las tareas repetitivas,monótonas, desagradables o peligrosas. Robot Institute of America (RIA) define al robot como "unmanipulador multifuncional reprogramable, diseñado para mover materiales, partes, herramientas o

Inteligencia artificial

Luis Carlos Torres Soler10

ciencia ficción las siguientes leyes para un robot:

Ley cero: un robot no puede atentar contra la humanidad o, por inacción,permitir que la humanidad sea lastimada.

Ley uno: un robot no lastimará a un ser humano, o por inacción, permitir queun humano sea lastimado, a menos que éste viole una ley de mayor jerarquía.

Ley dos: un robot debe obedecer órdenes dadas por humanos, excepto cuandoestas órdenes entran en conflicto con una ley de mayor jerarquía.

Ley tres: un robot debe proteger su propia existencia si no entra en conflictocon una ley de mayor jerarquía.

Muchos problemas se encuentran en la intersección de la IA y la robótica, que sólocombinando técnicas de ambos campos se logra diseñar máquinas inteligentes. Hayigualmente áreas de conocimiento y estudio común:

La visión (percepción): estudia la identificación, inspección, localización yverificación de objetos. Para el robot, es una necesidad poder "ver".

Las máquinas serán capaces de reaccionar a su entorno por influencias recibidas atravéz de sensores y dispositivos de interacción con el exterior.

Entre los grandes retos perceptivos que se plantea resolver el de la visión artificial ovisiónica, cuyo órgano pionero fue el Perceptrón (1958) de Frank Rosenblatt, el cualutilizó una red de neuristores, circuitos eléctricos destinados a modelizar neuronas.Los sensores utilizados para la visión artificial suelen ser cámaras, cuya señal de vídeoes digitalizada para poder ser tratada con métodos informáticos. El gran problema de lavisión artificial es un problema semántico, es decir, el del reconocimiento de lasformas visuales, que tiene que basarse, como el aprendizaje visual humano, en laclasificación categorial de la información por sus rasgos más pertinentes y definitorios.La meta de la visiónica es que la visión de la cámara de vídeo, como simulacro de lamirada humana, sea capaz de interpretar y reconocer las formas gracias a su conexióncon un ordenador. La visión artificial, como prótesis óptica de la máquina, supone un

dispositivos especializados a través de movimientos variables programados para la performance de unavariedad de labores". Esta definición indudablemente no abarca todas las posibilidades de aplicaciónpresente y futuras de los robots, sin embargo, hoy día los robots realizan un conjunto de movimientospreviamente programados y la sucesión deellos están en función del fin que se persigue, siendofundamental el almacenamiento de las secuencias correspondientes a los diversos movimientos. Sepresenta el caso en que las piezas o partes a ser manipuladas no poseen posiciones prefijadas, en estecaso el robot debe reconocer la posición de la pieza y actuar u orientarse para operar sobre ella en formacorrecta, es decir, posee un sistema de control adaptativo. Si bien no existen reglas acerca de la formaque debe tener un robot industrial, la tecnología incorporada a él está perfectamente establecida y enalgunos casos esta procede de las aplicadas a las máquinas.

Características y bases

Universidad Nacional de Colombia 11

universo visual y un imaginario del que el hombre está excluido, a menos que conectea la máquina una pantalla de visualización para espiarla. Desde ahora, la memoriaicónica ya no es privilegio exclusivo de los seres vivos.

Los juegos (razonamiento): estudia aquellos problemas cuya resolución no necesitaexplicación y justificación, sino que deben cumplir un conjunto de reglas.

El habla: busca identificar la voz de quién está comunicándose, como proveer sonidosque simulen la voz a fin de "conversar" con el usuario. Las tecnologías del habla seencuentran en desarrollo e introducción en nuestro entorno cotidiano. El habla, mediode comunicación por excelencia entre los seres humanos, comienza a ser utilizadacomo medio de comunicación entre máquinas y seres humanos. Dentro de estatecnología se engloban entre otros los procesos:

a. Codificación de voz. Comprensión de la información de la señal de voz paratrasmitirla o almacenarla en forma digital.

b. Síntesis de voz. Proveer sonidos sintéticos de una señal para trasmitir unmensaje desde una máquina.

c. Reconocimiento automático del habla. Extraer el mensaje transportado por unaseñal de voz.

d. Verificación e identificación de la persona. Verificar o identificar la identidadde una persona por el habla.

e. Traducción automática. Reconocer el mensaje de una persona hablando en unidioma y traducir el mensaje a otro idioma.

f. Identificación del lenguaje. Identificar el idioma que utiliza una personahablante.

El movimiento: capacidad por poseer brazos y piernas a fin de desplazarse de un lugara otro.

Procesamiento de lenguaje natural (PLN): estudia el uso del lenguaje natural comomedio de comunicación con las máquinas; intervienen procesos como: comprensióndel lenguaje, el habla, la traducción y la síntesis.

Uno de los rasgos más marcados en los humanos es el del lenguaje; la cultura afecta elpensamiento y la actuación de una persona y a partir de ello, el individuo realiza unarepresentación del mundo y estructura modelos de la realidad. Con base en estosargumentos, la IA ha centrado gran parte de sus esfuerzos en la comunicación enlenguaje natural con la máquina. Sin duda, lo más preocupante es la comunicaciónhombre-máquina en lenguaje natural para que el usuario determine soluciones a unproblema de una manera clara y directa, provea conocimiento y no datos, y que lamáquina sea capaz de realizar inferencia sobre lo que el usuario dice.

El reconocimiento del lenguaje natural, a través de la palabra hablada, presenta algunasdificultades complejas, pues implica un reconocimiento de los sonidos de la voz (y la

Inteligencia artificial

Luis Carlos Torres Soler12

eventual identificación de su emisor), del vocabulario y de las leyes gramaticales, loque conduce a la meta final de descifrar su sentido. Pero el problema de los diferentescontextos socioculturales en que se produce la emisión verbal, que determinandiferentes sentidos, así como el de los giros o locuciones atípicas, ambiguas,coloquiales, dialectales, metáforas, juegos de palabras, etc., plantean enormesproblemas al automatismo de la interpretación semántica.

Aprendizaje: por lo general, la inteligencia que posee un agente es algo que le ha dadosu diseñador, pero los procesos dados no son el mejor método ya que el mundo físicono es lineal y además es poco predecible; es decir, existen variables que no puedendeterminarse con facilidad. Cuando el diseñador del agente desconoce el ambiente enel que va a interactuar, el único camino que dispondrá el agente es el del aprendizaje.El aprendizaje del agente utilizaría la experiencia buscando autonomía y altodesempeño en el dominio. El aprendizaje se produce como resultado de la interacciónentre el agente y el mundo, y de la observación por el agente de sus propiosprocedimientos de toma de decisiones. El aprendizaje está en la memorización deexperiencias, la creación de procesos, teorías y reglas.

Redes neuronales: están constituidas por nodos o unidades, comunicadas medianteconexiones. A cada conexión se le asigna un peso numérico. Los pesos constituyen elprincipal recurso de memoria de la red neuronal y el aprendizaje se realiza usualmentecon la modificación de estos pesos. Los pesos son modificados de manera que laconducta de entrada-salida de la red esté acorde con la del ambiente que produce lasentradas. Algunas unidades se encuentran conectadas con el medio externo, y sonllamadas unidades de entrada, encargadas de percibir los estímulos y emitir losestímulos o unidades de salida producto del procesamiento de la entrada.

Las principales características que diferencian a las redes neuronales de otrastecnologías de inteligencia artificial son:

a. Capacidad de aprendizaje a partir de la experiencia. Normalmente, para laelaboración de un programa informático es necesario un estudio detallado de latarea por realizar para después codificarla en un lenguaje de programación. Lasredes neuronales se entrenan para efectuar una determinada tarea sin necesidadde un estudio a fondo del problema, ni de programarlas, además, pueden serreentrenadas para ajustarse a nuevas necesidades de la tarea que van realizar, sintener que reescribir o elaborar el código, cosa que sí es muy frecuente enprogramas tradicionales.

b. Velocidad de respuesta una vez concluido el entrenamiento. Se comportan comolo hace el cerebro: los seres humanos no necesitamos pensar mucho parareconocer un objeto, una palabra,... una vez que hemos aprendido a hacerlo.

c. Robustez, en el sentido que el conocimiento adquirido se reparte por toda la red,de forma que si se lesiona una parte se continúa generando cierto número derespuestas correctas.

Características y bases

Universidad Nacional de Colombia 13

Sistemas difusos: la lógica difusa es la rama que analiza y estructura información delmundo real en una escala entre falso y verdadero. La lógica difusa toma conceptosbásicos como caliente o húmedo y les permite a los ingenieros construir televisores,acondicionadores de aire, lavadoras y otros dispositivos que juzgan información difícilde definir.

Cuando los matemáticos carecen de algoritmos para representar un sistema que deberesponder a ciertas entradas, la lógica difusa es una herramienta para controlar odescribir el sistema usando reglas de sentido común que se refieren a cantidades nodeterminadas. Los sistemas difusos frecuentemente tienen reglas tomadas de expertos;cuando no hay experto, los sistemas difusos adaptivos (adaptativos) aprenden lasreglas observando cómo se manipulan sistemas reales.

Sistemas expertos (SE): son programas de computador que buscan simular losprocesos intelectuales de los expertos humanos como: la interpretación, el diagnóstico,la monitorización, el control, la predicción, la planificación, el diseño y la enseñanza,entre otros.

Una interesante orientación que caracterizan los sistemas en IA es llamado principiode generalidad:

Al tener una estructura lógica básica necesaria para solucionar unproblema, entonces, en principio, puede usarse la potencia del computadorpara hallar la solución.

Este principio acepta que hay un método general para expresar y solucionar problemascon conocimiento común.

Hoy día, los SE o sistemas basados en el conocimiento (SBC) son base para desarrollarsistemas inteligentes directamente asociados con la representación de conocimiento yprocesos de razonamiento. La idea de la construcción de los SBC se simplifican endos:

a. La adquisición, la representación y el uso de conocimiento especializado.b. El reconocimiento que los sistemas, además de resolver problemas, puedan

poseer atributos propios de expertos humanos10 como:

* Capacidad para adquirir nuevo conocimiento.* Capacidad para justificar sus conclusiones.* Capacidad de hacer preguntas y explicar por qué las hacen.* Capacidad conversacional.

10 Lo que diferencia específicamente a una persona experimentada (experto) en una área del saber deotra que no lo sea, radica tanto en el conocimiento concreto sobre el área en cuestión y en la capacidadgeneral para resolver problemas.

Inteligencia artificial

Luis Carlos Torres Soler14

"Es imposible hacer algo a prueba de tontos,porque los tontos son demasiado ingeniosos"

Roger Berg.

Algunas definiciones de SE11 según grandes investigadores de este campo son lassiguientes:

Programa de computador que reemplaza a un experto humano [Forsyth,1986].

Sistema en que se ha incorporado conocimiento de forma que es capaz deresponder, explicar y justificar sus respuestas como una persona experta.

Un sofisticado programa de computador con capacidad de deducir y/osimular la inteligencia humana usualmente escrito en algún lenguajeorientado a IA.

Sofisticados programas de computador que manipulan conocimiento pararesolver problemas eficiente y efectivamente en un área reducida [Hayes,1983].

Programas de computador que reproducen el comportamiento humano en unestrecho ámbito del conocimiento.

Programas de computador que, apoyados en conocimiento y razonamiento,desarrollan tareas difíciles que usualmente sólo las hacen expertos(humanos).

Un programa diseñado para replicar el proceso de toma de decisiones de unexperto humano.

Los métodos generales desarrollados para la solución de problemas y técnicas debúsqueda al inicio de la era de la IA demostraron no ser suficientes para resolver losproblemas orientados a aplicaciones, ni fueron capaces de satisfacer los difícilesrequerimientos de la investigación.

A este conjunto de métodos, procedimientos y técnicas, se lo conoce comoInteligencia artificial débil. La principal conclusión que se derivó de este trabajoinicial fue que los problemas difíciles sólo podrían ser resueltos con la ayuda delconocimiento específico acerca del dominio del problema. 11 Los SE actuales en general no son capaces de obtener conocimiento por sí solos mediante laexperiencia, así pues no son realmente expertos, y es más correcto denominarlos Sistemas Basados en elConocimiento (Knowledge Based System), sin embargo se difundió la denominación de SE, y aquícontinuamos llamándolos así pese a la incorrección que se cometa. Una de las críticas a los SE, es quesus programas van dirigidos a tareas específicas y carece, por tanto de la universalidad que caracteriza ala auténtica inteligencia.

Características y bases

Universidad Nacional de Colombia 15

La aplicación de estas ideas dio lugar al desarrollo de los denominados sistemasbasados en conocimiento (Knowledge Based Systems) y al aparecimiento de laIngeniería cognoscitiva, como una rama de la IA, que estudia los sistemas basados enel conocimiento. La definición de un sistema basado en conocimiento puede ser lasiguiente:

Es un sistema computarizado capaz de resolver problemas en el dominio enel cual posee conocimiento específico.

La solución es esencialmente la misma que hubiera dado un ser humano confrontadocon idéntico problema, aunque no necesariamente el proceso seguido por ambos puedeser igual.

El simple concepto dado, puede causar confusión ya que muchos sistemas basados enprogramas convencionales podrían ser incorrectamente categorizados como sistemasbasados en conocimiento. Esta inconsistencia puede ser aclarada, sobre la base de tresconceptos fundamentales que distinguen a los sistemas basados en conocimiento de losprogramas algorítmicos convencionales y de los programas generales basados enbúsqueda:

a. La separación del conocimiento y el modo en que es usado.b. La naturaleza del conocimiento empleado (heurística antes que algorítmica).c. El uso de conocimiento específico de un determinado dominio.

Las características principales de los SBC son:* Fácil modificación del conocimiento.* Respuestas coherentes.* 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.

Los principales problemas asociados a los SBC en su desarrollo y ejecución son:* Las soluciones no siempre son las mejores.* Conocimiento limitado frente al dominio de un experto.* Carecen del sentido común o criterio que puede tener un experto.* Es difícil extraer todo el conocimiento que maneja un experto.

El proceso de construir un SE se estudia en la ingeniería del conocimiento12. La 12 La ingeniería del conocimiento es una especialidad que emplea los modernos métodos de la IA.Algunos aspectos importantes del conocimiento son intangibles e inexplicables; el trabajo de losingenieros del conocimiento consiste, en parte, extraer conocimiento de los expertos humanos y, en parte,codificar el conocimiento obteniendo, de manera que pueda ser procesado por un sistema. El problema esque el ingeniero del conocimiento no es un experto en el campo que intenta programar, mientras que el

Inteligencia artificial

Luis Carlos Torres Soler16

ingeniería del conocimiento, llamada también del saber o cognitiva nació en la décadadel 80 como rama que estudia procesos para los sistemas basados en conocimiento. Laconstrucción típicamente involucra una especial forma de interacción entre elconstructor del SE, llamado ingeniero del conocimiento (IC), uno o más expertos en elárea del problema y los usuarios:

• El IC diseña las estructuras computacionales adecuadas para la organización yrepresentación del conocimiento (bases de datos de conocimiento -BDC-, obases de conocimiento -BC-).

• Los expertos comunican su conocimiento directa o indirectamente paraconstruir el sistema.

• Los usuarios usan el sistema para resolver problemas o para aprender una vezque el sistema ha sido desarrollado e implantado.

El IC debe entender ampliamente el mecanismo de inferencia del SE y poseerexcelente habilidad de comunicación interpersonal para extraer de un experto elconocimiento necesario. Los IC son analistas de sistemas y "técnicos sicólogos"quienes deducen cómo manejan el conocimiento y la información los expertos;entienden cómo un experto desarrolla y aplica teorías, deducciones, lógicas, procesos;llega a las reglas básicas y hechos no obvios que el experto manipula; traslada lainformación a alguna estructura para que el sistema la entienda (por ejemplo, ¿cómo elsistema entenderá una explicación de horticultura para plantar semillas y hallar lamayor tasa de crecimiento en el menor tiempo?; ¿cómo el sistema explicaría cuál es lamejor composición vitamínica a darle a un paciente?).

Reglas de expertos en el trabajo por un buen número de años, llamadas heurísticas, sederivan al realizar una exhaustiva observación en esas personas expertas. Junto con elconocimiento general (hechos), las reglas disponibles en libros y las heurísticas sealmacenan en una base de conocimiento (hechos y reglas) y el software especializadose encarga de aplicar dichas reglas para deducir conocimiento.

Por esta razón, el IC debe poseer adecuados conceptos, teorías y habilidades paralocalizar y estructurar conocimiento en el computador, manejo de las estructuras ylenguajes computacionales para desarrollar efectivos SE. Los rasgos principales del ICson:

* Experiencia en representación y adquisición de conocimiento y procesamientodel pensamiento.

* Conocimiento de las implicaciones sicológicas de tomar decisiones ysolucionar problemas.

* Gran experiencia en intervención e interpretación.

experto en el tema no tiene experiencia programando, y en cualquier otro caso este último usa muchasveces su conocimiento de manera subconsciente, por lo que es incapaz de proporcionar la información demanera voluntaria aunque lo desee.

Características y bases

Universidad Nacional de Colombia 17

* Una grata y persistente personalidad orientada a escuchar.

Un IC debe desarrollar suficiente experiencia en un campo para conversar conexpertos, entender lo que dicen y extrapolar la información. El nivel de experiencia esdeterminado por lo que el experto le cede al IC.

Muchos IC afirman que un experto13 es quien:

* Ha adquirido un amplio conocimiento en un campo específico (habilidad parausar 50.000-100.000 diferentes ítem de información, práctica hallada en unperíodo de 10 a 20 años).

* Posee suficiente conocimiento en muchos campos relacionados.* Conoce cómo buscar conocimiento base rápidamente para llegar a una

razonable y segura conclusión.* Puede solucionar eficiente y efectivamente con facilidad problemas que para

muchas personas resultan demasiado complejos.* Tiene autoridad en el campo del conocimiento que maneja (ranking).

Características de los sistemas expertos. Como todo sistema, los SE tienencaracterísticas14 que pueden resumirse en:

a. El conocimiento es explícito y organizado; el conocimiento se completa pocoa poco. El conocimiento es su corazón.

b. Provee un alto nivel de experiencia para ayudar a solucionar problemas.c. Posee potencia para producir modelos. El sistema puede actuar como un

procesador de información teórica o por modelos para solucionar problemasen un dominio, dar las respuestas de acuerdo con la situación y realizarcambios cuando existen nuevas situaciones.

d. Son programas muy rentables y productivos dada la característica de noenvejecer y adaptarse a las necesidades, criterios, políticas,... de cadamomento o situación.

Ventajas de los sistemas expertos. Los sistemas expertos ofrecen ventajas como:

a. Ayudar a la capacitación y prestar asesoría.b. Encargarse de tareas rutinarias. Las personas se concentran en actividades más

importantes.c. Almacenar y combinar conocimiento de varios expertos.

Por estas y muchas razones más, los SE tienen ventajas sobre los humanos. La tabla 13 "Es una persona que cada vez sabe más cosas, sobre menos cosas" (N. Butler). "Es una persona que hadejado de pensar, sabe" (F. Lloyd Wright). "Es un sabio práctico, hábil, que tiene experiencia en unaciencia o arte" (Real Academia de la Lengua Española). 14 La medición de los resultados de un SE es difícil porque no se sabe cómo cuantificar el uso delconocimiento.

Inteligencia artificial

Luis Carlos Torres Soler18

1.1 muestra diferencias entre expertos y SE.

Tabla 1.1. Diferencias entre expertos y SE.

{PRIVADO }EXPERTOS SISTEMAS EXPERTOS

Un experto muere. Depende de la actividadmental y física para solucionar problemas.Constantemente debe practicar para mantenerla eficiencia. Cualquier período significativode desuso puede afectar seriamente eldesarrollo de la mente.

Transferir conocimiento de un humano a otroes un proceso laborioso, lento y costoso,llamado educación.

Documentar la experiencia humana esextremadamente difícil y consume tiempo.

Un experto puede tener diferentes decisionesen idénticas situaciones por factores síquicos,biológicos y físicos.

Un experto es muy escaso. Demanda un gransalario.

Adquiere el conocimiento en forma teórico-práctica.

Los sistemas poseen mecanismos derecuperación.

La transferencia de conocimiento entresistemas es un proceso trivial de copiar unosprogramas y/o archivos de datos.

Documentar un sistema es relativamente fácil.Se realiza un mapeo entre la experienciarepresentada en el sistema y el lenguaje naturalde descripción de dicha representación.

Producen resultados consistentes y reproduci-ble, no son afectados por el medio.

Sólo son costosos en su desarrollo pero baratospara operar.

La adquisición del conocimiento es teórico.

Estructura y manejo del conocimiento. El conocimiento usado por un SE y más porun sistema inteligente, necesita representarse en formas que puedan utilizarse para unrazonamiento. El conocimiento en un SE es organizado, separado del dominio delproblema y del resto del sistema: del mecanismo para solucionar un problema, de lainterfaz del usuario. El conocimiento está representado en diferentes formas,dependiendo de las relaciones causales consideradas. Hay conocimiento superficialque manipula solamente información utilizada en situaciones específicas;conocimiento amplio que representa estructuras internas y causales del sistema yconsidera las interacciones entre sus componentes fundamentales.

Cualquier método que se emplee para representar conocimiento debe incluir múltiplesestructuras y procesos para describir, relacionar y organizar un conjunto de conceptoselementales o entidades. Nos referiremos a conceptos genéricos o entidades usadas enel sistema de representación de conocimiento como objetos.

El proceso de representar conocimiento lleva a la creación de esquemas(representación) diferentes pero muy aproximadas la una de otra. El tipo derepresentación del conocimiento apropiada, en una situación, depende de la cantidadde conocimiento y cómo va a aplicarse. La representación más común es: relaciones de

Características y bases

Universidad Nacional de Colombia 19

objeto atributo valor (OAV), redes semánticas o conceptuales, representación formal(lógica de predicados o proposicional), sistemas de producción (reglas IF-THEN-ELSE), marcos, guiones, árboles o tablas de decisión y otras formas simples ocomplejas.

La red semántica es una colección de nodos encadenados por relaciones. Un nodopuede incluir entidades físicas (sombreros, capas, perros), entidades conceptuales(lugares, números) o descriptores (agotado, viejo, matrona), que forman un conjuntode relaciones OAV.

La representación formal lleva a tener el conocimiento en forma simple, mediantereglas lógicas que expresan teorías, conceptos y relación de objetos con atributosestablecidos y planteando la lógica que usa un experto para hacer sus decisiones.

Por ejemplo:(∀x) pájaro(x) => tiene_alas(x)Para todo x que es pájaro, entonces x tiene alas.

(∀w) petirrojo(w) => pájaro(w)Para todo objeto w que es petirrojo, entonces w es pájaro

Un sistema puede concluir:

(∀z) petirrojo(z) => tiene_alas(z)Para todo z petirrojo, entonces z tiene alas.

En los SE puede tenerse: razonamiento monotónico, no monotónico15 o analógico.

Monotónico es aquel razonamiento en que hechos verdaderos, en un momento dado,permanecen así todo el proceso. Los sistemas crecen continuamente porque se adicionaconocimiento.

No monotónico es aquel razonamiento en que hechos verdaderos, en un tiempoparticular, pueden no serlo en otro tiempo.

Analógico, a través de la experiencia, se forma un modelo "mental" de algunosconceptos; luego, el razonamiento ayuda a entender alguna situación u objeto,buscando analogías e indagando similitudes y diferencias.

El proceso para solucionar problemas se halla en las heurísticas16 definidas y en el 15 Los seres humanos con frecuencia aumentan la verdad absoluta con suposiciones que están dispuestasal cambio dada una mayor información. Un sistema para cada una de las creencias tentativas mantieneun registro de dependencia que sigue la trayectoria versus su justificación, los hechos e inferencias queson empleados para generar tendencias tentativas. 16 Una heurística es un proceso que a partir de un conjunto de operaciones lógicas resuelve una clase de

Inteligencia artificial

Luis Carlos Torres Soler20

motor de inferencia (MI) (ver figura 1.2). La interfaz, las bases de datos o dispositivos(sensores) son adicionales al SE (ver figura 1.3).

0Figura 1.2. Estructura de un sistema experto.

En adición a los esquemas de representación del conocimiento, el proceso derazonamiento del sistema incluye métodos de inducción y/o deducción de acuerdo conel conocimiento y el mismo sistema. La deducción examina hechos en las reglas,decide cuál regla aplicar, y la encadena para llegar a una conclusión; es relativamentesimple en el diseño y consiste básicamente en buscar estrategias. Una regla se usa parauna decisión cuando las premisas de la regla son verdaderas, es decir, hacer que elsistema determine la conclusión como válida.

El MI contiene un interpretador que decide cómo aplicar las reglas para inferir elnuevo conocimiento; y un administrador que decide el orden en el cual las reglas seránaplicadas. En otras palabras, selecciona, decide, interpreta y aplica conocimiento de laBC con el fin de obtener soluciones17.

Un MI está separado del conocimiento; por tanto, puede ser base de varios SE endiferentes campos del conocimiento. Hoy día, en el mercado se consigue fácilmenteShell (concha, un SE con la BC vacía), en la cual se involucran reglas y hechos(construir la BC), según la estructura predefinida y a utilizar.

El control en la deducción provee maneras para manejar problemas separadamente: problemas. Algoritmo es un conjunto de pasos lógicos predefinidos para hallar la solución de una clasede problemas. 17 Existen reglas, llamadas metarreglas, cuya función es indicar en la ejecución en que condiciones debeconsiderarse una regla y no otra.

Características y bases

Universidad Nacional de Colombia 21

cuándo iniciar y cómo resolver conflictos. Para proveer esas soluciones, una variedadde técnicas pueden usarse, solas o en combinación:

a) Encadenamiento hacia atrás (regresiva). Cuando el valor resultado es conocido yse buscan potenciales premisas.

b) Encadenamiento hacia adelante (progresiva). Consiste en tener hechos iniciales eir aplicando reglas buscando deducir una conclusión lógica.

Figura 1.3. Estructura de un sistema inteligente.

Estos procedimientos son muy sencillos, puesto que van recorriendo las reglas desde laprimera hasta llegar a una que pueda aplicarse. El proceso continúa, se aplica unanueva regla; se recorren las reglas hasta hallar un objetivo buscado o hasta cuando yano existen reglas que produzcan alguna conclusión. Al ampliar el número de reglas,como consecuencia se tendrá mayor conocimiento.

Los sistemas con técnicas y estructuras de IA deben construirse de tal forma quefaciliten escribir y desarrollar procesos de búsqueda de soluciones o metas, lo cual esposible si muestran en mayor grado la separación entre los componentes estándares decomputación: datos, operación y control. Esto es, los sistemas tienen apropiadosniveles en los que se identifica una entidad central que está compuesta por: una o másbases de conocimiento (BC); un conjunto de reglas (operaciones bien definidas) y unaestrategia de control. La importancia de identificar un apropiado nivel de descripcionesayuda mucho porque un sistema inteligente puede consistir de muchas BC,operaciones y controles interactuando en una compleja forma computacional (verfigura 1.3).

Un SE no sería muy útil, si el usuario no puede comunicarse con él. Ésta comunicaciónse diseña bidireccionalmente para que el usuario pueda describir su problema al SE, yéste, a su vez, estar en la capacidad de responder presentando las alternativas posiblesy las explicaciones pertinentes. Los sistemas y las herramientas computacionales hanido desarrollándose como lo muestra la figura 1.4. El primer SE comercial, el R1,inició sus actividades en Digital Equipment Corporation (McDermont, 1982). El

Inteligencia artificial

Luis Carlos Torres Soler22

programa se utiliza en la elaboración de pedidos de nuevos sistemas de computación.

Los tipos de experiencia que son de interés en los SBC o SE, pueden ser clasificadosen tres categorías: asociativa, motora y teórica. Los SBC son excelentes pararepresentar conocimiento asociativo. Este tipo de experiencia refleja la habilidadheurística o el conocimiento que es adquirido mayoritariamente, a través de laobservación.

Figura 1.4. Desarrollo de los sistemas.

Puede ser que no se comprenda exactamente lo que ocurre al interior de un sistema(caja negra), pero se pueden asociar entradas o estímulos con salidas o respuestas, pararesolver problemas que han sido previamente conocidos.

La experiencia motora es más física que cognitiva. La habilidad se adquierefundamentalmente a través del ejercicio y la práctica física constante. Los sistemasbasados en conocimiento no pueden emular fácilmente este tipo de experiencia,principalmente por la limitada capacidad de la tecnología robótica; quizás lo que másinteresa es generar conocimiento y no habilidades psicomotoras.

La experiencia teórica y el conocimiento amplio permite que los humanos puedanresolver problemas que no se han visto antes, es decir, no existe una posibilidadasociativa. El conocimiento teórico y profundo se adquiere a través de estudio yentrenamiento formal, así como por medio de la resolución continua de problemas.

Debido a su naturaleza teórica, el conocimiento se olvida fácilmente, a no ser que seuse en forma continua. Al momento, los sistemas convencionales basados en

Características y bases

Universidad Nacional de Colombia 23

conocimiento tienen muchas dificultades para duplicar la experiencia. Sin embargo, losSistemas de Razonamiento Basado en Modelos representan un notable intento deencapsular el conocimiento y razonar con él.

La arquitectura de un sistema basado en conocimiento de alguna manera refleja laestructura cognitiva y los procesos humanos. La primera parte es la memoria a largoplazo, en la que guarda los hechos y reglas de conocimiento (Base de Conocimiento)acerca del dominio en el que tiene experiencia.

Las ventajas en los sistemas expertos es la modularidad, no hay un solo camino pararesponder a un problema y son fáciles de leer, lo que simplifica comprobar suconsistencia. La representación del conocimiento es esencial en inteligencia artificial yes la base de la construcción de un SE o SBC.

Ideas básicas en el área de inteligencia artificial

La IA no se limita sólo a imitar la inteligencia, el razonamiento o lograr unasimulación de éstos, sino que desea llegar a crear máquinas que tengan mente y/omemoria en su sentido pleno18. La IA se basa en que la actividad de pensar, que es unaactividad intelectual, es esencialmente una manipulación racional de símbolos o ideascon procesamiento simbólico; por tanto, la IA siempre trata de:

a. Representar apropiadamente el problema de acuerdo con los requerimientosdel usuario y a través de comunicación natural.

b. Determinar restricciones del problema dado.c. Explorar las alternativas de solución y los procesos de control.d. Solucionar el problema. Para esto se recurre a: generar y probar, ejemplos,

casos, técnicas automáticas de demostración, métodos de aprendizaje,procesos de razonamiento, algoritmos de optimización.

Sin embargo, desde los comienzos hasta la actualidad, la IA ha tenido que hacer frentea una serie de problemas:

a. Los computadores no entienden los significados.b. Los computadores no tienen autoconciencia (emociones, sociabilidad, ...)c. Un computador sólo hace aquello para lo cual está programado.d. Las máquinas no pueden pensar realmente.

La IA generalmente se divide en dos partes:

a. La parte epistemológica: i) qué hechos del mundo son observables, ii) cómopueden representarse y, iii) qué reglas permiten derivar conclusiones legítimas

18 Un sistema que tiene memoria es un sistema que genera estímulos a partir de eventos que han ocurridoanteriormente.

Inteligencia artificial

Luis Carlos Torres Soler24

de esos hechos.b. La parte heurística: cómo buscar espacios de posibilidades y aparear patrones.

La solución a un problema epistemológico puede servir para muchos problemas,soportar diferentes enfoques heurísticos; sin embargo, es difícil formalizar hechos deconocimiento común.

Para la solución de problemas, en IA se tiene en cuenta los procesos de deducción einducción que realiza el ser humano. La deducción permite obtener conclusiones dereglas cuyas premisas son comprobadas. La inducción produce reglas a partir deobservaciones parciales. La inducción en el ser humano puede darse al compararsituaciones que son casi similares, con parámetros desconocidos en una situación dadaasignándole los valores que existen en una situación de referencia.

Las estrategias para el razonamiento pueden hacer uso de la especialización, lareducción al absurdo, de la eliminación de caminos poco prometedores y de lareducción de las diferencias.

Desde el punto de vista de los objetivos, la IA puede considerarse como parte de laingeniería o de la ciencia:

a. El objetivo ingenieril de la IA es resolver problemas reales, actuando como unarmamento de ideas de cómo representar y utilizar el conocimiento, y de cómoensamblar sistemas.

b. El objetivo científico de la IA es explicar varios tipos de inteligencia.Determinar las ideas sobre la representación del conocimiento, del uso que se leda a éste, y del ensamblaje que explican distintas clases de inteligencia.

Semejanzas y diferencias entre bases de datos y bases de conocimiento

Aunque las BD y las BC no son lo mismo, tienen algunas características comunes;pues ambas persiguen el mismo objetivo; almacenar símbolos (datos, información oconocimiento) para reflejar el estado del mundo. Entre las características puedenmencionarse: 1) hay una separación entre los datos del problema específico y elmódulo que los maneja; 2) los datos deben ser entendibles, modulares y mantenibles;3) hay una separación entre los datos y las aplicaciones, con lo cual se permite suutilización en muchas aplicaciones.

En las BD es necesario poseer maneras de organizar y almacenar datos, así comotambién herramientas para analizarlos. Las BC permiten la recuperación rápida delconocimiento; además, el rendimiento de las operaciones de inferencia lógica son tanrápidas como los cálculos por operaciones aritméticas. También se utiliza paralelismotanto a nivel de estructuras de programación como en hardware para aumentar lavelocidad; la interfaz usuario-máquina permite la utilización del lenguaje natural eimágenes.

Características y bases

Universidad Nacional de Colombia 25

La gran diferencia entre BD y BC se explica por medio del siguiente caso. Losvisitantes de un enfermo en una clínica pueden enterarse de la droga que estáadministrándosele, a las horas que debe hacerse y el posible mal que padece, a travésde la historia clínica que se halla a los pies de la cama. Pero no es posible interpretar lasituación, por ejemplo, para continuar la terapéutica establecida en el diagnóstico y elplan de recuperación, ya que para ello se necesita conocimiento médico. Esteconocimiento consta de hechos, prevenciones, comportamientos, información yprocesos heurísticos. La información en la historia clínica es una BD, la BC está en elmédico que tiene al cuidado el enfermo.

El conocimiento adquirido mediante procesos heurísticos constituye una forma distintade llegar a conocer, en la cual tiene aplicabilidad la lógica-matemática. (Con lainformática y el automatismo moderno las heurísticas descubren nuevas y valiosasformas de encontrar y analizar fenómenos que abren y amplían el mundo delconocimiento).

Otro ejemplo. Si visitamos un vecindario en compañía de un niño, él podrá explicarnoscómo se usan los edificios, descifrar y/o describir varias actividades de la gente queencontramos en el camino, indicarnos los diferentes vidrios que se hallan, comoresponder a otras preguntas. El computador de la alcaldía puede proporcionarnoshechos y cifras sobre materiales de una construcción, el avalúo, quién es el dueño, perono ofrecerá ni una fracción del conocimiento que da el niño. El cerebro humano,aunque no es bueno para recordar muchos hechos, es excelente para manipularconocimiento, los computadores son mejores para manejar datos19.

Lenguajes de programación

En principio, cualquier lenguaje de programación puede ser utilizado para desarrollarmecanismos para la IA. Es decir, cualquier lenguaje sirve para programar un sistemaexperto. Atendiendo la forma de estructurar sus instrucciones, se los puede dividir en:Imperativos: PASCAL, C/C++.Funcionales: LISP.Declarativos: PROLOG, CHIP, OPS5.20

Orientados a objetos: SmallTalk, Hypercard, CLOS.21

19 Todo lo que sucede en la parte biológica esta conectado con el cerebro, pero el cerebro tiene unafunción maravillosa que es pensar. ¿Cómo lograr medir o indicar la forma como se piensa? ¿Todas laspersonas piensan igual? ¿El medio ambiente o entorno afecta el pensamiento? 20 La declaración se basa en que para resolver un problema simplemente hay que describirlo y definirciertas reglas para obtener una solución. Los lenguajes declarativos tienen la ventaja (y desventaja) queen ellos no se controlan detalles como posiciones de memoria, compactación del código para mejorareficiencia, etc., pues son de mayor nivel, aunque suelen ser menos eficientes en la interactividad. 21 Los lenguajes orientados a objetos se basan en unos entes (los objetos) que contienen atributos (datos)y código que trabaja con esos datos con la particularidad que los objetos son independientes unos deotros. Los objetos tienen la ventaja de ser lo más parecido al mundo real, pues en el mundo real hay

Inteligencia artificial

Luis Carlos Torres Soler26

Tradicionalmente LISP y PROLOG han sido los lenguajes que se han utilizado parala programación de sistemas inteligentes. Estos lenguajes ofrecen característicasespecialmente diseñadas para manejar problemas basados en símbolos. Por este motivose les conoce como lenguajes de inteligencia artificial. Una de las principalescaracterísticas que comparten los lenguajes LISP y PROLOG, como consecuencia desu respectiva estructura, es que se utilizan para escribir procesos capaces de examinar aotros programas, incluyendo a ellos mismos. Esta capacidad se requiere, por ejemplo,para hacer que el programa explique las conclusiones que ha dado. Esto puede hacerseporque se permite al programa examinar su propio modo de operación.

LISPSu nombre se deriva de LISt Processor. LISP fue el primer lenguaje paraprocesamiento simbólico. John McCarthy lo desarrolló en 1958, en el Instituto deTecnología de Massachusetts (MIT), inicialmente como un lenguaje de programacióncon el cual los investigadores pudieron implementar eficientemente programas decomputador capaces de razonar. Rápidamente LISP se hizo popular por su capacidadde manipular símbolos y fue escogido para el desarrollo de muchos sistemas de IA.Actualmente, LISP es utilizado en varios dominios que incluyen la escritura decompiladores, sistemas para diseño VLSI, sistemas para diseño mecánico asistido porcomputador (AUTOCAD), animaciones gráficas y sistemas basados en conocimiento.

PROLOGPROgramming in LOGic (PROLOG), es un lenguaje de programación ampliamenteutilizado en IA. PROLOG se desarrolló en Francia, en 1973 por Alain Colmenauer ysu equipo de investigación en la Universidad de Marsella. Inicialmente fue utilizadopara el procesamiento de lenguaje natural, pero posteriormente se popularizó entre losdesarrolladores de aplicaciones de IA por su capacidad de manipulación simbólica.Utilizando los resultados del grupo francés, Robert Kowalski de la Universidad deEdimburgo, en Escocia, desarrolló la teoría de la programación lógica. La sintaxispropuesta en Edimburgo, se considera el estándar de facto del PROLOG.

A partir de 1981 tuvo una importante difusión en todo el mundo, especialmente porquelos japoneses decidieron utilizar PROLOG para el desarrollo de sus sistemas decomputación de quinta generación. Actualmente existen varios dialectos del PROLOGpara diferentes plataformas.

OPS5Official Production System 5 (OPS5), es un lenguaje para ingeniería cognoscitiva quesoporta el método de representación del conocimiento en forma de reglas. Incorpora un

objetos con características y no sólo estructuras de datos. Además, con la orientación a objetos es másfácil la reutilización de las clases (generalidades de los objetos) y se generan nuevos objetos heredandolas características más sobresalientes.

Características y bases

Universidad Nacional de Colombia 27

módulo unificador, un intérprete que incluye un mecanismo de encadenamientoprogresivo, y herramientas para edición y depuración de los programas. OPS5 es unmiembro de la familia de lenguajes de programación desarrollados en la UniversidadCarnegie - Mellon. Varias compañías han desarrollado implementaciones comercialesde OPS5, para diferentes plataformas.

Resumen

La importancia de la IA es innegable, y es un campo de investigación de trabajo fértily productivo. La IA estudia la construcción de programas que exhibancomportamiento inteligente; mecanismos que aprenden (basados en lo que sabe y nosabe); programas que hacen inducción y extrapolación, búsquedas heurísticas paraalcanzar un objetivo al menor coste posible (por ejemplo: búsqueda en espacios deestados, robots). Analiza la adquisición y representación del conocimiento. Se empleapara mejores sistemas inteligentes la lógica difusa, estrategias evolutivas y lenguajesdeclarativos o funcionales.

El interés por construcción de mecanismos que exhiban comportamiento inteligenteabarca el estudio de esquemas para la representación del conocimiento, en especialmarcos (frame), redes semánticas, lógica de predicados, sistemas de producción. Sedesarrollan teorías, fundamentos; lenguajes y estructuras matemáticas asociadas.

Desde mediados de la década del 60, cuando se desarrollaron los primeros SE, se haadelantado mucho en su construcción. De los últimos SE puede deducirse:

a. En los sistemas con éxito, el conocimiento está ampliamente definido, aunquese refiere sólo a una área en particular.

b. La cantidad de conocimiento depende de las tareas por realizar.c. La transferencia de conocimiento de los expertos al sistema requiere invertir

grandes esfuerzos.

Por lo tanto existen dos puntos importantes en los programas que utilizan técnicas deIA:

* Métodos para la representación y uso del conocimiento.* Métodos para realizar búsquedas y/o solucionar problemas.

Estos dos puntos interactúan fuertemente. La representación del conocimientodetermina el método que ha de aplicarse para solucionar problemas. Por ejemplo, si elconocimiento se representa mediante lógica de predicados, entonces puede usarseresolución para hallar inferencia. Si el conocimiento se representa por reglas, lasolución puede efectuarse mediante búsqueda hacia adelante o hacia atrás. Si elconocimiento se representa mediante redes semánticas o árboles, entonces es útilbúsquedas gráficas.

Inteligencia artificial

Luis Carlos Torres Soler28

El papel crucial que el conocimiento desempeña en los programas con técnicas de IAes el mensaje fundamental de este texto. El conocimiento cumple dos importantesfunciones: 1) definir qué puede hacerse para solucionar problemas y qué significadotiene el haber resuelto el problema; 2) aconsejar la mejor solución o la mejor forma desolucionarlo.

Las técnicas de computación neuronal, de computación evolutiva, los planteamientosde lógica difusa permitirán implementar métodos de aprendizaje, evolución yrazonamiento aproximado, entre otras. El interés del ser humano por llegar a simularlos procesos inteligentes del cerebro humano es muy grande, ¿será posible que lasmáquinas razonen como el ser humano?