Questions tagged [lemon-graph-library]

A C++ template library for efficient implementations of data structures for optimization of tasks connected via graphs.

LEMON stands for Library for Efficient Modeling and Optimization in Networks. It is a C++ template library providing efficient implementations of common data structures and algorithms with focus on combinatorial optimization tasks connected mainly with graphs and networks.

LEMON employs genericity in C++ by using templates. The tools of the library are designed to be versatile, convenient and highly efficient. They can be combined easily to solve complex real-life optimization problems. For example, LEMON’s graphs can differ in many ways (depending on the representation and other specialities), but all have to satisfy one or more graph concepts, which are standardized interfaces to work with the rest of the library.

Useful links:

49 questions
1
vote
0 answers

C++ graph creation using lemon

I am trying to solve an algorithmic problem in C++ from my university, but it basically boils down to creating n*n graph with every node having edges to its neighbours ( basically something like a squared grid of connected nodes ). Then, I need to…
Peter
  • 59
  • 1
  • 9
1
vote
2 answers

Is there a way to get a node via a Map value in LEMON Graph library?

I am the using LEMON Graph library and was wondering if there is an efficient way to receive a ListDigraph::Node x via the value of its corresponding ListDigraph::NodeMap? I was thinking about something like: lemon::ListDigraph…
TKr
  • 13
  • 3
1
vote
1 answer

Lemon Graph iterate edges

From Lemon's hello world (hello_lemon.cc, see here) I've copied the following code : #include #include int main() { typedef lemon::ListGraph Graph; typedef Graph::EdgeIt EdgeIt; typedef Graph::Edge Edge; …
Joris Kinable
  • 2,232
  • 18
  • 29
1
vote
0 answers

Evaluating distance matrix in an efficient way in LEMON library

I'm using the LEMON library in a project of mine and I have a doubt about how to best use it to evaluate a complete distance matrix between vertices in a given set. So, consider we are given a large graph (represented as a ListDigraph), a subset of…
BrunoB
  • 337
  • 1
  • 4
  • 16
1
vote
0 answers

Lemon dijkstra computes the wrong paths/ paths length, Why?

I am using the following code to compute the shortest paths length from source node s in G to all other nodes: void class::initilize(int T, ListDigraph &G, ListDigraph::ArcMap &duration, ListDigraph::ArcMap…
Akay
  • 21
  • 8
1
vote
2 answers

Not able to compile/Build Lemon Graph library: Gives missing library

I am trying to build Lemon on my VM running ubuntu having gcc and g++ 4.9.2, but it keeps on giving the following error. I tried installing glpk, Soplex and ILOG Ciplex, but the error didn't go away. Following is the error. Apparently, this issue…
Roshan Br
  • 362
  • 2
  • 17
1
vote
1 answer

How to use lemon graph library on Omnet++ projects?

I am trying to design a network(Random Graph) in omnet++ where I want to parse the network nodes using Lemon Graph Library. I have installed the library and it works fine if I try to compile any normal c++ file with nodes and edges in any graph…
Vijay Rana
  • 35
  • 1
  • 8
1
vote
1 answer

Edge weights with the lemon graph library

I am using the Lemon graph library. I want to assign integer weights to the edges. Thus I am using EdgeMap. Unfortunality my code doesn't compile. no matching function for call to…
user2442121
1
vote
1 answer

Lemon Graph Library C++ add coordinates in Node

I have a map with many polygons. I want to do a pathfinding with the "center" of these polygones. So I try to use Lemon Graph Library in order to generate my graph and the Dijkstra 's algorithm. I see in the Lemon Tutorial : ListDigraph g; …
Bob
  • 589
  • 1
  • 11
  • 25
1
vote
2 answers

Checking the existence of an edge on an undirected graph using Lemon Graph Library

Graph example: ListDigraph G; ListGraph::Node A = G.addNode(); ListGraph::Node B = G.addNode(); ListGraph::Node C = G.addNode(); ListGraph::Node D = G.addNode(); ListGraph::Edge AB = G.addEdge(A,B); ListGraph::Edge AC =…
Philip Xenos
  • 33
  • 1
  • 6
1
vote
1 answer

Accessing map values in a vector in Lemon Graph Library

i have the following code typedef ListDigraph::NodeMap Node_names; vector initial_state; vector P_names; //some loop { Node_names name; ListDigraph::Node state = graph.addNode(); initial_state =…
vigenere
  • 197
  • 3
  • 15
1
vote
1 answer

Insert an element to a lemon graph library map without copying

I'm using Lemon Graph Library and I want to add an item to a lemon map without copying it or asigning. Here is the code: #include #include #include using namespace lemon; using namespace std; typedef…
remdezx
  • 2,939
  • 28
  • 49
1
vote
1 answer

Structures having fixed-size Eigen objects as member and containers

I have a structure with a fixed-size Eigen object as member that I want to use as an edge map with Lemon: struct EdgeStatus { Matrix Data; … EIGEN_MAKE_ALIGNED_OPERATOR_NEW }; ListGraph::EdgeMap
Rasoul
  • 3,758
  • 5
  • 26
  • 34
1
vote
1 answer

Using Dijkstra's Algorithm with the Lemon Graph Library

I have a question regarding some of the parameters necessary to run Dijkstra's algorithm from the Lemon Graph Libraries (Lemon's Dijkstra's http://lemon.cs.elte.hu/pub/tutorial/a00009.html). To run the algorithm, one would write something like…
Qman
  • 377
  • 1
  • 4
  • 14
1
vote
2 answers

Lemon Graph Library C++ - Directed Graph

I am looking at Lemon to handle my pathfinding, since it has search and shortest paths algorithms, among other things. The thing is, I am already stuck right at the start in understanding how Lemon works, and they have a tutorial but no forum to…
aJynks
  • 677
  • 2
  • 14
  • 27