From: Francois Fleuret Date: Mon, 17 Sep 2012 09:39:31 +0000 (+0200) Subject: Made some parts clearer. X-Git-Url: https://fleuret.org/cgi-bin/gitweb/gitweb.cgi?a=commitdiff_plain;h=66479314c7f21ddc2f5e194ad6a25874b2bed909;p=mtp.git Made some parts clearer. --- diff --git a/README.txt b/README.txt index 20bb7df..afc2388 100644 --- a/README.txt +++ b/README.txt @@ -18,7 +18,8 @@ experiments presented in this article. * INSTALLATION -This software should compile with any C++ compiler. Just execute +This software should compile with any C++ compiler. Under a unix-like +environment, just execute make ./mtp_example @@ -30,12 +31,12 @@ If you now execute ./mtp tracker.dat -It will load the tracker.dat saved by the previous command, run the -detection, save the detected trajectories in result.trj, and the +It will load the file tracker.dat saved by the previous command, run +the detection, save the detected trajectories in result.trj, and the underlying graph with occupied edges in graph.dot. -You can produce a pdf from the latter with the dot command from -graphviz: +If you do have the graphviz set of tools installed, you can produce a +pdf from the latter with the dot command: dot < graph.dot -T pdf -o graph.pdf @@ -43,16 +44,16 @@ graphviz: The two main classes are MTPGraph and MTPTracker. -The MTPGraph class stores a directed acyclic graph (DAG), with a -length for each edge -- which can be negative -- and can compute the -family of paths in this graph that globally minimizes the sum of edge -lengths. +The MTPGraph class contains a directed acyclic graph (DAG), with a +length for each edge -- which can be negative -- and has methods to +compute the family of paths in this graph that globally minimizes the +sum of edge lengths. -This means that it will iteratively add paths as long as it can find -some with negative length. If there are no such path, it will compute -no path at all. Note that the procedure is similar to that of KSP, in -the sense that the family it computes eventually is globally optimal, -even if the computation is iterative. +If there are no path of negative length, this optimal family will be +empty, since the minimum total length you can achieve is zero. Note +that the procedure is similar to that of KSP, in the sense that the +family it computes eventually is globally optimal, even if the +computation is iterative. The MTPTracker is defined by @@ -69,14 +70,16 @@ The MTPTracker is defined by (2) a number of time steps - (3) for every location and time a detection score, which should stand - for log(P(Y = 1 | X)/P(Y = 0 | X)) where Y is for the location + (3) a detection score for every location and time, which stands for + log(P(Y = 1 | X)/P(Y = 0 | X)) where Y is the said location occupancy and X the available observations. -From this setting, it computes the best set of disjoint trajectories -consistent with the topology, which maximizes the overall detection -score (i.e. the sum of the detection scores of the nodes visited by -the trajectories) +From this setting, MTPTracker has methods to compute the best set of +disjoint trajectories consistent with the topology, which maximizes +the overall detection score (i.e. the sum of the detection scores of +the nodes visited by the trajectories). If no trajectory of total +positive detection score exists, this optimal set of trajectories will +be empty. The MTPTracker is a wrapper around the MTPGraph class.