diff options
| author | Juan Marin Noguera <juan@mnpi.eu> | 2022-10-05 22:36:12 +0200 |
|---|---|---|
| committer | Juan Marin Noguera <juan@mnpi.eu> | 2022-10-05 22:36:29 +0200 |
| commit | 02b46d32b52aba7bdaf4816e7a934e6d33c39e74 (patch) | |
| tree | 32dace95c9ec5978aec6fceaf033aa2e01c64c54 /dsi/n3.lyx | |
| parent | eddd61b056d47adb0c99779545ac8e4b59a467b5 (diff) | |
DSI tema 3
Diffstat (limited to 'dsi/n3.lyx')
| -rw-r--r-- | dsi/n3.lyx | 674 |
1 files changed, 674 insertions, 0 deletions
diff --git a/dsi/n3.lyx b/dsi/n3.lyx new file mode 100644 index 0000000..8613afa --- /dev/null +++ b/dsi/n3.lyx @@ -0,0 +1,674 @@ +#LyX 2.3 created this file. For more info see http://www.lyx.org/ +\lyxformat 544 +\begin_document +\begin_header +\save_transient_properties true +\origin unavailable +\textclass book +\begin_preamble +\input{../defs} +\end_preamble +\use_default_options true +\maintain_unincluded_children false +\language spanish +\language_package default +\inputencoding auto +\fontencoding global +\font_roman "default" "default" +\font_sans "default" "default" +\font_typewriter "default" "default" +\font_math "auto" "auto" +\font_default_family default +\use_non_tex_fonts false +\font_sc false +\font_osf false +\font_sf_scale 100 100 +\font_tt_scale 100 100 +\use_microtype false +\use_dash_ligatures true +\graphics default +\default_output_format default +\output_sync 0 +\bibtex_command default +\index_command default +\paperfontsize default +\spacing single +\use_hyperref false +\papersize default +\use_geometry false +\use_package amsmath 1 +\use_package amssymb 1 +\use_package cancel 1 +\use_package esint 1 +\use_package mathdots 1 +\use_package mathtools 1 +\use_package mhchem 1 +\use_package stackrel 1 +\use_package stmaryrd 1 +\use_package undertilde 1 +\cite_engine basic +\cite_engine_type default +\biblio_style plain +\use_bibtopic false +\use_indices false +\paperorientation portrait +\suppress_date false +\justification true +\use_refstyle 1 +\use_minted 0 +\index Index +\shortcut idx +\color #008000 +\end_index +\secnumdepth 3 +\tocdepth 3 +\paragraph_separation indent +\paragraph_indentation default +\is_math_indent 0 +\math_numbering_side default +\quotes_style french +\dynamic_quotes 0 +\papercolumns 1 +\papersides 1 +\paperpagestyle default +\tracking_changes false +\output_changes false +\html_math_output 0 +\html_css_as_file 0 +\html_be_strict false +\end_header + +\begin_body + +\begin_layout Standard +Desde siempre la humanidad ha intentado hacer máquinas para resolver problemas. + En la antigua Grecia y el antiguo Egipto encontramos estatuas móviles operadas + por monjes; en el siglo XIII Alberto Magno creó una cabeza parlante y un + mayordomo; en el XVII, René descartes creó una muñeca autómata; en el XVIII, + Jacques de Vaucanson creó músicos de tamaño natural y un pato con aparato + digestivo, y Pierre Jaquet-Droz un pianista, un dibujante y un escritor, + y en el siglo XIX se crearon máquinas que podían hacer y contestar preguntas. +\begin_inset Foot +status open + +\begin_layout Plain Layout +Por supuesto, no he verificado ninguno de estos datos, y aparecen en unas + diapositivas que llaman a Alan Turing +\begin_inset Quotes cld +\end_inset + +Alan Touring +\begin_inset Quotes crd +\end_inset + + así que no son muy fiables. +\end_layout + +\end_inset + + +\end_layout + +\begin_layout Standard +Los primeros ordenadores los hicieron británicos y estadounidenses. +\begin_inset Foot +status open + +\begin_layout Plain Layout +Esto es, si no cuentas el que hicieron los nazis. +\end_layout + +\end_inset + + Alan Turing creó un computador de propósito general en base a operadores + lógicos, y en 1946 se crearon en EEUU los primeros ordenadores analógicos, + con operadores numéricos. + También por esa época se empezó a trabajar en psicología cognitiva y la + creación de programas para emular el pensamiento humano. +\end_layout + +\begin_layout Standard +En 1943, McCulloch y Pitts crearon una red de neuronas artificiales que + podía realizar cualquier operación +\begin_inset Foot +status open + +\begin_layout Plain Layout +Representable en las 40 neuronas o así que tenía. +\end_layout + +\end_inset + + y tenía capacidad de aprendizaje. + Así surgió la +\series bold +rama conexionista +\series default +, que consideraba clave la creación de redes neuronales para conseguir inteligen +cia. + En 1956 se acuña el término inteligencia artificial hospedado por McCarthy + e IBM y al que asistieron McCulloch, Pitts, von Neumann, Minsky, Edmonds + y Shannon. +\begin_inset Foot +status open + +\begin_layout Plain Layout +O algo así, está todo muy esquemático, pero de todas formas no va a preguntar + por esto. +\end_layout + +\end_inset + + +\end_layout + +\begin_layout Standard +De los 50 a los 70 se dan los primeros éxitos en IA, con programas generales + para resolver problemas como GPS de Newell y Simon en 1963, STRIPS de Fikes + y Nilsson en 1971, el programa de damas de Samuel +\begin_inset Foot +status open + +\begin_layout Plain Layout +Que por el nombre no parece muy general. +\end_layout + +\end_inset + + y Lisp de McCarthy. +\end_layout + +\begin_layout Standard +A finales de los 60 se ve que muchos de los métodos generales no son escalables + y que es difícil modelar situaciones y sentido común que se suelen expresar + en lenguaje natural, por lo que en 1966 Estados Unidos cancela la ayuda + a estas investigaciones y en 1970 Reino Unido hace lo propio en base al + +\begin_inset Quotes cld +\end_inset + +informe Lighthill +\begin_inset Quotes crd +\end_inset + +. +\end_layout + +\begin_layout Standard +Esto lleva a una etapa de pesimismo en torno a los 70, pero también en esta + época nacen los sistemas basados en conocimiento (SBC), una de las técnicas + más usadas en inteligencia artificial junto con redes neuronales, lógica + difusa, algoritmos genéticos y sistemas híbridos. + Algunos de los primeros SBC son: +\end_layout + +\begin_layout Enumerate + +\series bold +DENDRAL +\series default + (1969), el primer SBC y proyecto de programación heurística, +\begin_inset Foot +status open + +\begin_layout Plain Layout +Si no se cuentan los proyectos anteriores como el algoritmo A*. +\end_layout + +\end_inset + + que busca determinar estructuras moleculares a partir de mediciones de + un espectroscopio. + +\end_layout + +\begin_layout Enumerate + +\series bold +MYCIN +\series default + (1972), para diagnóstico y terapia de enfermedades infecciosas, que usa + incertidumbre mediante factores de certeza. + +\end_layout + +\begin_layout Enumerate + +\series bold +PROSPECTOR +\series default + (1979), un SBC probabilista para prospección minera que incluye una red + semántica, y que encontró un depósito de molibdeno haciendo a un rico 100 + millones de dólares más rico. +\end_layout + +\begin_layout Enumerate + +\series bold +XCON +\series default + (1980), para logística de pedidos de ordenadores VAX, con una precisión + de entre el 95 y el +\begin_inset Formula $\unit[98]{\%}$ +\end_inset + +, que supuso un ahorro anual de 25 millones de dólares. +\end_layout + +\begin_layout Enumerate + +\series bold +INTERNIST +\series default + (1982), para medicina interna. +\end_layout + +\begin_layout Enumerate + +\series bold +LES +\series default + (1987), para monitorizar y diagnosticar procesos de carga de oxígeno líquido + en un transbordador espacial. +\end_layout + +\begin_layout Standard +Por otro lado, en 1973 surge la lógica difusa, en 1976 la teoría de la evidencia +, en 1984 la de la incertidumbre, y sobre esa época surge +\begin_inset Quotes cld +\end_inset + +Ops +\begin_inset Quotes crd +\end_inset + +, el lenguaje Prolog y +\begin_inset Quotes cld +\end_inset + +Marcos +\begin_inset Quotes crd +\end_inset + + de Minsky. +\begin_inset Foot +status open + +\begin_layout Plain Layout +Esto es lo mejor que he podido hacer con una enumeración inconexa de términos. +\end_layout + +\end_inset + + Surgen representaciones de conocimiento manipulables por ordenador con + esquemas de representación adaptados al tipo de problema, procesos de razonamie +nto para usar dicho conocimiento y sistemas de aprendizaje y procesamiento + del lenguaje natural. + La mayor potencia de los ordenadores lleva a la aparición de los primeros + entornos de desarrollo. +\end_layout + +\begin_layout Standard +En los 80 comienza el +\series bold +periodo industrial +\series default +, con empresas que poseen equipos propios de IA. + A finales de la década hay una crisis que en los 90 es resuelta por nuevas + metodologías de ingeniería del conocimiento, resultando en éxitos como + +\series bold +MARVEL +\series default +, para monitorización y análisis de la telemetría del +\lang english +Voyager +\lang spanish +; +\series bold +PEGASUS +\series default +, una interfaz inteligente en +\begin_inset Quotes cld +\end_inset + +LN +\begin_inset Quotes crd +\end_inset + + para consultar información y reservar vuelos; +\emph on +\lang english +soft bots +\emph default +\lang spanish + en la web semántica; ERP, o CRM. +\end_layout + +\begin_layout Standard +Un +\series bold +sistema inteligente +\series default + es uno que usa técnicas que no garantizan soluciones aceptables, sino que + esto depende del contexto y del dominio. + Los +\series bold +sistemas basados en conocimiento +\series default + (SBC) son un sistema informático que emula la capacidad de razonamiento + del ser humano, usando sus mismas fuentes de conocimiento del dominio específic +o, con estructuras de control separadas del conocimiento del domino para + poder usarse en distintos dominios. + Un +\series bold +sistema experto +\series default + es un SBC enfocado a resolver problemas reales pequeños pero intelectualmente + complejos, como un tutor inteligente o un sistema inteligente CASE. +\end_layout + +\begin_layout Standard +Un SBC está formado por: +\end_layout + +\begin_layout Enumerate +Una +\series bold +memoria de trabajo +\series default + o +\series bold +base de hechos +\series default +, que contiene la información para la ejecución de una tarea particular, + tanto de hechos establecidos como de metas a alcanzar. + Algunas partes son permanentes, como los hechos establecidos y los datos, + y otras son temporales del proceso de resolución en curso, actuando como + una memoria a corto plazo que también almacena todos los cambios en la + información que se producen en el sistema. +\end_layout + +\begin_layout Enumerate +Una +\series bold +base de conocimiento +\series default +, en la que se almacena la mayoría del conocimiento de resolución de problemas. + Este suele estar organizado en +\series bold +reglas +\series default +, con un +\series bold +antecedente +\series default + que contiene condiciones de la existencia de elementos en la base de hechos + que deben cumplirse para ejecutar la regla y un +\series bold +consecuente +\series default + que puede modificar la base de hechos o ejecutar acciones. +\end_layout + +\begin_deeper +\begin_layout Standard +Las reglas son independientes y no pueden referenciar una a otra, sino que + la comunicación entre ellas debe hacerse a través de la base de hechos. + Al estar basadas en la experiencia, no reflejan implicaciones lógicas sino + convicciones del experto, por lo que muchas veces se usan medidas de certidumbr +e de la regla en sí. +\end_layout + +\begin_layout Standard +Existen formalismos para tratar la incertidumbre y especificar conclusiones + complejas, y en algunos el consecuente de las reglas puede activar o desactivar + un conjunto de estas. +\end_layout + +\end_deeper +\begin_layout Enumerate +Un +\series bold +motor de inferencia +\series default + encargado de activar reglas y encadenarlas para resolver problemas. + Este primero carga los hechos de base en la base de hechos. + Entonces, en bucle: +\end_layout + +\begin_deeper +\begin_layout Enumerate +Si se da la condición de terminación, que normalmente corresponde a que + se ha verificado un hecho objetivo al que se quería llegar, o si se ejecuta + una acción de parada, normalmente por ausencia de otras reglas aplicables, + para. +\end_layout + +\begin_layout Enumerate + +\series bold +Equipara +\series default + las bases de conocimiento y de hechos para obtener un conjunto de reglas + que se pueden aplicar, el +\series bold +conjunto conflicto +\series default + ( +\series bold +CC +\series default +). +\end_layout + +\begin_layout Enumerate + +\series bold +Resuelve +\series default + el conjunto conflicto, es decir, selecciona la regla a aplicar, de manera + informada o desinformada. +\end_layout + +\begin_layout Enumerate +Aplica la regla y actualiza la base de hechos. +\end_layout + +\begin_layout Standard +El coste computacional de la iteración es la suma del +\series bold +coste de control +\series default +, de la equiparación y resolución, y el +\series bold +coste de aplicación +\series default +, de modo que con una resolución informada predomina el coste de control + y con una desinformada predomina el de aplicación. + El motor de inferencia debe ser sistemático y eficiente y no causar bucles + infinitos, y se puede implementar con dos modos de inferencia: +\end_layout + +\begin_layout Enumerate + +\series bold +Encadenamiento hacia delante. + +\series default + Se parte de la colección de hechos y se van aplicando reglas para generar + nuevos hechos hasta que se llegue al objetivo o no se puedan aplicar más + reglas. + Aplicar una regla supone actualizar la base de hechos y, en algunos casos, + realizar otras acciones. +\end_layout + +\begin_layout Enumerate + +\series bold +Encadenamiento hacia atrás. + +\series default + Se parte de las hipótesis y se aplican reglas hacia atrás para obtener + qué hechos hacen falta para verificarla. + Primero se eligen todas las reglas cuyo consecuente sea el objetivo, y + si en una de ellas se verifican todas las premisas del antecedente, el + objetivo queda verificado, y de lo contrario las premisas no verificadas + son nuevos objetivos. +\end_layout + +\begin_layout Standard +La elección del mecanismo de inferencia depende del número de estados iniciales + y de metas, siendo preferible moverse del conjunto más pequeño al más grande; + del factor de ramificación en cada caso, que se puede medir según el tamaño + del conjunto conflicto, siendo preferible ir en la dirección con menor + factor de ramificación, y de si se debe justificar el razonamiento, en + cuyo caso es importante ir en la dirección que mejor se aproxime a la forma + de pensar del usuario. +\end_layout + +\end_deeper +\begin_layout Enumerate +Un +\series bold +módulo de explicación +\series default +, para convencer a los usuarios de que el razonamiento es correcto y las + soluciones son apropiadas y para permitir a los desarrolladores verificar + que el mecanismo de inferencia se adecúa al problema. +\end_layout + +\begin_deeper +\begin_layout Standard +El módulo debe responder de forma comprensible y completa a preguntas sobre + el conocimiento y el razonamiento como cómo se ha llegado a la conclusión, + cómo se usa la información, qué decisión se ha tomado para un subproblema, + por qué no se ha usado o necesitado un tipo de información concreto, por + qué no se ha podido llegar a una conclusión, cómo se describe la información + necesaria en el proceso de resolución, o qué está haciendo el sistema. +\end_layout + +\begin_layout Standard +Incluye un módulo para analizar el estado del proceso del razonamiento y + otro para consultar el estado del conocimiento del problema que tiene el + sistema y el proceso de resolución el curso, y debe ser fácil de usar. +\end_layout + +\end_deeper +\begin_layout Enumerate + +\series bold +Interfaces de usuario +\series default +, de al menos dos tipos: +\end_layout + +\begin_deeper +\begin_layout Enumerate +Una para usuarios no avanzados, que permita introducir la información y + obtener las respuestas y explicaciones. + Esta puede ser todo lo compleja que se requiera, incluso con interfaces + de usuario inteligentes que se adapten a los conocimientos del usuario. +\end_layout + +\begin_layout Enumerate +Una para usuarios avanzados que permita la edición de la base de conocimiento + y la depuración. + Se divide en: +\end_layout + +\begin_deeper +\begin_layout Enumerate +Una interfaz para el experto adaptada a la representación de conocimiento, + que permita la edición controlada de la base de conocimiento incluyendo + el vocabulario y la terminología a utilizar y evite la introducción de + errores. +\end_layout + +\begin_layout Enumerate +Una para el ingeniero del conocimiento, que permita edición avanzada de + la base de conocimiento, acceso al resto de módulos del SBC y depuración + del sistema en tiempo de ejecución. +\end_layout + +\end_deeper +\end_deeper +\begin_layout Standard +Todos los componentes salvo la base de conocimiento existen en una +\series bold +\emph on +\lang english +shell +\series default +\emph default +\lang spanish +, una herramienta específica para la representación de conocimiento. +\end_layout + +\begin_layout Standard +Los SBC son eficientes, potentes y flexibles, pues una regla solo requiere + la información necesaria para su ejecución. + Son modulares, separando el conocimiento del proceso de resolución, y naturales +, permitiendo a los expertos expresar su conocimiento de resolución de problemas + como reglas en la mayoría de situaciones. + Sin embargo, puede ser difícil establecer reglas, pues un formalismo del + tipo +\begin_inset Quotes cld +\end_inset + +si-entonces +\begin_inset Quotes crd +\end_inset + + entraña cierta rigidez a la hora de expresar las condiciones en los antecedente +s y premisas en distintas reglas, y también es difícil diseñar reglas concretas, + requiriendo haber estudiado el dominio de aplicación con suficiente profundidad. + También es difícil usar las reglas, pues estas solo se pueden comunicar + a través de la base de hechos y esto es un inconveniente a la hora de ejecutar + algoritmos. +\end_layout + +\begin_layout Standard +Los SBC tienen una serie de diferencias respecto a sistemas convencionales + como los de resolución de circuitos eléctricos o cálculo de estructuras: +\end_layout + +\begin_layout Itemize +Separan el conocimiento de las estructuras de control, incluyen explicaciones + y suelen usar +\emph on +\lang english +shells +\emph default +\lang spanish +, mientras que los sistemas convencionales solo separan algoritmos de datos, + no dan explicaciones y usan gestores de bases de datos convencionales. +\end_layout + +\begin_layout Itemize +Interpretan datos con métodos declarativos no deterministas, intentando + seguir líneas de razonamiento similares a las de los humanos, son muy interacti +vos y contemplan abstracción, incertidumbre, aprendizaje, etc., mientras + que los sistemas convencionales manipulan datos con algoritmos, centrándose + en la solución y no en la forma de obtenerla, y usan bases de datos y procesos + predecibles, fiables y exactos. +\end_layout + +\begin_layout Itemize +Destacan en problemas mal definidos,que no se pueden especificar con precisión + y requieren conocimiento heurístico, normalmente en dominios sin experiencia + previa computacional, mientras que los sistemas convencionales se usan + en problemas bien definidos, especificables sin ambigüedad y resueltos + por algoritmos específicos, normalmente en dominios con experiencia computacion +al. +\end_layout + +\begin_layout Itemize +El conocimiento usado es tácito, numérico, simbólico y con incertidumbre, + procedente de la interacción con expertos, mientras que el de sistemas + convencionales es algorítmico y los datos son numéricos, sin incertidumbre + y procedentes de la interacción con usuarios. +\end_layout + +\end_body +\end_document |
