Você está na página 1de 46

UNESP Universidade Estadual Paulista Jlio de Mesquita Filho

Campus de Guaratinguet Faculdade de Engenharia


Departamento de Matemtica

RELATRIO FINAL DE ATIVIDADES


BOLSA CNPq - PIBIC

SISTEMA DE APOIO DECISO EM PROBLEMAS DE


TRANSPORTES DE PRODUTOS AGRCOLAS

Pedro Nunes Lopes Neto


Bolsista

Prof. Dr. Edson Luiz Frana Senne


Orientador

Agosto de 2005
1

SISTEMA DE APOIO DECISO EM PROBLEMAS DE TRANSPORTES DE PRODUTOS AGRCOLAS

NDICE ANALTICO
PARTE 1 O PROJETO PROPOSTO
1.

Introduo........................................................................................................................4

2.

Objetivos do Projeto.........................................................................................................6

3.

Metodologia de Desenvolvimento....................................................................................7

4.

Atividades e Cronograma de Desenvolvimento..............................................................8

PARTE 2 ATIVIDADES DESENVOLVIDAS

1.

Desenvolvimento das Atividades do Projeto ...................................................................9


1.1.

Levantamento bibliogrfico sobre o problema de transporte de produtos agrcolas .......9

1.1.1.
1.1.2.

1.2.

Estudo do Sistema de Informaes Geogrficas MapObjects .......................................12

1.2.1.
1.2.2.
1.2.3.
1.2.4.

1.3.

Problema de Roteamento de Veculos .....................................................................................................9


Otimizao na Agricultura .......................................................................................................................11
O MapObjects 2.1........................................................................................................................................13
Fontes de Dados.............................................................................................................................................13
Conjunto de Classes do MapObjects 2.1 ...................................................................................................14
O Ambiente de Programao Visual C++ Builder 5.5 ......................................................................15

Desenvolvimento do sistema de apoio deciso............................................................16

1.3.1.
Mtodo de Soluo ......................................................................................................................................16
1.3.1.1.
O Algoritmo de Determinao de Clusters .................................................................................16
1.3.1.2.
O Algoritmo de Determinao de Rotas ......................................................................................17
ATIVIDADES DESENVOLVIDAS NO PRIMEIRO ANO DE PESQUISA
1.3.2.
A Tela Principal ...........................................................................................................................................18
1.3.2.1.
Menus ....................................................................................................................................................19
1.3.2.2.
Barra de Ferramentas .......................................................................................................................20
1.3.2.3.
Painel Lateral ......................................................................................................................................21
1.3.3.
Funes...........................................................................................................................................................21
1.3.3.1.
Abrindo um Novo Projeto de Mapas ............................................................................................21
1.3.3.2.
Abrindo um Projeto de Mapas Existente .....................................................................................22
1.3.3.3.
Zoom e Posicionamento....................................................................................................................23
1.3.3.4.
Extraindo Pontos do Mapa ..............................................................................................................24
1.3.3.5.
Alterando Propriedades dos Pontos ..............................................................................................25
1.3.3.6.
Alterando Propriedades das Ruas .................................................................................................26
1.3.3.7.
Pesquisando Pontos e Ruas ..............................................................................................................26
1.3.3.8.
Alterando Cores do Mapa ................................................................................................................27
1.3.3.9.
Definindo o ponto central .................................................................................................................27
1.3.3.10. Dividindo o Mapa em Clusters .......................................................................................................28
1.3.3.11. Alterando Propriedades dos Clusters ...........................................................................................30
1.3.3.12. Visualizando Tabela de Pontos .......................................................................................................30
1.3.3.13. Obtendo Rotas .....................................................................................................................................31
1.3.3.14. Salvando um Projeto .........................................................................................................................32
1.3.3.15. Fechando um Projeto ........................................................................................................................32
ATIVIDADES DESENVOLVIDAS NO SEGUNDO ANO DE PESQUISA
1.3.4.
Reestruturao do Sistema .......................................................................................................................33
1.3.4.1.
Reestruturao do cdigo-fonte......................................................................................................33
1.3.4.2.
Reestruturao da Interface Principal .........................................................................................34
2

SISTEMA DE APOIO DECISO EM PROBLEMAS DE TRANSPORTES DE PRODUTOS AGRCOLAS

1.3.4.3.
Reestruturao da Janela de Cores ...............................................................................................35
1.3.4.4.
Reestruturao da Visualizao do Ponto Central ...................................................................35
1.3.4.5.
Mudanas no Projeto de Clusters ..................................................................................................35
1.3.4.6.
Integrao do algoritmo de clculo de rotas no sistema ..........................................................36
1.3.5.
Funes Especiais ........................................................................................................................................38
1.3.5.1.
Filtragem de dados .............................................................................................................................38
1.3.5.2.
Manual On-line do Sistema PCLog ...............................................................................................40
1.3.6.
Funes Excludas .......................................................................................................................................41

2.

Comentrios Finais........................................................................................................41

3.

Referncias Bibliogrficas ............................................................................................42

4.

ndice de Figuras...........................................................................................................46

SISTEMA DE APOIO DECISO EM PROBLEMAS DE TRANSPORTES DE PRODUTOS AGRCOLAS

Resumo

Este projeto visa desenvolver uma ferramenta computacional para auxlio tomada de
deciso em problemas de transporte de produtos agrcolas. Pretende-se que esta ferramenta
disponha de recursos de Sistemas de Informaes Geogrficas (SIG) para a visualizao e
anlise da soluo obtida diretamente em um mapa que represente a rede de transporte de uma
regio. O problema de transporte de produtos agrcolas requer vrios veculos que partem de
um local central de armazenagem, visitam os diversos pontos de produo, e retornam para o
armazm central. Uma soluo para o problema deve levar em conta a capacidade dos
veculos e a janela de tempo em que os produtos devem ser recolhidos, e minimizar a
distncia total percorrida pela frota como um todo, de modo a reduzir o custo total do
transporte. O problema de transporte de produtos agrcolas justifica a ateno por ser de difcil
soluo e por ter grande aplicao prtica. Para a soluo do problema pretende-se utilizar
algoritmo de p-medianas capacitado j desenvolvido pelo orientador e implementar algoritmo
heurstico para a soluo de problema de roteamento de veculos com janelas de tempo.

PARTE 1 - O PROJETO PROPOSTO

1.

Introduo

A agricultura tem grande importncia nacional e econmica, por se ocupar da


produo de alimentos. Entretanto, a complexidade e a dinmica das operaes no setor
agrcola requerem o controle e a atualizao constante de informaes. Estas informaes
esto associadas s propriedades agrcolas e suas particularidades, que normalmente
relacionam-se aos mapas das reas de cultivo e sua diviso em blocos, s vias de acesso, ao
relevo, aos tipos de solo e uso da terra. Assim, o gerenciamento agrcola depende do
manuseio e controle de tal volume de dados. Tal gerenciamento deixar de ser eficiente se
estes dados no se apresentarem de forma integrada, atualizada e de fcil interpretao.
Um sistema de apoio deciso que utilize recursos de Sistemas de Informaes
Geogrficas (SIG) apresenta-se como uma opo aos mtodos tradicionais de gerenciamento.
Por integrar dados espaciais e seus atributos e possibilitar a simulao, o modelamento e a
visualizao de informaes associadas aos mapas de reas de cultivo, tal ferramenta pode
fornecer subsdios importantes ao processo de tomada de decises (Burrough, 1986; Aronoff,
1989).
4

SISTEMA DE APOIO DECISO EM PROBLEMAS DE TRANSPORTES DE PRODUTOS AGRCOLAS

J existem muitos trabalhos que objetivam a utilizao de SIG para modelar e resolver
problemas ligados agricultura e pecuria. Podem ser citados, por exemplo, o trabalho de
Fraisse et al. (1994), para analisar sistemas de manejo em fazendas de gado leiteiro com alto
grau de confinamento, o trabalho realizado por Bacellar (1994), para analisar e determinar
pontos crticos de perda de solo devidos eroso, o trabalho de Rocha (1995), que apregoa o
grande potencial do SIG como uma ferramenta de apoio ao planejamento, e o trabalho de
Platford (1990), sobre o uso de SIG para gerenciamento em indstria de cana-de-acar.

No entanto, para ser utilizado como ferramenta amigvel de planejamento, um SIG


geralmente necessita de programas especficos para cada aplicao, que tenham como
objetivo facilitar e direcionar consultas gerenciais. Para funcionar de maneira eficiente um
sistema de apoio deciso deve possibilitar consultas especficas de forma gil, conforme o
usurio. Desta forma, um gerente agrcola, por exemplo, pode ter acesso a informaes e
mapas de reas colhidas e reas a colher, enquanto que um gerente de motomecanizao pode
acessar os mapas de reas que foram aradas e da distribuio da frota por setor.

A utilizao de um sistema de apoio deciso com tais caractersticas pode auxiliar no


mapeamento dos solos visando sua adequao agricultura, e no monitoramento e avaliao
da produo de safras agrcolas. A aplicao desta ferramenta em problemas de localizao de
silos e no roteamento de veculos tambm pode ser obtida a partir de algoritmos integrados a
um SIG. Uma questo importante, contudo, refere-se a como colocar tal tecnologia nas mos
de tomadores de deciso. Uma abordagem organizar os diversos produtores de uma regio
em projetos cooperativos.

O problema de transporte de produtos agrcolas, considerado neste projeto, assume a


existncia de n produtores organizados em uma nica cooperativa que dispe de m veculos
de mesma capacidade. Imagina-se que os pontos de produo esto distribudos por diversas
reas de uma regio e que em cada um desses pontos existe uma quantidade di (i = 1, ..., n) de
produtos a serem recolhidos. Cada veculo da cooperativa realiza um percurso saindo de um
armazm central, passando por um subconjunto dos n pontos de produo e transportando os
produtos recolhidos at o armazm central. A rota de cada veculo deve obedecer restrio
de no exceder a capacidade do veculo e restrio de tempo de incio de recolhimento dos
produtos de cada produtor. A soluo do problema deve traar as rotas para os m veculos,
determinando a ordem de visita aos pontos de produo de forma a minimizar a distncia total
percorrida por todos os veculos.
5

SISTEMA DE APOIO DECISO EM PROBLEMAS DE TRANSPORTES DE PRODUTOS AGRCOLAS

O problema de transporte de produtos agrcolas um problema importante de


otimizao e aparece em muitas aplicaes prticas. Em alguns casos o custo do transporte
pode representar uma grande parcela do custo total de produo, motivo pelo qual o problema
tem obtido muita ateno. Para a soluo deste problema preciso, em primeiro lugar, ter
uma viso geral do conjunto de pontos de produo a ser atendido, que pode ser obtida por
um algoritmo de localizao. Em seguida, preciso dispor de um bom algoritmo para resolver
problemas de roteamento, que consistem na obteno de rotas que minimizem os custos de
transporte por uma frota de veculos a partir de um ou mais armazns centrais.

Muitos estudos j foram realizados sobre problemas de roteamento de veculos


(Christofides et al., 1979; Bodin et al., 1983; Gendreau et al., 1997). Em geral, este problema
difcil de ser resolvido. O problema aparece, por exemplo, na distribuio de mercadorias a
partir de depsitos centrais, na coleta de lixo, na entrega de encomendas expressas via area,
na entrega e coleta de pessoal em contextos industriais e escolares. Alguns tipos de problemas
relacionados programao da produo podem tambm ser formulados como problemas de
roteamento de veculos.

O sistema de apoio deciso que se pretende desenvolver neste projeto ir utilizar


bases de dados geograficamente referenciados para armazenar informaes sobre os
produtores agrcolas e sobre os veculos de uma cooperativa, e ir utilizar algoritmos
heursticos para a soluo de problemas de localizao e roteamento de veculos, de modo a
viabilizar o processo de tomada de deciso informatizada para o problema de transporte de
produtos agrcolas.

2.

Objetivos do Projeto

Os objetivos do projeto so os seguintes:


Desenvolver uma ferramenta computacional dispondo de interface grfica com o usurio e
com recursos de SIG que permita cadastrar os pontos de produo agrcola a serem
atendidos, cadastrar a frota de veculos disponvel e visualizar a soluo do problema de
transporte diretamente sobre o mapa digitalizado de uma regio.
Implementar algoritmo heurstico de localizao de p- medianas (j desenvolvido), visando
a diviso dos pontos de produo agrcola em agrupamentos (clusters) de locais a serem

SISTEMA DE APOIO DECISO EM PROBLEMAS DE TRANSPORTES DE PRODUTOS AGRCOLAS

atendidos, em funo da quantidade de produto a ser transportada e da capacidade dos


veculos disponveis.
Desenvolver e implementar algoritmo heurstico de soluo do problema de roteamento
com janela de tempo, visando o estabelecimento de rotas de menor custo para cada um
dos veculos.
Construir um prottipo de Sistema de Apoio Deciso para o problema de transporte de
produtos agrcolas utilizando mapas digitais j disponveis.

3.

Metodologia de Desenvolvimento

O problema de transporte de produtos agrcolas pode ser dividido em dois


subproblemas:
Diviso da regio de produo em regies de atendimento formadas por agrupamentos
(clusters) de pontos de produo a serem atendidos, em funo da quantidade de produtos
a serem transportados e da capacidade dos veculos disponveis.
Determinao das melhores rotas para cada um dos veculos.

O primeiro subproblema pode ser resolvido como um problema de p- medianas


capacitado. Para a soluo deste problema j se dispe de um algoritmo heurstico que utiliza
a relaxao lagrangeana/surrogate (Senne & Lorena, 1997; Lorena & Senne, 1999) e que
apresenta resultados muito bons (Lorena & Senne, 2000; Lorena & Senne, 2003).

O segundo subproblema pode ser modelado como um problema de roteamento com


janelas de tempo. O objetivo ser minimizar a distncia total percorrida pela frota de veculos,
minimizando, com isto, o custo total do transporte, levando-se em conta as restries de
capacidade dos veculos e as restries de intervalo de tempo em que os produtos devem ser
recolhidos nos pontos de produo. Pretende-se desenvolver um algoritmo heurstico para a
soluo deste problema, com base em procedimentos de construo de rotas e procedimentos
de melhoria de rotas (Reinelt, 1994).

Para a visualizao dos resultados em mapas digitalizados, pretende-se utilizar a


biblioteca de rotinas MapObjects que implementa as funcionalidades do sistema de
informaes geogrficas ArcView (ESRI, 1996) e que pode ser utilizada juntamente com o
ambiente C++Builder.
7

SISTEMA DE APOIO DECISO EM PROBLEMAS DE TRANSPORTES DE PRODUTOS AGRCOLAS

4.

Atividades e Cronograma de Desenvolvimento

As atividades a serem desenvolvidas no projeto so as seguintes:

a) Levantamento bibliogrfico sobre o problema de transporte de produtos agrcolas.


b) Estudo do sistema de informaes geogrficas MapObjects.
c) Determinao da rede de transporte a partir de mapa digitalizado de uma regio.
d) Determinao da matriz de custos a partir da rede de transporte digitalizada de uma
regio.
e) Implementao do algoritmo de p- medianas capacitado j existente para a determinao
dos clusters em que a regio de produo deve ser dividida.
f) Desenvolvimento e implementao de algoritmo heurstico para soluo do problema de
roteamento com janela de tempo, visando a determinao das melhores rotas para cada um
dos veculos usados no transporte dos produtos agrcolas.
g) Desenvolvimento de sistema de apoio deciso que disponha de interface grfica com o
usurio e recursos de SIG para automatizar a soluo do problema de transporte de
produtos agrcolas.
h) Elaborao de relatrios e divulgao de resultados.

Pretende-se que tais atividades sejam executadas no perodo de um ano, segundo o


cronograma:

Atividade 01
a
X
b
c
d
e
f
g
h

02

03

04

Meses
06 07

05

08

09

10

11

12

X
X

X
X

X
X
X

X
X
X
X
X

X
X

SISTEMA DE APOIO DECISO EM PROBLEMAS DE TRANSPORTES DE PRODUTOS AGRCOLAS

PARTE 2 - ATIVIDADES DESENVOLVIDAS

1.

Desenvolvimento das Atividades do Projeto

1.1. Levantamento bibliogrfico sobre o problema de transporte de produtos agrcolas

A logstica pode ser definida como o planejamento, a organizao e o controle de


todas as operaes de movimento e estoque, relativas ao fluxo de mercadorias, desde o ponto
de aquisio de matria prima at o consumidor final, objetivando a mxima produtividade.
Num contexto mais amplo, suas atividades tpicas so: transporte, gesto de estoques,
processamento de pedidos, compras, armazenagem, manuseio de materiais, embalagem e
programao da produo.
Em tempos de mercados competitivos e mais exigentes h uma busca por melhorias no
desempenho operacional das empresas oferecendo qualidade no atendimento ao cliente,
aproveitando ao mximo os recursos disponveis de forma a minimizar os custos logsticos do
processo produtivo.
Em muitos casos, no so as vantagens tecnolgicas ou mercadolgicas que garantem
o sucesso da empresa, e sim o transporte, tanto de matria-prima quanto de produtos
acabados, pois esta a atividade logstica mais importante representando, em mdia, de um a
dois teros do total dos custos envolvidos em todo o sistema (Ballou, 1993).
Conseqentemente, o planejamento de uma empresa de distribuio deve ser feito
levando em considerao, principalmente, essa atividade logstica. Para isso, se faz necessrio
uma ferramenta que auxilie a tomada de deciso.

1.1.1. Problema de Roteamento de Veculos

O Problema de Roteamento de Veculos (PRV) pode ser definido como segue. Dado
um conjunto de pontos, cada qual com uma demanda qi por um produto, e um depsito com
veculos de capacidade Q, encontrar as rotas para os veculos minimizando os custos de
transporte.
Uma grande quantidade de aplicaes prticas do PRV pode ser encontrada na
literatura. Por exemplo, Brown & Graves (1981), Fisher et al. (1982), Bell et al. (1983), Evans
& Norback (1985), Golden & Watts (1987) mostram aplicaes nas indstrias de petrleo,
qumicas, alimentcias e de bebidas.

SISTEMA DE APOIO DECISO EM PROBLEMAS DE TRANSPORTES DE PRODUTOS AGRCOLAS

Em face ao leque de possibilidades que se abre com relao a roteirizao de veculos


pode-se fazer a seguinte diviso (Bodin, Golden, Assad e Ball, 1983):

Problemas com pontos fixos (jornais, transporte escolar, supermercados)

Problemas com pontos variveis (lojas de departamentos)

Problemas com pontos concentrados

Problemas com pontos espaados

Problemas restritos por janelas de tempo

Problemas sem restrio de janelas de tempo

Problemas com restries de unicidade: cada cliente s pode ser servido por um e
somente um veculo

Problemas de restries de frota: cada veculo tem uma capacidade conhecida de


carga, alm disto o nmero de veculos que compe a frota pode ser conhecido a
priori, tendo-se neste caso que impor a condio adicional de que o nmero de rotas a
ser gerado no pode ultrapassar o nmero de veculos disponveis.

Problemas de restries de precedncia: determinados clientes no podem ser


visitados antes que outros o sejam. (situao comum onde h entrega e coleta
simultnea de mercadorias)

Problemas de restries temporais: cada veculo s pode operar durante intervalos de


tempo de durao limitada, ou cada cliente s opera, para recebimento ou entrega de
mercadoria, durante uma faixa limitada de tempo

Problemas com mltiplos depsitos: existem vrios depsitos, mas cada veculo est
associado a um depsito especfico, ou os vrios depsitos podem ser usados
indistintamente por todos os veculos

Problemas com frota no homognea: constituda de veculos com capacidades


distintas ou diferenciados por compartimentos especiais de armazenagem com
demanda incerta dos clientes

Problemas com mltiplos objetivos: por exemplo, alm de minimizar o comprimento


total percorrido pelos veculos, quer se otimizar o custo total da frota, levando em
conta o investimento na frota de veculos prprios e o custo de usar veculos alugados.
Pode-se supor que uma parcela de clientes tenha maior relevncia e no seja preciso
visitar todos, mas somente aqueles mais importantes

O interesse no PRV parcialmente devido sua importncia prtica, mas tambm


sua dificuldade. Como uma generalizao do Problema do Caixeiro Viajante (PCV), o PRV
10

SISTEMA DE APOIO DECISO EM PROBLEMAS DE TRANSPORTES DE PRODUTOS AGRCOLAS

pertence classe de problemas NP-Difcil (LENSTRA, 1981), portanto no existem


algoritmos em tempo polinomial para encontrar solues timas. Os algoritmos exatos
existentes raramente conseguem resolver problemas envolvendo mais do que 50
consumidores (RENAUD & BOCTOR, 2002).
Devido ao limitado sucesso dos mtodos exatos, os esforos de pesquisa tm sido
direcionados no desenvolvimento de heursticas para lidar com problemas de maior porte.
Exemplos de heursticas bem sucedidas para resolver PRV so os algoritmos baseados em
Busca Tabu de Taillard (1993), Osman (1993) e Gendreau et al. (1994), e a heurstica de
ptalas de Renaud et al.(1996).

1.1.2. Otimizao na Agricultura

A globalizao da economia est acarretando mudanas nos sistemas de produo


agrcola e em toda a cadeia do agronegcio, requerendo cada vez mais de todos os segmentos
envolvidos maior qualidade dos produtos e servios, racionalizao do uso de recursos
naturais, otimizao do uso de insumos e preservao do ambiente. Com isso, est havendo
um aumento na demanda para a utilizao de tecnologias modernas, como as de
sensoriamento remoto, sistemas de informao geogrfica (GIS), sistemas de posicionamento
global (GPS), plataformas automticas de aquisio de dados, agricultura e pecuria de
preciso, instrumentao e automao para um melhor gerenciamento dos sistemas agrcolas
(NIASA, 2004).
Apesar dos avanos alcanados em pases desenvolvidos, a automao de processos e
de sistemas na agricultura e pecuria brasileira ainda muito incipiente.
Com o uso de dispositivos de microprocessamento possvel melhorar este quadro e
buscar alternativas para o desenvolvimento visando a utilizao de informaes em processos
de tomada de deciso que visem a racionalizao e otimizao de recursos e melhoria de
desempenho nos transportes agrcolas. Para isso, a informtica tem um papel cada vez mais
relevante, para possibilitar intervenes que tornem esses sistemas mais eficientes. A
Unicamp e a Embrapa tm desenvolvido importantes projetos ligados rea de agricultura,
visando utilizar ferramentas de instrumentao e microprocessamento em diversos ramos, e
este presente projeto visa aplicar as tcnicas de roteamento de veculos, amplamente
difundidas em aplicaes de transporte urbano e escolar, para otimizao do transporte de
produtos agrcolas de uma regio produtora para um centro de estocagem.

11

SISTEMA DE APOIO DECISO EM PROBLEMAS DE TRANSPORTES DE PRODUTOS AGRCOLAS

1.2. Estudo do Sistema de Informaes Geogrficas MapObjects


A atividade cartogrfica computacional, como toda atividade computacional, requer a
execuo de programas. Existem disponveis no mercado muitos aplicativos para uso em
cartografia. Destacam-se AutoCAD, MicroStation, MaxiCAD/DbMapa, ArcInfo, Vision,
Spring. Todos estes aplicativos tm caractersticas prprias que os tornam atrativos, pela
facilidade de uso, pela adequao a uma linha de pesquisa ou linha de produo, ou ainda pela
disponibilidade de funes apropriadas finalidade do trabalho. A experimentao de
metodologias fica restrita quelas admitidas pelo fabricante ou desenvolvente do aplicativo.
Alguns fabricantes ou desenvolventes j incorporam linguagens acessrias aos seus produtos
de tal modo que permitido ao usurio expandir ou adequar operaes e/ou procedimentos de
seu interesse. Este o caso do AutoCAD com o Visual Lisp e Visual Basic, do MicroStation
com o MicroStation Basic e do ArcInfo com o Microsoft Visual Basic for Applications
(VBA). Com estas linguagens possvel ampliar o espectro de aes que estes aplicativos
comerciais podem realizar.
A experimentao de novas metodologias pode ser alcanada pelo desenvolvimento de
aplicativos voltados para o problema que se quer abordar. Para estes casos existem diversas
linguagens de programao, como ForTran, Basic, Pascal, C, com caractersticas voltadas
para desenvolvimentos que no fazem uso do ambiente grfico. Foram desenvolvidas novas
linguagens de programao que incorporam ferramentas que diminuem o esforo no
desenvolvimento de aplicativos que dependem de interface grfica. So exemplos, Microsoft
Visual C++, Microsoft Visual Basic e Borland Delphi.
Em todas estas linguagens e programas aplicativos citados existem trs pontos que so
essenciais para as atividades de cartografia digital:
a.

representao de dados

b.

operao e transformao de dados

c.

visualizao de dados

O sistema de informaes geogrficas MapObjects 2.1 foi utilizado neste trabalho


como

principal

ferramenta

de

desenvolvimento

de

aplicativos

para

cartografia,

disponibilizando objetos para desenvolvimento de um software utilizando o ambiente de


desenvolvimento C++ Builder 5.5, com a linguagem de programao orientada a objetos C++.

12

SISTEMA DE APOIO DECISO EM PROBLEMAS DE TRANSPORTES DE PRODUTOS AGRCOLAS

1.2.1. O MapObjects 2.1


O MapObjects 2.1 consiste de um controle ActiveX denominado Map e um conjunto
de 46 objetos de automao ActiveX. Esta ferramenta foi desenvolvida pela empresa Norte
Americana ESRI (Environmental Systems Research Institute), referncia mundial no
desenvolvimento de produtos computacionais para as reas de Cartografia, GIS (Geographical
Information Systems) e Sensoriamento Remoto.
Os recursos disponveis no MapObjects 2.1 podem ser incorporados a aplicativos
desenvolvidos em Visual C++, Visual Basic, Delphi, C++ Builder, Power Builder e Visual
Basic for Applications (VBA). A linguagem orientada a objeto C++ com o ambiente de
desenvolvimento C++ Builder 5.5 foi adotada para desenvolver o projeto.
1.2.2. Fontes de Dados
O MapObjects admite tanto dados vetoriais quanto matriciais. Sendo um produto da
empresa ESRI aceita muitos de seus prprios padres de dados. O MapObjects aceita dados
Shapefile, coverages do ARC/INFO, nveis SDE (Spatial Database Engine), formatos CAD
(Computer Aided Design), arquivos VPF (Vector Product Format), tabelas de atributos, dados
em grade e arquivos de imagem. As trs primeiras fontes de dados para o MapObjects so
especificadas pela prpria ESRI e so formatos usados por outros de seus aplicativos. Embora
diversos formatos de dados possam ser abertos com o MapObjects 2.1 alguns deles devem
sofrer um pr-processo de seleo e adequao ao conceito de Shapefile (formato padro).
Neste presente projeto foi adotado como fonte de dados os arquivos do tipo ShapeFile.
Os Shapefiles contm uma organizao de arquivos apropriada para armazenamento de
feies geogrficas no formato vetorial. Nestes arquivos as feies so armazenadas por meio
de coordenadas (x,y), (x,y,z) ou (x,y,z,m), onde m a componente que indica a posio
relativa de alguma feio de interesse. Esta componente denominada "measure".
Um Shapefile composto por trs arquivos. O primeiro arquivo contm os dados
propriamente ditos, o segundo arquivo contm ndices para os dados do primeiro e o terceiro
contm os atributos dos dados do primeiro. Os arquivos so distinguidos entre si pela
extenso do nome do arquivo. Os arquivos de dados geomtricos tm extenso .shp, os
arquivos de ndices tm extenso .shx e os arquivos de atributos tm extenso .dbf. Um
conjunto Shapefile vlido, como mostrado na Figura 1, formado por trs arquivos com o
mesmo nome, porm com extenses diferentes (ribpreto.shp, ribpreto.shx e ribpreto.dbf). Os

13

SISTEMA DE APOIO DECISO EM PROBLEMAS DE TRANSPORTES DE PRODUTOS AGRCOLAS

arquivos de atributos so arquivos no formato dbf, ou seja, so tabelas alfanumricas que


armazenam os atributos referentes aos dados geomtricos presentes no arquivo .shp.

Fig. 1 - Conjunto Shapefile (Fonte: Building Applications with MapObject, pg 28)

Os Shapefiles foram projetados para armazenar pontos, linhas e reas. Os pontos para
indicar feies pontuais, as linhas que podem ser abertas ou fechadas para indicar feies
lineares ou para indicar feies de rea. Existe a possibilidade de representar organizaes de
dados mais complexas como redes de tringulos, polgonos com reas vazadas ou buracos.

1.2.3. Conjunto de Classes do MapObjects 2.1


As classes do MapObjects esto organizadas em cinco grupos de acordo com a
caracterstica da tarefa a executar, conforme mostrado na Figura 2.

Fig. 2 - Grupos de classes do MapObjects 2.1

Descreve-se a seguir cada uma das classes:


a) Classes para acesso a dados: os objetos destas classes so usados para estabelecer
conexo a dados. Os dados podem estar em um dos formatos vetoriais j mencionados.
Seu propsito permitir a incluso de arquivos de dados no controle Map e permitir que
os dados geomtricos e dados de atributos possam ser acessados por outros objetos;
14

SISTEMA DE APOIO DECISO EM PROBLEMAS DE TRANSPORTES DE PRODUTOS AGRCOLAS

b) Classes para verificao de endereos: so quatro classes destinadas s operaes para


determinar posies sobre um mapa a partir de dados de endereos ou intersees;
c) Classes para projees cartogrficas : so oito classes destinadas a realizar o
referenciamento de dados em diferentes projees cartogrficas. So possveis
transformaes de dados para entrada e apresentao;
d) Classes para operaes geomtricas: estas classes servem ao propsito de recuperao
de informao das feies selecionadas de um nvel, para adicionar objetos geomtricos a
um nvel, e tambm para desenhar sobre um mapa sem alterar seus nveis. Este grupo
composto por sete classes, previstas para tratar pontos, multipontos, linhas e polgonos.
Uma operao para determinar o significado de uma feio selecionada em um mapa faz
uso dos objetos geomtricos;
e) Classes para visualizao de mapas : estas classes compem o grupo mais importante do
MapObjects 2.1. So as classes destinadas a gerar as visualizaes possveis com o
MapObjects. As classes deste grupo so usadas na criao de objetos deste e de outros
grupos. Todas as operaes a serem realizadas com classes de qualquer grupo requerem
que o controle Map esteja definido.

1.2.4. O Ambiente de Programao Visual C++ Builder 5.5

O ambiente de desenvolvimento C++ Builder 5.5 permite que se criem, de forma


rpida e fcil, aplicaes dispondo de interface grfica com o usurio. Assim, possvel
desenvolver programas relativamente complexos em pouco tempo, usando conceitos de
programao visual, programao orientada a objetos e reutilizao de cdigos.
Os termos e conceitos apresentados pela linguagem (como, por exemplo: objeto,
propriedade e evento), para fazer referncia aos elementos que compem um aplicativo, tm
um significado padro para a grande maioria dos ambientes de programao visual (Delphi,
Visual Basic, Visual C++, etc.).
A programao orientada a objetos surgiu como uma nova proposta de programao,
constituindo um novo paradigma em programao. Antes do advento da programao
orientada a objeto, os modelos de programao se baseavam na programao estruturada. O
modelo de programao estruturada procura ver um programa em termos de seu fluxo de
controle. Com a programao estruturada o programa visto como um fluxograma a ser
15

SISTEMA DE APOIO DECISO EM PROBLEMAS DE TRANSPORTES DE PRODUTOS AGRCOLAS

construdo com base em estruturas de controle (de sequncia, de seleo e de repetio) que
podem ser combinadas segundo regras bem estabelecidas (como a de empilhamento e a de
aninhamento). J na programao orientada a objetos a nfase recai nos dados do problema e
na construo de classes que representem estes dados. Com isso, a programao orientada a
objetos permite (caso as classes sejam bem estabelecidas) a reutilizao de cdigo,
aumentando a produtividade de equipes de desenvolvimento de software.
A incluso de caractersticas de programao orientada a objetos linguagem C
originou a linguagem C++. Dada a capacidade de criar cdigos reutilizveis da programao
orientada a objetos e com o advento da interface grfica com o usurio (Graphic User
Interface GUI) ganhou muita importncia os ambientes de programao visual.

1.3. Desenvolvimento do sistema de apoio deciso

1.3.1. Mtodo de Soluo

O mtodo de soluo implementado neste trabalho considera o problema de


determinao de rotas dividido em dois subproblemas:

- Formao de agrupamentos (clusters) de clientes a serem atendidos, em funo das


demandas dos clientes e da capacidade do veculo;
- Determinao das melhores rotas para cada um dos agrupamentos.

A soluo do primeiro subproblema emprega um algoritmo heurstico para o problema


de p-medianas capacitado. O segundo subproblema resolvido por um algoritmo heurstico
que resolve o problema do caixeiro viajante. Para uma ferramenta de auxlio ao processo de
tomada de deciso importante a utilizao de algoritmos heursticos, pois estes permitem a
obteno de boas solues (embora nem sempre timas) em um tempo computacional
razovel.

1.3.1.1.O Algoritmo de Determinao de Clusters

Neste trabalho, a determinao de clusters foi modelada como um problema de pmedianas. O problema de p-medianas capacitado um problema clssico de localizao
(Lorena e Senne, 2003). O objetivo localizar p ns (denominados medianas) em uma rede de
forma a minimizar a soma das distncias de cada cliente at sua mediana mais prxima,
16

SISTEMA DE APOIO DECISO EM PROBLEMAS DE TRANSPORTES DE PRODUTOS AGRCOLAS

respeitando as restries de capacidade de atendimento de tais facilidades, ou seja, a soma das


demandas dos clientes que pertencem a um agrupamento identificado por uma mediana no
pode exceder capacidade da mediana. Para a soluo deste problema foi empregado um
algoritmo heurstico que se baseia na relaxao lagrangeana/surrogate combinado com
mtodos de otimizao por subgradientes (Senne e Lorena, 2000). O algoritmo desenvolvido
trabalha com dois limitantes para os valores da soluo tima do problema: o limitante
superior, dado pela melhor soluo vivel encontrada, e o limitante inferior, dado pelo valor
da soluo relaxada. O algoritmo procura, a cada iterao, minimizar o limitante superior e
maximizar o limitante inferior, at que, se possvel, os valores desses limitantes se igualem
(caso em que a soluo tima obtida), ou estejam distantes por um pequeno valor (gap). A
Figura 3 ilustra o comportamento computacional tpico de tal algoritmo.

Fig. 3 - Variao dos limitantes Inferior e Superior

1.3.1.2.O Algoritmo de Determinao de Rotas

Neste trabalho, a determinao de rotas foi modelada como um problema do caixeiro


viajante. O PCV um dos problemas mais amplamente discutidos em otimizao
combinatria. Laporte et al. (1996) mostram que uma grande variedade de problemas de
otimizao combinatria pode ser modelada como um PCV, dentre os quais problemas de
localizao, problemas de fluxo e problemas de determinao de rotas. A soluo exata do
PCV, em geral, requer tempos computacionais muito grandes (Grtchel e Holland, 1991). Em
aplicaes prticas, o problema resolvido por algoritmos heursticos. No sistema
desenvolvido emprega-se o algoritmo LK (Lin e Kernighan, 1973) apresentada em (Helsgaun,
2000).
O algoritmo LK utiliza como base o algoritmo de trocas r-opt que consiste em trocar r
ligaes por outras r ligaes de forma que o novo trajeto seja mais curto, e continuar fazendo
trocas dessa forma at que no seja possvel melhorar o trajeto. Quando no possvel reduzir
o custo do trajeto fazendo a mudana de r ligaes, diz-se que o trajeto r-timo. Desta
17

SISTEMA DE APOIO DECISO EM PROBLEMAS DE TRANSPORTES DE PRODUTOS AGRCOLAS

definio segue que, se um trajeto r-timo, este trajeto tambm q-timo, com 1 = q = r e,
portanto, um trajeto timo se e somente se ele n-timo. Quanto maior o valor de r, mais
curto ser o trajeto, porm maior ser o tempo de execuo. Para obter o melhor compromisso
com a relao entre tempo de execuo e qualidade do resultado, o algoritmo LK realiza
testes para decidir qual o valor de r a ser utilizado a cada etapa. Para aumentar a eficincia, o
algoritmo LK ainda impe algumas regras para limitar a escolha das ligaes e direcionar a
procura pelas ligaes.

ATIVIDADES DESENVOLVIDAS NO PRIMEIRO ANO DE PESQUISA

O Sistema de Apoio Deciso foi concludo em sua primeira parte desenvolvendo


suas funes bsicas para tratamento de um arquivo de mapa, determinando pontos de
roteamento e criando um novo arquivo de mapas contendo somente os pontos encontrados e
seus atributos e um arquivo textual contendo suas coordenadas, utilizando as ferramentas do
MapObjects 2.1. Com estes dados, foi possvel a simulao de Rotas para cada Caminho de
transportes de produtos agrcolas, obtendo a resposta atravs de um outro arquivo textual, que
foi posteriormente gerado estatisticamente por um algoritmo matemtico desenvolvido pelo
Orientador do Projeto.
Aps a obteno das rotas, o resultado correspondente foi visualizado atravs de
diferentes cores. Estas operaes so o Cerne do Sistema, sendo as demais opes como
trmino do menu principal, facilidades na interface com o usurio, e diversos recursos de
visualizao e tratamento de dados, concludas no segundo semestre do Projeto.

1.3.2. A Tela Principal

A tela inicial do Sistema apresenta cinco estruturas bsicas. composta de um Menu


Principal com as opes do programa, uma barra de ferramentas que contm as principais
funes desenvolvidas para visualizao e alterao de mapas e suas propriedades,
apresentadas em um modo de rpido acesso, uma rea Central onde o mapa visualizado e
ocorre a interao entre este e o usurio, um Painel Lateral onde so apresentadas as
principais informaes sobre os pontos e ruas do mapa e as propriedades necessrias para se
dividir o mapa em clusters e por fim a Barra de Status, onde so apresentadas informaes
suplementares durante a execuo do Sistema. A Figura 4 apresenta esta tela inicial.

18

SISTEMA DE APOIO DECISO EM PROBLEMAS DE TRANSPORTES DE PRODUTOS AGRCOLAS

Barra de Ferramentas

Menu

Painel
Lateral

rea Central

Barra de Status

Fig. 4 - Tela Principal do Sistema

1.3.2.1.Menus

Fig. 5 - Menus do Sistema

O Menu Principal composto de dois itens, como se pode visualizar na Figura 5.


No Menu Projeto so apresentadas as opes bsicas de manipulao de projetos no
Sistema, podendo criar um novo projeto, abrir um projeto existente, salvar e fechar, alm da
opo de sair do Sistema.
O Menu Mapa rene os itens da barra de ferramentas responsveis por modificar as
propriedades de um mapa, como uma segunda opo de acesso, podendo-se visualizar as
teclas de atalho existentes.

19

SISTEMA DE APOIO DECISO EM PROBLEMAS DE TRANSPORTES DE PRODUTOS AGRCOLAS

1.3.2.2.Barra de Fe rramentas
Propriedades dos Clusters
Tabelas de Pontos

Novo Projeto

Pesquisar

Abrir Projeto

Cores

Salvar Projeto

Mais Zoom (+)

Visualizar Rotas

Menos Zoom (-)


Posicionar

Selecionar Ponto
Selecionar Rua
Melhor Ajuste

Fig. 6 - Barra de Ferramentas

Os Botes Novo Projeto, Abrir Projeto e Salvar Projeto representam as mesmas


opes do menu Projeto.
Os Botes Mais Zoom(+), Menos Zoom(-), Posicionar e Melhor Ajuste so
ferramentas de visualizao do Mapa na Tela do Sistema.
Os Botes Selecionar Rua e Selecionar Ponto possibilitam a seleo de ambos,
separadamente, e a apresentao no Painel Lateral de seus atributos, que podem ser
modificados.
O Boto Extrair Pontos selecionado para encontrar os pontos de cada interseo de
ruas e montar as tabelas de pontos e distncias e sua funo de extrema importncia para o
Sistema, e ser visto em maior profundidade no item 1.3.3.4.
As propriedades dos mapas e pontos podem ser acessadas atravs de trs botes. O
boto Cores possibilita modificar as cores de fundo, das ruas e pontos. O boto Pesquisar
possibilita a pesquisa de uma rua ou um ponto especfico. O boto Visualizar Tabela
disponibiliza uma tabela com os atributos de cada ponto, identificando os clusters e a
distncia entre pontos.
O boto Visualizar Rotas o estgio final da elaborao do projeto, onde as rotas so
visualizadas no mapa. Esta funo aprofundada no item 1.3.3.13.

20

SISTEMA DE APOIO DECISO EM PROBLEMAS DE TRANSPORTES DE PRODUTOS AGRCOLAS

1.3.2.3.Painel Lateral

O painel lateral apresenta trs guias de acesso. Na Guia Pontos podem ser alteradas
dois tipos de atributos. O primeiro atributo, na parte superior, responsvel por alterar a
capacidade dos caminhes de coleta e criar uma demanda padro para todos os pontos, sendo
possvel a escolha entre as duas opes. O segundo tipo apresenta os atributos de um ponto
especfico, selecionado pelo usurio atravs da habilitao do boto Selecionar Ponto.
A guia Ruas apresenta os atributos de uma rua especfica, selecionada pelo usurio
atravs da habilitao do boto Selecionar Rua.
A guia Clusters apresenta os atributos para se obter os clusters de determinado mapa, e
ser aprofundada no item 1.3.3.11.
1.3.3. Funes

Esta seo apresenta em detalhes cada funo desenvolvida no Sistema, com nfase na
criao de Clusters e Rotas e a manipulao de mapas e projetos. Definem-se trs etapas para
confeco de um projeto: a extrao de pontos, a obteno dos clusters e a visualizao das
rotas calculadas. As outras funes so complementares dessas e so importantes para se
chegar ao resultado final, que so as rotas criadas.

1.3.3.1.Abrindo um Novo Projeto de Mapas

Ao clicar em Novo Projeto na barra de ferramentas ou no Menu Projeto, abre-se uma


janela, como visualizado na Figura 7.

Fig. 7 - Criando um novo projeto

21

SISTEMA DE APOIO DECISO EM PROBLEMAS DE TRANSPORTES DE PRODUTOS AGRCOLAS

Para criar um novo projeto, preciso selecionar o mapa especfico dentre diversos
outros mapas, que podem ser adicionados pelo usurio. Para tanto, deve-se colocar o novo
arquivo de mapas dentro da pasta Mapas, que definida dentro da pasta em que o Sistema
est instalado. Aps clicar no mapa escolhido, deve-se especificar um nome para o projeto,
para que este possa ser aberto posteriormente. Aps clicar em Abrir, o mapa aparecer na
rea Central, como visto na Figura 8.

Fig. 8 - Visualizao de um mapa (Ribeiro Preto)

1.3.3.2.Abrindo um Projeto de Mapas Existente

Ao clicar em Abrir Projeto na Barra de Ferramentas ou no Menu Projeto, abre-se uma


janela, como mostrado na Figura 9.

Fig. 9 - Abrindo um projeto existente.


22

SISTEMA DE APOIO DECISO EM PROBLEMAS DE TRANSPORTES DE PRODUTOS AGRCOLAS

A janela apresenta as pastas de cada projeto. Estas pastas esto contidas em uma pasta
denominada Projetos, definida dentro da pasta em que o sistema est instalado. Abrindo-se
esta pasta, preciso selecionar o arquivo com extenso .prm, que definida como Projeto
de Mapa .prm. Aps a seleo, clica-se em abrir. O Sistema ir recuperar os dados salvos
(como dados dos pontos, clusters e ruas), como visto na Figura 10, e o estado atual do Sistema
salvo ser apresentado na rea Central.

Fig. 10 - Recuperando Dados de um projeto existente

1.3.3.3.Zoom e Posicionamento

Utilizando os botes Mais Zoom (+), Menos Zomm (-), Posicionar e Melhor Ajuste,
possvel ampliar ou reduzir o mapa. Com o boto Mais Zoom, pode-se ampliar uma regio
especfica do mapa, como mostrado na Figura 11. O boto Posicionar, pode-se mover o
mapa em qualquer direo, enquanto que o boto Melhor Ajuste faz com que todo o mapa
seja visualizado na rea Central.

Fig. 11 - Implementao da funo Mais Zoom (+)


23

SISTEMA DE APOIO DECISO EM PROBLEMAS DE TRANSPORTES DE PRODUTOS AGRCOLAS

1.3.3.4.Extraindo Pontos do Mapa

Esta a parte fundamental do Sistema apresentado. Sua funo principal criar um


arquivo de mapa com cada ponto de interseo entre as ruas e seus respectivos atributos, e
criar dois arquivos .txt que contm a distncia de cada ponto a todos os demais, distncia esta
euclidiana e de rede (que considera a distncia somando as distncias das ruas),
respectivamente, gerando duas matrizes quadradas. Estas informaes so necessria para
dividir o mapa em clusters.
Ao clicar em Extrair Pontos na Barra de Ferramentas ou no Menu Mapa, uma caixa de
dilogo aparece, mostrando atravs de uma barra de progresso o desenvolvimento de cada
etapa desta funo, ao total de seis etapas (uma das etapas visualizada na Figura 12).

Etapa 1 Extrai os pontos do Mapa.


Etapa 2 Grava o arquivo com os pontos.
Etapa 3 Aloca memria para o clculo das matrizes.
Etapa 4 Calcula a matriz de rede.
Etapa 5 Prepara os dados para visualizao.
Etapa 6 Salva todos os dados e conclui.

Fig. 12 - Extraindo pontos de um mapa

Concluda todas as etapas, os pontos so apresentados no mapa, conforme a Figura 13.


24

SISTEMA DE APOIO DECISO EM PROBLEMAS DE TRANSPORTES DE PRODUTOS AGRCOLAS

Fig. 13 - Visualizando os pontos do mapa

1.3.3.5.Alterando Proprieda des dos Pontos

Aps extrair os pontos do mapa, seus atributos podem ser


alterados atravs do boto Selecionar Ponto. Com o mouse, deve-se
clicar no ponto especificado. Seus atributos ento so visualizados
no Painel Lateral, na guia Pontos. Na Figura 14 so mostrados os
atributos do ponto 37 do mapa de Ribeiro Preto, no Painel Dados
do Ponto.
Os atributos de um ponto so o Nome, a Capacidade e a
Demanda, que podem ser alteradas clicando em Aplicar.
Para se alterar os dados de todos os pontos mais facilmente,
pode-se recorrer aos atributos do Painel Configuraes, alterando a
Capacidade ou a Demanda, modificando todos os pontos.

Fig. 14 - Propriedades do Pontos

25

SISTEMA DE APOIO DECISO EM PROBLEMAS DE TRANSPORTES DE PRODUTOS AGRCOLAS

1.3.3.6.Alterando Propriedades das Ruas

Abrindo um mapa qualquer, os atributos de cada rua podem


ser alterados atravs do boto Selecionar Rua. Com o mouse, devese clicar na rua especificada. Seus atributos ento so visualizados
no Painel Lateral, na guia Ruas. Na Figura 15 so visualizados os
atributos de uma rua, que so o Nome, o Tipo (R de rua ou AV de
Avenida), o Bairro e o CEP, que so alterados ao clicar no boto
Aplicar.

Fig. 15 - Propriedade da Rua

1.3.3.7.Pesquisando Pontos e Ruas

Clicando no boto Pesquisar na Barra de Ferramentas ou no Menu Mapa, surgir uma


caixa de dilogo com duas Guias, Pontos e Ruas (visualizadas na Figura 16).
Na guia Pontos, pode-se procurar um ponto especfico por seu nome ou por seu
nmero, clicando em Procura.
Na Guia Ruas, pode-se procurar uma rua especfica por seu Nome ou por seu CEP.
O Ponto ou a Rua encontrada ficar piscando por 5 segundos e seus atributos
aparecero no Painel Lateral.

a)

b)
Fig. 16 - a) Pesquisando Pontos b) Pesquisando Ruas

26

SISTEMA DE APOIO DECISO EM PROBLEMAS DE TRANSPORTES DE PRODUTOS AGRCOLAS

1.3.3.8.Alterando Cores do Mapa

Pode-se alterar a cor do fundo da rea Central, das ruas ou dos pontos, clicando no
boto Cores na Barra de Ferramentas ou no Menu Mapa. So disponibilizadas nesta verso 16
diferentes cores. Uma Janela (visualizada na Figura 17) aparecer com as opes. Para alterar
uma cor, arrasta-se, com o boto esquerdo do mouse pressionado, a cor para o item desejado.

Fig. 17 - Alterando cores do mapa

1.3.3.9.Definindo o ponto central

Para dividir o mapa em clusters e obter as rotas, necessrio antes definir um ponto
central, de onde os caminhes partiro e retornaro. Para tanto, deve-se selecio nar um ponto
especfico, atravs do boto Selecionar Ponto e selecionar a opo Definir Ponto Central na
guia Pontos do Painel Lateral, conforme Figura 14. Aps aplicar esta alterao, o ponto ser
marcado com um tringulo em vermelho, como pode ser visto na Figura 18.

Fig. 18 - Visualizando o Ponto Central


27

SISTEMA DE APOIO DECISO EM PROBLEMAS DE TRANSPORTES DE PRODUTOS AGRCOLAS

1.3.3.10.

Dividindo o Mapa em Clusters

A prxima etapa do Sistema na confeco de um projeto dividir o mapa em clusters,


que representam a quantidade de caminhes disponibilizados para o transporte de produtos
agrcolas. Cada cluster contm uma quantidade especfica de pontos, e este valor definido
levando-se em conta a soma da demanda de cada ponto, que no deve ultrapassar a
capacidade do Caminho.
Para se obter os clusters, deve-se clicar na guia Clusters do
Painel Lateral (visualizado na Figura 19). preciso definir o nmero
de clusters (caminhes) e o gap mximo desejado (em porcentagem).
Para se entender esse valor necessrio explicar o modo de
funcionamento do Algoritmo de clusters. Este busca encontrar a
melhor soluo, portanto h dois limitantes, um superior e um
inferior. Nas iteraes do algoritmo, este vai diminuindo o limitante
superior e aumentando o inferior, e o gap a diferena entre eles.
Quanto menor o gap, mais demorado o tempo para se obter os
clusters. Ainda considerando o algoritmo de clusters, pode-se
escolher entre dois mtodos de soluo, na Verso Lagrangeana e na
Verso Surrogate. A ultima considerada melhor em muitos casos,
porm pode-se obter um resultado melhor em alguns projetos
utilizando o outro mtodo. O Algoritmo tambm utiliza dois
arquivos .txt: a matriz de distncia e a informao da demanda e do

Fig. 19 - Guia Clusters

nmero de cada ponto, que gerado logo antes de sua execuo.


Verificadas estas condies, necessrio clicar no boto Obter Clusters para iniciar o
algoritmo de soluo. Aparecer ento uma caixa de dilogo indicando o gap atual numa barra
de porcentagem. O gap diminuir com as iteraes at atingir o valor especificado. A Barra de
Status mostra o tempo de CPU gasto na soluo, a quantidade de iteraes, o limitante inferior
e superior e o fator de Surrogate, conforme a Figura 20.

28

SISTEMA DE APOIO DECISO EM PROBLEMAS DE TRANSPORTES DE PRODUTOS AGRCOLAS

Fig. 20 - Obtendo Clusters

Aps ser atingido o gap desejado, o algoritmo de cluster gera um arquivo .txt com a
lista dos nmeros dos pontos de cada cluster e sua quantidade total. O Sistema l esse arquivo
e apresenta cada cluster na tela colorindo os pontos de forma a identificar cada cluster
visualmente. A Figura 21 mostra os cluster obtidos pra quatro caminhes no mapa de Ribeiro
Preto.

Fig. 21 - Visualizando os Clusters


29

SISTEMA DE APOIO DECISO EM PROBLEMAS DE TRANSPORTES DE PRODUTOS AGRCOLAS

Informaes acerca dos ltimos resultados obtidos na gerao dos clusters so


visualizados em ltimo Resultado na Figura 19, que contm o tempo de CPU, o limite
inferior e superior, o gap final e o custo da soluo encontrada.

1.3.3.11.

Alterando Propriedades dos Clusters

Definidos os clusters, clicando-se no boto Propriedades dos Clusters na barra de


ferramentas, pode-se alterar duas opes: cores e visibilidade dos clusters, a partir de uma
janela que surgir na tela (Figura 22). Selecionando no menu um cluster qualquer, possvel
alterar sua cor arrastando para o item Cor Atual uma outra cor com o boto esquerdo do
mouse pressionado. Para se ocultar o clusters, seleciona-se o item Ocultar Cluster.
H ainda a opo de Ocultar Todos os clusters e Ocultar Pontos, selecionando-se os
respectivos itens.

Fig. 22 - Propriedades dos Clusters

1.3.3.12.

Visualizando Tabela de Pontos

A janela de tabela de pontos acessvel atravs do boto Visualizar Tabela e se torna


visvel aps se extrair os pontos do mapa. H quatro diferentes Tabelas. A tabela de pontos
mostra os atributos de cada ponto do mapa, bem como suas coordenadas cartesianas. A tabela
de distncias mostra a matriz de distncias euclidianas entre os pontos. A tabela de clusters
mostra os nmeros dos pontos de cada clusters e sua quantidade total e por fim a tabela de
predecessores indica o caminho que um caminho ter que percorrer para chegar at um ponto
at outro qualquer. A Tabela mostrada na Figura 23.

30

SISTEMA DE APOIO DECISO EM PROBLEMAS DE TRANSPORTES DE PRODUTOS AGRCOLAS

Fig. 23 - Tabela de Pontos

1.3.3.13.

Obtendo Rotas

A ltima etapa do projeto o clculo das rotas. Cada rota parte do ponto central
definido, percorre todos os pontos do cluster e retorna ao ponto. Para cada cluster h uma rota
especfica. Aps obtidos os clusters, o boto Visualizar Rotas habilitado, e ao clic- lo o
Sistema inicia o Algoritmo de Rotas, que busca calcular o menor caminho para percorrer
todos os pontos.

Fig. 24 - Visualizando Rotas


31

SISTEMA DE APOIO DECISO EM PROBLEMAS DE TRANSPORTES DE PRODUTOS AGRCOLAS

Este Algoritmo utiliza para clculo o arquivo de matriz de distncias e dos nmeros
dos clusters. Aps seu trmino, o Algoritmo gera um arquivo .txt que contem os nmeros dos
pontos da seqnc ia de cada rota, e o Sistema l esses dados e traa a rota obtida no mapa,
como pode ser visualizado na Figura 24.

1.3.3.14.

Salvando um Projeto

Para se salvar um projeto, basta clicar no boto Salvar na Barra de Ferramentas ou no


Menu Projeto. Este boto habilitado em trs ocasies: quando se extrai os pontos de um
sistema, quando se obtm os clusters e quando so visualizadas as rotas. De preferncia o
projeto deve ser salvo a cada uma dessas etapas, para que no se percam os resultados
obtidos. Quando um projeto salvo, o nico modo de exclu- lo apagando sua pasta que est
contida na pasta Projetos.

1.3.3.15.

Fechando um Projeto

Para fechar um projeto aberto, basta clicar no item Fechar no Menu Projeto. Uma
caixa de dilogo de confirmao ir surgir, e se o projeto precisa ser salvo, o Sistema
perguntar se deseja salvar o mesmo. Em caso negativo, todas as alteraes no salvas sero
desconsideradas e se o projeto no tiver sido salvo em nenhum momento, ser excludo
permanentemente e se perder todos seus resultados.
Ao clicar em Abrir e um outro projeto j estiver aberto, uma caixa de alerta ser
exibida, pedindo a confirmao de abertura. Em caso afirmativo, o projeto ser fechado e, se
no foi salvo, ser perguntado se deseja salvar o projeto ou no.

ATIVIDADES DESENVOLVIDAS NO SEGUNDO ANO DE PESQUISAS

No primeiro semestre do segundo ano de desenvolvimento do sistema de apoio


deciso teve por objetivo sua reestruturao e implementao de novas facilidades ao usurio.
A reestruturao do sistema foi focada na melhoria da interface principal e do cdigo- fonte,
de modo a facilitar a insero de novos problemas de geoprocessamento de dados. Tambm se
priorizou mudanas que facilitaram a execuo de tarefas para o usurio e visualizaes que
melhoraram a compreenso do problema em questo e de suas solues apresentadas.
O algoritmo de rotas tambm foi reestruturado, de modo a tornar mais eficientes seus
resultados, comparando com problemas cujas melhores solues so conhecidas. Por fim,
32

SISTEMA DE APOIO DECISO EM PROBLEMAS DE TRANSPORTES DE PRODUTOS AGRCOLAS

apresentado um tutorial bsico das principais funcionalidades do sistema, agora nomeado


PCLog, como um guia prtico de execuo do mesmo.

1.3.4. Reestruturao do Sistema

1.3.4.1.Reestruturao do cdigo-fonte

O cdigo- fonte do sistema, ou seja, as linhas de instrues, foram revisadas e


reestruturadas. Foram retiradas todas as linhas de comandos no utilizveis e redundantes e
variveis suprfluas foram excludas de modo a ter uma maior economia de memria
consumida pelo sistema.
Foram realizados diversos testes de execuo do sistema com a finalidade de verificar erros
de programao, sendo modificada cada rotina implementada erroneamente. As habilitaes
de objetos foram tambm revisadas, para que rotinas no sejam indevidamente executadas. As
operaes de manipulao de projetos, abertura, salvamento e fechamento, foram melhoradas,
podendo recuperar todos os dados salvos de um projeto.
As funes desenvolvidas e eventos de objetos foram reestruturados e agrupados em
blocos de acordo com suas funcionalidades. Esta ao teve como finalidade uma maior
clareza do cdigo-fonte para um maior entendimento do mesmo para outros desenvolvedores
de softwares, para que novas rotinas e problemas possam ser inseridos. A Figura 18 apresenta
uma viso de uma parte do cdigo-fonte do arquivo principal do sistema.

Fig. 25 - Cdigo-fonte

33

SISTEMA DE APOIO DECISO EM PROBLEMAS DE TRANSPORTES DE PRODUTOS AGRCOLAS

1.3.4.2.Reestruturao da Interface Principal

A principal meta na reestruturao da interface principal foi permitir a incluso de


novos problemas no sistema e facilitar o uso de suas aplicaes. O painel lateral foi
modificado, contendo 3 guias de acesso: Dados, Projetos e Opes. A primeira guia se destina
manipulao de dados do mapa e apresenta 2 guias secundrias, Pontos e Ruas, em que
apresenta os atributos de cada dado. Os dados continuam sendo acessados atravs dos botes
da barra de ferramentas, que sero abordados em seqncia. A segunda guia se destina aos
tipos de problemas aplicveis ao projeto, e conta com 2 guias secundrias, Clusters e Rotas,
que apresentam os atributos e comandos necessrios execuo dos problemas em questo. A
terceira guia apresenta as opes de configuraes e visualizaes do sistema.
Outras guias e atributos podem ser adicionados interface, podendo inserir novos
tipos de dados, problemas e configuraes, no modificando o modo de acesso aos dados na
Interface Principal.
Foi adicionado um novo item no menu principal, o menu Ajuda. Este menu apresenta
duas opes: Ajuda e Sobre, e sero implementadas no segundo semestre do projeto. A Figura
19 apresenta as modificaes na interface.

Fig. 26 - Painel Lateral

34

SISTEMA DE APOIO DECISO EM PROBLEMAS DE TRANSPORTES DE PRODUTOS AGRCOLAS

1.3.4.3.Reestruturao da Janela de Cores

A Janela de cores, acionada pelo boto Cores na barra de ferramentas, foi inteiramente
modificada. As Ruas, os Pontos e os clusters do mapa so apresentados em uma lista de
seleo e os atributos cores e visualizao de cada camada podem ser alterados.
Diferentemente da verso anterior, a gama de cores disponveis foi significativamente
expandida, sendo possvel a escolha de todas as cores disponibilizadas pelo sistema
operacional. A Figura 20 apresenta a janela de cores.

Fig. 27 - Janela de Cores

1.3.4.4.Reestruturao da Visualizao do Ponto Central

Foi implementada uma interface que possibilita alterar os atributos de visualizao do


Ponto Central no mapa. Pode-se agora escolher o tamanho do ponto, seu estilo (crculo,
tringulo, quadrado e cruz) e sua cor. Essas modificaes facilitam a visualizao e destaque
do ponto central no mapa selecionado. A Figura 21 apresenta essas configuraes, que foram
adicionadas guia Opes.

1.3.4.5.Mudanas no Projeto de Clusters

O projeto de clusters foi modificado de modo a permitir uma maior facilidade de


implementao e visualizao de cada cluster no mapa. A escolha do tipo de mtodo de
soluo foi retirada e o cluster ser sempre calculado com o mtodo de soluo Surrogate,
pois este apresenta melhores resultados. Outra configurao adicionada guia Opes foi a
escolha do tipo de matriz de distncia a ser calculada. Pode-se optar por escolher a matriz de
distncias euclidianas entre os pontos ou a distncia de rede, que leva em considerao as ruas
do mapa. A matriz utilizada no clculo do cluster e na tabela de distncias, sendo o clculo
35

SISTEMA DE APOIO DECISO EM PROBLEMAS DE TRANSPORTES DE PRODUTOS AGRCOLAS

da matriz de rede mais demorada, porm a que representa melhor geograficamente as


distncias entre os pontos.
Na visualizao dos clusters, a novidade o destaque tambm das ruas envolvidas em
cada cluster com uma cor caracterstica, assim como os pontos, visando facilitar o
reconhecimento e diviso de cada cluster. A Figura 21 mostra o resultado da diviso do mapa
de Ribeiro Preto em 4 clusters. Nela possvel tambm visualizar o ponto central (o
tringulo no centro do mapa).

Fig. 28 - Visualizao de Clusters

1.3.4.6.Integrao do algoritmo de clculo de rotas no sistema

O algoritmo de clculo de rotas foi inteiramente integrado ao sistema, sendo seu


clculo e resultados automticos. Uma das fases mais dispendiosas desta primeira etapa foi o
teste dos resultados apresentados pelo algoritmo com problemas com as melhores solues
conhecidas. Foram aplicados diversos tipos de rotinas visando melhorar os resultados, e as
principais rotinas testadas foram na mudana do clculo da matriz de distncia entre pontos
para execuo do algoritmo e a mudana da forma da diviso em clusters pelo algoritmo de
clusters.
Para a matriz de distncia, a principal mudana levantada foi a considerao da
distncia relativas entre os pontos considerando o ponto central, de modo a dirigir as rotas em
funo da partida e chegada dos caminhes at o depsito central. Foram testados diversos
tipos de clculos, tais como:
36

SISTEMA DE APOIO DECISO EM PROBLEMAS DE TRANSPORTES DE PRODUTOS AGRCOLAS

Clculo 1

dist=sqrt(((x1-x2)*(x1-x2))+((y1-y2)*(y1-y2)));
dist1=sqrt(((x1-cx)*(x1-cx))+((y1-cy)*(y1-cy)));
dist2=sqrt(((x2-cx)*(x2-cx))+((y2-cy)*(y2-cy)));

dist=dist+(((dist1+dist2)/2)*(Peso);

Clculo 2
dist=sqrt(((x1-x2)*(x1-x2))+((y1-y2)*(y1-y2)));
dist1=sqrt(((x1-cx)*(x1-cx))+((y1-cy)*(y1-cy)));
dist2=sqrt(((x2-cx)*(x2-cx))+((y2-cy)*(y-cy)));

dist=dist+max(dist1,dist2)*(Peso);

Clculo 3
dist=sqrt(((x1-x2)*(x1-x2))+((y1-y2)*(y1-y2)));
dist1=sqrt(((x1-cx)*(x1-cx))+((y1-cy)*(y1-cy)));
dist2=sqrt(((x2-cx)*(x2-cx2))+((y2-cy)*(y-cy)));

dist=dist+(max(dist1,dist2)-min(dist1,dist2))*(Peso);

Clculo 4

dist=sqrt(((x1-x2)*(x1-x2))+((y1-y2)*(y1-y2)));
dist1=sqrt(((x1-cx)*(x1-cx))+((y1-cy)*(y1-cy)));
dist2=sqrt(((x2-cx)*(x2-cx))+((y2-cy)*(y2-cy)));

dist=(dist*(1+(Peso)*sqrt(fabs(1-pow((dist1*dist1+dist2*dist2dist*dist)/(2*dist1*dist2),2)))));

Clculo 5
dist=sqrt(((x1-x2)*(x1-x2))+((y1-y2)*(y1-y2)));
dist1=sqrt(((x1-cx)*(x1-cx))+((y1-cy)*(y1-cy)));
dist2=sqrt(((x2-cx)*(x2-cx))+((y2-cy)*(y2-cy)));

cos_alpha = (dist1*dist1 + dist2*dist2dist*dist)/(2*dist1*dist2);


ca = 1-cos_alpha;
dist = dist*(1+ca*(Peso));

37

SISTEMA DE APOIO DECISO EM PROBLEMAS DE TRANSPORTES DE PRODUTOS AGRCOLAS

Clculo 6

dist=sqrt(((x1-x2)*(x1-x2))+((y1-y2)*(y1-y2)));
dist1=sqrt(((x1-cx)*(x1-cx))+((y1-cy)*(y1-cy)));
dist2=sqrt(((x2-cx)*(x2-cx))+((y2-cy)*(y2-cy)));

cos_alpha = (dist1*dist1 + dist2*dist2


dist*dist)/(2*dist1*dist2);
ca=1-cos_alpha+sqrt(fabs(1-cos_alpha*cos_alpha));
dist = dist*(1+ca*(Peso));

(x1,y1) Coordenadas do Ponto 1


(x2,y2) Coordenadas do Ponto 2
(xc,yc) Coordenadas Ponto Central
dist1 Distncia do Ponto 1 ao Ponto Central
dist2 Distncia do Ponto 2 ao Ponto Central
dist Distncia final relativa calculada

Aps exaustivos testes, foi verificado que o algoritmo que apresentava melhores
resultados foi o de mudana do clculo da matriz de distncias atravs do clculo 5 com peso
4, sendo este implementado no sistema.

CONCLUSO DO PROJETO

1.3.5. Funes Especiais

Na ltima etapa de elaborao do projeto, foram realizados os testes de verificao de


implementao do sistema, a filtragem de dados, alteraes no salvamento e abertura de
arquivos e um manual on- line do usurio do sistema.

1.3.5.1.Filtragem de dados

A filtragem de dados teve como objetivo a diviso dos pontos do mapa em cinco tipos
diferentes, alm do tipo padro, que engloba todos os pontos. Ainda foi realizada a excluso
de pontos do mapa, fazendo com que estes no integrem nenhum tipo de dados.

38

SISTEMA DE APOIO DECISO EM PROBLEMAS DE TRANSPORTES DE PRODUTOS AGRCOLAS

Selecionando os pontos em diversos tipos, torna-se possvel obter clusters e rotas para
cada caso. Para isto foi necessria a mudana de todo o cdigo do sistema para essa
adaptao, tais como a abertura de arquivos e seu salvamento e visualizao de tipos de
pontos e clusters. Foi inserido o atributo Tipo na tabela de pontos, de modo a classificar os
mesmos nos diversos tipos selecionados pelo usurio. Esta seleo pode ser feita atravs de
novos botes inseridos na barra de ferramentas e na guia de pontos, como mostrada na Figura
29.

Fig. 29 - Seleo de tipos

Fig. 30 - Funes para selecionar pontos

Desenhando um retngulo com o mouse na rea de mapa conforme a Figura 29, todos
os pontos contidos no retngulo faro parte do tipo selecionado na lista visualizada na Figura
30. Atravs dos botes Inserir e Cancela os atributos dos pontos selecionados so
alterados na tabela.

39

SISTEMA DE APOIO DECISO EM PROBLEMAS DE TRANSPORTES DE PRODUTOS AGRCOLAS

Os atributos podem ser alterados selecionando ponto a ponto, atravs do boto


Selecionar Ponto da barra de ferramentas. A guia Pontos foi alterada de modo a agregar em
uma lista de seleo todas as aes possveis de ser aplicadas aos pontos, tais como Definir
Depsito, Excluir Ponto e Definir tipo. Escolhendo a ltima opo, possvel alterar o tipo do
ponto selecionado. Essas alteraes so visualizadas na Figura 30.
A guia de Projeto Clusters tambm foi alterada de modo a especificar o tipo de pontos
a ser aplicada a diviso em clusters atravs de uma lista. O tipo padro engloba todos os
pontos, menos os excludos. Altera-se a opo Aplicar em, selecionando o tipo Padro, Tipo
1, Tipo 2, Tipo 3, Tipo 4 e Tipo 5. Na construo do sistema foi definido que haveria cinco
tipos diferentes de pontos, em que o usurio seleciona aleatoriamente. A Figura 31 mostra a
obteno da diviso em clusters de pontos selecionados.

Fig. 31 - Diviso em clusters para pontos do tipo 1

Quando o projeto salvo, so armazenados os tipos de todos os pontos e o ltimo tipo


selecionado, de tal forma a reabrir o projeto de acordo com as ltimas alteraes. Foi
incrementado tambm o armazenamento das cores de cada camada do mapa, de modo a
recuper- las ao abrir novamente o projeto.

1.3.5.2.Manual On-line do Sistema PCLog

Foi elaborado um manual bsico de operao do sistema PCLog, para auxiliar o


usurio em seus primeiros contatos com o sistema. O manual foi construdo em forma de
40

SISTEMA DE APOIO DECISO EM PROBLEMAS DE TRANSPORTES DE PRODUTOS AGRCOLAS

paginas web, tornando a navegao a mais familiar possvel e mais transparente. A Ajuda
acessada atravs da incluso do novo item Ajuda do menu principal. A tela inicial
apresentada na Figura 32.

Fig. 32 - Manual On-line

1.3.6. Funes Excludas

A funo Alterar propriedades dos clusters foi integrada funo Alterar cores do
sistema, com o propsito de diminuir as janelas diferentes abertas e diminuir os botes da
barra de ferramentas, facilitando o acesso para o usurio.
O modo de visualizao de clusters foi alterado. Com o acrscimo da funo de filtragem
de pontos, tornou-se invivel a mudana de cor das ruas englobadas por cada cluster, e esta
opo foi excluda.

2.

Comentrios Finais

A etapa final de construo do sistema PCLog mostrou-se bastante demorada, em funo


de testes para verificao de erros no projeto, e a funo Filtragem de pontos consumiu
grande parte do trabalho, pois para que esta fosse satisfatoriamente executada, foi necessria a
alterao de diversas partes do programa para que este se ajustasse aos novos problemas e
para facilitar o acesso ao usurio. Adicionando a isto, a construo do Manual On- line atravs
de paginas web foi um outro fator que custou boa parte do tempo, com o intuito de facilitar
41

SISTEMA DE APOIO DECISO EM PROBLEMAS DE TRANSPORTES DE PRODUTOS AGRCOLAS

uma maior compreenso do sistema PCLog para usurios e alunos que continuarem o
desenvolvimento do projeto.
O objetivo desse projeto tornou-se mais abrangente e destinou-se construo de uma
plataforma de execuo de diferentes projetos baseados em mapas. Com isso, sua interface foi
dimensionada para que haja uma continuao do projeto de pesquisa, podendo adicionar
facilmente diversos projetos. Inicialmente, o PCLog suporta dois tipos de projetos, da diviso
do mapa em clusters e da obteno de rotas. A plataforma de geoprocessamento de dados
MapObjects mostrou-se uma poderosa ferramenta de desenvolvimento para novos projetos
baseados em mapas. Suas funes e objetos foram amplamente utilizados e para isto foi
necessria uma grande pesquisa sobre sua aplicao, sendo que no Brasil h raros livros sobre
o tema e no h quase nenhuma referncia ao uso do MapObjects em conjunto com a
plataforma de desenvolvimento C++ Builder 5.5, sendo a maioria de exemplos empregando a
plataforma Visual Basic. Para tanto, foi utilizada em diversas oportunidades um frum de
discusso na Internet disponibilizado pela prpria empresa construtora do MapObjects, em
que programadores de todo o mundo comentam suas experincias e respondem duvidas que
outros usurios possam ter.
Por fim, em dois anos de projeto, diversas metodologias e lgicas foram empregadas na
construo do sistema, e algumas se mostraram amplamente satisfatrias e outras foram
descartadas, sempre com o objetivo de aprimorar a eficincia e facilidade ao usurio final. A
experincia obtida torna-se til aos prximos projetos de iniciao cientfica que continuem a
trabalhar nesta rea, para que possam usar cdigos j construdos na linguagem c++. A
oportunidade dada pela CNPq pesquisa cientfica e a experincia do orientador na rea
foram extremamente importantes para o desenvolvimento do projeto, e a experincia
adquirida pelo aluno bolsista de valor inestimvel ao seu currculo e desenvolvimento como
pessoa e profissional qualificado.

3.

Referncias Bibliogrficas

Aronoff, S. Geographic Information Systems: A management perspective. WSL Publications,


Otawa, Canad, 1989.
Bacellar, A.A.A. Estudo da eroso na microbacia hidrogrfica do Ribeiro Cachoeirinha Municpio de Iracempolis, utilizando um sistema de informao geogrfica. Relatrio de
Estgio, FEAGRI/UNICAMP, 1994, 30p.
Ballou, R. H. Logstica Empresarial: Transportes, Administrao de Materiais e Distribuio
Fsica. Atlas, So Paulo 1993.
42

SISTEMA DE APOIO DECISO EM PROBLEMAS DE TRANSPORTES DE PRODUTOS AGRCOLAS

Bell, W.; Dalberto, L.; Fisher, M. L.; Greenfield, A.; Jaikumar, R.; Mack, R. & Prutzman, P.
Improving distribution of industrial gases with an on-line computerized routing and
scheduling systems, Interface. V. 13, p. 4-23, 1983.
Bodin, L.; Golden, B.; Assad, A.; Ball, M. Routing and scheduling of vehicles and crews: the
state of the art. Computers and Operations Research, 10(2): 65-211, 1983.
Brown, G. & Graves, G. Real-time dispatch of petroleum tank trunks, Management Science.
V. 27, p. 19-32, 1981.
Burrough, P.A. Principles of Geographical Information System for land resources
assessment. Clarendon Press, Oxford, England, 1986.
Christofides, N.; Mingozzi, A.; Toth, P. The vehicle routing problem. In: Combinatorial
Optimization, Christofides, N.; Mingozzi, A.; Toth P. and Sandi C. (eds.). John Wiley,
1979.
ESRI. Building Applications with MapObjects. Environmental Systems Research Institute,
Inc., Redlands, CA, 1996.
Evans, S & Norback, J. The impact of a decision-support system for vehicle routing in a food
service supply situation. Journal of the Operational Research Society, v. 36, p. 467-472,
1985.
Fisher, M. L.; Greenfield, R.; Jaikumar, R. & Lester J. A computerized vehicle routing
application, Interfaces.V. 1, p. 45-52, 1982.
Fraisse, C.W., Campbell, K.L., Jones; J.W., Boggess, W.G. Integration of GIS and GLEAMS
for alternative dairy waste management analysis. American Society of Agricultural
Engineers, Paper Number 942508, USA, 1994.
Gendrau, M.; Hertz, A. & Laporte, G. A tabu search heuristic for the vehicle routing problem.
Management Science, v. 40, p. 1276-1290, 1994.
Gendreau, M.; Laporte G.; Potvin, J.Y. Vehicle routing: modern heuristics. In: Local Search
in Combinatorial Optimization. E. Aarts and J.K. Lenstra (eds.), p. 311-336. John Wiley,
1997.
Golden, B. L. & Watts, E. Computerized vehicle routing in the soft drink industry. Operations
Research, v. 35, p. 6-17, 1987.
Kirihata, R.; Senne, E.L.F. TranSIG: Sistema de Apoio Deciso para Planejamento de
Transporte Urbano. In: 13 Congresso de Iniciao Cientfica da Unesp, Bauru, SP, out.
2001. Resumos, p. 59.
Lenstra, J. & Rinnooy Kan, A. Complexity of vehicle routing and scheduling problems.
Networks, v.11, p. 221-228, 1981.

43

SISTEMA DE APOIO DECISO EM PROBLEMAS DE TRANSPORTES DE PRODUTOS AGRCOLAS

Lorena, L.A.N.; Senne, E.L.F. Improving traditional subgradient scheme for Lagrangean
relaxation: an application to location problems, International Journal of Mathematical
Algorithms, 1: 133-151, 1999.
Lorena, L.A.N.; Senne, E.L.F. Local search heuristics for capacitated p- median problems. In:
17th European Conference on Operational Research, Budapest, Hungary, July, 2000.
Lorena, L.A.N.; Senne, E.L.F. Local Search Heuristics for Capacitated p-Median Problems,
Networks and Spatial Economics, 3, (4): 407-419, Dec. 2003.
Lorena, L.A.N.; Senne, E.L.F.; Paiva, J.A.C.; Marcondes, S.P.B. Integrao de um Modelo de
p-Medianas a Sistemas de Informaes Geogrficas. In: 31 Simpsio Brasileiro de
Pesquisa Operacional, Juiz de Fora, MG, Out. 1999. Anais, p. 635-647.
Marimoto, A.P.R.; Senne, E.L.F. Sistema de Apoio Deciso para Problemas de Localizao
e Roteamento em Redes. In: 14 Congresso de Iniciao Cientfica da Unesp, Presidente
Prudente, SP, set. 2002. Resumos em CD-ROM.
Osman, I. H. Metastrategy simulated annealing and tabu search algorithms for the vehicle
routing problem. Annals of Operations Research 41, 421-451, 1993.
NIASA,

Ncleo

de

Instrumentao

Automao

de

Sistemas

Agrcolas.

In

<http://www.cnpms.embrapa.br/nucleos/niasa/niasa1.html>. Acesso em 06/03/2004.


Peixoto, M.Q.B.; Senne, E.L.F. Soluo de Problemas de Localizao e Roteamento em
Redes com Sistema de Informaes Geogrficas. In: 14 Congresso de Iniciao
Cientfica da Unesp, Presidente Prudente, SP, set. 2002. Resumos em CD-ROM.
Pinto, A.A.; Senne, E.L.F. Utilizao de Sistema de Informaes Geogrficas para Anlise de
Redes. In: 11 Congresso de Iniciao Cientfica da Unesp, Araraquara, SP, Out. 1999.
Resumos, p. 36.
Platford, G.G. A geographic information system for use in the sugarcane industry.
Proceedings of the Sixty- fourth Annual Congress - South African Sugar Technologists
Association, Mount Edgecombe, South Africa, 1990, pp.83-87.
Reinelt, G. The Traveling Salesman: Computational Solutions for TSP Applications. Berlin,
Springer-Verlag, 1994.
Renaud, J.; Boctor, F. F. &. Laporte, G. An improved petal heuristic for the vehicle routing
problem. Journal of the Operational Research Society, v. 47, p. 329-336, 1996.
Renaud, J. & Boctor, F. F. A sweep-based algorithm for the fleet size and mix vehicle routing
problem. European Journal of Operational Research, v. 140, p. 618-628, 2002.
Rocha, J.V. Uma nova tecnologia para o gerenciamento agrcola de usinas e destilarias.
Alcool & Acar, Vol.15, No. 79, 1995, pp.30-35.

44

SISTEMA DE APOIO DECISO EM PROBLEMAS DE TRANSPORTES DE PRODUTOS AGRCOLAS

Senne, E.L.F.; Lorena, L.A.N. Lagrangean/Surrogate Heuristics for Facility Location


Problems. In: EURO XV - INFORMS XXXIV Joint International Meeting. Barcelona,
Espanha, Jul. 1997. Abstracts, p. 128.
Senne, E.L.F.; Lorena, L.A.N. Lagrangean/Surrogate Heuristics for p-Median Problems. In:
Computing Tools for Modeling, Optimization and Simulation: Interfaces in Computer
Science and Operations Research, M. Laguna and J.L. Gonzalez-Velarde (eds.), Kluwer
Academic Publishers, p. 115-130, 2000.
Taillard, E. D. Parallel iterative search methods for vehicle routing problems. Networks 23,
661-673, 1993.
Zocarato, C.A.; Senne, E.L.F. Anlise de Redes Urbanas com Sistema de Informaes
Geogrficas. In: 11 Congresso de Iniciao Cientfica da Unesp, Araraquara, SP, Out.
1999. Resumos, p. 132.

45

SISTEMA DE APOIO DECISO EM PROBLEMAS DE TRANSPORTES DE PRODUTOS AGRCOLAS

4.

ndice de Figuras

Fig. 1 - Conjunto Shapefile (Fonte: Building Applications with MapObject, pg 28)...................................................14


Fig. 2 - Grupos de classes do MapObjects 2.1 ...................................................................................................................14
Fig. 3 - Variao dos limitantes Inferior e Superior..........................................................................................................17
Fig. 5 - Menus do Sistema.......................................................................................................................................................19
Fig. 7 - Criando um novo projeto..........................................................................................................................................21
Fig. 8 - Visualizao de um mapa (Ribeiro Preto)..........................................................................................................22
Fig. 9 - Abrindo um projeto existente...................................................................................................................................22
Fig. 10 - Recuperando Dados de um projeto existente......................................................................................................23
Fig. 11 - Implementao da funo Mais Zoom (+)..........................................................................................................23
Fig. 12 - Extraindo pontos de um mapa...............................................................................................................................24
Fig. 13 - Visualizando os pontos do mapa...........................................................................................................................25
Fig. 16 - a) Pesquisando Pontos b) Pesquisando Ruas...................................................................................................26
Fig. 17 - Alterando cores do mapa........................................................................................................................................27
Fig. 18 - Visualizando o Ponto Central................................................................................................................................27
Fig. 20 - Obtendo Clusters .....................................................................................................................................................29
Fig. 21 - Visualizando os Clusters ........................................................................................................................................29
Fig. 22 - Propriedades dos Clusters.....................................................................................................................................30
Fig. 23 - Tabela de Pontos......................................................................................................................................................31
Fig. 24 - Visualizando Rotas..................................................................................................................................................31
Fig. 25 - Cdigo-fonte.............................................................................................................................................................33
Fig. 26 - Painel Lateral...........................................................................................................................................................34
Fig. 27 - Janela de Cores........................................................................................................................................................35
Fig. 28 - Visualizao de Clusters ........................................................................................................................................36
Fig. 29 - Seleo de tipos........................................................................................................................................................39
Fig. 30 - Funes para selecionar pontos............................................................................................................................39
Fig. 31 - Diviso em clusters para pontos do tipo 1 ..........................................................................................................40
Fig. 32 - Manual On-line ........................................................................................................................................................41

46

Você também pode gostar