- Timestamp:
- 04/21/10 15:21:34 (15 years ago)
- Location:
- trunk/sources/HeuristicLab.Encodings.SymbolicExpressionTreeEncoding/3.3
- Files:
-
- 1 added
- 35 edited
- 7 moved
Legend:
- Unmodified
- Added
- Removed
-
trunk/sources/HeuristicLab.Encodings.SymbolicExpressionTreeEncoding/3.3/ArchitectureAlteringOperators/ArgumentCreater.cs
r3376 r3462 29 29 using HeuristicLab.Parameters; 30 30 using HeuristicLab.Persistence.Default.CompositeSerializers.Storable; 31 using HeuristicLab.Encodings.SymbolicExpressionTreeEncoding. GeneralSymbols;31 using HeuristicLab.Encodings.SymbolicExpressionTreeEncoding.Symbols; 32 32 using System.Collections.Generic; 33 33 using System.Text; -
trunk/sources/HeuristicLab.Encodings.SymbolicExpressionTreeEncoding/3.3/ArchitectureAlteringOperators/ArgumentDeleter.cs
r3376 r3462 29 29 using HeuristicLab.Parameters; 30 30 using HeuristicLab.Persistence.Default.CompositeSerializers.Storable; 31 using HeuristicLab.Encodings.SymbolicExpressionTreeEncoding. GeneralSymbols;31 using HeuristicLab.Encodings.SymbolicExpressionTreeEncoding.Symbols; 32 32 using System.Collections.Generic; 33 33 using System.Text; -
trunk/sources/HeuristicLab.Encodings.SymbolicExpressionTreeEncoding/3.3/ArchitectureAlteringOperators/ArgumentDuplicater.cs
r3376 r3462 29 29 using HeuristicLab.Parameters; 30 30 using HeuristicLab.Persistence.Default.CompositeSerializers.Storable; 31 using HeuristicLab.Encodings.SymbolicExpressionTreeEncoding. GeneralSymbols;31 using HeuristicLab.Encodings.SymbolicExpressionTreeEncoding.Symbols; 32 32 using System.Collections.Generic; 33 33 using System.Text; -
trunk/sources/HeuristicLab.Encodings.SymbolicExpressionTreeEncoding/3.3/ArchitectureAlteringOperators/GrammarModifier.cs
r3376 r3462 29 29 using HeuristicLab.Parameters; 30 30 using HeuristicLab.Persistence.Default.CompositeSerializers.Storable; 31 using HeuristicLab.Encodings.SymbolicExpressionTreeEncoding. GeneralSymbols;31 using HeuristicLab.Encodings.SymbolicExpressionTreeEncoding.Symbols; 32 32 using System.Collections.Generic; 33 33 using System.Text; -
trunk/sources/HeuristicLab.Encodings.SymbolicExpressionTreeEncoding/3.3/ArchitectureAlteringOperators/RandomArchitectureAlteringOperator.cs
r3376 r3462 29 29 using HeuristicLab.Parameters; 30 30 using HeuristicLab.Persistence.Default.CompositeSerializers.Storable; 31 using HeuristicLab.Encodings.SymbolicExpressionTreeEncoding. GeneralSymbols;31 using HeuristicLab.Encodings.SymbolicExpressionTreeEncoding.Symbols; 32 32 using System.Collections.Generic; 33 33 using System.Text; -
trunk/sources/HeuristicLab.Encodings.SymbolicExpressionTreeEncoding/3.3/ArchitectureAlteringOperators/SubroutineCreater.cs
r3376 r3462 29 29 using HeuristicLab.Parameters; 30 30 using HeuristicLab.Persistence.Default.CompositeSerializers.Storable; 31 using HeuristicLab.Encodings.SymbolicExpressionTreeEncoding. GeneralSymbols;31 using HeuristicLab.Encodings.SymbolicExpressionTreeEncoding.Symbols; 32 32 using System.Collections.Generic; 33 33 using System.Text; -
trunk/sources/HeuristicLab.Encodings.SymbolicExpressionTreeEncoding/3.3/ArchitectureAlteringOperators/SubroutineDeleter.cs
r3376 r3462 29 29 using HeuristicLab.Parameters; 30 30 using HeuristicLab.Persistence.Default.CompositeSerializers.Storable; 31 using HeuristicLab.Encodings.SymbolicExpressionTreeEncoding. GeneralSymbols;31 using HeuristicLab.Encodings.SymbolicExpressionTreeEncoding.Symbols; 32 32 using System.Collections.Generic; 33 33 using System.Text; 34 34 using System.Diagnostics; 35 using HeuristicLab.Encodings.SymbolicExpressionTreeEncoding.Creators; 35 36 36 37 namespace HeuristicLab.Encodings.SymbolicExpressionTreeEncoding.ArchitectureAlteringOperators { -
trunk/sources/HeuristicLab.Encodings.SymbolicExpressionTreeEncoding/3.3/ArchitectureAlteringOperators/SubroutineDuplicater.cs
r3376 r3462 29 29 using HeuristicLab.Parameters; 30 30 using HeuristicLab.Persistence.Default.CompositeSerializers.Storable; 31 using HeuristicLab.Encodings.SymbolicExpressionTreeEncoding. GeneralSymbols;31 using HeuristicLab.Encodings.SymbolicExpressionTreeEncoding.Symbols; 32 32 using System.Collections.Generic; 33 33 using System.Text; -
trunk/sources/HeuristicLab.Encodings.SymbolicExpressionTreeEncoding/3.3/ArchitectureAlteringOperators/SymbolicExpressionTreeArchitectureAlteringOperator.cs
r3456 r3462 29 29 using HeuristicLab.Parameters; 30 30 using HeuristicLab.Persistence.Default.CompositeSerializers.Storable; 31 using HeuristicLab.Encodings.SymbolicExpressionTreeEncoding. GeneralSymbols;31 using HeuristicLab.Encodings.SymbolicExpressionTreeEncoding.Symbols; 32 32 using System.Collections.Generic; 33 33 using System.Text; 34 using HeuristicLab.Encodings.SymbolicExpressionTreeEncoding.Manipulators; 34 35 35 namespace HeuristicLab.Encodings.SymbolicExpressionTreeEncoding {36 namespace HeuristicLab.Encodings.SymbolicExpressionTreeEncoding.ArchitectureAlteringOperators { 36 37 /// <summary> 37 38 /// Base class for architecture altering operators for symbolic expression trees. -
trunk/sources/HeuristicLab.Encodings.SymbolicExpressionTreeEncoding/3.3/Compiler/Instruction.cs
r3456 r3462 26 26 using System.Collections.Generic; 27 27 using HeuristicLab.Encodings.SymbolicExpressionTreeEncoding; 28 using HeuristicLab.Encodings.SymbolicExpressionTreeEncoding. GeneralSymbols;28 using HeuristicLab.Encodings.SymbolicExpressionTreeEncoding.Symbols; 29 29 30 namespace HeuristicLab.Encodings.SymbolicExpressionTreeEncoding { 31 public enum CodeSymbol : byte { 32 Add, 33 Sub, 34 Mul, 35 Div, 36 Call, 37 Arg, 38 Values, 39 Dynamic 40 }; 30 namespace HeuristicLab.Encodings.SymbolicExpressionTreeEncoding.Compiler { 31 // total size of this struct should be small to improve cache access while executing the code 32 // should be aligned to 8/16/32 byte 33 // size = 4(8) + 1 + 1 + 2 = 8 (12) 41 34 public struct Instruction { 35 // the tree node can hold additional data that is necessary for the execution of this instruction 36 public SymbolicExpressionTreeNode dynamicNode; 37 // op code of the function that determines what operation should be executed 38 public byte opCode; 39 // number of arguments of the current instruction 42 40 public byte nArguments; 43 public CodeSymbol symbol; 44 public short iArg0; 45 public SymbolicExpressionTreeNode dynamicNode; 41 // an optional short value (addresses for calls, argument index for arguments) 42 public ushort iArg0; 46 43 } 47 44 } -
trunk/sources/HeuristicLab.Encodings.SymbolicExpressionTreeEncoding/3.3/Compiler/SymbolicExpressionTreeCompiler.cs
r3456 r3462 27 27 using System.Collections.Generic; 28 28 using HeuristicLab.Encodings.SymbolicExpressionTreeEncoding; 29 using HeuristicLab.Encodings.SymbolicExpressionTreeEncoding. GeneralSymbols;29 using HeuristicLab.Encodings.SymbolicExpressionTreeEncoding.Symbols; 30 30 31 namespace HeuristicLab.Encodings.SymbolicExpressionTreeEncoding {31 namespace HeuristicLab.Encodings.SymbolicExpressionTreeEncoding.Compiler { 32 32 public class SymbolicExpressionTreeCompiler { 33 private Dictionary<Type, CodeSymbol> codeSymbol = new Dictionary<Type, CodeSymbol>() { 34 {typeof(Addition), CodeSymbol.Add}, 35 {typeof(Subtraction), CodeSymbol.Sub}, 36 {typeof(Multiplication), CodeSymbol.Mul}, 37 {typeof(Division), CodeSymbol.Div}, 38 {typeof(InvokeFunction), CodeSymbol.Call}, 39 {typeof(Argument), CodeSymbol.Arg}, 40 //{typeof(Values), CodeSymbol.Values} 41 }; 42 private Dictionary<string, short> entryPoint = new Dictionary<string, short>(); 33 private Dictionary<string, ushort> entryPoint = new Dictionary<string, ushort>(); 34 private List<Func<Instruction, Instruction>> postInstructionCompiledHooks = new List<Func<Instruction, Instruction>>(); 43 35 44 public Instruction[] Compile(SymbolicExpressionTree tree ) {36 public Instruction[] Compile(SymbolicExpressionTree tree, Func<SymbolicExpressionTreeNode, byte> opCodeMapper) { 45 37 List<Instruction> code = new List<Instruction>(); 46 38 entryPoint.Clear(); 47 39 // compile main body 48 code.AddRange(Compile(tree.Root.SubTrees[0].SubTrees[0] ));40 code.AddRange(Compile(tree.Root.SubTrees[0].SubTrees[0], opCodeMapper)); 49 41 // compile branches 50 42 var functionBranches = from node in tree.IterateNodesPrefix() … … 52 44 select node; 53 45 foreach (DefunTreeNode branch in functionBranches) { 54 entryPoint[branch.FunctionName] = (short)code.Count; 55 code.AddRange(Compile(branch.SubTrees[0])); 46 if (code.Count > ushort.MaxValue) throw new ArgumentException("Code for the tree is too long (> ushort.MaxValue)."); 47 entryPoint[branch.FunctionName] = (ushort)code.Count; 48 code.AddRange(Compile(branch.SubTrees[0], opCodeMapper)); 56 49 } 57 50 // address of all functions is fixed now … … 59 52 for (int i = 0; i < code.Count; i++) { 60 53 Instruction instr = code[i]; 61 if (instr. symbol == CodeSymbol.Call) {54 if (instr.dynamicNode.Symbol is InvokeFunction) { 62 55 var invokeNode = (InvokeFunctionTreeNode)instr.dynamicNode; 63 56 instr.iArg0 = entryPoint[invokeNode.Symbol.FunctionName]; 64 instr.dynamicNode = null;65 57 code[i] = instr; 66 58 } … … 70 62 } 71 63 72 private IEnumerable<Instruction> Compile(SymbolicExpressionTreeNode branch ) {73 foreach (var node in IteratePrefix(branch)) {64 private IEnumerable<Instruction> Compile(SymbolicExpressionTreeNode branch, Func<SymbolicExpressionTreeNode, byte> opCodeMapper) { 65 foreach (var node in branch.IterateNodesPrefix()) { 74 66 Instruction instr = new Instruction(); 75 if (node.SubTrees.Count > 255) throw new ArgumentException( );67 if (node.SubTrees.Count > 255) throw new ArgumentException("Number of subtrees is too big (>255)"); 76 68 instr.nArguments = (byte)node.SubTrees.Count; 77 if (codeSymbol.ContainsKey(node.Symbol.GetType())) { 78 instr.symbol = codeSymbol[node.Symbol.GetType()]; 79 if (instr.symbol == CodeSymbol.Arg) { 80 var argNode = (ArgumentTreeNode)node; 81 instr.iArg0 = (short)argNode.Symbol.ArgumentIndex; 82 } else if (instr.symbol == CodeSymbol.Call) { 83 instr.dynamicNode = node; // save node for fixup of jump addresses in second iteration 84 } 85 } else { 86 instr.symbol = CodeSymbol.Dynamic; 87 instr.dynamicNode = node; 69 instr.opCode = opCodeMapper(node); 70 if (branch.Symbol is Argument) { 71 var argNode = (ArgumentTreeNode)node; 72 instr.iArg0 = (ushort)argNode.Symbol.ArgumentIndex; 73 } 74 instr.dynamicNode = node; 75 foreach (var hook in postInstructionCompiledHooks) { 76 instr = hook(instr); 88 77 } 89 78 yield return instr; … … 91 80 } 92 81 93 private IEnumerable<SymbolicExpressionTreeNode> IteratePrefix(SymbolicExpressionTreeNode branch) { 94 yield return branch; 95 foreach (var subtree in branch.SubTrees) { 96 foreach (var node in IteratePrefix(subtree)) 97 yield return node; 98 } 82 /// <summary> 83 /// Adds a function that will be called every time an instruction is compiled. 84 /// The compiled will insert the instruction returned by the hook into the code. 85 /// </summary> 86 /// <param name="hook">The hook that should be called for each compiled instruction.</param> 87 public void AddInstructionPostProcessingHook(Func<Instruction, Instruction> hook) { 88 postInstructionCompiledHooks.Add(hook); 99 89 } 100 90 } -
trunk/sources/HeuristicLab.Encodings.SymbolicExpressionTreeEncoding/3.3/Creators/ProbabilisticTreeCreator.cs
r3442 r3462 20 20 #endregion 21 21 22 using System; 23 using System.Linq; 24 using System.Collections.Generic; 25 using System.Text; 22 26 using HeuristicLab.Common; 23 27 using HeuristicLab.Core; 24 28 using HeuristicLab.Data; 25 29 using HeuristicLab.Random; 26 using System;27 using System.Linq;28 30 using HeuristicLab.Persistence.Default.CompositeSerializers.Storable; 29 using System.Collections.Generic;30 using HeuristicLab.Encodings.SymbolicExpressionTreeEncoding.GeneralSymbols;31 using System.Text;32 31 using HeuristicLab.Encodings.SymbolicExpressionTreeEncoding.ArchitectureAlteringOperators; 33 34 namespace HeuristicLab.Encodings.SymbolicExpressionTreeEncoding { 32 using HeuristicLab.Encodings.SymbolicExpressionTreeEncoding.Symbols; 33 34 namespace HeuristicLab.Encodings.SymbolicExpressionTreeEncoding.Creators { 35 35 [StorableClass] 36 36 [Item("ProbabilisticTreeCreator", "An operator that creates new symbolic expression trees with uniformly distributed size")] -
trunk/sources/HeuristicLab.Encodings.SymbolicExpressionTreeEncoding/3.3/Creators/SymbolicExpressionTreeCreator.cs
r3456 r3462 29 29 using HeuristicLab.Persistence.Default.CompositeSerializers.Storable; 30 30 31 namespace HeuristicLab.Encodings.SymbolicExpressionTreeEncoding {31 namespace HeuristicLab.Encodings.SymbolicExpressionTreeEncoding.Creators { 32 32 /// <summary> 33 33 /// A base class for operators creating symbolic expression trees. -
trunk/sources/HeuristicLab.Encodings.SymbolicExpressionTreeEncoding/3.3/Crossovers/SubtreeCrossover.cs
r3376 r3462 28 28 using System; 29 29 using HeuristicLab.Parameters; 30 using HeuristicLab.Encodings.SymbolicExpressionTreeEncoding.GeneralSymbols; 31 namespace HeuristicLab.Encodings.SymbolicExpressionTreeEncoding { 30 using HeuristicLab.Encodings.SymbolicExpressionTreeEncoding.Symbols; 32 31 33 32 namespace HeuristicLab.Encodings.SymbolicExpressionTreeEncoding.Crossovers { 34 33 /// <summary> 35 34 /// Takes two parent individuals P0 and P1 each. Selects a random node N0 of P0 and a random node N1 of P1. -
trunk/sources/HeuristicLab.Encodings.SymbolicExpressionTreeEncoding/3.3/Crossovers/SymbolicExpressionTreeCrossover.cs
r3456 r3462 30 30 using System.Diagnostics; 31 31 32 namespace HeuristicLab.Encodings.SymbolicExpressionTreeEncoding {32 namespace HeuristicLab.Encodings.SymbolicExpressionTreeEncoding.Crossovers { 33 33 /// <summary> 34 34 /// A base class for operators that perform a crossover of symbolic expression trees. -
trunk/sources/HeuristicLab.Encodings.SymbolicExpressionTreeEncoding/3.3/DefaultSymbolicExpressionGrammar.cs
r3376 r3462 28 28 using System.Xml; 29 29 using HeuristicLab.Persistence.Default.CompositeSerializers.Storable; 30 using HeuristicLab.Encodings.SymbolicExpressionTreeEncoding. GeneralSymbols;30 using HeuristicLab.Encodings.SymbolicExpressionTreeEncoding.Symbols; 31 31 32 32 namespace HeuristicLab.Encodings.SymbolicExpressionTreeEncoding { -
trunk/sources/HeuristicLab.Encodings.SymbolicExpressionTreeEncoding/3.3/GlobalSymbolicExpressionGrammar.cs
r3376 r3462 28 28 using System.Xml; 29 29 using HeuristicLab.Persistence.Default.CompositeSerializers.Storable; 30 using HeuristicLab.Encodings.SymbolicExpressionTreeEncoding. GeneralSymbols;30 using HeuristicLab.Encodings.SymbolicExpressionTreeEncoding.Symbols; 31 31 32 32 namespace HeuristicLab.Encodings.SymbolicExpressionTreeEncoding { -
trunk/sources/HeuristicLab.Encodings.SymbolicExpressionTreeEncoding/3.3/HeuristicLab.Encodings.SymbolicExpressionTreeEncoding-3.3.csproj
r3384 r3462 93 93 <Compile Include="ArchitectureAlteringOperators\SubroutineDeleter.cs" /> 94 94 <Compile Include="ArchitectureAlteringOperators\SubroutineDuplicater.cs" /> 95 <Compile Include="ArchitectureAlteringOperators\SymbolicExpressionTreeArchitectureAlteringOperator.cs" /> 96 <Compile Include="Compiler\Instruction.cs" /> 97 <Compile Include="Compiler\SymbolicExpressionTreeCompiler.cs" /> 98 <Compile Include="Creators\SymbolicExpressionTreeCreator.cs" /> 99 <Compile Include="Crossovers\SymbolicExpressionTreeCrossover.cs" /> 100 <Compile Include="Manipulators\SymbolicExpressionTreeManipulator.cs" /> 95 101 <Compile Include="SymbolicExpressionTreeTopLevelNode.cs" /> 96 102 <Compile Include="Crossovers\SubtreeCrossover.cs"> … … 102 108 <SubType>Code</SubType> 103 109 </Compile> 104 <Compile Include="SymbolicExpressionTreeArchitectureAlteringOperator.cs" />105 110 <Compile Include="SymbolicExpressionTreeOperator.cs" /> 106 <Compile Include="Instruction.cs" />107 <Compile Include="SymbolicExpressionTreeCompiler.cs" />108 <Compile Include="SymbolicExpressionTreeManipulator.cs" />109 111 <Compile Include="SymbolicExpressionTreeTerminalNode.cs" /> 110 112 <Compile Include="Interfaces\ISymbolicExpressionGrammar.cs" /> … … 112 114 <Compile Include="HeuristicLabEncodingsSymbolicExpressionTreeEncodingPlugin.cs" /> 113 115 <Compile Include="Interfaces\ISymbolicExpressionTreeOperator.cs" /> 114 <Compile Include="SymbolicExpressionTreeCreator.cs" />115 116 <Compile Include="SymbolicExpressionTree.cs" /> 116 117 <Compile Include="Properties\AssemblyInfo.cs" /> 117 <Compile Include="Symbol.cs" />118 <Compile Include="SymbolicExpressionTreeCrossover.cs" />119 118 <Compile Include="SymbolicExpressionTreeNode.cs" /> 120 <Compile Include="Symbols\Addition.cs" />121 119 <Compile Include="Symbols\Argument.cs" /> 122 120 <Compile Include="Symbols\ArgumentTreeNode.cs" /> … … 127 125 <Compile Include="Symbols\Defun.cs" /> 128 126 <Compile Include="Symbols\ProgramRootSymbol.cs" /> 129 <Compile Include="Symbols\Division.cs" /> 130 <Compile Include="Symbols\Multiplication.cs" /> 131 <Compile Include="Symbols\Subtraction.cs" /> 127 <Compile Include="Symbols\Symbol.cs" /> 132 128 </ItemGroup> 133 129 <ItemGroup> … … 178 174 </ProjectReference> 179 175 </ItemGroup> 180 <ItemGroup>181 <Folder Include="Manipulators\" />182 </ItemGroup>183 176 <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" /> 184 177 <!-- To modify your build process, add your task inside one of the targets below and uncomment it. -
trunk/sources/HeuristicLab.Encodings.SymbolicExpressionTreeEncoding/3.3/Interfaces/ISymbolicExpressionGrammar.cs
r3376 r3462 28 28 using System.Xml; 29 29 using HeuristicLab.Persistence.Default.CompositeSerializers.Storable; 30 using HeuristicLab.Encodings.SymbolicExpressionTreeEncoding.Symbols; 30 31 31 32 namespace HeuristicLab.Encodings.SymbolicExpressionTreeEncoding { -
trunk/sources/HeuristicLab.Encodings.SymbolicExpressionTreeEncoding/3.3/Manipulators/SymbolicExpressionTreeManipulator.cs
r3456 r3462 28 28 using HeuristicLab.Persistence.Default.CompositeSerializers.Storable; 29 29 30 namespace HeuristicLab.Encodings.SymbolicExpressionTreeEncoding {30 namespace HeuristicLab.Encodings.SymbolicExpressionTreeEncoding.Manipulators { 31 31 /// <summary> 32 32 /// A base class for operators that manipulate real-valued vectors. -
trunk/sources/HeuristicLab.Encodings.SymbolicExpressionTreeEncoding/3.3/SymbolicExpressionTreeNode.cs
r3442 r3462 30 30 using HeuristicLab.Data; 31 31 using System.Diagnostics; 32 using HeuristicLab.Encodings.SymbolicExpressionTreeEncoding.Symbols; 32 33 33 34 namespace HeuristicLab.Encodings.SymbolicExpressionTreeEncoding { … … 38 39 [Storable] 39 40 private Symbol symbol; 40 //[Storable] 41 42 // parent relation is not persisted or cloned (will be set on AddSubtree or RemoveSubtree) 41 43 private SymbolicExpressionTreeNode parent; 42 44 -
trunk/sources/HeuristicLab.Encodings.SymbolicExpressionTreeEncoding/3.3/SymbolicExpressionTreeTerminalNode.cs
r3376 r3462 28 28 using HeuristicLab.Persistence.Default.CompositeSerializers.Storable; 29 29 using HeuristicLab.Data; 30 using HeuristicLab.Encodings.SymbolicExpressionTreeEncoding.Symbols; 30 31 31 32 namespace HeuristicLab.Encodings.SymbolicExpressionTreeEncoding { -
trunk/sources/HeuristicLab.Encodings.SymbolicExpressionTreeEncoding/3.3/SymbolicExpressionTreeTopLevelNode.cs
r3376 r3462 30 30 using HeuristicLab.Data; 31 31 using System.Diagnostics; 32 using HeuristicLab.Encodings.SymbolicExpressionTreeEncoding.Symbols; 32 33 33 34 namespace HeuristicLab.Encodings.SymbolicExpressionTreeEncoding { … … 44 45 45 46 private ISymbolicExpressionGrammar grammar; 46 //internal virtual ISymbolicExpressionGrammar Grammar { 47 // get { return grammar; } 48 // set { 49 // grammar = value; 50 // //foreach (var subtree in subTrees) 51 // // subtree.Grammar = value; 52 // } 53 //} 47 54 48 internal override ISymbolicExpressionGrammar Grammar { 55 49 get { -
trunk/sources/HeuristicLab.Encodings.SymbolicExpressionTreeEncoding/3.3/Symbols/Argument.cs
r3376 r3462 23 23 using HeuristicLab.Common; 24 24 using HeuristicLab.Core; 25 namespace HeuristicLab.Encodings.SymbolicExpressionTreeEncoding. GeneralSymbols {25 namespace HeuristicLab.Encodings.SymbolicExpressionTreeEncoding.Symbols { 26 26 /// <summary> 27 27 /// Symbol for function arguments -
trunk/sources/HeuristicLab.Encodings.SymbolicExpressionTreeEncoding/3.3/Symbols/ArgumentTreeNode.cs
r3369 r3462 22 22 using System; 23 23 using HeuristicLab.Persistence.Default.CompositeSerializers.Storable; 24 namespace HeuristicLab.Encodings.SymbolicExpressionTreeEncoding. GeneralSymbols {24 namespace HeuristicLab.Encodings.SymbolicExpressionTreeEncoding.Symbols { 25 25 [StorableClass] 26 26 public sealed class ArgumentTreeNode : SymbolicExpressionTreeNode { -
trunk/sources/HeuristicLab.Encodings.SymbolicExpressionTreeEncoding/3.3/Symbols/Defun.cs
r3376 r3462 23 23 using HeuristicLab.Common; 24 24 using HeuristicLab.Core; 25 namespace HeuristicLab.Encodings.SymbolicExpressionTreeEncoding. GeneralSymbols {25 namespace HeuristicLab.Encodings.SymbolicExpressionTreeEncoding.Symbols { 26 26 /// <summary> 27 27 /// Symbol for function defining branches -
trunk/sources/HeuristicLab.Encodings.SymbolicExpressionTreeEncoding/3.3/Symbols/DefunTreeNode.cs
r3442 r3462 24 24 using HeuristicLab.Common; 25 25 using HeuristicLab.Core; 26 namespace HeuristicLab.Encodings.SymbolicExpressionTreeEncoding. GeneralSymbols {26 namespace HeuristicLab.Encodings.SymbolicExpressionTreeEncoding.Symbols { 27 27 [StorableClass] 28 28 public sealed class DefunTreeNode : SymbolicExpressionTreeTopLevelNode { -
trunk/sources/HeuristicLab.Encodings.SymbolicExpressionTreeEncoding/3.3/Symbols/InvokeFunction.cs
r3376 r3462 23 23 using HeuristicLab.Common; 24 24 using HeuristicLab.Core; 25 namespace HeuristicLab.Encodings.SymbolicExpressionTreeEncoding. GeneralSymbols {25 namespace HeuristicLab.Encodings.SymbolicExpressionTreeEncoding.Symbols { 26 26 /// <summary> 27 27 /// Symbol for invoking automatically defined functions -
trunk/sources/HeuristicLab.Encodings.SymbolicExpressionTreeEncoding/3.3/Symbols/InvokeFunctionTreeNode.cs
r3369 r3462 22 22 using System; 23 23 using HeuristicLab.Persistence.Default.CompositeSerializers.Storable; 24 namespace HeuristicLab.Encodings.SymbolicExpressionTreeEncoding. GeneralSymbols {24 namespace HeuristicLab.Encodings.SymbolicExpressionTreeEncoding.Symbols { 25 25 [StorableClass] 26 26 public sealed class InvokeFunctionTreeNode : SymbolicExpressionTreeNode { -
trunk/sources/HeuristicLab.Encodings.SymbolicExpressionTreeEncoding/3.3/Symbols/ProgramRootSymbol.cs
r3376 r3462 23 23 using HeuristicLab.Common; 24 24 using HeuristicLab.Core; 25 namespace HeuristicLab.Encodings.SymbolicExpressionTreeEncoding. GeneralSymbols {25 namespace HeuristicLab.Encodings.SymbolicExpressionTreeEncoding.Symbols { 26 26 [StorableClass] 27 27 [Item("ProgramRootSymbol", "Special symbol that represents the program root node of a symbolic expression tree.")] -
trunk/sources/HeuristicLab.Encodings.SymbolicExpressionTreeEncoding/3.3/Symbols/StartSymbol.cs
r3376 r3462 23 23 using HeuristicLab.Common; 24 24 using HeuristicLab.Core; 25 namespace HeuristicLab.Encodings.SymbolicExpressionTreeEncoding. GeneralSymbols {25 namespace HeuristicLab.Encodings.SymbolicExpressionTreeEncoding.Symbols { 26 26 [StorableClass] 27 27 [Item("StartSymbol", "Special symbol that represents the starting node of the result producing branch of a symbolic expression tree.")] -
trunk/sources/HeuristicLab.Encodings.SymbolicExpressionTreeEncoding/3.3/Symbols/Symbol.cs
r3456 r3462 30 30 using HeuristicLab.Parameters; 31 31 32 namespace HeuristicLab.Encodings.SymbolicExpressionTreeEncoding {32 namespace HeuristicLab.Encodings.SymbolicExpressionTreeEncoding.Symbols { 33 33 [StorableClass] 34 34 [Item("Symbol", "Represents a symbol in a symbolic function tree.")] -
trunk/sources/HeuristicLab.Encodings.SymbolicExpressionTreeEncoding/3.3/Tests/AllArchitectureAlteringOperatorsTest.cs
r3369 r3462 30 30 using HeuristicLab.Encodings.SymbolicExpressionTreeEncoding.ArchitectureAlteringOperators; 31 31 using HeuristicLab.Data; 32 using HeuristicLab.Encodings.SymbolicExpressionTreeEncoding.Creators; 33 using HeuristicLab.Encodings.SymbolicExpressionTreeEncoding.Crossovers; 32 34 33 35 namespace HeuristicLab.Encodings.SymbolicExpressionTreeEncoding_3._3.Tests { -
trunk/sources/HeuristicLab.Encodings.SymbolicExpressionTreeEncoding/3.3/Tests/ArgumentCreaterTest.cs
r3360 r3462 29 29 using System.Diagnostics; 30 30 using HeuristicLab.Encodings.SymbolicExpressionTreeEncoding.ArchitectureAlteringOperators; 31 using HeuristicLab.Encodings.SymbolicExpressionTreeEncoding.Creators; 31 32 32 33 namespace HeuristicLab.Encodings.SymbolicExpressionTreeEncoding_3._3.Tests { -
trunk/sources/HeuristicLab.Encodings.SymbolicExpressionTreeEncoding/3.3/Tests/ArgumentDeleterTest.cs
r3360 r3462 29 29 using System.Diagnostics; 30 30 using HeuristicLab.Encodings.SymbolicExpressionTreeEncoding.ArchitectureAlteringOperators; 31 using HeuristicLab.Encodings.SymbolicExpressionTreeEncoding.Creators; 31 32 32 33 namespace HeuristicLab.Encodings.SymbolicExpressionTreeEncoding_3._3.Tests { -
trunk/sources/HeuristicLab.Encodings.SymbolicExpressionTreeEncoding/3.3/Tests/ArgumentDuplicaterTest.cs
r3360 r3462 29 29 using System.Diagnostics; 30 30 using HeuristicLab.Encodings.SymbolicExpressionTreeEncoding.ArchitectureAlteringOperators; 31 using HeuristicLab.Encodings.SymbolicExpressionTreeEncoding.Creators; 31 32 32 33 namespace HeuristicLab.Encodings.SymbolicExpressionTreeEncoding_3._3.Tests { -
trunk/sources/HeuristicLab.Encodings.SymbolicExpressionTreeEncoding/3.3/Tests/Grammars.cs
r3369 r3462 28 28 using HeuristicLab.Random; 29 29 using System.Diagnostics; 30 using HeuristicLab.Encodings.SymbolicExpressionTreeEncoding. GeneralSymbols;30 using HeuristicLab.Encodings.SymbolicExpressionTreeEncoding.Symbols; 31 31 32 32 namespace HeuristicLab.Encodings.SymbolicExpressionTreeEncoding_3._3.Tests { -
trunk/sources/HeuristicLab.Encodings.SymbolicExpressionTreeEncoding/3.3/Tests/ProbabilisticTreeCreaterTest.cs
r3369 r3462 28 28 using HeuristicLab.Random; 29 29 using System.Diagnostics; 30 using HeuristicLab.Encodings.SymbolicExpressionTreeEncoding.Creators; 30 31 31 32 namespace HeuristicLab.Encodings.SymbolicExpressionTreeEncoding_3._3.Tests { -
trunk/sources/HeuristicLab.Encodings.SymbolicExpressionTreeEncoding/3.3/Tests/SubroutineCreaterTest.cs
r3360 r3462 29 29 using System.Diagnostics; 30 30 using HeuristicLab.Encodings.SymbolicExpressionTreeEncoding.ArchitectureAlteringOperators; 31 using HeuristicLab.Encodings.SymbolicExpressionTreeEncoding.Creators; 31 32 32 33 namespace HeuristicLab.Encodings.SymbolicExpressionTreeEncoding_3._3.Tests { -
trunk/sources/HeuristicLab.Encodings.SymbolicExpressionTreeEncoding/3.3/Tests/SubroutineDeleterTest.cs
r3360 r3462 29 29 using System.Diagnostics; 30 30 using HeuristicLab.Encodings.SymbolicExpressionTreeEncoding.ArchitectureAlteringOperators; 31 using HeuristicLab.Encodings.SymbolicExpressionTreeEncoding.Creators; 31 32 32 33 namespace HeuristicLab.Encodings.SymbolicExpressionTreeEncoding_3._3.Tests { -
trunk/sources/HeuristicLab.Encodings.SymbolicExpressionTreeEncoding/3.3/Tests/SubroutineDuplicaterTest.cs
r3360 r3462 29 29 using System.Diagnostics; 30 30 using HeuristicLab.Encodings.SymbolicExpressionTreeEncoding.ArchitectureAlteringOperators; 31 using HeuristicLab.Encodings.SymbolicExpressionTreeEncoding.Creators; 31 32 32 33 namespace HeuristicLab.Encodings.SymbolicExpressionTreeEncoding_3._3.Tests { -
trunk/sources/HeuristicLab.Encodings.SymbolicExpressionTreeEncoding/3.3/Tests/SubtreeCrossoverTest.cs
r3360 r3462 28 28 using HeuristicLab.Random; 29 29 using System.Diagnostics; 30 using HeuristicLab.Encodings.SymbolicExpressionTreeEncoding.Crossovers; 31 using HeuristicLab.Encodings.SymbolicExpressionTreeEncoding.Creators; 30 32 31 33 namespace HeuristicLab.Encodings.SymbolicExpressionTreeEncoding_3._3.Tests {
Note: See TracChangeset
for help on using the changeset viewer.