Sei sulla pagina 1di 17

Introduccin Se denomina inteligencia artificial a la rama de la ciencia informtica dedicada al desarrollo de agentes racionales no vivos.

Para explicar la definicin anterior, entindase a un agente como cualquier cosa capaz de percibir su entorno (recibir entradas), procesar tales percepciones y actuar en su entorno (proporcionar salidas). Y entindase a la racionalidad como la caracterstica que posee una eleccin de ser correcta, ms especficamente, de tender a maximizar un resultado esperado. (Este concepto de racionalidad es ms general y por ello ms adecuado que inteligencia para definir la naturaleza del objetivo de esta disciplina). Por lo tanto, y de manera ms especfica la inteligencia artificial es la disciplina que se encarga de construir procesos que al ser ejecutados sobre una arquitectura fsica producen acciones o resultados que maximizan una medida de rendimiento determinada, basndose en la secuencia de entradas percibidas y en el conocimiento almacenado en tal arquitectura. Existen distintos tipos de conocimiento y medios de representacin del conocimiento. El cual puede ser cargado en el agente por su diseador o puede ser aprendido por el mismo agente utilizando tcnicas de aprendizaje. Tambin se distinguen varios tipos de procesos vlidos para obtener resultados racionales, que determinan el tipo de agente inteligente. De ms simples a ms complejos, los cinco principales tipos de procesos son:

Ejecucin de una respuesta predeterminada por cada entrada (anlogas a actos reflejos en seres vivos). Bsqueda del estado requerido en el conjunto de los estados producidos por las acciones posibles. Algoritmos genticos (Anlogo al proceso de evolucin de las cadenas de ADN). Redes neuronales artificiales (Anlogo al funciomiento fsico del cerebro de animales y humanos). Razonamiento mediante una Lgica formal (Anlogo al pensamiento abstracto humano).

Tambin existen distintos tipos de percepciones y acciones, pueden ser obtenidas y producidas, respectivamente por sensores fsicos y sensores mecnicos en mquinas, pulsos elctricos u pticos en computadoras, tanto como por entradas y salidas de bits de un software y su entorno software. Varios ejemplos se encuentran en el rea de control de sistemas, planificacin automtica, la habilidad de responder a diagnsticos y a consultas de los consumidores, reconocimiento de escritura, reconocimiento del habla y reconocimiento de patrones. Los sistemas de IA actualmente son parte de la

rutina en campos como economa, medicina, ingeniera y la milicia, y se ha usado en gran variedad de aplicaciones de software, juegos de estrategia como ajedrez de computador y otros videojuegos.

Escuelas de pensamiento La IA se divide en dos escuelas de pensamiento:


La Inteligencia Artificial Convencional La Inteligencia Computacional

Inteligencia Artificial Convencional Se conoce tambin como IA simblico-deductiva e IA dbil. Est basada en el anlisis formal y estadstico del comportamiento humano ante diferentes problemas:

Razonamiento basado en casos: Ayuda a tomar decisiones mientras se resuelven ciertos problemas concretos. Sistemas expertos: Infieren una solucin a travs del conocimiento previo del contexto en que se aplica y de ciertas reglas o relaciones. Redes bayesianas: Propone soluciones mediante inferencia estadstica. Inteligencia artificial basada en comportamientos: que tienen autonoma y pueden auto-regularse y controlarse para mejorar.

Inteligencia Artificial Computacional Artculo principal: Inteligencia Computacional La Inteligencia Computacional (tambin conocida como IA subsimblicainductiva o IA fuerte) implica desarrollo o aprendizaje interactivo (por ejemplo, modificaciones interactivas de los parmetros en sistemas conexionistas). El aprendizaje se realiza basndose en datos empricos.

Historia

Las ideas ms bsicas se remontan a los griegos, antes de Cristo. Aristteles (384-322 a.C.) fue el primero en describir un conjunto de reglas que describen una parte del funcionamiento de la mente para obtener conclusiones racionales, y Ktesibios de Alejandra (250 a.C.) construy la primera mquina autocontrolada, un regulardor del flujo de agua (racional pero sin razonamiento). En 1315 d.C Ramn Lull tuvo la idea de que el razonamiento poda ser efectuado de manera artificial.

En 1943 Warren McCulloch y Walter Pitts presentaron su modelo de neuronas artificiales, el cual se considera el primer trabajo del campo, an cuando todava no exista el trmino. Los primeros avances importantes comenzaron a principios de los aos 1950 con el trabajo de Alan Turing, a partir de lo cual la ciencia ha pasado por diversas situaciones. En 1956 fue inventado el trmino inteligencia artificial por John McCarthy, Marvin Minsky y Claude Shannon en la Conferencia de Dartmouth , un congreso en el que se hicieron previsiones triunfalistas a diez aos que jams se cumplieron, lo que provoc el abandono casi total de las investigaciones durante quince aos. El matemtico sudafricano, Seymour Papert, tambin es considerado pionero en esta ciencia. En 1980 la historia se repiti con el desafo japons de la quinta generacin de computadoras, que dio lugar al auge de los sistemas expertos pero que no alcanz muchos de sus objetivos, por lo que este campo sufri una nueva interrupcin en los aos noventa. En la actualidad se est tan lejos de cumplir la prueba de Turing como cuando se formul: Existir Inteligencia Artificial cuando no seamos capaces de distinguir entre un ser humano y un programa de computadora en una conversacin a ciegas. Como ancdota, muchos de los investigadores sobre IA sostienen que "la inteligencia es un programa capaz de ser ejecutado independientemente de la mquina que lo ejecute, computador o cerebro".

Fundamentos y filosofa Como ocurre casi siempre en el caso de una ciencia recin creada, la inteligencia artificial aborda tantas cuestiones confundibles en un nivel fundamental y conceptual que, adjunto a lo cientfico, es necesario hacer consideraciones desde el punto de vista de la filosofa. Gran parte de esta ciencia se junta con temas en la filosofa de la mente, pero hay ciertos temas particulares a la IA. Por ejemplo:

En qu consiste la inteligencia? Cmo la reconoceramos en un objeto no humano, si la tuviera? Qu sustancia y organizacin se requiere? Es posible que una criatura hecha de metal, por ejemplo, posea una inteligencia comparable a la humana? Aunque una criatura no orgnica pudiera solucionar problemas de la misma manera que un humano, tendra o podra tener conciencia y emociones? Suponiendo que podemos hacer robots con una inteligencia comparable a la nuestra, debemos hacerlo?

Durante ms de 2000 aos de tradicin en filosofa, han ido surgiendo diversas teoras del razonamiento y del aprendizaje, simultneamente con el punto de vista de que la mente se reduce al funcionamiento fsico. La psicologa ofrece herramientas que permiten la investigacin de la mente humana, as como un lenguaje cientfico para expresar las teoras que se van obteniendo. La lingstica ofrece teoras para la estructura y significado del lenguaje, as como la ciencia de la computacin, de la que se toman las herramientas que permiten que la Inteligencia Artificial sea una realidad.

Empez con el nacimiento de Platn en 428 a.C. y con lo que aprendi de Scrates. La temtica de su obra fue muy diversa: poltica, matemtica, fsica, astronoma y diversas ramas de la filosofa. El filsofo Hubet Dreyfus (1979) afirma que: Bien podra afirmarse que la historia de la inteligencia artificial comienza en el ao 450 a.C., cuando Platn cita un dilogo en el que Scrates le pregunta a Eutidemo: "Deseara saber cul es la caracterstica de la piedad que hace que una accin se pueda considerar como pa... y as la observe y me sirva de norma para juzgar tus acciones y las de otros." Los filsofos delimitaron las ms importantes ideas relacionadas con la inteligencia artificial, pero para pasar de all a una ciencia formal era necesario contar con una formalizacin matemtica en tres reas principales: la computacin, la lgica y la probabilidad. La idea de expresar un clculo mediante un algoritmo formal se remota a la poca de Jwarizmi, matemtico rabe del siglo IX, con cuyas obras se introdujeron en Europa los nmeros arbigos y el lgebra (de su nombre al-Jwarizmi deriva la palabra algoritmo). El hombre se ha aplicado a s mismo el nombre cientfico de Homo sapiens como una valoracin de la trascendencia de nuestras habilidades mentales tanto para nuestra vida cotidiana como para nuestro propio sentido de identidad. Los esfuerzos del campo de la inteligencia artificial se enfocan en lograr la compresin de entidades inteligentes. Una de las razones de su estudio es el aprender ms de nosotros mismos. A diferencia de la filosofa y de la psicologa, que tambin se ocupan de la inteligencia, los esfuerzos de la inteligencia artificial estn encaminados tanto a la construccin de entidades como a su compresin. Otra razn por la cual se estudia la inteligencia artificial es debido a que ha sido posible crear sorprendentes y diversos productos de trascendencia. Nadie podra pronosticar con toda precisin lo que se podra esperar en el futuro, es evidente que las computadoras que posean una inteligencia a nivel humano tendrn repercusiones muy importantes en nuestra vida diaria as como el devenir de la civilizacin. El problema que aborda la inteligencia artificial es uno de los ms complejos: Cmo es posible que un diminuto y lento cerebro, sea biolgico o electrnico, tenga capacidad de percibir, comprender, predecir y manipular un mundo que en tamao y complejidad lo excede con creces?, pero a diferencia de la investigacin en torno al desplazamiento mayor que la velocidad de la luz o de un dispositivo antigravitatorio, el investigador del campo de la inteligencia artificial cuenta con pruebas contundentes de que tal bsqueda es totalmente factible. La inteligencia artificial permite al hombre emular en las mquinas el comportamiento humano, tomando como base el cerebro y su funcionamiento, de manera tal que se pueda alcanzar cierto razonamiento. 1)Sistema Experto (SE) Se puede entender como una rama de la inteligencia artificial. Estos sistemas imitan las actividades de un humano para resolver problemas de distinta ndole (no necesariamente tiene que ser de inteligencia artificial). Tambin se dice que un SE se basa en el conocimiento declarativo (hechos sobre objetos,

situaciones) y el conocimiento de control (informacin sobre el seguimiento de una accin). Para que un sistema experto sea herramienta efectiva, los usuarios deben interactuar de una forma fcil, reuniendo dos capacidades para poder cumplirlo:

1. Explicar sus razonamientos o base del conocimiento: los sistemas


expertos se deben realizar siguiendo ciertas reglas o pasos comprensibles de manera que se pueda generar la explicacin para cada una de estas reglas, que a la vez se basan en hechos. 2. Adquisicin de nuevos conocimientos o integrador del sistema: son mecanismos de razonamiento que sirven para modificar los conocimientos anteriores. Sobre la base de lo anterior se puede decir que los sistemas expertos son el producto de investigaciones en el campo de la inteligencia artificial ya que esta no intenta sustituir a los expertos humanos, sino que se desea ayudarlos a realizar con ms rapidez y eficacia todas las tareas que realiza.

Debido a esto en la actualidad se estn mezclando diferentes tcnicas o aplicaciones aprovechando las ventajas que cada una de estas ofrece para poder tener empresas ms seguras. Un ejemplo de estas tcnicas sera los agentes que tienen la capacidad de negociar y navegar a travs de recursos en lnea; y es por eso que en la actualidad juega un papel preponderante en los sistemas expertos. Estructura bsica de un SE Un Sistema Experto est conformado por:

Base de conocimientos (BC): Contiene conocimiento modelado extrado del dilogo con el experto. Base de hechos (Memoria de trabajo): contiene los hechos sobre un problema que se ha descubierto durante el anlisis. Motor de inferencia: Modela el proceso de razonamiento humano. Mdulos de justificacin: Explica el razonamiento utilizado por el sistema para llegar a una determinada conclusin. Interfaz de usuario: es la interaccin entre el SE y el usuario, y se realiza mediante el lenguaje natural.

Tipos de SE Principalmente existen tres tipos de sistemas expertos:


Basados en reglas. Basados en casos o CBR (Case Based Reasoning). Basados en redes bayesianas.

En cada uno de ellos, la solucin a un problema planteado se obtiene:

Aplicando reglas heursticas apoyadas generalmente en lgica difusa para su evaluacin y aplicacin.

Aplicando el razonamiento basado en casos, donde la solucin a un problema similar planteado con anterioridad se adapta al nuevo problema. Aplicando redes bayesianas, basadas en estadstica y el teorema de Bayes.

Ventajas y limitaciones de los Sistemas Expertos Ventajas

Permanencia: A diferencia de un experto humano un SE (sistema experto) no envejece, y por tanto no sufre prdida de facultades con el paso del tiempo. Duplicacin: Una vez programado un SE lo podemos duplicar infinidad de veces. Rapidez: Un SE puede obtener informacin de una base de datos y realizar clculos numricos mucho ms rpido que cualquier ser humano. Bajo costo: A pesar de que el costo inicial pueda ser elevado, gracias a la capacidad de duplicacin el coste finalmente es bajo. Entornos peligrosos: Un SE puede trabajar en entornos peligrosos o dainos para el ser humano. Fiabilidad: Los SE no se ven afectados por condiciones externas, un humano s (cansancio, presin, etc.). Consolidar varios conocimientos Apoyo Academico

Limitaciones

Sentido comn: Para un Sistema Experto no hay nada obvio. Por ejemplo, un sistema experto sobre medicina podra admitir que un hombre lleva 40 meses embarazado, a no ser que se especifique que esto no es posible. Lenguaje natural: Con un experto humano podemos mantener una conversacin informal mientras que con un SE no podemos. Capacidad de aprendizaje: Cualquier persona aprende con relativa facilidad de sus errores y de errores ajenos, que un SE haga esto es muy complicado. Perspectiva global: Un experto humano es capaz de distinguir cuales son las cuestiones relevantes de un problema y separarlas de cuestiones secundarias. Capacidad sensorial: Un SE carece de sentidos. Flexibilidad: Un humano es sumamente flexible a la hora de aceptar datos para la resolucin de un problema. Conocimiento no estructurado: Un SE no es capaz de manejar conocimiento poco estructurado.

Ejemplos importantes

Dendral Dipmeter Advisor Mycin CADUCEUS

R1 CLIPS, Jess Prolog ehsis.ikudetelemed.com

Tareas que realiza un Sistema Experto Monitorizacin La monitorizacin es un caso particular de la interpretacin, y consiste en la comparacin continua de los valores de las seales o datos de entrada y unos valores que actan como criterios de normalidad o estndares. En el campo del mantenimiento predictivo los Sistemas Expertos se utilizan fundamentalmente como herramientas de diagnstico. Se trata de que el programa pueda determinar en cada momento el estado de funcionamiento de sistemas complejos, anticipndose a los posibles incidentes que pudieran acontecer. As, usando un modelo computacional del razonamiento de un experto humano, proporciona los mismos resultados que alcanzara dicho experto. Diseo Diseo es el proceso de especificar una descripcin de un artefacto que satisface varias caractersticas desde un nmero de fuentes de conocimiento. El diseo se concibe de distintas formas:

El diseo en ingeniera es el uso de principios cientficos, informacin tcnica e imaginacin en la definicin de una estructura mecnica, mquina o sistema que ejecute funciones especficas con el mximo de economa y eficiencia. El diseo industrial busca rectificar las omisiones de la ingeniera, es un intento consciente de traer forma y orden visual a la ingeniera de hardware donde la tecnologa no provee estas caractersticas.

Los SE en diseo ven este proceso como un problema de bsqueda de una solucin ptima o adecuada. Las soluciones alternas pueden ser conocidas de antemano o se pueden generar automticamente probndose distintos diseos para verificar cules de ellos cumplen los requerimientos solicitados por el usuario, sta tcnica es llamada generacin y prueba, por lo tanto estos SE son llamados de seleccin. En reas de aplicacin, la prueba se termina cuando se encuentra la primera solucin; sin embargo, existen problemas ms complejos en los que el objetivo es encontrar la solucin ptima. Planificacin La planificacin es la realizacin de planes o secuencias de acciones y es un caso particular de la simulacin. Est compuesto por un simulador y un sistema de control. El efecto final es la ordenacin de un conjunto de acciones con el fin de conseguir un objetivo global.

Los problemas que presentan la planificacin mediante SE son los siguientes:


Existen consecuencias no previsibles, de forma que hay que explorar y explicar varios planes. Existen muchas consideraciones que deben ser valoradas o incluirles un factor de peso. Suelen existir interacciones entre planes de subobjetivos diversos, por lo que deben elegirse soluciones de compromiso. Trabajo frecuente con incertidumbre, pues la mayora de los datos con los que se trabaja son ms o menos probables pero no seguros. Es necesario hacer uso de fuentes diversas tales como bases de datos.

Control Un sistema de control participa en la realizacin de las tareas de interpretacin, diagnstico y reparacin de forma secuencial. Con ello se consigue conducir o guiar un proceso o sistema. Los sistemas de control son complejos debido al nmero de funciones que deben manejar y el gran nmero de factores que deben considerar; esta complejidad creciente es otra de las razones que apuntan al uso del conocimiento, y por tanto de los SE. Cabe aclarar que los sistemas de control pueden ser en lazo abierto, si en el mismo la realimentacin o el paso de un proceso a otro lo realiza el operador, o en lazo cerrado si no tiene que intervenir el operador en ninguna parte del mismo. Reparacin, correcta o terapia. La reparacin, correccin, terapia o tratamiento consiste en la proposicin de las acciones correctoras necesarias para la resolucin de un problema. Los SE en reparacin tienen que cumplir diversos objetivos, como son: Reparacin lo ms rpida y econmicamente posible. Orden de las reparaciones cuando hay que realizar varias. Evitar los efectos secundarios de la reparacin, es decir la aparicin de nuevas averas por la reparacin. Simulacin La simulacin es una tcnica que consistente en crear modelos basados en hechos, observaciones e interpretaciones sobre la computadora, a fin de estudiar el comportamiento de los mismos mediante la observacin de las salidas para un conjunto de entradas. Las tcnicas tradicionales de simulacin requieren modelos matemticos y lgicos, que describen el comportamiento del sistema bajo estudio. El empleo de los SE para la simulacin viene motivado por la principal caracterstica de los SE, que es su capacidad para la simulacin del comportamiento de un experto humano, que es un proceso complejo. En la aplicacin de los SE para simulacin hay que diferenciar cinco configuraciones posibles: 1. Un SE puede disponer de un simulador con el fin de comprobar las soluciones y en su caso rectificar el proceso que sigue. 2. Un sistema de simulacin puede contener como parte del mismo a un SE y por lo tanto el SE no tiene que ser necesariamente de simulacin.

3. Un SE puede controlar un proceso de simulacin, es decir que el modelo est en la base de conocimiento del SE y su evolucin es funcin de la base de hechos, la base de conocimientos y el motor de inferencia, y no de un conjunto de ecuaciones aritmtico lgicas. 4. Un SE puede utilizarse como consejero del usuario y del sistema de simulacin. 5. Un SE puede utilizarse como mscara o sistema frontal de un simulador con el fin de que el usuario reciba explicacin y justificacin de los procesos. Instruccin Un sistema de instruccin realizara un seguimiento del proceso de aprendizaje. El sistema detecta errores ya sea de una persona con conocimientos e identifica el remedio adecuado, es decir, desarrolla un plan de enseanza que facilita el proceso de aprendizaje y la correccin de errores. Recuperacin de informacin Los Sistemas Expertos, con su capacidad para combinar informacin y reglas de actuacin, han sido vistos como una de las posibles soluciones al tratamiento y recuperacin de informacin, no slo documental. La dcada de 1980 fue prolija en investigacin y publicaciones sobre experimentos de este orden, inters que continua en la actualidad. Lo que diferencia a estos sistemas de un sistema tradicional de recuperacin de informacin es que stos ltimos slo son capaces de recuperar lo que existe explcitamente, mientras que un Sistema Experto debe ser capaz de generar informacin no explcita, razonando con los elementos que se le dan. Pero la capacidad de los SE en el mbito de la recuperacin de la informacin no se limita a la recuperacin. Pueden utilizarse para ayudar al usuario, en seleccin de recursos de informacin, en filtrado de respuestas, etc. Un SE puede actuar como un intermediario inteligente que gua y apoya el trabajo del usuario final.

2)Programacin lgica La programacin lgica consiste en la aplicacin del corpus de conocimiento sobre lgica para el diseo de lenguajes de programacin; no debe confundirse con la disciplina de la lgica computacional. La programacin lgica comprende dos paradigmas de programacin: la programacin declarativa y la programacin funcional. La programacin declarativa gira en torno al concepto de predicado, o relacin entre elementos. La programacin funcional se basa en el concepto de funcin (que no es ms que una evolucin de los predicados), de corte ms matemtico.

Motivacin Histricamente, los ordenadores se han programado utilizando lenguajes muy cercanos a las peculiaridades de la propia mquina: operaciones aritmticas simples, instrucciones de acceso a memoria, etc. Un programa escrito de esta manera puede ocultar totalmente su propsito a la comprensin de un ser humano, incluso uno entrenado. Hoy da, estos lenguajes pertenecientes al paradigma de la Programacin imperativa han evolucionado de manera que ya no son tan crpticos. En cambio, la lgica matemtica es la manera ms sencilla, para el intelecto humano, de expresar formalmente problemas complejos y de resolverlos mediante la aplicacin de reglas, hiptesis y teoremas. De ah que el concepto de "programacin lgica" resulte atractivo en diversos campos donde la programacin tradicional es un fracaso. Campos de aplicacin La programacin lgica encuentra su hbitat natural en aplicaciones de inteligencia artificial o relacionadas:

Sistemas expertos, donde un sistema de informacin imita las recomendaciones de un experto sobre algn dominio de conocimiento. Demostracin automtica de teoremas, donde un programa genera nuevos teoremas sobre una teora existente. Reconocimiento de lenguaje natural, donde un programa es capaz de comprender (con limitaciones) la informacin contenida en una expresin lingstica humana. Etc.

La programacin lgica tambin se utiliza en aplicaciones ms "mundanas" pero de manera muy limitada, ya que la programacin tradicional es ms adecuada a tareas de propsito general.

3)Lenguaje prolog DEFINICIN Prolog es un lenguaje de programacin creado para representar y utilizar el conocimiento que se tiene sobre un determinado dominio. Ms exactamente, el dominio es un conjunto de objetos y el conocimiento se representa por un conjunto de relaciones que describen las propiedades de los objetos y sus interrelaciones. Un conjunto de reglas que describa estas propiedades y estas relaciones es un programa PROLOG. Una definicin ms accesible para el usuario comn sera:

Prolog es un lenguaje de programacin que es usado para resolver problemas que envuelven objetos y las relaciones entre ellos.

Su definicin basada en la lgica formal, permite ejecutar estatutos que no son otra cosa que oraciones de un lenguaje lgico elemental particular de

clusulas. Prolog por su naturaleza muestra una habilidad para describir gramticas, en particular gramticas libres de contexto.

Segn el presente informe, se puede establecer que el lenguaje Prolog est orientado a la Inteligencia Artificial, usando la programacin lgica. Gracias a su facilidad de programar y su sencilla sintaxis gramatical y numrica, se pueden escribir rpidamente y con pocos errores programas claramente lebles, adems cualquier usuario puede acceder a l si lo desea y sin problemas de entendimiento. Tambin utiliza pocos comandos en comparacin con otros lenguajes de programacin. Por otra parte en este lenguaje al igual que otros, hay que tener en cuenta la asociatividad de los operadores antes de trabajar con l. Adems Prolog se puede trabajar en diferentes sistemas operativos, tales como UNIX, MS-DOS, MAC-OS, entre otros.

4)Red neuronal artificial Las redes de neuronas artificiales (denominadas habitualmente como RNA o en ingls como: "ANN"1 ) son un paradigma de aprendizaje y procesamiento automtico inspirado en la forma en que funciona el sistema nervioso de los animales. Se trata de un sistema de interconexin de neuronas en una red que colabora para producir un estmulo de salida. En inteligencia artificial es frecuente referirse a ellas como redes de neuronas o redes neuronales.

Red neuronal artificial perceptrn simple con n neuronas de entrada, m neuronas en su capa oculta y una neurona de salida.

Funcionamiento Unas redes neuronales consisten en simular las propiedades observadas en los sistemas neuronales biolgicos a travs de modelos matemticos recreados mediante mecanismos artificiales (como un circuito integrado, un ordenador o un conjunto de vlvulas). El objetivo es conseguir que las mquinas den respuestas similares a las que es capaz de dar el cerebro que se caracterizan por su generalizacin y su robustez.

Perceptrn con 2 entradas Una red neuronal se compone de unidades llamadas neuronas. Cada neurona recibe una serie de entradas a travs de interconexiones y emite una salida. Esta salida viene dada por tres funciones:

1. Una funcin de propagacin (tambin conocida como funcin de


excitacin), que por lo general consiste en el sumatorio de cada entrada multiplicada por el peso de su interconexin (valor neto). Si el peso es positivo, la conexin se denomina excitatoria; si es negativo, se denomina inhibitoria. 2. Una funcin de activacin, que modifica a la anterior. Puede no existir, siendo en este caso la salida la misma funcin de propagacin. 3. Una funcin de transferencia, que se aplica al valor devuelto por la funcin de activacin. Se utiliza para acotar la salida de la neurona y generalmente viene dada por la interpretacin que queramos darle a dichas salidas. Algunas de las ms utilizadas son la funcin sigmoidea (para obtener valores en el intervalo [0,1]) y la tangente hiperblica (para obtener valores en el intervalo [-1,1]). Diseo y programacin de una RNA Con un paradigma convencional de programacin en ingeniera del software, el objetivo del programador es modelar matemticamente (con distintos grados de formalismo) el problema en cuestin y posteriormente formular una solucin (programa) mediante un algoritmo codificado que tenga una serie de propiedades que permitan resolver dicho problema. En contraposicin, la aproximacin basada en las RNA parte de un conjunto de datos de entrada suficientemente significativo y el objetivo es conseguir que la red aprenda automticamente las propiedades deseadas. En este sentido, el diseo de la red tiene menos que ver con cuestiones como los flujos de datos y la deteccin de condiciones, y ms que ver con cuestiones tales como la seleccin del modelo de red, la de las variables a incorporar y el preprocesamiento de la informacin que formar el conjunto de entrenamiento. Asimismo, el proceso por el que los parmetros de la red se adecan a la resolucin de cada problema no se denomina genricamente programacin sino que se suele denominar entrenamiento.

Por ejemplo en una red que se va a aplicar al diagnstico de imgenes mdicas; durante la fase de entrenamiento el sistema recibe imgenes de tejidos que se sabe son cancergenos y tejidos que se sabe son sanos, as como las respectivas clasificaciones de dichas imgenes. Si el entrenamiento es el adecuado, una vez concluido, el sistema podr recibir imgenes de tejidos no clasificados y obtener su clasificacin sano/no sano con un buen grado de seguridad. Las variables de entrada pueden ser desde los puntos individuales de cada imagen hasta un vector de caractersticas de las mismas que se puedan incorporar al sistema (por ejemplo, procedencia anatmica del tejido de la imagen o la edad del paciente al que se le extrajo la muestra). Estructura La mayora de los cientficos coinciden en que una RNA es muy diferente en trminos de estructura de un cerebro animal. Al igual que el cerebro, una RNA se compone de un conjunto masivamente paralelo de unidades de proceso muy simples y es en las conexiones entre estas unidades donde reside la inteligencia de la red. Sin embargo, en trminos de escala, un cerebro es muchsimo mayor que cualquier RNA creada hasta la actualidad, y las neuronas artificiales tambin son ms simples que su contrapartida animal. Biolgicamente, un cerebro aprende mediante la reorganizacin de las conexiones sinpticas entre las neuronas que lo componen. De la misma manera, las RNA tienen un gran nmero de procesadores virtuales interconectados que de forma simplificada simulan la funcionalidad de las neuronas biolgicas. En esta simulacin, la reorganizacin de las conexiones sinpticas biolgicas se modela mediante un mecanismo de pesos, que son ajustados durante la fase de aprendizaje. En una RNA entrenada, el conjunto de los pesos determina el conocimiento de esa RNA y tiene la propiedad de resolver el problema para el que la RNA ha sido entrenada. Por otra parte, en una RNA, adems de los pesos y las conexiones, cada neurona tiene asociada una funcin matemtica denominada funcin de transferencia. Dicha funcin genera la seal de salida de la neurona a partir de las seales de entrada. La entrada de la funcin es la suma de todas las seales de entrada por el peso asociado a la conexin de entrada de la seal. Algunos ejemplos de entradas son la funcin escaln de Heaviside, la lineal o mixta, la sigmoidea y la funcin gaussiana, recordando que la funcin de transferencia es la relacin entre la seal de salida y la entrada.

Algoritmos genticos Funcionamiento Los algoritmos genticos establecen una analoga entre el conjunto de soluciones de un problema, llamado fenotipo, y el conjunto de individuos de una poblacin natural, codificando la informacin de cada solucin en una cadena, generalmente binaria, llamada cromosoma. Los smbolos que forman la cadena son llamados los genes. Cuando la representacin de los cromosomas se hace con cadenas de dgitos binarios se le conoce como genotipo. Los cromosomas evolucionan a travs de iteraciones, llamadas

generaciones. En cada generacin, los cromosomas son evaluados usando alguna medida de aptitud. Las siguientes generaciones (nuevos cromosomas), llamada descendencia, se forman utilizando dos operadores, de cruzamiento y de mutacin. Cundo usar estos algoritmos Los algoritmos genticos son de probada eficacia en caso de querer calcular funciones no derivables (o de derivacin muy compleja) aunque su uso es posible con cualquier funcin. Deben tenerse en cuenta tambin las siguientes consideraciones:

Si la funcin a optimizar tiene muchos mximos/mnimos locales se requerirn ms iteraciones del algoritmo para "asegurar" el mximo/mnimo global. Si la funcin a optimizar contiene varios puntos muy cercanos en valor al ptimo, solamente podemos "asegurar" que encontraremos uno de ellos (no necesariamente el ptimo).

Funcionamiento de un algoritmo gentico bsico Un algoritmo gentico puede presentar diversas variaciones, dependiendo de cmo se aplican los operadores genticos (cruzamiento, mutacin), de cmo se realiza la seleccin y de cmo se decide el reemplazo de los individuos para formar la nueva poblacin. En general, el pseudocdigo consiste de los siguientes pasos:

Algoritmo gentico i: inicializacin, f(X): evaluacin, ?: condicin de trmino, Se: seleccin, Cr: cruzamiento, Mu: mutacin, Re: reemplazo, X*: mejor solucin.

Inicializacin: Se genera aleatoriamente la poblacin inicial, que est constituida por un conjunto de cromosomas los cuales representan las posibles soluciones del problema. En caso de no hacerlo aleatoriamente, es importante garantizar que dentro de la poblacin inicial, se tenga la diversidad estructural de estas soluciones para tener una representacin de la mayor parte de la poblacin posible o al menos evitar la convergencia prematura.

Evaluacin: A cada uno de los cromosomas de esta poblacin se aplicar la funcin de aptitud para saber cmo de "buena" es la solucin que se est codificando. Condicin de trmino El AG se deber detener cuando se alcance la solucin ptima, pero sta generalmente se desconoce, por lo que se deben utilizar otros criterios de detencin. Normalmente se usan dos criterios: correr el AG un nmero mximo de iteraciones (generaciones) o detenerlo cuando no haya cambios en la poblacin. Mientras no se cumpla la condicin de trmino se hace lo siguiente: o Seleccin Despus de saber la aptitud de cada cromosoma se procede a elegir los cromosomas que sern cruzados en la siguiente generacin. Los cromosomas con mejor aptitud tienen mayor probabilidad de ser seleccionados. o Cruzamiento El cruzamiento es el principal operador gentico, representa la reproduccin sexual, opera sobre dos cromosomas a la vez para generar dos descendientes donde se combinan las caractersticas de ambos cromosomas padres. o Mutacin modifica al azar parte del cromosoma de los individuos, y permite alcanzar zonas del espacio de bsqueda que no estaban cubiertas por los individuos de la poblacin actual.

Reemplazo una vez aplicados los operadores genticos, se seleccionan los mejores individuos para conformar la poblacin de la generacin

5) Lgica difusa Lgica difusa en Inteligencia Artificial En Inteligencia artificial, la lgica difusa, o lgica borrosa se utiliza para la resolucin de una variedad de problemas, principalmente los relacionados con control de procesos industriales complejos y sistemas de decisin en general, la resolucin la compresin de datos. Los sistemas de lgica difusa estn tambin muy extendidos en la tecnologa cotidiana, por ejemplo en cmaras digitales, sistemas de aire acondicionado, lavarropas, etc. Los sistemas basados en lgica difusa imitan la forma en que toman decisiones los humanos, con la ventaja de ser mucho ms rpidos. Estos sistemas son generalmente robustos y tolerantes a imprecisiones y ruidos en los datos de entrada. Consiste en la aplicacin de la lgica difusa con la intencin de imitar el razonamiento humano en la programacin de computadoras. Con la lgica convencional, las computadoras pueden manipular valores estrictamente duales, como verdadero/falso, s/no o ligado/desligado. En la lgica difusa, se usan modelos matemticos para representar nociones subjetivas, como caliente/tibio/fro, para valores concretos que puedan ser manipuladas por los ordenadores. En este paradigma, tambin tiene un especial valor la variable del tiempo, ya que los sistemas de control pueden necesitar retroalimentarse en un espacio

concreto de tiempo, pueden necesitarse datos anteriores para hacer una evaluacin media de la situacin en un periodo de tiempo anterior... Ventajas e Inconvenientes Como principal ventaja, cabe destacar los excelentes resultados que brinda un sistema de control basado en lgica difusa: ofrece salidas de una forma veloz y precisa, disminuyendo as las transiciones de estados fundamentales en el entorno fsico que controle. Por ejemplo, si el aire acondicionado se encendiese al llegar a la temperatura de 30, y la temperatura actual oscilase entre los 29-30, nuestro sistema de aire acondicionado estara encendindose y apagndose continuamente, con el gasto energtico que ello conllevara. Si estuviese regulado por lgica difusa, esos 30 no seran ningn umbral, y el sistema de control aprendera a mantener una temperatura estable sin continuos apagados y encendidos. Tambin est la indecisin de decartarse por los expertos o por la tecnologa (principalmente mediante redes neuronales) para reforzar las reglas heursticas iniciales de cualquier sistema de control basado en este tipo de lgica 6) Agentes inteligentes Un agente inteligente, es una entidad capaz de percibir su entorno, procesar tales percepciones y responder o actuar en su entorno de manera racional, es decir, de manera correcta y tendiendo a maximizar un resultado esperado. En este contexto la racionalidad es la caracterstica que posee una eleccin de ser correcta, ms especficamente, de tender a maximizar un resultado esperado. Este concepto de racionalidad es ms general y por ello ms adecuado que inteligencia (la cual sugiere entendimiento) para describir el comportamiento de los agentes inteligentes. Por este motivo es mayor el consenso en llamarlos agentes racionales. Un agente inteligente puede ser una entidad fisica o virtual. Si bien el trmino agente racional se refiere a agentes artificiales en el campo de la Inteligencia Artificial, tambin puede considerarse agentes racionales a los animales incluido el hombre. Ejemplos Como ejemplos de entidades fsicas pueden nombrarse:

un robot de comportamiento variable autoregulado (ya sea que su comportamiento sea determinado por software o incorporado directamente en la electrnica), una computadora que ejecuta un software de diagnstico mdico y muestra resultados en una pantalla para ayudar a decidir a un mdico, una computadora especializada que controla un helicptero en maniobras peligrosas para un hombre.

Ejemplos de entidad puramente virtual seran:

un software de descubrimiento de patrones en internet que slo interacta con otros software. un software softbot que simula a una persona en un juego de computadora, tal como un jugador de ajedrez, un jugador de ftbol contrincante o un conductor de carreras de automviles, etc.

Clasificacin Es posible clasificar los agentes inteligentes en 5 categoras principales: 1. 2. 3. 4. 5. agentes reactivos agentes reactivos basados en modelo agentes basados en objetivos agentes basados en utilidad agentes que aprenden

Potrebbero piacerti anche