Boost logo

Boost :

From: Andrzej Krzemienski (akrzemi1_at_[hidden])
Date: 2025-05-10 19:49:29


Hi All,
I have a graph-related problem that I thought was easy, but I do not seem
to be able to find the right tools (algorithms, visitors) in the library to
solve it. Maybe someone in the list can give me a hint.

I represent airports and their air connections as a graph:
* Each airport is a vertex.
* There are geographical coordinates associated with each airport.
* When there is at least one flight operating between airports A and B,
this is represented as an edge.

The task is to enumerate all paths between two given vertices U and V, in
an efficient way naturally, given the following constraints:
1. The path cannot be composed of more than N edges
2. The path cannot contain a vertex "too far away from U and V", that is,
there would be a predicate P that tells for a given vertex W the value P(U,
V, W) that tells if vertex W is acceptable.

So, I would need a tool that instructs the algorithm that when a certain
vertex or an edge is encountered, an algorithm should be skipped on a given
branch of the graph, but resume from the next branch. Is there a tool like
that in Boost.Graph?

Regards,
&rzej;


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk