Red Neuronal Codigo C#

download Red Neuronal Codigo C#

of 114

Transcript of Red Neuronal Codigo C#

  • 7/23/2019 Red Neuronal Codigo C#

    1/114

    UNIVERSIDAD AUSTRAL DE CHILESEDE PUERTO MONTT

    ESCUELA DE INGENIERIA EN COMPUTACION

    SISTEMA DE ANLISIS DE VARIABLES ELCTRICAS CONREDES DE NEURONAS ARTIFICIALES

    Seminario de Titulacinpara optaral ttulo de Ingeniero en Computacin

    PROFESOR PATROCINANTE:Sra. Mnica Gallardo Vargas

    RICARDO ANDRS RUBILAR SANHUEZA

    PUERTO MONTT CHILE

    2008

  • 7/23/2019 Red Neuronal Codigo C#

    2/114

  • 7/23/2019 Red Neuronal Codigo C#

    3/114

  • 7/23/2019 Red Neuronal Codigo C#

    4/114

  • 7/23/2019 Red Neuronal Codigo C#

    5/114

  • 7/23/2019 Red Neuronal Codigo C#

    6/114

    ii

    INDICE

    SINTESIS EN CASTELLANO

    SINTESIS EN INGLS

    1 INTRODUCCIN ......................................................................................... 1

    2 OBJETIVOS ................................................................................................. 5

    2.1 Objetivo General .................................................................................... 5

    2.2 Objetivos especficos ............................................................................. 5

    3 PLANTEAMIENTO DEL PROBLEMA .......................................................... 6

    3.1 Antecedentes ......................................................................................... 63.1.1 Definicin del problema ................................................................... 6

    3.1.2 Identificacin de esfuerzos anteriores para resolverlo .................. 10

    3.1.3 Solucin propuesta........................................................................ 11

    3.1.4 Equipo de trabajo .......................................................................... 14

    3.2 Justificacin .......................................................................................... 15

    3.2.1 Situacin sin proyecto ................................................................... 15

    3.2.2 Situacin con proyecto .................................................................. 15

    3.3 Delimitacin .......................................................................................... 16

    4 METODOLOGA ........................................................................................ 17

    4.1 Desarrollo de Software ......................................................................... 17

    4.2 Implementacin de Red Neuronal ........................................................ 18

    5 RECURSOS .............................................................................................. 20

    5.1 Equipos ................................................................................................ 20

    5.2 Software ............................................................................................... 21

    5.2.1 Herramientas de desarrollo ........................................................... 21

    5.2.2 Usuarios ........................................................................................ 22

    6 Inicio del Proyecto ..................................................................................... 23

    6.1 Investigacin previa.............................................................................. 23

    6.1.1 Teora elctrica respecto de las variables analizadas ................... 23

  • 7/23/2019 Red Neuronal Codigo C#

    7/114

    iii

    6.1.2 Normativa elctrica Chilena Vigente (NCH 2003-04) .................... 31

    6.1.3 Equipo de monitoreo elctrico DM-II ............................................. 32

    6.1.4 Sistemas de reconocimiento de patrones. .................................... 33

    6.1.5 Redes Neuronales ......................................................................... 34

    6.1.6 Generalidades de las Redes Neuronales ...................................... 35

    6.2 Preparacin del entorno de desarrollo. ................................................ 40

    6.3 Modelado Inicial ................................................................................... 41

    7 Elaboracin ................................................................................................ 42

    7.1 Definicin de requerimientos ................................................................ 42

    7.1.1 Modelo del Dominio ....................................................................... 42

    7.1.2 Glosario de trminos ..................................................................... 43

    7.1.3 Diagramas de Casos de Uso del Sistema. .................................... 47

    7.1.4 Especificacin de los Casos de Uso ............................................. 48

    7.2 Diagrama de Clases de Base de Objetos ............................................ 55

    7.3 Detalle de Clases y relaciones ............................................................. 58

    8 Construccin .............................................................................................. 65

    8.1 Definicin de Arquitectura .................................................................... 658.2 Anlisis estadstico de la medicin y pre condiciones de bsqueda de

    anomalas. ............................................................................................ 66

    8.3 Redes Neuronales utilizadas en el anlisis .......................................... 67

    8.3.1 Red Neuronal 1. Sugerencias de anlisis. .................................... 68

    8.3.2 Red Neuronal 2. Deteccin y clasificacin de anomalas. ............. 72

    8.3.3 Sub Redes especializadas ............................................................ 77

    9 Interfaz de Usuario .................................................................................... 78

    10 Pruebas ................................................................................................... 84

    11 Conclusiones y Recomendaciones ......................................................... 88

    12 Bibliografa .............................................................................................. 90

    13 ANEXOS ................................................................................................. 92

  • 7/23/2019 Red Neuronal Codigo C#

    8/114

    iv

    TABLAS

    Tabla 1. Equipo de trabajo. ............................................................................... 14

    Tabla 2. Caractersticas tcnicas equipo DM-II................................................. 33

    Tabla 3. Detalle de clases. ................................................................................ 58

    Tabla 4. Detalle de asociaciones. ..................................................................... 59

    Tabla 5. Detalle de atributos clase Cliente ........................................................ 60

    Tabla 6. Detalle de atributos clase Consultor ................................................... 61

    Tabla 7. Detalle de atributos clase Auditoria ..................................................... 62

    Tabla 8. Detalle de atributos clase Medicin .................................................... 63

    Tabla 9. Detalle de atributos clase Registro .................................................... 64

    Tabla 10. Arreglos de entrada y salida de red neuronal 1. ............................... 69

    Tabla 11 Configuraciones de Red Neuronal 1. ................................................. 70

    Tabla 12. Error en la iteracin nmero 1.000 del proceso de entrenamiento de lared neuronal 1. ................................................................................. 72

    Tabla 13. Arreglos de Entrada y salida Red Neuronal 2. .................................. 73

    Tabla 14. Configuraciones Red Neuronal 2. ..................................................... 74

    Tabla 15. Error en entrenamiento de distintas configuraciones de la redneuronal 2. ..................................................................................... 75

    Tabla 16. Error en la iteracin nmero 1.000 del proceso de entrenamiento de la

    red neuronal 2. ................................................................................. 76

  • 7/23/2019 Red Neuronal Codigo C#

    9/114

    v

    FIGURAS

    Figura 1. Instalacin tpica de equipo de captura de variables elctricas. .......... 7

    Figura 2. Proceso de anlisis de los datos elctricos capturados. ...................... 9

    Figura 3. Ciclo de vida de AUP. ........................................................................ 18

    Figura 4. Definicin de la tensin elctrica. ...................................................... 24

    Figura 5. Definicin de corriente elctrica. ........................................................ 24

    Figura 6. Definicin de potencia........................................................................ 25

    Figura 7. Ecuacin de la potencia en funcin de la tensin y la corriente ......... 26

    Figura 8. Ecuacin y representacin grafica de tensin y la corriente condesfase. ........................................................................................... 27

    Figura 9. Funciones de la tensin y la corriente en rgimen sinusoidal. ........... 27

    Figura 10. Ecuacin de la potencia en rgimen sinusoidal ............................... 28

    Figura 11. Ecuacin de la potencia media. ....................................................... 29

    Figura 12. Ecuacin de potencia aparente. ...................................................... 31

    Figura 13.Red neuronal genrica ...................................................................... 35

    Figura 14. Red neuronal Artificial ...................................................................... 36

    Figura 15. Comparacin de resultados obtenidos con Matlab y C#. ................. 41

    Figura 16. Modelo del Dominio ......................................................................... 43

    Figura 17. Casos de uso del Sistema ............................................................... 48

    Figura 18. Diagrama de clases de Base de Objetos. ........................................ 55

    Figura 19. Diagrama de clases Red Neuronal .................................................. 57

    Figura 20. Capas de Arquitectura de la Aplicacin. .......................................... 65

  • 7/23/2019 Red Neuronal Codigo C#

    10/114

    vi

    Figura 21. Funciones de activacin del perceptron multicapa. ......................... 67

    Figura 22. Error en entrenamiento de distintas configuraciones de la redneuronal 1. ....................................................................................... 71

    Figura 23. Interfaz de Usuario Ingreso/Edicin de Cliente ............................. 79

    Figura 24. Interfaz de Usuario Creacin de Auditora ..................................... 80

    Figura 25. Interfaz de Usuario Ingreso/validacin patrones de anlisis. ........ 81

    Figura 26 Interfaz de Usuario Proceso entrenamiento Redes Neuronales .... 82

    Figura 27. Interfaz de Usuario Generacin/Visualizacin de Reportes .......... 83

    Figura 28. Reporte de Visual Studio para pruebas de unidad .......................... 86

    Figura 29. Implementacin de Test Clase MedicionHelper ............................... 95

    Figura 30. Implementacin de anlisis de sobre carga. .................................... 96

    Figura 31. Implementacin mtodo de aprendizaje Back Propagation ............. 97

    Figura 32. Implementacin clculo de salida de cada neurona ........................ 98

    Figura 33. Implementacin clase Network ...................................................... 100

  • 7/23/2019 Red Neuronal Codigo C#

    11/114

    vii

    SINTESIS EN CASTELLANO

    Los requerimientos de esta implementacin nacen de las actividades realizadas

    por la Empresa Eficiencia Energtica Integral (EEI) que, en la ejecucin de sus

    actividades de consultora, captura la informacin elctrica de sus clientes

    mediante la utilizacin de un equipo de medicin autnomo.

    La herramienta de software consiste en una aplicacin entrenada para la

    deteccin de fallos de acuerdo a la experiencia aportada por los consultores de

    EEI, para lo cual se utilizaron redes neuronales de perceptrones distribuidos en

    mltiples capas y entrenados mediante el procedimiento de propagacin del

    error hacia atrs (Back Propagation). Adems, segn los diagnsticos

    obtenidos, la aplicacin cuenta con una base de conocimientos capaz de

    asignar a cada hallazgo una posible solucin, lo que provee a los consultores

    de una aproximacin del diagnostico lo que incide en una reduccin de las

    horas hombre (HH) de ejecucin de los anlisis y un tiempo de respuesta

    reducido para el cumplimiento de los requerimientos de los clientes.

    Como patrn de este desarrollo se adopt la metodologa gil, la cual provee en

    sus distintas etapas entregas parcializadas incrementales, lo que permiti

    ajustar las caractersticas de la herramienta a los requerimientos de los

    usuarios, que en primera instancia no contaban con una clara definicin.

  • 7/23/2019 Red Neuronal Codigo C#

    12/114

    viii

    La arquitectura del sistema se estructur en tres capas definidas: Capa de

    Acceso a Datos, Capa de Negocios e Interfaz de Usuario, que para suimplementacin requirieron de las herramientas Microsoft .Net, Db4o.

    Los objetivos propuestos en la definicin inicial del proyecto fueron cubiertos a

    cabalidad, obteniendo como producto final una herramienta capacitada para el

    diagnstico de fallos en el mbito elctrico y con la capacidad de adaptarse a

    nuevas condiciones de falla identificadas en los procesos de asesora

    realizados por EEI y su continua investigacin de las nuevas tecnologas

    incorporadas al mercado elctrico.

  • 7/23/2019 Red Neuronal Codigo C#

    13/114

    ix

    SINTESIS EN INGLS

    Later it is expose the development of a software tool for the analysis of electrical

    variables, placed in the Qualification Seminar of the thesiss student. This

    development consists in the implementation of an anomalys diagnosis system

    on electrical facilities of low tension, by the identification of patterns failures

    using artificial neurons networks.

    The requirements of this implementation born of the activities done by the

    Company Integral Energetic Efficiency (EEI in Spanish) that, in the execution of

    its consultancy activities, captures the electrical information of its clients by the

    utilization of an autonomous measurement equipment.

    The software tool consists of an application trained for the detection of failures

    based in the experience contributed by the consultants of EEI, being used for

    this, neurons networks of perceptrons distributed in multiple layers and trained

    by the procedure of mistake backward propagation (Back Propagation). In

    addition, according to the obtained diagnoses, the application relies on a base of

    knowledge capable of assign to every find a possible solution, which provides

    the consultants of an approximation of the diagnosis wich produce a reduction of

    the execution man-hours (HH) in the analyses and a reduce time of response for

    the fulfillment of the requirements of the clients.

  • 7/23/2019 Red Neuronal Codigo C#

    14/114

    x

    As a pattern of this development it was adopt the Agile Methodology, which

    provides in its different stages incremental parcialized deliveries, which allowedto fit the characteristics of the tool to the users requirements, who in first

    instance didnt have a clear definition.

    The architecture of the system was constructed in three defined caps: Cap of

    Access to Data, Business Cap and User's Interface, which for its implementation

    was require of the Microsoft .Net, Db4o tools.

    The aims proposed in the initial definition of the project were totally covered,

    obtaining as final product a tool qualified for the diagnosis of failures in the

    electrical field and with the capability to adapt itself to new conditions of fault

    identified in the advising processes done by EEI and its continuous investigation

    of the new technologies incorporated into the electrical market.

  • 7/23/2019 Red Neuronal Codigo C#

    15/114

  • 7/23/2019 Red Neuronal Codigo C#

    16/114

    2

    estado y cuya finalidad es crear conciencia con respecto al tema para lograr

    revertir y controlar el crecimiento de la demanda energtica del pas.

    Dentro de este marco, la empresa Eficiencia Energtica Integral Ltda. (EEI) ha

    decidido integrarse a este plan pas y realizar Consultoras en materias de

    gestin y uso de energas, incluyendo dentro de sus servicios los anlisis

    elctricos mediante la utilizacin de un equipo capturador de variables elctricas

    marca Amprobe, modelo DM-II, con la finalidad de orientar a las empresas en el

    emprendimiento de actividades tendientes a mejorar la eficiencia en el uso de la

    energa en sus procesos industriales, las cuales son formalizadas mediante la

    entrega de un informe con las sugerencias mediante las cuales el cliente podr

    mejorar su desempeo energtico.

    Las variables elctricas obtenidas por el capturador, deben ser analizadas por

    los ingenieros de EEI, proceso que requiere de un tiempo excesivo lo cual

    aumenta los costos en la realizacin de las auditorias, debido al mayor nmero

    de Horas Hombre (HH) dedicados exclusivamente al anlisis de los datos.

    Adems de los requerimientos de HH dedicadas a los anlisis, es un factor

    clave para el anlisis, la experiencia de quien revisa los datos, ya que esta

    condicin le permite identificar anomalas que perjudican el desempeo

    energtico de la empresa, lo cual incide en los costos de produccin de

  • 7/23/2019 Red Neuronal Codigo C#

    17/114

    3

    diversas maneras y no slo por el desperdicio de energa que es el factor ms

    evidente.

    La incidencia en los costos del alto nmero de HH dedicados al anlisis, junto

    con la condicin de vulnerabilidad por la dependencia directa del conocimiento

    prctico de cada unos de los ingenieros de EEI, motivan la necesidad de contar

    con una herramienta automatizada de anlisis y que permita adems plasmar el

    conocimiento adquirido en cada uno de los anlisis en una base de datos que

    permita identificar patrones de fallo y orientar al ingeniero en las posibles

    soluciones, basados en las experiencias obtenidas de los anlisis realizados

    con anterioridad.

    Para el desarrollo de esta herramienta automatizada de anlisis, se ha

    seleccionado como pauta del desarrollo los conceptos expuestos en la

    Metodologa gil, ya que se acopla a las condiciones de baja definicin inicial

    del problema y por la orientacin de la misma hacia el cumplimiento a cabalidad

    de los requerimientos del usuario por medio de una participacin activa del

    mismo en el proceso de desarrollo.

    Los contenidos a continuacin expuestos, detallan el proceso de

    implementacin de la herramienta y pueden ser resumidos de la siguiente

    manera:

  • 7/23/2019 Red Neuronal Codigo C#

    18/114

    4

    En el captulo 2 se describe el problema abordado y las definiciones

    inciales del proyecto a desarrollar. En el captulo 3 se establecen objetivos del proyecto.

    En el captulo 4 se describe la metodologa a utilizar para el desarrollo

    del software y la implementacin de las redes neuronales.

    En el captulo 5 se describen los recursos utilizados en el proyecto.

    En el captulo 6 se describe la etapa de inicio del proyecto y los

    contenidos bsicos asociados al desarrollo de la aplicacin.

    En el captulo 7 se detallan los modelos y definiciones correspondientes

    a la etapa de Elaboracin.

    En el captulo 8 se expone el proceso de construccin de la herramienta.

    En el captulo 9 se exhiben algunas de las implementaciones de la

    Interfaz de usuario.

    En el captulo 10 se listan las pruebas realizadas en el proceso de

    desarrollo de la aplicacin.

    En el captulo 11 se indican las conclusiones y recomendaciones.

    En el captulo 12 de detalla la bibliografa utilizada

    En el captulo 13 se exhiben los anexos.

  • 7/23/2019 Red Neuronal Codigo C#

    19/114

    5

    2 OBJETIVOS

    2.1 Objetivo General

    Desarrollo de una herramienta de anlisis de variables elctricas capaz de

    clasificar mediante redes de neuronas artificiales condiciones anmalas segn

    patrones previamente definidos

    2.2 Objetivos especficos

    Reducir las Horas Hombre requeridas para el anlisis de los datos

    elctricos capturados.

    Mantener una base de patrones de falla y las soluciones asociadas a los

    a mismos.

    Determinar el cumplimiento normativo de la energa elctrica analizada

    Detectar problemas elctricos derivados del deficiente suministro

    elctrico

    Detectar problemas elctricos derivados del deficiente estado de las

    instalaciones

    De acuerdo a la asociacin de variables y la experiencia de los

    profesionales de la empresa, determinar causas y sugerir soluciones a

    las anomalas detectadas.

  • 7/23/2019 Red Neuronal Codigo C#

    20/114

    6

    3 PLANTEAMIENTO DEL PROBLEMA

    3.1 Antecedentes

    3.1.1 Definicin del problema

    En la matriz energtica de las empresas, la electricidad constituye unos de los

    elementos con mayor impacto en la estructura de costos, por lo que controlar y

    gestionar este recurso se convierte en una condicin indispensable para la

    competitividad de las empresas.

    EEI, empresa certificada por el Instituto Nacional de Normalizacin (INN) para la

    realizacin de auditoras en Eficiencia Energtica, cuenta con el equipo

    Amprobe DM- II, diseado para monitorear las diferentes variables derivadas

    del consumo elctrico en las empresas, de manera confiable y con el suficiente

    detalle como para tomar decisiones en cuanto a la manera en que se consume

    y la identificacin de posibles ineficiencias derivadas de la configuracin o

    diseo de los sistemas de potencia presentes en las diversas lneas de

    procesos utilizadas en las industrias.

    A continuacin se muestra la configuracin tipo de los sistemas elctricos en las

    industrias y cmo es instalado el equipo para la captura de los datos.

  • 7/23/2019 Red Neuronal Codigo C#

    21/114

    7

    Figura 1. Instalacin tpica de equipo de captura de variables elctricas.

    Las caractersticas descritas anteriormente derivan en la captura simultnea porparte del equipo de 26 variables elctricas, las cuales son asociadas a la fecha

    y hora en que fueron capturadas.

    Propulsin deagua

    Secador

    Compresor

    Tablero ElctricoGeneral

    DM IIEquipo

    Medicin

    Generador deelectricidad a

    Diesel

    Suministro

    ElctricoPublico

    Sistema deenfriamiento de Agua

  • 7/23/2019 Red Neuronal Codigo C#

    22/114

    8

    Para visualizacin de la informacin capturada, la aplicacin provista por el

    fabricante del equipo (Download Suite 2.3.0.5), permite desplegar en formatotabla, cada uno de los registros, ordenados cronolgicamente.

    Para el posterior anlisis de la informacin, el personal de EEI exporta los datos

    a una Hoja de Clculo, mediante la cual realiza una serie de anlisis

    estadsticos que permiten tener una primera aproximacin respecto a posibles

    anomalas presentes en la instalacin elctrica analizada.

    Si son evidenciados por los mtodos estadsticos ciertos patrones de posibles

    anomalas, el ingeniero a cargo del anlisis procede a una revisin minuciosa

    de cada uno de los registros que en promedio son 6.000, por lo que esta tarea

    requiere un nmero de HH elevado, lo que encarece el costo final de las

    auditoras realizadas por EEI.

    A continuacin se grafica la cronologa del anlisis de los datos:

  • 7/23/2019 Red Neuronal Codigo C#

    23/114

    9

    Figura 2. Proceso de anlisis de los datos elctricos capturados.

    Sobre los datos capturados el especialista logra determinar las siguientes

    anomalas:

    Variacin de Voltaje

    Errnea secuencia de las Fases

    Datos de laInstalacinElectrica

    AnlisisEstadstico Experiencia del

    Consultor

    Download Suite

    ++

    Informe Final

  • 7/23/2019 Red Neuronal Codigo C#

    24/114

  • 7/23/2019 Red Neuronal Codigo C#

    25/114

    11

    3.1.3 Solucin propuesta

    Analizando la situacin anteriormente expuesta, se propone lo siguiente:

    Desarrollo de una herramienta de anlisis de variables elctricas

    capturadas en instalaciones industriales

    Para el desarrollo de este proyecto se considera la definicin de los siguientes

    aspectos:

    3.1.3.1 Arquitectura

    Se desarrollar una aplicacin en el cliente, debido a la condicin de utilizacin

    de un laptop por parte del Ingeniero y que las labores son desarrolladas en

    sitios alejados y no se cuenta con conexin a internet en todos los casos como

    para desarrollar una aplicacin web.

    Para la actualizacin de la red neuronal encargada de la deteccin de patrones

    de fallo, se contar con un servidor en el cual se mantendr la ltima versin

    actualizada, que podr ser descargada por cada una de las aplicaciones cliente.

    3.1.3.2 Funciones

    Para la realizacin de los anlisis, la aplicacin deber contar con las siguientes

    caractersticas:

  • 7/23/2019 Red Neuronal Codigo C#

    26/114

    12

    a. Importacin de los datos desde un archivo Excel hacia la aplicacin.

    b. Normalizacin de los datos y almacenamiento en formato de laaplicacin.

    c. Anlisis de cumplimiento normativo de calidad de suministro.

    Para la deteccin de incumplimiento normativo se utilizan los criterios

    definidos en la normativa elctrica vigente. Se realiza un anlisis

    estadstico el cual incluye la determinacin de mnimos, mximos, media

    y desviacin estndar por cada una de las variables capturadas, con la

    finalidad de identificar inicialmente posibles anomalas. Una vez

    detectadas las primeras evidencias de posibles fallas, se procesa cada

    uno de los registros mediante 8 tipos de anlisis, los que son aplicados a

    sugerencia de la red neuronal entrenada para estos fines, segn lo

    evidenciado inicialmente por la informacin estadstica. Los anlisis a

    realizar son los que a continuacin se detallan:

    Desbalance de Tensin

    Desbalance de Corriente

    Secuencia de Fases

    Sobre Carga

    Normativo

    Corriente Reactiva

  • 7/23/2019 Red Neuronal Codigo C#

    27/114

    13

    Corriente de Neutro

    ndice de uso de la potencia contratada.d. Deteccin de problemas elctricos derivados del deficiente suministro

    elctrico.

    Cuando la calidad de la energa entregada por el proveedor no cumple

    con los requerimientos tcnicos, se evidencia esta condicin en la

    tensin presente en la red, que en condiciones deficientes provocaciertas anomalas en los equipos, las cuales sern identificadas por la

    aplicacin mediante la comparacin de los ndices de anomalas de cada

    uno de los registros. Estos ndices de anomala estarn determinados por

    los anlisis ejecutados segn las inferencias realizadas por el previo

    proceso de los ndices estadsticos y las sugerencias aportadas por la

    Red Neuronal entrenada para estos fines.

    e. Detectar problemas elctricos derivados del deficiente estado de las

    instalaciones.

    As como las condiciones del suministro afectan el comportamiento de

    los consumos, el deficiente estado de las instalaciones y la configuracin

    de los equipos pueden producir diversas condiciones no deseadas dentro

    de la empresa, lo cual se pretende detectar tambin mediante el anlisis

    del comportamiento de la corrientey laenerga, as como la correlacin

  • 7/23/2019 Red Neuronal Codigo C#

    28/114

    14

    que existe entre stos. Se utilizar una red neuronal capacitada para

    identificar las fallas y segn la clasificacin que realice de las mismas,indicar las sugerencias para la correccin de dichas anomalas.

    f. Entregar informacin detallada de los resultados obtenidos en el proceso

    de anlisis.

    3.1.4 Equipo de trabajo

    Para el desarrollo de este proyecto se contar con el siguiente personal

    Nombre Institucin Cargo

    Ricardo Toledo EEI Ltda Gerente Tcnico

    Edgardo Badilla EEI Ltda Gerente Proyectos

    Ricardo Rubilar EEI Ltda Enc. Proyecto

    Tabla 1. Equipo de trabajo.

    Los componentes de este equipo de trabajo, evidencian un gran potencial, al

    ser profesionales de distintas reas que estn vinculadas directamente con el

    tipo de proyecto que se desea desarrollar.

  • 7/23/2019 Red Neuronal Codigo C#

    29/114

    15

    3.2 Justificacin

    3.2.1 Situacin sin proyecto

    La situacin actual presenta una serie de falencias que pudieran forzar a

    cometer errores en los anlisis realizados por el personal de EEI. Dentro de

    estas falencias podemos mencionar que los criterios de evaluacin no se

    encuentran normados y slo se basan en la experiencia de los evaluadores.

    El volumen de informacin requerido para realizar cada uno de los anlisis

    dificulta, en ocasiones, la correcta identificacin de las fallas, por lo que se han

    registrado problemas con algunos de los anlisis realizados anteriormente en

    cuanto a la acertividad de los diagnsticos.

    El factor humano sigue siendo crtico ya que los parmetros de anlisis de la

    informacin son basados en el profesional que lo realiza y no existe un registro

    centralizado donde se disponga de esta informacin.

    3.2.2 Situacin con proyecto

    El desarrollo de este proyecto solucionara las deficiencias que presenta el

    procedimiento de anlisis elctrico que tiene la empresa, aportando las

    siguientes funcionalidades:

  • 7/23/2019 Red Neuronal Codigo C#

    30/114

  • 7/23/2019 Red Neuronal Codigo C#

    31/114

  • 7/23/2019 Red Neuronal Codigo C#

    32/114

    18

    El desarrollo iterativo con cuenta con menor tiempo entre iteraciones

    manteniendo el mismo esquema de RUP, como se aprecia en el siguientediagrama de tareas.

    Figura 3. Ciclo de vida de AUP.

    4.2 Implementacin de Red Neuronal

    Cuando se aborda un problema utilizando el Perceptron Multicapa, existen dos

    pasos base para la implementacin de la arquitectura de la red, segn lo

    definido en [Isasi2005], los cuales se detallan a continuacin:

    Determinacin de la funcin de activacin.

  • 7/23/2019 Red Neuronal Codigo C#

    33/114

    19

    Su eleccin depende del recorrido deseado, no influyendo

    significativamente en la capacidad de resolucin del problema.

    Definicin de la cantidad capas y neuronas por capa.

    La definicin de neuronas en la capa de entrada, as como en la capa de

    salida viene dada por las variables que definen el problema. Para la

    determinacin de la arquitectura se parte con el criterio del diseador,

    apoyndose en procedimientos de prueba y error, hasta encontrar la

    arquitectura adecuada para resolver el problema.

    Si bien el nmero de capas ocultas puede influir en el comportamiento de la red,

    la capacidad de generalizacin de la red permite al perceptron multicapa

    resolver de manera adecuada el mismo problema con distintas arquitecturas de

    red.

  • 7/23/2019 Red Neuronal Codigo C#

    34/114

    20

    5 RECURSOS

    5.1 Equipos

    Desarrollo

    HP Pavilion dv 2200

    Procesador Intel Core Duo

    2Gb de memoria en RAM

    WiFi

    Clientes

    Para este caso se implementar para un cliente que cuenta con un equipo

    porttil de las siguientes caractersticas:

    HP Pavilion dv 2622

    Procesador Intel Core Duo

    1Gb de memoria en RAM

    WiFi

  • 7/23/2019 Red Neuronal Codigo C#

    35/114

    21

    5.2 Software

    5.2.1 Herramientas de desarrollo

    Microsoft Windows Vista

    Sistema operativo que provee las plataformas base para la ejecucin de las

    herramientas productivas y de desarrollo de este proyecto.

    Visual Studio 2008

    Herramienta Visual que permitir el diseo de las aplicaciones, mediante la

    utilizacin del lenguaje de programacin C# y elementos para formularios para

    Windows.

    DB4oBase de objetos que dar soporte al almacenamiento de datos y su posterior

    manejo.

    Power Designer

    Herramienta para el diseo de diagramas requeridos en la metodologa

    seleccionada.

  • 7/23/2019 Red Neuronal Codigo C#

    36/114

    22

    Fireworks MX 2004

    Aplicaciones orientadas al diseo grfico de elementos a utilizar en la interfazde usuario.

    5.2.2 Usuarios

    Sistema Operativo Windows Vista.

  • 7/23/2019 Red Neuronal Codigo C#

    37/114

    23

    6 INICIO DEL PROYECTO

    Este proyecto nace de la necesidad de llevar a un nivel superior los anlisis

    realizados por EEI Ltda, pudiendo contar con una cantidad de patrones de fallos

    incremental que le permita realizar diagnsticos acertados y prestar un servicio

    de primer nivel a sus clientes.

    6.1 Investigacin previa

    6.1.1 Teora elctrica respecto de las variables analizadas

    Para determinar cul es la implicancia de cada una de las variables elctricas

    analizadas, se detallarn a continuacin los fundamentos tericos detrs de

    cada una de ellas. Estos conceptos estn basados en las definiciones obtenidas

    de [Nilsson2005].

    6.1.1.1 Tensin y corriente.

    El concepto de carga elctrica es la base para describir todos los fenmenos y

    efectos elctricos pueden atribuirse a la separacin de las cargas y al

    movimiento de las mismas.

    En teora de circuitos, la separacin de las cargas crea una fuerza elctrica

    (tensin), mientras que el movimiento de una carga crea un fluido elctrico

    (corriente).

  • 7/23/2019 Red Neuronal Codigo C#

    38/114

    24

    Los conceptos de tensin y corriente son tiles desde el punto de vista del

    ingeniero porque pueden expresarse en forma cuantitativa. Cuando se separancargas positivas y negativas, se gastar energa en el proceso. La tensin es la

    energa por unidad de carga creada por la separacin. Su expresin en forma

    diferencial se describe a continuacin.

    Donde v= tensin en voltiosw=energa en juliosq=carga en culombios

    Figura 4. Definicin de la tensin elctrica.

    Los efectos elctricos causados por las cargas en movimiento dependen de la

    tasa de flujo de la carga. La tasa de flujo de la carga se conoce como corriente

    elctrica, que se expresa como

    Donde i= corriente en amperiosq=carga en culombiost=tiempo en segundos

    Figura 5. Definicin de corriente elctrica.

  • 7/23/2019 Red Neuronal Codigo C#

    39/114

    25

    6.1.1.2 Potencia y energa

    Los clculos de potencia son tambin importantes en el anlisis de circuitos.

    Una de las razones es que, aunque la tensin y la corriente son variables utililes

    en el anlisis y diseo de sistemas elctricos, la salida til del sistema es a

    menudo de naturaleza no elctrica, y esta salida puede expresarse

    convenientemente en trminos de potencia y energa. Otra razn es que todos

    los dispositivos prcticos tienen limitaciones en cuanto a la cantidad de potencia

    que pueden manejar. Por tanto, en el proceso de diseo, los clculos de

    tensiones y corrientes no son suficientes por s mismos.

    Ahora se establecer la relacin entre potencia y la energa con la tensin y la

    corriente. Matemticamente, la energa por unidad de tiempo se expresa en

    forma derivada, de la manera siguiente:

    Donde p= potencia en vatiosW=energa en juliost=tiempo en segundos

    Figura 6. Definicin de potencia.

  • 7/23/2019 Red Neuronal Codigo C#

    40/114

    26

    La potencia asociada con el flujo de carga se sigue directamente de la

    definicin de la tensin y de la corriente, segn las ecuaciones detalladas en lasfiguras 3 y 4 y es:

    Figura 7. Ecuacin de la potencia en funcin de la tensin y la corriente

    La Figura 7 muestra que la potencia asociada con un elemento de circuito

    bsico es, simplemente el producto de la corriente que atraviesa el elemento

    por la tensin que cae en el.

    6.1.1.3 Fuentes sinusoidales

    Una fuente de tensin sinusoidal produce una tensin que varia

    sinusoidalmente con el tiempo. Una fuente de corriente sinusoidal produce una

    corriente que vara sinusoidalmente con el tiempo. A la hora de analizar las

    funciones sinusoidales, vamos se utilizar una fuente de tensin, pero los

    resultados tambin deben ser aplicados a fuentes de corriente.

    Se expresar una funcin sinusoidal mediante la funcin seno o la funcin

    coseno. Aunque las dos resultan adecuadas, no usaremos ambas formas

    funcionales simultneamente. Para el anlisis, vamos a utilizar la funcin

    coseno, de modo que se describir una tensin sinusoidal de la siguiente forma:

  • 7/23/2019 Red Neuronal Codigo C#

    41/114

    27

    ( + )

    Figura 8. Ecuacin y representacin grafica de tensin y la corriente con

    desfase.

    6.1.1.4 Potencia Instantnea

    La potencia Instantnea se mide en vatios cuando la tensin esta en voltios y la

    corriente en amperios. En primer lugar, se detallan las expresiones

    correspondientes para cada trmino:

    ( + )

    ( + )

    Figura 9. Funciones de la tensin y la corriente en rgimen sinusoidal.

  • 7/23/2019 Red Neuronal Codigo C#

    42/114

    28

    En las ecuaciones, es el ngulo de fase de la tensin y es el ngulo de

    fase de la corriente. Al operar en rgimen sinusoidal se puede elegir cualquierinstante conveniente como tiempo cero. Los diseos de ingeniera de

    transmisin de grandes cantidades de potencia, utilizan como origen de tiempo

    un instante en que la corriente est pasando por un mximo positivo. Este

    sistema de referencia requiere un desplazamiento de la tensin y de la corriente

    segn un ngulo .

    6.1.1.5 Potencia Media y Reactiva

    Segn lo descrito en la figura 8, podemos se reescribir la ecuacin como

    sigue:

    + 2 + 2

    donde

    Potencia Media (real) ()

    Potencia Reactiva ()

    Figura 10. Ecuacin de la potencia en rgimen sinusoidal

    P se denomina potencia media y Q se denomina potencia reactiva. La potencia

    tambin se llama, en ocasiones, potencia real, porque describe una potencia

  • 7/23/2019 Red Neuronal Codigo C#

    43/114

    29

    que es transformada en un circuito de energa elctrica a energa no elctrica

    dentro de un circuito. Aunque los dos trminos son intercambiables, se utilizarprincipalmente el trmino potencia media.

    La potencia media asociada con las seales sinusoidales es el promedio de la

    potencia instantnea a lo largo de un periodo, lo que se representa a

    continuacin:

    1

    Figura 11. Ecuacin de la potencia media.

    En la ecuacin expresada, T es el periodo de la funcin sinusoidal. Los lmites

    de la ecuacin implican que se puede iniciar el proceso de integracin en

    cualquier instante que resulte conveniente, pero se debe terminar laintegracin exactamente un periodo despus.

    6.1.1.6 Factor de potencia

    El ngulo juega un papel importante en el clculo tanto de la potenciamedia como de la potencia reactiva, y se lo denomina como ngulo de factor de

    potencia. El coseno de este ngulo se denomina factor de potencia (abreviado

    fp) y el seno de este ngulo se denomina factor reactivo (abreviado fr).

  • 7/23/2019 Red Neuronal Codigo C#

    44/114

    30

    Conocer el valor del factor de potencia no permite determinar el valor del ngulo

    del factor de potencia, porque ( ) (). Para describircompletamente este ngulo, se utilizarn las fases descriptivas Factor de

    Potencia en Retardo y Factor de Potencia en adelanto. Un factor de potencia en

    retardo implica que la corriente est retrasada con respecto a la tensin, lo que

    quiere decir que se tiene una carga inductiva. Un factor de potencia en adelanto

    implica que la corriente est adelantada con respecto a la tensin, por lo que se

    tendr una carga capacitiva. Tanto el factor de potencia como el factor reactivo

    son magnitudes que facilitan la descripcin de las cargas elctricas.

    6.1.1.7 Potencia Compleja

    La potencia compleja es la suma compleja de la potencia real y de la potencia

    reactiva. Desde el punto de vista de las dimensiones, la potencia compleja tienelas mismas que la potencia media o la potencia reactiva. Sin embargo, para

    distinguir la potencia compleja de los otros dos tipos de potencia, se utilizara

    como unidades los voltio-amperios (VA). As, usaremos los voltio-amperios para

    la potencia compleja, lo vatios para la potencia media y los vars para la potencia

    reactiva.

    La magnitud de la potencia compleja se denomina potencia aparente, lo cual se

    grafica en la siguiente frmula:

  • 7/23/2019 Red Neuronal Codigo C#

    45/114

    31

    +

    Figura 12. Ecuacin de potencia aparente.

    La potencia aparente, como la potencia compleja, se mide en voltio-amperios.

    El requisito de consumo de potencia aparente, o de voltio-amperios, para un

    dispositivo diseado para convertir energa elctrica en energa no elctrica es

    ms importante que el requisito de potencia media. Aunque la potencia media

    representa la salida til del dispositivo conversor de energa, la potencia

    aparente representa la capacidad en voltio-amperios requerida para suministrar

    la potencia media.

    Muchos aparatos tiles y la mayora de las cargas industriales funcionan con un

    factor de potencia en retardo. El factor de potencia de estas cargas se corrige

    en ocasiones aadiendo un condensador al propio dispositivo o conectando

    condensadores entre las dos lneas que alimentan la carga.

    6.1.2 Normativa elctrica Chilena Vigente (NCH 2003-04)

    Para los efectos de estimacin de cumplimiento normativo, se utilizar la

    normativa elctrica vigente NCH 2003-04, la cual en el articulo 243 define lo

    siguiente:

  • 7/23/2019 Red Neuronal Codigo C#

    46/114

    32

    La norma tcnica fijar las magnitudes de la tensin nominal en 50 Hz. Elproveedor del servicio deber indicar explcitamente, a cada usuario, la tensin

    en el punto de conexin entre ambos, en adelante punto de conexin.Las variaciones u holguras permitidas de la tensin nominal en el punto deconexin, sern las siguientes:

    En Baja Tensin (BT): Excluyendo periodos de interrupciones desuministro, el valor estadstico de la tensin medido de acuerdo a lanorma tcnica correspondiente, deber estar dentro el rango de -7.5% y7.5% durante el 95% del tiempo de cualquiera semana del ao o de sietedas consecutivos de medicin y registro.

    6.1.3 Equipo de monitoreo elctrico DM-II

    El equipo disponible para la captura de los datos elctricos es el DM-II de la

    marca Amprobe. Este equipo cuenta con la capacidad de capturar informacin

    de circuitos de 1 a tres fases y sus registros son en formato TRUE RMS.

    Las variables capturadas por el equipo, cumplen con los requerimientos

    tcnicos detallados a continuacin:

    Entradas

    VoltajeTres canales para fases mas un comn, soporte hasta1000 V.

    Corriente Cuatro canales (I1, I2, I3, I4)DM-CT: 1 a 1000 A 1% de lectura

    Rangos AC Voltaje (True RMS) 5 a 600 VrmsAC Corriente (True RMS) 1 a 1000Arms

    Exactitud Voltaje 1% en lecturaCorriente 1% en lectura

  • 7/23/2019 Red Neuronal Codigo C#

    47/114

    33

    Mediciones

    True RMS Voltaje y corrienteEn potencia Aparente (VA), Reactiva (VAR), Real (W) y Factor depotenciaEnerga kWh y demanda(kW)

    Modos de grabacinIntervalo discreto y continuo

    1segundo ,5 segundos,15 segundos ,30segundos,1 minuto, 5 minutos, 15 minutos y 30 minutos.

    Tabla 2. Caractersticas tcnicas equipo DM-II.

    Para la descarga de los datos se realiza mediante una interfaz RS-232 con la

    aplicacin Download Suite, de Amprobe.

    6.1.4 Sistemas de reconocimiento de patrones.

    Uno de los desafos ms grandes de nuestra era ha sido la construccin de

    sistemas inteligentes, a lo que la Inteligencia Artificial (IA) ha surgido como rea

    de estudio del diseo e implementacin de los mismos.

    Podemos diferenciar dos reas de trabajo bastantes definidas en la IA segn

    [Isasi2005], la primera se conoce como IA simblica, la cual define el problema

    a resolver y disea el sistema capaz de resolverlo siguiendo esquemas fijados

    por la disciplina, como lo hacen por ejemplo los Sistemas Expertos, que utilizan

  • 7/23/2019 Red Neuronal Codigo C#

    48/114

    34

    mecanismos de inferencia parecidos a que utilizamos al razonar para

    posteriormente sacar conclusiones.

    La segunda rea de la IA es la conocida como Subsimblica, en la cual se

    realizan diseos genricos de alto nivel que cuentan con la capacidad de

    adaptarse y construir por s mismo una solucin al problema. Dentro de este

    campo encontramos las Redes Neuronales. El objetivo de las Redes

    Neuronales es llegar a disear mquinas con elementos neuronales de

    procesamiento paralelo, con la capacidad de adaptarse a las condiciones del

    problema.

    Dadas las condiciones del problema abordado y lo anteriormente expuesto, las

    Redes Neuronales cumplen con la capacidad de adaptarse a las condiciones

    del problema, que inicialmente no cuentan con una clara definicin, por lo que

    las capacidades dinmicas de esta herramienta de reconocimiento de patrones

    cumple con los requerimientos de la solucin propuesta.

    6.1.5 Redes Neuronales

    Bajo el nombre genrico de Red Neuronal se engloban diferentes estructuras

    de procesamiento paralelo distribuido, algunas de ellas biolgicamente

    inspiradas, en las que el nmero de elementos simples de cmputo no lineal se

    interconectan en forma ms o menos densa. Estas estructuras son de utilidad

    en reconocimiento de patrones, modelado y filtrado no lineal de seales, entre

  • 7/23/2019 Red Neuronal Codigo C#

    49/114

    35

    muchas otras aplicaciones. En general, las redes presentan algn tipo de

    plasticidad en su estructura que permite sintonizar su operacin a fin deoptimizar una figura de mrito, como por ejemplo alguna medida de distancia al

    comportamiento deseado. De esta forma, la red puede aprender a realizar una

    tarea u operacin. Esta caracterstica es de gran utilidad all donde el

    conocimiento del problema a resolver es impreciso o variante en el tiempo.

    6.1.6 Generalidades de las Redes Neuronales

    Segn lo expuesto en [Sierra2006], la red es un operador no lineal formado por

    un conjunto de elementos simples de procesamiento o neuronas, que se

    conectan entre si y con el medio externo a travs de conexiones o sinapsis, que

    poseen un peso asociado, as como se expone en el siguiente diagrama.

    Entradas

    Sinapsis

    Neurona

    Figura 13.Red neuronal genrica

  • 7/23/2019 Red Neuronal Codigo C#

    50/114

  • 7/23/2019 Red Neuronal Codigo C#

    51/114

  • 7/23/2019 Red Neuronal Codigo C#

    52/114

    38

    Red de interconexiones.

    Los valores de los pesos de la red de interconexiones imponen lainfluencia que la salida de una neurona tiene sobre las otras. Esta

    influencia puede ser excitatoria, cuando tiende a aumentar el valor de la

    activacin, o inhibitoria, cuando tiende a disminuirlo. En otras redes,

    como las de base radial, los pesos especifican las coordenadas donde la

    no-linealidad de cada neurona est centrada.

    Algoritmo de entrenamiento.

    En los algoritmos supervisados, existe un tutor o salida deseada que

    especifica que valor debera tener la salida de la red para cada posible

    entrada dentro de un conjunto de datos de entrenamiento. El error entre

    la salida actual de la red y la deseada es utilizada por el algoritmo para

    sintonizar el valor de los pesos de la red. En los algoritmos nosupervisados, por el contrario, no existe un tutor y el objetivo del

    algoritmo de entrenamiento es detectar alguna regularidad, estructura o

    caracterstica en particular de los datos, de forma que la red se convierte

    en un detector de caractersticas (feature detector). Los algoritmos de

    entrenamiento son, generalmente procesos de optimizacin, a menudo

    heursticos, y tales sufren de problemas de convergencia y existencia de

    mnimos locales en la superficie de bsqueda.

  • 7/23/2019 Red Neuronal Codigo C#

    53/114

  • 7/23/2019 Red Neuronal Codigo C#

    54/114

    40

    en su entrenamiento y extender ese conocimiento ms all de esas

    situaciones conocidas.

    6.2 Preparacin del entorno de desarrollo.

    Con los antecedentes estudiados del problema, se procedi a buscar las

    herramientas de software que ms se acoplaran con los requerimientos del

    proyecto.

    Como base para el desarrollo se eligi Visual Studio 2008 .NET, realizando las

    implementaciones en C# y para el almacenamiento de los datos se opt por

    Db4o ya que se acopla perfectamente al desarrollo orientado a objetos.

    Para la implementacin de la red neuronal fueron seleccionadas las clases

    definidas en el proyecto Aforge [Kirirlov2005]. Como proceso de verificacin del

    correcto funcionamiento de esta implementacin, se compararon los resultados

    de las implementaciones de redes de similares caractersticas en Matlab y en

    C#. Se procedi a entrenar y probar ambas con un set de datos en comn y

    demostraron el siguiente comportamiento con 30 patrones y 10 pruebas,

    obteniendo un margen de error no mayor al 3%.

  • 7/23/2019 Red Neuronal Codigo C#

    55/114

    41

    Figura 15. Comparacin de resultados obtenidos con Matlab y C#.

    6.3 Modelado Inicial

    En el modelado inicial se desarrollaron las primeras aproximaciones del

    diagrama de casos de uso, as como se utilizaron diagramas de flujo de datos

    para la identificacin de las reglas de negocio. Se identificaron preliminarmente

    los requerimientos tcnicos de la aplicacin, as como se incluyeron las

    primeras especificaciones en el Glosario de Trminos.

    Los diagramas derivados de este modelado inicial fueron mantenidos durante

    las etapas siguientes, por lo que su exposicin se realiza en los captulos

    posteriores.

    0

    5

    10

    15

    20

    25

    30

    3540

    45

    50

    0 10 20 30 40

    #

  • 7/23/2019 Red Neuronal Codigo C#

    56/114

    42

    7 ELABORACIN

    En esta etapa, se busca tener las definiciones de arquitectura del sistema,

    diagrama de clases de la base de objetos junto con el diagrama de casos de

    uso del sistema. Se desarrollan tambin los prototipos de importacin de datos

    desde el archivo Excel as como su almacenamiento en la base de objetos

    DbTemp.

    7.1 Definicin de requerimientos

    7.1.1 Modelo del Dominio

    A continuacin se expone el Modelo del Dominio de la solucin a implementar,

    como una primera representacin de los requerimientos de acuerdo a lo

    expuesto en [Ambler2005]. Este diagrama es el resultado del estudio de

    requerimientos realizado en la etapa de inicio segn lo indicado por la

    metodologa.

  • 7/23/2019 Red Neuronal Codigo C#

    57/114

    43

    Figura 16. Modelo del Dominio

    7.1.2 Glosario de trminos

    A continuacin se describen los trminos utilizados en el desarrollo del presenteproyecto. Este diccionario de datos y nomenclatura es definido para contar con

    un definicin estandarizada de los trminos empleados para definir los

    requerimientos del sistema.

    Los trminos se detallan alfabticamente a continuacin:

    Amper:Unidad de medida para la corriente.

    Anlisis estadstico: Consiste en el anlisis detallado de cada una de las

    variables elctricas medidas, con la finalidad de obtener los valores mximos,

    Solicita

    supervisa

    tiene

    recomiendarealiza

    contiene

    Verifica

    Cliente

    Auditora

    Consultor

    Mediciones

    Diagnosticos

    Registros

    Anlisis

  • 7/23/2019 Red Neuronal Codigo C#

    58/114

    44

    mnimos, promedio y la desviacin estndar por cada una de las variables

    capturadas.

    Anomala:Registro derivado de los anlisis realizados por el sistema, el cual es

    almacenado en cuanto a la magnitud de desviacin respecto a la condicin

    normal de funcionamiento.

    Auditoria: Consiste en el proceso de verificacin del funcionamiento de un

    sistema elctrico definido, para lo cual se hacen mediciones de los parmetros

    elctricos para ser posteriormente analizados con la finalidad de encontrar

    anomalas.

    Banco de Condensadores: Sistema elctrico para la compensacin de

    energa reactiva presente en la red, con la finalidad de optimizar el uso de la

    energa elctrica y eliminar multas derivadas por este concepto, segn lo indica

    la normativa elctrica vigente.

    Cliente:Persona natural o jurdica que cuenta con instalaciones elctricas del

    tipo residencial o industrial, que requiere los servicios de la empresa para

    solucionar inconvenientes con sus sistemas elctricos, as como optimizar el

    uso de los mismos.

    Condiciones de Borde: Detalle de las caractersticas tcnicas presentes en la

    instalacin elctrica analizada.

  • 7/23/2019 Red Neuronal Codigo C#

    59/114

    45

    Consultor: Ingeniero certificado para la realizacin de consultoras en el rea

    de eficiencia energtica segn los estndares definidos por el INN.

    Corriente de neutro: Anlisis que busca identificar el momento en el cual la

    corriente registrada en el neutro supera al 10% de la corriente presente en las

    fases, lo que constituye un riesgo elctrico.

    Desbalance de carga:Identificacin del instante en el cual el cociente entre las

    fases supera el 30%.

    Desbalance de tensin:Identificacin del instante en el cual el cociente entre

    las fases supera al 2%.

    Diagnstico: Resultado del anlisis realizado por el sistema en el cual se

    indican posibles causas de las anomalas registradas, as como las soluciones

    para las mismas.

    Factor de potencia:Cociente entre la potencia y la energa reactiva.

    Fecha de certificacin: Fecha en la que el consultor recibi su ltima

    certificacin por parte del INN.

    Generacin en Hora Punta (GHP):Generacin de energa elctrica por medio

    de equipos electrgenos, con la finalidad de abaratar los costos derivados del

  • 7/23/2019 Red Neuronal Codigo C#

    60/114

    46

    consumo de energa en la red pblica en horas determinadas como de

    consumo en punta.

    Intervalo:Unidad de tiempo en la cual son capturados los registros.

    Malla Baja Tensin (BT):Estructura de cobre enterrada en la tierra que cumple

    la funcin de proteger los equipos elctricos conectados a la red de baja

    tensin.

    Malla Media Tensin (MT): Estructura de cobre enterrada en la tierra que

    cumple la funcin de proteger los equipos conectados a la red de media

    tensin.

    Medicin:Conjunto de registros capturados en una red elctrica, en el cual se

    cuantifican las variables como tensin, corriente, potencia y factor de potencia.

    Potencia: Unidad de medida elctrica con la que se mide el trabajo generado

    por la energa elctrica. Su unidad de medida es el Watt.

    Registro: Conjunto de datos que contiene las variables elctricas registradas

    en un momento definido.

    Secuencia de Fases:Anlisis que identifica la condicin de mala secuencia de

    fases en la instalacin analizada.

  • 7/23/2019 Red Neuronal Codigo C#

    61/114

  • 7/23/2019 Red Neuronal Codigo C#

    62/114

    48

    Figura 17. Casos de uso del Sistema

    7.1.4 Especificacin de los Casos de Uso

    Para la especificacin detallada de los requerimientos del sistema se han

    realizado las especificaciones de los casos de uso para Importar Medicin,

    ClienteConsultor

    Ingresar Cliente

    Crear Auditoria

    Importar Medicion

    Analizar Medicion

    DM-II

    Recomendaciones

  • 7/23/2019 Red Neuronal Codigo C#

    63/114

    49

    Analizar Medicin y Recomendaciones, basndose en las sugerencias de

    anlisis detallados expuestas en [Ambler2005].

    Caso de Uso: Importar Medicin

    Actores: Consultor

    Descripcin: Los datos capturados por el equipo DM-II y posteriormente

    exportados a un archivo Excel, son importados a la aplicacin de anlisis y

    almacenados en la base de objetos segn el formato definido en la clase

    Registro.

    Pre Condiciones: Datos exportados desde la aplicacin propietaria a archivo

    Excel en formato 2003.

    Flujo Normal: El consultor debe seleccionar el archivo desde donde se

    importarn los datos. El sistema extrae los datos y verifica si el formato del

    archivo corresponde a variables elctricas capturadas con el equipo DM-II.

    Posteriormente normaliza los datos para ingresarlos a una base de objetos

    temporal la cual se utilizar para el posterior anlisis de los datos. Los datos

    son almacenados con la clase Registro, la cual consta de la fecha de la captura

    y los campos asociados a cada fase en las variables: Tensin, corriente,

    potencia, energa reactiva, energa aparente y factor de potencia.

  • 7/23/2019 Red Neuronal Codigo C#

    64/114

  • 7/23/2019 Red Neuronal Codigo C#

    65/114

  • 7/23/2019 Red Neuronal Codigo C#

    66/114

    52

    como parmetro de la funcin. Como regla general y como indica la

    documentacin tcnica este nivel debe ser inferior al 2%.4. Se ejecuta el anlisis Desbalance de Corriente.

    Mediante anlisis de los registros se buscan los registros en los cuales la

    diferencia entre las corrientes registradas sea superior al valor ingresado

    como parmetro de la funcin. Se utiliza como desbalance base un 30%

    de variacin entre las fases.

    5. Se ejecuta el anlisisSecuencia de Fases.

    Las fases deben encontrarse en una correcta secuencia para el normal

    funcionamiento de los equipos. Esta condicin es determinada por el

    sentido de las corrientes correspondientes a cada una de ellas. Al

    momento de registrar una corriente con valor negativo, esto indica que la

    secuencia de fase es incorrecta.

    6. Se ejecuta el anlisis Sobre Carga.

    El ingreso de grandes cargas al sistema elctrico provoca una serie de

    variaciones que pueden afectar el desempeo de los otros equipos

    presentes en la red, por lo que se registran las condiciones en que se

    identifican ingresos de carga al sistema por sobre el 30% del valor de la

    media registrada en las ltimas 5 mediciones capturadas.

    7. Se ejecuta el anlisis deCumplimiento Normativo.

    Segn los estndares definidos en la normativa elctrica se verifica la

    condicin de cumplimiento de dicha norma tcnica.

  • 7/23/2019 Red Neuronal Codigo C#

    67/114

  • 7/23/2019 Red Neuronal Codigo C#

    68/114

    54

    Precondiciones: Anlisis de anomalas segn las sugerencias basadas en

    anlisis estadstico junto con la validacin de las mismas por parte del consultory condiciones pre definidas en la red neuronal encargada de realizar las

    sugerencias.

    Flujo Normal: Se analizan los registros de anomalas y de acuerdo a los

    patrones predefinidos de anomalas elctricas utilizados para el entrenamiento

    de la red neuronal, se identifican y categorizan de acuerdo a su ndice de

    recurrencia. Una vez procesados todos los registros, se categorizan las

    anomalas encontradas y se procede a realizar las sugerencias de mejora al

    sistema elctrico analizado.

    Flujo Alternativo:

    1. No se identifican patrones de falla, por lo que se sugiere realizar una

    nueva medicin y realizar el proceso de anlisis nuevamente, para

    descartar errores en la captura de los datos.

    2. Segn las anomalas detectadas, se utilizan sub redes especializadas

    para cada tipo de anomala con la finalidad de determinar con mayor

    detalle, las causas de la falla detectada y orientar de mejor manera al

    consultor en su posible solucin.

  • 7/23/2019 Red Neuronal Codigo C#

    69/114

    55

    Post Condiciones:

    Detalle de las recomendaciones realizadas por el sistema.

    7.2 Diagrama de Clases de Base de Objetos

    De acuerdo a los requerimientos obtenidos, se identificaron las siguientes

    clases y sus relaciones:

    Figura 18. Diagrama de clases de Base de Objetos.

    0..*

    1..1

    1..1

    1..1

    0..*

    1..1

    1..*

    1..1

    Cliente

    ------

    RutNombreDireccionGiroTelefonoMail

    : int: string: string: string: string: string

    Auditoria

    ---

    ------

    FechaBancoCondensadoresGHP

    MallaBTMallaMTMedicionesPotenciaSuministroTarifa

    : DateTime: int: int

    : int: int: Medicion: int: int: int

    Medicion

    --------

    FechaInicioFechaFinAnomaliasIntervaloUnidadStat1Stat2TotalRegistros

    : int: int: int: int: int: int: int: int

    Registro

    ------

    VoltajeCorrientePotenciaEnergiaAparenteEnergiaReactivaFactorPotencia

    : int: int: int: int: int: int

    Consultor

    -----

    FechaCertificacionRutMailNombreProfesin

    : DateTime: int: int: int: int

    NeuralNetwork

  • 7/23/2019 Red Neuronal Codigo C#

    70/114

    56

    Para la implementacin de la red neural, se establecieron las clases siguiendo

    los patrones de implementacin definidos en [Kirirlov2005], la cual provee laestructura necesaria para la construccin de red neuronal con sus capas y

    nodos correspondientes.

    Se implementaron las funciones de activacin sigmoidal y sigmoidal bipolar

    para la realizacin de las pruebas de comportamiento de la red utilizando

    ambas configuraciones en el proceso de construccin.

    Para el proceso de aprendizaje supervisado se implement la clase Back

    Propagation, la cual contiene la implementacin del mtodo de propagacin de

    error hacia atrs.

  • 7/23/2019 Red Neuronal Codigo C#

    71/114

    57

    Figura 19. Diagrama de clases Red Neuronal

    function

    *neurons

    *layers

    network

    ActivationLayer

    + indexerActivationNeuron

    ...

    Activatio

    #

    #++

    ...

    ActivationNetwork

    + indexerActivationLayer

    ...

    BackPropagationLearning------++

    networklearningRatemomentumneuronErrorsweightsUpdatesthresholdsUpdatesLearningRateMomentum

    ...

    BipolarSigmo

    -+

  • 7/23/2019 Red Neuronal Codigo C#

    72/114

  • 7/23/2019 Red Neuronal Codigo C#

    73/114

    59

    Nombre

    Asociacin Descripcin Multiplicidad

    Solicita

    Auditoria

    El cliente solicita la ejecucin de unaauditoria, con lo cual se crea unanueva instancia de la clase auditoria yse le asigna al cliente

    0..*

    Consultor

    EncargadoAl momento de crear una claseauditoria esta debe tener un consultorencargado de la ejecucin de la misma

    1..*

    Mediciones

    Realizadas

    Proceso mediante el cual se realizanmediciones a las instalacioneselctricas de los clientes con lafinalidad de determinar la existencia deanomalas.

    0..*

    Registros

    capturadosLos registros importados desde elarchivo Excel pertenecen a unamedicin.

    1..1

    Tabla 4. Detalle de asociaciones.

  • 7/23/2019 Red Neuronal Codigo C#

    74/114

  • 7/23/2019 Red Neuronal Codigo C#

    75/114

    61

    Nombre Atributo Tipo Descripcin

    Rut entero Rol nico Nacional delconsultor

    Nombre alfanumricoNombre del consultor

    Fecha

    Certificacinfecha Fecha del ltimo certificado

    obtenido por el consultor,emitido por el INN

    Profesin alfanumricoTitulo del consultor

    Tabla 6. Detalle de atributos clase Consultor

  • 7/23/2019 Red Neuronal Codigo C#

    76/114

    62

    Nombre Atributo Tipo Descripcin

    Fecha fecha Fecha de inicio de laauditoria

    Banco de

    Condensadoresentero Potencia del banco de

    condensadores, si este noexiste el valor es 0

    GHP booleano Indica si existe generacinpropia en las horastipificadas como de punta

    Malla BT entero

    Capacidad de la malla de

    proteccin para losconsumos en baja tensin,si esta no existe el valor es0

    Malla MT entero

    Capacidad de la malla deproteccin para losconsumos en mediatensin, si esta no existe elvalor es 0

    Mediciones Medicin Conjunto de medicionespertenecientes a una

    auditoriaPotencia entero Potencia contratada alsuministro pblico de

    energa

    Suministro alfanumricoIndica si la energa esprovista por un proveedorpublico o generada enforma particular

    Tarifa alfanumrico Indica la tarifa contratada alproveedor de energapblico.

    Tabla 7. Detalle de atributos clase Auditoria

  • 7/23/2019 Red Neuronal Codigo C#

    77/114

    63

    Nombre Atributo Tipo Descripcin

    Fecha Inicio fecha Fecha en la que se inicio lacaptura de los datoselctricos

    Fecha Fin fecha Fecha en que se captura elltimo registro

    Anomalas doubleDetalle de anomalas porcada uno de los registroscorrespondientes a lamedicin

    Intervalo entero Unidad numrica delintervalo en que soncapturados los datos

    Unidad alfanumrico Indica si el intervalocorresponde a minutos osegundos

    Stat1 registro

    Arreglo en donde seguardan las mediciones en

    donde se registran losmnimos y mximos de lasvariables analizadas

    Stat2 doubleArreglo en donde se guardael promedio y la desviacinestndar de cada una delas variables capturadas.

    Total Registros entero Nmero total de registroscapturados

    Tabla 8. Detalle de atributos clase Medicin

  • 7/23/2019 Red Neuronal Codigo C#

    78/114

  • 7/23/2019 Red Neuronal Codigo C#

    79/114

    65

    8 CONSTRUCCIN

    8.1 Definicin de Arquitectura

    Se utilizo como base para el diseo de la arquitectura de la aplicacin lo

    planteado en [Lhotka2005] y se ha definido una arquitectura compuesta por tres

    capas, las cuales se detallan en el siguiente diagrama:

    Figura 20. Capas de Arquitectura de la Aplicacin.

  • 7/23/2019 Red Neuronal Codigo C#

    80/114

    66

    Cabe destacar que entre las capas solo existe traspaso de objetos, esto gracias

    a la implementacin de todas las capas con tecnologas orientadas a Objetos.

    8.2 Anlisis estadstico de la medicin y pre condiciones de bsqueda de

    anomalas.

    Se utiliz como base del desarrollo el procedimiento seguido por el consultor, el

    cual mediante el anlisis de la informacin estadstica bsica, determinaba

    primeramente las posibles anomalas, tras lo cual, proceda a revisar

    detalladamente los 6.000 registros capturados, considerando las 24 variables

    para indicar la presencia de una anomala puntual, en un momento determinado

    por la fecha y hora del registro analizado.

    En la aplicacin se implement un procedimiento que, posterior a la importacin

    de los datos, se procesan stos y se determinan los valores: mximos,

    mnimos, media aritmtica y desviacin estndar por cada una de las variables

    analizadas. Se utiliz este mtodo como una forma de descartar informacin

    que no tenga relevancia en el anlisis posterior asistido por las redes

    neuronales, ya que como se indica en [Isasi2004], se debe identificar

    claramente la informacin mediante la ejecucin de un anlisis previo, las

    variables que aportarn informacin a la red y cules no.

  • 7/23/2019 Red Neuronal Codigo C#

    81/114

    67

    8.3 Redes Neuronales utilizadas en el anlisis

    Para la implementacin de las redes neuronal se selecciono como estructura

    base, una red de perceptrones con multicapas, basada en la teora expuesta en

    [Isasi2004], con la implementacin del algoritmo de retroalimentacin hacia

    atrs o Back Propagation, en el cual el error registrado en la capa de salida es

    propagado hacia atrs para la correccin de los pesos correspondientes a las

    neuronas de cada una de las capas ocultas.

    Como funcin de activacin se utilizaron el sigmoide y el sigmoide bipolar, cuya

    diferencia est en el recorrido de cada una. Ambas cumplen con la condicin de

    ser continuamente diferenciable [Sierra2006].

    Para cada caso se implementaron pruebas con cada una de ellas.

    Funcin Sigmoidal

    () 11 +

    Funcin Sigmoidal Bipolar

    ()1

    1 +

    Figura 21. Funciones de activacin del perceptron multicapa.

  • 7/23/2019 Red Neuronal Codigo C#

    82/114

  • 7/23/2019 Red Neuronal Codigo C#

    83/114

    69

    0 5% 0

    1 5% 1 2 5% 2

    3 3

    4 4

    5 5

    6 6

    7 7

    8

    9 3% /

    10 3% /

    11 3% /

    12 3% /

    13 30% /

    14 30% /

    15 /(+) 40%

    16 /(+) 40%

    17 /(+) 40%

    18 70%

    19

    20

  • 7/23/2019 Red Neuronal Codigo C#

    84/114

    70

    Para determinar la optima configuracin de la red neuronal, as como el numero

    de neuronas en la capa oculta, se utilizaron 5 configuraciones distintas,utilizando el mtodo de ensayo- error definido en [Madan2005] .

    Para todas las configuraciones se utilizaron los siguientes parmetros en

    comn:

    Learning rate: 0.1

    Momentum: 0.1

    Iteraciones: 1.000

    Set de entrenamiento: 1.000

    Se precedi a entrenar cada una de las configuraciones, obteniendo el error del

    proceso de entrenamiento expuesto a continuacin:

    1 2 3 4 5

    16 60 19 10 15

    Tabla 11 Configuraciones de Red Neuronal 1.

  • 7/23/2019 Red Neuronal Codigo C#

    85/114

    71

    Figura 22. Error en entrenamiento de distintas configuraciones de la red

    neuronal 1.

    Se realizaron tres procesos independientes de entrenamiento con cada una de

    las configuraciones para asegurar el error obtenido posterior a la ejecucin de

    cada uno de los procesos.

    El error final registrado para cada una de las configuraciones fue el siguiente:

    0

    100

    200

    300

    400

    500

    600

    700

    0 100 200 300 400 500 600 700 800 900 1000

    1

    2

    3

    4

    5

  • 7/23/2019 Red Neuronal Codigo C#

    86/114

    72

    Conf 1 Conf 2 Conf 3 Conf 4 Conf 5

    4,765449 712,00 460,3868 0,558455 2,111243

    Tabla 12. Error en la iteracin nmero 1.000 del proceso de entrenamiento

    de la red neuronal 1.

    Por lo demostrado en el entrenamiento de cada una de las configuraciones, se

    ha seleccionado la configuracin nmero 4, como la ms adecuada para las

    caractersticas del problema.

    8.3.2 Red Neuronal 2. Deteccin y clasificacin de anomalas.

    Se defini una red neuronal que contar con la capacidad de identificar y

    clasificar anomalas presentes en las instalaciones en donde fueron capturados

    los registros analizados.

    La necesidad de esta implementacin, y objetivo principal de este seminario,

    est dada por la complejidad del anlisis debido a la combinacin de

    componentes en cada uno de los diversos tipos de fallos as como la nula

    estandarizacin en los procedimientos de identificacin de los patrones de

    anomalas.

  • 7/23/2019 Red Neuronal Codigo C#

    87/114

  • 7/23/2019 Red Neuronal Codigo C#

    88/114

  • 7/23/2019 Red Neuronal Codigo C#

    89/114

    75

    Tabla 15. Error en entrenamiento de distintas configuraciones de la red

    neuronal 2.

    Se realizaron tres procesos independientes de entrenamiento con cada una de

    las configuraciones para asegurar el error obtenido posterior a la ejecucin de

    cada uno de los procesos.

    El error final registrado para cada una de las configuraciones fue el siguiente:

    0

    100

    200

    300

    400

    500

    600

    700

    0 100 200 300 400 500 600 700 800 900 1000

    1

    2

    3

    4

    5

  • 7/23/2019 Red Neuronal Codigo C#

    90/114

    76

    Conf 1 Conf 2 Conf 3 Conf 4 Conf 5

    5,422242 81,04997 5,894396 5,817642 2,642332

    Tabla 16. Error en la iteracin nmero 1.000 del proceso de entrenamiento

    de la red neuronal 2.

    Segn el anlisis expuesto, la configuracin de red neuronal que ms se

    adeca a las condiciones del problema es la nmero 5.

  • 7/23/2019 Red Neuronal Codigo C#

    91/114

    77

    8.3.3 Sub Redes especializadas

    Se configuraron adicionalmente dos redes para los diagnsticos asociados con

    el Banco de Condensadores y Gestin de Consumos.

    Estas redes cuentan con la capacidad de realizar 4 sub diagnsticos para cada

    una de las areas sealadas haciendo un segundo anlisis de las entradas de

    la Red Neuronal 2.

    Se adopt esta modalidad de implementacin debido a los diversos factores

    asociados a cada uno de los diagnsticos que, de acuerdo a las pre

    condiciones dadas, implican resultados diversos.

    Se implementaron ambas sub redes con funciones de activacin sigmoidales y

    los patrones de entrenamiento consistieron en el sub conjunto de patrones

    extrados de la muestra principal utilizada para el entrenamiento de la Red

    Neuronal 2.

  • 7/23/2019 Red Neuronal Codigo C#

    92/114

    78

    9 INTERFAZ DE USUARIO

    Se dise la interfaz de usuario de acuerdo a los requerimientos presentados

    por los consultores, poniendo especial nfasis en la disposicin de la

    informacin y la validacin de la informacin ingresada.

    Como gua del desarrollo de la interfaz, se utiliz como base las definiciones de

    [Ambler2005], de las cuales a continuacin se exponen las principales:

    La Estructura: Las interfaces se deben organizar de acuerdo al propsito de

    las mismas utilizando modelos claros y consistentes as como familiares para el

    usuario.

    La Simplicidad: El diseo debe ser simple, tareas comunes de simple

    ejecucin, manteniendo la comunicacin con el usuario en su propio lenguaje.

    Se utilizaron los colores institucionales para el diseo de las interfaces.

    La Retroalimentacin: Se debe mantener informados a los usuarios respecto

    de cambios de estado o condicin, sin caer en redundancia de informacin.

    La Reusabilidad: El diseo debe reusar componente internos y externos,

    manteniendo la consistencia en toda la aplicacin, reduciendo as la necesidad

    del cliente de recordar o repensar el comportamiento de la interfaz.

  • 7/23/2019 Red Neuronal Codigo C#

    93/114

    79

    Durante el proceso de elaboracin se realizaron tres prototipos de interfaces,

    los cuales fueron validados por los usuarios y a continuacin se exponenalgunas capturas de los formularios definitivos del sistema.

    Figura 23. Interfaz de Usuario Ingreso/Edicin de Cliente

  • 7/23/2019 Red Neuronal Codigo C#

    94/114

    80

    Figura 24. Interfaz de Usuario Creacin de Auditora

  • 7/23/2019 Red Neuronal Codigo C#

    95/114

    81

    Figura 25. Interfaz de Usuario Ingreso/validacin patrones de anlisis.

  • 7/23/2019 Red Neuronal Codigo C#

    96/114

    82

    Figura 26 Interfaz de Usuario Proceso entrenamiento Redes Neuronales

  • 7/23/2019 Red Neuronal Codigo C#

    97/114

    83

    Figura 27. Interfaz de Usuario Generacin/Visualizacin de Reportes

  • 7/23/2019 Red Neuronal Codigo C#

    98/114

    84

    10 PRUEBAS

    Segn la definicin inicial del Plan de Pruebas, se desarrollaron las siguientes

    actividades en cada una de las respectivas etapas del desarrollo:

    Inicio:

    Segn la definicin de requerimientos realizada en el modelo del dominio, se

    verific el cumplimiento de las condiciones tcnicas predefinidas y se validaronlos requerimientos como los bsicos de la primera iteracin segn lo definido en

    la metodologa.

    Elaboracin:

    Se implement un prototipo de la funcin de importacin de los datos desde la

    hoja Excel para validar las condiciones tcnicas de Db4o como motor de Base

    de Objetos de la Aplicacin.

    Se comprob la persistencia de los objetos al realizar inserciones y

    recuperaciones de las estructuras de las redes neuronales definidas en la

    aplicacin, las cuales se desarrollaron en completa conformidad.

  • 7/23/2019 Red Neuronal Codigo C#

    99/114

    85

    Construccin:

    En esta etapa se utiliz la IDE de Visual Studio 2008 .Net que incorpora los

    elementos necesarios para la ejecucin y seguimiento de las pruebas de

    unidad.

    A continuacin se expone el resultado de la ejecucin del test de unidad de la

    clase MedicinHelper, correspondiente a la capa de negocios de la aplicacin.

    Debido a la dependencia de datos, se cre un set de datos para cada una de

    las clases testeadas, el cual fue manejado de manera independiente a los

    utilizados en las pruebas posteriores correspondientes a la fase de transicin.

  • 7/23/2019 Red Neuronal Codigo C#

    100/114

    86

    Figura 28. Reporte de Visual Studio para pruebas de unidad

  • 7/23/2019 Red Neuronal Codigo C#

    101/114

    87

    Transicin:

    Se valido en conjunto con los usuarios, el cumplimiento de los requisitos, as

    como tambin se ejecutaron test de integracin, en los cuales se evidenci el

    correcto funcionamiento del prototipo.

    Para las pruebas del funcionamiento de las redes neuronales, se utilizo un set

    de pruebas distinto al utilizado en el acondicionamiento inicial de las mismas

    para evitar el sobre entrenamiento de la red y descartar la existencia de

    mnimos locales. Estas pruebas se realizaron siguiendo los parmetros

    definidos en [Krse1996].

  • 7/23/2019 Red Neuronal Codigo C#

    102/114

    88

    11 CONCLUSIONES Y RECOMENDACIONES

    Dados los lineamientos inciales del problema presentado por la empresa

    Eficiencia Energtica Integral, el alumno consider enfrentar el desarrollo por

    dos areas principales: El estudio del peso especfico de la informacin a

    procesar y su relacin con las anomalas elctricas posibles de identificar por el

    reconocimiento de patrones, as como las diversas condiciones elctricas

    presentes en los distintos ambientes industriales.

    Este anlisis previo, junto a las caractersticas aportadas por la metodologa

    respecto a la inclusin del cliente en las tareas propias del desarrollo del

    software, permitieron al alumno lograr un cabal cumplimiento de los objetivos

    planteados.

    Las redes neuronales aportan un gran potencial a las caractersticas dinmicas

    de herramienta final, ya que provee una solucin cercana a las condiciones de

    las actividades desarrolladas por EEI, que por ser una empresa pionera en la

    regin y pertenecer al selecto grupo de empresas certificadas por el Instituto

    Nacional de Normalizacin, aporta da a da al estudio de la Eficiencia

    Energtica en la Industria Nacional.

    Este proyecto tambin ha permitido a EEI, optimizar el uso de sus recursos,

    acortando el tiempo de desarrollo de sus auditoras y permitindole dar una

    mejor atencin a sus clientes por medio del desarrollo in-situ de los informes

  • 7/23/2019 Red Neuronal Codigo C#

    103/114

    89

    finales de sus auditoras, condicin que previo a la implementacin del Software

    de Anlisis Elctrico, era realizada en los das posteriores a la captura de lainformacin.

    Como recomendacin general al proyecto, el alumno ha identificado las

    siguientes:

    Dadas la caractersticas del prototipo desarrollado, queda la posibilidad de

    implementar la interfaz de usuario en formato Web, y con el desarrollo de

    algunas aplicaciones de gestin energtica, que posibilitara al cliente auto

    gestionar energticamente su empresa, siguiendo los lineamientos entregados

    por EEI.

    Identificando la tecnologa disponible en el mercado respecto a equipos de

    monitoreo elctrico, cabe sealar como nueva rea de desarrollo, la

    implementacin de un sistema de deteccin de anomalas elctricas On-line, el

    cual permitira anticipar de acuerdo a los patrones previamente definidos

    posibles condiciones crticas y anticipar y programar actividades de mantencin

    en equipamiento de vital importancia en los diversos procesos productivos.

  • 7/23/2019 Red Neuronal Codigo C#

    104/114

    90

    12 BIBLIOGRAFA

    [Isasi2004] Isasi Viuela, P; Galvn Len, I.M. Redes de Neuronas

    Artificiales, Un enfoque Practico. Pearson. Primera Edicin.

    2004.

    [Deitel2006] Deitel, H.M; Deitel, P.J. Visual C# 2005, How to Program.

    Pearson. Second Edition. 2006

    [Larman2003] Larman, C. UML y Patrones. Una introduccin al anlisis y

    diseo orientado a objetos y al proceso unificado. Pearson.

    Segunda Edicin.2003.

    [Nilsson2005] Nilsson,J.W; Riedel,S.A. Circuitos Elctricos. Pearson.

    Sptima Edicin. 2005.

    [Ambler2003] Ambler, Scott W. Agile DatabaseTechniques: Effective

    Strategies for the Agile Software Developer. Wiley

    Publishing, Inc. 2003

    [Ambler2005] Ambler, Scott W. The Agile Unified Process (AUP).

    Disponible en

    http://www.ambysoft.com/unifiedprocess/agileUP.html,

    Septiembre 2005.

  • 7/23/2019 Red Neuronal Codigo C#

    105/114

    91

    [Madan2003] Madan, Gupta.Static and Dynamic Neural Networks: From

    Fundamentals to Advanced Theory. Wiley Inc. 2003

    [Kirillov2008] Kirillov, Andrew .AForge Proyect.

    Disponible en

    http://code.google.com/p/aforge/

    Agosto 2008.

    [Krse1996] Krse,Ben. An Introduccin to Neural Network. University of

    Amsterdam. Eighth Edition. 1996.

  • 7/23/2019 Red Neuronal Codigo C#

    106/114

  • 7/23/2019 Red Neuronal Codigo C#

    107/114

    93

    actual = target.Total;Assert.AreEqual(target.Total, actual);

    }

    ///A test for Mediciones[TestMethod()]publicvoidMedicionesTest(){

    MedicionHelpertarget = Medicion;List actual;actual = target.Mediciones;Assert.AreEqual(actual, target.Mediciones);

    }///A test for Intervalo[TestMethod()]publicvoidIntervaloTest()

    { MedicionHelpertarget = Medicion;intactual;actual = target.Intervalo;Assert.AreEqual(actual, target.Intervalo);

    }///A test for Inicio[TestMethod()]publicvoidInicioTest(){

    MedicionHelpertarget = Medicion;DateTimeactual;actual = target.Inicio;Assert.AreEqual(target.Inicio, actual);

    }///A test for Fin[TestMethod()]publicvoidFinTest(){

    MedicionHelpertarget = Medicion;DateTimeactual;actual = target.Fin;Assert.AreEqual(actual, target.Fin);

    }///A test for SobrePotCon[TestMethod()]publicvoidSobrePotConTest()

    {MedicionHelpertarget = Medicion;MedicionHelperActual;intPotCont = 0;Actual = Medicion;Actual.SobrePotCon(PotCont);target.SobrePotCon(PotCont);Assert.AreEqual(Actual, target);

  • 7/23/2019 Red Neuronal Codigo C#

    108/114

    94

    }

    ///A test for SobreCarga

    [TestMethod()]publicvoidSobreCargaTest(){

    MedicionHelpertarget = Medicion;Medicion.SobreCarga();target.SobreCarga();Assert.AreEqual(target, Medicion);

    }///A test for SecuenciaFases[TestMethod()]publicvoidSecuenciaFasesTest(){

    MedicionHelpertarget = Medicion;

    target.SecuenciaFases();Medicion.SecuenciaFases();Assert.AreEqual(target, Medicion);

    }///A test for Normativo[TestMethod()]publicvoidNormativoTest(){

    MedicionHelpertarget = Medicion;target.Normativo();Medicion.Normativo();Assert.AreEqual(target, Medicion);

    }///A test for GuardaAnomalias[TestMethod()]publicvoidGuardaAnomaliasTest(){

    MedicionHelpertarget = Medicion;target.GuardaAnomalias();Medicion.GuardaAnomalias();Assert.AreEqual(target, Medicion);

    }///A test for Estadistico[TestMethod()]publicvoidEstadisticoTest(){

    MedicionHelpertarget = Medicion;target.Estadistico();Medicion.Estadistico();Assert.AreEqual(target, Medicion);

    }///A test for EnergiaReac[TestMethod()]publicvoidEnergiaReacTest()

  • 7/23/2019 Red Neuronal Codigo C#

    109/114

    95

    {MedicionHelpertarget = Medicion;target.EnergiaReac();

    Medicion.EnergiaReac();Assert.AreEqual(target, Medicion);

    }///A test for DesbalanceTension[TestMethod()]publicvoidDesbalanceTensionTest(){

    MedicionHelpertarget = Medicion;doubledt = 0.03;target.DesbalanceTension(dt);Medicion.DesbalanceTension(dt);Assert.AreEqual(target, Medicion);

    }

    ///A test for DesbalanceCargas[TestMethod()]publicvoidDesbalanceCargasTest(){

    MedicionHelpertarget = Medicion;doubledc = 0.3;target.DesbalanceCargas(dc);Medicion.DesbalanceCargas(dc);Assert.AreEqual(target, Medicion);

    }///A test for CorrientesNeutro[TestMethod()]publicvoidCorrientesNeutroTest(){

    MedicionHelpertarget = Medicion;target.CorrientesNeutro();Medicion.CorrientesNeutro();Assert.AreEqual(target, Medicion);

    }[TestMethod()]publicvoidMedicionHelperConstructorTest1(){

    MedicionHelpertarget = newMedicionHelper();Medicion = newMedicionHelper();Assert.AreEqual(target, Medicion);

    }}

    }

    Figura 29. Implementacin de Test Clase MedicionHelper

  • 7/23/2019 Red Neuronal Codigo C#

    110/114

    96

    publicvoidSobreCarga(){

    doublel1 = 0, l2 = 0, l3 = 0, l4 = 0, l5 = 0, al5 = 0,a7=0;

    intIndAnom = 0;doubledes1 = 0, des2 = 0, des3 = 0;double[] PASS= newdouble[7];boolflag = false;List col = MedicionDb.GetAll;Medicion.SetAnomalias();

    foreach(RegistroDbi incol){

    al5 = (l1 + l2 + l3 + l4 + l5) / 5;if((al5 + (Medicion.Stat2[1][10] / 2)) < i.TW& al5>0)

    { a7 = 1-(al5/i.TW);PASS = Medicion.GetAnom(IndAnom);PASS[6] = a7;Medicion.SetAnom(IndAnom, PASS);

    }

    l1 = i.TW;l2 = l1;l3 = l2;l4 = l3;l5 = l4;IndAnom++;

    }

    }

    Figura 30. Implementacin de anlisis de sobre carga.

  • 7/23/2019 Red Neuronal Codigo C#

    111/114

    97

    publicBackPropagationLearning( ActivationNetworknetwork ){

    this.network = network;

    // Creacin de error y arreglo deltaneuronErrors = newdouble[network.LayersCount][];weightsUpdates = newdouble[network.LayersCount][][];thresholdsUpdates = newdouble[network.LayersCount][];

    // Se inicializa el error y los arreglos delta en cada capafor( inti = 0, n = network.LayersCount; i < n; i++ ){

    Layerlayer = network[i];

    neuronErrors[i] = newdouble[layer.NeuronsCount];weightsUpdates[i] = newdouble[layer.NeuronsCount][];

    thresholdsUpdates[i] = newdouble[layer.NeuronsCount];

    // para cada neuronafor( intj = 0; j < layer.NeuronsCount; j++ ){

    weightsUpdates[i][j] = newdouble[layer.InputsCount];}

    }}

    Figura 31. Implementacin mtodo de aprendizaje Back Propagation