30 lines
621 B
Rust
30 lines
621 B
Rust
use clap::Parser;
|
|
use factorio_blueprint::layout::GeneticAlgorithm;
|
|
use rand::{rngs::SmallRng, SeedableRng};
|
|
|
|
#[derive(Debug, Parser)]
|
|
struct Args {
|
|
#[clap(default_value_t = 0)]
|
|
seed: u64,
|
|
}
|
|
|
|
fn main() {
|
|
let args = Args::parse();
|
|
|
|
let file = std::fs::File::open("layout3.yml").unwrap();
|
|
|
|
let p = serde_yaml::from_reader(file).unwrap();
|
|
|
|
let mut rng = SmallRng::seed_from_u64(args.seed);
|
|
|
|
dbg!(&p);
|
|
|
|
let mut g = GeneticAlgorithm::new(&p, 20, 2, 0, &mut rng);
|
|
|
|
for i in 0..100 {
|
|
println!("Generatrion {i}");
|
|
g.generation(&mut rng);
|
|
}
|
|
|
|
// g.output_population();
|
|
}
|