Proyecto Inteligencia Artificial

UNIVERSIDAD NACIONAL JOSÉ MARÍA ARGUEDAS FACULTAD DE INGENIERÍA ESCUELA PROFESIONAL DE INGENIERÍA DE SISTEMAS “DESARROL

Views 53 Downloads 4 File size 778KB

Report DMCA / Copyright

DOWNLOAD FILE

Recommend stories

Citation preview

UNIVERSIDAD NACIONAL JOSÉ MARÍA ARGUEDAS FACULTAD DE INGENIERÍA ESCUELA PROFESIONAL DE INGENIERÍA DE SISTEMAS

“DESARROLLO DE TEMAS DE IVESTIGACION DE INTELIGENCIA ARTIFICIAL, AGENTES, REDES NEURONALES, LOGICA DIFUSA.”

CURSO

: INTELIGENCIA ARTIFICIAL.

ÁREA PRIORIZADA

: INTELIGENCIA ARTIFICIAL-AGENTES RESOLVENTES

ALUMNO

: BEQUER BRAYAN OROSCO PAHUARA

DOCENTE

: ING. WILSON WILMAR CANDÍA QUISPE

ANDAHUAYLAS – APURÍMAC PERÚ OCTUBRE, 2015

TABLA DE CONTENIDOS Pág.

1.

HISTORIA DE INTELIGENCIA ARTIFICIAL.......................................................................... 1.2.

2.

CARACTERÍSTICAS DE LA INTELIGENCIA ARTIFICIAL.................................................

AGENTES INFORMÁTICOS............................................................................................... 2.2.

HISTORIA..................................................................................................................

2.3.

CLASIFICACION.........................................................................................................

2.4.

CÓMO TRABAJA UN AGENTE INTELIGENTE................................................................

2.5.

APLICACIONES DE LOS AGENTES INTELIGENTES......................................................

2.6. ¿POR QUÉ UTILIZAR UN AGENTE INTELIGENTE AL SERVICIO DE LA EMPRESA?.......................................................................................................................... 3. AGENTES RESOLVENTES DE PROBLEMAS POR MÉTODO DE BÚSQUEDA........................... 3.1. INTRODUCCIÓN......................................................................................................... 3.2. AGENTES RESOLVENTES-PROBLEMAS........................................................................ 3.3. PROBLEMAS Y SOLUCIONES BIEN DEFINIDOS............................................................ 3.4. FORMULAR LOS PROBLEMAS.................................................................................... 3.5. EJEMPLO DE PROBLEMAS.......................................................................................... 3.6. BUSQUEDA DE SOLUCIONES.................................................................................... 3.7. MEDIR EL RENDIMIENTO DE LA RESOLUCIÓN DEL PROBLEMA................................. 4.

5.

REDES NEURONALES.................................................................................................... 4.1.

HISTORIA................................................................................................................

4.2.

¿CÓMO FUNCIONA UNA RED NEURONAL?..............................................................

4.3.

LA NEURONA BIOLÓGICA........................................................................................

4.4.

MODELO DE NEURONA ARTIFICIAL.........................................................................

4.5.

RED NEURONAL ARTIFICIAL....................................................................................

4.6.

ARQUITECTURA DE LAS RNA..................................................................................

LÓGICA DIFUSA............................................................................................................. 5.1.

INTRODUCCIÓN:.....................................................................................................

5.2.

HISTORIA:...............................................................................................................

2

5.3.

FUNCIONAMIENTO..................................................................................................

5.4.

LÓGICA DIFUSA EN INTELIGENCIA ARTIFICIAL........................................................

5.5.

VENTAJAS E INCONVENIENTES................................................................................

3

1. HISTORIA DE INTELIGENCIA ARTIFICIAL

La Inteligencia Artificial "nació" en 1943 cuando Warren McCulloch y Walter Pitts propusieron un modelo de neurona del cerebro humano y animal. Estas neuronas nerviosas abstractas proporcionaron una representación simbólica de la actividad cerebral. Más adelante, Norbert Wiener elaboró estas ideas junto con otras, dentro del mismo campo, que se llamó "cibernética"; de aquí nacería, sobre los años 50, la Inteligencia Artificial.

4

Los primeros investigadores de esta innovadora ciencia, tomaron como base la neurona formalizada de McCulloch y postulaban que:"El cerebro es un solucionador inteligente de problemas, de modo que imitemos al cerebro". Pero si consideramos la enorme complejidad del mismo esto es ya prácticamente imposible, ni que mencionar que el hardware de la época ni el software estaban a la altura para realizar semejantes proyectos. Se comenzó a considerar el pensamiento humano como una coordinación de tareas simples relacionadas entre sí mediante símbolos. Se llegaría a la realización de lo que ellos consideraban como los fundamentos de la solución inteligente de problemas, pero lo difícil estaba todavía sin empezar, unir entre sí estas actividades simples. Es en los años 50 cuando se logra realizar un sistema que tuvo cierto éxito, se llamó el Perceptrón de Rossenblatt. Éste era un sistema visual de reconocimiento de patrones en el cual se asociaron esfuerzos para que se pudieran resolver una gama amplia de problemas, pero estas energías se diluyeron enseguida. Fue en los años 60 cuando Alan Newell y Herbert Simon, que trabajando la demostración de teoremas y el ajedrez por ordenador logran crear un programa llamado GPS (General Problem Solver: solucionador general de problemas). Éste era un sistema en el que el usuario definía un entorno en función de una serie de objetos y los operadores que se podían aplicar sobre ellos. Este programa era capaz de trabajar con las torres de Hanoi, así como con criptoaritmética y otros problemas similares, operando, claro está, con microcosmos formalizados que representaban los parámetros dentro de los cuales se podían resolver problemas. Lo que no podía hacer el GPS era resolver problemas ni del mundo real, ni médicos ni tomar decisiones importantes. El GPS manejaba reglas heurísticas (aprender a partir de sus propios descubrimientos) que la conducían hasta el destino deseado mediante el método del ensayo y el error. En los años 70, un equipo de investigadores dirigido por Edward Feigenbaum comenzó a elaborar un proyecto para resolver problemas de la vida cotidiana o que se centrara, al menos, en problemas más concretos. Así es como nació el sistema experto. El primer sistema experto fue el denominado Dendral, un intérprete de espectrograma de masa construido en 1967, pero el más influyente resultaría ser el Mycin de 1974. El Mycin era capaz de diagnosticar trastornos en la sangre y recetar la correspondiente medicación, todo un

5

logro en aquella época que incluso fueron utilizados en hospitales (como el Puff, variante de Mycin de uso común en el Pacific Medical Center de San Francisco, EEUU). Ya en los años 80, se desarrollaron lenguajes especiales para utilizar con la Inteligencia Artificial, tales como el LISP o el PROLOG. Es en esta época cuando se desarrollan sistemas expertos más refinados, como por el ejemplo el EURISKO. Este programa perfecciona su propio cuerpo de reglas heurísticas automáticamente, por inducción.

1.2. CARACTERÍSTICAS DE LA INTELIGENCIA ARTIFICIAL  Una característica fundamental que distingue a los métodos de Inteligencia Artificial de los métodos numéricos es el uso de símbolos no matemáticos, aunque no es suficiente para distinguirlo completamente. Otros tipos de programas como los compiladores y sistemas de bases de datos, también procesan símbolos y no se considera que usen técnicas de Inteligencia Artificial.

6

 El comportamiento de los programas no es descrito explícitamente por el algoritmo. La secuencia de pasos seguidos por el programa es influenciado por el problema particular presente. El programa especifica cómo encontrar la secuencia de pasos necesarios para resolver un problema dado (programa declarativo). En contraste con los programas que no son de Inteligencia Artificial, que siguen un algoritmo definido, que especifica, explícitamente, cómo encontrar las variables de salida para cualquier variable dada de entrada (programa de procedimiento).  El razonamiento basado en el conocimiento, implica que estos programas incorporan factores y relaciones del mundo real y del ámbito del conocimiento en que ellos operan. Al contrario de los programas para propósito específico, como los de contabilidad y cálculos científicos; los programas de Inteligencia Artificial pueden distinguir entre el programa de razonamiento o motor de inferencia y base de conocimientos dándole la capacidad de explicar discrepancias entre ellas.  Aplicabilidad a datos y problemas mal estructurados, sin las técnicas de Inteligencia Artificial los programas no pueden trabajar con este tipo de problemas. Un ejemplo es la resolución de conflictos en tareas orientadas a metas como en planificación, o el diagnóstico de tareas en un sistema del mundo real: con poca información, con una solución cercana y no necesariamente exacta.

7

2. AGENTES INFORMÁTICOS

Un agente informático, 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. Es capaz de percibir su medioambiente con la ayuda de sensores y actuar en ese medio utilizando actuadores (elementos que reaccionan a un estímulo realizando una acción). En este contexto la racionalidad es la característica que posee una elección de ser correcta, más específicamente, de tender a maximizar un resultado esperado. Este concepto de racionalidad es más general y por ello más 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 física o virtual. Si bien el término agente racional se refiere a agentes artificiales en el campo de la Inteligencia Artificial, también puede considerarse agentes racionales a los animales incluido el hombre. Los agentes inteligentes se describen esquemáticamente como un sistema funcional abstracto. Por esta razón, los agentes inteligentes son a veces llamados Agentes Inteligentes Abstractos (AIA) para distinguirlos de sus implementaciones del mundo real como sistemas informáticos, los sistemas biológicos, o de organizaciones. Algunas definiciones de agentes inteligentes hacen énfasis en su autonomía por lo que prefieren el término agente inteligente autónomo. Y otros (en particular, Russell y Norvig (2003)) consideran conducta dirigida a objetivos como la esencia de lo inteligente y prefieren un término tomado de la economía "Agente Racional". En Ciencias de la Computación el término agente inteligente puede ser usado para referirse a un agente de software que tiene algo de inteligencia, independientemente de si no es un agente racional por definición de Russell y Norvig. Por ejemplo, programas autónomos

8

utilizados para asistencia de un operador o de minería de datos (a veces denominado robots) son también llamados "agentes inteligentes".

2.2.

HISTORIA El paso del conductismo al funcionalismo en el ámbito de la sicología, en parte resultado de la aplicación de la metáfora de la computadora de los agentes (Putnam, 1960; Lewis, 1966) incorporó al cuadro general la noción de estado interno de un agente.[Rusell & Norving]. El filósofo Daniel Dennet (1969, 1978) contribuyó a sintetizar todos estos puntos de vista en una “posición intencional” coherente en relación con los agentes. También en el ámbito de la IA, se ha adoptado una perspectiva abstracta y de alto nivel en torno a la noción de agencia (McCarthy y Hayes, 1969).[Rusell & Norving]. Herb Simon, investigador en IA y economista ganador del premio Nobel, estableció una clara diferencia entre la racionalidad bajo limitaciones de recursos (racionalidad de procedimientos) y la racionalidad de hacer una elección objetivamente racional (racionalidad sustantiva) (Simon, 1958). [Rusell & Norving]. Cherniak (1986) explora el nivel mínimo de racionalidad necesario para que una entidad se pueda considerar como agente. Russell y

9

Wefald (1991) abordan explícitamente la posibilidad del empleo de una diversidad de arquitecturas de agente.[Rusell & Norving]. 2.3.      

CLASIFICACION agentes reactivos agentes reactivos basados en modelo agentes basados en objetivos agentes basados en utilidad agentes que aprenden agentes de consultas

2.4. CÓMO TRABAJA UN AGENTE INTELIGENTE Un agente inteligente es más que un simple sistema de búsqueda de información. El agente puede operar sin la intervención del usuario aun si éste está desconectado. Los agentes inteligentes incorporan funciones procedentes de la inteligencia artificial. Tres características fundamentales de los agentes inteligentes:  La inteligencia: el agente sabe razonar y aprende a partir de la información que recoge  La interactividad: el agente puede interactuar con su entorno y otros agentes con el propósito de realizar una tarea  La autonomía: el agente puede tomar decisiones de manera autónoma. A tener en cuenta:  Un simple comparador de precios no es un agente inteligente ya que únicamente cumple las funciones para lo que ha sido programado.  Un agente inteligente se caracteriza por su autonomía en el proceso y el análisis de la información que maneja  Un agente inteligente puede ser controlado por una persona o por otro agente del mismo tipo 2.5. APLICACIONES DE LOS AGENTES INTELIGENTES Los agentes inteligentes pueden ser utilizados por las empresas en numerosos dominios, entre estos:  La e-Reputación

10

     

La gestión de riesgos La inteligencia territorial El lanzamiento de productos La vigilancia de la competencia La vigilancia de líderes de opinión y del lobbying La vigilancia de las tendencias

2.6.

¿POR QUÉ UTILIZAR UN AGENTE INTELIGENTE AL SERVICIO DE LA EMPRESA? Prever y anticipar la evolución de los mercados son dos condiciones para la supervivencia de una empresa. De aquí que los agentes inteligentes para la vigilancia sean tan apreciados por las PYMES y las microempresas que no disponen de los recursos necesarios para la elaboración tecnológica de un agente inteligente. Los agentes inteligentes ayudan a la empresa a darse a conocer en Internet, mejor que cualquier posicionamiento hecho manualmente. Por ejemplo para posicionar la página web de la empresa, promover el último producto desarrollado, etc. 3. AGENTES RESOLVENTES DE PROBLEMAS POR MÉTODO DE BÚSQUEDA 3.1. INTRODUCCIÓN Un agente basado en objetivo busca resolver el problema llevando a cabo todas las acciones que sean necesarias hasta resolver el problema, los agentes resolventes-problemas son un ejemplo ya que deciden que hacer para encontrar secuencias de acciones que conduzcan a los estados deseables, para esto es necesario definir el problema y su solución, además del el proceso que se utilizara para llegar a la solución es decir el algoritmo que se utiliza, así el agente obtendrá una colección de información que puede usar para decidir qué hacer. A continuación se detallan las características de los agentes resolventesproblemas y los diferentes métodos que se utilizan para realizar la búsqueda de la solución al problema del agente.

11

3.2. AGENTES RESOLVENTES-PROBLEMAS Los agentes resolventes-problemas son un tipo de agente basado en objetivo que aunque no siempre conocen todo sobre el problema que van a solucionar, buscan secuencias de acciones que conduzcan a los estados deseables.

A continuación se definen las fases que sigue un agente resolvente-problemas para resolver un problema:

Figura 1: Fases que sigue un agente resolvente-problemas

 Formular: Elige un objetivo y trata de satisfacerlo. Define un problema (proceso de decidir qué acciones y estados considerar).  Buscar: Si tiene distintas opciones inmediatas de valores desconocidos examina las diferentes secuencias posibles de acciones que le conduzcan a estados de valores conocidos, y entonces escoge la mejor secuencia.  Ejecutar: Ejecuta la secuencia de acciones definidos anteriormente.

12

3.3. PROBLEMAS Y SOLUCIONES BIEN DEFINIDOS El problema puede definirse formalmente por cuatro componentes:

Figura 2: Características que definen a un problema

Los elementos anteriores definen un problema y pueden unirse en una estructura de datos simple que se dará como entrada al algoritmo resolvente del problema. Una solución de un problema es un camino desde el estado inicial a un estado objetivo. La calidad de la solución se mide por la función costo del camino, y una solución óptima tiene el costo más pequeño del camino entre todas las soluciones. 3.4. FORMULAR LOS PROBLEMAS Se debe construir los problemas lo más sencillamente posible y para esto se debe realizar una abstracción del mismo eliminando todos los detalles que sean relevantes, pero no perdiendo la validez y que asegure que las acciones abstractas son fáciles de realizar, de esta manera el agente podrá desenvolverse en el mundo real sin ningún problema. 3.5. EJEMPLO DE PROBLEMAS Analizaremos el caso de la aspiradora, es un mundo muy sencillo donde la acción que realiza es limpiar o moverse según el estado de suciedad. 13

 Estado: el agente está en una de dos localizaciones, cada una de las cuales puede o no contener suciedad  Estado Inicial: cualquier estado puede designarse como un estado inicial.  Función sucesor: esta genera los estados legales que resultan al intentar las tres acciones (Izquierda, Derecha y Aspirar).  Test objetivo: comprueba si todos los cuadrados están limpios.  Costo del camino: cada costo individual es 1, así que el costo del camino es el número de pasos que lo compone.

Figura 3: Posibles estados del agente aspiradora 3.6. BUSQUEDA DE SOLUCIONES Se realiza mediante un árbol de búsqueda explícito generado por el estado inicial y la función sucesor, definiendo así el espacio de estados. En general, podemos tener un grafo de búsqueda más que un árbol, cuando el mismo estado puede alcanzarse desde varios caminos.

14

3.7. MEDIR EL RENDIMIENTO DE LA RESOLUCIÓN DEL PROBLEMA Un agente podría no encontrar la solución al problema y quedarse dentro de un ciclo infinito, o el resultado de la búsqueda podría ser fallo, para esto se determinan medidas de rendimiento que el agente debe tomar mientras realiza la búsqueda. Estas son las mediadas de rendimiento de los algoritmos de búsqueda.

15

4. REDES NEURONALES Las Las Redes Neuronales Artificiales (RNA) están inspiradas en la biología, esto significa que están formadas por elementos que se comportan de manera análoga a las neuronas (en las funciones más elementales) y están organizadas de una forma similar a la del cerebro, pero las analogías no son muchas más. Las características fundamentales de las RNA son: • Aprenden de la experiencia: Las RNA pueden modificar su comportamiento como respuesta a su entorno. Dado un conjunto de entradas (quizá con las salidas deseadas), las RNA se ajustan para producir respuestas consistentes. Una amplia variedad de algoritmos de entrenamiento se han desarrollado, cada uno con sus propias ventajas e inconvenientes. • Generalizan de ejemplos anteriores a los ejemplos nuevos: Una vez que la RNA esté entrenada, la respuesta de la red puede ser, hasta un cierto punto, insensible a pequeñas variaciones en las entradas, lo que las hace idóneas para el reconocimiento de patrones. • Abstracción de la esencia de las entradas: Algunas RNA son capaces de abstraer información de un conjunto de entradas. Por ejemplo, en el caso de reconocimiento de patrones, una red puede ser entrenada en una secuencia de patrones distorsionados de una letra. Una vez que la red sea correctamente entrenada será capaz de producir un resultado correcto ante

16

una entrada distorsionada, lo que significa que ha sido capaz de aprender algo que nunca había visto. Redes Neuronales son un campo muy importante dentro de la Inteligencia Artificial. Inspirándose en el comportamiento conocido del cerebro humano (principalmente el referido a las neuronas y sus conexiones), trata de crear modelos artificiales que solucionen problemas difíciles de resolver mediante técnicas algorítmicas convencionales. 4.1. HISTORIA Desde la década de los 40, en la que nació y comenzó a desarrollarse la informática, el modelo neuronal la ha acompañado. De hecho, la aparición de los computadores digitales y el desarrollo de las teorías modernas acerca del aprendizaje y del procesamiento neuronal se produjeron aproximadamente al mismo tiempo, a finales de los años cuarenta. Desde entonces hasta nuestros días, la investigación neurofisiológica y el estudio de sistemas neuronales artificiales (ANS, Artificial Neural Systems) han ido de la mano. Sin embargo, los modelos de ANS no se centran en la investigación neurológica, si no que toma conceptos e ideas del campo de las ciencias naturales para aplicarlos a la resolución de problemas pertenecientes a otras ramas de las ciencias y la ingeniería. Podemos decir que la tecnología ANS incluye modelos inspirados por nuestra comprensión del cerebro, pero que no tienen por qué ajustarse exactamente a los modelos derivados de dicho entendimiento. Los primeros ejemplos de estos sistemas aparecen al final de la década de los cincuenta. La referencia histórica más corriente es la que alude al trabajo realizado por Frank Rosenblatt en un dispositivo denominado perceptrón. Hay otros ejemplos, tales como el desarrollo del Adaline por el profesor Bernard Widrow. Durante todos estos años, la tecnología ANS no siempre ha tenido la misma consideración en las ramas de la ingeniería y las ciencias de la computación, más ansiosas de resultados que las ciencias neuronales. A partir de 1969, el pesimismo debido a las limitadas capacidades del perceptrón hizo languidecer este tipo de investigación. A principios de los 80, por un lado Hopfield y sus conferencias acerca de la memoria auto asociativa y por otro lado la aparición del libro Parallel Distributed Processing (PDP), escrito por Rumelhart y McClelland 17

reactivaron la investigación en el campo de las redes neuronales. Hubo grandes avances que propiciaron el uso comercial en campos tan variados como el diagnóstico de enfermedades, la aproximación de funciones o el reconocimiento de imágenes. Hoy en día, la tecnología ANS no está en su mejor momento, pero a pesar de ello existen revistas, ciclos de conferencias, etc.; que mantienen vías de investigación abiertas.

4.2. ¿CÓMO FUNCIONA UNA RED NEURONAL? A pesar de su nombre, las redes neuronales no tienen un concepto demasiado complicado detrás de ellas. El nombre, como podéis imaginar, viene de la idea de imitar el funcionamiento de las redes neuronales de los organismos vivos: un conjunto de neuronas conectadas entre sí y que trabajan en conjunto, sin que haya una tarea concreta para cada una. Con la experiencia, las neuronas van creando y reforzando ciertas conexiones para "aprender" algo que se queda fijo en el tejido. Ahora bien, por bonito que suene esto, el enfoque biológico no ha sido especialmente útil: las redes neuronales han ido moviéndose para tener un foco en matemáticas y estadística. Se basan en una idea sencilla: dados unos parámetros hay una forma de combinarlos para predecir un cierto resultado. Por ejemplo, sabiendo los píxeles de una imagen habrá una forma de saber qué número hay escrito, o conociendo la carga de servidores de un Centro de Procesamiento de Datos (CPD), su temperatura y demás existirá una manera de saber cuánto van a consumir, como hacía Google. El problema, claro está, es que no sabemos cómo combinarlos. Para entender bien cómo funciona esta red vamos a ir con un ejemplo. Supongamos que sois alumnos de una clase en la que el profesor no ha dicho exactamente cómo va a poner las notas. Para empezar, supongamos que sólo habéis hecho dos exámenes y tenéis la nota de cada uno de ellos y la final.

18

4.3.

LA NEURONA BIOLÓGICA

Fue Ramón y Cajal (1888) quién descubrió la estructura celular (neurona) del sistema nervioso. Defendió la teoría de que las neuronas se interconectaban entre sí de forma paralela, y no formando un circuito cerrado como el sistema sanguíneo. Una neurona consta de un cuerpo celular (soma) de entre 10 y 80 mm, del que surge un denso árbol de ramificaciones (dendritas) y una fibra tubular (axón) de entre 100 mm y un metro.

De alguna forma, una neurona es un procesador de información muy simple:  Canal de entrada: dendritas.  Procesador: soma.  Canal de salida: axón.

19

Una neurona cerebral puede recibir unas 10.000 entradas y enviar a su vez su salida a varios cientos de neuronas. La conexión entre neuronas se llama sinapsis. No es una conexión física, si no que hay unos 2 mm de separación. Son conexiones unidireccionales, en la que la transmisión de la información se hace de forma eléctrica en el interior de la neurona y de forma química entre neuronas; gracias a unas sustancias específicas llamadas neurotransmisora. No todas las neuronas son iguales, existen muchos tipos diferentes según el número de ramificaciones de sus dendritas, la longitud del axón y otros detalles estructurales. Sin embargo, como hemos visto, todas ellas operan con los mismos principios básicos. 4.4.

MODELO DE NEURONA ARTIFICIAL

El modelo de Rumelhart y McClelland (1986) define un elemento de proceso (EP), o neurona artificial, como un dispositivo que a partir de un conjunto de entradas, xi (i=1...n) o vector x, genera una única salida y.

Esta neurona artificial consta de los siguientes elementos:  Conjunto de entradas o vector de entradas x, de n componentes  Conjunto de pesos sinápticos wij. Representan la interacción entre la neurona presináptica j y la postsináptica i.  Regla de propagación postsináptico, hi(t).

d(wij,xj(t)):

proporciona

el

potencial

20

 Función de activación ai(t)=f(ai(t-1), hi(t)): proporciona el estado de activación de la neurona en función del estado anterior y del valor postsináptico.  Función de salida Fi(t): proporciona la salida yi(t), en función del estado de activación. Las señales de entrada y salida pueden ser señales binarias (0,1 – neuronas de McCulloch y Pitts), bipolares (-1,1), números enteros o continuos, variables borrosas, etc. La regla de propagación suele ser una suma ponderada del producto escalar del vector de entrada y el vector de pesos:

También se usa a menudo la distancia euclídea entre ambos vectores:

Existen otro tipo de reglas menos conocidas como la distancia de Voronoi, de Mahalanobis, etc. La función de activación no suele tener en cuenta el estado anterior de la neurona, sino sólo el potencial hi(t). Suele ser una función determinista y, casi siempre, continua y monótona creciente. Las más comunes son la función signo (+1 si hi(t)>0, -1 en caso contrario), la función semilineal y las funciones sigmoides:

La función de salida suele ser la identidad. En algunos casos es un valor umbral (la neurona no se activa hasta que su estado supera un determinado valor).

21

Con todo esto, el modelo de neurona queda bastante simplificado:

4.5.

RED NEURONAL ARTIFICIAL

Una red neuronal artificial (RNA) se puede definir (Hecht – Nielssen 93) como un grafo dirigido con las siguientes restricciones:  Los nodos se llaman elementos de proceso (EP).  Los enlaces se llaman conexiones y funcionan como caminos unidireccionales instantáneos  Cada EP puede tener cualquier número de conexiones.

22

 Todas las conexiones que salgan de un EP deben tener la misma señal.  Los EP pueden tener memoria local.  Cada EP posee una función de transferencia que, en función de las entradas y la memoria local produce una señal de salida y / o altera la memoria local.  Las entradas a la RNA llegan del mundo exterior, mientras que sus salidas son conexiones que abandonan la RNA.

4.6.

ARQUITECTURA DE LAS RNA

La arquitectura de una RNA es la estructura o patrón de conexiones de la red. Es conveniente recordar que las conexiones sinápticas son direccionales, es decir, la información sólo se transmite en un sentido. En general, las neuronas suelen agruparse en unidades estructurales llamadas capas. Dentro de una capa, las neuronas suelen ser del mismo tipo. Se pueden distinguir tres tipos de capas:  De entrada: reciben datos o señales procedentes del entorno.  De salida: proporcionan la respuesta de la red a los estímulos de la entrada.  Ocultas: no reciben ni suministran información al entorno (procesamiento interno de la red). Generalmente las conexiones se realizan entre neuronas de distintas capas, pero puede haber conexiones intracapa o laterales y conexiones de realimentación que siguen un sentido contrario al de entrada-salida.

23

5. LÓGICA DIFUSA

La lógica difusa (también llamada lógica borrosa) se basa en lo relativo de lo observado como posición diferencial. Este tipo de lógica toma dos valores aleatorios, pero contextualizados y referidos entre sí. Así, por ejemplo, una persona que mida dos metros es claramente una persona alta, si previamente se ha tomado el valor de persona baja y se ha establecido en un metro. Ambos valores están contextualizados a personas y referidos a una medida métrica lineal. 24

5.1. INTRODUCCIÓN: La lógica borrosa es una rama de la inteligencia artificial que se funda en el concepto "Todo es cuestión de grado", lo cual permite manejar información vaga o de difícil especificación si quisiéramos hacer cambiar con esta información el funcionamiento o el estado de un sistema específico. Es entonces posible con la lógica borrosa gobernar un sistema por medio de reglas de 'sentido común' las cuales se refieren a cantidades indefinidas. Las reglas involucradas en un sistema borroso, pueden ser aprendidas con sistemas adaptativos que aprenden al ' observar ' como operan las personas los dispositivos reales, o estas reglas pueden también ser formuladas por un experto humano. En general la lógica borrosa se aplica tanto a sistemas de control como para modelar cualquier sistema continuo de ingeniería, física, biología o economía. La lógica borrosa es entonces definida como un sistema matemático que modela funciones no lineales, que convierte unas entradas en salidas acordes con los planteamientos lógicos que usan el razonamiento aproximado. Se fundamenta en los denominados conjuntos borrosos y un sistema de inferencia borroso basado en reglas de la forma " SI....... ENTONCES...... ", donde los valores lingüísticos de la premisa y el consecuente están definidos por conjuntos borrosos, es así como las reglas siempre convierten un conjunto borroso en otro. 5.2. HISTORIA: Los conjuntos difusos fueron introducidos por primera vez en 1965; la creciente disciplina de la lógica difusa provee por sí misma un medio para acoplar estas tareas. En cierto nivel, la lógica difusa puede ser vista como un lenguaje que permite trasladar sentencias sofisticadas en lenguaje natural a un lenguaje matemático formal. Mientras la motivación original fue ayudar a manejar aspectos imprecisos del mundo real, la práctica temprana de la lógica difusa permitió el desarrollo de aplicaciones prácticas. Aparecieron numerosas publicaciones que presentaban los fundamentos básicos con aplicaciones potenciales. Esta frase marcó una fuerte necesidad de distinguir la lógica difusa de la teoría de probabilidad. Tal como la entendemos ahora, la teoría de conjuntos difusos y la teoría de probabilidad tienen diferentes tipos de incertidumbre.

25

En 1994, la teoría de la lógica difusa se encontraba en la cumbre, pero esta idea no es nueva, para muchos, estuvo bajo el nombre de lógica difusa durante 25 años, pero sus orígenes se remontan hasta 2,500 años. Aún Aristóteles consideraba que existían ciertos grados de veracidad y falsedad. Platón había considerado ya grados de pertenencia. En el siglo XVIII el filósofo y obispo anglicano Irlandés, George Berkeley y David Hume describieron que el núcleo de un concepto atrae conceptos similares. Hume en particular, creía en la lógica del sentido común, el razonamiento basado en el conocimiento que la gente adquiere en forma ordinaria mediante vivencias en el mundo. En Alemania, Immanuel Kant, consideraba que solo los matemáticos podían proveer definiciones claras, y muchos principios contradictorios no tenían solución. Por ejemplo la materia podía ser dividida infinitamente y al mismo tiempo no podía ser dividida infinitamente. Particularmente la escuela americana de la filosofía llamada pragmatismo fundada a principios de siglo por Charles Sanders Peirce, cuyas ideas se fundamentaron en estos conceptos, fue el primero en considerar ''vaguedades'', más que falso o verdadero, como forma de acercamiento al mundo y a la forma en que la gente funciona. La idea de que la lógica produce contradicciones fue popularizada por el filósofo y matemático británico Bertrand Russell, a principios del siglo XX. Estudio las vaguedades del lenguaje, concluyendo con precisión que la vaguedad es un grado. El filósofo austríaco Ludwing Wittgenstein estudió las formas en las que una palabra puede ser empleada para muchas cosas que tienen algo en común. La primera lógica de vaguedades fue desarrollada en 1920 por el filósofo Jan Lukasiewicz, visualizó los conjuntos con un posible grado de pertenencia con valores de 0 y 1, después los extendió a un número infinito de valores entre 0 y 1. En los años sesentas, Lofti Zadeh inventó la lógica difusa, que combina los conceptos de la lógica y de los conjuntos de Lukasiewicz mediante la definición de grados de pertenencia.

5.3. FUNCIONAMIENTO La lógica difusa (fuzzy logic, en inglés) se adapta mejor al mundo real en el que vivimos, e incluso puede comprender y funcionar con nuestras expresiones, del tipo «hace mucho calor», «no es muy alto», «el ritmo del corazón está un poco acelerado», etc.

26

La clave de esta adaptación al lenguaje se basa en comprender los cuantificadores de cualidad para nuestras inferencias (en los ejemplos de arriba, «mucho», «muy» y «un poco»).

En la teoría de conjuntos difusos se definen también las operaciones de unión, intersección, diferencia, negación o complemento, y otras operaciones sobre conjuntos (ver también subconjunto difuso), en los que se basa esta lógica. Para cada conjunto difuso, existe asociada una función de pertenencia para sus elementos, que indica en qué medida el elemento forma parte de ese conjunto difuso. Las formas de las funciones de pertenencia más típicas son trapezoidales, lineales y curvas. Se basa en reglas heurísticas de la forma SI (antecedente) ENTONCES (consecuente), donde el antecedente y el consecuente son también conjuntos difusos, ya sea puros o resultado de operar con ellos. Sirvan como ejemplos de regla heurística para esta lógica (nótese la importancia de las palabras «muchísimo», «drásticamente», «un poco» y «levemente» para la lógica difusa):  SI hace muchísimo frío. ENTONCES aumento drásticamente la temperatura.  SI voy a llegar un poco tarde. ENTONCES aumento levemente la velocidad. Los métodos de inferencia para esta base de reglas deben ser sencillos, versátiles y eficientes. Los resultados de dichos métodos son un área final, fruto de un conjunto de áreas solapadas entre sí (cada área es resultado de una regla de inferencia). Para escoger una salida concreta a partir de tanta premisa difusa, el método más usado es el del centroide, en el que la salida final será el centro de gravedad del área total resultante. Las reglas de las que dispone el motor de inferencia de un sistema difuso pueden ser formuladas por expertos o bien aprendidas por el propio sistema, haciendo uso en este caso de redes neuronales para fortalecer las futuras tomas de decisiones.

27

Los datos de entrada suelen ser recogidos por sensores que miden las variables de entrada de un sistema. El motor de inferencias se basa en chips difusos, que están aumentando exponencialmente su capacidad de procesamiento de reglas año a año. Un esquema de funcionamiento típico para un sistema difuso podría ser de la siguiente manera:

5.4. LÓGICA DIFUSA EN INTELIGENCIA ARTIFICIAL La lógica difusa es una rama de la inteligencia artificial que le permite a una computadora analizar información del mundo real en una escala entre lo falso y lo verdadero, manipula conceptos vagos, como "caliente" o "húmedo", y permite a los ingenieros construir dispositivos que juzgan la información difícil de definir. En Inteligencia artificial, la lógica difusa, o lógica borrosa se utiliza para la resolución de una variedad de problemas, principalmente los relacionados con control de procesos industriales complejos y sistemas de decisión en general, la resolución y la compresión de datos. Los sistemas de lógica difusa están también muy extendidos en la tecnología cotidiana, por ejemplo en cámaras digitales, sistemas de aire acondicionado, lavar ropas, etc. Los sistemas basados en lógica difusa imitan la forma en que toman decisiones los humanos, con la ventaja de ser mucho más rápidos. Estos sistemas son generalmente robustos y tolerantes a imprecisiones y ruidos en los datos de entrada. Algunos lenguajes de programación lógica que han incorporado la lógica difusa serían por ejemplo las diversas implementaciones de Fuzzy PROLOG o el lenguaje Fril.

28

5.5. VENTAJAS E INCONVENIENTES Como principal ventaja, cabe destacar los excelentes resultados que brinda un sistema de control basado en lógica difusa: ofrece salidas de una forma veloz y precisa, disminuyendo así las transiciones de estados fundamentales en el entorno físico 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 estaría encendiéndose y apagándose continuamente, con el gasto energético que ello conllevaría. Si estuviese regulado por lógica difusa, esos 30º no serían ningún umbral, y el sistema de control aprendería a mantener una temperatura estable sin continuos apagados y encendidos. También está la indecisión de decantarse bien por los expertos o bien por la tecnología (principalmente mediante redes neuronales) para reforzar las reglas heurísticas iniciales de cualquier sistema de control basado en este tipo de lógica.

29