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, 40, 5, 5, &mut rng);
 | |
| 
 | |
|     for i in 0..100 {
 | |
|         println!("Generatrion {i}");
 | |
|         g.generation(&mut rng);
 | |
|     }
 | |
| 
 | |
|     // g.output_population();
 | |
| }
 |