7.3. Lesson: Análises de Redes

A determinação do caminho mais curto entre dois pontos é uma das aplicações práticas mais conhecidas dos SIG. As respectivas ferramentas podem encontrar-se no painel Ferramentas de processamento.

Objectivo deste módulo: aprender a utilizar os algoritmos de Análise de Rede.

7.3.1. basic Follow Along: As Ferramentas e os Dados

Pode encontrar todos os algoritmos de análise de rede no menu Processamento ‣ Análise de rede. Existem várias ferramentas disponíveis:

../../../_images/select_network_algorithms.png

Abra o projecto exercise_data/network_analysis/network.qgz. Este contêm duas camadas:

  1. network_points

  2. network_lines

Como pode ver, o estilo utilizado na representação da camada network_lines facilita a percepção da rede de estradas.

../../../_images/network_map.png

Os algoritmos de caminho mais curto disponibilizam formas de calcular tanto o caminho mais curto, como o caminho mais rápido, entre dois pontos da rede, dados:

  • um ponto de partida e um ponto de chegada, seleccionados no mapa

  • um ponto de partida seleccionado no mapa e vários pontos de chegada seleccionados numa camada de pontos

  • vários pontos de partida seleccionados numa camada de pontos e um ponto de chegada seleccionado no mapa

Mãos à obra.

7.3.2. basic Cálculo do caminho mais curto (entre pontos)

Análise da rede ‣ Caminho mais curto (ponto para ponto) permite-lhe calcular o percurso mais curto entre dois pontos seleccionados manualmente no mapa.

Neste exemplo vamos calcular o caminho mais curto (e não mais rápido) entre dois pontos.

Na imagem seguinte apresenta-se a captura dos dois pontos (Starting Point e Ending Point) utilizados na análise:

../../../_images/start_end_point.png

  1. Escolha o algoritmo Caminho mais curto (ponto para ponto)

  2. Em Camada vectorial representando a rede seleccione network_lines

  3. Para Tipo de caminho a calcular escolha o parâmetro Mais curto

  4. Clique no botão à direita de Ponto de partida (x, y) e escolha o local assinalado na imagem com Starting Point. A barra de menu é preenchida com as coordenadas do ponto capturado.

  5. Proceda da mesma maneira, escolhendo para Ponto de chegada (x, y), a localização assinalada com Ending point.

  6. Clique no botão Executar:

    ../../../_images/shortest_point.png

  7. É criada uma nova camada linha, representando o caminho mais curto entre os pontos escolhidos. Desligue a camada network_lines para melhor visualizar o resultado.

    ../../../_images/shortest_point_result.png

  8. Ao abrir a tabela de atributos da nova camada, verificamos que é composta por três campos. Os dois primeiros contêm respectivamente as coordenadas do ponto de partida e as coordenadas do ponto de chegada.

    Ao escolher para Tipo de caminho a calcular, o parâmetro Mais curto, o campo cost irá conter a distância entre os dois pontos, nas unidades definidas para a camada.

    Neste caso, a distância mais curta entre os pontos escolhidos é aproximadamente 1000 metros:

    ../../../_images/shortest_point_attributes.png

Agora que já está familiarizado com a ferramenta, altere os pontos à vontade, testando outras localizações.

7.3.3. moderate Try Yourself Caminho mais rápido

Com os mesmos dados do exercício anterior, tente calcular o caminho mais rápido entre os dois pontos.

De quanto tempo necessita para ir do ponto de partida até ao ponto de chegada?

Verifique os seus resultados 1

7.3.4. moderate Follow Along: Opções avançadas

Vamos explorar mais algumas opções da ferramenta Análise de Rede. No exercício anterior 1 calculamos o caminho mais rápido entre dois pontos. Como deve imaginar, o tempo depende da velocidade a que se viaja.

Usaremos as mesmas camadas e os mesmos pontos de partida e de chegada dos exercícios anteriores.

  1. Escolha o algoritmo Caminho mais curto (ponto para ponto)

  2. Preencha Camada vectorial representando a rede, Ponto de partida (x, y) e Ponto de chegada (x, y) conforme fez anteriormente.

  3. Em Tipo de caminho a calcular escolha Mais rápido

  4. Abra o menu Parâmetros avançados

  5. Em Velocidade padrão (km/h), altere o valor predefinido (50) para 4

    ../../../_images/shortest_path_advanced.png

  6. Clique em Executar

  7. Uma vez executado o algoritmo, feche a caixa de diálogo e abra a tabela de atributos da camada resultante.

    O valor contido no campo cost é função do valor que escolheu para o parâmetro da velocidade. cost tem unidades de hora em formato decimal e pode converter-se em minutos, para ganhar maior expressão.

  8. Clicando no ícone calculateField podemos abrir a calculadora de campos e criar um novo campo minutes, multiplicando o campo cost por 60:

    ../../../_images/shortest_path_conversion.png

Ora, aí está! Agora já sabe quantos minutos vai levar a chegar de um ao outro ponto.

7.3.5. hard Caminho mais curto com limite de velocidade

A ferramenta de processamento Análise de rede, possui outras opções interessantes. Olhando para o seguinte mapa:

../../../_images/speed_limit.png

gostaríamos de determinar o percurso mais rápido, tendo em consideração os limites de velocidade de cada estrada (as etiquetas indicam os limites, em km/h). Sem considerar esses limites, o caminho mais curto seria, como é óbvio, o de cor púrpura. Mas nessa estrada o limite de velocidade é de 20 km/h, enquanto que na estrada verde se pode circular a 100 km/h!

Assim como fizemos no primeiro exercício, vamos seleccionar Análise de rede ‣ Caminho mais curto (ponto a ponto) e capturar os pontos de partida e chegada.

  1. Abra o algoritmo Análise de rede ‣ Caminho mais curto (ponto a ponto)

  2. Seleccione network_lines como parâmetro em Camada vectorial representando a rede

  3. Em Tipo de caminho a calcular escolha Mais rápido

  4. Clique no botão adjacente a Ponto de partida (x, y) e escolha o local assinalado na imagem com Starting Point. A barra de menu é preenchida com as coordenadas do ponto capturado.

  5. Proceda da mesma maneira, escolhendo para Ponto de chegada (x, y), a localização assinalada com Ending point

  6. Abra o menu Parâmetros avançados

  7. Escolha o campo speed como parâmetro para o Campo da velocidade. Com esta opção o algoritmo vai ter em conta os valores de velocidade de cada estrada.

    ../../../_images/speed_limit_parameters.png

  8. Clique no botão Executar

  9. Desligue a camada network_lines para melhor visualizar o resultado.

    ../../../_images/speed_limit_result.png

Como pode verificar, o caminho mais rápido não corresponde ao caminho mais curto.

7.3.6. moderate Área de serviço (da camada)

O algoritmo Análise de rede ‣ Área de serviço (da camada) oferece resposta à questão: dada uma camada de pontos, quais são todas as áreas que se podem alcançar, dentro de uma determinada distância ou de um determinado tempo de percurso?

Nota

O algoritmo Análise de rede ‣ Área de serviço (do ponto) é semelhante mas permite a selecção do ponto no mapa.

Dada uma distância de 250 metros, queremos saber, para cada ponto da camada network_points, quão longe nos é possível deslocar-nos através da rede.

  1. Desligue todas as camadas excepto a network_points

  2. Abra o algoritmo Análise de rede ‣ Área de serviço (da camada)

  3. Em Camada vectorial representado a rede escolha network_lines

  4. Em Camada vectorial com os pontos de partida escolha network_points

  5. Em Tipo de caminho a calcular escolha Mais curto

  6. No parâmetro Custo da viagem introduza 250

  7. Clique em Executar e feche a caixa de diálogo.

    ../../../_images/service_area.png

    A camada resultante apresenta, para cada ponto, os percursos que se podem efectuar, sem exceder a distância máxima de 250 metros:

    ../../../_images/service_area_result.png

Porreiro, hã?

7.3.7. In Conclusion

Agora já sabe como utilizar o algoritmo Análise de rede para resolver problemas de caminhos mais curtos/rápidos.

E está pronto para fazer um pouco de análise e estatística espacial em camadas de dados vectoriais. Vamos lá!

7.3.8. What’s Next?

Lo siguiente que verás será cómo ejecutar algoritmos espaciales estadísticos en conjuntos de datos vectoriales.