Search packages, repositories and app categories

Package detailsv0.8.0

darwin

A genetic/evolutionary algorithm library for Dart.

AndroidiOSWebmacOSWindowsLinux
30-day downloads
75
Likes
20
Pub points
160

Install package

flutter pub add darwin

Package Overview

Package selection guidance compiled from public package information, community data, and project usage.

Darwin is a Dart library that implements genetic and evolutionary algorithms, enabling users to solve optimization and search problems through simulated natural selection. It provides tools for defining populations, fitness functions, selection strategies, and genetic operations like crossover and mutation. Designed for flexibility and ease of use, it supports various algorithmic approaches such as generational and steady-state evolution. Ideal for researchers, educators, and developers exploring AI-driven problem-solving techniques in diverse domains.

Use cases

  • Optimization of complex functions
  • Automated design generation
  • Machine learning hyperparameter tuning
  • Solving combinatorial problems
  • Simulating evolutionary processes

Key features

  • Support for custom fitness functions
  • Configurable selection and breeding strategies
  • Built-in mutation and crossover operators
  • Extensible population management
  • Cross-platform compatibility

Suitable for

  • Researchers in evolutionary computation
  • Educators teaching AI concepts
  • Developers building adaptive systems
  • Students learning genetic algorithms
  • Applications requiring heuristic optimization

Considerations

  • May require tuning for optimal performance
  • Not suitable for real-time applications
  • Performance depends on population size and generations
  • Limited documentation beyond basic examples
  • Best suited for non-convex or discontinuous problem spaces

Original README

Original README snapshot from the linked source repository. Visit the repository for the latest content.

darwin

Build Status

A genetic/evolutionary algorithm library for Dart. Given a population of phenotypes, an evaluator (fitness function), and time, the algorithm will evolve the population until it crosses given fitness threshold.

Read more about genetic algorithms on Wikipedia.

Features of this library:

  • Generic approach (anything can be a gene, as long as it can mutate)
  • User can tune crossover probability, mutation rate, mutation strength, etc.
  • Niching via fitness sharing
  • Multi-objective optimization via Pareto rank
  • Experimental support for multi-threaded computation

For an up-to-date example use, please see example/example.dart.

Categories

Dependencies

Dependency list 1 items

Source repository

Projects using this package

No data available yet.