+ - the allowed motions between them (a Boolean flag for each pair
+ of locations from/to)
+
+ - the entrances (a Boolean flag for each location and time step)
+
+ - the exits (a Boolean flag for each location and time step)
+
+ (2) a number of time steps
+
+ (3) a detection score for every location and time, which stands for
+
+ log( P(Y(l,t) = 1 | X) / P(Y(l,t) = 0 | X) )
+
+ where Y is the occupancy of location l at time t and X is the
+ available observation.
+
+From this setting, MTPTracker has methods to compute the best set of
+disjoint trajectories consistent with the defined 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. From the
+defined spatial topology and number of time steps, it builds a graph
+with one source, one sink, and two nodes per location and time. The
+edges from the source or to the sink, or between these pairs of nodes,
+are of length zero, and the edges between the two nodes of such a pair
+have negative lengths, equal to the opposite of the corresponding
+detection scores. This structure also ensures that the trajectories
+computed by the MTPTracker will be node-disjoint, since the
+trajectories computed by the MTPGraph are edge-disjoint.
+
+The file mtp_example.cc gives a very simple usage example of the
+MTPTracker class by setting the tracker parameters dynamically, and
+running the tracking.
+
+The tracker data file for MTPTracker::read has the following format,
+where L is the number of locations and T is the number of time steps:
+
+---------------------------- snip snip -------------------------------
+ int:L int:T
+
+ bool:allowed_motion_from_1_to_1 ... bool:allowed_motion_from_1_to_L
+ ...
+ bool:allowed_motion_from_L_to_1 ... bool:allowed_motion_from_L_to_L
+
+ bool:entrance_1_1 ... bool:entrance_1_L
+ ...
+ bool:entrance_T_1 ... bool:entrance_T_L
+
+ bool:exit_1_1 ... bool:exit_1_L
+ ...
+ bool:exit_T_1 ... bool:exit_T_L
+
+ float:detection_score_1_1 ... float:detection_score_1_L
+ ...
+ float:detection_score_T_1 ... float:detection_score_T_L
+---------------------------- snip snip -------------------------------