The report is located at bohacek_frantisek_report.pdf, it has been generated from report.md
Rust has been used to write the library and program for solving constrained problems. Cargo is used for managing the dependencies.
To run the tsp, go into the constr_hw02 folder, ie. cd tsp_hw01,
then use cargo run --release -- srank|moe problem,
Supported problems are: g06, g08, g11, g24.
So for example: cargo run --release -- srank g06
The solution is then saved to constr_hw01/solutions/<instance>,
csv file with best candidate fitness (only feasible candidates
can be saved) and next to it is file with faction of feasible
candidates in each iteration.
The solutions might be plotted by using tsp_plotter program.
cd tsp_plotter and then cargo run --release -- <feature>,
where feature is one of:
The features are hardcoded in the code and used in the report,
they say what algorithms and instances should be used in a given plot.
They are taken from the constr_hw02 folder.
The name of the plotter is same as used for hw01 as the plotting itself is the same.
To obtain the graphs in the report, use the following sequence of commands:
compute.sh to compute all the algorithms on all instances, 10 times for each instance.tsp_plotter folder, and runcargo build --release
# TODO
Now all the csv solutions are in constr_hw01/solutions and all the plots are in
tsp_plotter/plots
The graphs won't be 1:1, because randomness is involved and the seeds haven't been captured and aren't configurable.