Discussion on coding turn restrictions using Boost
Los mantenedores suelen responder en 2 días
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 5/5
- Tiempo estimado
- Más de una semana
- Aptitud para principiantes
- 30/100
Línea de trabajo
The issue discusses re-implementing pgr_trsp functionality using Boost Graph to handle turn restrictions/penalties. Start by reading the linked Boost mailing list and pgrouting-dev archives to understand the challenges. Examine the existing pgr_trsp code and the referenced external projects (itn-for-pgrouting, Tempus) for approaches. The goal is a design for integrating turn penalties into the routing graph, which requires significant graph algorithm and C++ expertise.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
The current pgr_trsp function does not use Boost in its underlying implementation, in part because Boost Graph does not support it natively. There has been some discussion about re-implementing the pgr_trsp like functionality using Boost Graph. I'm opening this issue to collect ideas and references regarding this.
- http://lists.boost.org/boost-users/2011/11/71549.php
- https://lists.osgeo.org/pipermail/pgrouting-dev/2011-May/000208.html
- https://github.com/mixedbredie/itn-for-pgrouting (extracting turn-restrictions for OS data)
- https://github.com/Ifsttar/Tempus/blob/master/src/core/road_graph.hh (routing supporting turn restrictions)
- https://groups.google.com/forum/#!topic/opentripplanner-dev/hrsa7V0OSKY (interesting discussion)
There are also two terms that I have come across in this research "turn-penalties" and "turn-restrictions". An infinite penalty can be considered a restriction. From an implementation point of view having penalties is probably preferable because applying a penalty allows you more flexibility like applying a cost to making a turn or applying a greater cost to make a turn across traffic, or at traffic lights ot stop signs, etc.
In my mind "turn-restrictions" could be viewed as dynamic modification to the graph, based on the first link above this might be problematic, while changing the costs to a particular node based on the path to get there might be less problematic.
Please add additional useful comments and research.
- Lenguaje dominante
- C++
- Estrellas
- 1.4k
- Forks
- 397
- Merge medio
- 2 d 2 h
- PR fusionados (30 d)
- 4
Preparar el entorno
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de pgRouting/pgrouting
-
Boost broken linksPosiblemente ocupada @Nandan-Raichura-Dev la tomó hace 1 día. AbiertoEnhancement
Dificultad 2/5 1-3 horas Aptitud para principiantes 68/100
pgRouting/pgrouting#3176 · 1 comentario ·
Los mantenedores suelen responder en 2 días
-
Add details to CONTRIBUTING.mdAbiertoAdministrative Enhancement
Dificultad 1/5 Menos de una hora Aptitud para principiantes 80/100
Los mantenedores suelen responder en 2 días
-
points_input Developers docPosiblemente ocupada @withaman69 la tomó hace 85 días. AbiertoC/C++ Developers Doc. good first issue
Dificultad 2/5 1-3 horas Aptitud para principiantes 70/100
pgRouting/pgrouting#973 · 10 comentarios ·
Los mantenedores suelen responder en 2 días
-
get_check_data developers docPosiblemente ocupada @withaman69 la tomó hace 87 días. AbiertoC/C++ Developers Doc. good first issue
Dificultad 2/5 1-3 horas Aptitud para principiantes 70/100
pgRouting/pgrouting#972 · 7 comentarios ·
Los mantenedores suelen responder en 2 días
-
circuits Functionality Request
Dificultad 5/5 Más de una semana Aptitud para principiantes 35/100
Los mantenedores suelen responder en 2 días
Todos los issues de pgRouting/pgrouting
Issues similares
-
Dificultad 1/5 Menos de una hora Aptitud para principiantes 88/100
ROCm/FastFlowLM#887 ·
Los mantenedores suelen responder en 1 día
-
paraview 6.2.0 uses Abseil 20260526 symbols but does not pin libabseil (undefined symbol with libabseil 20260817)Posiblemente ocupada @jschueller la tomó hoy. Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 64/100
-
bug medium priority openmp tokenizer wrong result
Dificultad 2/5 1-3 horas Aptitud para principiantes 82/100
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 92/100
apache/casbin-cpp#277 ·
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 68/100
iamaisim/ProjectAirSim#241 ·
Los mantenedores suelen responder en 1 día