source: framspy/README.txt @ 1190

Last change on this file since 1190 was 1190, checked in by Maciej Komosinski, 16 months ago

Added the "evolalg" module for evolutionary optimization

File size: 2.2 KB
Line 
1______________________________ "framspy" directory _______________________________
2
3This directory contains sources that allow one to interact with the native
4Framsticks library from Python, and to perform evolutionary optimization.
5
6"frams.py" is the most fundamental file. It allows to access Framsticks script
7objects in Python. You will find detailed descriptions in the source of this file.
8
9"frams-test.py" uses "frams.py" and tests the connection between Python
10and the native Framsticks library by performing a number of simple yet diversified
11operations,  so you should run it first to ensure everything works correctly.
12Again, read the comments in the source for more information.
13
14"FramsticksLib.py" uses "frams.py" and provides a few fundamental building blocks
15for optimization: functions to mutate, crossover, evaluate a solution, etc.
16
17
18There are three independent implementations of evolutionary algorithms in this directory
19and they all rely on "FramsticksLib.py":
20
211)
22"FramsticksEvolution.py" - the simplest one, everything is in one file. Uses the DEAP
23framework ( https://deap.readthedocs.io/en/master/ ) to perform the optimization.
24Supports multiple criteria, the generational architecture, and numerous parameters
25to customize the evolutionary search. Invalid genotypes are assigned the fitness of "-1"
26and the selection process is responsible for their extinction.
27See "run-deap-examples.cmd".
28
292)
30The "evolalg_steps" module - the most complicated one, every piece of an algorithm
31is considered a "step" and can be customized. This results in a large number of small
32files (classes), but allows for the highest flexibility in building new algorithms.
33This module is no longer supported, but basic usage scenarios should work correctly.
34See "run-evolalg_steps-examples.cmd".
35
363)
37The "evolalg" module - the middle ground. Minimalistic yet it allows for easy
38customizations, supports the generational architecture, the island model, quality-diversity
39techniques and numerical optimization (completely independent from Framsticks).
40Invalid genotypes are not accepted, so new ones are generated until they are valid.
41See "run-evolalg-examples.cmd".
Note: See TracBrowser for help on using the repository browser.