1 IMPLEMENTACIÓN COMPUTACIONAL PARA EL APOYO A LA TOMA DE DECISIONES, UTILIZANDO METODOLOGÍAS DIFUSAS Gabriel Jaime Correa Henao Gloria Elena Peña Zapata.

Slides:



Advertisements
Presentaciones similares
Programa de Análisis Numérico
Advertisements

INTELIGENCIA ARTIFICIAL
INGENIERÍA DE SOFTWARE Introducción Arquitectura de Software
¿Qué es Sofware? Son el conjunto de instrucciones que dirigen las actividades del Hardware Consiste en programas, módulos de soporte y archivos de datos,
Lenguaje Unificado de Modelado
INVESTIGACION DE OPERACIONES I
PROCESO Y MODELOS EN LA INGENIERIA DE SOFTWARE
Investigación de Operaciones
Objetivos Desarrollar software funcional multi-modelo sobre distintas plataformas para el estudio de sistemas complejos de cómputo de alto rendimiento.
ELABORADO POR: Facilitando la educación.
Introducción a la Programación
UNIDAD I MODELOS Y TOMA DE DECISIONES
Guia Diseño Robert Echeverria
DESARROLLO E IMPLEMENTACIÓN DE CONTROLADORES PARA LA PLANTA DE VELOCIDAD DC SPEED CONTROL SYSTEM MEDIANTE LA UTILIZACIÓN DE LA HERRAMIENTA RTW (REAL-TIME.
Programación de Sistemas
COMPONENTIZACIÓN DE ALGORITMOS GENETICOS Y SU IMPLEMENTACIÓN EN UNA PLATAFORMA ABIERTA PARA APRENDIZAJE COMPUTACIONAL.
Programación 1 Introducción
Introducción a la programación
Software Se conoce como software al equipamiento lógico o soporte lógico de un sistema informático, que comprende el conjunto de los componentes lógicos.
Con fines prácticos se puede clasificar al software en tres tipos: Software de sistema Software de programación Software de aplicación.
IINTRODUCCION A LA CIENCIA DE LA COMPUTACION Y A LA PROGRAMACION
ESCUELA POLITECNICA DEL EJERCITO COMPUTACIÒN AVANZADA NOMBRES:
ALGORITMOS, LENGUAJES Y TECNICAS DE PROGRAMACION
TRIMESTRE 1. Modulo I : Conceptos Generales La información es es un conjunto organizado de datos procesados, que constituyen un mensaje que cambia el.
TRADUCTOR DE UN PROGRAMA
Sistemas a Eventos Discretos
Ingeniería de Software
SOFTWARE DE SIMULACION
Programa: Ciencia Computacional Línea de modelación matemática y simulación computacional La modelación matemática y simulación computacional permite predecir.

Contenido: 1- Que es el .Net Framework 2- Arquitectura en .Net
 Fue en el año 1945 cuando el matemático Jhon Von Neumann, fascinado por las posibilidades del ENIAC, demostró que una computadora podía tener una estructura.
Las etapas de un proyecto
Programación de Sistemas
Investigación de Operaciones (IO)
JAIRO PERTUZ CAMPO MANEJO Y APLICACIÓN DEL MATLAB en la
INVESTIGACION DE OPERACIONES
METODOLOGÍA OMT Diseño de sistemas.
Programación Lineal Entera Antonio H. Escobar Z Universidad Tecnológica de Pereira – Colombia Posgrado en Ingeniería Maestría en Ingeniería Eléctrica.
Universidad Central de Venezuela Facultad de Ciencias Postgrado en Ciencias de la Computación Sistemas Distribuidos Albany Márquez.
Introducción a la Informática
Introducción a la tecnología Realizado por: Miguel Ángel Arias.
Investigación de Operaciones Ing. M.Sc. Eloy Colquehuanca
MATLAB Adriana Ruiz Martínez. Mario Cesar Taracena Contreras.
SOFTWARE WITNESS Alumna: Lucia Pantoja Obando. ¿Qué es el software Witness? Es una herramienta de simulación que permite modelar el entorno de trabajo,
COMPUTO III Ing. Jimmy Ojeda Arnica.
Representación de Algoritmos
Desarrollo de Software Orientado a Objetos (deficiencias)
Lenguajes de Programación
8.4 Toolbox de Matlab.
FUNDAMENTOS DE MARKETING
María José Freire Mayra Coello Juan Francisco Pérez
COMPUTO III Ing. Jimmy Ojeda Arnica. METODOLOGIA DEL CURSO Objetivos del curso : Comprender el entorno de los lenguajes visuales. Comprender el entorno.
Metodología de la programación
“... El aprendizaje tiene lugar cuando el alumno “internaliza” o se “apropia” de formas significativas de las acciones mediadas por herramientas, o de.
Introducción a UML Departamento de Informática Universidad de Rancagua
Programación Lineal.
Naime Cecilia del Toro Alvarez
Unidad TemáticaI. Conceptos Básicos Horas Prácticas10 Horas Teóricas8 Horas Totales18 Objetivo El alumno determinará las entradas, procesos y salidas.
UNIDAD 2: “Características del Modelado UML” CONTENDIDO Elaborado por: Ingeniero Harold Cabrera Meza Actualizado por: Ingeniero Nilson Albeiro Ferreira.
 Visual Basic es un lenguaje de programación dirigido por eventos, desarrollado para Microsoft. Este lenguaje de programación es un dialecto de BASIC,
 Panorama General Fundamentos de Programación M.I. Jaime Alfonso Reyes Cortés.
PARADIGMA Es un marco de referencia que impone reglas sobre cómo se deben hacer las cosas. CONCEPTO DE PARADIGMA DE PROGRAMACION colección de modelos conceptuales.
LABORATORIO VIRTUAL DE TVAD de RTVV GABINETE I+D+i.
Marco de Trabajo para Indexación, Clasificación y Recopilación Automática de Documentos Digitales Javier Caicedo Espinoza Gonzalo Parra Chico.
PROGRAMACION.
Introducción a la abstracción de datos MC Beatriz Beltrán Martínez Primavera 2015.
Guayaquil, 18 de Septiembre del 2015 Tema : Programación Lineal (Función Objetivo) Destreza: Identificar la función objetivo y escribir una expresión.
Mclobely System Solver Ing. Marko Castillo Peña. INTRODUCCIÓN  Actualmente la administración está funcionando en un ambiente de negocios que está sometido.
Curso de programación Visual Chart 6 (1ªEd.)
Transcripción de la presentación:

1 IMPLEMENTACIÓN COMPUTACIONAL PARA EL APOYO A LA TOMA DE DECISIONES, UTILIZANDO METODOLOGÍAS DIFUSAS Gabriel Jaime Correa Henao Gloria Elena Peña Zapata Edgardo Anaya Martínez Evento de Aplicaciones de MATLAB

2 INTRODUCCIÓN

3 La Lógica Difusa en la Toma de Decisiones La lógica difusa es un método de razonamiento que permite especificar los problemas de control del mundo real en términos probabilísticos, sin necesidad de acudir a modelos matemáticos y con un nivel de abstracción mucho más elevado. No utiliza conceptos absolutos, sino valores variables de pertenencia, siguiendo patrones de razonamiento similares a los del ser humano

4 Análisis Multiobjetivo (AMO), El Análisis Multiobjetivo (AMO), es una rama de la Investigación de Operaciones, que permite evaluar diferentes alternativas en un problema donde se tienen en cuenta unas metas y unas limitaciones o restricciones. Toma de Decisiones La Toma de Decisiones aprovecha técnicas de Análisis Multiobjetivo, para solucionar problemas de trascendencia. ¿Qué significa AMO?

5 Metodologías Discretas RESTRICCIONES CONJUNTO DE ALTERNATIVAS OBJETIVOS DESEADOS TOMA DE DECISIONES

6 Metodologías Continuas Solución de modelos de programación lineal, planteados de la forma:

7 Metodologías Continuas Solución Problema : ­Defuzzificación de la Función de Restricción, usando los valores de la función objetivo con y sin violaciones - Solución del P.L. Auxiliar. max sujeto a:

8 Metodologías Continuas Formulación de Modelos con Números Difusos ā = (m - , m, m +  ) Número difuso triangular asimétrico

9 Metodologías Continuas Transformaciones para la solución del problema difuso max f(x) s.a:  a i1  x 1 +  +  a in  x n   b i, i = 1, , m x j , j = 1, , n.

10 GENERACIÓN DE ALGORITMOS

11 Herramienta Computacional Plataforma en lenguaje, Borland C++ Builder, con interfaces VCL ( Visual Components Library ) Implementación de la Metodología Formulada Algoritmos de Desarrollo en Matlab. 1. Toolbox de Compilación 2. Genera archivos en C Potencialidad

12 Implementación de la Metodología Formulada Intercambio Dinámico de Datos Interacción con el Decisor optimización difusa Computación con palabras, teniendo en cuenta las vaguedades e incertidumbres del lenguaje humano, para realizar la mejor decisión (optimización difusa)

13 Programación de los Algoritmos Se elige la plataforma MATLAB  MATLAB ofrece alta capacidad de procesamiento matemático.  Sirve Para generar algoritmos de alta capacidad computacional.  Dichos algoritmos son muy difíciles de implementar en plataforma C++. Finalmente, se realiza el intercambio dinámico de datos, de archivos compilados, con el lenguaje de Programación Borland C++ Builder.

14 COMPILACIÓN DEL CÓDIGO MATLAB

15 Compilación del Código Uso de la Toolbox de Compilación (Matlab Compiler) El código compilado puede ser transformado en librerías: Archivos tipo DLL. Archivos compatibles con lenguaje C++. Archivos compatibles con programas elaborados en Visual Basic, Java y Visual C++.

16 Compilación del Código *.MC ó C++.  El Compilador de MATLAB permite traducir códigos de archivos *.M en archivos C ó C++..  El Compilador de MATLAB, también genera código compatible Fortran.  La compilación de código también se puede efectuar a partir de archivos Simulink (*.MDL).

17 Ventajas de Compilar Código 1.Crear aplicaciones independientes de MATLAB, que puedan correr en cualquier plataforma. 2.Crear Librerías de Intercambio dinámico de Datos (*.DLL), las cuales son compatibles con la mayoría de los lenguajes de programación. 3.Esconder algoritmos propietarios de MATLAB. 4.Mejorar el tiempo de procesamiento del código

18 Configuración de la Toolbox de Compilación  mex –setup -Permite ajustar el tipo de plataforma programación - La configuración soporta los lenguajes Visual C++, Borland C++ Buider, Fortran, LCC de MATLAB. mbuild –setup Permite incluir la librería de gráficos C/C++ en la compilación

19 Uso de la Toolbox de Compilación Comando para la generación de Librerías para ser incluidas en aplicaciones Borland C++ Builder mcc -t -B sgl -L C -W lib:mi_libreria -T link:lib -h archivo1.m archivo2.m... archivo_n libmmfile.mlib

20 Uso de la Toolbox de Compilación Este procedimiento genera las librerías de intercambio dinámico de datos. Esto es, se crea el archivo mi_libreria.DLL. Asimismo, el compilador genera los siguientes archivos: mi_libreria.lib mi_libreria.h mi_libreria.c mi_librerialib.h mi_librerialib.c mi_libreria.dll

21 Uso de la Toolbox de Compilación Librerías de Matlab necesarias para independizar la aplicación: libmmfile.lib libmatlb.lib libmx.lib Las librerías ofrecidas por Matlab son compatibles con: Borland Microsoft (msvc5, msvc6) Digital

22 Uso de la Toolbox de Compilación Creando los.lib que necesita C++builder: Comando de Borland “Implib”: Se necesita pasar los archivos “.def” a “.lib” implib %LIBDIR%\libmmfile.lib%MATLAB%\_libmmfile.def

23 Uso de la Toolbox de Compilación Para incluir dichos archivos en el entorno de programación C++ Builder, es necesario incluir dichos archivos al proyecto y efectuar un llamado a la función mi_libreriaInitialize() Asimismo es necesario efectuar un llamado a la función mi_libreriaTerminate() justo antes de salir de la aplicación C++Builder

24 HERRAMIENTA FUZZY ELECCIÓN

25 Herramienta Computacional Permite la solución de problemas de toma de decisiones, en ambiente discretos y continuos, mediante el uso de Metodologías Difusas

26 Herramienta Computacional Generación de Resultados a partir de razonamientos entregados por el decisor Respuestas entregadas por Matlab, visualizadas en C++

27 Herramienta Computacional Visualización de Resultados entregados por el Código MATLAB, en interfaces C++ Builder

28 Herramienta Computacional Entrada de variables desde interfaz C++ Builder para procesamiento en código compilado de MATLAB Parámetros de Entrada para funciones programadas en MATLAB

29 Herramienta Computacional Visualización de Resultados entregados por MATLAB para Problemas Discretos

30 Herramienta Computacional Visualización de Resultados entregados por MATLAB para Problemas Continuos

31 Conclusiones Se ha creado una herramienta computacional con algoritmos de alto nivel que permiten solucionar problemas multiobjetivo continuos, mediante el uso de lógica difusa. La misma se convierte en la primera en su género a nivel internacional. Las metodologías con apoyo en los operadores difusos se convierten en una manera más efectiva para entender el mundo real, toda vez que permiten compensar las inconsistencias debidas a la concepción determinista de las herramientas duras en la Investigación de Operaciones.

32