• Nenhum resultado encontrado

5. Sistemas de Informação Geográfica

5.3. Extensão Network Analyst

A extensão Network Analyst permite realizar análises espaciais tendo como base redes. No ArcGIS, uma rede corresponde a um sistema de elementos vectoriais interligados ou seja, linhas que ligam pontos, que pretendem representar por exemplo: estradas que ligam cidades, ruas que se ligam em cruzamentos, linhas de água e de esgotos que ligam habitações, etc. Os

148 Sistemas de Informação Geográfica

elementos que constituem a rede têm propriedades associadas que controlam o fluxo na rede. São estas propriedades que permitem definir o tipo de rede ou seja, se as linhas correspondem a arcos (mais apropriadas para redes de transportes pois permitem definir o sentido de circulação como uma propriedade) ou a arestas (mais apropriados para redes de serviços). O tipo de dados para modelar redes de transportes é o network dataset, que possui um conjunto de atributos associados tais como: custos associados às arestas (tempo, distância ou procura, e é proporcional ao seu comprimento), descritores (por exemplo, número de vias ou limite de velocidade de uma estrada), restrições (por exemplo, ruas de sentido único, proibição de circulação de peões numa determinada via, altura máxima dos veículos permitida numa via, etc.) e hierarquias (ordem ou grau atribuído às vias; geralmente são agrupadas em três níveis - estradas principais, secundárias e locais). Refira-se que em relação aos conceitos base desta extensão, nomeadamente quanto à construção, edição e manipulação dos dados do tipo

network dataset, muito haveria a acrescentar, saindo, no entanto, fora do âmbito desta tese.

Sugere-se, uma vez mais, que, caso seja do interesse, se consulte o site de ajuda do ArcGIS

Desktop para um estudo mais detalhado do assunto. Veremos de seguida todas as funções da

extensão Network Analyst (versão 9.3 do ArcGIS).

 Rotas e Direcções – determina a melhor rota, tendo em conta um tipo de custo escolhido pelo utilizador (se for a distância então trata-se do caminho mais curto), de um ponto da rede a outro, directamente ou passando por vários locais (Figura 5.21). Pode-se considerar a existência de obstáculos na rede ou seja, pontos por onde uma rota não pode passar. Existem vários parâmetros que podem ser definidos para a função, nomeadamente: considerar os sentidos de circulação das estradas; atribuir à rota uma data e hora de início; utilizar janelas temporais para cada um dos vários locais isto é, os locais têm um intervalo de tempo em que podem ser visitados; especificar a ordem de passagem pelos vários locais, solicitar a melhor sequência de passagem, ou indicar só a origem e o destino final e os restantes locais podem ser ordenados pela melhor sequência; definir a política de inversão de marcha (permitir em todos os locais, em nenhum ou só em estradas sem saída); definir a forma de apresentar o resultado (trajecto real ou através de um segmento de recta a unir os pontos); usar hierarquias das estradas; e acumular os valores de atributos seleccionados para apresentar na solução final.

Capítulo 5 149 Associado à melhor rota, esta função indica pormenorizadamente as direcções do trajecto (Figura 5.22). Quando a ordem de passagem pelos vários locais é especificada pelo utilizador estamos perante vários problemas de caminho mais curto e, neste caso, o algoritmo de base utilizado pela extensão Network Analyst, segundo o referido no site de ajuda, é o de Dijkstra [42]. São feitas várias modificações ao algoritmo de forma a suportar as restrições à rede, a melhorar o seu desempenho e a tolerar localizações nas arestas. Por outro lado, quando é solicitada à função que indique a melhor sequência para percorrer os pontos, trata-se de um problema de caixeiro-viajante (neste caso, sem haver regresso ao ponto de partida). Para a sua resolução é usada uma meta-heurística

tabu-search desenvolvida pela própria ESRI, que não garante a obtenção da solução

óptima.

Figura 5.21 Caminho mais curto entre dois pontos.

150 Sistemas de Informação Geográfica

 Serviço Mais Próximo – tendo em conta um tipo de custo de afectação escolhido pelo utilizador, determina os serviços mais próximos (em número especificado pelo utilizador) e as respectivas rotas, de um ou vários pontos da rede. Tal como no caso anterior, pode considerar-se a existência de obstáculos na rede, respeitar os sentidos de circulação das estradas, definir a política de inversão de marcha, definir a forma de apresentar os resultados, usar hierarquias das estradas, acumular os valores de atributos seleccionados para apresentar na solução final e, associado a cada caminho, temos um mapa com as direcções pormenorizadas. Esta função permite ainda definir um custo máximo a partir do qual um caminho não é considerado admissível, fixar um número de serviços mais próximos a calcular e definir o sentido de circulação das rotas ou seja, dos pontos para os serviços ou vice-versa.

Figura 5.23 Exemplo ilustrativo da função Serviço Mais Próximo, correspondente ao caminho mais curto

de 58 pontos a um de 3 serviços.

O algoritmo utilizado é o de Dijkstra, com as modificações mencionadas na função Rotas e Direcções, e de forma a suportar a possibilidade de definir um custo máximo e um número fixo de serviços a determinar.

 Matriz de Custo Origens-Destinos – esta função é, em tudo, semelhante à anterior, excepto na visualização do output e no tempo de processamento do cálculo. O sentido dos trajectos é sempre das origens para os destinos. A visualização gráfica do resultado

Capítulo 5 151 é sempre dada através de segmentos de recta a unir os pontos de origem e de destino, não sendo possível visualizar as rotas reais e as direcções. Consequentemente, uma vez que não é guardada toda a informação relativa às direcções, permite que o algoritmo de cálculo seja mais eficiente.

Figura 5.24 Exemplo ilustrativo da função Matriz de Custos Origens-Destinos, correspondente ao caminho

mais curto de 58 pontos a um de 3 serviços.

 Área de Serviço – determina a região espacial (linhas e/ou polígonos) que engloba todas as ruas acessíveis num certo limite máximo de custo, especificado pelo utilizador, a partir de uma localização da rede. Por exemplo, a área de serviço de 10 minutos de um certo serviço inclui todas as ruas que podem ser percorridas em 10 minutos a partir do local desse serviço. Podem ser determinadas várias áreas de serviço para diferentes valores máximos de custo e para várias localizações da rede. Quanto aos vários parâmetros que podem ser considerados para a função são: definir os vários valores máximos de custo; definir o sentido de circulação das rotas ou seja, o trajecto é percorrido para o serviço (por exemplo, se o serviço for um hospital) ou a partir do serviço (por exemplo, se o serviço for uma pizaria); considerar a existência de obstáculos na rede; respeitar os sentidos de circulação das estradas; definir a política de inversão de marcha; acumular os valores de atributos seleccionados para apresentar na solução final; e definir várias propriedades dos tipos de linhas e polígonos a apresentar como

152 Sistemas de Informação Geográfica

Figura 5.25 Exemplo ilustrativo da função Área de Serviço relativamente a 3 pontos.

 Planeamento de Rotas de Veículos – esta função pretende resolver o conhecido problema de planeamento de rotas de veículos que consiste na determinação de um conjunto de rotas, a realizar por uma frota de veículos a partir de um depósito central, de forma a satisfazer um conjunto de clientes e a minimizar um tipo de custo de afectação. O problema original de planeamento de rotas requer que algumas restrições sejam asseguradas, nomeadamente: os veículos iniciam e acabam a rota no depósito central; o custo das rotas é limitado; os veículos têm uma capacidade associada e cada cliente é visitado uma única vez. Esta função da extensão Network Analyst apresenta mais algumas restrições, como por exemplo: veículos/motoristas com objectivos e competências diferentes (transporte de mercadoria, venda, inspecção) e podem ser assegurados intervalos de descanso para os condutores. A função apresenta um vasto conjunto de parâmetros a definir, que não iremos detalhar. Sendo este problema uma generalização do problema do caixeiro-viajante, o algoritmo utilizado para a resolução do problema tem como base a meta-heurística tabu-search já mencionada anteriormente. O algoritmo começa por gerar uma matriz de custos origem-destino entre todos os clientes e todos os depósitos. Usando esta matriz de custos é construída uma solução inicial admissível, que é melhorada através de alterações de sequenciação dos clientes em cada rota, mudanças de clientes de uma rota para outra, e trocas de clientes entre as rotas.

Capítulo 5 153 Refira-se para concluir o subcapítulo que enquanto este trabalho decorria, uma nova versão do ArcGIS foi lançada no mercado, a versão 10.0. Esta nova versão apresenta uma extensa lista de actualizações e de novas funcionalidades em toda a linha de produtos comercializados pela ESRI, e em particular, nas extensões aqui exploradas. Das várias novas funcionalidades existentes não poderíamos deixar de mencionar a inclusão de uma nova função na extensão Network Analyst, que permite a resolução de problemas de localização monocritério. Tal como as funções anteriores, esta também permite especificar diversos parâmetros, e dependendo dessas especificações, estamos perante algumas variantes de modelos de localização conhecidos. O facto de não ser apresentada qualquer formulação matemática dos modelos torna as suas interpretações, por vezes, um pouco complicadas. Em qualquer um dos modelos pode definir-se a existência de obstáculos na rede (nesta última versão para além de pontos, podem considerar-se linhas e polígonos), o tipo de custo de afectação (por exemplo a distância ou o tempo), os sentidos de circulação das estradas, o sentido de circulação das rotas ou seja, dos pontos de procura para os serviços ou vice-versa, a política de inversão de marcha, a forma de apresentar os resultados (trajecto real ou segmentos de recta) e o uso de hierarquias das estradas. O tipo de custo de afectação pode ser alvo de uma transformação linear, potência ou exponencial. Os modelos referidos no site de ajuda desta nova versão são:

-Median: pretende determinar a localização de um número fixo (especificado pelo utilizador) de serviços a instalar, de forma a satisfazer a procura de um conjunto de pontos, em que a procura é completamente satisfeita por um único serviço. A função objectivo consiste na minimização total de um tipo de custo de afectação (por exemplo, a distância ou o tempo), multiplicado pelo peso/importância (por exemplo, a população) de cada ponto de procura. Esta função permite ainda definir um custo máximo a partir do qual uma afectação não é considerada admissível, o que pode levar a que alguns pontos de procura não sejam afectados a nenhum serviço.

Maximize Coverage: neste caso, a função objectivo consiste na maximização da

cobertura total ou seja, na maximização do número de pontos de procura afectados a serviços, tendo em conta um custo máximo de afectação admissível. O número de serviços a instalar é fixado pelo utilizador.

154 Sistemas de Informação Geográfica

Minimize Facilities: este modelo é semelhante ao anterior, com a excepção de se

pretender também minimizar o número de serviços a instalar para cobrir todos os pontos de procura, em vez de ser fixado à partida.

Maximize Attendance: a função objectivo consiste na maximização da atractividade total

causada pelos serviços instalados. Esta atractividade é medida pela quantidade de procura (peso associado ao ponto de procura, como por exemplo, a população) afectada aos serviços instalados, em que a procura é uma função decrescente da distância entre o ponto de procura e o serviço. Um ponto de procura só pode ficar afectado a um único serviço, mesmo que a sua procura não seja completamente satisfeita. O número de serviços a instalar é fixado pelo utilizador. Este modelo também permite definir um custo máximo a partir do qual uma afectação não é considerada admissível logo, mais uma vez, podem haver pontos de procura que não sejam afectados a nenhum serviço.

Maximize Market Share: pretende determinar a localização de um número fixo de

serviços a instalar, de forma a maximizar a atractividade total causada por esses serviços na presença de concorrência ou seja, maximizar a cota de mercado total. Para cada serviço define-se um índice de atractividade. Neste caso, um ponto de procura pode ficar afectado a mais do que um serviço, sendo a procura de cada ponto dividida pelos diversos serviços (de forma directamente proporcional ao índice de atractividade do serviço e inversamente proporcional à distância entre o serviço e o ponto de procura). É mencionado no site de ajuda que este modelo, e o próximo, utilizam um modelo de Huff, não sendo dado mais nenhum detalhe sobre o assunto.

Target Market Share: pretende determinar o número mínimo de serviços necessário, de

forma a obter uma percentagem fixa (especificada pelo utilizador) da cota de mercado total, na presença de concorrência.

Capítulo 5 155 Em qualquer um dos seis modelos, cada potencial local para a instalação de um serviço pode ser definido como: candidato (pode fazer, ou não, parte da solução) ou requerido (tem de fazer parte da solução). No caso dos dois últimos modelos, pode também ser definido como concorrente.

Todos os modelos mencionados são resolvidos através de uma heurística. Esta começa por gerar uma matriz de custos origem-destino entre todos os serviços e os pontos de procura da rede. Depois, é construída uma versão editada da matriz usando um processo conhecido como Edição de Hillsman [82]. Este processo de edição permite que a heurística se adapte a diferentes tipos de problemas. De seguida, a heurística gera um conjunto de soluções semialeatórias e aplica uma outra heurística de substituição de vértices (Teitz e Bart [139]) para melhorar estas soluções, criando um grupo de novas soluções. Finalmente, estas são combinadas para tentar criar soluções ainda melhores.

Por fim, refira-se que a razão de não termos analisado, logo à partida, a versão mais recente do ArcGIS deve-se ao facto de a parte relativa à implementação, que faz uso da versão 9.3.1 e que iremos mostrar mais adiante, já estar completamente concretizada aquando do lançamento da nova versão. A actualização da versão em termos de implementação iria exigir bastante mais tempo, considerando-se que não seria para já essencial e que poderia ficar para trabalho futuro.

Documentos relacionados