MINISTÉRIO DA DEFESA EXÉRCITO BRASILEIRO … _err… · A teoria dos grafos propicia agregar um...

64
1 MINISTÉRIO DA DEFESA EXÉRCITO BRASILEIRO DEPARTAMENTO DE CIÊNCIA E TECNOLOGIA INSTITUTO MILITAR DE ENGENHARIA CURSO DE GRADUAÇÃO EM ENGENHARIA CARTOGRÁFICA 1º Ten ALEX DE LIMA TEODORO DA PENHA 1º Ten ANGELO CANTALUPPI SILVESTRI DE FREITAS 1º Ten ANTONIO GAUDÊNCIO GUIMARÃES FILHO IDENTIFICAÇÃO DE ERROS GROSSEIROS EM DADOS GEODÉSICOS UNIDIMENSIONAIS Rio de Janeiro 2007

Transcript of MINISTÉRIO DA DEFESA EXÉRCITO BRASILEIRO … _err… · A teoria dos grafos propicia agregar um...

Page 1: MINISTÉRIO DA DEFESA EXÉRCITO BRASILEIRO … _err… · A teoria dos grafos propicia agregar um conhecimento alternativo para o problema de erros em observações, dado que um grafo

1

MINISTÉRIO DA DEFESA

EXÉRCITO BRASILEIRO

DEPARTAMENTO DE CIÊNCIA E TECNOLOGIA

INSTITUTO MILITAR DE ENGENHARIA

CURSO DE GRADUAÇÃO EM ENGENHARIA CARTOGRÁFICA

1º Ten ALEX DE LIMA TEODORO DA PENHA

1º Ten ANGELO CANTALUPPI SILVESTRI DE FREITAS

1º Ten ANTONIO GAUDÊNCIO GUIMARÃES FILHO

IDENTIFICAÇÃO DE ERROS GROSSEIROS EM

DADOS GEODÉSICOS UNIDIMENSIONAIS

Rio de Janeiro

2007

Page 2: MINISTÉRIO DA DEFESA EXÉRCITO BRASILEIRO … _err… · A teoria dos grafos propicia agregar um conhecimento alternativo para o problema de erros em observações, dado que um grafo

2

INSTITUTO MILITAR DE ENGENHARIA

1º Ten ALEX DE LIMA TEODORO DA PENHA

1º Ten ANGELO CANTALUPPI SILVESTRI DE FREITAS

1º Ten ANTONIO GAUDÊNCIO GUIMARÃES FILHO

IDENTIFICAÇÃO DE ERROS GROSSEIROS EM

DADOS GEODÉSICOS UNIDIMENSIONAIS

Projeto de Fim de Curso apresentado ao Curso de Graduação em Engenharia Cartográfica do Instituto Militar de Engenharia, como requisito parcial para a obtenção do título de Engenheiro Cartógrafo.

Orientador: Prof. Leonardo Castro de Oliveira – D. E.

Rio de Janeiro

2007

Page 3: MINISTÉRIO DA DEFESA EXÉRCITO BRASILEIRO … _err… · A teoria dos grafos propicia agregar um conhecimento alternativo para o problema de erros em observações, dado que um grafo

3

INSTITUTO MILITAR DE ENGENHARIA

1º Ten ALEX DE LIMA TEODORO DA PENHA

1º Ten ANGELO CANTALUPPI SILVESTRI DE FREITAS

1º Ten ANTÔNIO GAUDÊNCIO GUIMARÃES FILHO

IDENTIFICAÇÃO DE ERROS GROSSEIROS EM DADOS GEODÉSICOS

UNIDIMENSIONAIS

Projeto de Fim de Curso de Graduação em Engenharia Cartográfica do Instituto Militar de Engenharia, como requisito parcial para a obtenção do título de Engenheiro Cartógrafo.

Orientador: Prof. Leonardo Castro de Oliveira – D. E.

Aprovada em 13 de Agosto de 2007 pela seguinte Banca Examinadora:

_______________________________________________________________

Prof. Leonardo Castro de Oliveira – D. E.

_______________________________________________________________

Cap QEM Vagner Braga Nunes Coelho – M. C.

_______________________________________________________________

Cap QEM Douglas Corbari Corrêa – M. C.

_______________________________________________________________

Cap QEM Marcos de Meneses Rocha – M. C.

Rio de Janeiro

2007

Page 4: MINISTÉRIO DA DEFESA EXÉRCITO BRASILEIRO … _err… · A teoria dos grafos propicia agregar um conhecimento alternativo para o problema de erros em observações, dado que um grafo

4

SUMÁRIO

LISTA DE ILUSTRAÇÕES................................................................................................... 06

ABREVIATURAS E SIGLAS ............................................................................................... 08

AGRADECIMENTOS.......................................................................................................... 09

RESUMO............................................................................................................................. 10

ABSTRACT.......................................................................................................................... 11

1 INTRODUÇÃO......................................................................................................... 12

1.1 Objetivo.................................................................................................................... 13

1.2 Justificativa............................................................................................................... 13

1.3 Fases do Projeto .................................................................................................... 13

1.4 Resultados Esperados............................................................................................. 14

1.5 Recursos Disponíveis.............................................................................................. 15

1.6 Descrição do Trabalho............................................................................................. 15

2 TEORIA DOS GRAFOS E CÓDIGO “TODOS OS CAMINHOS - PGC”................... 16

2.1 Observações............................................................................................................ 16

2.2 Erros......................................................................................................................... 18

2.3 Teoria dos Grafos.................................................................................................... 19

2.4 Código “Todos os Caminhos - PGC”.......................................................................... 22

2.4.1 Algoritmo Deep First Search - DFS............................................................................ 22

2.4.2 Técnica Backtracking................................................................................................ 22

2.4.3 Código “Todos os Caminhos - PGC”.......................................................................... 23

2.5 Grandezas Geodésicas Unidimensionais................................................................... 24

3 TESTES E PGC2 .................................................................................................... 27

3.1 Testes no PGC......................................................................................................... 27

3.2 Novo Código “Todos os Caminhos – PGC2”.......................................................... 32

Page 5: MINISTÉRIO DA DEFESA EXÉRCITO BRASILEIRO … _err… · A teoria dos grafos propicia agregar um conhecimento alternativo para o problema de erros em observações, dado que um grafo

5

4 APLICAÇÃO .......................................................................................................... 35

4.1 Simulação ............................................................................................................... 35

5 CONCLUSÕES........................................................................................................ 45

6 REFERÊNCIAS BIBLIOGRÁFICAS ...................................................................... 46

7 BIBLIOGRÁFIA ...................................................................................................... 48

APÊNDICE A – ROTINA DE TODOS OS CAMINHOS - PGC................................... 49

APÊNDICE B – SAÍDAS 1,2,3 DO PGC.................................................................... 53

APÊNDICE C – SAÍDAS DOS CAMINHOS DO PGC................................................ 55

APÊNDICE D – EXEMPLOS 1, 2 e 3 do PGC2 ........................................................ 57

APÊNDICE E – ALGORITMO PGC 2 – PATHS ...................................................... 63

APÊNDICE F – CD COM SIMULAÇÕES

Page 6: MINISTÉRIO DA DEFESA EXÉRCITO BRASILEIRO … _err… · A teoria dos grafos propicia agregar um conhecimento alternativo para o problema de erros em observações, dado que um grafo

6

LISTA DE ILUSTRAÇÕES

FIG. 2.1 Exemplo de medição direta............................................................................. 17

FIG. 2.2 Exemplo de medição indireta.......................................................................... 17

FIG. 2.3 Exemplos dos tipos de erros........................................................................... 19

FIG. 2.4 Exemplo de Grafo........................................................................................... 20

FIG. 2.5 Vértice isolado................................................................................................. 20

FIG. 2.6 Caminho Euleriano: 3, 4, 5, 3, 2, 5, 6, 2, 1, 6.................................................. 21

FIG. 2.7 Adjacência entre estados do Brasil................................................................. 21

FIG. 2.8 Fluxograma da rotina implementada para listagem de todos os caminhos.... 24 FIG. 2.9 Nivelamento Geométrico................................................................................. 25

FIG. 2.10 Esquema de implantação de rede gravimétrica.............................................. 26

FIG. 3.1 Exemplos de redes regulares.......................................................................... 27

FIG. 3.2 Gráfico da relação entre o número de vértices e a quantidade de caminhos

gerados no PGC..............................................................................................

29

FIG. 3.3 Exemplo genérico de rede com 42 vértices.................................................... 30

FIG. 3.4 Modelo do Arquivo de saída do PGC2............................................................ 33

FIG. 4.1 Exemplo de rede simulada.............................................................................. 35

Page 7: MINISTÉRIO DA DEFESA EXÉRCITO BRASILEIRO … _err… · A teoria dos grafos propicia agregar um conhecimento alternativo para o problema de erros em observações, dado que um grafo

7

FIG. 4.2 Estrutura arquivo de entrada........................................................................... 35

FIG. 4.3 Parte do Arquivo de Saída do PGC2-paths.................................................... 35

FIG. 4.4 Estrutura arquivo de entrada com erro............................................................ 36

FIG. 4.5 Arquivo de saída de PGC2-paths.................................................................... 37

FIG. 4.6 Arquivo de saída de PGC2-cycles.................................................................. 37

FIG. 4.7 Rede e dados de entrada................................................................................ 38

FIG. 4.8 Caminhos Gerados pelo PGC2 - cycles.......................................................... 39

FIG. 4.9 Saída PGC2 – paths sem a medição 7�8...................................................... 42

FIG. 4.10 Inferência do valor na medição 7�8............................................................... 42

FIG. 4.11 Pares de pontos com maior nº de caminhos................................................... 43

Page 8: MINISTÉRIO DA DEFESA EXÉRCITO BRASILEIRO … _err… · A teoria dos grafos propicia agregar um conhecimento alternativo para o problema de erros em observações, dado que um grafo

8

ABREVIATURAS

Dev - Development

Ms - Microsoft

PGC - Penha, Guimarães e Cantaluppi

DFS - Deep First Search

GNU - GNU is not UNIX

MMQ - Método dos Mínimos Quadrados

RAM - Random Access Memory

SIGLAS

IBGE - Instituto Brasileiro de Geografia e Estatística

IME - Instituto Militar de Engenharia

ABENDE - Associação Brasileira de Ensaios Não Destrutivos e Inspeção

UFSC - Universidade Federal de Santa Catarina

Page 9: MINISTÉRIO DA DEFESA EXÉRCITO BRASILEIRO … _err… · A teoria dos grafos propicia agregar um conhecimento alternativo para o problema de erros em observações, dado que um grafo

9

AGRADECIMENTOS

Gostaríamos de agradecer, primeiramente, às nossas famílias por todo apoio e

incentivo.

Aos amigos e professores, obrigado pelo dia a dia.

Agradecemos também ao nosso orientador e professor, Leonardo Castro de

Oliveira, pela paciência, pelas revisões, pela motivação, conselhos sobre o texto e pela

ajuda.

Page 10: MINISTÉRIO DA DEFESA EXÉRCITO BRASILEIRO … _err… · A teoria dos grafos propicia agregar um conhecimento alternativo para o problema de erros em observações, dado que um grafo

10

RESUMO

A identificação e a eliminação de erros de natureza grosseira é ação de relevância no processo de construção das Redes Geodésicas. A aplicação da Teoria dos Grafos a um conjunto de dados geodésicos unidimensionais é trabalhada como insumo para o desenvolvimento de formas de ação automatizada de verificação e identificação de erros grosseiros em observações. No projeto buscou-se o desenvolvimento de novo algoritmo que pudesse agregar valor e facilitar futuros processamentos geodésicos. Nesse sentido, desenvolveu-se um algoritmo, implementado em C++, chamado “Todos os Caminhos – PGC2”, compilado no sistema operacional linux pelo compilador g++ (GNU C++). Geralmente apresentado como um algoritmo simples de busca em profundidade para solucionar problemas com grafos, o Deep First Search – DFS, foi o primeiro embasamento apresentado na construção da rotina de busca de “Todos os Caminhos - PGC”, código que originou o PGC2. Utilizou-se a Técnica Backtracking que garante a solução enumerar todas as possibilidades de caminho; eficiência - nunca testando uma solução mais de uma vez; e otimização, ao descartar enumerações parciais que não conduzem ao resultado desejado. Após os aspectos de desenvolvimento do Código PGC passou-se à fase de testes onde se observou um aumento exponencial do número de caminhos ao aumentar o número de vértices. Notou-se, assim, a necessidade de revisão no código por apresentar limitações para uma rede com grande quantidade de pontos. Desenvolveu-se então o programa PGC2, construído após algumas restrições do programa PGC, composto por duas rotinas: PGC2-paths e PGC2-cycles. Trata-se de um código mais simples e otimizado. Os levantamentos topográficos e geodésicos são objeto de grande discussão e pesquisa. Há uma preocupação constante com essa análise e rigor matemáticos dos conceitos geodésicos, além da confiabilidade da precisão a ser alcançada na definição de vértices e limites. Dessa forma, o trabalho em questão pretende contribuir com soluções para este problema geodésico, apresentando e buscando desenvolver soluções. PALAVRAS CHAVES: Geodésia, Teoria dos Grafos, Erros Grosseiros

Page 11: MINISTÉRIO DA DEFESA EXÉRCITO BRASILEIRO … _err… · A teoria dos grafos propicia agregar um conhecimento alternativo para o problema de erros em observações, dado que um grafo

11

ABSTRACT

The identification and the elimination of the mistakes are really important to the process of building Geodetic Networks. With Graph Theory in a set of geodetic unidimentional data, it´s been developed an automatic process that permits the verification and the identification of observations which have problems.

This project has developed a new algorithm that can make easier future geodesy process. This algorithm has been written in C++ called “Todos os Caminhos – PGC2”, in Linux operational system, with a g++ (GNU C++).

It was used the Deep First Search – DFS, the first applied theory to search routine in “Todos os Caminhos - PGC”, origin of PGC2. The use the Backtracking technique: guarantees that the solution will be find, because it lists all solutions; guarantees efficiency, never testing a solution more than once and can be optimized because it eliminates partial results that can not give the desired result.

After development steps, Código PGC initiated test steps where it could be observed an exponential increase of the number of ways. So it was necessary to make an upgrade in the code because it had some problems with big numbers of points.

So it was developed a software named PGC2, created after some restrictions of PGC program, compound by two routines: PGC2-paths and PGC2-cycles. This code is simple and optimized.

Topographic and geodetic works are object of important scientific discussion. There is a concern about the analysis of the geodetic concepts and mathematic modeling of vertices and limits. The development of computer routines and softwares brings minimization of data errors. This way this research intends to contribute to find solutions for some geodetic problems. KEYWORDS: Geodesy, Graph Theory, Mistakes

Page 12: MINISTÉRIO DA DEFESA EXÉRCITO BRASILEIRO … _err… · A teoria dos grafos propicia agregar um conhecimento alternativo para o problema de erros em observações, dado que um grafo

12

1. INTRODUÇÃO

“Geodésia é a ciência que se ocupa da determinação da forma, das dimensões e

do campo de gravidade da Terra” (IBGE, 2006). Desta forma, ela necessita de um

conjunto de dados a serem tratados, processados e analisados para a geração de novos

conhecimentos.

O objetivo de um sistema de coordenadas geodésicas é posicionar e descrever o

movimento de objetos terrestres. Sendo assim, é uma abstração matemática que utiliza

parâmetros associados à Terra, sendo eles de natureza geométrica, física e até de

natureza geodinâmica. Como exemplo temos os sistemas de posicionamento por

satélites, que associam um conjunto de coordenadas a cada ponto do globo segundo um

referencial determinado.

As atividades geodésicas são objeto de grande discussão e pesquisa. Há uma

preocupação constante com a análise e rigor matemáticos dos conceitos geodésicos e da

confiabilidade da precisão a serem alcançadas na definição dos vértices e dos limites. No

aspecto profissional é interessante a geração de rotinas computacionais e,

conseqüentemente, softwares para os profissionais que efetuam os levantamentos,

minimizando os erros que porventura venham a existir, inerentes aos trabalhos de campo.

Já faz tempo que o Método dos Mínimos Quadrados (MMQ)1 é usado pela Geodésia para

a distribuição de erros existentes em observações, contudo os livros técnicos e manuais

em português a respeito do assunto são escassos, assim como existem poucos

profissionais interessados nesse ramo de análise de erros. No uso do MMQ, supõe-se a

inexistência de erros grosseiros e sistemáticos nos dados da rede. Sendo assim, novas

metodologias têm de ser apresentadas para permitir atingir o objetivo da identificação dos

erros. É neste segmento que o projeto se insere.

A teoria dos grafos propicia agregar um conhecimento alternativo para o problema

de erros em observações, dado que um grafo é um conjunto de pontos, chamados

vértices (ou nós), conectados por linhas, chamadas de arestas – semelhante à estrutura

atual de uma rede geodésica. Esses novos conceitos possibilitam abordar o suporte à

identificação de erros grosseiros de uma forma diferente, buscando a otimização do

tempo de execução e a redução de custos.

1 O fundamento matemático é a minimização da soma dos quadrados dos resíduos das observações.

Page 13: MINISTÉRIO DA DEFESA EXÉRCITO BRASILEIRO … _err… · A teoria dos grafos propicia agregar um conhecimento alternativo para o problema de erros em observações, dado que um grafo

13

1.1. Objetivo

Desenvolver um processo, parte automatizado, parte ainda interagindo com o

especialista, que permita a verificação e identificação de observações com erros

grosseiros. Tal procedimento tem compromisso direto com a qualidade de dados para a

construção de redes geodésicas.

1.2. Justificativa

A Geodésia exige várias medições com o objetivo de realizar o transporte de

coordenadas. As medições, na verdade, devem ser entendidas como as observações

coletadas em campo por equipamentos de natureza bem específica: medições de

distâncias, ângulos, coordenadas e assim por diante. Apesar de todo cuidado no uso de

aparelhos de alta precisão, bem como no emprego de modelos matemáticos, os erros nas

coordenadas são inevitáveis devido à presença de erros aleatórios. Uma rede geodésica

só é possível de ser construída com dados consistentes. Deste modo, uma compreensão,

uma análise, um dimensionamento e um tratamento estatístico precisam ser realizados

para que erros grosseiros sejam eliminados e outros sejam identificados e minimizados.

1.3. Fases do Projeto

Neste projeto, tem-se como base um conjunto de estações e de dados coletados

em um levantamento, sendo de natureza unidimensional, como por exemplo: ∆ H

(diferenças de altura) ou ∆ g (diferenças de gravidade). Uma rede é formada por vários

pontos que estão interconectados geometricamente. A teoria dos grafos fornece

algoritmos que possibilitam listar caminhos dentro de uma rede.

A grande vantagem computacional do uso da teoria dos grafos está na

capacidade de prover meios para detecção de erros, inerentes a estes dados, de maneira

eficiente e ainda parcialmente automática para atender às especificações técnicas, além

de contribuir para outras atividades de cálculos como, por exemplo, determinação de

distâncias entre vértices. O foco desejado é garantir a segurança no processamento de

dados, fazendo com que se obtenham resultados confiáveis (dentro de variações pré-

estabelecidas).

O presente projeto partiu de uma análise bibliográfica a fim de identificar os

fundamentos e conceitos relativos à teoria dos grafos e a redes geodésicas que serviriam

Page 14: MINISTÉRIO DA DEFESA EXÉRCITO BRASILEIRO … _err… · A teoria dos grafos propicia agregar um conhecimento alternativo para o problema de erros em observações, dado que um grafo

14

de subsídio para o desenvolvimento dos trabalhos. Quanto à teoria dos grafos, busca-se a

capacitação visando aplicação na rede de pontos, conhecimento que é essencial para a

condução do projeto, além da verificação da existência de algoritmos que estejam

alinhados com o objetivo do projeto. No que se refere à rede geodésica, busca-se

identificar seus elementos, ou seja, os dados unidimensionais e os valores associados, se

for o caso. A teoria dos grafos será direcionada para os nós e parâmetros da rede. Com

isso, será objeto do projeto a listagem de todos os caminhos possíveis entre dois pontos

ou saindo e chegando no mesmo ponto (circuitos fechados). Cada caminho irá possuir

dados de altitude e distâncias relativas2. Dessa forma, diversos desvios (devido à

variação das altitudes ou distâncias) serão obtidos pela comparação sistemática dos

dados coletados.

Em paralelo ao objetivo do projeto tem-se a busca, a análise, a comparação e a

otimização de algoritmos aplicados que satisfaçam as necessidades do trabalho em

questão e o desenvolvimento, se possível, de novo(s) algoritmo(s) que possam agregar

valor e facilitar o conhecimento e o desenvolvimento de futuros processamentos

geodésicos. Havendo algoritmos que sejam aplicáveis ao projeto, estes serão o elo de

ligação da modelagem da rede pela teoria dos grafos com o aspecto computacional que

será desenvolvido. Esta visa analisar índices de estabilidade dos algoritmos dos grafos e

até mesmo otimizá-los.

A documentação de todo o projeto tem importância fundamental, pois os códigos

gerados têm como exigência a compatibilidade com outros códigos. A documentação das

entradas e saídas, dos algoritmos e da precisão de cada método deverá ser armazenada

em meio digital.

1.4. Resultados Esperados

Para se atingir o objetivo do projeto ao término do mesmo tem-se um programa

consolidado cujos dados de entrada sejam os pontos da rede geodésica e suas ligações.

Os dados de saída serão informações que servirão para a verificação e identificação de

erros grosseiros. O código-fonte possibilitará as alterações mais específicas e o algoritmo

poderá ser implementado em diversas linguagens de programação.

Page 15: MINISTÉRIO DA DEFESA EXÉRCITO BRASILEIRO … _err… · A teoria dos grafos propicia agregar um conhecimento alternativo para o problema de erros em observações, dado que um grafo

15

1.5. Recursos Disponíveis

O presente projeto conta com o apoio da Seção de Ensino de Engenharia

Cartográfica do IME e foi desenvolvido no Laboratório de Posicionamento. O recurso

computacional utilizado foi um Microcomputador Celeron, 2.66Ghz, 80Gb HD e 512 Mb

RAM, sistema operacional Linux Ubuntu 7.04, para o desenvolvimento e o teste dos

códigos, além dos processamentos dos dados pertinentes ao projeto. O compilador

utilizado foi o Dev C++, da Bloodshed Software (gratuito) e o g++ (GNU C++).

1.6. Descrição do Trabalho

O trabalho é desenvolvido ao todo em torno de quatro capítulos. No segundo

capítulo são abordados os embasamentos teóricos que permeiam o projeto, tanto os

relativos à parte da Geodésia quanto aqueles relacionados à parte computacional.

O capítulo três se destina à realização de testes e simulações sobre a solução

proposta. Neste ponto são identificadas as limitações e contribuições oriundas do projeto

em questão, além de apresentar o programa desenvolvido, PGC2.

No capítulo quatro são analisadas as condições de aplicabilidade da solução,

levando-se em consideração a extensão da rede geodésica brasileira.

2. TEORIA DOS GRAFOS E CÓDIGO “TODOS OS CAMINHOS - PGC”

Page 16: MINISTÉRIO DA DEFESA EXÉRCITO BRASILEIRO … _err… · A teoria dos grafos propicia agregar um conhecimento alternativo para o problema de erros em observações, dado que um grafo

16

A Teoria dos Grafos é um conjunto de conceitos onde são necessárias definições

para que exista um entendimento do assunto e uma verificação da associação dos novos

conceitos com as redes geodésicas e os dados coletados. Conceitos básicos da teoria

dos grafos como vértices, arestas e caminhos foram associados a pontos, medições e

somatório de medições envolvidas a cada ponto da rede de dados coletados.

Partiu-se da rotina desenvolvida em PENHA et alii (2006), chamada de “TODOS

OS CAMINHOS - PGC” (apêndice A), associando o algoritmo de busca por profundidade

(Depth First Search - DFS) do PGC a uma nova técnica denominada Backtracking. Este

recurso elimina dois casos de importante consideração. O primeiro deles diz respeito ao

crescimento exponencial de dados intermediários e caminhos obtidos, quando a rede

apresenta grande número de vértices e observações. O segundo é aquele que modela o

grafo como uma árvore, no qual se inicia em um vértice escolhido (vértice de partida) e se

percorrem todos os ramos da árvore para encontrar um outro vértice também escolhido

(vértice de chegada).

Seguindo PENHA et alii (2006), a linguagem de programação é uma forma de

materialização do projeto no que se refere a implementação do algoritmo. A rotina foi

testada utilizando-se a linguagem C++.

2.1. Observações

Ao se falar em observações, faz-se necessário lembrar que não é possível

realizar a medida de uma grandeza sem que haja interação entre a grandeza medida e o

instrumento de medida. Nesta interação o valor medido não é exatamente igual ao real,

mas sim um valor aproximado com erros embutidos nestas observações. Os erros

inerentes ao processo de medida podem ter, entre outras razões, origem em falhas

humanas, na imperfeição dos equipamentos ou, ainda, na influência das condições

ambientais que se apresentam no momento da medição.

Desta maneira, para uma medida de alta confiança adota-se tanto o procedimento

de se executar várias medidas de uma mesma grandeza assim como a medição super

abundante de grandezas. Exemplificando: dado um triangulo, mede-se cada ângulo 5

vezes (repetibilidade) e, mesmo não precisando, todos os 3 ângulos (controle

geométrico). Assim, define-se um conjunto redundante de valores de um mesmo

fenômeno. A partir deste conjunto, é preciso extrair um resultado que represente a

grandeza medida com um determinado nível de confiança e de maneira única. A

Page 17: MINISTÉRIO DA DEFESA EXÉRCITO BRASILEIRO … _err… · A teoria dos grafos propicia agregar um conhecimento alternativo para o problema de erros em observações, dado que um grafo

17

aplicação de um modelo matemático auxilia na execução desta tarefa de determinação,

impondo parâmetros e limites de aceitação a fim de se obter um resultado dentro da

precisão desejada.

Há dois tipos de métodos de observação: observações diretas e indiretas. No

primeiro caso as medidas são executadas sobre as próprias grandezas como incógnitas.

Um exemplo simples de medição direta seria a medição das dimensões de um objeto

usando um paquímetro, como ilustrado na figura 2.1.

FIG. 2.1 – Exemplo de medição direta (HENRIQUES, 2004).

No segundo caso, as medidas desejadas são obtidas de outras grandezas

associadas por relações funcionais conhecidas. A figura 2.2 ilustra o método usado por

Eratóstenes para medir a circunferência da Terra.

FIG. 2.2 – Exemplo de medição indireta (SALVIANO e SANTIAGO, 2006).

Na Geodésia, assim como em outras áreas do conhecimento, o ajustamento das

observações far-se-á necessário para adequar os valores das medidas de modo que eles

Page 18: MINISTÉRIO DA DEFESA EXÉRCITO BRASILEIRO … _err… · A teoria dos grafos propicia agregar um conhecimento alternativo para o problema de erros em observações, dado que um grafo

18

obedeçam a um modelo matemático pré-definido. Isso porque valores coletados trazem

consigo erros inerentes ao processo de obtenção e os mesmos devem ser minimizados e,

se possível, eliminados. Por exemplo, temos o problema da refração na medida de

distâncias.

2.2. Erros

A teoria dos erros é de fundamental importância no desenvolvimento deste

projeto. Vários conceitos relacionados a esta teoria ajudam a formar a base para o

entendimento das decisões tomadas, visto que a análise de como se processa cada tipo

de erro pode ajudar na sua eliminação. Segundo a classificação tradicional, os erros

podem ser denominados grosseiros, sistemáticos ou acidentais.

Os erros grosseiros são muitas das vezes frutos da falta de atenção dos

profissionais envolvidos nas medições de campo, por exemplo. Tal fato pode conduzir a

uma troca de dígitos no momento da anotação, trocas de sinal, anotação de um dado no

local errado dentro de uma tabela e assim por diante. Mesmo os processos

automatizados (como o rastreio por satélites) podem sofrer influência de erros grosseiros,

visto que os códigos transmitidos podem sofrer interferência de ruídos. É fácil detectar

erros desta natureza quando apresentam valores muito discrepantes, contudo podem se

tornar de difícil identificação em outros casos, necessitando assim testes estatísticos para

a avaliação da possibilidade de se descartar determinada medida.

Os erros sistemáticos são aqueles determinados por causas conhecidas

(problemas no equipamento, procedimentos incorretos, refração atmosférica etc). Os

erros de refração, por exemplo, influenciam tanto as medidas angulares como as lineares,

sejam feitas com equipamentos analógicos (teodolito e mira) ou eletrônicos

(distanciômetros e rastreadores de satélite). Tratam-se, portanto, de influências que

devem ser eliminadas. O planejamento dos trabalhos de campo pode auxiliar na redução

desses erros.

Os erros sistemáticos não estão relacionados somente aos equipamentos. O

operador que sempre executa uma medida de tempo em atraso ou que sempre realiza a

leitura de uma mira um pouco acima da linha é uma fonte de erros sistemáticos. Cabe

ressaltar o caráter cumulativo dos erros sistemáticos e da impossibilidade de sua

eliminação, o que pode gerar problemas em trabalhos de grande porte.

Page 19: MINISTÉRIO DA DEFESA EXÉRCITO BRASILEIRO … _err… · A teoria dos grafos propicia agregar um conhecimento alternativo para o problema de erros em observações, dado que um grafo

19

Os erros acidentais (ou aleatórios) não possuem causa conhecida e podem

ocorrer a cada momento em um sentido. Por apresentarem, segundo a teoria, distribuição

normal, eles tendem a se neutralizar quando o número de observações aumenta.

Desta forma, uma metodologia a se adotar é eliminar os erros grosseiros e

acidentais, visto que os erros sistemáticos não podem ser eliminados. A figura 2.3 ilustra

o caso de um atirador que executa disparos sobre um alvo. Pode-se dizer que os tiros que

ficam fora do alvo constituem erros grosseiros e os tiros que ficam próximos, porém fora

do alvo, representam os erros sistemáticos. Os tiros que ficam juntos e sobre o alvo

representam apenas erros acidentais.

FIG. 2.3. - Exemplos dos tipos de erros.

2.3 Teoria dos Grafos

A Teoria dos Grafos apresenta pontos como vértices. Ligados, formam as arestas

que, por sua vez, fornecem as diferenças das grandezas unidimensionais por meio das

observações que foram coletadas em levantamentos de campo, tais como altimetria ( ∆ H)

e gravimetria ( ∆ g), por exemplo. A figura 2.4 a seguir apresenta um exemplo de grafo.

Page 20: MINISTÉRIO DA DEFESA EXÉRCITO BRASILEIRO … _err… · A teoria dos grafos propicia agregar um conhecimento alternativo para o problema de erros em observações, dado que um grafo

20

FIG. 2.4 - Exemplo de Grafo (CRISTINA e PIMENTEL, 2006).

Na teoria dos grafos, define-se V como vértices ou nós do grafo, sendo um

conjunto finito não-vazio e A como arestas, sendo um conjunto de pares não ordenados

de elementos distintos de V. Assim sendo, se cada aresta a pertencente a A, tem-se o

par de vértices a = (v,w), onde os vértices v e w são os pontos extremos da aresta, como

pode ser notado na figura 2.4.

Uma analogia a geodésia permite, a priori, assumir os vértices como estações de

nivelamento e gravimétricas. As arestas seriam as observações entre os vértices, por

exemplo, os desvios ou as diferenças de gravidade.

Convém definir que não serão usados vértices isolados (aqueles que não

apresentam ligações por arestas), como na figura 2.5, pois não faria qualquer sentido em

se tratando de dados de natureza unidimensional. Tem-se particular interesse nas

arestas, pois estão associados a esses dados.

FIG. 2.5 - Vértice isolado (CRISTINA e PIMENTEL, 2006).

Segundo CRISTINA e PIMENTEL (2006), tem-se ainda que um caminho do

vértice v1 ao vértice vk é uma seqüência de vértices v1, v2, ..., vk tal que (vj, vj+1) pertence a

A, 11 −≤≤ kj ; diz-se que v1 atinge e alcança vk. Há particular interesse em caminhos

eulerianos, como o da figura 2.6, que contém cada aresta do grafo exatamente uma vez.

Page 21: MINISTÉRIO DA DEFESA EXÉRCITO BRASILEIRO … _err… · A teoria dos grafos propicia agregar um conhecimento alternativo para o problema de erros em observações, dado que um grafo

21

FIG. 2.6 - Caminho Euleriano: 3, 4, 5, 3, 2, 5, 6, 2, 1, 6.

Segundo FEOFILOFF (2006), por exemplo, o grafo dos estados do Brasil é

definido assim: cada vértice é a capital de um dos estados da República Federativa do

Brasil; dois estados são adjacentes se têm uma fronteira comum. Um exemplo ilustrativo

é encontrado na figura 2.7.

FIG. 2.7 - Adjacência entre estados do Brasil.

O conjunto de caminhos é necessário para se fazer comparações de resultados

advindo das medições, como será visto no decorrer do texto. Cada caminho representa a

ligação geométrica (altimetria ou altura, por exemplo) entre os vértices considerados.

Mediante a comparação dos resultados das variações obtidas por diferentes caminhos

serão obtidos desvios a fim de determinar erros grosseiros nos dados da rede.

Page 22: MINISTÉRIO DA DEFESA EXÉRCITO BRASILEIRO … _err… · A teoria dos grafos propicia agregar um conhecimento alternativo para o problema de erros em observações, dado que um grafo

22

2.4. Código “Todos os Caminhos - PGC”

2.4.1. Algoritmo Deep First Search - DFS

Geralmente apresentado como um algoritmo simples de busca em profundidade

para solucionar problemas com grafos, o Deep First Search – DFS, foi o primero

embasamento apresentado em PENHA et alii (2006) na construção da rotina de busca de

“Todos os Caminhos - PGC3”.

O DFS percorre todo vértice adjacente que ainda não tenha sido visitado. Seu

“procedimento de busca de um determinado vértice v parte da raiz e percorre todos os

nós que podem ser alcançados a partir de v. O algoritmo de busca utiliza como parâmetro

exclusivo o vértice raiz (atribuído por v) e começa a partir das conexões w das arestas

existentes do tipo (v, w). O DFS pode gerar diferentes ordens de busca conforme a sua

implementação” (PENHA et alii, 2006).

Dessa forma, o DFS encerra sua execução quando todos os vértices ligados a v

forem percorridos. Sendo assim, ele pode ser usado para analisar todos os vértices de

uma estrutura, o que o torna pouco eficiente para o fim a que se destina, dada a

complexidade, por exemplo, de uma rede geodésica nacional.

2.4.2. Técnica Backtracking

Baseia-se na adição de um novo vértice à lista de caminhos somente após haver

a completa varredura do vértice atual. A partir disso, conforme WEST (2006), o algoritmo

avalia estas soluções possíveis parcialmente construídas da seguinte maneira:

- se uma solução parcialmente construída puder continuar a ser desenvolvida,

sem violar as restrições do problema, será feito usando-se a primeira opção legítima

remanescente para o próximo componente;

- se não houver opção legítima para o próximo componente, não é necessário

considerar nenhuma alternativa para qualquer componente remanescente;

- neste caso, o algoritmo recua/retrocede (Backtrack) para trocar o último

componente da solução parcialmente construída por sua próxima opção.

3 O nome do código PGC representa as iniciais dos nomes de seus autores: Penha, Guimarães e Cantaluppi.

Page 23: MINISTÉRIO DA DEFESA EXÉRCITO BRASILEIRO … _err… · A teoria dos grafos propicia agregar um conhecimento alternativo para o problema de erros em observações, dado que um grafo

23

Esta técnica, de acordo com SKIENA e REVILLA (2003), possui algumas

características importantes:

- busca sistemática de todas as possíveis soluções;

- garante que a solução será encontrada, ao enumerar todas as possibilidades;

- garante eficiência, nunca testando uma solução mais de uma vez;

- pode ser otimizada, ao descartar enumerações parciais que não conduzem ao

resultado desejado;

Assim, obtém-se de uma forma resumida a essência da técnica do Backtracking.

Particularmente, deve ser dada atenção para a última característica, observada por

SKIENA e REVILLA (2003), a qual agregará valor à fase de testes do código.

2.4.3. Código “Todos os Caminhos - PGC”

Este é o insumo para o projeto. Possui a lógica do algoritmo backtracking e da

busca em profundidade para a listagem de todos os caminhos. Foi implementado em

linguagem C++. O programa possui três fases principais: leitura de dados de entrada;

procura de caminhos entre dois pontos; e listagem dos caminhos.

A entrada de dados está dividida em linha de controle e os pontos. A linha de

controle é constituída pela quantidade de pontos da rede e pela quantidade de

observações. Na região de registro dos pontos, o formato segue a forma de numeração

dos pontos em duas colunas e cada observação coletada na terceira coluna (figura 2.8).

Após as iterações de busca concluídas, obtém-se a saída do programa no

formato de texto. Essa listagem de caminhos está sendo exibida em tela, porém também

pode ser exibida em arquivo no formato *.txt.

Com o objetivo de melhor visualizar o funcionamento do código, de acordo com

PENHA et alii (2006), é apresentado um fluxograma ilustrativo.(figura 2.8 )

Page 24: MINISTÉRIO DA DEFESA EXÉRCITO BRASILEIRO … _err… · A teoria dos grafos propicia agregar um conhecimento alternativo para o problema de erros em observações, dado que um grafo

24

FIG. 2.8 - Fluxograma da rotina implementada para listagem de todos os caminhos.

2.5. Grandezas Geodésicas Unidimensionais

A Geodésia pode ser dividida em 3 ramos principais: Geodésia Física,

Geométrica e Celeste. Ainda existe um outro ramo que pode ser também citado, que é a

geodinâmica, a qual seria o estudo dos movimentos de componentes da Terra.

Cada ramo possui um determinado objetivo e para que este seja atingido é

necessário que se obtenha conhecimentos específicos para cada um deles, ou seja,

determinação de algumas variáveis, construção de modelos, técnicas observacionais, etc.

Cada parte da geodésia pode ser, de maneira simplista, caracterizada por um conjunto de

produtos, associados a certas grandezas, como: gravidade, coordenadas cartesianas,

altitude ortométrica, altitude geométrica, ondulação geoidal, entre outras.

A obtenção desses produtos também é dependente de observações, ou seja,

valores medidos. Este é o aspecto principal para determinações da precisão e da escolha

de métodos. Para este projeto, o foco está em dados relativos, ou seja, variação das

grandezas unidimensionais obtidas por observações.

A altimetria possui vários métodos para determinação da altitude, dentre os quais

destaca-se o nivelamento geométrico. Na figura 2.9 o nível da luneta apontado

sucessivamente para as miras graduadas postadas em A e B permite leituras V (de vante)

e R (de ré), cuja simples diferença corresponde ao desnível ∆ hi entre os mencionados

pontos.

FIM

E

L

S

E

I≠F

V E

V1 V2 custo

V3 V4 custo

V5 V6 custo

. . . . .

Vn-1Vn custo

Estrutura dos

dados de entrada

Find Path Print Path

Next path

Path size

I

F

T

R

U

E

FOR THEN

Onde: V����nºvértices(pontos), E����nºarestas(observações),

custo���� valores unidimensionais, I����vértice inicial, F����vértice final

FALSE

First Path

Page 25: MINISTÉRIO DA DEFESA EXÉRCITO BRASILEIRO … _err… · A teoria dos grafos propicia agregar um conhecimento alternativo para o problema de erros em observações, dado que um grafo

25

FIG. 2.9 – Nivelamento Geométrico (ABENDE, 2006).

A repetição da operação de nivelamento até a estação N conduz à diferença de

altitudes entre os pontos extremos pela somatória dos desníveis parciais: (GEMAEL,1999)

∑∆=− iAN hhh

A Geodésia Física, por meio da gravimetria, tem por finalidade o estudo do campo

de gravidade, possibilitando, a partir dos seus resultados, aplicações na área da

Geociência como por exemplo, a determinação da forma e dimensões da Terra, a

investigação da crosta terrestre e a prospecção de recursos minerais (IBGE, 2006).

Segundo GEMAEL, 1999, entre os equipamentos de medição adotados pela

gravimetria está o gravímetro. Instrumentos estes que são pequenos, leves e de manejo

simples, não obstante a delicadeza de sua constituição interna, produziram, em termos de

gravimetria, o mesmo impacto que os distanciômetros eletrônicos na geodésia

geométrica. Na figura 2.10 está representada uma implantação de rede gravimétrica de

referência no Paraná, onde os dados foram obtidos por gravímetros.

Page 26: MINISTÉRIO DA DEFESA EXÉRCITO BRASILEIRO … _err… · A teoria dos grafos propicia agregar um conhecimento alternativo para o problema de erros em observações, dado que um grafo

26

FIG. 2.10 – Esquema de implantação de rede gravimétrica (UFSC, 2006).

Atrelados a estes métodos de medição estão as especificações técnicas. Esses

aspectos são de fundamental interesse para qualquer tomada de decisão ou realização

de um projeto específico.

O erro grosseiro, o qual é o fato motivador neste projeto, é inerente a qualquer

método empregado para determinação de uma grandeza unidimensional. Sua detecção

em qualquer observação é essencial para que se obtenha uma precisão que seja

compatível com o método e o aparelho empregado.

Page 27: MINISTÉRIO DA DEFESA EXÉRCITO BRASILEIRO … _err… · A teoria dos grafos propicia agregar um conhecimento alternativo para o problema de erros em observações, dado que um grafo

27

3. TESTES E PGC2

3.1. Testes no PGC

Após os aspectos de desenvolvimento relacionados à rotina PGC, passa-se à

fase de testes para que se possa verificar a robustez do sistema. Para tanto, uma primeira

simulação é relativa ao dimensionamento da rede, fundamental para a aplicação às redes

unidimensionais desejadas, particularmente aos aspectos de extensão e quantidade de

estações e medições das redes que geram um excessivo trabalho computacional do

PGC. Para que não houvesse prejuízos dessa natureza foram feitos diversos testes com

redes regulares e inicialmente pequenas, aumentando gradativamente o seu tamanho.

Foram realizados exemplos inicialmente como os que se seguem na figura 3.1.

FIG. 3.1 – Exemplos de redes regulares: exemplo 1 (com 4 vértices); 2 (com 5 vértices); 3

(com 6 vértices); e exemplo 4 (com 5 vértices), em todas as ligações possíveis da rede.

Coloca-se para estudo os Exemplos 1 (com 4 vértices), 2 (com 5 vértices) e 3

(com 6 vértices) que apresentam a característica de se aumentar um vértice e duas

arestas de um para o outro, para a realização da análise computacional. Enquanto o

exemplo 4 (com 5 vértices) apresenta todas as ligações possíveis em uma rede desta

ordem.

Assim, observa-se inicialmente os exemplos 1, 2 e 3 (apêndice B). Analisando

primeiramente os resultados listados dos caminhos percorridos por esses exemplos, onde

Page 28: MINISTÉRIO DA DEFESA EXÉRCITO BRASILEIRO … _err… · A teoria dos grafos propicia agregar um conhecimento alternativo para o problema de erros em observações, dado que um grafo

28

se acrescenta um vértice e duas arestas. Observa-se um aumento exponencial do

número de caminhos. Nota-se então que: o exemplo 1 (com as leituras 1 - 2, 1 - 3, 1 - 4,

2 - 3, 2 - 4, 3 - 4) apresenta 19 caminhos percorridos; o exemplo 2 (com as leituras 1 - 2,

1 - 3, 1 - 4, 1 - 5, 2 - 3, 2 - 4, 2 - 5, 3 - 4, 3 - 5, 4 - 5) apresenta 48 caminhos percorridos e

o exemplo 3 (com as leituras 1 – 2, 1 – 3, 1 – 4, 1 – 5, 1 – 6, 2 – 3, 2 – 4, 2 – 5, 2 – 6,

3 – 4, 3 – 5, 3 – 6, 4 – 5, 4 – 6, 5 - 6) apresenta 109 caminhos percorridos. Como pode

ser visto na tabela 3.1 a seguir:

TAB. 3.1 - Relação entre a quantidade de vértices e os caminhos por eles gerados.

Vértices Caminhos gerados

adicionando-se duas arestas

3 6

4 19

5 48

6 109

7 223

. . . . . .

42 ≈ 7 x 10 16

. . . . . .

64.000 ≈49910

Acrescentando a isso outros exemplos processados (constantes no apêndice C),

mas com as mesmas características, tem-se um gráfico que representa o aumento do

trabalho computacional ao se aumentar um vértice adicional com duas arestas, como

pode ser visto na figura 3.2:

Page 29: MINISTÉRIO DA DEFESA EXÉRCITO BRASILEIRO … _err… · A teoria dos grafos propicia agregar um conhecimento alternativo para o problema de erros em observações, dado que um grafo

29

Relação nº de Vértices X Caminhos Gerados

3 4 5 6 76 1948

109

223y = 2,8516e0,8978x

0

100

200

300

Quantidade de Vértices (x)

To

tal d

e C

amin

ho

s G

erad

os

(y)

Vértices 3 4 5 6 7

Caminhos 6 19 48 109 223

1 2 3 4 5

FIG. 3.2 – Gráfico da relação entre o número de vértices e a quantidade de caminhos

gerados no PGC.

Note que ajustando-se o resultado desses pontos (incluindo os resultados em

anexo acima de 6 vértices), encontra-se uma função exponencial na forma:

xey

8978,08516,2=

Isso permite compreender a dificuldade ao se trabalhar com uma rede real que

pode chegar à ordem de 64.000 pontos, gerando aproximadamente 49910 caminhos

percorridos. Aumentando gradativamente o tamanho da rede, foi possível verificar que

para uma rede de pouco mais de 40 pontos, da FIG 3.3, houve limitação computacional.

Page 30: MINISTÉRIO DA DEFESA EXÉRCITO BRASILEIRO … _err… · A teoria dos grafos propicia agregar um conhecimento alternativo para o problema de erros em observações, dado que um grafo

30

FIG. 3.3 – Exemplo genérico de rede com 42 vértices.

Houve um erro no programa PGC que gerou falhas na listagem acima desse

valor. Isso porque havia uma limitação de hardware no processamento, havendo assim a

sua interrupção. Para uma rede como essa, de 42 pontos, teria-se aproximadamente 7 x

10 16 caminhos listados.

Outro aspecto fundamental para o presente projeto foi verificar a capacidade do

código para redes com todas as suas ligações possíveis entre os vértices. Nesse sentido,

no exemplo 4, figura 3.1, buscou-se o maior tamanho possível para uma rede e verificar

se o programa rodava normalmente, não havendo qualquer complicação. Um dos

exemplos verificados foi o de 5 vértices.

Exemplo 4: [ 1 --> 2 ] 1 2 1 3 2 1 3 4 2 1 3 4 5 2 1 3 5 2 1 3 5 4 2 1 4 2 1 4 3 2 1 4 3 5 2 1 4 5 2

1 4 5 3 2 1 5 2 1 5 3 2 1 5 3 4 2 1 5 4 2 1 5 4 3 2 [ 1 --> 3 ] 1 2 3 1 2 4 3 1 2 4 5 3 1 2 5 3

1 2 5 4 3 1 3 1 4 2 3 1 4 2 5 3 1 4 3 1 4 5 2 3 1 4 5 3 1 5 2 3 1 5 2 4 3 1 5 3 1 5 4 2 3 1 5 4 3

[ 1 --> 4 ] 1 2 3 4 1 2 3 5 4 1 2 4 1 2 5 3 4 1 2 5 4 1 3 2 4 1 3 2 5 4 1 3 4 1 3 5 2 4 1 3 5 4

Page 31: MINISTÉRIO DA DEFESA EXÉRCITO BRASILEIRO … _err… · A teoria dos grafos propicia agregar um conhecimento alternativo para o problema de erros em observações, dado que um grafo

31

1 4 1 5 2 3 4 1 5 2 4 1 5 3 2 4 1 5 3 4 1 5 4 [ 1 --> 5 ] 1 2 3 4 5 1 2 3 5 1 2 4 3 5 1 2 4 5 1 2 5 1 3 2 4 5 1 3 2 5 1 3 4 2 5 1 3 4 5 1 3 5 1 4 2 3 5 1 4 2 5 1 4 3 2 5 1 4 3 5 1 4 5 1 5 [ 2 --> 3 ] 2 1 3 2 1 4 3 2 1 4 5 3 2 1 5 3 2 1 5 4 3 2 3 2 4 1 3

2 4 1 5 3 2 4 3 2 4 5 1 3 2 4 5 3 2 5 1 3 2 5 1 4 3 2 5 3 2 5 4 1 3 2 5 4 3 [ 2 --> 4 ] 2 1 3 4 2 1 3 5 4 2 1 4 2 1 5 3 4 2 1 5 4 2 3 1 4 2 3 1 5 4 2 3 4 2 3 5 1 4 2 3 5 4 2 4 2 5 1 3 4 2 5 1 4 2 5 3 1 4 2 5 3 4 2 5 4 [ 2 --> 5 ] 2 1 3 4 5 2 1 3 5 2 1 4 3 5 2 1 4 5

2 1 5 2 3 1 4 5 2 3 1 5 2 3 4 1 5 2 3 4 5 2 3 5 2 4 1 3 5 2 4 1 5 2 4 3 1 5 2 4 3 5 2 4 5 2 5 [ 3 --> 4 ] 3 1 2 4 3 1 2 5 4 3 1 4 3 1 5 2 4 3 1 5 4 3 2 1 4 3 2 1 5 4 3 2 4 3 2 5 1 4 3 2 5 4 3 4 3 5 1 2 4 3 5 1 4 3 5 2 1 4 3 5 2 4 3 5 4 [ 3 --> 5 ] 3 1 2 4 5

3 1 2 5 3 1 4 2 5 3 1 4 5 3 1 5 3 2 1 4 5 3 2 1 5 3 2 4 1 5 3 2 4 5 3 2 5 3 4 1 2 5 3 4 1 5 3 4 2 1 5 3 4 2 5 3 4 5 3 5 [ 4 --> 5 ] 4 1 2 3 5 4 1 2 5 4 1 3 2 5 4 1 3 5 4 1 5 4 2 1 3 5 4 2 1 5 4 2 3 1 5 4 2 3 5 4 2 5 4 3 1 2 5 4 3 1 5 4 3 2 1 5 4 3 2 5 4 3 5 4 5

Na rede com 5 vértices (figura 3.1), que explora todas as ligações possíveis em

uma rede desta ordem, nota-se que são gerados 160 caminhos. Portanto, se comparado

com o exemplo 2 com a mesma quantidade de vértices, tem-se um aumento de 112

caminhos. Isso indica que, como era de se esperar, essa função gerada (Eq. 2)

subestima os valores (dado que ela foi obtida com o mínimo acréscimo possível,

adicionando-se apenas um vértice e duas arestas), o que corrobora a tese de excesso de

esforço computacional.

Realizando esses testes, permitiu-se identificar e remover defeitos mais cedo e de

forma mais eficaz. O estudo mostra, portanto, que embora talvez não seja possível

remover todos os erros, boa parte dos custos computacionais poderiam ser eliminados

caso se utilizasse uma infra-estrutura computacional melhor, aplicando a técnica de

“dividir para conquistar” (MUHAMMAD, 2007). Gerar todos os caminhos de todas as

Page 32: MINISTÉRIO DA DEFESA EXÉRCITO BRASILEIRO … _err… · A teoria dos grafos propicia agregar um conhecimento alternativo para o problema de erros em observações, dado que um grafo

32

combinações é desnecessário e cria redundância tendenciosa, já que caminhos serão

combinações lineares de outros. Algumas combinações serão necessárias no suporte à

identificação de meios grosseiros, mas certamente não todo o conjunto. Ou seja, é

necessário que obtenha-se informações úteis para detecção do erro ao invés de

excessiva quantidade sem utilidade para o objetivo do projeto.

3.2. Novo Código “Todos os Caminhos – PGC2”

O programa PGC2 é composto por duas rotinas: PGC2-paths e PGC2-cycles.

Este novo programa foi gerado como refinamento ao PGC. Um código mais

simples e otimizado traz alguns pontos importantes:

- arquivo de saída de dados modificado, em relação ao programa PGC;

- possui a mesma estrutura de dados para o arquivo de entrada que o programa

PGC;

- possui uma classe Grafo e métodos de manipulação do grafo;

- existe uma limitação de 1000 vértices;

- possibilidade de escolha de todos os caminhos em um par ou em vários pares

de pontos.

O arquivo de entrada possui a mesma estrutura que o programa PGC, porém as

rotinas do PGC2 possibilitam o usuário poder escolher qualquer nome para o arquivo

texto de entrada. Anteriormente, todo arquivo de entrada precisava se chamar de

grafo.txt.

Para o arquivo de saída ( figura 3.4), a estrutura foi modificada com o objetivo de

servir como entrada para uma rotina de análise dos caminhos.

Page 33: MINISTÉRIO DA DEFESA EXÉRCITO BRASILEIRO … _err… · A teoria dos grafos propicia agregar um conhecimento alternativo para o problema de erros em observações, dado que um grafo

33

FIG. 3.4 – Modelo do Arquivo de saída do PGC2.

Esta estrutura de saída é válida para a rotina PGC2-paths, sendo que a saída do

PGC2-cycles possui uma estrutura análoga. Somente com a ressalva de que este último

lista caminhos saindo e chegando ao mesmo ponto, conseqüentemente, gerando ciclos.

A rotina PGC2-paths permite que o usuário possa escolher um par de pontos,

dentro da rede, para listagem dos caminhos, como também a escolha de todos os pares.

A rotina PGC2-cycles lista caminhos em ciclos, sendo uma ferramenta que irá auxiliar na

análise dos caminhos.

O arquivo de saída já realiza a soma das variações das grandezas

unidimensionais ( ∆ g, ∆ h, etc.). Este fato também é importante para a identificação do

erro grosseiro, já que a soma irá mostrar a discrepância dada por um ou mais valores com

erros grosseiros. Estes valores de somas, bem como os valores de variações coletadas

no campo, serão insumos para a rotina de análise dos caminhos.

O motivo do programa PGC2 ser simples e otimizado baseia-se no seu código,

tanto na rotina PGC2-paths quanto PGC2-cycles. Os códigos das rotinas possuem

poucas linhas, somente uma classe e alguns métodos. O algoritmo do programa é

retratado no apêndice G, sendo que o código do programa está escrito em C++, separado

em duas rotinas e compilado no sistema operacional linux pelo compilador g++ (GNU

C++).

8

P1 P2

2 Σ∆ | P1 P2

4 Σ∆ | P1 P4 P5 P2

6 Σ∆ | P1 P4 P5 P6 P3 P2

5 Σ∆ | P1 P4 P5 P3 P2

8 Σ∆ | P1 P4 P5 P7 P8 P6 P3 P2

-1 0 |

Listagem de todos os caminhos entre dois pontos da rede.

No início do arquivo existirá a quantidade de pontos da rede.

Indica o fim para a listagem de cada par de pontos.

Quantidade de pontos percorridos em cada caminho.

Somatório dos valores das variações de grandezas unidimensionais e o caminho listado.

Page 34: MINISTÉRIO DA DEFESA EXÉRCITO BRASILEIRO … _err… · A teoria dos grafos propicia agregar um conhecimento alternativo para o problema de erros em observações, dado que um grafo

34

A rotina PGC2-cycles baseia-se no mesmo algoritmo, somente diferenciando no

fato de não existir vértice final diferente do inicial. Outro detalhe é o fato do arquivo de

saída possuir valores “-1 0” (indicando fim de listagem entre dois vértices) e “-1 -1”

(indicando o final do arquivo). É um fato simples, mas computacionalmente é útil para a

rotina de análise dos caminhos.

Outro detalhe em relação ao código está no fato de que mostra uma restrição de

1000 vértices, mas este valor pode ser alterado no próprio código. Surge a partir desse

momento um problema computacional, que é o gasto de processamento para realizar a

busca e listagem dos caminhos.

O processamento passa a ser bastante exigido quando a rede inserida passa a

ter uma quantidade acima ou da ordem de 1000 pontos. O projeto não irá abordar este

tema de processamento, somente destaca-se sua relevância na modelagem e listagem de

caminhos.

De acordo com LEME (2006), uma sugestão para possibilitar uma solução a esse

gasto de processamento seria realizar a busca não na rede inteira ao mesmo tempo, e

sim por regiões. A busca seria realizada para cada região até completar a rede. E em

cada região poderia ter níveis de busca, chamados de camadas, para modelagem e

listagem de caminhos.

Page 35: MINISTÉRIO DA DEFESA EXÉRCITO BRASILEIRO … _err… · A teoria dos grafos propicia agregar um conhecimento alternativo para o problema de erros em observações, dado que um grafo

35

4. APLICAÇÃO

4.1. Simulação

1) Uma rede (figura 4.1) é sugerida, simulando os valores de desníveis coletados

em campo:

FIG. 4.1 – Exemplo de Rede Simulada.

2) Para esta rede, o arquivo de entrada terá a estrutura da figura 4.2:

FIG. 4.2 – Estrutura arquivo de entrada.

3) Utilizando o PGC2-paths, o arquivo de saída terá a seguinte estrutura resumida

na figura 4.3:

FIG. 4.3 – Parte do Arquivo de saída do PGC2-paths.

∆∆∆∆h=+90m

∆∆∆∆h=-10m

∆∆∆∆h=+32m ∆∆∆∆h=-10m

∆∆∆∆h=-50m

∆∆∆∆h=+52m

∆∆∆∆h=-20m

∆∆∆∆h=-20m

6 8

1 2 -50

1 3 -90

2 4 -20

3 4 20

3 5 10

5 4 10

2 6 -52

4 6 -32

6

1 2

2 -50 | 1 2

4 -50 | 1 3 4 2

5 -50 | 1 3 4 6 2

5 -50 | 1 3 5 4 2

6 -50 | 1 3 5 4 6 2

-1 0 |

1 3

4 -90 | 1 2 4 3

5 -90 | 1 2 4 5 3

5 -90 | 1 2 6 4 3

6 -90 | 1 2 6 4 5 3

2 -90 | 1 3

-1 0 |

1 4

3 -70 | 1 2 4

4 -70 | 1 2 6 4

3 -70 | 1 3 4

4 -70 | 1 3 5 4

-1 0 |

Page 36: MINISTÉRIO DA DEFESA EXÉRCITO BRASILEIRO … _err… · A teoria dos grafos propicia agregar um conhecimento alternativo para o problema de erros em observações, dado que um grafo

36

Neste caso, todos os caminhos “fecharam”, ou seja, o valor do desnível coletado

e o somatório de desníveis foram iguais. É uma rede sem erros grosseiros.

4)A rede coletada possui um erro grosseiro, como por exemplo, o sinal positivo do

desnível 5�4 foi trocado pelo negativo (figura 4.4).

FIG. 4.4 – Estrutura arquivo de entrada com erro.

5) Utilizando o PGC2-paths, o arquivo de saída terá a estrutura da figura 4.5:

6

1 2

2 -50 | 1 2

4 -50 | 1 3 4 2

5 -50 | 1 3 4 6 2

5 -70 | 1 3 5 4 2

6 -70 | 1 3 5 4 6 2

-1 0 |

1 3

4 -90 | 1 2 4 3

5 -70 | 1 2 4 5 3

5 -90 | 1 2 6 4 3

6 -70 | 1 2 6 4 5 3

2 -90 | 1 3

-1 0 |

1 4

3 -70 | 1 2 4

4 -70 | 1 2 6 4

3 -70 | 1 3 4

4 -90 | 1 3 5 4

-1 0 |

1 5

5 -80 | 1 2 4 3 5

4 -60 | 1 2 4 5

6 -80 | 1 2 6 4 3 5

5 -60 | 1 2 6 4 5

4 -60 | 1 3 4 5

3 -80 | 1 3 5

-1 0 |

1 6

4 -102 | 1 2 4 6

3 -102 | 1 2 6

5 -102 | 1 3 4 2 6

4 -102 | 1 3 4 6

6 -122 | 1 3 5 4 2 6

5 -122 | 1 3 5 4 6

-1 0 |

2 3

3 -40 | 2 1 3

3 -40 | 2 4 3

4 -20 | 2 4 5 3

4 -40 | 2 6 4 3

5 -20 | 2 6 4 5 3

-1 0 |

2 4

4 -20 | 2 1 3 4

5 -40 | 2 1 3 5 4

2 -20 | 2 4

3 -20 | 2 6 4

-1 0 |

2 5

5 -10 | 2 1 3 4 5

4 -30 | 2 1 3 5

4 -30 | 2 4 3 5

3 -10 | 2 4 5

5 -30 | 2 6 4 3 5

4 -10 | 2 6 4 5

-1 0 |

2 6

5 -52 | 2 1 3 4 6

6 -72 | 2 1 3 5 4 6

3 -52 | 2 4 6

2 -52 | 2 6

-1 0 |

3 4

4 20 | 3 1 2 4

5 20 | 3 1 2 6 4

2 20 | 3 4

3 0 | 3 5 4

-1 0 |

3 5

5 30 | 3 1 2 4 5

6 30 | 3 1 2 6 4 5

3 30 | 3 4 5

2 10 | 3 5

-1 0 |

3 6

5 -12 | 3 1 2 4 6

4 -12 | 3 1 2 6

4 -12 | 3 4 2 6

3 -12 | 3 4 6

5 -32 | 3 5 4 2 6

4 -32 | 3 5 4 6

-1 0 |

6 8

1 2 -50

1 3 -90

2 4 -20

3 4 20

3 5 10

5 4 -10

2 6 -52

4 6 -32

Page 37: MINISTÉRIO DA DEFESA EXÉRCITO BRASILEIRO … _err… · A teoria dos grafos propicia agregar um conhecimento alternativo para o problema de erros em observações, dado que um grafo

37

4 5

5 -10 | 4 2 1 3 5

3 -10 | 4 3 5

2 10 | 4 5

6 -10 | 4 6 2 1 3 5

-1 0 |

4 6

3 -32 | 4 2 6

5 -32 | 4 3 1 2 6

6 -12 | 4 5 3 1 2 6

2 -32 | 4 6

-1 0 |

5 6

6 -22 | 5 3 1 2 4 6

5 -22 | 5 3 1 2 6

5 -22 | 5 3 4 2 6

4 -22 | 5 3 4 6

4 -42 | 5 4 2 6

6 -42 | 5 4 3 1 2 6

3 -42 | 5 4 6

-1 0 |

-1 -1

FIG. 4.5 – Arquivo de saída de PGC2-paths.

6) Utilizando o PGC2-cycles, o arquivo de saída terá a estrutura da figura 4.6:

6

1

5 0 | 1 2 4 3 1

6 20 | 1 2 4 5 3 1

6 0 | 1 2 6 4 3 1

7 20 | 1 2 6 4 5 3 1

5 0 | 1 3 4 2 1

6 0 | 1 3 4 6 2 1

6 -20 | 1 3 5 4 2 1

7 -20 | 1 3 5 4 6 2 1

-1 0 |

2

5 0 | 2 1 3 4 2

6 0 | 2 1 3 4 6 2

6 -20 | 2 1 3 5 4 2

7 -20 | 2 1 3 5 4 6 2

5 0 | 2 4 3 1 2

6 20 | 2 4 5 3 1 2

4 0 | 2 4 6 2

4 0 | 2 6 4 2

6 0 | 2 6 4 3 1 2

7 20 | 2 6 4 5 3 1 2

-1 0 |

3

5 0 | 3 1 2 4 3

6 20 | 3 1 2 4 5 3

6 0 | 3 1 2 6 4 3

7 20 | 3 1 2 6 4 5 3

5 0 | 3 4 2 1 3

4 20 | 3 4 5 3

6 0 | 3 4 6 2 1 3

6 -20 | 3 5 4 2 1 3

4 -20 | 3 5 4 3

7 -20 | 3 5 4 6 2 1 3

-1 0 |

4

5 0 | 4 2 1 3 4

6 -20 | 4 2 1 3 5 4

4 0 | 4 2 6 4

5 0 | 4 3 1 2 4

6 0 | 4 3 1 2 6 4

4 -20 | 4 3 5 4

6 20 | 4 5 3 1 2 4

7 20 | 4 5 3 1 2 6 4

4 20 | 4 5 3 4

6 0 | 4 6 2 1 3 4

7 -20 | 4 6 2 1 3 5 4

4 0 | 4 6 2 4

-1 0 |

5

6 20 | 5 3 1 2 4 5

7 20 | 5 3 1 2 6 4 5

4 20 | 5 3 4 5

6 -20 | 5 4 2 1 3 5

4 -20 | 5 4 3 5

7 -20 | 5 4 6 2 1 3 5

-1 0 |

6

6 0 | 6 2 1 3 4 6

7 -20 | 6 2 1 3 5 4 6

4 0 | 6 2 4 6

4 0 | 6 4 2 6

6 0 | 6 4 3 1 2 6

7 20 | 6 4 5 3 1 2 6

-1 0 |

-1

FIG. 4.6 – Arquivo de saída de PGC2-cycles.

Analisando qualitativamente o arquivo de saída PGC2-cycles, obtém-se a

informação que todos os caminhos que os desníveis 4�5 e 5�3 estão incluídos existe

um erro de “fechamento”, ou seja, o somatório diferente de zero.

Page 38: MINISTÉRIO DA DEFESA EXÉRCITO BRASILEIRO … _err… · A teoria dos grafos propicia agregar um conhecimento alternativo para o problema de erros em observações, dado que um grafo

38

A metodologia utilizada para esta análise qualitativa está descrita a seguir :

- Dentre todos os caminhos listados pelo PGC2-cycles por um determinado

vértice, os caminhos com somatórios iguais a zero ou próximos deste, dentro de uma

tolerância para os dados, são considerados “corretos”, porém ainda podem conter erros, e

os dados destes caminhos terão uma confiança maior do que aqueles caminhos com

somatório diferente de zero.

- Comparando com os outros caminhos, os dados serão checados até que

identifique ou então restrinja a possibilidade de erro em alguma medição.

Esta simulação é um caso aonde não se chega com a certeza do valor com o erro

grosseiro com o PGC2 - cycles. Devido à existência de um ponto (na simulação é o ponto

5 da figura 4.1) que na teoria dos grafos não é considerado um nó. Neste caso é possível

somente restringir a área de procura. Porém, a retirada de valores de entrada e a

utilização do PGC2 - paths identificam a medição com erro grosseiro. Isto pode ser

constatado na segunda simulação.

A troca de sinal realizada na simulação é um exemplo de erro grosseiro, porém

existem muitos outros casos encontrados em outras simulações: os erros grosseiros se

compensando, erros em diferentes ordens de grandeza (como por exemplo: um erro na

casa do centímetro e outro na casa do milímetro), valores de variações das grandezas

unidimensionais trocados no momento do registro, etc.

A figura 4.7 retrata a segunda simulação, com os dados em metros, feita com

intuito de demonstrar a metodologia para a análise qualitativa descrita acima.

8 12

1 2 +0.3

2 3 +0.5

1 4 +0.1

2 5 +0.3

3 6 +0.4

4 5 +0.5

5 6 +0.6

1 5 +0.6

5 3 +0.2

5 7 +0.1

6 8 +0.2

7 8 +0.3

FIG. 4.7 – Rede e dados de entrada.

Utilizando o programa PGC2 – cycles são gerados os seguintes caminhos na figura

4.8, selecionando o ponto 2 :

Page 39: MINISTÉRIO DA DEFESA EXÉRCITO BRASILEIRO … _err… · A teoria dos grafos propicia agregar um conhecimento alternativo para o problema de erros em observações, dado que um grafo

39

8

2

5 5.55112e-17 | 2 1 4 5 2

7 0 | 2 1 4 5 6 3 2

6 2.22045e-16 | 2 1 4 5 3 2

9 -0.4 | 2 1 4 5 7 8 6 3 2

4 3.88578e-16 | 2 1 5 2

6 3.33067e-16 | 2 1 5 6 3 2

5 4.44089e-16 | 2 1 5 3 2

8 -0.4 | 2 1 5 7 8 6 3 2

5 7.21645e-16 | 2 3 6 5 2

7 7.21645e-16 | 2 3 6 5 4 1 2

6 7.21645e-16 | 2 3 6 5 1 2

7 0.4 | 2 3 6 8 7 5 2

9 0.4 | 2 3 6 8 7 5 4 1 2

8 0.4 | 2 3 6 8 7 5 1 2

4 5.55112e-16 | 2 3 5 2

6 4.996e-16 | 2 3 5 4 1 2

5 6.10623e-16 | 2 3 5 1 2

5 6.10623e-16 | 2 5 4 1 2

5 5.55112e-16 | 2 5 6 3 2

4 6.10623e-16 | 2 5 1 2

4 6.66134e-16 | 2 5 3 2

7 -0.4 | 2 5 7 8 6 3 2

-1 0 |

FIG. 4.8 – Caminhos gerados pelo PGC2 – cycles.

Os caminhos que resultam em zero ou próximo deste são “descartados”, ou seja,

recebem uma confiança maior em seus dados. Partindo deste princípio, as medições

1�2, 2�3, 1�4, 2�5, 3�6, 4�5, 5�6, 1�5, 5�3 estariam sem erros grosseiros.

Então o erro poderia estar nas medições 5�7, 6�8, 7�8.

Usando somente o cycles não será possível descobrir o erro, apenas restringir as

possibilidades para três medições.

A partir disto pode-se utilizar o PGC2 – paths para identificar qual das três

medições estaria com erro grosseiro. Se a medida com erro grosseiro for retirada da rede

e o PGC2 – paths for utilizado, todos os caminhos “fecharão” com mesmo valor ou

próximo deste.

Portanto, retira-se a medição 7�8 e o programa PGC2 – paths é utilizado,

obtendo como resposta o seguinte resultado descrito na figura 4.9.

8

1 2

2 0.3 | 1 2

4 0.3 | 1 4 5 2

6 0.3 | 1 4 5 6 3 2

5 0.3 | 1 4 5 3 2

3 0.3 | 1 5 2

1 3

3 0.8 | 1 2 3

5 0.8 | 1 2 5 6 3

4 0.8 | 1 2 5 3

5 0.8 | 1 4 5 2 3

5 0.8 | 1 4 5 6 3

4 0.8 | 1 4 5 3

4 0.8 | 1 5 2 3

1 4

6 0.1 | 1 2 3 6 5 4

5 0.1 | 1 2 3 5 4

4 0.1 | 1 2 5 4

2 0.1 | 1 4

3 0.1 | 1 5 4

-1 0 |

Page 40: MINISTÉRIO DA DEFESA EXÉRCITO BRASILEIRO … _err… · A teoria dos grafos propicia agregar um conhecimento alternativo para o problema de erros em observações, dado que um grafo

40

5 0.3 | 1 5 6 3 2

4 0.3 | 1 5 3 2

-1 0 |

4 0.8 | 1 5 6 3

3 0.8 | 1 5 3

-1 0 |

1 5

5 0.6 | 1 2 3 6 5

4 0.6 | 1 2 3 5

3 0.6 | 1 2 5

3 0.6 | 1 4 5

2 0.6 | 1 5

-1 0 |

1 6

4 1.2 | 1 2 3 6

5 1.2 | 1 2 3 5 6

4 1.2 | 1 2 5 6

5 1.2 | 1 2 5 3 6

6 1.2 | 1 4 5 2 3 6

4 1.2 | 1 4 5 6

5 1.2 | 1 4 5 3 6

5 1.2 | 1 5 2 3 6

3 1.2 | 1 5 6

4 1.2 | 1 5 3 6

-1 0 |

1 7

6 0.8 | 1 2 3 6 5 7

6 0.8 | 1 2 3 6 5 7

5 0.8 | 1 2 3 5 7

5 0.8 | 1 2 3 5 7

4 0.8 | 1 2 5 7

4 0.8 | 1 2 5 7

4 0.8 | 1 4 5 7

4 0.8 | 1 4 5 7

3 0.8 | 1 5 7

3 0.8 | 1 5 7

-1 0 |

1 8

5 1.4 | 1 2 3 6 8

6 1.4 | 1 2 3 5 6 8

5 1.4 | 1 2 5 6 8

6 1.4 | 1 2 5 3 6 8

7 1.4 | 1 4 5 2 3 6 8

5 1.4 | 1 4 5 6 8

6 1.4 | 1 4 5 3 6 8

6 1.4 | 1 5 2 3 6 8

4 1.4 | 1 5 6 8

5 1.4 | 1 5 3 6 8

-1 0 |

2 3

6 0.5 | 2 1 4 5 6 3

5 0.5 | 2 1 4 5 3

5 0.5 | 2 1 5 6 3

4 0.5 | 2 1 5 3

2 0.5 | 2 3

4 0.5 | 2 5 6 3

3 0.5 | 2 5 3

-1 0 |

2 4

3 -0.2 | 2 1 4

4 -0.2 | 2 1 5 4

5 -0.2 | 2 3 6 5 4

6 -0.2 | 2 3 6 5 1 4

4 -0.2 | 2 3 5 4

5 -0.2 | 2 3 5 1 4

3 -0.2 | 2 5 4

4 -0.2 | 2 5 1 4

-1 0 |

2 5

4 0.3 | 2 1 4 5

3 0.3 | 2 1 5

4 0.3 | 2 3 6 5

3 0.3 | 2 3 5

2 0.3 | 2 5

-1 0 |

2 6

5 0.9 | 2 1 4 5 6

6 0.9 | 2 1 4 5 3 6

4 0.9 | 2 1 5 6

5 0.9 | 2 1 5 3 6

3 0.9 | 2 3 6

4 0.9 | 2 3 5 6

3 0.9 | 2 5 6

4 0.9 | 2 5 3 6

-1 0 |

2 7

5 0.5 | 2 1 4 5 7

5 0.5 | 2 1 4 5 7

4 0.5 | 2 1 5 7

4 0.5 | 2 1 5 7

5 0.5 | 2 3 6 5 7

5 0.5 | 2 3 6 5 7

4 0.5 | 2 3 5 7

4 0.5 | 2 3 5 7

3 0.5 | 2 5 7

3 0.5 | 2 5 7

-1 0 |

2 8

6 1.1 | 2 1 4 5 6 8

7 1.1 | 2 1 4 5 3 6 8

5 1.1 | 2 1 5 6 8

6 1.1 | 2 1 5 3 6 8

4 1.1 | 2 3 6 8

5 1.1 | 2 3 5 6 8

4 1.1 | 2 5 6 8

5 1.1 | 2 5 3 6 8

-1 0 |

3 4

4 -0.7 | 3 2 1 4

5 -0.7 | 3 2 1 5 4

4 -0.7 | 3 2 5 4

5 -0.7 | 3 2 5 1 4

6 -0.7 | 3 6 5 2 1 4

4 -0.7 | 3 6 5 4

5 -0.7 | 3 6 5 1 4

5 -0.7 | 3 5 2 1 4

3 -0.7 | 3 5 4

4 -0.7 | 3 5 1 4

-1 0 |

3 5

5 -0.2 | 3 2 1 4 5

4 -0.2 | 3 2 1 5

3 -0.2 | 3 2 5

3 -0.2 | 3 6 5

2 -0.2 | 3 5

-1 0 |

3 6

6 0.4 | 3 2 1 4 5 6

5 0.4 | 3 2 1 5 6

3 7

6 -1.11022e-16 | 3 2 1 4

5 7

3 8

7 0.6 | 3 2 1 4 5 6 8

6 0.6 | 3 2 1 5 6 8

Page 41: MINISTÉRIO DA DEFESA EXÉRCITO BRASILEIRO … _err… · A teoria dos grafos propicia agregar um conhecimento alternativo para o problema de erros em observações, dado que um grafo

41

4 0.4 | 3 2 5 6

2 0.4 | 3 6

3 0.4 | 3 5 6

-1 0 |

6 -1.11022e-16 | 3 2 1 4

5 7

5 -1.11022e-16 | 3 2 1 5

7

5 -1.11022e-16 | 3 2 1 5

7

4 1.66533e-16 | 3 2 5 7

4 1.66533e-16 | 3 2 5 7

4 1.66533e-16 | 3 6 5 7

4 1.66533e-16 | 3 6 5 7

3 1.66533e-16 | 3 5 7

3 1.66533e-16 | 3 5 7

-1 0 |

5 0.6 | 3 2 5 6 8

3 0.6 | 3 6 8

4 0.6 | 3 5 6 8

-1 0 |

4 5

6 0.5 | 4 1 2 3 6 5

5 0.5 | 4 1 2 3 5

4 0.5 | 4 1 2 5

3 0.5 | 4 1 5

2 0.5 | 4 5

-1 0 |

4 6

5 1.1 | 4 1 2 3 6

6 1.1 | 4 1 2 3 5 6

5 1.1 | 4 1 2 5 6

6 1.1 | 4 1 2 5 3 6

6 1.1 | 4 1 5 2 3 6

4 1.1 | 4 1 5 6

5 1.1 | 4 1 5 3 6

5 1.1 | 4 5 2 3 6

3 1.1 | 4 5 6

6 1.1 | 4 5 1 2 3 6

4 1.1 | 4 5 3 6

-1 0 |

4 7

7 0.7 | 4 1 2 3 6 5 7

7 0.7 | 4 1 2 3 6 5 7

6 0.7 | 4 1 2 3 5 7

6 0.7 | 4 1 2 3 5 7

5 0.7 | 4 1 2 5 7

5 0.7 | 4 1 2 5 7

4 0.7 | 4 1 5 7

4 0.7 | 4 1 5 7

3 0.7 | 4 5 7

3 0.7 | 4 5 7

-1 0 |

4 8

6 1.3 | 4 1 2 3 6 8

7 1.3 | 4 1 2 3 5 6 8

6 1.3 | 4 1 2 5 6 8

7 1.3 | 4 1 2 5 3 6 8

7 1.3 | 4 1 5 2 3 6 8

5 1.3 | 4 1 5 6 8

6 1.3 | 4 1 5 3 6 8

6 1.3 | 4 5 2 3 6 8

4 1.3 | 4 5 6 8

7 1.3 | 4 5 1 2 3 6 8

5 1.3 | 4 5 3 6 8

-1 0 |

5 6

4 0.6 | 5 2 3 6

6 0.6 | 5 4 1 2 3 6

2 0.6 | 5 6

5 0.6 | 5 1 2 3 6

3 0.6 | 5 3 6

-1 0 |

5 7

2 0.2 | 5 7

-1 0 |

5 8

5 0.8 | 5 2 3 6 8

7 0.8 | 5 4 1 2 3 6 8

3 0.8 | 5 6 8

6 0.8 | 5 1 2 3 6 8

4 0.8 | 5 3 6 8

-1 0 |

6 7

7 -0.4 | 6 3 2 1 4 5 7

7 -0.4 | 6 3 2 1 4 5 7

6 -0.4 | 6 3 2 1 5 7

6 -0.4 | 6 3 2 1 5 7

5 -0.4 | 6 3 2 5 7

5 -0.4 | 6 3 2 5 7

4 -0.4 | 6 3 5 7

4 -0.4 | 6 3 5 7

3 -0.4 | 6 5 7

3 -0.4 | 6 5 7

-1 0 |

6 8

2 0.2 | 6 8

-1 0 |

7 8

6 0.6 | 7 5 2 3 6 8

8 0.6 | 7 5 4 1 2 3 6 8

4 0.6 | 7 5 6 8

7 0.6 | 7 5 1 2 3 6 8

5 0.6 | 7 5 3 6 8

6 0.6 | 7 5 2 3 6 8

Page 42: MINISTÉRIO DA DEFESA EXÉRCITO BRASILEIRO … _err… · A teoria dos grafos propicia agregar um conhecimento alternativo para o problema de erros em observações, dado que um grafo

42

8 0.6 | 7 5 4 1 2 3 6 8

4 0.6 | 7 5 6 8

7 0.6 | 7 5 1 2 3 6 8

5 0.6 | 7 5 3 6 8

-1 0 |

-1 -1

FIG. 4.9 – Saída PGC2 – paths sem a medição 7�8.

Descobre-se que o valor incorreto era da medição 7�8. Neste caso é possível até

mesmo inferir o valor desta, pois todo o restante está correto (ainda podendo haver erro

se compensando), como é mostrado na figura 4.10. Esta inferência foi realizada atribuindo

um valor qualquer a um ponto e seguindo a orientação da rede.

FIG. 4.10 – Inferência do valor na medição 7�8.

Para que esta inferência seja realizada é necessária a utilização da equação 3,

onde Px e Py são valores de pontos x e y da rede e ∆ é medição da variação de um ponto

para outro.

∆±= yx PP

A partir destas simulações o projeto apresenta uma metodologia para

identificação dos erros grosseiros em dados geodésicos unidimensionais. Esta baseia-se

nos seguintes passos:

1º) Utiliza-se o PGC2 - cycles sobre a rede;

2º) Primeira análise dos resultados;

3º) Definição de testes adicionais para utilizar o PGC2 - paths;

Page 43: MINISTÉRIO DA DEFESA EXÉRCITO BRASILEIRO … _err… · A teoria dos grafos propicia agregar um conhecimento alternativo para o problema de erros em observações, dado que um grafo

43

4º) Utiliza-se o PGC2 - paths;

5º) Análise dos resultados;

6º) Tomada de providência.

Um ponto importante, ocorrido também nos testes, é a listagem entre dois pontos

que possuem poucas observações coletadas e que não estejam ligados por uma

observação direta. A maior quantidade de caminhos (figura 4.11) será gerada por estes

pontos. Esse resultado observado possui um grande valor para a busca do erro grosseiro,

será como uma diretriz para automatização do processo de análise dos dados de saída

do programa. Essa maior quantidade de caminhos gerada por estes pontos

característicos da rede torna-se um ponto principal para uma metodologia de análise

automatizada para busca de erros grosseiros.

FIG. 4.11 – Pares de pontos com maior nº de caminhos.

Esta característica torna-se essencial para auxiliar na busca pelo erro grosseiro,

torna a escolha de pontos mais eficiente, ou seja, economia de processamento e tempo

de análise.

Em relação à rede geodésica brasileira, com seus milhares de pontos, este

projeto precisa ser muito trabalhado e discutido, porque existem dois fatores de grande

importância: hardware e técnicas para análise da rede.

O fator hardware é destacado pela grande quantidade de dados que o PGC2,

tanto o paths quanto o cycles, produz. Também se destaca o processamento para

identificação dos erros, cálculos que terão que ser feitos, etc.

Para que a análise da rede seja feita de forma eficiente é necessário que esta

seja dividida em sub-redes (a técnica de “dividir para conquistar” (Muhammad)), e

também trabalhar estas sub-redes com “camadas”, ou seja, caminhos com comprimento

limitado. Estes são alguns exemplos para dar condições de aplicabilidade ao programa

para redes com milhares de pontos.

1 6

4 -102 | 1 2 4 6

3 -102 | 1 2 6

5 -102 | 1 3 4 2 6

4 -102 | 1 3 4 6

6 -102 | 1 3 5 4 2 6

5 -102 | 1 3 5 4 6

-1 0 |

1 5

5 -80 | 1 2 4 3 5

4 -80 | 1 2 4 5

6 -80 | 1 2 6 4 3 5

5 -80 | 1 2 6 4 5

4 -80 | 1 3 4 5

3 -80 | 1 3 5

-1 0 |

5 6

6 -22 | 5 3 1 2 4 6

5 -22 | 5 3 1 2 6

5 -22 | 5 3 4 2 6

4 -22 | 5 3 4 6

4 -22 | 5 4 2 6

6 -22 | 5 4 3 1 2 6

3 -22 | 5 4 6

-1 0 |

Page 44: MINISTÉRIO DA DEFESA EXÉRCITO BRASILEIRO … _err… · A teoria dos grafos propicia agregar um conhecimento alternativo para o problema de erros em observações, dado que um grafo

44

Para alguns exemplos de erros grosseiros, o programa obteve resultados

satisfatórios somente com uma análise qualitativa. Foram testados erros de troca de sinal,

troca de algarismos, variação de grandeza de determinado dado e erros que se

compensam. Todos estes casos foram detectados (apêndice F).

A identificação de erros neste programa, em termos práticos, mostrou-se

dependente da configuração da rede e da quantidade de erros. Ou seja, se a rede for

pequena com muitos erros grosseiros, torna-se inviável a utilização do programa. Isto

ocorre porque o programa não consegue obter dados confiáveis que sirvam de

comparação para que seja descoberto o erro grosseiro, sendo necessário recalcular toda

a rede.

Ou então, se a rede tiver muitos erros em pontos que não são nós (já definido

pela teoria dos grafos), também inviabiliza o encontro do mesmo.

Page 45: MINISTÉRIO DA DEFESA EXÉRCITO BRASILEIRO … _err… · A teoria dos grafos propicia agregar um conhecimento alternativo para o problema de erros em observações, dado que um grafo

45

5. CONCLUSÕES

No final deste projeto é necessário destacar o conhecimento que foi agregado em

todas as suas fases. Este conhecimento representado pela teoria dos grafos, teoria dos

erros, técnica do backtracking, busca em profundidade (DFS - Deep First Search) e

linguagem de programação C++. O código gerado não é uma substituição do método

existente (circuitos fechados), e sim uma alternativa para que a busca da qualidade dos

dados sempre esteja sendo o foco.

A identificação de erros grosseiros não é simples e tampouco óbvia. Com este

projeto ficou evidente a quantidade de variáveis aleatórias sobre este assunto. Qualquer

coisa pode gerar um erro grosseiro. Como por exemplo: inexperiência do operador,

inserção de valores incorretos (como altura do tripé para nivelamento), queda de aparelho

durante a medição e a novo posicionamento estar incorreto, etc. Neste projeto foram

simulados erros que se compensam na rede, troca de sinal, variação de grandeza da

medição (como por ex.: o número 10,2 pode se tornar 1,02), inversão de algarismos, etc.

E o programa demonstrou todo o problema de “fechamento” nos caminhos. Juntamente

com a metodologia proposta neste projeto, foram detectados os erros.

O objetivo de um processo automatizado existe com este projeto, mas a

automatização completa para todos os casos possíveis, ou seja, do início da coleta dos

dados até o final da análise é improvável. Isto porque a análise é extremamente subjetiva,

dado que existem muitas variáveis. O que pode ser feito é uma automatização para

alguns casos da análise, diminuindo, restringindo a quantidade de variáveis a ser

analisada. Um exemplo disto é a metodologia de análise apresentada no item 3.3, a qual

pode ser automatizada.

Outro aspecto interessante neste projeto foi a integração com outras

especialidades da engenharia. A engenharia cartográfica e as outras engenharias

necessitam de uma maior aproximação para seus projetos. Isto porque esta integração é

extremamente importante para que projetos futuros possam ser mais inovadores, mais

eficientes e possam solucionar problemas existentes e futuros.

Por fim, como sugestões para projetos futuros, estão a automatização da análise

e a inserção da estatística para os dados gerados pelo programa PGC2. Além disso, um

estudo para o tratamento de redes grandes com milhares de pontos por meio do princípio

“dividir para conquistar” (MUHAMMAD, 2007) com a rede sendo dividida em camadas,

começando da camada menor para a maior com mais pontos.

Page 46: MINISTÉRIO DA DEFESA EXÉRCITO BRASILEIRO … _err… · A teoria dos grafos propicia agregar um conhecimento alternativo para o problema de erros em observações, dado que um grafo

46

6. REFERÊNCIAS BIBLIOGRÁFICAS

ABENDE - Associação Brasileira de Ensaios Não Destrutivos e Inspeção. CONTROLE

DIMENSIONAL TOPOGRAFIA NIVELAMENTO GEOMÉTRICO PR-095. Disponível

em: <http://www.abende.org.br/down2/pr_095.pdf - acesso em 16/out/06> Acesso

em: 20 Nov 06.

CRISTINA, Maria e PIMENTEL, Graça. Site do Instituto de Ciências Matemáticas e de

Computação - Departamento de Computação e Estatística Disponível em: <

http://www.icmc.sc.usp.br/manuals/sce183/gfint.html > Acesso em: 04 Out 06.

FEOFILOFF, Paulo; KOHAYAKAWA, Y. e WAKABAYASHI, Y. Uma Introdução Sucinta

à Teoria dos Grafos. Disponível em: <http://www.ime.usp.br/~pf > Acesso em: 04

Jan 06.

GEMAEL, Camil. Introdução à Geodésia Física. Curso de Pós-graduação em Ciências

Geodésicas, UFPR. Curitiba, 1999.

HENRIQUES, Célia. Medições. Departamento de Física.Universidade Nova de Lisboa.

Disponível em: < http://sme.dcm.fct.unl.pt/u/dias/docencia/FISI/TP1%20Medicoes.pdf>. Acesso

em: 31 de Out de 2006

IBGE. Disponível em: <http://www.ibge.gov.br/home/geociencias/geodesia/default.shtm> Acesso em:

17 Out 06.

LEME, Renato Purita Paes. Consulta pessoal. Aluno do curso de engenharia de

computação do IME, 2006.

MUHAMMAD, Rashid Bin. Design and Analysis of Computer Algorithms. Disponível

em: <http://www.personal.kent.edu/~rmuhamma/Algorithms/MyAlgorithms/divide.htm> Acesso em:

20 Mai 07.

PENHA, Alex de Lima Teodoro da; FILHO, Antônio Gaudêncio Guimarães e FREITAS,

Ângelo Cantaluppi Silvestri. Aplicação da Teoria dos Grafos como Suporte à

Page 47: MINISTÉRIO DA DEFESA EXÉRCITO BRASILEIRO … _err… · A teoria dos grafos propicia agregar um conhecimento alternativo para o problema de erros em observações, dado que um grafo

47

Identificação de Erros Grosseiros em Dados Geodésicos Unidimensionais.

Iniciação à Pesquisa, Rio de Janeiro, IME, 2006.

SALVIANO, Adriano e SANTIAGO, Basílio. Posicionamento das Estrelas. Astronomia

Geodésica. Disponível em: < www.if.ufrgs.br/oei/santiago/fis2005/livro_v2.doc>. Acesso em:

31 de Out de 2006.

SKIENA, Steven e REVILLA, Miguel. Programming Challenges: The Programming

Contest Training Manual. Springer-Verlag, New York 2003. Disponível em:

<http://www.cs.sunysb.edu/~skiena/392/programs/> Acesso em: 15 Nov 05.

UFSC, Esquema de implantação de rede gravimétrica. (Universidade Federal de Santa

Catarina). Disponível em: <http://geodesia.ufsc.br/Geodesia-

online/arquivo/GeoColoq_2003/artigos/T097.pdf> Acesso em: 20 Nov 06.

WEST, Douglas. Open Problems – Graph Theory and Combinatorics. Disponível em:

<http://www.math.uiuc.edu/~west/openp/ >Acesso em: 13 Jan 06.

Page 48: MINISTÉRIO DA DEFESA EXÉRCITO BRASILEIRO … _err… · A teoria dos grafos propicia agregar um conhecimento alternativo para o problema de erros em observações, dado que um grafo

48

7. BIBLIOGRAFIA

DARBY, Gary. Graph Searching. Introdução à Teoria de DFS. Disponível em:

<http://www.delphiforfun.org/Programs/Library/Graphs1.htm > Acesso em: 22 Dez 05.

GRIMSHAW, David. Introdução à Teoria de DFS. Disponível em:

<http://www.ryerson.ca/~dgrimsha/courses/cps721/nDepth.html>Acesso em: 02 Dez 05.

Introdução à Teoria de DFS. Disponível em: <http://ww3.algorithmdesign.net/handouts/DFS.pdf>

Acesso em: 03 Fev 05.

Introdução à Teoria de DFS. University of Saskatchewan. Departament of Computer

Science. Saskatoon, Saskatchewan, Canadá. Disponível em:

<http://www.cs.usask.ca/resources/tutorials/csconcepts/1998_3/DFS/2-4.html> Acesso em: 24

Jan 06.

KOERICH, Alessandro L. Lidando com Limitações do Poder dos Algoritmos. Nota de

Aula da PUCPR, 2006.

LESSER, Miriam. Site de Northeastern University – Departamento de Engenharia Elétrica

e Computação Disponível em:

<http://www.ece.neu.edu/groups/rcl/libHLS/index.html> Acesso em: 12 Jan 06.

LOCKE, Stephen. Graph Theory. Disponível em: <http://www.math.fau.edu/locke/graphthe.htm>

Acesso em: 17 Dez 05.

MathWorld da Wolfram Research. Graph Theory. Disponível em:

<http://mathworld.wolfram.com/topics/GraphTheory.html> Acesso em: 20 Fev 06.

NONATO, Luis Gustavo. Introdução à Teoria de DFS. Disponível em:

<http://www.lcad.icmc.usp.br/~nonato/ED/Coloracao/pcoloracao.html > Acesso em: 20 Fev 06.

The MacTutor History of Mathematics. St. Andrews University, Escócia. Disponível em:

< http://turnbull.mcs.st-and.ac.uk/~history/Indexes/HistoryTopics.html> Acesso em:

11 Dez 05.

Page 49: MINISTÉRIO DA DEFESA EXÉRCITO BRASILEIRO … _err… · A teoria dos grafos propicia agregar um conhecimento alternativo para o problema de erros em observações, dado que um grafo

49

APÊNDICE A – ROTINA DE TODOS OS CAMINHOS - PGC

#include <iostream> #include <fstream> #include <vector> #include <string> #include <algorithm> #include <set> using namespace std; class Aresta { public: int v; double custo; Aresta(int v, double custo) { this->v = v; this->custo = custo; } }; class Vertice { public: vector<Aresta> adj; void inserirAresta(Aresta aresta) { adj.push_back(aresta); } }; class Grafo { public: int V; // numero de vertices int E; // numero de arestas (edges) int I; // inicio do caminho int F; // fim do caminho vector<Vertice> v; //lista de vertices no grafo set<int> S; vector<int> path; vector<int> adj; Grafo(string file) { ifstream inFile (file.c_str());

Page 50: MINISTÉRIO DA DEFESA EXÉRCITO BRASILEIRO … _err… · A teoria dos grafos propicia agregar um conhecimento alternativo para o problema de erros em observações, dado que um grafo

50

int u1, u2; double custo; inFile >> V; inFile >> E; v.resize(V+1); for (int j=0; j<E; j++) { inFile >> u1 >> u2 >> custo; v[u1].inserirAresta(Aresta(u2, custo)); v[u2].inserirAresta(Aresta(u1, -custo)); } inFile.close(); } bool firstPath(int I, int F) { this->I = I; this->F = F; path.clear(); path.push_back(I); adj.push_back(0); S.clear(); S.insert(I); return findPath(F); } bool nextPath() { S.erase(path.back()); path.pop_back(); adj.pop_back(); adj[adj.size()-1]++; return findPath(F); } bool findPath(int F) { //printStatus(); if (path.size()==0) return false; else { if (v[path.back()].adj.size()<=adj.back()) { S.erase(path.back()); path.pop_back(); adj.pop_back();

Page 51: MINISTÉRIO DA DEFESA EXÉRCITO BRASILEIRO … _err… · A teoria dos grafos propicia agregar um conhecimento alternativo para o problema de erros em observações, dado que um grafo

51

adj[adj.size()-1]++; return findPath(F); } else { int u = v[path.back()].adj[adj.back()].v; if (S.find(u)!=S.end()) { adj[adj.size()-1]++; return findPath(F); } else { path.push_back(u); adj.push_back(0); S.insert(u); if (path.back()==F) return true; else return findPath(F); } } } } void printPath() { for (int j=0; j<path.size(); j++) cout << path[j] << " "; cout << endl; } void printGraph() { for (int j=1; j<v.size(); j++) { cout << "[" << j << "] - "; for (int k=0; k<v[j].adj.size(); k++) cout << v[j].adj[k].v << " "; cout << endl; } } void printStatus() { cout << "< "; for (int j=0; j<path.size(); j++) cout << path[j] << " "; cout << "| "; for (int j=0; j<adj.size(); j++) cout << adj[j] << " "; cout << "| "; for (set<int>::iterator it=S.begin(); it!=S.end(); it++) cout << *it << " "; cout << " >" << endl; }

Page 52: MINISTÉRIO DA DEFESA EXÉRCITO BRASILEIRO … _err… · A teoria dos grafos propicia agregar um conhecimento alternativo para o problema de erros em observações, dado que um grafo

52

}; main() { Grafo g("grafo.txt"); //g.printGraph(); for (int I=1; I<=g.V; I++) for (int F=I+1; F<=g.V; F++) { g.firstPath(I,F); cout << "[ " << I << " --> " << F << " ]" << endl; do{ g.printPath(); } while (g.nextPath()); cout << endl;

Page 53: MINISTÉRIO DA DEFESA EXÉRCITO BRASILEIRO … _err… · A teoria dos grafos propicia agregar um conhecimento alternativo para o problema de erros em observações, dado que um grafo

53

APÊNDICE B – SAÍDAS 1,2,3 DO PGC Neste apêndice são apresentados os resultados obtidos pelo PGC nas redes

1, 2 e 3, visualizadas na página 25.

Exemplo 1: [ 1 --> 2 ] 1 2 1 4 3 2 1 4 2 [ 1 --> 3 ] 1 2 3 1 2 4 3 1 4 3 1 4 2 3 [ 1 --> 4 ] 1 2 3 4 1 2 4 1 4 [ 2 --> 3 ] 2 1 4 3 2 3 2 4 3 [ 2 --> 4 ] 2 1 4 2 3 4 2 4 [ 3 --> 4 ] 3 2 1 4 3 2 4 3 4 Exemplo 2: [ 1 --> 2 ] 1 2 1 4 2 1 4 3 2 1 5 4 2 1 5 4 3 2 [ 1 --> 3 ] 1 2 3 1 2 4 3 1 4 2 3 1 4 3 1 5 4 2 3 1 5 4 3

[ 1 --> 4 ] 1 2 3 4 1 2 4 1 4 1 5 4 [ 1 --> 5 ] 1 2 3 4 5 1 2 4 5 1 4 5 1 5 [ 2 --> 3 ] 2 1 4 3 2 1 5 4 3 2 3 2 4 3 [ 2 --> 4 ] 2 1 4 2 1 5 4 2 3 4 2 4 [ 2 --> 5 ] 2 1 4 5 2 1 5 2 3 4 1 5 2 3 4 5 2 4 1 5 2 4 5 [ 3 --> 4 ] 3 2 1 4 3 2 1 5 4 3 2 4 3 4 [ 3 --> 5 ] 3 2 1 4 5 3 2 1 5 3 2 4 1 5 3 2 4 5 3 4 1 5 3 4 2 1 5 3 4 5

[ 4 --> 5 ] 4 1 5 4 2 1 5 4 3 2 1 5 4 5 Exemplo 3: [ 1 --> 2 ] 1 2 1 6 5 2 1 6 5 4 2 1 6 5 4 3 2 1 5 2 1 5 4 2 1 5 4 3 2 [ 1 --> 3 ] 1 2 3 1 2 4 3 1 2 5 4 3 1 6 5 2 3 1 6 5 2 4 3 1 6 5 4 2 3 1 6 5 4 3 1 5 2 3 1 5 2 4 3 1 5 4 2 3 1 5 4 3 [ 1 --> 4 ] 1 2 3 4 1 2 4 1 2 5 4 1 6 5 2 3 4 1 6 5 2 4 1 6 5 4 1 5 2 3 4 1 5 2 4 1 5 4 [ 1 --> 5 ] 1 2 3 4 5 1 2 4 5 1 2 5 1 6 5 1 5

[ 1 --> 6 ] 1 2 3 4 5 6 1 2 4 5 6 1 2 5 6 1 6 1 5 6 [ 2 --> 3 ] 2 1 6 5 4 3 2 1 5 4 3 2 3 2 4 3 2 5 4 3 [ 2 --> 4 ] 2 1 6 5 4 2 1 5 4 2 3 4 2 4 2 5 4 [ 2 --> 5 ] 2 1 6 5 2 1 5 2 3 4 5 2 4 5 2 5 [ 2 --> 6 ] 2 1 6 2 1 5 6 2 3 4 5 1 6 2 3 4 5 6 2 4 5 1 6 2 4 5 6 2 5 1 6 2 5 6 [ 3 --> 4 ] 3 2 1 6 5 4 3 2 1 5 4 3 2 4 3 2 5 4 3 4 [ 3 --> 5 ]

Page 54: MINISTÉRIO DA DEFESA EXÉRCITO BRASILEIRO … _err… · A teoria dos grafos propicia agregar um conhecimento alternativo para o problema de erros em observações, dado que um grafo

54

3 2 1 6 5 3 2 1 5 3 2 4 5 3 2 5 3 4 2 1 6 5 3 4 2 1 5 3 4 2 5 3 4 5 [ 3 --> 6 ] 3 2 1 6 3 2 1 5 6 3 2 4 5 1 6

3 2 4 5 6 3 2 5 1 6 3 2 5 6 3 4 2 1 6 3 4 2 1 5 6 3 4 2 5 1 6 3 4 2 5 6 3 4 5 1 6 3 4 5 2 1 6 3 4 5 6 [ 4 --> 5 ] 4 2 1 6 5

4 2 1 5 4 2 5 4 3 2 1 6 5 4 3 2 1 5 4 3 2 5 4 5 [ 4 --> 6 ] 4 2 1 6 4 2 1 5 6 4 2 5 1 6 4 2 5 6 4 3 2 1 6

4 3 2 1 5 6 4 3 2 5 1 6 4 3 2 5 6 4 5 1 6 4 5 2 1 6 4 5 6 [ 5 --> 6 ] 5 1 6 5 2 1 6 5 4 2 1 6 5 4 3 2 1 6 5 6

Page 55: MINISTÉRIO DA DEFESA EXÉRCITO BRASILEIRO … _err… · A teoria dos grafos propicia agregar um conhecimento alternativo para o problema de erros em observações, dado que um grafo

55

APÊNDICE C – SAÍDAS DOS CAMINHOS DO PGC

Neste apêndice são apresentados os resultados obtidos pelo PGC nos testes, com

figuras regulares de 3 e 7 vértices

Exemplo com 3

vértices

[ 1 --> 2 ] 1 3 2 1 2 [ 1 --> 3 ] 1 3 1 2 3 [ 2 --> 3 ] 2 1 3 2 3

Exemplo com 7 vértices [ 1 --> 2 ] 1 2 1 7 2 1 5 2 1 5 4 2 1 5 4 3 2 1 6 5 2 1 6 5 4 2 1 6 5 4 3 2 [ 1 --> 3 ] 1 2 3 1 2 4 3 1 2 5 4 3 1 7 2 3 1 7 2 4 3 1 7 2 5 4 3 1 5 2 3 1 5 2 4 3 1 5 4 2 3 1 5 4 3 1 6 5 2 3 1 6 5 2 4 3 1 6 5 4 2 3 1 6 5 4 3 [ 1 --> 4 ] 1 2 3 4

1 2 4 1 2 5 4 1 7 2 3 4 1 7 2 4 1 7 2 5 4 1 5 2 3 4 1 5 2 4 1 5 4 1 6 5 2 3 4 1 6 5 2 4 1 6 5 4 [ 1 --> 5 ] 1 2 3 4 5 1 2 4 5 1 2 5 1 7 2 3 4 5 1 7 2 4 5 1 7 2 5 1 5 1 6 5 [ 1 --> 6 ] 1 2 3 4 5 6 1 2 4 5 6 1 2 5 6 1 7 2 3 4 5 6 1 7 2 4 5 6 1 7 2 5 6 1 5 6 1 6 [ 1 --> 7 ] 1 2 7 1 7 1 5 2 7 1 5 4 2 7 1 5 4 3 2 7 1 6 5 2 7 1 6 5 4 2 7 1 6 5 4 3 2 7 [ 2 --> 3 ] 2 1 5 4 3 2 1 6 5 4 3 2 3

2 4 3 2 5 4 3 2 7 1 5 4 3 2 7 1 6 5 4 3 [ 2 --> 4 ] 2 1 5 4 2 1 6 5 4 2 3 4 2 4 2 5 4 2 7 1 5 4 2 7 1 6 5 4 [ 2 --> 5 ] 2 1 5 2 1 6 5 2 3 4 5 2 4 5 2 5 2 7 1 5 2 7 1 6 5 [ 2 --> 6 ] 2 1 5 6 2 1 6 2 3 4 5 1 6 2 3 4 5 6 2 4 5 1 6 2 4 5 6 2 5 1 6 2 5 6 2 7 1 5 6 2 7 1 6 [ 2 --> 7 ] 2 1 7 2 3 4 5 1 7 2 3 4 5 6 1 7 2 4 5 1 7 2 4 5 6 1 7 2 5 1 7 2 5 6 1 7 2 7 [ 3 --> 4 ]

3 2 1 5 4 3 2 1 6 5 4 3 2 4 3 2 5 4 3 2 7 1 5 4 3 2 7 1 6 5 4 3 4 [ 3 --> 5 ] 3 2 1 5 3 2 1 6 5 3 2 4 5 3 2 5 3 2 7 1 5 3 2 7 1 6 5 3 4 2 1 5 3 4 2 1 6 5 3 4 2 5 3 4 2 7 1 5 3 4 2 7 1 6 5 3 4 5 [ 3 --> 6 ] 3 2 1 5 6 3 2 1 6 3 2 4 5 1 6 3 2 4 5 6 3 2 5 1 6 3 2 5 6 3 2 7 1 5 6 3 2 7 1 6 3 4 2 1 5 6 3 4 2 1 6 3 4 2 5 1 6 3 4 2 5 6 3 4 2 7 1 5 6 3 4 2 7 1 6 3 4 5 1 6 3 4 5 2 1 6 3 4 5 2 7 1 6 3 4 5 6 [ 3 --> 7 ] 3 2 1 7 3 2 4 5 1 7 3 2 4 5 6 1 7

Page 56: MINISTÉRIO DA DEFESA EXÉRCITO BRASILEIRO … _err… · A teoria dos grafos propicia agregar um conhecimento alternativo para o problema de erros em observações, dado que um grafo

56

3 2 5 1 7 3 2 5 6 1 7 3 2 7 3 4 2 1 7 3 4 2 5 1 7 3 4 2 5 6 1 7 3 4 2 7 3 4 5 1 2 7 3 4 5 1 7 3 4 5 2 1 7 3 4 5 2 7 3 4 5 6 1 2 7 3 4 5 6 1 7 [ 4 --> 5 ] 4 2 1 5 4 2 1 6 5 4 2 5 4 2 7 1 5 4 2 7 1 6 5 4 3 2 1 5 4 3 2 1 6 5 4 3 2 5 4 3 2 7 1 5 4 3 2 7 1 6 5

4 5 [ 4 --> 6 ] 4 2 1 5 6 4 2 1 6 4 2 5 1 6 4 2 5 6 4 2 7 1 5 6 4 2 7 1 6 4 3 2 1 5 6 4 3 2 1 6 4 3 2 5 1 6 4 3 2 5 6 4 3 2 7 1 5 6 4 3 2 7 1 6 4 5 1 6 4 5 2 1 6 4 5 2 7 1 6 4 5 6 [ 4 --> 7 ] 4 2 1 7 4 2 5 1 7 4 2 5 6 1 7 4 2 7

4 3 2 1 7 4 3 2 5 1 7 4 3 2 5 6 1 7 4 3 2 7 4 5 1 2 7 4 5 1 7 4 5 2 1 7 4 5 2 7 4 5 6 1 2 7 4 5 6 1 7 [ 5 --> 6 ] 5 1 6 5 2 1 6 5 2 7 1 6 5 4 2 1 6 5 4 2 7 1 6 5 4 3 2 1 6 5 4 3 2 7 1 6 5 6 [ 5 --> 7 ] 5 1 2 7 5 1 7 5 2 1 7

5 2 7 5 4 2 1 7 5 4 2 7 5 4 3 2 1 7 5 4 3 2 7 5 6 1 2 7 5 6 1 7 [ 6 --> 7 ] 6 1 2 7 6 1 7 6 1 5 2 7 6 1 5 4 2 7 6 1 5 4 3 2 7 6 5 1 2 7 6 5 1 7 6 5 2 1 7 6 5 2 7 6 5 4 2 1 7 6 5 4 2 7 6 5 4 3 2 1 7 6 5 4 3 2 7

Page 57: MINISTÉRIO DA DEFESA EXÉRCITO BRASILEIRO … _err… · A teoria dos grafos propicia agregar um conhecimento alternativo para o problema de erros em observações, dado que um grafo

57

APÊNDICE D – EXEMPLOS 1, 2 E 3 DO PGC 2

Estes exemplos aqui listados referem-se aos visualizados na página 25.

Exemplo 1: 1) Grafo 1: 4 5 1 2 0.11 1 4 0.47 2 3 0.21 2 4 0.36 3 4 0.15 2) Saída 1, cycles, inicio: ponto 3 4 3 5 -2.77556e-17 | 3 2 1 4 3 4 -2.77556e-17 | 3 2 4 3 5 -2.77556e-17 | 3 4 1 2 3 4 -2.77556e-17 | 3 4 2 3 -1 0 | 3) Saída 1, cycles, todos pontos 4 1 5 0 | 1 2 3 4 1 4 0 | 1 2 4 1 4 -1.38778e-17 | 1 4 2 1 5 -4.16334e-17 | 1 4 3 2 1 -1 0 | 2 4 0 | 2 1 4 2 5 0 | 2 1 4 3 2 5 1.38778e-17 | 2 3 4 1 2 4 0 | 2 3 4 2 4 1.38778e-17 | 2 4 1 2 4 0 | 2 4 3 2 -1 0 | 3 5 -2.77556e-17 | 3 2 1 4 3 4 -2.77556e-17 | 3 2 4 3 5 -2.77556e-17 | 3 4 1 2 3 4 -2.77556e-17 | 3 4 2 3 -1 0 |

4 5 0 | 4 1 2 3 4 4 0 | 4 1 2 4 4 0 | 4 2 1 4 4 0 | 4 2 3 4 5 0 | 4 3 2 1 4 4 0 | 4 3 2 4 -1 0 | -1 4) Saída 1, paths, todos pontos 4 1 2 2 0.11 | 1 2 3 0.11 | 1 4 2 4 0.11 | 1 4 3 2 -1 0 | 1 3 3 0.32 | 1 2 3 4 0.32 | 1 2 4 3 4 0.32 | 1 4 2 3 3 0.32 | 1 4 3 -1 0 | 1 4 4 0.47 | 1 2 3 4 3 0.47 | 1 2 4 2 0.47 | 1 4 -1 0 | 2 3 4 0.21 | 2 1 4 3 2 0.21 | 2 3 3 0.21 | 2 4 3 -1 0 | 2 4 3 0.36 | 2 1 4 3 0.36 | 2 3 4 2 0.36 | 2 4 -1 0 |

Page 58: MINISTÉRIO DA DEFESA EXÉRCITO BRASILEIRO … _err… · A teoria dos grafos propicia agregar um conhecimento alternativo para o problema de erros em observações, dado que um grafo

58

3 4 4 0.15 | 3 2 1 4 3 0.15 | 3 2 4 2 0.15 | 3 4 -1 0 | -1 –1 Exemplo 2: 1) Grafo 2: 5 7 1 2 0.36 1 4 1.31 1 5 2.11 2 3 0.25 2 4 0.95 3 4 0.70 4 5 0.80 2) Saída 2, cycles, todos pontos 5 1 5 0 | 1 2 3 4 1 6 4.44089e-16 | 1 2 3 4 5 1 4 2.22045e-16 | 1 2 4 1 5 4.44089e-16 | 1 2 4 5 1 4 5.55112e-16 | 1 4 2 1 5 5.55112e-16 | 1 4 3 2 1 4 4.44089e-16 | 1 4 5 1 4 2.22045e-16 | 1 5 4 1 5 3.33067e-16 | 1 5 4 2 1 6 3.33067e-16 | 1 5 4 3 2 1 -1 0 | 2 4 1.11022e-16 | 2 1 4 2 5 1.11022e-16 | 2 1 4 3 2 5 -2.22045e-16 | 2 1 5 4 2 6 -2.22045e-16 | 2 1 5 4 3 2 5 -2.22045e-16 | 2 3 4 1 2 4 -2.22045e-16 | 2 3 4 2 6 -1.11022e-16 | 2 3 4 5 1 2 4 -3.33067e-16 | 2 4 1 2 4 -2.22045e-16 | 2 4 3 2 5 -1.11022e-16 | 2 4 5 1 2

-1 0 | 3 5 1.11022e-16 | 3 2 1 4 3 6 -2.22045e-16 | 3 2 1 5 4 3 4 -2.22045e-16 | 3 2 4 3 5 -3.33067e-16 | 3 4 1 2 3 4 -3.33067e-16 | 3 4 2 3 6 -3.33067e-16 | 3 4 5 1 2 3 -1 0 | 4 5 -1.11022e-16 | 4 1 2 3 4 4 -1.11022e-16 | 4 1 2 4 4 -2.22045e-16 | 4 1 5 4 4 0 | 4 2 1 4 5 -2.22045e-16 | 4 2 1 5 4 4 -1.11022e-16 | 4 2 3 4 5 0 | 4 3 2 1 4 6 -2.22045e-16 | 4 3 2 1 5 4 4 -1.11022e-16 | 4 3 2 4 6 -1.11022e-16 | 4 5 1 2 3 4 5 -1.11022e-16 | 4 5 1 2 4 4 0 | 4 5 1 4 -1 0 | 5 6 0 | 5 1 2 3 4 5 5 0 | 5 1 2 4 5 4 2.22045e-16 | 5 1 4 5 4 -4.44089e-16 | 5 4 1 5 5 -4.44089e-16 | 5 4 2 1 5 6 -4.44089e-16 | 5 4 3 2 1 5 -1 0 | -1 3) Saída 2, paths, todos pontos 5 1 2 2 0.36 | 1 2 3 0.36 | 1 4 2 4 0.36 | 1 4 3 2 4 0.36 | 1 5 4 2 5 0.36 | 1 5 4 3 2 -1 0 | 1 3 3 0.61 | 1 2 3

Page 59: MINISTÉRIO DA DEFESA EXÉRCITO BRASILEIRO … _err… · A teoria dos grafos propicia agregar um conhecimento alternativo para o problema de erros em observações, dado que um grafo

59

4 0.61 | 1 2 4 3 4 0.61 | 1 4 2 3 3 0.61 | 1 4 3 5 0.61 | 1 5 4 2 3 4 0.61 | 1 5 4 3 -1 0 | 1 4 4 1.31 | 1 2 3 4 3 1.31 | 1 2 4 2 1.31 | 1 4 3 1.31 | 1 5 4 -1 0 | 1 5 5 2.11 | 1 2 3 4 5 4 2.11 | 1 2 4 5 3 2.11 | 1 4 5 2 2.11 | 1 5 -1 0 | 2 3 4 0.25 | 2 1 4 3 5 0.25 | 2 1 5 4 3 2 0.25 | 2 3 3 0.25 | 2 4 3 -1 0 | 2 4 3 0.95 | 2 1 4 4 0.95 | 2 1 5 4 3 0.95 | 2 3 4 2 0.95 | 2 4 -1 0 | 2 5 4 1.75 | 2 1 4 5 3 1.75 | 2 1 5 5 1.75 | 2 3 4 1 5 4 1.75 | 2 3 4 5 4 1.75 | 2 4 1 5 3 1.75 | 2 4 5 -1 0 | 3 4 4 0.7 | 3 2 1 4 5 0.7 | 3 2 1 5 4 3 0.7 | 3 2 4 2 0.7 | 3 4 -1 0 | 3 5

5 1.5 | 3 2 1 4 5 4 1.5 | 3 2 1 5 5 1.5 | 3 2 4 1 5 4 1.5 | 3 2 4 5 4 1.5 | 3 4 1 5 5 1.5 | 3 4 2 1 5 3 1.5 | 3 4 5 -1 0 | 4 5 3 0.8 | 4 1 5 4 0.8 | 4 2 1 5 5 0.8 | 4 3 2 1 5 2 0.8 | 4 5 -1 0 | -1 –1 Exemplo 3:

1) Grafo 3: 6 9 1 2 0.22 1 5 1.54 1 6 2.31 2 3 0.33 2 4 0.77 2 5 1.32 3 4 0.44 4 5 0.55 5 6 0.77

2) Saída 3, cycles, todos pontos 6 1 6 0 | 1 2 3 4 5 1 7 0 | 1 2 3 4 5 6 1 5 0 | 1 2 4 5 1 6 0 | 1 2 4 5 6 1 4 0 | 1 2 5 1 5 0 | 1 2 5 6 1 4 -2.77556e-17 | 1 5 2 1 5 -2.77556e-17 | 1 5 4 2 1 6 2.77556e-17 | 1 5 4 3 2 1 4 0 | 1 5 6 1 4 0 | 1 6 5 1 5 -2.77556e-17 | 1 6 5 2 1 6 -2.77556e-17 | 1 6 5 4 2 1

Page 60: MINISTÉRIO DA DEFESA EXÉRCITO BRASILEIRO … _err… · A teoria dos grafos propicia agregar um conhecimento alternativo para o problema de erros em observações, dado que um grafo

60

7 2.77556e-17 | 1 6 5 4 3 2 1 -1 0 | 2 4 0 | 2 1 5 2 5 0 | 2 1 5 4 2 6 0 | 2 1 5 4 3 2 5 -2.22045e-16 | 2 1 6 5 2 6 -2.22045e-16 | 2 1 6 5 4 2 7 -2.22045e-16 | 2 1 6 5 4 3 2 4 -2.22045e-16 | 2 3 4 2 6 -1.94289e-16 | 2 3 4 5 1 2 5 -2.22045e-16 | 2 3 4 5 2 7 -1.94289e-16 | 2 3 4 5 6 1 2 4 -2.22045e-16 | 2 4 3 2 5 -1.94289e-16 | 2 4 5 1 2 4 -2.22045e-16 | 2 4 5 2 6 -1.94289e-16 | 2 4 5 6 1 2 4 -1.94289e-16 | 2 5 1 2 4 -2.22045e-16 | 2 5 4 2 5 -2.22045e-16 | 2 5 4 3 2 5 -1.94289e-16 | 2 5 6 1 2 -1 0 | 3 6 -5.55112e-17 | 3 2 1 5 4 3 7 -5.55112e-17 | 3 2 1 6 5 4 3 4 -5.55112e-17 | 3 2 4 3 5 -5.55112e-17 | 3 2 5 4 3 4 -5.55112e-17 | 3 4 2 3 6 -5.55112e-17 | 3 4 5 1 2 3 5 -5.55112e-17 | 3 4 5 2 3 7 -5.55112e-17 | 3 4 5 6 1 2 3 -1 0 | 4 5 0 | 4 2 1 5 4 6 0 | 4 2 1 6 5 4 4 0 | 4 2 3 4 4 0 | 4 2 5 4 6 0 | 4 3 2 1 5 4 7 0 | 4 3 2 1 6 5 4 4 0 | 4 3 2 4 5 0 | 4 3 2 5 4 6 0 | 4 5 1 2 3 4 5 0 | 4 5 1 2 4 5 0 | 4 5 2 3 4 4 0 | 4 5 2 4 7 0 | 4 5 6 1 2 3 4 6 0 | 4 5 6 1 2 4 -1 0 |

5 6 0 | 5 1 2 3 4 5 5 0 | 5 1 2 4 5 4 0 | 5 1 2 5 4 0 | 5 1 6 5 4 0 | 5 2 1 5 5 0 | 5 2 1 6 5 5 0 | 5 2 3 4 5 4 0 | 5 2 4 5 5 0 | 5 4 2 1 5 6 0 | 5 4 2 1 6 5 4 0 | 5 4 2 5 6 0 | 5 4 3 2 1 5 7 0 | 5 4 3 2 1 6 5 5 0 | 5 4 3 2 5 7 0 | 5 6 1 2 3 4 5 6 0 | 5 6 1 2 4 5 5 0 | 5 6 1 2 5 4 0 | 5 6 1 5 -1 0 | 6 7 2.22045e-16 | 6 1 2 3 4 5 6 6 2.22045e-16 | 6 1 2 4 5 6 5 2.22045e-16 | 6 1 2 5 6 4 2.22045e-16 | 6 1 5 6 4 4.44089e-16 | 6 5 1 6 5 0 | 6 5 2 1 6 6 0 | 6 5 4 2 1 6 7 0 | 6 5 4 3 2 1 6 -1 0 | -1

3) Saída 3, paths, todos pontos 6 1 2 2 0.22 | 1 2 3 0.22 | 1 5 2 4 0.22 | 1 5 4 2 5 0.22 | 1 5 4 3 2 4 0.22 | 1 6 5 2 5 0.22 | 1 6 5 4 2 6 0.22 | 1 6 5 4 3 2 -1 0 | 1 3 3 0.55 | 1 2 3 4 0.55 | 1 2 4 3 5 0.55 | 1 2 5 4 3

Page 61: MINISTÉRIO DA DEFESA EXÉRCITO BRASILEIRO … _err… · A teoria dos grafos propicia agregar um conhecimento alternativo para o problema de erros em observações, dado que um grafo

61

4 0.55 | 1 5 2 3 5 0.55 | 1 5 2 4 3 5 0.55 | 1 5 4 2 3 4 0.55 | 1 5 4 3 5 0.55 | 1 6 5 2 3 6 0.55 | 1 6 5 2 4 3 6 0.55 | 1 6 5 4 2 3 5 0.55 | 1 6 5 4 3 -1 0 | 1 4 4 0.99 | 1 2 3 4 3 0.99 | 1 2 4 4 0.99 | 1 2 5 4 5 0.99 | 1 5 2 3 4 4 0.99 | 1 5 2 4 3 0.99 | 1 5 4 6 0.99 | 1 6 5 2 3 4 5 0.99 | 1 6 5 2 4 4 0.99 | 1 6 5 4 -1 0 | 1 5 5 1.54 | 1 2 3 4 5 4 1.54 | 1 2 4 5 3 1.54 | 1 2 5 2 1.54 | 1 5 3 1.54 | 1 6 5 -1 0 | 1 6 6 2.31 | 1 2 3 4 5 6 5 2.31 | 1 2 4 5 6 4 2.31 | 1 2 5 6 3 2.31 | 1 5 6 2 2.31 | 1 6 -1 0 | 2 3 5 0.33 | 2 1 5 4 3 6 0.33 | 2 1 6 5 4 3 2 0.33 | 2 3 3 0.33 | 2 4 3 4 0.33 | 2 5 4 3 -1 0 | 2 4 4 0.77 | 2 1 5 4 5 0.77 | 2 1 6 5 4 3 0.77 | 2 3 4 2 0.77 | 2 4 3 0.77 | 2 5 4

-1 0 | 2 5 3 1.32 | 2 1 5 4 1.32 | 2 1 6 5 4 1.32 | 2 3 4 5 3 1.32 | 2 4 5 2 1.32 | 2 5 -1 0 | 2 6 4 2.09 | 2 1 5 6 3 2.09 | 2 1 6 6 2.09 | 2 3 4 5 1 6 5 2.09 | 2 3 4 5 6 5 2.09 | 2 4 5 1 6 4 2.09 | 2 4 5 6 4 2.09 | 2 5 1 6 3 2.09 | 2 5 6 -1 0 | 3 4 5 0.44 | 3 2 1 5 4 6 0.44 | 3 2 1 6 5 4 3 0.44 | 3 2 4 4 0.44 | 3 2 5 4 2 0.44 | 3 4 -1 0 | 3 5 4 0.99 | 3 2 1 5 5 0.99 | 3 2 1 6 5 4 0.99 | 3 2 4 5 3 0.99 | 3 2 5 5 0.99 | 3 4 2 1 5 6 0.99 | 3 4 2 1 6 5 4 0.99 | 3 4 2 5 3 0.99 | 3 4 5 -1 0 | 3 6 5 1.76 | 3 2 1 5 6 4 1.76 | 3 2 1 6 6 1.76 | 3 2 4 5 1 6 5 1.76 | 3 2 4 5 6 5 1.76 | 3 2 5 1 6 4 1.76 | 3 2 5 6 6 1.76 | 3 4 2 1 5 6 5 1.76 | 3 4 2 1 6 6 1.76 | 3 4 2 5 1 6 5 1.76 | 3 4 2 5 6 5 1.76 | 3 4 5 1 6

Page 62: MINISTÉRIO DA DEFESA EXÉRCITO BRASILEIRO … _err… · A teoria dos grafos propicia agregar um conhecimento alternativo para o problema de erros em observações, dado que um grafo

62

6 1.76 | 3 4 5 2 1 6 4 1.76 | 3 4 5 6 -1 0 | 4 5 4 0.55 | 4 2 1 5 5 0.55 | 4 2 1 6 5 3 0.55 | 4 2 5 5 0.55 | 4 3 2 1 5 6 0.55 | 4 3 2 1 6 5 4 0.55 | 4 3 2 5 2 0.55 | 4 5 -1 0 | 4 6 5 1.32 | 4 2 1 5 6 4 1.32 | 4 2 1 6 5 1.32 | 4 2 5 1 6 4 1.32 | 4 2 5 6

6 1.32 | 4 3 2 1 5 6 5 1.32 | 4 3 2 1 6 6 1.32 | 4 3 2 5 1 6 5 1.32 | 4 3 2 5 6 4 1.32 | 4 5 1 6 5 1.32 | 4 5 2 1 6 3 1.32 | 4 5 6 -1 0 | 5 6 3 0.77 | 5 1 6 4 0.77 | 5 2 1 6 5 0.77 | 5 4 2 1 6 6 0.77 | 5 4 3 2 1 6 2 0.77 | 5 6 -1 0 | -1 –1

Page 63: MINISTÉRIO DA DEFESA EXÉRCITO BRASILEIRO … _err… · A teoria dos grafos propicia agregar um conhecimento alternativo para o problema de erros em observações, dado que um grafo

63

APÊNDICE E – ALGORITMO PGC 2 - PATHS O algoritmo referente ao PGC2 – cycles é análogo a este apresentado, somente

difere pelos vértices de início e final que serão iguais.

Classe Grafo{ nºvertices nºarestas cor[nºmaximovertices] vetor vetor adjacente[nºmaximovertices] vetor vetor caminhos matriz variações[nºmaximovertices][nºmaximovertices] método grafo(vértice){ n=vértice e=0 para cada vértice com cor[0 até vertice-1] = branco} método adicionararesta(u,v,h){ coloque vertice (v) no vetor adjacente [u] coloque vertice (u) no vetor adjacente [v] variações[u][v]=h variações[v][u]=-h nºaresta++} método encontretodoscaminhos(verticeI,verticeF){ limpacaminho coloque vertice (I) no vetor caminhos cor [I] = cinza método encontre(verticeF); valorvariações=0; cor[I] = branco; retira ultimo valor do vetor caminhos; } método encontre(verticeF){ seja u e v

coloque (v) no vetor caminhos se (v = verticeF){ método imprimevetorcaminhos; retorna;} para i=0, sendo menor que tamanho vetoradjacente[v]{ u=adjacente[u][i] se(cor[u]= branco){

coloque vertice(u) no vetor caminhos cor[u]=cinza valorvariações = execute soma variações[v][u] com valorvariações

método encontre(verticeF)

Page 64: MINISTÉRIO DA DEFESA EXÉRCITO BRASILEIRO … _err… · A teoria dos grafos propicia agregar um conhecimento alternativo para o problema de erros em observações, dado que um grafo

64

valorvariações = execute subtração variações[v][u] com valorvariações cor[u]=branco retira ultimo do vetor caminhos}}} método imprimevetorcaminhos} Inicio programa Entre com arquivo de entrada Entre com arquivo de saída Abrir arquivo entrada Abrir arquivo saída Entre todos os pares? sim ou não caso (todos os pares){ caso sim: todos os pares = verdadeiro sair caso não: todos os pares = falso Entre vérticeI Entre vérticeF sair} ler do arquivo entrada nºvertices e nºarestas execute classe Grafo método grafo(nºvertices) Para i=0, sendo menor que o nºarestas{ Ler do arquivo de entrada vértice(u), vértice(v), variação Diminua 1 de vértice(u) e de vértice(v) Executa classe Grafo método adicionaaresta(u,v,h)} Escrever no arquivo de saída � nºvertices Se(todos os pares){ Para i=0, sendo menor que nºvertices{ Para j=i+1, sendo menor que nºvertices{

Escrever no arquivo de saída � i+1 e j+1 Executa classe Grafo método encontretodoscaminhos(i,j)

Escrever no arquivo de saída � -1 0 } Escrever no arquivo de saída � -1 e 1} Se não{ Escrever no arquivo de saída � I+1 e J+1 Grafo.encontretodoscaminhos(I,J) Escrever no arquivo de saída � -1 0} Fecha arquivo de entrada Fecha arquivo de saída Fim do programa