#!/usr/bin/env bash
set -euxo pipefail
algorithms=("ea" "ea_mst" "ea_nn" "ea_cx" "ea_pmx" "ea_erx" "ls_reverse" "ls_swap" "ls_move" "ls_mix" "ls_mst" "ls_nn" "rs" "ea_binary" "ls_binary")
instances=("eil51" "eil76" "eil101" "kroA100" "ch150" "kroA150" "kroA200" "a280" "u574" "u724")
repetitions="10"
(cd tsp_hw01 && cargo build --release)
echo "Running smaller instances"
for algorithm in "${algorithms[@]}"; do
echo "Algorithm $algorithm"
for instance in "${instances[@]}"; do
echo " Instance $instance"
for i in $(seq "$repetitions"); do
(cd tsp_hw01 && ../target/release/tsp_hw01 "$instance" "$algorithm") &
sleep 2
done
wait
done
done