Mis estadisticas

sábado, 16 de abril de 2011

Inteligencia Artificial

Se denomina inteligencia artificial (IA) a la rama de las ciencias de la Computación dedicada al desarrollo de agentes racionales no vivos.

Para explicar la definición anterior, entiéndase a un agente como cualquier cosa capaz de percibir su entorno (recibir entradas), procesar tales percepciones y actuar en su entorno (proporcionar salidas), y entiéndase a la racionalidad como una capacidad humana que permite pensar, evaluar y actuar conforme a ciertos principios de optimidad y consistencia , para satisfacer algún objetivo o finalidad.

De manera más específica la inteligencia artificial es la disciplina que se encarga de construir procesos que al ser ejecutados sobre una arquitectura física producen acciones o resultados que maximizan una medida de rendimiento determinada, basándose en la secuencia de entradas percibidas y en el conocimiento almacenado en tal arquitectura.

Se dice que la AI es un campo que por sus investigaciones trata de ser independiente de la informática, y se define como la técnica d e software que los programas utilizan para dar solución a algún tipo de problema, pero tratando de asemejar el comportamiento inteligente que se observa en la naturaleza; es decir, trata de resolver problemas y tomar decisiones similares a las que toman los seres humanos al afrontar la vida diaria, realizando programas de computadora que aumenten la capacidad o “inteligencia“ de las mismas; el objetivo de las investigaciones de la IA es, aumentar la utilidad de las máquinas y sus procesos.
 

Así pues, una de las pretensiones de la IA es construir réplicas de la compleja red neuronal del cerebro humano e intentar imitar el comportamiento del cerebro humano con una computadora.

Las áreas de investigación de la IA
 

Son muchas las áreas de la IA que se investigan hoy día. Entre ellas, tenemos las siguientes:

·         La representación del conocimiento, que busca en el descubrimiento de métodos expresivos y eficientes describir información sobre aspectos del mundo real.

·         Los métodos de aprendizaje automático, que extienden las técnicas estadísticas con el fin de posibilitar la identificación de un amplio rango de tendencias generales a partir de un conjunto de datos de entrenamiento.

·         El campo de la planificación, que enfrenta el desarrollo de algoritmos que construyen y ejecutan automáticamente secuencias de comandos primitivos con el fin de alcanzar ciertas metas de alto nivel.

·         Los trabajos en el área de razonamiento posible, que hacen uso de principios estadísticos para desarrollar codificaciones de información incierta.

·         El estudio de las arquitecturas de agentes, que busca la integración de otras áreas de la IA con el objeto de crear agentes inteligentes, entidades robustas capaces de comportamiento autónomo y en tiempo real.

·         La coordinación y colaboración multiagentes, que ha permitido el desarrollo de técnicas para la representación de las capacidades de otros agentes y la especificación del conocimiento necesario para la colaboración entre ellos.

·         El desarrollo de ontologías, que persigue la creación de catálogos de conocimiento explícito, formal y multipropósito, que puedan ser utilizados por sistemas inteligentes.

·         Los campos de procesamiento de voz y lenguaje, que buscan la creación de sistemas que se comunican con la gente en su lenguaje.

·         La síntesis y comprensión de imágenes, que conduce a la producción de algoritmos para el análisis de fotografías, diagramas y videos, así como también de técnicas para el despliegue visual de información cuantitativa y estructurada.

viernes, 15 de abril de 2011

Áreas de aplicación

La IA se aplica en los sistemas reales en una gran variedad de ramas y problemas:

·         Gestión y control: análisis inteligente, fijación de objetivos.
·         Fabricación: diseño, planificación, programación, monitorización, control, gestión de proyectos, robótica simplificada y visión computarizada.
·         Educación: adiestramiento práctico, exámenes y diagnóstico.
·         Ingeniería: diseño, control y análisis.
·         Equipamiento: diseño, diagnóstico, adiestramiento, mantenimiento, configuración, monitorización y ventas.
·         Cartografía: interpretación de fotografías, diseño, resolución de problemas cartográficos.
·         Profesiones: abogacía, medicina, contabilidad, geología, química.
·         Software: enseñanza, especificación, diseño, verificación, mantenimiento.
·         Sistemas de armamento: guerra electrónica, identificación de objetivos, control adaptativo, proceso de imágenes, proceso de señales.
·         Proceso de datos: educación, interface en lenguaje natural, acceso inteligente a datos y gestores de bases de datos, análisis inteligente de datos.
·         Finanzas: planificación, análisis, consultoría.

Mas Informacion: Areas de aplicacion

jueves, 14 de abril de 2011

Metodos Inteligentes

Redes neuronales dentro de la AI

Las redes neuronales son modelos que intentan reproducir el comportamiento del cerebro. Los mismos constan de dispositivos elementales de proceso: las neuronas. A partir de ellas, se pueden generar representaciones específicas, de tal forma que un estado conjunto de ellas puede significar una letra, un número u otro objeto. 

Generalmente se pueden encontrar tres tipos de neuronas:

Aquellas que reciben estímulos externos relacionados con el aparato sensorial, que tomarán la información de entrada.

Dicha información se transmite a ciertos elementos internos que se ocupan de su procesamiento. Es en las sinapsis y neuronas correspondientes a este segundo nivel donde se genera cualquier tipo de representación interna de información. Como no tienen relación directa con la información de entrada ni con la salida, estos elementos se denominan unidades ocultas.
Una vez finalizado el período de procesado, la información llega a las unidades de salida, cuya misión es dar la respuesta al sistema.

miércoles, 13 de abril de 2011

REDES SEMANTICAS

Una red semántica o esquema de representación en Red es una forma de representación de conocimiento lingüístico en la que los conceptos y sus interrelaciones se representan mediante un grafo. En caso de que no existan ciclos, estas redes pueden ser visualizadas como árboles. Las redes semánticas son usadas, entre otras cosas, para representar mapas conceptuales y mentales.


En un grafo o red semántica los elementos semánticos se representan por nodos. Dos elementos semánticos entre los que se admite se da la relación semántica que representa la red, estarán unidos mediante una línea, flecha o enlace o arista. Cierto tipo de relaciones no simétricas requieren grafos dirigidos que usan flechas en lugar de líneas.

Las redes semánticas han sido muy utilizadas en Inteligencia Artificial para representar el conocimiento y por tanto ha existido una gran diversificación de técnicas. Los elementos básicos que encontramos en todos los esquemas de redes son:
  1. Estructuras de datos en nodos, que representan conceptos, unidas por arcos que representan las relaciones entre los conceptos.
  2. Un conjunto de procedimientos de inferencia que operan sobre las estructuras de datos.
Mas informacion:

Inteligencia Distribuida

La inteligencia artificial distribuida (IAD) aparece en la década de los 80's como una nueva rama de la inteligencia artificial (IA) que tiene el fin de estudiar sistemas inteligentes formados por un conjunto de varios agentes, estos intenta resolver problemas en donde una conducta colectiva es más eficiente que una conducta individual, como lo estudia la inteligencia artificial que hace el análisis de un único agente que se encuentra en un ambiente no cambiante y que intenta resolver todo el problema con solo esta entidad.

La dimensión y la complejidad de los nuevos sistemas de información son cada vez mayores, los planes para encontrar una solución global ante cierto problema necesitan integrar soluciones de problemas más pequeños. Lo anterior se asemeja a la idea de “divide y vencerás”, en la cual los planes para resolver subproblemas son más simples y precisos. Alonso particulariza las razones que influyeron en el paso de la IA a la IAD en dos, las primeras son razones epistemológicas y las segundas razones son técnicas.

Áreas de trabajo de la IAD  


Los anteriores problemas básicos que intenta atacar la IAD se solucionan mediante diferentes teorías que se ven reflejadas en distintas áreas de trabajo, las cuales se pueden descomponer en cuatro perspectivas (figura 1) [IGLE 1998].

 
  • Perspectiva de grupo 
Estudia las teorías y técnicas que caracterizan a un grupo de agentes, es decir los métodos necesarios para formar una sociedad de agentes para que exista cierto grado de planeación, coordinación, comunicación y coherencia entre sus entidades. 
  •  Perspectiva de agente 
Estudia la entidad agente, arquitecturas para desarrollo de agentes, lenguajes para desarrollo y comunicación de agentes, clasificación de tipo comercial y estructural, además como puede este cooperar en la sociedad de agentes. 
  •  Perspectivas Particulares 
Estudia las relaciones existentes de campos de la informática como la IA, Ingeniería de Software con la IAD. Por ejemplo sistemas de información abiertos que reaccionan a casos imprevistos, por lo que son inconsistentes, asíncronos, concurrentes, con control descentralizado; ecosistemas para evaluar un agente o la sociedad de agentes en base a una analogía ecológica y ver como esta evoluciona con el paso de las iteraciones; ingeniería de software basada en agentes los agentes encapsulan los programas y mediante la definición de unas primitivas, permiten el intercambio de órdenes y datos entre los programas .
  • Perspectivas del diseñador 
Estudia metodologías y herramientas para poder desarrollar software basado en agentes. Las metodologías asisten al desarrollador de sistemas de IAD en el ciclo de vida, y las herramientas le sirven en la implementación de dichos sistemas.


Mas informacion:  Inteligencia Distribuida

Elementos básicos

Aquí se maneja la siguiente simbología.
- variables x, y, z
- funciones f, g, h
- constantes a, b, c
-Símbolo de predicado P, Q, R, S, T
-Símbolos de puntación "(", ")", ","

Aunado a estos símbolos se utilizan los siguientes conceptos.
·         UNIVERSO El cual identifica a la totalidad de los valores que puede tomar una variable.
·         TERMINO Una variable es un termino, así como f(t) donde f es una función y T es una secuencia de uno o mas términos: Ejemplo: f(x), h(y), g( x,y,h(x) ), x, y,z, f( h(x,y), y(z,f(z) )
·         FORMULA ATOMATICA Una formula automática es un predicado p(x), donde P es el nombre del predicado y X es un termino. Ejemplo: Es-verde (limón) mamífero (Pedro) mamífero (ballena, delfín, cobras)
·         LITERAL Los literales son predicados o negaciones de predicados. Ejemplo: mamífero (Pedro) ~ mamífero (vidrio)
·         FORMULAS BIEN FORMADAS (WFF) Una WFF es una secuencias de formulas Atómicas ( o predicados) concatenados por medio de operadores lógicos. Ejemplo: P(x) v Q(y) ^ ~R(S) P(x) ^ Q(z) ==> ~R(s) mamífero(perro)=>tiene_sangre_caliente(perro)
·         SENTECE Las expresiones son wff donde el alcance de las variables esta perfectamente bien definido mediante cuantificadores o bien UNIVERSALES ó bien EXISTENCIALES.
Nota:

Símbolos
Definición

V
Para todo(cuantificador Universal)
E
Existe(Cuantificadores Existencial)
E
equivale a ~V No existe



Ejemplo:

Todo mamífero tiene sangre caliente
V mamífero(x) => tiene_sangre_caliente(x)
Todos los hijos tienen un padre y una Madre
V hijo(x) => E madre(y)^ padre(z)


·         CLAUSULA: Es una disyunción de literales (una cláusula es una disyunción de predicados y/o predicados negados.

Ejemplos.
Conjunción equivale a And ( ^ )
Disyunción equivale o or (v)

Logica Proposicional y de Predicados

La lógica, o al menos la matemática lógica, consiste en deducciones. Vamos a examinar las reglas de deducción haciendo uso de precisión que caracteriza el enfoque matemático Al hacer esto, si queremos que haya tenemos que hacer inequívoco nuestro lenguaje, y la manera matemática estándar de lograr esto consiste en introducir un lenguaje simbólico en el que los símbolos tengan significados y usos enunciados con toda precisión.

El lenguaje, como instrumento de comunicación del conocimiento humano, está constituido por frases de tipo interrogativo, imperativo y declarativo. Estas últimas constituyen el elemento básico de la descripción del conocimiento.

El conocimiento puede producirse bien por constataciones de hechos o ideas, que tienen un reflejo en frases de tipo declarativas, como por deducción, a partir de una serie de declaraciones, de otras nuevas cuya afirmación se sigue necesariamente de las declaraciones previas.

Todas las presentaciones de las formulas matemáticas de la lógica más usual, tienen en común una etapa previa de simbolización de las formas de lenguaje usual que puede hacerse a dos niveles según el grado de complejidad del análisis y son el Cálculo Proposicional y el Cálculo de Predicados.

Cálculo de Predicados de Primer Orden

El Cálculo de Predicados de Primer Orden es útil para IA como medio de representación e inferencia.
La IA no garantiza siempre una respuesta (no es determinista, no representa procedimiento efectivo)
  • Ejemplo
    • Marco era un hombre
    • Marco era pompeyano
    • Todos los pompeyanos eran romanos
    • César fue un gobernante
    • Todos los romanos o eran leales a César o lo odiaban
    • Todo el mundo es leal a alguien
    • La gente sólo intenta a asesinar los gobernantes a los que no es leal
    • Marco intentó asesinar a César

Resolución                                    
   
Es una regla de inferencia usada en la deducción computacional, debido a que es eficiente ya que trabaja sobre sentencias que han sido transformadas a una forma canónica llamadas cláusulas disyuntivas.
Este proceso de resolución obtiene demostraciones por refutación. Es decir, para probar una proposición (su validez) se intenta demostrar que su negación lleva a una contradicción con las proposiciones conocidas (es decir es insatisfactible). 




lunes, 11 de abril de 2011

Unificación

Por ejemplo en Lógica Proposicional la contradicción es evidente porque Estudia (Belén) ^¬  Estudia (Belén).

Pero en Cálculo de Predicados es diferente porque si tengo:
Estudia(x) ^ ¬Estudia (y). No hay contradicción [Belén/ x, Alberto/y]  Estudia (Belén)
^¬  Estudia (Belén).  

P(a) y P(x) no son comparables, para que lo sean, se debe encontrar una substitución para x que haga ambas fórmulas idénticas. Este proceso de encontrar una sustitución para hacer fórmulas idénticas  se conoce como unificación.
Lo que se puede sustituir en una fbf para permitir el paramiento de dos fórmulas son las variables por términos.

Variable (Símbolos de constantes, Símbolos de variables, expresiones funcionales)
 
Sustitución
  • La sustitución de variables por términos generales se remite a variables libres. En las ocurrencias ligadas sólo podemos hacer un cambio de variables por variables y no sucede nada
  • La sustitución se debe hacer para todas las ocurrencias libres o para ninguna
  • Hay que cuidar que una variable libre no se convierta en ligada por la sustitución.
 

Las bases de la resolución

El procedimiento de resolución es un proceso iterativo en el cual, en cada paso se comparan dos cláusulas llamadas cláusulas padres produciendo una nueva cláusula que se ha inferido de ellas llamada resolvente.
Las cláusulas padres deberán ser tales que tengan ambas un mismo literal, una afirmada y la otra negado.
   Ejemplo
  • Es invierno o es verano
  • No es invierno o hace frío





Resolución en Lógica Proposicional

    Sea ф la conclusión,  Σ el conjunto de los argumentos:
1. Convertir todas las proposiciones en Σ a su forma de cláusulas
2. Negar 
ф
y convertir el resultado en cláusula. Agregar la o las cláusulas resultantes al conjunto de cláusulas obtenidas en 1
3. Hasta encontrar una contradicción o no se pueda seguir avanzando:
  • Seleccionar dos cláusulas que tienen como literales una L y la otra ¬L
  • Resolverlas juntas. El resolvente será la disyunción de todos los literales que contienen los padres excepto L y ¬L
  • Si el resolvente es la cláusula vacía, es que se ha encontrado una contradicción. Si no lo es agregarla al conjunto de cláusulas disponibles.
Resolución en Lógica de Predicados

1. Convertir todas las expresiones de Σ a Cláusulas
2. Negar ф
y convertir el resultado en cláusula  y agregarlo al conjunto obtenido en 1
3. Repetir hasta encontrar una contradicción o no se pueda seguir:
a) Seleccionar cláusulas padres
b) Si existe un par de literales L1 y L2, uno en cada cláusula padre, tal que L1 y ¬L2 sean unificables, entonces obtener el resolvente mediante:
  • La disyunción de los literales de ambas cláusulas padres excepto L1 y L2
  • Usar la sustitución que unifica L1 y ¬L2 para crear el resolvente
  • Si existe más de un par de literales complementarios, sólo se elimina uno
c) Si el resolvente es la cláusula vacía, se ha encontrado contradicción, sino agregarla al conjunto de cláusulas.

viernes, 8 de abril de 2011

Sistemas de producción


El sistema de Producción está orientado principalmente al control de procesos, desde la generación del pedido hasta el despacho de productos terminados, permitiendo realizar lo siguiente:
  • Planeamiento y control de la producción.
  • Emisión de OPs y OTs. 
  • Control de tiempos de procesamiento. 
  • Valorización de pedidos. 
  • Generación del Despacho. 
  • Control de costos de producción. 
  • Simulación y valorización de pedidos. 
  • Set de reportes de control.  
¿Qué beneficios brinda?

  • Mejorar o mantener la calidad de su servicio
  • Planificar la compra de materia prima e insumos.
  • Asegurar la entrega de sus productos
  • Mejorar la planificación y control de la producción.
  • Disminuir costos y ahorrarle dinero a su Empresa.
  • Permite realizar trazabilidad de productos.

Principales opciones

  • Maestro de fórmulas
  • Ingreso de pedidos Cíclicos.
  • Generación automática de pedidos.
  • Programación, simulación y costeo de pedidos.
  • Generación de requerimientos.
  • Solicitud de pedidos.
  • Ordenes de producción.
  • Generación de OPS.
  • Consolidar OPS.
  • Control diario de Producción.
  • Calculo de Costos según solicitud de Pedidos.
  • Despacho de productos terminados.
  • Despacho de insumos.
  • Consulta consolidada por OPS.
  • Reporte Detalle de Producción Pendiente y exceso.
  • Reporte Detalle de Formulación.
  • Reporte Ordenes de Producción – Resumen y detalle.
  • Reporte Detalle de Explosión de Pedidos.
  • Reporte Ordenes de Trabajo – OTS.
  • Reporte Despacho de Insumos.
  • Reporte Control Diario de la Producción.
  • Reporte Despacho Diario por Pedido de Venta.
  • Reporte Productos según lugar de Producción.
  • Reportes de programación semanal.
  • Reportes de costos de producción.
 

Representacion de problemas como sistema de produccion


Un sistema de producción proporciona una estructura que facilita la descripción y la ejecución de un proceso de búsqueda. Un sistema de producción consiste de:

  • Un conjunto de facilidades para la definición de reglas.
  • Mecanismos para acceder a una o más bases de conocimientos y datos.
  • Una estrategia de control que especifica el orden en el que las reglas son procesadas, y la forma de resolver los conflictos que pueden aparecer cuando varias reglas coinciden simultáneamente.
  • Un mecanismo que se encarga de ir aplicando las reglas.

Dentro de esta definición general de sistema de producción, se incluyen: 

  • Lenguajes básicos para sistemas de producción (LISP, CLIPS, PROLOG). También se los conoce como lenguajes de Inteligencia Artificial.
  • Sistemas híbridos y sistemas vacíos (shells) para producción de sistemas basados en conocimientos (VP-Expert, Expert Teach, Personal Consultant, Intelligence Compiler, EXSYS).
  • Arquitecturas generales para resolución de problemas (máquinas LISP, máquinas PROLOG).

Mecanismos de inferencia


  • Funciones 
Deducir nuevos hechos,  ejecutar  acciones  para  resolver el problema (objetivo) a partir de un conjunto inicial de hechos y eventualmente a través  de una interacción  con el usuario.

  • Componentes
Intérprete de reglas + estrategia de control
  •  Fases
  1. Detección  (filtro):  REGLAS PERTINENTES: Obtención  del conjunto  de instanciaciones de reglas. Formación  del conjunto  de conflictos. 
  2. Selección: ¿QUÉ  REGLA?: Resolución de conflictos: selección de la instanciación  a aplicar. 
  3. Aplicación: Aplicación de la regla.
 
Detección  
  • Construcción del conjunto de instanciaciones de reglas (Conjunto de conflicto).
  • El intérprete de reglas realiza los cálculos e instanciaciones necesarias que son posibles en cada estado de resolución del problema (matching).
  • Una regla puede instanciarse más de una vez, caso de existir variables (p.ej. CP1).
 
Selección
  • Selección de la mejor instanciación
  • Las reglas instanciadas son seleccionadas para aplicarse dependiendo de la estrategia de control (Estrategia de resolución de conflictos). 
  1. Estrategia fija
  2. Estrategia dinámica prefijada
  3. Estrategia guiada por meta-reglas.
  • Criterios aplicables:
  1. 1a regla por orden en la Base de Conocimientos
  2. La regla más/ menos utilizada
  3. La regla más específica/la más general
  4. La regla que tenga el grado de certeza más alto
  5. La instanciación que satisfaga los hechos:
  • Más prioritarios,
  • Más antiguos (instanciación más antigua),
  • Más nuevos (instanciación más reciente), ...
     6.  Posible combinación de criterios