rodrigo carlos soares - ufsc · e utilizando conceitos apresentados pela teoria dos grafos, foi...
TRANSCRIPT
Rodrigo Carlos Soares
ALOCAÇÃO DE ELETRODUTOS E CONDUTORES EM
PROJETOS ELÉTRICOS RESIDENCIAIS DE BAIXA TENSÃO
UTILIZANDO ALGORITMO GENÉTICO
Trabalho de Conclusão do Curso de
Graduação em Engenharia de Produção
Elétrica, Departamento de Engenharia de
Produção e Sistemas do Centro de
Tecnologia da Universidade Federal de
Santa Catarina como requisito básico para
conclusão do Curso de Engenharia de
Produção Elétrica.
Orientador: Sérgio Fernando Mayerle, Dr.
Florianópolis
2018
Ficha de identificação da obra elaborada pelo autor
através do Programa de Geração Automática da Biblioteca Universitária
da UFSC.
Rodrigo Carlos Soares
ALOCAÇÃO DE ELETRODUTOS E CONDUTORES EM
PROJETOS ELÉTRICOS RESIDENCIAIS DE BAIXA TENSÃO
UTILIZANDO ALGORITMO GENÉTICO
Este trabalho de conclusão de curso foi julgado adequado e aprovado em
sua forma final, pelo Curso de Graduação em Engenharia de Produção
Elétrica da Universidade Federal de Santa Catarina.
Florianópolis, 30 de novembro de 2018.
________________________
Prof.ª Marina Bouzon, Dr.ª
Coordenadora do Curso
Banca Examinadora:
________________________
Prof. Sérgio Fernando Mayerle, Dr.
Orientador
Universidade Federal de Santa Catarina
________________________
Prof. Guilherme Ernani Vieira, Dr.
Universidade Federal de Santa Catarina
________________________
Prof. Antônio Sérgio Coelho, Dr.
Universidade Federal de Santa Catarina
Este trabalho é dedicado a Bianca,
uma grande mulher, amiga e esposa.
AGRADECIMENTOS
Agradeço primeiramente a minha esposa Bianca, que ao longo
desses anos me deu forças e apoio para que eu alcançasse esse objetivo.
Obrigado meu amor, por suportar todas minhas crises de humor, estresse
e ausência em diversos momentos.
Agradeço meus pais Jussara e Carlos, que apesar das dificuldades
enfrentadas no passado, contribuíram para que eu me tornasse
Engenheiro. Agradeço aos meu irmãos Denise e Felipe por toda torcida.
E agradeço aos familiares da minha esposa, que de alguma forma
estiveram presentes nessa jornada.
Meu eterno agradecimento a todos meus amigos, conquistados na
Universidade, que contribuíram de alguma maneira. Principalmente ao
Geovan, Hiago, Guilherme, Felipe, Karen e Diogo, que me ajudaram em
diversos momentos difíceis. Só tenho a agradecer a todos vocês. E em
especial a um grande amigo de longa data, que indiretamente me ajudou
nesse TCC, valeu Diego.
Sou grato principalmente ao professor Sérgio Fernando Mayerle,
meu orientador, pelo empenho, dedicação e contribuição para a
realização desse trabalho. O conhecimento repassado não será
esquecido, muito obrigado.
E a todos que direta ou indiretamente fizeram parte da minha
formação, muito obrigado.
RESUMO
O projeto elétrico de uma edificação consiste em determinar os pontos
elétricos, alocar os eletrodutos, dimensionar os condutores, realizar a
divisão de circuitos, definir as proteções e quantificar os materiais. Junto
com a segurança, que é prioridade em qualquer projeto, o custo final de
execução do sistema elétrico é um fator relevante em seu
desenvolvimento. Nesse contexto, a etapa do projeto e instalação
elétrica representam em média 12% do custo final de uma nova
edificação. Partindo de pontos elétricos pré-estabelecidos pelo projetista
e utilizando conceitos apresentados pela teoria dos grafos, foi
implementado uma aplicação computacional que consiste em buscar
soluções economicamente viáveis na distribuição dos eletrodutos e
condutores elétricos, de forma a reduzir os custos associados a
instalação elétrica na edificação. Os resultados observados, pela
implementação de um algoritmo genético, mostraram-se atrativos com
redução de custo, referentes às implantações de eletrodutos e condutores
elétricos, da ordem de 20%.
Palavras-chave: Algoritmo Genético. Grafos. Projeto Elétrico.
Distribuição de Eletrodutos.
ABSTRACT
The electrical design of a building consists of determining the electrical
points, allocating the conduits, dimensioning the conductors, dividing
the circuits, defining the protections and quantifying the materials.
Along with safety, which is a priority in any project, the final cost of
running the electrical system is a relevant factor in its development. In
this context, the design stage and electrical installation represent on
average 12% of the final cost of a new building. Starting from electrical
points pre-established by the designer and using concepts presented by
graph theory, a computational application was implemented that consists
in finding economically viable solutions in the distribution of electrical
conduits and conductors, in order to reduce the costs associated with the
electrical installation in the building. The results observed, by the
implementation of a genetic algorithm, were attractive, since the costs
related to the electrical conduits and wire, obtained a reduction in the
order of 20%.
Keywords: Genetic Algorithm. Graphs. Electrical project. Distribution
of conduits.
LISTA DE FIGURAS
Figura 1 - Características físicas dos condutores ........................ 37 Figura 2 - Nós e Vértices ............................................................ 38 Figura 3 - Grafo orientado e não orientado ................................ 39 Figura 4 - Grafo desconexo e conexo ......................................... 40 Figura 5 - Grafo com matriz adjacência ..................................... 41 Figura 6 - Grafo com matriz de incidência ................................. 41 Figura 7 - Árvores: geradora (a) geradora mínima (b) ............... 46 Figura 8 - Busca de uma árvore geradora mínima ...................... 47 Figura 9 - Representação do cromossomo em string .................. 57 Figura 10 - Funcionamento crossover uniforme ......................... 58 Figura 11 - Tela da aplicação computacional ............................. 67 Figura 12 - Gráfico de Análise ................................................... 71
LISTA DE QUADROS
Quadro 1 - Pseudocódigo do Algoritmo de Floyd ...................... 44 Quadro 2 - Pseudocódigo do Algoritmo de Floyd & Hu ............ 45 Quadro 3 - Pseudocódigo do algoritmo de Prim ........................ 47 Quadro 4 - Terminologias AG .................................................... 49 Quadro 5 - Algoritmo genético implementado ........................... 61 Quadro 6 - Cálculo do fitness ..................................................... 62 Quadro 7 - Algoritmo de Prim modificado ................................. 64
LISTA DE TABELAS
Tabela 1 - Documentação e Normas Técnicas exigidas ............. 35 Tabela 2 - Exemplos de decodificação ....................................... 51 Tabela 3 - Método de seleção ..................................................... 57 Tabela 4 - Quantitativo projeto original ..................................... 68 Tabela 5 - Dados de entrada ....................................................... 69 Tabela 6 - Resultados das populações para um processador
Intel I5 – 2.5 GHz .................................................... 70 Tabela 7 - Análise média dos dados ........................................... 71 Tabela 8 - Comparativo de projetos ........................................... 72 Tabela 9 - Dados de coordenadas dos pontos ............................. 80 Tabela 10 - Dados das possíveis ligações ................................... 80 Tabela 11 - Dados Tomadas ....................................................... 80 Tabela 12 - Dados dos Circuitos ................................................. 80 Tabela 13 - Dados dos Condutores ............................................. 80 Tabela 14 - Dados do Eletroduto ................................................ 81 Tabela 16 - Dados Luminárias .................................................... 81
LISTA DE ABREVIATURAS E SIGLAS
ABNT – Associação Brasileira de Normas Técnicas
AG – Algoritmo Genético
AMR – Algoritmo Matricial Revisado
ART – Anotação de Responsabilidade Técnica
CELESC – Centrais Elétricas de Santa Catarina
MST – Minimal Spanning Tree NBR – Norma Brasileira
NT – Normas Técnicas
PIB – Produto Interno Bruto
SINAPI – Sistema Nacional de Pesquisa de Custos e Índices da
Construção Civil
SP – Shortest Path
SUMÁRIO
1 INTRODUÇÃO ................................................................... 29 1.1 ORIGEM DO PROBLEMA ................................................. 29
1.2 CARACTERIZAÇÃO DO PROBLEMA ............................. 29
1.3 JUSTIFICATIVA E IMPORTÂNCIA DO TRABALHO .... 30
1.4 OBJETIVOS ......................................................................... 31
1.4.1 Objetivo geral ...................................................................... 31
1.4.2 Objetivos específicos ........................................................... 31
1.5 DELIMITAÇÃO DO ESTUDO ........................................... 31
1.6 METODOLOGIA ................................................................. 31
1.7 ESTRUTURA DO TRABALHO .......................................... 32
2 FUNDAMENTAÇÃO TEÓRICA ..................................... 34 2.1 PROJETOS ELÉTRICOS EM BAIXA TENSÃO ................ 34
2.1.1 Documentação e Normas técnica ....................................... 35
2.1.2 Linhas Elétricas ................................................................... 36
2.1.3 Divisões dos Circuitos ......................................................... 38
2.2 TEORIA DOS GRAFOS ...................................................... 38
2.2.1 Grafos Orientados e Não-Orientados ................................ 39
2.2.2 Grafos Conexos e Desconexos ............................................ 39
2.2.3 Árvore .................................................................................. 40
2.2.4 Representação de Grafos .................................................... 40
2.2.4.1 Matriz de Adjacência ............................................................ 40
2.2.4.2 Matriz de Incidência .............................................................. 41
2.2.5 Algoritmos para Grafos ...................................................... 42
2.2.5.1 Problema do caminho mínimo .............................................. 42
2.2.5.2 Árvore Geradora Mínima ...................................................... 45
2.3 ALGORITMO GENÉTICO .............................................. 48
2.3.1 Terminologia........................................................................ 48
2.3.2 População Inicial ................................................................. 50
2.3.3 Avaliação ............................................................................. 52
2.3.4 Seleção dos Cromossomos .................................................. 52
2.3.5 Operadores Genéticos ......................................................... 53
2.3.5.1 Operador Crossover .............................................................. 53
2.3.5.2 Mutação ................................................................................ 54
2.3.6 Escolha dos Parâmetros do AG ......................................... 55
3 ABORDAGEM DO ALGORITMO GENÉTICO PARA O
PROBLEMA PROPOSTO ................................................ 56 3.1 CODIFICAÇÃO DO CROMOSSOMO ............................... 56
3.2 População Inicial................................................................... 57
3.3 Operadores Genéticos ........................................................... 57
3.3.1 Seleção .................................................................................. 57
3.3.2 Operador Crossover ............................................................ 58
3.3.3 Operador de Mutação ........................................................ 59
3.4 Avaliação do Fitness ............................................................. 59
3.5 Critério de Parada do AG ...................................................... 60
4 IMPLEMENTAÇÃO DO ALGORITMO GENÉTICO .. 61 5 SISTEMA COMPUTACIONAL E RESULTADOS ....... 66 5.1 INTERFACE DO SISTEMA IMPLEMENTADO ............... 66
5.2 DESCRIÇÃO DO PROBLEMA .......................................... 68
5.3 COLETA DE DADOS .......................................................... 68
5.4 ANÁLISE DOS RESULTADOS ......................................... 70
6 CONCLUSÕES E RECOMENDAÇÕES ......................... 73 6.1 CONCLUSÕES .................................................................... 73
6.2 RECOMENDAÇÕES ........................................................... 74
REFERÊNCIAS .................................................................. 75
APÊNDICE A – Projeto Elétrico Utilizando AG ............. 78
APÊNDICE B – Dados de Entradas .................................. 80
ANEXO A – Legenda do Projeto Elétrico ........................ 82
ANEXO B – Projeto Elétrico Original .............................. 83
29
1 INTRODUÇÃO
1.1 ORIGEM DO PROBLEMA
A construção civil é um setor que apresenta números
significativos na economia brasileira. Segundo Cerqueira (2017), o setor
representa 6,2% do PIB do Brasil, pois reúne uma série de atividades
que afetam diretamente a capacidade produtiva do país. Porém, o setor
apresenta índices de desperdícios bastante elevados. Lima (2016) afirma
que em média 30% dos materiais são desperdiçados. Uma das origens
do desperdício está ligado na sua concepção, ou seja, no planejamento e
projeto, Picchi (1993) estima que 6% do custo total da obra refere-se a
“projetos não otimizados”, enfatizando a importância da racionalização
e melhoria da qualidade do projeto.
O projeto na construção civil é um dos elementos fundamentais
do processo de produção, podendo ser definido como uma descrição
escrita e detalhada de um empreendimento. Da mesma forma que um
projeto estrutural é definido pelo detalhamento e dimensionamento de
seus elementos, um projeto elétrico é a previsão escrita da instalação
com todos seus detalhes e características (CREDER, 2007). Um projeto
elétrico bem elaborado permite uma boa execução da instalação elétrica
em uma edificação, evitando desperdício de materiais, tornando o
controle do custo final do empreendimento mais eficiente.
Na concepção do projeto elétrico residencial, a etapa de
distribuição dos eletrodutos é fundamental, pois contribui de forma
considerável no custo da instalação. Habitualmente a alocação é feita
com base na experiência do projetista, que procura distribuir os
eletrodutos de forma a facilitar a execução do projeto. Embora o
projetista procure a melhor distribuição de dutos, nem sempre isto
resulta na melhor solução, podendo gerar custos adicionais na instalação
elétrica.
1.2 CARACTERIZAÇÃO DO PROBLEMA
A computação evolutiva é uma área de pesquisa que apresenta
um crescimento muito acelerado nas últimas décadas. Isso ocorre devido
as suas facilidades de resolver problemas pela simples descrição
matemática, através de um conjunto de técnicas e procedimentos
genéricas e adaptáveis (VON ZUBEN, 2000). Entre estas técnicas
30
destaca-se a aplicação dos Algoritmos Genéticos (AGs), que se mostra
como um método eficiente para problemas de busca, onde dado um
conjunto de indivíduos ou elementos, deseja-se encontrar aquele ou
aqueles que melhor atendam a certas condições especificadas
(CASTRO, 2001).
Portanto, este trabalho objetiva o desenvolvimento e
implementação de um método que minimize as distâncias percorridas
pelos eletrodutos e fios elétricos, utilizando-se da técnica de busca
baseada no processo biológico da evolução natural chamada de
Algoritmo Genético. Essa técnica apresenta uma solução subótima, por
se tratar de uma meta-heurística, para o problema proposto.
Para obtenção do custo de cada solução explorada, o problema é
modelado por um grafo, onde as arestas representam eletrodutos e
condutores elétricos, aos quais são associados um custo (ou distância).
Os nós do grafo representam os pontos elétricos. Cada par de pontos
pode estar interligado por um eletroduto, ou trajeto. Para o grafo assim
definido, foram resolvidos os problemas de caminho mínimo e árvore
geradora mínima, e a partir destas soluções é possível encontrar o custo
da instalação. Propõe-se então, com esse trabalho, desenvolver uma
aplicação computacional utilizando os conceitos de Algoritmos
Genéticos, com objetivo de buscar soluções para alocação de eletrodutos
e condutores, de forma a minimizar os respectivos custos.
1.3 JUSTIFICATIVA E IMPORTÂNCIA DO TRABALHO
Tendo em vista que o projeto elétrico na construção civil tem
impacto nos custos finais do empreendimento, a definição dos
componentes pelo projetista deve ser realizada de maneira mais efetiva,
de modo a reduzir custos totais na instalação. Nesse contexto, gastos
com eletrodutos e condutores elétricos são, em geral, relevantes nas
instalações elétricas de baixa tensão. Logo, o projetista deve procurar
alocá-los da melhor maneira possível, evitando trajetos desnecessários.
Portanto, este trabalho tem o propósito de implementar uma
aplicação computacional que apresente soluções eficazes na definição
dos trajetos dos eletrodutos e condutores elétricos, de forma a reduzir
custos associados a esses materiais.
31
1.4 OBJETIVOS
1.4.1 Objetivo geral
O objetivo geral deste trabalho é desenvolver uma aplicação
computacional utilizando a técnica do algoritmo genético (AG), com o
propósito de buscar boas soluções de distribuição de eletrodutos e
condutores no projeto elétrico.
1.4.2 Objetivos específicos
Para a obtenção do objetivo geral, os seguintes objetivos
intermediários serão desenvolvidos:
i. Levantar as informações relevantes do problema;
ii. Identificar métodos eficazes para coleta de dados;
iii. Transformar os requisitos do projeto elétrico em dados
de entrada do sistema computacional;
iv. Implementar e testar o algoritmo proposto;
v. Avaliar os resultados obtidos pelo aplicativo, tanto no
que diz respeito ao desempenho, como em relação à
qualidade das soluções obtidas.
1.5 DELIMITAÇÃO DO ESTUDO
A aplicação computacional desenvolvida neste estudo, é limitada
a projetos elétricos residenciais, em específico ao ambiente interno.
Porém, nada impede que esse método possa ser adaptado para outros
tipos de projetos, ou situações, sendo necessário realizar adaptações para
cada caso específico.
É importante ressaltar que os passos de dimensionamento de
circuitos e alocação dos pontos elétricos, são decisões do projetista
embasadas nas normativas estabelecidas para elaboração do projeto
elétrico.
1.6 METODOLOGIA
Conforme a classificação apresentada por Miguel (2010 apud
NETO e PUREZA, p.170), o estudo em questão pode ser definido como
32
sendo de natureza aplicada, objetivos experimentais e abordagem
quantitativa, tendo como método de pesquisa o uso de modelagem e
simulação.
É considerada de natureza aplicada, porque objetiva gerar
conhecimentos para aplicação prática, dirigidos à solução de problemas
específicos, envolvendo verdades e interesses locais (GERHARDT e
SILVEIRA, 2009), ou seja, trata da solução de um problema específico
e real. Os procedimentos adotados para esse estudo estão baseados no
modelo de Loureiro (2014) que apresenta cinco etapas: a revisão
bibliográfica, o referencial teórico, desenvolvimento de um modelo
computacional, análise dos resultados e as conclusões obtidas.
A revisão bibliográfica tem como objetivo inicial, o propósito de
identificar trabalhos e autores que abordem o tema de otimização de
redes através de algoritmos genéticos. Trabalhos referenciando
algoritmos de manipulação de grafos como árvore geradora mínima e
caminho mínimo, foram abordados devido a sua importância no
trabalho.
A estruturação do referencial teórico foi dividida em três áreas,
de modo a fundamentar o estudo em questão, como: o sistema de
projetos elétricos em baixa tensão, a teoria dos grafos e o algoritmo
genético. Definiu-se os principais conceitos de cada área de forma a
ressaltar os aspectos importantes que contribuem para o
desenvolvimento e formulação do modelo proposto.
1.7 ESTRUTURA DO TRABALHO
Este trabalho está dividido em seis capítulos. O primeiro capítulo
apresenta a parte introdutória, descrevendo a justificativa, seus objetivos
e a metodologia aplicada no estudo.
No capítulo dois é apresentado o referencial teórico com os
principais conceitos dos assuntos abordados, como: (a) projetos
elétricos, (b) teoria de grafos e (c) algoritmo genético.
No capítulo três, são apresentados os elementos utilizados na
implementação do algoritmo genético para resolução do problema de
alocação de eletrodutos e condutores elétricos.
33
No capítulo quatro, apresenta-se o modelo computacional
desenvolvido.
Os capítulos cinco e seis mostram as avaliações dos resultados
obtidos, as conclusões e as recomendações do modelo proposto.
34
2 FUNDAMENTAÇÃO TEÓRICA
Neste capítulo serão apresentados, de forma sucinta e objetiva, os
principais conceitos utilizados no desenvolvimento deste trabalho,
envolvendo aspectos técnicos das instalações elétricas de baixa tensão, a
revisão de conceitos e algoritmos utilizados da teoria dos grafos, e da
otimização combinatorial realizada por meio de algoritmos genéticos.
2.1 PROJETOS ELÉTRICOS EM BAIXA TENSÃO
De acordo com a Norma Brasileira 5410:2004 (NBR 5410),
aplicada a instalações elétricas de baixa tensão, ocorrem em tensões
entre 50 V à 1000 V, com tensões mais usuais entre 110 V à 380 V. Os
projetistas responsáveis por elaborar projetos elétricos devem atender às
orientações propostas por essa normativa.
O projeto elétrico é responsável por fazer uma previsão escrita da
instalação, apresentando todos os detalhes da localização de pontos
elétricos, trajetos dos condutores, dimensionamentos dos materiais e
dispositivos, divisão dos circuitos e a discriminação das cargas.
Conforme definição do Conselho Regional de Engenharia e Agronomia
de Santa Catariana (2007):
Projeto de instalação elétrica: atividade técnica
que envolve a determinação do arranjo elétrico,
desenhos esquemáticos de controle elétrico,
seleção e especificação de equipamentos e
materiais, cálculos de parâmetros elétricos,
executada em rigorosa obediência às normas
técnicas vigentes.
Um projeto de instalação elétrica, conforme Cotrim (2009),
consiste essencialmente em, de forma racional, selecionar, dimensionar
e localizar os equipamentos e outros componentes necessários para
proporcionar segurança e efetividade na transferência de energia elétrica
de uma fonte de energia até os pontos de utilização. Por esta razão, o
projetista deve preocupar-se com sua viabilidade, tanto do ponto de vista técnico, como do ponto de vista econômico (LIMA, 2004).
35
2.1.1 Documentação e Normas técnica
A Associação Brasileira de Normas Técnicas (ABNT) é
responsável pela elaboração das normativas técnicas brasileiras. Dentre
elas a NBR 5410 – Instalações elétricas de baixa tensão. É importante
salientar ainda que a NBR, em questão, não dispensa o atendimento das
demais normativas técnicas e as elaboradas pelas autoridades
reguladoras e empresas distribuidoras de eletricidade, neste caso a
CELESC.
Portanto, para garantir o funcionamento adequado da instalação,
conservação dos bens e a segurança de pessoas e animais, o projeto
elétrico está sujeito a documentações técnicas exigidas pelos órgãos
reguladores, e obediência de critérios definidos pelas normas técnicas
(NT). A Tabela 1, mostra as documentações e NTs exigidas para
elaboração de um projeto elétrico em Santa Catarina.
Tabela 1 - Documentação e Normas Técnicas exigidas
Documentação Exigência
ART – Anotação de
Responsabilidade Técnica Documentação exigida pelo CREA
Plantas de: Situação e pavimentos Exigida pela fornecedora de energia
Memoriais: Descritivo e Cálculo Exigida pela fornecedora de energia
Prumadas e diagrames unifilares Exigida pela fornecedora de energia
Detalhamento: entrada de serviço,
centros de medições e aterramentos. Exigida pela fornecedora de energia
Manual do Usuário Exigida pela NBR 5410
Normas Técnicas Referência
NBR 5410:2004 Instalações elétricas de baixa tensão
NBR 5444:1989 Símbolos gráfico para instalações
NBR 5419:2005 Proteção de estruturas contra
descargas atmosféricas
NR-10 Segurança em instalações e serviços
em eletricidade
N-321.001 (CELESC) Fornecimento de energia elétrica em
tensão secundária de distribuição
36
2.1.2 Linhas Elétricas
Condutores elétricos são os principais componentes das linhas
elétricas e são responsáveis pela condução da energia elétrica
(COTRIM, 2009). São materiais metálicos, geralmente de cobre ou
alumínio, na forma cilíndrica, utilizado para transportar energia elétrica.
Cotrim (2009), também afirma que, para instalações de baixa tensão é
recomendado a utilização do condutor de cobre devido a seu diâmetro
ser 28% menor, para a mesma quantidade de corrente elétrica
transportada, comparado a um condutor de alumínio. A NBR 5410,
apresenta as seções mínimas dos condutores que podem ser utilizados
nas instalações elétricas.
Para o projeto objeto deste trabalho, a linha elétrica adotada,
segundo a determinação da capacidade de condução de corrente elétrica,
se enquadra no tipo B1 – condutores isolados ou cabos unipolares em
eletroduto de seção circular embutido na alvenaria - conforme NBR
5410 (2004, p.90). E, para fins de cálculo, utilizou-se dados dos
condutores da marca SIL para tensões nominais até 750 V, os quais
atendem todos os requisitos normativos. A figura 1, retirado do catálogo
da SIL, mostra as características físicas dos condutores utilizados. Para a
determinação da seção dos condutores de fase a NBR 5410 estabelece
parâmetros mínimos a serem atendidos:
a. Seções mínimas;
b. Capacidade de condução de corrente igual ou superior à
corrente dos circuitos do projeto;
c. Proteção contra sobrecargas;
d. Proteção contra curtos-circuitos e solicitações térmicas;
e. Proteção contra choques elétricos; e
f. Limites de queda de tensão.
De forma geral, o condutor neutro em circuitos monofásicos
deverá possuir a mesma seção do condutor fase, além de não poder ser
comum a mais de um circuito distinto.
37
Figura 1 - Características físicas dos condutores
Fonte: Catálogo SIL
O segundo tipo de linhas elétricas são os eletrodutos, o segundo
material mais utilizado em uma instalação elétrica, ficando atrás apenas
dos condutores elétricos. O eletroduto tem como função principal, ser o
caminho da fiação elétrica, e protegê-la contra influências externas
(choques mecânicos e agentes químicos).
A NBR 5410 permite a utilização de qualquer tipo de eletroduto,
desde que sejam atendidas as solicitações de suporte mecânicos,
químicas, elétricas e térmicas a que forem submetidas nas condições de
instalação. De acordo com a normativa, os eletrodutos deverão ser em
material que não propaguem chamas, como é o caso dos metálicos e
PVC auto extinguíveis. Em seu interior devem ser instalados apenas
condutores isolados, podendo ser unipolares ou multipolares.
As dimensões dos eletrodutos e suas conexões, geralmente são
comercializados em polegadas e devem permitir que os condutores
possam, quando necessário, serem instalados e retirados com facilidade.
Para isso a normativa determina valores de taxa de ocupação máxima
nos eletrodutos a serem preenchidas, de acordo com a quantidade de
condutores instalados. No projeto em questão utilizou-se os parâmetros
do eletroduto flexível corrugado de PVC, fabricado pela empresa Tigre
que utiliza as seguintes dimensões: diâmetro externo (DE) de 25mm,
diâmetro interno (DI) de 19,4mm, espessura corrugada (e) de 2,8mm e
comprimento (L) de 50 metros, com taxa de ocupação máxima de 40%,
devido a previsão de projeto, para três ou mais condutores em cada
eletroduto, de acordo com a orientação normativa.
38
2.1.3 Divisões dos Circuitos
É de fundamental importância que toda instalação elétrica seja
dividida, de acordo com as necessidades, em vários circuitos, de modo
que cada circuito esteja isolado dos demais circuitos. Creder (2007)
salienta que os circuitos de iluminação devem ser separados dos
circuitos das tomadas. Devem ser previstos, também, circuitos
individualizados pela função a que se destinam, em particular circuitos
exclusivos para equipamentos com corrente nominal superior a 10A,
como por exemplo: tomadas para ar condicionados, tomadas especificas
da cozinha, chuveiros, secadoras e locais análogos.
2.2 TEORIA DOS GRAFOS
Um grafo G = (V, A) é uma estrutura matemática, composta por
um conjunto finito de vértices ou nós (objetos), denotados por V, e um
conjunto finito de arestas ou arcos (relacionamentos), denotados por A,
que conectam pares de vértices. Assim, em G, cada aresta ou arco 𝑎𝑘 é
representado por um par de nós ou vértices denotados por (𝑣𝑖, 𝑣𝑗).
Muitos problemas reais podem ser reduzidos a problemas em
grafos. Estruturas, como: linhas de metrôs, cidades, softwares, redes
elétricas, entre outras, são algumas situações típicas deste tipo de
representação. Na figura 2 observa-se um exemplo de grafo contendo
seis nós e sete arcos que conectam estes nós.
Figura 2 - Nós e Vértices
Onde o conjunto A também pode ser
representado como:
A = {(v1, v2), (v1, v3), (v2, v3), (v3, v4),
(v3, v5), (v4, v6), (v6, v5)}
Fonte: Elaborado pelo autor
Nós → V = {v1, v2, v3, v4, v5, v6}
Arestas → A = {a1, a2, a3, a4, a5, a6,
a7}
39
Grafos podem ser direcionados ou não, dependendo do interesse
na orientação das ligações.
2.2.1 Grafos Orientados e Não-Orientados
Um grafo é dito orientado quando o sentido das ligações entre os
vértices é importante (CARVALHO, 2005). Nesse caso, as relações
representadas pelas arestas, têm sentido definido. No grafo não
orientado, as relações representadas pelas arestas não têm sentido
definido, ou seja, as arestas podem ser seguidas em qualquer direção,
como mostram os exemplos apresentados na figura 3.
Figura 3 - Grafo orientado e não orientado
Fonte: Elaborada pelo autor
2.2.2 Grafos Conexos e Desconexos
Quanto a conectividade, um grafo, chamado de conexo, permite
que todos os seus nós e arestas sejam acessados entre si. Quando há um,
ou mais nós sem acesso, o grafo é chamado de desconexo. A figura 4
exemplifica este conceito.
40
Figura 4 - Grafo desconexo e conexo
Fonte: Elaborado pelo autor
2.2.3 Árvore
Conforme Szwarcfiter (1984), árvore é um grafo conexo sem
ciclos, podendo ser designado um nó para ser a raiz de uma árvore,
demonstrando uma relação lógica entre os nós. Como na maioria dos
casos práticos, para modelar uma árvore, utiliza-se dos conceitos de
grafos para representá-la. Esta estrutura, em particular tem interesse
neste trabalho, visto que a topologia dos condutores se caracteriza como
árvores construídas sobre o grafo de eletrodutos.
2.2.4 Representação de Grafos
Duas representações matriciais são usuais para caracterização da
estrutura de um arco: a matriz de adjacência e a matriz de incidência.
2.2.4.1 Matriz de Adjacência
A matriz de adjacência é uma das formas mais utilizadas para
representar grafos. Seja |V | = n, o número de nós de grafo G = (V, A).
Então, a matriz de adjacência é uma matriz quadrada n × n, denotada
por A = [aij] onde:
𝑎𝑖𝑗 = {1, 𝑠𝑒 𝑣𝑗 ∈ 𝑉 é 𝑠𝑢𝑐𝑒𝑠𝑠𝑜𝑟 𝑑𝑜 𝑣é𝑟𝑡𝑖𝑐𝑒 𝑣𝑖 ∈ 𝑉
0, 𝑒𝑚 𝑐𝑎𝑠𝑜 𝑐𝑜𝑛𝑡𝑟á𝑟𝑖𝑜
A figura 5 demonstra o conceito da matriz adjacência de um
grafo.
41
Fonte: Elaborado pelo autor
2.2.4.2 Matriz de Incidência
Segundo Carvalho (2005), a matriz de incidência de um grafo G
= (V, A), com V = {v1, v2, v3, v4,..., vn} e A = {a1, a2, a3, a4,..., am}, é uma
matriz n × m, denotada por B = [bij], com elementos definidos por:
𝑏𝑖𝑗 = {
+1 𝑠𝑒 𝑣𝑖 ∈ 𝑉 é 𝑣é𝑟𝑡𝑖𝑐𝑒 𝑖𝑛𝑖𝑐𝑖𝑎𝑙 𝑑𝑜 𝑎𝑟𝑐𝑜 𝑎𝑗
−1 𝑠𝑒 𝑣𝑖 ∈ 𝑉 é 𝑣é𝑟𝑡𝑖𝑐𝑒 𝑓𝑖𝑛𝑎𝑙 𝑑𝑜 𝑎𝑟𝑐𝑜 𝑎𝑗
0 𝑒𝑚 𝑐𝑎𝑠𝑜 𝑐𝑜𝑛𝑡𝑟á𝑟𝑖𝑜
A figura 6 mostra um exemplo de grafo com sua respectiva matriz de
incidência.
Figura 5 - Grafo com matriz adjacência
Figura 6 - Grafo com matriz de incidência
Fonte: Elaborado pelo autor
42
2.2.5 Algoritmos para Grafos
Conforme Rabuske (1992), a teoria dos grafos possibilita
ferramentas acessíveis e com capacidade de construir modelos
matemáticos para resolução de diversos problemas práticos, por meio de
algoritmos específicos. São exemplos deste tipo de problema:
Problema de caminhos mínimos
Problema de geração de árvores mínimas
Problema de fluxo em redes
Problemas de localização de instalações, etc
A seguir são apresentados alguns algoritmos mais conhecidos na
literatura para problemas clássicos de grafos, que apresentam interesse
neste trabalho.
2.2.5.1 Problema do caminho mínimo
Em teoria dos grafos o problema do caminho mínimo (SP, do
inglês Shortest Path), é o nome dado para encontrar uma ligação entre
dois nós de interesse de um grafo, querendo que seu custo seja o
mínimo. Basicamente, é obter o caminho de menor custo entre dois nós
v1 e v2. O SP se adapta a diversas situações práticas, e podem ser
aplicadas a quaisquer problemas envolvendo grafos em que possuam
grandezas associadas aos arcos, como distância, tempo, perdas e ganhos,
se acumulam linearmente durante o percurso do grafo.
Existem três tipos de problemas de caminho mínimo, segundo
(BARRICO, 1998):
a) Problema do caminho mínimo de origem única:
deve-se encontrar os caminhos mais curtos a partir de
um nó desejado para todos os outros nós-destinos;
b) Problema do caminho mínimo com destino único: no
qual deve-se encontrar o caminho mais curtos entre
todos os nós de grafo em relação a um único nó-
destino;
c) Problema de caminho mais curto de todos os pares:
deve-se encontrar os caminhos mais curtos entre cada
par de nós do grafo.
43
Na literatura existe muitos algoritmos eficientes para determinar
o problema de caminho mais curto, entre os quais destacam-se Dijkstra,
Bellmann-Ford, Johnson, A* e Floyd. O mais “famoso” entre eles é o
Dijkstra, algoritmo guloso para resolver o problema do caminho mais
curto de fonte única em um grafo com arestas não negativa.
O algoritmo de Dijkstra foi apresentado pelo cientista da
computação Edsger Dijkstra em 1956, mas com sua publicação em
1959. É um algoritmo que percorre todos os nós de um grafo, com o
objetivo de conhecer à distância do nó fonte a todos os outros nós do
grafo. Ao final da execução, ele uma árvore de caminhos mais curtos de
um nó origem u para todos os nós alcançáveis a partir de u (ZIVIANI,
2013).
O algoritmo de Dijkstra foi desenvolvido para determinar o
menor caminho entre um nó de origem e para outro de destino, ou de um
nó de origem para todos os demais. Para determinar o caminho mais
curto entre todos nós do grafo, tem-se o algoritmo de Floyd, no qual
basicamente, recebe como entrada uma matriz de adjacência,
representando um grafo conexo, com pesos em suas arestas, e tendo
como saída a matriz de custos mínimos entre todos os nós deste grafo. O
quadro 1 (CHRISTOFIDES, 1975) mostra o pseudocódigo do algoritmo
de Floyd.
Seja C = [𝑐𝑖𝑗] a matriz de custos associadas a um grafo G(X, A),
inicialmente formada por:
𝑐𝑖𝑗 = {
0, 𝑝𝑎𝑟𝑎 𝑡𝑜𝑑𝑜 𝑝𝑎𝑟 (𝑥𝑖 , 𝑥𝑖) ∈ 𝐴
∞, 𝑝𝑎𝑟𝑎 𝑡𝑜𝑑𝑜 𝑝𝑎𝑟 (𝑥𝑖 , 𝑥𝑗) 𝐴
𝐶(𝑥𝑖 , 𝑥𝑗), 𝑝𝑎𝑟𝑎 𝑡𝑜𝑑𝑜 𝑝𝑎𝑟 (𝑥𝑖 , 𝑥𝑗) ∈ 𝐴
44
P1: Faça k = 0
P2: k = k+1
P3: Para todo i ≠ k, tal que, 𝑐𝑖𝑘 ≠ ∞ e todo j ≠ k, tal que,
𝑐𝑘𝑗 ≠ ∞ calcule: 𝑐𝑖𝑗 = min[𝑐𝑖𝑗 , (𝑐𝑖𝑘 + 𝑐𝑘𝑗)].
P4:
a) Se k = n pare. A solução ótima foi alcançada e [𝑐𝑖𝑗] fornece os custos mínimos para cada par de nós.
b) Se k < n, volte à P2.
O algoritmo de Floyd, de acordo com Usberti (2007), apresenta
uma matriz como resultado com o valor dos mínimos custos, ou as
mínimas distâncias entre dois vértices quaisquer. Mas para obter os
caminhos nos quais esses custos foram obtidos, é necessário a aplicação
do algoritmo matricial revisado (AMR). O AMR consiste em uma
técnica aperfeiçoada por T.C. Hu em 1969, onde é proposto o
armazenamento de uma segunda matriz .
Suponha um grafo G = (X, A) com custos 𝑐(𝑥𝑖 , 𝑥𝑗) quaisquer,
associados as arestas (𝑥𝑖 , 𝑥𝑗) ∈ 𝐴. Deseja-se encontrar caminhos de
mínimo custo em G, associados a todos os pares de nós. Assume-se,
como dado de entrada, uma matriz de custos 𝐶 = [𝑐𝑖𝑗], tal que:
𝑐𝑖𝑗 = {
0, 𝑠𝑒 𝑥𝑖 = 𝑥𝑗
+∞, 𝑠𝑒 (𝑥𝑖 , 𝑥𝑗) 𝐴
𝑐(𝑥𝑖 , 𝑥𝑗), 𝑠𝑒 (𝑥𝑖 , 𝑥𝑗) ∈ 𝐴
e uma matriz de roteiros, = [𝑖𝑗], onde 𝑖𝑗 é o predecessor imediato de
𝑥𝑗 no caminho mínimo de 𝑥𝑖 para 𝑥𝑗. Inicializa-se a matriz = [𝑖𝑗],
fazendo-se 𝑖𝑗 = 𝑥𝑖 ,𝑖, 𝑗. O quadro 2 apresenta o pseudocódigo do
algoritmo de Floyd com a melhoria proposta por Hu.
Fonte: Christofides, 1975
Quadro 1 - Pseudocódigo do Algoritmo de Floyd
45
2.2.5.2 Árvore Geradora Mínima
O problema da árvore geradora mínima (MST- minimal spanning
tree) é um problema sobre grafos não dirigidos com custos nas arestas.
Segue um exemplo desenvolvido por Usberti (2007). Seja um
grafo não dirigido G = (V, E), com custo w(e) ∈ R relacionado a cada
aresta e ∈ E (w(e) = ∞, para e E). Com isso a árvore geradora mínima
𝑐𝑖𝑗 = 𝑚𝑖𝑛[𝑐𝑖𝑗 , β]
𝑥𝑖 = 𝑖𝑣
𝑥𝑣 ⋮
𝑥 = 𝑖
𝑥 = 𝑖
𝑥 = 𝑖𝑗
𝑥𝑗
P1. Faça k = 0.
P2. Faça k = k+1.
P3. Para todo i ≠ k tal que 𝑐𝑖𝑘 ≠ ∞, e todo j ≠ k tal que 𝑐𝑘𝑗 ≠ ∞
realize a operação:
β= 𝑐𝑖𝑘 + 𝑐𝑘𝑗
Se 𝑐𝑖𝑗 = β faça 𝑖𝑗 = 𝑘𝑗
P4. Verifique a condição de término:
i. Se existe 𝑐𝑖𝑖 < 0, então um circuito de custo negativo
contendo o nó 𝑥𝑖 existe em G, e nenhuma solução é possível.
Pare.
ii. Se todos os 𝑐𝑖𝑖 ≥ 0 e k = n, então a solução foi obtida, onde
𝐶 = [𝑐𝑖𝑗] e = [𝑖𝑗] são, respectivamente, a matriz de custos
mínimos e a matriz de roteiros entre todos os pares de nós.
Pare.
iii. Se todos os 𝑐𝑖𝑖 ≥ 0 e k < n, retorne a P2 e continue.
Obs.: Para recompor o caminho mínimo entre dois nós quaisquer, denotados por
𝑥𝑖 , 𝑥𝑗 𝑋, utiliza-se os ponteiros da matriz = [𝑖𝑗], como segue:
Quadro 2 - Pseudocódigo do Algoritmo de Floyd & Hu
46
de G consiste em uma árvore T(V,𝐸𝑇) G, tal que a soma dos custos de
suas arestas seja mínima. Pode ser observado na figura 7, uma rede com
custos associados às arestas, onde se observa no grafo a esquerda, uma
árvore não mínima de custo 53, e a direita uma árvore geradora mínima,
com custo 38.
Existem diversos algoritmos para resolver o problema da árvore
geradora mínima. Neste trabalho será comentado, e posteriormente
utilizado, o Algoritmo de Prim.
O algoritmo de Prim foi publicado por Robert C. Prim em 1957 e
redescoberto por E. W. Dijkstra em 1959 (FEOFILOFF, 2017). É
aplicado para encontrar uma árvore geradora mínima num grafo conexo,
não direcionado e com custos associados a suas arestas. Ou seja, o
algoritmo de Prim encontra um grafo parcial do grafo original, onde
todos os nós, estão interligados e a soma total das arestas utilizadas
nesta árvore é minimizada.
Considere o grafo G = (V, A) conexo e não direcionado, com
custos c (𝑣𝑖 , 𝑣𝑗) associados as arestas (𝑣𝑖 , 𝑣𝑗) ∈ 𝐴. Considere, ainda,
associado a cada nó 𝑣 ∈ 𝑉 um rótulo [𝛼𝑗, 𝛽𝑗], tal que 𝛽𝑗 é o custo de
inclusão do nó 𝑣𝑗, e 𝛼𝑗 é o nó da árvore com o qual 𝑣𝑗 deve se conectar
ao ser incluído na árvore. O procedimento do algoritmo de Prim é
mostrado no quadro 3, em quatro passos adaptado de (PRIM, 1957):
Fonte: Uberti (2007)
Figura 7 - Árvores: geradora (a) geradora mínima (b)
(a) (b)
47
Quadro 3 - Pseudocódigo do algoritmo de Prim
Fonte: Prim
Um exemplo da execução do algoritmo de Prim é observado na
figura 8, onde deseja-se encontrar a interligação entre todos os nós
presentes no grafo com o menor custo associado as arestas. O método do
Algoritmo de Prim retorna uma árvore geradora mínima representada
através de um grafo não-direcionado. Portanto, o valor retornado é uma
árvore (grafo).
P1. Faça 𝑇𝑠 = {𝑣𝑠}, onde 𝑣𝑠 é um nó arbitrário qualquer, e 𝐴𝑠 = ∅. 𝑇𝑠 𝑒 𝐴𝑠
são, respectivamente, o conjunto de nós e arestas da árvore em formação.
P2. Para todo 𝑣𝑗 𝑇𝑠 encontre o nó 𝛼𝑗 ∈ 𝑇𝑠, tal que: 𝛽𝑗 = c(𝛼𝑗 𝑣𝑗) =
𝑚𝑖𝑛𝑣𝑖 ∈ 𝑇𝑠[𝑐(𝑣𝑖 , 𝑣𝑗)], e defina o rótulo de 𝑣𝑗 como [𝛼𝑗, 𝛽𝑗]. Se não for
possível encontrar 𝛼𝑗, isto é, se (𝑣𝑗) ∩ 𝑇𝑠 = ∅, defina o rótulo de 𝑣𝑗 como
[𝑛𝑖𝑙, +∞].
P3. Escolha o nó 𝑣𝑗∗, tal que: 𝛽𝑗∗ = 𝑚𝑖𝑛𝑣𝑗 𝑇𝑠[𝛽𝑗]. Atualize 𝑇𝑠 = 𝑇𝑠 ∪
{𝑣𝑗∗} e faça 𝐴𝑠 = 𝐴𝑠 ∪ {(𝛼𝑗∗,𝑣𝑗∗)}. Se |𝑇𝑠| = 𝑛, pare (as ligações formadas
em𝐴𝑠, formam a árvore desejada). Se |𝑇𝑠| < 𝑛, vá ao P4.
P4. Para todo 𝑣𝑗 𝑇𝑠 e 𝑣𝑗 ∈ (𝑣𝑗∗), tal que 𝛽𝑗 > 𝑐(𝑣𝑗∗, 𝑣𝑗), atualize o
rótulo de 𝑣𝑗 fazendo: 𝛽𝑗 = 𝑐(𝑣𝑗∗, 𝑣𝑗) e 𝛼𝑗 = 𝑣𝑗∗. Volte ao P3.
Fonte: Ziviani (2013)
Figura 8 - Busca de uma árvore geradora mínima
48
2.3 ALGORITMO GENÉTICO
Algoritmo Genético (AG) é um mecanismo de busca
probabilística oriunda da Computação Evolutiva, área de pesquisa da
Inteligência Artificial (IA), que utiliza processos evolutivos como
modelo para solução de problemas. Tem como inspiração os conceitos,
da teoria da seleção natural das espécies e na genética, estabelecidos por
Charles Darwin. Linden (2012) define Algoritmos Evolucionários
como:
Algoritmos evolucionários usam modelos
computacionais dos processos naturais de
evolução como uma ferramenta para resolver
problemas. Apesar de haver uma grande variedade
de modelos computacionais propostos, todos eles
têm em comum o conceito de simulação da
evolução das espécies através de seleção, mutação
e reprodução, processos estes que dependem do
“desempenho” dos indivíduos desta espécie
dentro do “ambiente”.
A computação evolutiva tem como base três algoritmos, que
foram desenvolvidos de forma independente. Segundo Von Zuben
(2000) são eles:
Algoritmos Genéticos: Holland (1962), Bremermann
(1962) e Fraser (1957);
Programação Evolutiva: Fogel (1962);
Estratégias Evolutivas: Rechenberg (1965) e Schwefel.
O AG foi desenvolvido por John Holland em 1962, mas teve seu
reconhecimento em 1975 com a publicação do livro Adaptation in Natural and Artificial Systems. O objetivo de Holland foi formalizar
matematicamente e explicar os processos da evolução por seleção
natural, através de sistemas computacionais. Os AGs utilizam uma
terminologia e conceitos com origem na teoria da evolução natural e da
genética.
2.3.1 Terminologia
49
Como AGs tem sua inspiração na genética e na teoria da
evolução das espécies, há uma analogia muito forte entre os termos da
biologia e os termos utilizados em AG (LINDEN, 2012). No quadro 4, é
apresentado, de forma resumida, as terminologias análogas entre
biologia e AG.
Quadro 4 - Terminologias AG
Termos da Biologia Algoritmo Genético
Cromossomo
Estrutura de Dados; é uma cadeia de caracteres
representando alguma informação relativa às
variáveis do problema
Gene
Elemento ocupando uma dada posição da
estrutura de dados; é a unidade básica do
cromossomo. Cada cromossomo tem um certo
número de genes, cada um descrevendo uma
certa variável do problema
Locus Posição ocupada por um gene numa estrutura de
dados
Alelo Variações de um elemento que pode ocupar um
Locus
Crossover
Troca de partes entre estruturas de dados; O
operador crossover realiza a troca de informação
entre diferentes soluções candidatas
Mutação
Substituição de um ou mais genes; a mutação
promove a variabilidade do material genético, e
serve como um mecanismo para diversificar o
espaço de busca, evitando uma prematura
convergência do algoritmo
Fitness (Aptidão) Valor que indica a qualidade de um indivíduo
como solução do problema
Seleção
Processo que permite a sobrevivência e
reprodução de indivíduos; Tem como objetivo,
fazer com que o material genético de boa
qualidade aumente de geração a geração
Genótipo Codificação de uma Solução Candidata; é a
estrutura do cromossomo
Fenótipo
Valor decodificado do Cromossomo;
corresponde à iteração do conteúdo genético com
o ambiente
Indivíduo
Representa um cromossomo que contém a
codificação (genótipo) de uma possível solução
(fenótipo)
População É a representação do conjunto atual de
indivíduos encontrados em uma determinada
50
interação do algoritmo
2.3.2 População Inicial
A população inicial é o ponto de partida de um AG. Na maioria
dos trabalhos feitos nessa área, é feita da forma mais simples possível,
fazendo-se uma escolha com geração aleatória para cada cromossomo
da população inicial, embora existam ocasiões onde é mais apropriada
uma seleção heurística da mesma, introduzindo logo de início, um ou
mais indivíduos “interessantes” (CASTRO, 2018).
Com isso, a forma de representação cromossomial é fundamental
para o algoritmo genético. Essencialmente é a tradução da informação
do problema em uma forma viável de ser tratada pelo computador.
Linden (2012), salienta que a representação cromossomial é
completamente aleatória, onde a definição é feita de acordo com o gosto
do programador, referente a adequação do problema a ser tratado. Mas
que algumas regras gerais devem ser seguidas:
a. A representação deve ser a mais simples possível;
b. Se houver soluções proibidas ao problema, então é
preferível que elas não tenham uma representação;
c. Se o problema impuser condições de algum tipo, estas
devem estar implícitas dentro da nossa representação.
A representação ou codificação das variáveis de projeto a serem
otimizadas proporciona um grande impacto no desempenho de busca,
devendo ser o mais simples possível sem perder, no entanto, as
características de representação do problema tratado. Michalewicz
(1996) menciona que existem inúmeras formas de representação das
variáveis. As mais usuais são: binária, números inteiros e ponto
flutuante.
i. Representação Binária: é a representação clássica,
oriunda da teoria dos esquemas de John Henry Holland,
publicado em 1992, utilizada com sucesso para explicar
por que os AGs funcionam;
ii. Representação por Ponto Flutuante: é a representação
que apresenta maior precisão e capacidade de
interpretação de domínios de um problema. É utilizada
51
especialmente em problemas com parâmetros reais. A
utilização desta representação melhora a velocidade do
processamento, a consistência dos resultados entre
gerações e a precisão, se comparada à binária, conforme
(MICHALEWICZ, 1996);
iii. Representação por inteiros: essa representação é muito
adequada para os problemas que envolvam números
inteiros, tais como análise combinatória, arranjo e
permutação (SOARES, 1997).
A codificação binária é mais utilizada nos trabalhos
desenvolvidos atualmente, onde cada cromossomo representa um vetor
composto por zeros e uns. A definição da codificação deve ser realizada
de forma adequada ao problema em questão, pois uma definição
equivocada da codificação pode levar o AG a ter convergência de forma
prematura.
Com o propósito de representar de forma simples, genérica e
viável o tratamento de dados pelo computador, o cromossomo G é
representado por um vetor com n posições, tal que:
𝐺 = (𝑔1, 𝑔2, 𝑔3, … , 𝑔𝑛)
(3)
Cada elemento 𝑔𝑖 representa um gene. Desta maneira o
cromossomo se resume ao conjunto de genes que possui, ou seja, seu
genótipo. Mas, Lucas (2002) diz que a avaliação de um cromossomo se
baseia em seu fenótipo, que é o valor decodificado do cromossomo. A
tabela 2, apresenta o resultado do processo de decodificação de genes
que será submetido a avaliação, assim como a indicação de
representação para os tipos de problemas a serem otimizados.
Tabela 2 - Exemplos de decodificação
Genótipo Fenótipo Problema
0010101001110101 10869 otimização numérica
CABDEF comece pela cidade C,
depois passe pelas
cidades A, B, D, E e
termine na cidade F
caixeiro viajante
C1R2C3R4C5R1 se condição 1 (C1)
execute a regra 2 (R2),
se (C3) execute a regra
regras de aprendizagem
para agentes
52
(R4), se (C5) execute a
regra (R1)
2.3.3 Avaliação
Para avaliar a qualidade de cada indivíduo na população, o AG
utiliza uma função de avaliação denominada de função de aptidão ou
fitness. A aptidão avalia o desempenho de um cromossomo, através de
uma classificação associada, do quão apto está o cromossomo para a
próxima geração. Conforme Castro (2018), a escolha da função de
aptidão é, para a maioria das aplicações, a etapa crítica do processo, já
que ela deverá ser avaliada para cada cromossomo de cada população
dentro do AG.
De forma análoga, Linden (2012) reforça que a função de
avaliação deve ser escolhida com grande cuidado. Pois ela tem que
carregar toda a informação que se possui sobre o problema a ser
resolvido, tanto quanto as restrições como os objetivos. Em conclusão,
dado um cromossomo, a função de aptidão consiste em associar um
valor numérico de “adaptação”, o qual supõe-se a “habilidade” do
“individuo” representado em solucionar o problema em questão.
2.3.4 Seleção dos Cromossomos
A seleção consiste em escolher os indivíduos (cromossomos) da
população que irão se reproduzir (cromossomos-pais) (RODRIGUES et
al., 2004). O mecanismo de seleção é o responsável por passar as boas
características dos cromossomos para as futuras gerações. Desta forma o
processo de seleção não é realizado de forma aleatória, para que os
indivíduos com melhor aptidão adquiriram maior chance de sobreviver e
reproduzir na população em que estão inseridos.
Michalewicz (1996) destaca os seguintes métodos, conhecidos,
para seleção de indivíduos:
i. Seleção por ranking: os indivíduos da população são
ordenados de acordo com seu grau de adaptação, então
recebem uma probabilidade de escolha conforme a
posição que ocupam. Uma variação deste mecanismo é
simplesmente passar os N melhores indivíduos para a
próxima geração;
53
ii. Seleção por torneio: dois indivíduos são escolhidos
aleatoriamente. Então, um número aleatório i é gerado
entre 0 e 1. Se i < k (parâmetro), o melhor entre os dois
indivíduos é selecionado, caso contrário, o pior é
selecionado;
iii. Seleção bi-classista: são selecionados os melhores
indivíduos da população, dentro de um percentual
determinado, e também os (100 - percentual fixo) piores
indivíduos;
iv. Seleção Steady-State: apenas alguns dos piores
indivíduos da população são removidos, os demais são
mantidos para reproduzirem-se.
2.3.5 Operadores Genéticos
Castro (2018) descreve o princípio básico dos operadores
genéticos como a transformação da população através de sucessivas
gerações, para obter um resultado satisfatório no final do processo.
Portanto, os operadores genéticos podem ser definidos como, um
mecanismo que assegura a evolução dos indivíduos, criando, a partir de
uma população inicial 𝑃0, novas populações 𝑃𝑡 de indivíduos mais
aptos.
Conforme Linden (2012), os operadores genéticos mais usuais
em algoritmos genéticos são o operador crossover e o operador de
mutação, discutidos nas sucessões a seguir.
2.3.5.1 Operador Crossover
É um operador baseado na troca de partes dos cromossomos
(pais), formando-se duas novas soluções (filhos). A ideia intuitiva por
trás do operador crossover é a troca de informação entre diferentes
soluções apresentadas como candidata. Na literatura são encontradas
muitas formas de empregar os operadores de crossover. Castro (2018),
por exemplo, diz que os mais empregados são:
a. Um ponto: um ponto de cruzamento é escolhido e a
partir dele as informações genéticas dos pais são
trocadas;
54
b. Multi-Pontos: é uma generalização da ideia de troca de
material genético, onde muitos pontos de cruzamento
podem ser utilizados;
c. Uniforme: não utiliza pontos de cruzamento, mas
determina através de um parâmetro global, probabilidade
de máscara, qual a probabilidade de cada variável ser
herdada de cada pai.
2.3.5.2 Mutação
Após a ocorrência do crossover, alguns indivíduos da população
podem sofrer mutações de acordo com uma probabilidade, pré-
estabelecida e de valor muito baixo (menores que 1%), denominada de
taxa de mutação 𝜌𝑚, com o propósito de inserir novo material genético
na população que está sendo formada.
Considerando uma codificação binária, o operador de mutação,
apenas realiza a troca do valor de um gene em um cromossomo
(Goldberg, 1989), desta forma, se um alelo de um gene possuir valor 1,
o seu novo valor será 0, após o operador de mutação.
Franco (2015), expressa de forma clara o impacto dos operadores
de crossover e mutação e suas distinções:
Os operadores genéticos de cruzamento e mutação
são responsáveis por todas transformações
sofridas pela população, no entanto, eles têm
impactos muito distintos. Por exemplo, o operador
cruzamento tem como objetivo propagar os
esquemas mais adequados na população, assim a
determinação do número de pontos de corte afeta
diretamente quais esquemas irão sobreviver ao
processo de reprodução. Por outro lado, o
operador mutação garante a diversidade genética,
aumentado a probabilidade de que o espaço de
busca será explorado em uma parte significativa
de sua extensão.
55
2.3.6 Escolha dos Parâmetros do AG
Conforme Rodrigues et al. (2008), possuem duas categorias de
parâmetros para AG:
A. Qualitativos: a. Parâmetros do tipo crossover:
i. Um ponto de corte;
ii. Dois pontos de corte;
iii. Uniforme.
b. Parâmetros do tipo de métodos de Seleção:
i. Proporcional;
ii. Escalonamento;
iii. Boltzmann;
iv. Ranqueamento;
v. Torneio.
B. Quantitativos: a. Tamanho da População (n);
b. Taxa de Crossover (𝜌𝑐);
c. Taxa de Mutação (𝜌𝑚).
56
3 ABORDAGEM DO ALGORITMO GENÉTICO PARA O
PROBLEMA PROPOSTO
O algoritmo genético proposto, tem como objetivo buscar uma
solução para o projeto elétrico, que apresente as melhores alocações da
malha de linhas elétricas, uma vez que se pretende reduzir os custos
associados a instalação elétrica.
O primeiro passo para o desenvolvimento do AG é a codificação
do problema. Logo a estrutura de um cromossomo, será associada para
representar uma possível solução. Em decorrência, é produzido uma
população inicial, onde aplica-se o processo de seleção para escolher os
cromossomos mais aptos que através de operadores genéticos são
recombinados para gerar novos cromossomos. Esse processo de seleção
dos cromossomos mais aptos se dá por sorteio, até que seja atendido um
critério de parada definido.
3.1 CODIFICAÇÃO DO CROMOSSOMO
A representação cromossomial é fundamental para o
desenvolvimento do AG proposto, pois consiste em uma maneira de
traduzir as informações do problema em um modo viável de ser tratada
pelo computador (LINDEN, 2012). Portanto foi estabelecido um
cromossomo que descreve uma possível situação de eletrodutos
disponibilizado no projeto elétrico. Basicamente a informação a ser
registrada no cromossomo, são quais eletrodutos existem (e quais não)
numa dada solução.
Para representar cada topologia possível dos eletrodutos no
projeto elétrico, a estrutura de cromossomos adotada para o AG, foi
através de uma string1 de 1s e 0s que definem quais eletrodutos estão
habilitados ou não, respectivamente. A estrutura da definição da malha
de dutos utilizando uma string está representada na figura 9. Nesta
representação do problema em questão, o cromossomo é composto por
386 possibilidades de ligações entre pontos elétricos.
1 Salvetti (1998) define que string é uma cadeia de caracteres e que ela é uma sequência de letras,
algarismos ou símbolos. Cada caractere é uma informação e uma cadeia de caracteres é um conjunto de
informações. Portanto, uma cadeia de caracteres é um vetor em que cada elemento é um caractere.
57
Figura 9 - Representação do cromossomo em string
D001 D002 D003 D004 D005 ... D382 D383 D384 D385 D386
0 1 1 0 0 ... 1 0 1 1 1
3.2 População Inicial
A População inicial, que define o espaço de busca do algoritmo,
consiste em indivíduos gerados aleatoriamente (cada gene recebe um
alelo “1” ou “0” resultante de um sorteio) e que passarão por uma
avaliação e seleção dos mais aptos. Os indivíduos são gerados
automaticamente pelo algoritmo genético até atingir o número
estabelecido para a população inicial.
3.3 Operadores Genéticos
3.3.1 Seleção
A seleção tem o objetivo de oferecer aos melhores indivíduos da
população, preferência para o processo de reprodução. O operador de
seleção é aplicado sobre a população corrente, N vezes com o objetivo
de escolher N pares de indivíduos.
Foi adotado o método de seleção por roleta, fazendo apenas uma
adaptação no modo de escolha dos indivíduos: em vez de utilizar o valor
do fitness para selecionar o indivíduo, utilizou-se um valor de
probabilidade baseado na posição que o indivíduo ocupa na população.
Com esse método de seleção, o indivíduo melhor classificado, tem
maior probabilidade de ser selecionado. A tabela 3, demonstra estas
probabilidades.
Tabela 3 - Método de seleção
Indivíduos Probabilidade
1 N/∑ Melhor
2 ((N-1)) /∑
3 ((N-2)) /∑
4 ((N-3)) /∑
... ...
N 1/∑ Pior
58
∑ = (𝑁+1)𝑁
2 N → nº de indivíduos
3.3.2 Operador Crossover
O operador de crossover cria indivíduos através da recombinação
entre dois cromossomos selecionados, de maneira que exista uma
probabilidade razoável de os novos indivíduos serem melhores que seus
pais.
O operador crossover implementado no AG, foi do tipo
recombinação uniforme, onde se considera cada gene independente.
Para cada posição do gene será executada uma variável aleatória com
uma probabilidade = 0,5. Se o valor da variável aleatória for menor
que , o gene será obtido do cromossomo G1; caso contrário, será do
cromossomo G2.
O crossover uniforme, atua nos genes de forma individual nos
cromossomos G1 e G2, combinando características independentes da
sua posição relativa no cromossomo. A figura 10 mostra o
funcionamento do operador crossover uniforme, onde em (a) vê-se os
pais originais; em (b) tem-se o sorteio da string de combinação; e em
(c), o resultado. Note que o primeiro filho recebeu o gene do primeiro
pai em todas as posições em que foi sorteado “1” e o gene do segundo
pai em todas as posições em que foi sorteado um “0”. O segundo filho é
montado com o que sobrou da montagem do primeiro filho.
Figura 10 - Funcionamento crossover uniforme
Fonte: Linden (2012)
59
3.3.3 Operador de Mutação
O operador de mutação gera eventos probabilísticos que alteram
o valor de alguns genes do cromossomo através de uma taxa de mutação
𝑇𝑚 pré-determinada, com objetivo de criar uma variabilidade maior na
população.
O operador de mutação implementado, foi do tipo padrão, que
simplesmente troca o valor de um gene em um cromossomo com uma
taxa 𝑇𝑚 = 1%, podendo ser variada na interface da aplicação.
3.4 Avaliação do Fitness
Nos AGs, o processo de seleção atua de forma a escolher os
cromossomos que apresentam os melhores valores de fitness ou aptidão.
A avaliação de aptidão no problema proposto, está relacionada com os
trajetos mínimos de condutores elétricos para atender todos os pontos
estabelecidos.
Para esta avaliação, é desejado encontrar uma malha de
eletrodutos que minimize os custos relacionados a implantação das
linhas elétricas, a partir da elaboração do projeto elétrico. Para o
problema proposto, foi abordado dois tipos de conexões, realizadas
dentro de um projeto elétrico: (a) conexões de comandos que interligam
dois, ou mais, pontos elétricos, e (b)conexões de alimentação a partir do
quadro de distribuição.
As conexões de comandos, que fazem a interligação entre
interruptores e luminárias, são calculadas através do algoritmo de Floyd
& Hu, onde é calculada as distâncias mínimas entre todos os pontos
elétricos do circuito, considerando apenas aqueles eletrodutos que estão
habilitados pela descrição do cromossomo.
Para os cálculos das conexões com o quadro de distribuição, referente a cada circuito, uma estrutura de árvore é gerada em cima da
estrutura de eletrodutos preestabelecidos. Essa árvore é calculada
através de uma adaptação do algoritmo de Prim, como será descrito no
capítulo 4.
60
Portanto, dentro da função de avaliação de fitness, os algoritmos
de Floyd & Hu e Prim, são chamados para determinar a quantificação
dos comprimentos dos condutores elétricos, ou seja, apresentam através
da representação do cromossomo uma estimativa de custos que
correspondem a estrutura de eletrodutos que foi lançada.
3.5 Critério de Parada do AG
Determinar um critério de parada em um AG é uma tarefa
considerada complexa. Conforme Linden (2012), um dos problemas
enfrentados na implementação de um AG, é determinar um critério de
parada que seja eficaz. Esse problema se deve a dificuldade desse
algoritmo em avaliar a qualidade da solução em um dado momento da
busca, pois pode fazer com que ele finalize a execução antes de
apresentar uma solução com pouca melhoria.
O AG proposto utiliza como critério de parada o erro relativo
entre o melhor e o pior fitness. Quando essa relação é menor que o valor
determinado de precisão de parada, o AG para a busca e apresenta a
solução encontrada. Ou seja, o critério de parada é utilizado quando não
há mais diversidade entre os indivíduos da população, não apresentando
mais evolução nas iterações.
61
4 IMPLEMENTAÇÃO DO ALGORITMO GENÉTICO
Com base na estrutura de eletrodutos definidas, existe um
conjunto de trajetos de eletrodutos que podem ser utilizados para
interligar os pontos elétricos existentes no projeto. Ou seja, pretende-se
alimentar os pontos elétricos de acordo com os circuitos
preestabelecidos pelo projetista, de modo a ter o menor custo possível
de fios e eletrodutos.
Para determinar os caminhos que os circuitos devem percorrer, é
necessário ter a informação de quais eletrodutos estão (ou não)
habilitados. Para isso foi construído um cromossomo, por meio de uma
string de 0s e 1s que descreve a situação dos eletrodutos existentes em
uma solução por onde os fios devem passar.
Com a rede de eletrodutos definida e as informações de
disponibilidade de trajetos, utiliza-se os algoritmos de Floyd & Hu e
Prim, para definir por onde os fios devem passar.
Para realizar a busca por uma boa solução, foi implementado o
algoritmo genético descrito no quadro 5.
P0. Ler dados do projeto;
P1. Gerar aleatoriamente N indivíduos (soluções de eletrodutos);
P2. Calcular o fitness de cada indivíduo gerado, incluindo-os na população;
P3. Repetir D vezes:
a) Selecionar aleatoriamente dois indivíduos, G1 e G2, da população;
b) Gerar um novo indivíduo G3 mediante o crossover dos indivíduos G1
e G2;
c) Submeter o indivíduo G3 à operação de mutação;
d) Calcular o fitness do indivíduo G3;
e) Incluir o indivíduo G3 na população;
P4. Ordenar os indivíduos da população por ordem crescente de fitness;
P5. Remover os D piores indivíduos da população;
Quadro 5 - Algoritmo genético implementado
62
P6. Se a população não satisfaz o critério de parada, voltar ao passo P2;
P7. Apresentar a melhor solução.
Um passo importante na implementação do AG, é o cálculo do
fitness dos indivíduos. Esta etapa está apresentada no quadro 6.
Quadro 6 - Cálculo do fitness
P0. Decodificar o cromossomo determinando a rede de eletrodutos a ser
utilizada (gene = 1 para eletroduto habilitado; gene = 0 para
eletroduto não habilitado).
P1. Aplicar o algoritmo de Floyd & Hu para calcular a matriz de
distâncias mínimas entre todos os pontos elétricos com os respectivos
roteiros;
P2. Aplicar o algoritmo de Prim modificado a fim de calcular a árvore
geradora mínima que cobre os pontos a serem protegidos por
TERRA. Incluir os arcos desta árvore na solução do projeto para fins
de cálculo do custo dos condutores.
P3. Para cada circuito faça:
a) Aplicar o algoritmo de Prim modificado para calcular a árvore
geradora mínima que cobre os pontos a serem alimentados com
a FASE do circuito. Incluir os arcos desta árvore na solução do
projeto para fins de cálculo do custo dos condutores.
b) Aplicar o algoritmo de Prim modificado para calcular a árvore
geradora mínima que cobre os pontos a serem alimentados com
o NEUTRO do circuito. Incluir os arcos desta árvore na solução
do projeto para fins de cálculo do custo dos condutores de
neutro.
c) Para cada ramal de retorno que conecta interruptores entre si
(comando paralelo) e interruptores com as luminárias,
determinar o caminho de mínima distância, incluindo os arcos
destes caminhos na solução do projeto para fins de cálculo do
custo dos condutores de retorno.
P4. Considerando os condutores alocados em cada duto, determinado em
P3 e P2, calcular o custo total dos condutores.
P5. Considerando os condutores calculados em P3 e P2 dimensionar os
eletrodutos e calcular o respectivo custo.
63
P6. Retornar o custo total dado pela soma do custo dos eletrodutos,
obtido em P5, com o custo dos condutores, obtido em P4.
No algoritmo do quadro 6, onde se apresenta o cálculo do fitness,
a construção da árvore geradora mínima é feita através de um algoritmo
de Prim modificado, onde todos os pontos elétricos a serem atendidos
(com fase, neutro e/ou terra) são incluídos em um conjunto de nós, 𝑉𝐸 .
Considerando que apenas estes nós precisarão ser cobertos pela árvore
geradora mínima, o algoritmo de Prim sofre uma modificação de modo
a eliminar da árvore pontos desnecessários, conforme apresentado no
quadro 7.
64
Quadro 7 - Algoritmo de Prim modificado
P1. Faça 𝑇𝑠 = { 𝑣𝑠 }, onde 𝑣𝑠 corresponde ao nó que representa o quadro de
distribuição, e 𝐴𝑠 = ∅. 𝑇𝑠 e 𝐴𝑠 são respectivamente, o conjunto de nós e o
conjunto de arestas da árvore em formação, que definem os condutores
implantados no circuito (fase, neutro ou terra). Seja, ainda, 𝑉𝐸 o conjunto
de nós a serem cobertos por estes condutores;
P2. Para todo 𝑣𝑗 𝑇𝑠 e 𝑣𝑗 ∈ 𝑉𝐸 associe um rótulo [𝛼𝑠 , 𝛽𝑠], onde 𝛼𝑗 = 𝑣𝑠
corresponde ao nó que representa o quadro de distribuição e 𝛽𝑗 =
𝑐(𝑣𝑠 , 𝑣𝑗) é o custo do caminho mínimo obtido pela aplicação do
Algoritmo de Floyd & Hu no grafo de eletrodutos habilitados para uma
dada solução;
P3. Escolha o nó 𝑣𝑗∗ tal que 𝛽𝑗∗ = 𝑚𝑖𝑛𝑣𝑗 ∈ 𝑇𝑠 ⋀ 𝑣𝑗 ∈ 𝑉𝐸[𝛽𝑗]. Sendo
(𝛼𝑗∗, 𝑣1, 𝑣2, … , 𝑣𝑘 , 𝑣𝑗∗) o caminho mínimo que conecta o nó 𝛼𝑗∗ ao nó
𝑣𝑗∗, atualize 𝑇𝑠 = 𝑇𝑠 ∪ {𝑣1, 𝑣2, … , 𝑣𝑘, 𝑣𝑗∗}, e faça
𝐴𝑠 = 𝐴𝑠 ∪ {(𝛼𝑗∗, 𝑣1), (𝑣1, 𝑣2), … , (𝑣𝑘, 𝑣𝑗∗)};
P4. Para todo 𝑣𝑗 𝑇𝑠 e 𝑣𝑗 ∈ 𝑉𝐸 , calcule
𝛽∗ = min{ 𝑐(𝑣1 , 𝑣𝑗), 𝑐(𝑣2 , 𝑣𝑗), … , 𝑐(𝑣𝑘 , 𝑣𝑗), 𝑐(𝑣𝑗∗ , 𝑣𝑗)}. Se 𝛽∗ < 𝛽𝑗,
atualize o rótulo [𝛼𝑗 , 𝛽𝑗] fazendo 𝛽𝑗 = 𝛽∗ e atribuindo ao 𝛼𝑗 o nó
predecessor correspondente, isto é, 𝑣1, 𝑣2, … , 𝑣𝑘 𝑜𝑢 𝑣𝑗∗ , conforme o
valor de 𝛽∗ obtido;
P5. Se 𝑉𝐸 𝑇𝑠 , pare (as ligações formadas em 𝐴𝑠 correspondem ao
cabeamento estritamente necessário para atendimento dos pontos do
circuito). Em caso contrário, volte ao P3.
Como apresentado no quadro 7, a cada iteração o algoritmo de
Prim modificado, atualiza os nós na árvore, mas também rotula os nós
intermediários. Deste modo, os nós intermediários servem como pontos
alimentados para as iterações futuras.
Note também, que no caso da rede de eletrodutos, dada por um
cromossomo, não constituir uma solução viável para o problema, por conta da não conectividade do grafo, o próprio algoritmo de Floyd & Hu
se encarrega de penalizar a solução, retornando como custo do caminho
mínimo o valor infinito. Assim, ao calcular o fitness desta solução o
valor torna-se muito elevado fazendo com que o cromossomo seja
descartado pelo processo evolutivo.
65
66
5 SISTEMA COMPUTACIONAL E RESULTADOS
5.1 INTERFACE DO SISTEMA IMPLEMENTADO
Para implementar os algoritmos no ambiente computacional, foi
utilizado a linguagem de programação PASCAL, através do compilador
DELPHI 7.0. Os dados de entrada estão localizados no diretório
destinado ao sistema, onde o compilador identifica o caminho e realiza a
leitura dos dados.
A interface do sistema implementado, observada na figura 11,
mostra as principais funções da aplicação, como:
A. Setup da aplicação: Nessa área são definidos os
parâmetros de população inicial, o tamanho de iterações
a cada geração, a taxa de mutação aplicada, a precisão de
parada do AG e o botão que atualiza estes parâmetros
durante a busca;
B. Abas de resultados: (a) aba Evolução mostra o gráfico
contendo a evolução do processo de convergência, (b)
aba Projeto-Otimizado mostra os resultados otimizados
obtidos com a aplicação do GA, detalhando o projeto e
quantificando os materiais utilizados em cada trajeto e
(c) aba Projeto-Original, que apresenta o resultado do
projeto, a partir do conjunto de dutos selecionado pelo
projetista;
C. Resultados GA: nessa tela é apresentado, de forma
resumida, os custos totais dos projetos otimizados e
fornecidos, mostrando o valor da economia no estágio
atual da busca;
D. Gráfico de convergência do AG: esse gráfico apresenta
as curvas de melhores e piores resultados encontrados
em uma determinada geração, bem como o custo do
projeto de acordo com as escolhas do projetista.
Em resumo, essa tela mostra os resultados obtidos e o
acompanhamento da evolução do algoritmo, durante o processamento.
Os resultados são acompanhados em tempo real, por meio do gráfico de
convergência ou pela tela de resultados. A solução é apresentada de duas
formas diferentes: (a) a primeira é apresentada através das telas e abas
do aplicativo, logo após o processamento ser finalizado, e (b) a segunda
67
forma é apresentada através de arquivos externos gerados pela própria
aplicação, nas extensões csv.
A
B
C
D
Figura 11 - Tela da aplicação computacional
68
O aplicativo apresenta uma interface muito intuitiva de utilização,
como pode ser verificado na figura acima. Para realizar a busca pela
melhor solução, é necessário entrar apenas com o tamanho da
população, salientando que quanto maior for a tamanho da população
maior será o tempo de processamento dos resultados, e clicar no botão
Run. Finalizado o processo de busca, é apresentado os resultados do
projeto através da própria interface ou dos arquivos gerados
externamente.
5.2 DESCRIÇÃO DO PROBLEMA
Considera-se o Projeto Elétrico apresentado no Anexo B, de um
apartamento residencial com área útil de 54,41 m², que faz parte de um
edifício residencial composto por 60 apartamentos, localizado na região
continental de Florianópolis. A tabela 4 mostra o quantitativo dos
materiais referente as ligações dos eletrodutos e fios desse projeto,
obtidos para uma solução apontada pelo projetista.
Tabela 4 - Quantitativo projeto original
Quantitativo
Pontos elétricos 56 pontos
Ligações entre pontos 56 ligações
Comprimento total linear
Eletroduto 112 metros
Fios 515 metros
Custo Total: R$ 1408,80
O custo total de R$ 1408,80, foi obtido através da metodologia
apresentada pelo Sistema Nacional de Pesquisa de Custos e Índices da
Construção Civil referente ao mês Set/2018 (SINAPI), disponibilizada
pela Caixa Econômica Federal. Portanto, estão inclusos no custo os
valores de materiais, instalações e mão de obra. Diante do apresentado,
deseja-se interligar esses mesmos 56 pontos, alocados pelo projetista, de
forma otimizada e com redução de custos totais.
5.3 COLETA DE DADOS
69
A coleta de dados foi realizada a partir do projeto fornecido, em
arquivos editáveis em formato DWG2, por uma empresa localizada na
cidade de São José-SC, e que desenvolve projetos para algumas
construtoras da região da grande Florianópolis. Os dados necessários e a
forma de obtenção para alimentar o modelo computacional, estão
demonstrados na tabela 5.
Tabela 5 - Dados de entrada
Dados Forma de Obtenção de Dados
Coordenadas dos pontos elétricos Comando de extração de dados no
AutoCad
Distância entre pontos elétricos Comando de extração de dados no
AutoCad
Circuitos correspondentes para cada
ponto elétrico Disponível projeto elétrico
Características de dutos Disponível no Catálogo Tigre
Características dos condutores
elétricos Disponível no Catálogo SIL
Precificação de materiais e serviços
elétricos
Disponível na tabela SINAPI com
referência no ano 2018
a. Coordenadas dos pontos elétricos: localização
geométrica de cada ponto elétrico no projeto. Através do
comando dataextraction, no software AutoCad, é
extraído as coordenadas (x, y, z);
b. Distância entre pontos elétricos: definição dos
possíveis trajetos dos eletrodutos, essa etapa é realizada
em conjunto com os projetos arquitetônico,
hidrossanitário e estrutural. Assim identificando
possíveis caminhos inviáveis devido á alguma restrição,
como: pilares, vigas, aberturas de janelas/portas,
mobiliário e encanamentos. Os parâmetros: (a)Trajeto
informa se o trajeto foi realizado pelo teto, chão ou
parede, (b)Projeto, informa os caminhos utilizados no
projeto original, sendo 0 para trajeto não utilizado e 1
para trajeto utilizado;
c. Circuitos correspondentes para cada ponto elétrico:
Dados dos circuitos definidos pelo projetista. Nessa
2 DWG é uma extensão de arquivos para o ambiente do Autocad.
70
entrada de dados foi colocado dados do condutor, como:
área, bitola e preço por metro;
d. Características dos eletrodutos: dados de bitola, área
de ocupação e custo por metro;
e. Características dos condutores: dados de bitola, área
total e preço por metro;
f. Precificação de materiais e serviços: os dados para
custo final da instalação elétrica, contendo mão de obra e
materiais, foram retirados da tabela SINAPI Set/2018.
Os dados de entrada do sistema podem ser verificados nas tabelas
apresentadas no Apêndice B.
5.4 ANÁLISE DOS RESULTADOS
Para avaliar o método computacional proposto, utilizou-se três
tamanhos diferentes de população, com o intuito de analisar o tempo
gasto pelo processo e a economia proporcionada em relação ao projeto
original. Os resultados apresentados encontram-se na tabela 6 e
graficamente na figura 12. No Apêndice A, pode-se visualizar o projeto
definido pelo método do AG.
Tabela 6 - Resultados das populações para um processador Intel I5 – 2.5 GHz
Projeto desenvolvido pelo projetista
Custo Original: R$ 1408,81
Projeto otimizado pelo AG
População Iterações Custo Economia CPU Time
(segundos)
100 494 R$ 1208,97 14,18 % 51,057
500 2535 R$ 1147,76 18,53 % 290,770
1000 5038 R$ 1144,53 18,73 % 575,130
5000 30028 R$ 1134,98 19,44 % 4337,300
71
Para o comparativo entre os projetos (original x otimizado), foi
definido uma população inicial de 1000 indivíduos. A consistência do
valor de economia apresentada pela aplicação é demonstrada na tabela
7, onde foram apresentadas 10 simulações, de forma a obter um valor
médio de economia.
Tabela 7 - Análise média dos dados
População Iterações Custo Economia CPU
Time(segundos)
1 1000 5038 R$1144,53 18,73% 575,40
2 1000 3969 R$1164,85 17,32% 501,00
3 1000 4951 R$1134,10 19,50% 558,60
4 1000 5172 R$1135,08 19,43% 615,00
5 1000 5895 R$1135,21 19,42% 726,00
6 1000 6272 R$1159,36 17,71% 678,60
7 1000 4930 R$1139,98 19,08% 504,00
8 1000 4707 R$1147,05 18,58% 501,60
9 1000 4547 R$1142,09 18,93% 495,00
10 1000 5124 R$1133,58 19,54% 512,40
Média 5061 R$1143,58 18,82% 566,76
Os resultados do AG, foram apresentados de forma consistentes
ao decorrer do processo. Fazendo uma comparação honesta entre os
projetos, ou seja, analisando o fato que provavelmente o projetista fez
uso dos melhores caminhos para lançamento dos condutores elétricos, e
Cu
sto
s
População
Projeto Original
Projeto Otimizado
Figura 12 - Gráfico de Análise
72
a escolha proposta pelo algoritmo, pode-se concluir que utilizando o
método proposto, tem-se um ganho em torno de 19%, quando
comparados com o projeto original. A tabela 8 apresenta um
comparativo detalhado entre os custos do projeto desenvolvido pelo
projetista e o projeto otimizado pelo AG. O desenho do projeto pode ser
comparado no Apêndice A (Projeto utilizando AG) e no Anexo B
(projeto original).
Tabela 8 - Comparativo de projetos
Projeto Original Projeto Otimizado Economia
Nº de pontos
elétrico 56 56 -
Nº de ligações
entre pontos 56 52 7,14%
Medida linear
eletrodutos 112 metros 89 20,54%
Medida linear
fios elétricos 513 metros 465 9,36%
Custo Total R$ 1408,81 R$ 1143,58 18,83%
Outro aspecto a ser considerado no método do AG proposto, é a
velocidade em que a solução do problema é apresentada. Esse tempo de
resolução do problema, pode ser verificado pelo parâmetro CPU time
mostrado na tabela 7. Com esse tempo de processamento pode-se
concluir também, que o método apresenta uma velocidade de resolução
muito superior, comparado com o tempo que o projetista levaria para
alcançar um resultado aproximado.
73
6 CONCLUSÕES E RECOMENDAÇÕES
6.1 CONCLUSÕES
Neste trabalho foi apresentado uma proposta de implementação
de um algoritmo genético com o objetivo de buscar soluções de
alocações de eletrodutos e condutores em um projeto, de forma a
minimizar os custos associados da instalação elétrica, dentro do projeto
elétrico.
A aplicação computacional demonstrou ser uma ferramenta
eficaz para a solução do problema apresentado, gerando resultados
promissores. Verificou-se que a utilização do AG consegue resolver a
distribuição dos eletrodutos e condutores do projeto elétrico de forma
eficaz e eficiente, satisfazendo o objetivo geral deste trabalho. Métodos
para identificação e coleta de dados foram definidos, utilizando
comandos do Autocad, dando maior agilidade para organizar os dados
de entrada do sistema. Os requisitos impostos pelas normas foram todos
atendidos, satisfazendo a área útil da seção transversal de eletrodutos
(utilizadas pelos condutores), atendendo os requisitos de
dimensionamento dos condutores de cada circuito, e atendendo de forma
correta as conexões elétricas necessárias, incluindo a alimentação de
pontos elétricos com fase, neutro e aterramento, bem como os comandos
que utilizam retornos.
74
O Algoritmo Genético foi implementado apresentando resultados
consistentes, com reduções significativas na ordem de 20% se
comparado a projetos elaborados por projetistas profissionais, inclusive
com a redução de esforços, pois apresenta resultados rápidos, servindo
como uma poderosa ferramenta de auxílio ao projetista.
6.2 RECOMENDAÇÕES
A aplicação apresenta potencialidades para suprir outras
demandas, tais como: (a) determinação da proteção dos circuitos, (b)
dimensionamento do circuito, (c) memorial de cálculos, (d) atender a
áreas externas etc. Essas questões foram propositalmente omitidas em
virtude do objetivo do trabalho e o reduzido tempo disponível para a sua
implementação. Sugere-se, ainda, verificar a possibilidade de integrar o
software desenvolvido a outras ferramentas de CAD, responsável pela
criação de projetos.
Um outro aspecto a considerar em desenvolvimentos futuros é a
possibilidade destas abordagens serem implementados em outros
sistemas de projetos, como:
a. Sistema preventivos: otimizando trajetos de tubulações
de gás e tubulações do sistema hidráulico preventivo.
b. Sistema hidrossanitário: otimizando trajetos de
tubulações.
c. Sistema Telecom: para circuitos de CFTV, alarmes,
controles de acesso etc.
Mediante ao exposto, este trabalho apresenta potencialidades que
podem ser exploradas e implementadas, mediante a devida manipulação
dos algoritmos propostos.
75
REFERÊNCIAS
BARRICO, C. M. C. S. Uma Abordagem ao Problema de Caminho
Mais Curto Multiobjectivo − Aplicação ao Problema de Comunicações. Universidade de Coimbra. Coimbra, p. 155. 1998.
CARVALHO, M. A. G. D. Teoria dos Grafos - Uma Introdução,
Limeira, 1 Fevereiro 2005. Disponivel em:
<https://www.ft.unicamp.br/~magic/ft024/apografos_ceset_magic.pdf>.
Acesso em: 21 Agosto 2018.
CASTRO, R. E. Otimização de estruturas, com multiobjetivos via
algoritmo genético de pareto. Universidade Federal do Rio de Janeiro -
UFRJ. Rio de Janeiro, p. 202. 2001.
CASTRO, R. E. D. Inteligência Artificial: Algoritmos Genéticos na
Prática. Rio de Janeiro: [s.n.], 2018.
CERQUEIRA, D. Construção Civil Representa 6,2% do PIB Brasil,
Brasília, 14 Fevereiro 2017. Disponivel em:
<https://www.sistemafibra.org.br/fibra/sala-de-imprensa/noticias/1315-
construcao-civil-representa-6-2-do-pib-brasil>. Acesso em: 15 out.
2018.
76
CHRISTOFIDES, N. Graph Theory - An Algorithm Approach. New
York: Academic Press Inc, 1975.
CONSELHO REGIONAL DE ENGENHARIA E AGRONOMIA.
Manual de procedimentos para a verificação do exercício profissional.
http: //www.confea.org.br/media/manual2007.pdf, Brasília, 2007.
Disponivel em: <http://www.confea.org.br/media/manual2007.pdf>.
Acesso em: 12 Novembro 2017.
COTRIM, A. A. M. B. Instalações Elétricas. 5ª. ed. São Paulo: Pearson
Prentice Hall, 2009.
CREDER, H. Instalações Elétricas. 15ª. ed. Rio de Janeiro: LTC, 2007.
FEOFILOFF, P. Algoritmo de Prim. Site da USP - Universidade de
São Paulo, 2 Junho 2017. Disponivel em:
<https://www.ime.usp.br/~pf/algoritmos_para_grafos/aulas/prim.html>.
Acesso em: 25 Agosto 2018.
GERHARDT, T. E.; SILVEIRA, D. T. Métodos de Pesquisa. 1ª. ed.
Porto Alegre: Editora da UFRGS, 2009.
LIMA, D. L. F. Projetos de Instalações Elétricas Prediais. 12ª. ed.
Curitiba: Érica Ltda., 2004.
LIMA, T. ACABE COM O DESPERDÍCIO NA CONSTRUÇÃO
CIVIL, Belo Horizonte, 25 Janeiro 2016. Disponivel em:
<https://www.sienge.com.br/blog/acabe-com-o-desperdicio-na-
construcao-civil/>. Acesso em: 15 out. 2018.
LINDEN, R. Algoritmos Genéticos. 3ª. ed. Rio de Janeiro: Ciência
Moderna Ltda., 2012.
LOUREIRO, S. A. Análise dos impactos dos arranjos relacionais em
transportes por modelo. Universidade de Campinas. Campinas. 2014.
MICHALEWICZ, Z. Genetic Algorithms + Data Structures =
Evolution Programs. 3ª. ed. Berlin: Springer, 1996.
77
MIGUEL, P. A. Metodologia de Pesquisa em Engenharia de
Produção
e Gestão de Operações. Rio de Janeiro: Elsevier. 2010
PICCHI, F. A.; AGOPYAN, V. Sistemas de qualidade: uso em
empresas de construção de edifícios. Universidade de São Paulo. São
Paulo. 1993.
PRIM, R. C. Shortest Connection Networks and Some Generalizations.
Bell System Technical Journal, v. 36, n. 6, p. 1389-1401, Novembro
1957.
RABUSKE, M. A. Introdução à Teoria dos Grafos. Florianópolis:
UFSC, 1992. 184 p.
RODRIGUES, F. L. et al. Metaheurística Algoritmo Genético para
Solução de Problemas de Planejamento Florestal com Restrições de
Integridade. SIF - Sociedade de Investigações Florestais, Viçosa, 28,
n. 2, 30 Maio 2004. 233-245.
SZWARCFITER, J. L. Grafos e Algoritmos Computacionais. Rio de
Janeiro: Editora Campos, 1984.
TENENBAUM, A. M.; AUGENSTEIN, M. J.; LANGSAM, Y.
Estruturas de Dados Usando o C. Tradução de Teresa Cristina Félix
de Souza. São Paulo: Makron Books, 1995.
USBERTI, F. L. Algoritmos para Problema de Roteamento de
Leituristas. Universidade Estadual de Campinas. Campinas. 2007.
VON ZUBEN, F. J. UNICAMP. Site da FEE, Campinas, 2000.
Disponivel em:
<ftp://ftp.dca.fee.unicamp.br/pub/docs/vonzuben/tutorial/tutorialEC.pdf
>. Acesso em: 14 Outubro 2018.
ZIVIANI, N. Projeto de Algoritmos: com implementações em Pascal e
C. 3ª. ed. São Paulo: Cengage Learning, 2013.
______. NBR 5410:2004: Instalações elétricas de baixa tensão. Rio de
Janeiro, 2008.
78
APÊNDICE A – Projeto Elétrico Utilizando AG
79
80
APÊNDICE B – Dados de Entradas
Tabela 9 - Dados de coordenadas dos pontos idCaixa DescricaoCaixa X Y Z
C000 quadro distribuição 270 417,48 150
C001 AE 390,5 43,75 200
C002 AI 215,41 440 200
⁞ ⁞ ⁞ ⁞ ⁞
C055 tom seca roupa 650 850 130
Tabela 10 - Dados das possíveis ligações idDuto idOrigem idDestino Distancia(m) Trajeto Projeto
D001 C000 C003 5,83 T 0
D002 C000 C004 3,12 P 1
D003 C000 C005 4,44 T 0
D004 C000 C010 0,5 P 1
D005 C000 C012 0,6 P 0
D006 C000 C013 3,98 T 0
D007 C000 C015 4,04 T 0
⁞ ⁞ ⁞ ⁞ ⁞ ⁞
D386 C022 C038 3,98 T 0
Tabela 11 - Dados Tomadas Id IdCaixa Circuito Corrente Aterramento
T001 C004 10 30 Sim
T002 C028 8 20 Sim
T003 C029 9 20 Sim
T004 C030 7 20 Sim
⁞ ⁞ ⁞ ⁞ ⁞
T028 C055 6 20 Sim
Tabela 12 - Dados dos Circuitos idCircuito Bitola Fio (mm) Área Fio (mm2) Disjuntor Preço (R$/m)
0 2,5 mm 10,7 *** 1,5
1 1,5 mm 7,1 15 0,8
2 2,5 mm 10,7 20 1,5
3 2,5 mm 10,7 20 1,5
4 2,5 mm 10,7 20 1,5
5 2,5 mm 10,7 20 1,5
6 4,0 mm 13,8 25 2,1
7 2,5 mm 10,7 20 1,5
8 2,5 mm 10,7 20 1,5
9 2,5 mm 10,7 20 1,5
10 6,0 mm 18,1 30 2,85
Tabela 13 - Dados dos Condutores
idFio Bitola (mm) Área (mm2) Preço (R$/m)
F001 1,5 7,1 1,86
F002 2,5 10,7 2,64
F003 4 13,8 4,11
F004 6 18,1 5,58
F005 10 27,3 8,89
81
Tabela 14 - Dados do Eletroduto
idTipoDuto Descrição Bitola
(mm)
Área 40%
(mm2)
Custo
(R$/m)
D001 Duto Corrugado
flexível 3/4" 25 mm 118,2 6,62
Tabela 15 - Dados Luminárias Id IdCaixa Circuito Potencia IdCaixaInt1 IdCaixaInt2
P001 C001 1 60 C007
P002 C002 1 60 C010
P003 C017 1 100 C009
P004 C018 1 60 C005
P005 C019 1 100 C008
P006 C020 1 100 C016
P007 C021 1 100 C015 C009
P008 C022 1 100 C005
P009 C023 1 100 C011 C012
P010 C024 1 100 C006
P011 C025 1 100 C010
P012 C026 1 100 C013 C014
P013 C003 1 60 C027
82
ANEXO A – Legenda do Projeto Elétrico
83
ANEXO B – Projeto Elétrico Original