100 likes | 187 Views
Genome Encoding. 05/03/ 2013. Agenda. Codebase updates Codified genome. Codebase Updates. Forked project in order to develop composition strategies separately Intent to merge with Role transformations Separating strategies was not a good idea Made code overly complicated
E N D
Genome Encoding 05/03/2013
Agenda • Codebase updates • Codified genome
Codebase Updates • Forked project in order to develop composition strategies separately • Intent to merge with Role transformations • Separating strategies was not a good idea • Made code overly complicated • Refactoring code to build strategies and transforms together • Reviewed symbolic regression and previous SAGE implementation • Refactored composition strategies to mesh with role transforms
Codified Genome • All operators inherit from Primitive • “same level of importance” • In process of refactoring
Terminals • Roles specified for composed module • Bubble sort • int* buffer • Merge sort • int* buffer, int low index, int high index • Quick sort • int* buffer, int low index, int high index • Initial fitness determined by normalized satisfaction of terminals and depth of tree
Wrapper Create Wrapper Transforms In Transforms Out Argument 0 Argument 1
Function Pointer Create Function Pointer Function Transforms In Transforms Out Argument 0 Argument 1 Class attribute: function to be called (passed upon creation of node)
Code Injection No notion of before/after in this case, so therefore there is a path for each possible transform to be written in order of traversal. Code Injection Line number 1..n Argument 0 Argument n-1 Class attribute: line number for code insertion in main program
Transforms Transform • Similar to Sumit’s implementation • Available roles: • Identity • Buffer • Buffer size • Low index • High index • Index • Unified? Role Argument 0
Complexity • Traversal of tree at each evaluation • Current setup: • 50 generations • 100 individuals • Unknown number of nodes per tree – n • Unknown height per tree - h • Max number of leaves per nodes - 2 • Time Complexity = traversal (n) * 50 * 100 = O(5000n) • Size Complexity =