Logo
Distributed Genetic Programming Framework
print print

Package org.dgpf.gp.automaton

Here you can find all the information about the org.dgpf.gp.automaton package. You may explore the package using the directory listing below. This listing contains all the files contained directly in this package and all its sub-packages. There you can either download a file directly (by clicking on the "download"-link) or read it online (by clicking on its direct link left in the directoy listing. Further information about the package's contents is given at the bottom of this page.

Directory Listing

org.dgpf.gp.automaton
  ├[base]2015-07-22 04:10:55 GMT+0000
  ├[expressions]2015-07-22 04:10:55 GMT+0000
  ├[fitness]2015-07-22 04:10:55 GMT+0000
  ├[instructions]2015-07-22 04:10:55 GMT+0000
  ├[optimizer]2015-07-22 04:10:55 GMT+0000
  ├[search]2015-07-22 04:10:55 GMT+0000
  └package.htmldownload download5.286 KB2015-07-22 04:10:55 GMT+0000

This package contains the Automaton Simulation Layer/Extension of the Distributed Genetic Programming Framework.

Package Specification

This package contains the Automaton Simulation Layer/Extension of the Distributed Genetic Programming Framework.

It divides into sub-packages containing the basic automation classes (package base), the predefined expressions (package expressions), the genetic operations (package genetics) and the package instructions containing the predefined instructions.

Programs for automata are divided into segments. Each segment is a sequence of instructions.

Automata are able of direct and indirect memory access. Along with the conditional jump, this makes the automata of the genetic programming framework Turing-complete.

Instructions
IfJump <expression>, <segment> A conditional, absolute jump. If condition <expression> evaluates to true (that is, returns a non-zero value), the jump will be performed. Jumps can only target at segment starts. It is not possible to jump right into the middle of a segment.
Write [<addr>], <expression> Absolute memory access. Write the value returned by <expression> to the memory cell with the address <addr>.
Write [[<addr>]], <expression> Relative memory access. Write the value returned by <expression> to the memory cell referred by the memory cell with the address <addr>.
Sleep <expression> Put the CPU for <expression> ticks into sleep mode.
Expressions
Constant: -2147483648..2147483648 A constant integer value.
Binary Expression: <expression_1> <operator> <expression_2> A binary expression. <expression_1> and <expression_2> evaluate to sub-expressions. <operator< will be one of the following binary operators we have defined:
mathematical
+addition
-subtraction
*multiplication
/division. This operator has been modified: A division by zero will be performed as modulo division by one!
*modules. This operator has been modified: A modulo division by zero will be performed as a modulo division by one!
|binary or
&binary and
^binary xor
logical
||logical or
&&logical and
Unary Expression: <operator> <expression> An unary expression. <expression> evaluate to a sub-expression. <operator< will be one of the following unary operators we have defined:
mathematical
~binary not
-unary minus
logical
!logical not
Read [<addr>] Absolute memory access. Obtain the value of the memory cell with the address <addr>.
Read [[<addr>]] Relative memory access. Obtain the value of the memory cell referred by the memory cell with the address <addr>.

This packages depends on the following packages:

This package provides the basic ability of genetically evolving automata driven by assembler-style code using the Distributed Genetic Programming Environment.

When using this package, you are able to evolve algorithms in an assembler-style language. The package provides basic instructions and expressions as well as mechanisms for interpreting generated code. It also provides further extension mechanisms allowing you to introduce your own instructions, expressions, and even execution environments.

Many optimization methods are implemented to speed up program evolution. For example, we use caching methods to prevent programs being created by reproduction that are equal to already teste ones


statistics online since 2006-01-02.   RSS Feed
Contact us by sending an email to tweise@gmx.de to receive further information, to report errors, or to join our project.
All content on this site (http://dgpf.sourceforge.net/) is LGPL-licensed.
http://dgpf.sourceforge.net/scripts/source/source.php last modified at 2015-07-22 04:10:53 GMT+0000 served at 2017-02-24 01:24:40 GMT+0000.
Valid CSS Valid XHTML 1.1
Valid RSS SourceForge.net Logo