Skip to content

falk-hueffner/color-coding

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

This package contains the source code accompanying the paper

Falk Hüffner, Sebastian Wernicke, and Thomas Zichner:
Algorithm engineering for color-coding with applications to signaling
pathway detection.
Algorithmica, 52(2):114–132, 2008.
http://dx.doi.org/10.1007/s00453-007-9008-7
http://falk.hueffner.de/color-coding-algorithmica07.pdf

A slightly updated description is in the thesis

Falk Hüffner:
Algorithms and Experiments for Parameterized Approaches to Hard Graph Problems.
PhD thesis, Institut für Informatik, Friedrich-Schiller-Universität Jena, 2007.
http://hueffner.de/falk/diss-hueffner07.pdf


Command line program
====================

It can solve two problems (see paper):

* Find minimum-weight paths of a prespecified length in a weighted
  undirected graph.
* Path queries.

The program is written in ISO C++. It has only been tested on Unix
systems, but should be portable to other systems. Sources can be
obtained at http://theinf1.informatik.uni-jena.de/colorcoding/. They
are distributed under the terms of the GNU General Public License
(GPL, see COPYING).

It has been tested on:

* Debian GNU/Linux (x86-64) with GNU g++ 4.3.5 and 4.4.5

Previous versions have been tested on:

* Debian GNU/Linux (i386) 3.1 with GNU g++ 3.3.5, 3.4.4, and 4.1.0
* Digital Unix 5.1 (Alpha) with GNU g++ 3.3.2 and DEC C++ V6.3-008
  (needs the "-std strict_ansi" option)
* Solaris 9 (UltraSPARC) with GNU g++ 4.0.2
* Windows XP/Cygwin 1.4

If you have the "make" utility (as any Unix system has), you can
compile with "make".

The program is called "colorcoding". By default, it reads a graph from
standard input and writes the paths found to standard output. The
graph format is a simple text format, where each line describes one
edge, given by its two endpoints and the edge weight separated by
whitespace:

v0 v1 0.32
v1 v2 1.22
v2 v0 0.01

Vertex names can be any combination of letters, digits, and _. Note
that this graph format cannot describe degree-0 vertices; however,
they are irrelevant for finding paths anyway.

The output is a set of (by default 100) paths of minimum weight in the
graph. Each line describes one path by giving its total weight and the
list of vertices. Example:

# ./colorcoding < example.graph 
1.73 10 3 5 4 7 2 1 6

There are many options that affect program behavior; see ./colorcoding -h
for a listing.

Version history
---------------

1.0	2006-05-10	initial release
1.1	2006-11-01	path query functionality added
1.1.1	2008-10-26	missing files added to .tar.gz
1.1.2	2010-08-13	add -w option
			add -L option
			fix some minor bugs

-- Falk Hüffner (http://hueffner.de/falk/)

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published