1.0.0
·
16 commits
to Master
since this release
BiosimRust v1.0.0
First stable release! BiosimRust is a complete Rust refactoring of the original C++ biosim4 project, providing improved safety, performance, and maintainability through Rust's type system and memory safety guarantees.
Key Features
Core Simulation
- 19 Challenge Types: Circle, Right Half, Right Quarter, String, Center Weighted/Unweighted, Corner, Corner Weighted, Migrate Distance, Center Sparse, Left Eighth, Radioactive Walls, Against Any Wall, Touch Any Wall, East-West Eighths, Near Barrier, Pairs, Location Sequence, Altruism, and Altruism Sacrifice
- Neural Network Evolution: Creatures evolve neural networks that process sensory inputs and produce actions
- Multi-threaded Execution: Parallelized using
rayonfor efficient multi-core performance - Configurable Parameters: Hot-reloadable configuration file with 50+ tunable parameters
Visualization & Output
- Real-time Display: Live visualization window using
minifb(cross-platform) - Video Generation: Automatic MP4 video generation using FFmpeg
- Challenge Area Highlighting: Customizable colored outlines showing survival challenge boundaries
- Neural Network Visualization: Tools to generate network diagrams from evolved genomes
- Progress Logging: Generation-by-generation statistics and diversity metrics
Analysis Tools
- Epoch Logging: Detailed generation statistics (survivors, diversity, genome length)
- Genome Analysis: Sample genome output in hex and neural network formats
- Sensor/Action Statistics: Population-wide connection summaries
- Graphing Tools: Gnuplot scripts for visualizing simulation progress
What's in 1.0.0
This is the first stable release, featuring:
- Complete feature parity with the original C++ biosim4
- Memory-safe Rust implementation with zero-cost abstractions
- Cross-platform support (macOS, Linux, Windows)
- Configurable challenge area visualization with custom colors
- Improved error handling and parameter validation
- Comprehensive unit tests
- Windows x64 cross-compilation support
Platform Support
- macOS: Native support (tested on Apple Silicon)
- Linux: Native support
- Windows: Cross-compilation support for x64 (GNU toolchain)
Documentation
- See README.md for full documentation
- Configuration guide: See
biosimrust.inifor all available parameters - Original C++ reference: biosim4
Usage
- Configure your simulation in
biosimrust.ini - Run:
./target/release/biosimrust - Watch the evolution unfold in real-time or review generated videos
Example configuration highlights:
displayenabled = true- Enable real-time visualizationdisplaychallengearea = true- Show challenge boundariesdisplaychallengeareacolor = 255,255,0- Set challenge area color (RGB)challenge = 3- Select challenge type (0-18)
Acknowledgments
This project is a Rust refactoring of the original biosim4 by David R. Miller. Special thanks to the original author for the inspiring work.