Fringe-haun ja A*-haun toteuttaminen ja vertailu; HY TKT algoritmi-harjoitustyö
- Asenna Rustin työkalut: https://www.rust-lang.org/tools/install
- Kloonaa repositorio ja aja sen juuressa
cargo build --release
. - Tämä luo binäärin
target/release/fringe-vs-astar
, jonka voi siirtää minne haluaa.
Kehitysversion voi ajaa komennolla cargo run -- [KOMENNOT]
$ fringe-vs-astar --help
Pathfinders for gridmaps
Usage: fringe-vs-astar [OPTIONS] <MODE> <MAP FILE>
Arguments:
<MODE> How program is executed. print-map prints the map ; print prints the map with problems ; a-star solves using A* ; fringe solves using Fringe Search ; compare compares a-star and fringe [possible values: print, print-map, a-star, fringe, compare]
<MAP FILE> Path to a file that contains a map
Options:
-p, --problem-file <PROBLEM FILE>
Path to a file that contains a set of problems. Default is MAP FILE.scen(ario)
-n, --problem-number <PROBLEM NUMBER>
1 indexed indentifier for a problem
-s, --silent...
Suppress output. First removes printing of maps, second removes printing of problems, third removes printing of everything
-h, --help
Print help
-V, --version
Fringe-haun tilan pystyy tulostamaan -sssss
flägillä. Tämä printtaa haun JOKAISEN tilan,
joten pistä tämän ulostulo johonkin tiedostoon tai putkita se johonkin katselijaan.
Kokeellinen ominaisuus, käytä varoen.
$ cargo run -- fringe -sssss -n 99 maps/lak104d.map | less
Ennen jokaista karttaprinttiä on -
. Etsi -
(less
issä painamalla /-<Enter>
) ja selaa sen jokainen löytymä (less
iss' painamalla n
).
$ cargo test
$ cargo bench
$ cargo doc --open