directed-graph

graph serialization

I'm looking for a simple algorithm to 'serialize' a directed graph. In particular I've got a set of files with interdependencies on their execution order, and I want to find the correct order at compile time. I know it must be a fairly common thing to do - compilers do it all the time - but my google-fu has been weak today. What's the 'g...

Best Way to Store/Access a Directed Graph

I have around 3500 flood control facilities that I would like to represent as a network to determine flow paths (essentially a directed graph). I'm currently using SqlServer and a CTE to recursively examine all the nodes and their upstream components and this works as long as the upstream path doesn't fork alot. However, some queries tak...

Best algorithm for detecting cycles in a directed graph

What is the most effiecent alogrithm for detecting all cycles within a directed graph? or I have a directed graph representing a schedule of jobs that need to be exectuted, a job being a node and a dependency being an edge. I need to detect the error case of a cycle within this graph leading to cyclic dependencies. ...

Tournament graph question(s)

Is a tournament graph the same thing as a directed complete graph? And, do all vertices in a tournament graph have the same number of edges? ...

How do I find all paths through a set of given nodes in a DAG?

I have a list of items (blue nodes below) which are categorized by the users of my application. The categories themselves can be grouped and categorized themselves. The resulting structure can be represented as a Directed Acyclic Graph (DAG) where the items are sinks at the bottom of the graph's topology and the top categories are sourc...

unique path in a directed graph

Hi, I'm designing an algorithm for class that will determine if a graph is unique with respect to a vertex v such that for any u <> v there is at most one path from v to u. I've started by using BFS to find the shortest path from v to another vertex u, and then running BFS again to see if an alternate path can be found from v to u. I th...

Saving graphs in Haskell

I can easily define a datatype for a node of a directed graph. data Node = Node String [Node] derving (Show, Read) I can save the graph to a file using show function, then restore it using read. However, show will not cope with a cycle. Is there a trivial way to save and restore a graph? ...

Recursive lambda expression to find the path(s) through a directed graph?

I need to find a path or paths down a complicated graph structure. The graph is built using something similar to this: class Node { public string Value { get; set;} public List<Node> Nodes { get; set;} public Node() { Nodes = new List<Node>(); } } What makes this complicated is that the nodes can referenc...

How do I check if a directed graph is acyclic?

How do I check if a directed graph is acyclic? And how is the algorithm called? I would appreciate a reference. Niko ...

What options are available for the layout of directed or undirected graphs in .NET?

By graph here I mean something resembling these images: The ideal solution would: use only managed code allow output to a bitmap image allow output to WPF elements include some kind of interactive surface for displaying the graph that supports zooming, panning and reorganisation of nodes I'm also interested in hearing about proj...

Implementing a node-based graphical interface?

I would like to implement a nodal-interface, basically a DAG where each node performs an operation on it's input connections, and outputs something (which you can connect to another node) Some example applications: Apples "Shake" - screenshot The Foundrys "Nuke" - screenshot MindNode - screenshot vvvv - screenshots Quartz Composer - ...

Good intro to directed graphs etc.

I'm very interested in mindmaps, treeviews, and the like, but have no training in graph theory / directed graphs etc. What books (and/or websites) would be the best place to start? (Targeting someone with minimal calculus background, but generally good at math, data modeling, and theory). ...

Sorting a graph to make as many arrows point forward as possible

I need to sort the nodes of a directed graph such that the number of arrows that flow backwards (against the sorting order) is minimal. I can think of algorithms (e.g. keep swapping nodes until no swap will improve things) but I'm not sure how fast they run or whether they arrive at the best solution. What is the name and complexity of...

Graph navigation with C#

I having a bit of a quandry trying to come up with a good algorithm to navigate the following graph. If a user chooses "Table 21" as a starting point, I need to be able to get the path to any other table from that starting table. EX: If the user chooses "Table 21" as a start and then adds a value from "Table 8", I need to create the ...

How to do directed graph drawing in PHP?

I'm looking for a way to draw directed graphs in PHP. (as in http://upload.wikimedia.org/wikipedia/commons/0/08/Directed_acyclic_graph.png). I want it to create an image of the graph just like GD can output an image. I've googled a lot on this, but I only can find a lot of libraries for drawing graphs in general (with bars etc), not dir...

What is the name of this type of directed acyclic graph?

Perhaps it isnt even a DAG, but as its naming im after i wasnt sure what title to give this... What is the name of a data structure where every node can only have 0 or 1 paths INTO it? Strictly, is this a tree? Thanks ...

Creating a trouble shooting web page with a series of ?s in asp.net. Directed Graph

I've been working on my first web page which will be used as a trouble shooting guide based on a series of questions. The questions are determined by the answer of the previous question, so it turns into a "choose your own adventure". Luckily I was given a decision flow chart showing all the possible paths, but it looks like the Tokyo ...

Removing cycle dependencies on a directed graph with fixed edges

I have a directed cyclic graph. Some edges are FIXED and may not be removed. The other edges may be removed to break a cycle. What is the best way to do remove the cycles in this graph? The traversal should be as much as a DFS as possible and start at a given node. ...

Does the dot Directed Graph allow for subgraphs with a different rankdir?

Using the dot directed graph language, is it possible to create subgraphs with a different rankdir? I tried the following, which didn't work. Both graphs were left to right, despite the presence of rankdir="TB" in the subgraph. digraph g { rankdir="LR"; LEFT->RIGHT; clusterrank="local"; subgraph cluster1 { rankdir="TB"; ...

Modeling a directed graph with a special center node.

I'm looking for opinions on how to model a directed graph that contains one special node. Special node: Cannot have any edges leading to it. Cannot be removed. Current design: Tables: Nodes, Edges. Edges contains two columns; from_node_id and to_node_id, each referencing a record in the Nodes table. Rather than storing the specia...