evolution 0.1.0 copy "evolution: ^0.1.0" to clipboard
evolution: ^0.1.0 copied to clipboard

outdated

Unification is an implementation of logical first-order unification. It follows Robinson's algorithm, and uses trampolining to avoid stack size limitation issues.

evolution #

An evolutionary algorithm library. It will be used to optimize choice of parameters in adaptive experimentation and can become part of flutter or web projects.

Example:


void example() {
  math.Random r = math.Random();

  PopD p = PopD.fromSizeAndLength(5, 5);

  for (int i = 0; i < 10000; i++) {
    double std = (1000.0) / (i == 0 ? i + 1.0 : i).toDouble();

    PopD p2 = PopD.fromMutationFull(p, std, r);

    PopD p3 = PopD.fromCrossoverFull(p2);

    List<AgentD> p4 = p + p3;

    PopD p5 = PopD.fromList(p4);

    PopD p6 = PopD.fromBestInt(p5, 10);

    p = p6;
  }

  /// Print the best solution candidate.
  PopD end = p.sorted();

  print("solution: " +
      end.first.toString() +
      "  fitness: " +
      end.fitness(end.first).toString());
}

Adaptive Experiments #

Whereas static design applies the same procedures for allocating treatments and measuring outcomes throughout the trial, an adaptive design may, based on interim analysis of the trial’s result, change the allocation of subjects to treatment arms or may change the allocation of resources to different outcome measures.

Ordinarily, mid-course changes in experimental design are viewed with skepticism since they open the door to researcher interference in ways that could favor certain results. So, it is recommendable to automate adaptation in ways that lessen the risk of interference and facilitate bias correction at the analysis stage.

Evolutionary Algorithms can robustly work despite the complexity of the task and introduce randomness that is beneficial in apative social research, where participants could exploit strategies of optimization.

Evolutionary Algorithms #

Evolution Strategies belong to the family of evolutionary algorithms that address optimization problems by implementing a repeated process of stochastic variations followed by selection: In each iteration (or generation), new candidate solutions (or offspring) are generated from previous candidate solutions (parents), their fitness is evaluated, and the better candidate solutions are selected to become the generators for the next iteration.

Read more about differential evolution on Wikipedia.

[Population] [Agent] [Property]

[Crossover] [Selection] [Fitness]

1
likes
0
points
26
downloads

Publisher

verified publisherwelopment.com

Weekly Downloads

Unification is an implementation of logical first-order unification. It follows Robinson's algorithm, and uses trampolining to avoid stack size limitation issues.

Repository (GitHub)
View/report issues

License

unknown (license)

More

Packages that depend on evolution