// EXAMPLE: ./mtp ./graph2.txt | dot -T pdf -o- | xpdf -
-#define VERBOSE
-
#include <iostream>
#include <fstream>
#include <cmath>
using namespace std;
#include "mtp_graph.h"
+#include "tracker.h"
//////////////////////////////////////////////////////////////////////
graph.find_best_paths(el, result_edge_occupation);
}
-void dot_print(int nb_vertices,
- int nb_edges, int *ea, int *eb, scalar_t *el,
- int source, int sink,
- int *edge_occupation) {
- cout << "digraph {" << endl;
- cout << " node[shape=circle];" << endl;
- for(int e = 0; e < nb_edges; e++) {
- if(edge_occupation[e]) {
- cout << " " << ea[e] << " -> " << eb[e] << " [style=bold,color=black,label=\"" << el[e] << "\"];" << endl;
- } else {
- cout << " " << ea[e] << " -> " << eb[e] << " [color=gray,label=\"" << el[e] << "\"];" << endl;
- }
- }
- cout << "}" << endl;
-}
-
//////////////////////////////////////////////////////////////////////
int main(int argc, char **argv) {
+ // int nb_locations = 6;
+ // int nb_time_steps = 5;
+
+ // {
+ // Tracker tracker(nb_time_steps, nb_locations);
+
+ // for(int l = 0; l < nb_locations; l++) {
+ // for(int k = 0; k < nb_locations; k++) {
+ // tracker.set_allowed_motion(l, k, abs(l - k) <= 1);
+ // }
+ // }
+
+ // for(int t = 0; t < nb_time_steps; t++) {
+ // for(int l = 0; l < nb_locations; l++) {
+ // tracker.set_detection_score(t, l,
+ // (drand48() < 0.9 ? -1.0 : 1.0) + drand48() * 0.1 - 0.05);
+ // }
+ // tracker.set_detection_score(t, 0,
+ // (drand48() < 0.9 ? 1.0 : -1.0) + drand48() * 0.1 - 0.05);
+ // }
+
+ // tracker.build_graph();
+ // tracker.track();
+ // }
+
+ // exit(0);
if(argc < 2) {
cerr << argv[0] << " <graph file>" << endl;
source, sink,
result_edge_occupation);
- dot_print(nb_vertices, nb_edges,
- vertex_from, vertex_to, edge_lengths,
- source, sink,
- result_edge_occupation);
+ // dot_print(nb_vertices, nb_edges,
+ // vertex_from, vertex_to, edge_lengths,
+ // source, sink,
+ // result_edge_occupation);
delete[] result_edge_occupation;
delete[] edge_lengths;