Difference between revisions of "Config:ModelBuilder"

From SUMOwiki
Jump to navigationJump to search
m
m (Javdrher moved page Config:AdaptiveModelBuilder to Config:ModelBuilder: Component was renamed)
 
(27 intermediate revisions by 3 users not shown)
Line 1: Line 1:
== AdaptiveModelBuilder ==
+
The adaptive model builder component defines which model type (e.g. polynomial model, ANN, SVMs, etc...) is used to model your data as well as the algorithm used to optimize its hyperparameters (e.g. the order of a polynomial function, the number of hidden nodes of an ANN, the kernel parameters of an SVM, etc...).
+
 
 +
This page lists all pre-defined <AdaptiveModelBuilder> configuration sections included in the default.xml. These configuration sections should be declared after the <Plan>...</Plan> section in your config.xml if you are using a custom configuration XML file.
 +
 
 +
In the default.xml each configuration section is also given an '''id''', which can be referred to in the <Plan> section. These id's are not included in the configuration sections listed here. For example in the default.xml file, the following adaptive model builder configuration section can be referred to using <code><AdaptiveModelBuilder>rational</AdaptiveModelBuilder></code> in the <Plan> section.
 +
 
 +
<source xmlns:saxon="http://icl.com/saxon" lang="xml">
 +
<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] id="rational" type="[[AdaptiveModelBuilder#SequentialModelBuilder|SequentialModelBuilder]]" combineOutputs="true">
 +
    ...
 +
</[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>
 +
</source>
 +
 
 +
Each configuration section consists of two parts. The first part is the <ModelFactory> tag, which defines all the settings and parameters for a particular [[Add_Model_Type|model type]] as well as their boundaries if those parameters need to be optimized.
 +
 
 +
The second part, the <AdaptiveModelBuilder> itself defines settings specific to the [[Add_Modeling_Algorithm|optimization algorithm]]. You can find out '''more about the available modeling algorithms''' and how to add your own [[Add_Modeling_Algorithm|here]].
 +
 
 +
By combining these two elements you can create your own <AdaptiveModelBuiler>. If you want to add your own model type, please refer to this [[Add_Model_Type|page]]. To learn more about the optimization algorithms used or to add your own search algorithm, consult this [[Add_Modeling_Algorithm|page]].
 +
 
 +
 
 +
'''Generated for SUMO toolbox version 7.0'''.
 +
''We are well aware that documentation is not always complete and possibly even out of date in some cases. We try to document everything as best we can but much is limited by available time and manpower.  We are are a university research group after all. The most up to date documentation can always be found (if not here) in the default.xml configuration file and, of course, in the source files.  If something is unclear please don't hesitate to [[Reporting problems|ask]].''
 +
 
 +
 
 +
== Rational and polynomial models ==
 +
 
 
=== rational ===
 
=== rational ===
Build rational models
+
Build rational models using a custom stochastic hillclimber to select the model parameters
<source lang="xml">
+
<source xmlns:saxon="http://icl.com/saxon" lang="xml">
<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] id="rational" type="SequentialModelBuilder" combineOutputs="false">
+
<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] type="[[AdaptiveModelBuilder#SequentialModelBuilder|SequentialModelBuilder]]" combineOutputs="true">
 +
  <!-- Maximum number of models built before selecting new samples --> 
 
   <Option key="maximumRunLength" value="30"/>
 
   <Option key="maximumRunLength" value="30"/>
 +
  <!-- Degeneration of score if a model gets older -->
 
   <Option key="decay" value=".99"/>
 
   <Option key="decay" value=".99"/>
 +
  <!-- Size of the best model history -->
 
   <Option key="historySize" value="15"/>
 
   <Option key="historySize" value="15"/>
 +
  <!-- One of best, last. When set to best the best `historySize' models are kept,
 +
    - - when set to last, the last `historySize' models are kept -->
 
   <Option key="strategy" value="best"/>
 
   <Option key="strategy" value="best"/>
   <[[Config:ModelInterface|ModelInterface]] type="RationalSequentialInterface">
+
  <!-- <Option key="strategy" value="window"/> -->
 +
 
 +
   <[[Config:ModelFactory|ModelFactory]] type="[[ModelFactory#RationalFactory|RationalFactory]]">
 +
      <!-- Bounds for the weights of the rational modeller -->
 
       <Option key="weightBounds" value="1,40"/>
 
       <Option key="weightBounds" value="1,40"/>
 +
      <!-- Bounds for the percentage of degrees of freedom wrt number of samples -->
 
       <Option key="percentBounds" value="1,100"/>
 
       <Option key="percentBounds" value="1,100"/>
       <Option key="maxDegrees" value="100"/>
+
      <!-- Regardless of the percentage bounds, never use more than this many degrees of freedom -->
 +
       <Option key="maxDegrees" value="80"/>
 +
      <!-- When randomizing rational flags, what percentage should be set -->
 
       <Option key="percentRational" value="70"/>
 
       <Option key="percentRational" value="70"/>
 +
      <!-- If a variable is named "f" of "frequency" it will be modelled differently, if this is set to auto,
 +
      - - If this field is set to a variable name, that variable will be considered to be the frequency -->
 
       <Option key="frequencyVariable" value="auto"/>
 
       <Option key="frequencyVariable" value="auto"/>
       <Option key="basis" value="chebyshev"/>
+
      <!-- Base function for interpolation, one of chebyshev, power, legendre -->
   </[[Config:ModelInterface|ModelInterface]]>
+
       <Option key="basis" value="power"/>
 +
   </[[Config:ModelFactory|ModelFactory]]>
 
</[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>
 
</[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>
 
</source>
 
</source>
 
=== rationalgenetic ===
 
=== rationalgenetic ===
 
Build rational models using a genetic algorithm
 
Build rational models using a genetic algorithm
<source lang="xml">
+
<source xmlns:saxon="http://icl.com/saxon" lang="xml">
<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] id="rationalgenetic" type="GeneticModelBuilder" combineOutputs="false">
+
<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] type="[[AdaptiveModelBuilder#GeneticModelBuilder|GeneticModelBuilder]]" combineOutputs="false">
 +
  <!--See that matlab gads toolbox documentation for more information on the options-->
 +
  <Option key="restartStrategy" value="continue"/>
 
   <Option key="populationType" value="custom"/>
 
   <Option key="populationType" value="custom"/>
   <Option key="populationSize" value="15"/>
+
   <Option key="populationSize" value="30"/>
 
   <Option key="crossoverFraction" value="0.7"/>
 
   <Option key="crossoverFraction" value="0.7"/>
   <Option key="maxGenerations" value="10"/>
+
   <Option key="maxGenerations" value="20"/>
 
   <Option key="eliteCount" value="1"/>
 
   <Option key="eliteCount" value="1"/>
   <Option key="stallGenLimit" value="4"/>
+
   <Option key="stallGenLimit" value="5"/>
 
   <Option key="stallTimeLimit" value="Inf"/>
 
   <Option key="stallTimeLimit" value="Inf"/>
   <[[Config:ModelInterface|ModelInterface]] type="RationalGeneticInterface">
+
 
 +
   <[[Config:ModelFactory|ModelFactory]] type="[[ModelFactory#RationalFactory|RationalFactory]]">
 
       <Option key="crossoverFcn" value="crossover"/>
 
       <Option key="crossoverFcn" value="crossover"/>
 
       <Option key="mutationFcn" value="mutation"/>
 
       <Option key="mutationFcn" value="mutation"/>
       <Option key="constraintFcn" value="[]"/>
+
       <Option key="creationFcn" value="createInitialPopulation"/>
       <Option key="creationFcn" value="initial"/>
+
      <!-- Use the next three functions instead of the previous three if you set the
 +
            population type to doubleVector -->
 +
      <!--<Option key="creationFcn" value="@gacreationuniform"/>
 +
      <Option key="crossoverFcn" value="@crossoverheuristic"/>
 +
      <Option key="mutationFcn" value="@mutationadaptfeasible"/>-->
 +
 
 +
          <!-- Bounds for the weights of the rational modeller -->
 +
      <Option key="weightBounds" value="1,40"/>
 +
      <!-- Bounds for the percentage of degrees of freedom wrt number of samples -->
 +
      <Option key="percentBounds" value="1,100"/>
 +
      <!-- Regardless of the percentage bounds, never use more than this many degrees of freedom -->
 +
      <Option key="maxDegrees" value="80"/>
 +
      <!-- When randomizing rational flags, what percentage should be set -->
 +
      <Option key="percentRational" value="70"/>
 +
      <!-- If a variable is named "f" of "frequency"
 +
        it will be modelled differently, if this is set to auto -->
 +
      <!-- If this field is set to a variable name, that variable will be considered to be the frequency -->
 +
      <Option key="frequencyVariable" value="auto"/>
 +
      <!-- Base function for interpolation, one of chebyshev, power, legendre -->
 +
      <Option key="basis" value="power"/>
 +
  </[[Config:ModelFactory|ModelFactory]]>
 +
</[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>
 +
</source>
 +
=== rationalpso ===
 +
Generate Rational models using PSO
 +
<source xmlns:saxon="http://icl.com/saxon" lang="xml">
 +
<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] type="[[AdaptiveModelBuilder#OptimizerModelBuilder|OptimizerModelBuilder]]" combineOutputs="false">
 +
  <!-- Plot the optimization surface, visualizes the search through the parameter space (2D only) -->
 +
  <Option key="plotOptimSurface" value="false"/>
 +
  <!-- Re-start strategy for resuming the optimization process between sampling iterations.
 +
        One of 'random','continue','model' and 'intelligent' (Default).  See the docs for more information -->
 +
  <Option key="restartStrategy" value="intelligent"/>
 +
 
 +
  <[[Config:Optimizer|Optimizer]] type="[[Optimizer#PSOtOptimizer|PSOtOptimizer]]">
 +
      <Option key="typePSO" value="0"/>
 +
      <Option key="seedPSO" value="1"/>
 +
      <Option key="popSize" value="10"/>
 +
      <Option key="maxiters" value="10"/>
 +
       <Option key="epochInertia" value="8"/>
 +
      <Option key="gradientTermination" value="8"/>
 +
  </[[Config:Optimizer|Optimizer]]>
 +
 
 +
  <[[Config:ModelFactory|ModelFactory]] type="[[ModelFactory#RationalFactory|RationalFactory]]">
 +
      <!-- Bounds for the weights of the rational modeller -->
 
       <Option key="weightBounds" value="1,40"/>
 
       <Option key="weightBounds" value="1,40"/>
 +
      <!-- Bounds for the percentage of degrees of freedom wrt number of samples -->
 
       <Option key="percentBounds" value="1,100"/>
 
       <Option key="percentBounds" value="1,100"/>
       <Option key="maxDegrees" value="100"/>
+
      <!-- Regardless of the percentage bounds, never use more than this many degrees of freedom -->
 +
       <Option key="maxDegrees" value="80"/>
 +
      <!-- When randomizing rational flags, what percentage should be set -->
 
       <Option key="percentRational" value="70"/>
 
       <Option key="percentRational" value="70"/>
 +
      <!-- If a variable is named "f" of "frequency"
 +
        it will be modelled differently, if this is set to auto -->
 +
      <!-- If this field is set to a variable name, that variable will be considered to be the frequency -->
 
       <Option key="frequencyVariable" value="auto"/>
 
       <Option key="frequencyVariable" value="auto"/>
       <Option key="basis" value="chebyshev"/>
+
      <!-- Base function for interpolation, one of chebyshev, power, legendre -->
   </[[Config:ModelInterface|ModelInterface]]>
+
       <Option key="basis" value="power"/>
 +
  </[[Config:ModelFactory|ModelFactory]]>
 +
</[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>
 +
</source>
 +
=== polynomialfixed ===
 +
Build polynomial models with a fixed order
 +
<source xmlns:saxon="http://icl.com/saxon" lang="xml">
 +
<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] type="[[AdaptiveModelBuilder#AdaptiveModelBuilder|AdaptiveModelBuilder]]" combineOutputs="false">
 +
 
 +
  <[[Config:ModelFactory|ModelFactory]] type="[[ModelFactory#PolynomialFactory|PolynomialFactory]]">
 +
      <!-- Specifies the structure of the polynomial -->
 +
      <!-- Expects matlab matrix: Element (i,j) is the exponent of variable i for term j.  -->
 +
      <Option key="degrees" value="[0 0;1 0;0 1;1 1;2 0;0 2;2 2]"/> <!-- Equals to 1+x+y+xy+xx+yy+xxyy -->
 +
      <!-- Base function for interpolation, one of chebyshev, power, legendre -->
 +
      <Option key="basis" value="power"/>
 +
   </[[Config:ModelFactory|ModelFactory]]>
 
</[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>
 
</[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>
 
</source>
 
</source>
=== RBF ===
+
 
 +
== Gaussian processes ==
 +
 
 +
=== rbf ===
 
Build Radial Basis Function models
 
Build Radial Basis Function models
<source lang="xml">
+
<source xmlns:saxon="http://icl.com/saxon" lang="xml">
<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] id="RBF" type="SequentialModelBuilder" combineOutputs="false">
+
<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] type="[[AdaptiveModelBuilder#SequentialModelBuilder|SequentialModelBuilder]]" combineOutputs="false">
 +
  <!-- Maximum number of models built before selecting new samples --> 
 
   <Option key="maximumRunLength" value="20"/>
 
   <Option key="maximumRunLength" value="20"/>
 +
  <!-- Degeneration of score if a model gets older -->
 
   <Option key="decay" value=".9"/>
 
   <Option key="decay" value=".9"/>
 +
  <!-- Size of the best model history -->
 
   <Option key="historySize" value="15"/>
 
   <Option key="historySize" value="15"/>
 +
  <!-- One of best, last. When set to best the best `historySize' models are kept,
 +
  - - when set to last, the last `historySize' models are kept -->
 
   <Option key="strategy" value="best"/>
 
   <Option key="strategy" value="best"/>
   <[[Config:ModelInterface|ModelInterface]] type="BFSequentialInterface">
+
 
 +
  <!-- <Option key="strategy" value="window"/> -->
 +
 
 +
   <[[Config:ModelFactory|ModelFactory]] type="[[ModelFactory#BFFactory|BFFactory]]">
 
       <Option key="type" value="RBF"/>
 
       <Option key="type" value="RBF"/>
       <[[Config:BasisFunction|BasisFunction]] name="gaussian" min=".1" max="5" scale="log"/>
+
     
       <[[Config:BasisFunction|BasisFunction]] name="multiquadric" min=".1" max="5" scale="log"/>
+
       <[[Config:BasisFunction|BasisFunction]] name="gaussian" min=".1" max="5" scale="ln"/>
       <[[Config:BasisFunction|BasisFunction]] name="exponential" min=".1,.5" max="5,2" scale="log,lin"/>
+
       <[[Config:BasisFunction|BasisFunction]] name="multiquadric" min=".1" max="5" scale="ln"/>
 +
      <!--<[[Config:BasisFunction|BasisFunction]] name="biharmonic"  min=".1"    max="5"    scale="ln"/> -->
 +
       <[[Config:BasisFunction|BasisFunction]] name="exponential" min=".1,.5" max="5,2" scale="ln,lin"/>
 +
     
 
       <Option key="regression" value="-1,0,1,2"/>
 
       <Option key="regression" value="-1,0,1,2"/>
 
       <Option key="backend" value="AP"/>
 
       <Option key="backend" value="AP"/>
   </[[Config:ModelInterface|ModelInterface]]>
+
   </[[Config:ModelFactory|ModelFactory]]>
 
</[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>
 
</[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>
 
</source>
 
</source>
=== RBFgenetic ===
+
=== rbfgenetic ===
 
Build Radial Basis Function models using a genetic algorithm
 
Build Radial Basis Function models using a genetic algorithm
<source lang="xml">
+
<source xmlns:saxon="http://icl.com/saxon" lang="xml">
<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] id="RBFgenetic" type="GeneticModelBuilder" combineOutputs="false">
+
<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] type="[[AdaptiveModelBuilder#GeneticModelBuilder|GeneticModelBuilder]]" combineOutputs="false">
 +
  <Option key="restartStrategy" value="continue"/>
 +
  <!--See that matlab gads toolbox documentation for more information on the options-->
 
   <Option key="populationType" value="custom"/>
 
   <Option key="populationType" value="custom"/>
 
   <Option key="populationSize" value="15"/>
 
   <Option key="populationSize" value="15"/>
Line 73: Line 193:
 
   <Option key="stallGenLimit" value="4"/>
 
   <Option key="stallGenLimit" value="4"/>
 
   <Option key="stallTimeLimit" value="Inf"/>
 
   <Option key="stallTimeLimit" value="Inf"/>
   <[[Config:ModelInterface|ModelInterface]] type="BFGeneticInterface">
+
 
 +
   <[[Config:ModelFactory|ModelFactory]] type="[[ModelFactory#BFFactory|BFFactory]]">
 
       <Option key="type" value="RBF"/>
 
       <Option key="type" value="RBF"/>
 +
     
 
       <Option key="crossoverFcn" value="crossover"/>
 
       <Option key="crossoverFcn" value="crossover"/>
 
       <Option key="mutationFcn" value="mutation"/>
 
       <Option key="mutationFcn" value="mutation"/>
       <Option key="constraintFcn" value="[]"/>
+
       <Option key="creationFcn" value="createInitialPopulation"/>
       <Option key="creationFcn" value="initial"/>
+
     
       <[[Config:BasisFunction|BasisFunction]] name="gaussian" min=".1" max="5" scale="log"/>
+
       <!-- Bounds for the shape parameter -->
       <[[Config:BasisFunction|BasisFunction]] name="multiquadric" min=".1" max="5" scale="log"/>
+
      <[[Config:BasisFunction|BasisFunction]] name="gaussian" min=".1" max="5" scale="ln"/>
       <[[Config:BasisFunction|BasisFunction]] name="exponential" min=".1,.5" max="5,2" scale="log,lin"/>
+
       <[[Config:BasisFunction|BasisFunction]] name="multiquadric" min=".1" max="5" scale="ln"/>
 +
       <!-- <[[Config:BasisFunction|BasisFunction]] name="biharmonic"   min=".1"   max="5"   scale="ln"/> -->
 +
       <[[Config:BasisFunction|BasisFunction]] name="exponential" min=".1,.5" max="5,2" scale="ln,lin"/>
 +
     
 
       <Option key="regression" value="-1,0,1,2"/>
 
       <Option key="regression" value="-1,0,1,2"/>
 +
      <!-- Basisfunction, one of 'multiquadric', 'triharmonic', 'biharmonic' -->
 +
      <!-- Specify which implementation to use, currently, 'Direct', 'AP', 'Greedy' and
 +
      'FastRBF' are supported.
 +
     
 +
      'Direct' solves the direct problem by inverting the interpolation
 +
      matrix
 +
      'AP' uses an alternating projections method when the system gets
 +
      too large. This is *MUCH* slower than 'Direct', and doesn't
 +
      guarantee convergence, use with caution
 +
      'Greedy' uses a one point greedy algorithm for selecting the
 +
      interpolation centers. Same remark applies as with 'AP'
 +
      'FastRBF' interfaces the FastRBF library. When using FastRBF,
 +
      make sure your copy of the software is installed under
 +
      the src/matlab/contrib directory and that the software
 +
      is licensed properly.
 +
      The FastRBF matlab toolbox can be found at
 +
      http://www.farfieldtechnology.com
 +
      -->
 
       <Option key="backend" value="AP"/>
 
       <Option key="backend" value="AP"/>
   </[[Config:ModelInterface|ModelInterface]]>
+
   </[[Config:ModelFactory|ModelFactory]]>
 
</[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>
 
</[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>
 
</source>
 
</source>
=== DACE ===
+
=== dace ===
Build DACE models (= functionally equivalent to Kriging, but a custom implementation)
+
Build DACE models (equivalent to Kriging but a custom implementation)
<source lang="xml">
+
<source xmlns:saxon="http://icl.com/saxon" lang="xml">
<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] id="DACE" type="SequentialModelBuilder" combineOutputs="false">
+
<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] type="[[AdaptiveModelBuilder#SequentialModelBuilder|SequentialModelBuilder]]" combineOutputs="false">
 +
  <!-- Maximum number of models built before selecting new samples --> 
 
   <Option key="maximumRunLength" value="20"/>
 
   <Option key="maximumRunLength" value="20"/>
 +
  <!-- Degeneration of score if a model gets older -->
 
   <Option key="decay" value=".9"/>
 
   <Option key="decay" value=".9"/>
 +
  <!-- Size of the best model history -->
 
   <Option key="historySize" value="15"/>
 
   <Option key="historySize" value="15"/>
 +
  <!-- One of best, last. When set to best the best `historySize' models are kept,
 +
        - - when set to last, the last `historySize' models are kept -->
 
   <Option key="strategy" value="best"/>
 
   <Option key="strategy" value="best"/>
   <[[Config:ModelInterface|ModelInterface]] type="BFSequentialInterface">
+
 
 +
  <!-- <Option key="strategy" value="window"/> -->
 +
 
 +
   <[[Config:ModelFactory|ModelFactory]] type="[[ModelFactory#BFFactory|BFFactory]]">
 
       <Option key="type" value="DACE"/>
 
       <Option key="type" value="DACE"/>
       <[[Config:BasisFunction|BasisFunction]] name="gaussian" min=".1" max="5" scale="log"/>
+
     
       <[[Config:BasisFunction|BasisFunction]] name="multiquadric" min=".1" max="5" scale="log"/>
+
       <[[Config:BasisFunction|BasisFunction]] name="gaussian" min=".1" max="5" scale="ln"/>
       <[[Config:BasisFunction|BasisFunction]] name="exponential" min=".1,.5" max="5,2" scale="log,lin"/>
+
       <[[Config:BasisFunction|BasisFunction]] name="multiquadric" min=".1" max="5" scale="ln"/>
 +
      <!--<[[Config:BasisFunction|BasisFunction]] name="biharmonic"  min=".1"    max="5"    scale="ln"/> -->
 +
       <[[Config:BasisFunction|BasisFunction]] name="exponential" min=".1,.5" max="5,2" scale="ln,lin"/>
 +
     
 
       <Option key="regression" value="-1,0,1,2"/>
 
       <Option key="regression" value="-1,0,1,2"/>
 
       <Option key="backend" value="AP"/>
 
       <Option key="backend" value="AP"/>
   </[[Config:ModelInterface|ModelInterface]]>
+
   </[[Config:ModelFactory|ModelFactory]]>
 
</[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>
 
</[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>
 
</source>
 
</source>
=== DACEgenetic ===
+
=== dacegenetic ===
Build DACE models (= functionally equivalent to Kriging, but a custom implementation)
+
Build DACE models using a genetic algorithm
<source lang="xml">
+
<source xmlns:saxon="http://icl.com/saxon" lang="xml">
<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] id="DACEgenetic" type="GeneticModelBuilder" combineOutputs="false">
+
<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] type="[[AdaptiveModelBuilder#GeneticModelBuilder|GeneticModelBuilder]]" combineOutputs="false">
 +
  <!--See that matlab gads toolbox documentation for more information on the options-->
 
   <Option key="populationType" value="custom"/>
 
   <Option key="populationType" value="custom"/>
 
   <Option key="populationSize" value="15"/>
 
   <Option key="populationSize" value="15"/>
Line 116: Line 271:
 
   <Option key="stallGenLimit" value="4"/>
 
   <Option key="stallGenLimit" value="4"/>
 
   <Option key="stallTimeLimit" value="Inf"/>
 
   <Option key="stallTimeLimit" value="Inf"/>
   <[[Config:ModelInterface|ModelInterface]] type="BFGeneticInterface">
+
 
 +
   <[[Config:ModelFactory|ModelFactory]] type="[[ModelFactory#BFFactory|BFFactory]]">
 
       <Option key="type" value="DACE"/>
 
       <Option key="type" value="DACE"/>
 +
     
 
       <Option key="crossoverFcn" value="crossover"/>
 
       <Option key="crossoverFcn" value="crossover"/>
 
       <Option key="mutationFcn" value="mutation"/>
 
       <Option key="mutationFcn" value="mutation"/>
       <Option key="constraintFcn" value="[]"/>
+
       <Option key="creationFcn" value="createInitialPopulation"/>
       <Option key="creationFcn" value="initial"/>
+
     
       <[[Config:BasisFunction|BasisFunction]] name="gaussian" min=".1" max="5" scale="log"/>
+
       <!-- Bounds for the shape parameter -->
       <[[Config:BasisFunction|BasisFunction]] name="multiquadric" min=".1" max="5" scale="log"/>
+
      <[[Config:BasisFunction|BasisFunction]] name="gaussian" min=".1" max="5" scale="ln"/>
       <[[Config:BasisFunction|BasisFunction]] name="exponential" min=".1,.5" max="5,2" scale="log,lin"/>
+
       <[[Config:BasisFunction|BasisFunction]] name="multiquadric" min=".1" max="5" scale="ln"/>
 +
       <!-- <[[Config:BasisFunction|BasisFunction]] name="biharmonic"   min=".1"   max="5"   scale="ln"/> -->
 +
       <[[Config:BasisFunction|BasisFunction]] name="exponential" min=".1,.5" max="5,2" scale="ln,lin"/>
 +
     
 
       <Option key="regression" value="-1,0,1,2"/>
 
       <Option key="regression" value="-1,0,1,2"/>
 
       <Option key="backend" value="AP"/>
 
       <Option key="backend" value="AP"/>
   </[[Config:ModelInterface|ModelInterface]]>
+
   </[[Config:ModelFactory|ModelFactory]]>
 
</[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>
 
</[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>
 
</source>
 
</source>
=== DACEps ===
+
=== daceps ===
Build DACE models (= functionally equivalent to Kriging, but a custom implementation)
+
Build DACE using pattern search
<source lang="xml">
+
<source xmlns:saxon="http://icl.com/saxon" lang="xml">
<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] id="DACEps" type="PatternSearchModelBuilder" combineOutputs="false">
+
<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] type="[[AdaptiveModelBuilder#OptimizerModelBuilder|OptimizerModelBuilder]]" combineOutputs="false">
 +
  <!-- Plot the optimization surface, visualizes the search through the parameter space (2D only) -->
 
   <Option key="plotOptimSurface" value="false"/>
 
   <Option key="plotOptimSurface" value="false"/>
 +
  <!-- Re-start strategy for resuming the optimization process between sampling iterations.
 +
        One of 'random','continue','model' and 'intelligent' (Default).  See the docs for more information -->
 
   <Option key="restartStrategy" value="intelligent"/>
 
   <Option key="restartStrategy" value="intelligent"/>
   <Option key="maxIterations" value="500"/>
+
    
  <Option key="maxFunEvals" value="100"/>
+
  <[[Config:Optimizer|Optimizer]] type="[[Optimizer#MatlabPatternSearch|MatlabPatternSearch]]">
  <Option key="searchMethod" value="GPSPositiveBasis2N"/>
+
      <Option key="maxIterations" value="500"/>
  <Option key="pollMethod" value="MADSPositiveBasis2N"/>
+
      <Option key="maxFunEvals" value="100"/>
   <[[Config:ModelInterface|ModelInterface]] id="dace" type="BFOptimizationInterface">
+
      <Option key="searchMethod" value="GPSPositiveBasis2N"/>
 +
      <Option key="pollMethod" value="MADSPositiveBasis2N"/>        
 +
   </[[Config:Optimizer|Optimizer]]>
 +
 
 +
 
 +
  <[[Config:ModelFactory|ModelFactory]] type="[[ModelFactory#BFFactory|BFFactory]]">
 
       <Option key="type" value="DACE"/>
 
       <Option key="type" value="DACE"/>
       <[[Config:BasisFunction|BasisFunction]] name="gaussian" min=".1" max="5" scale="log"/>
+
     
 +
      <!--Option key="multipleBasisFunctionsAllowed" value="false"/-->
 +
     
 +
       <[[Config:BasisFunction|BasisFunction]] name="gaussian" min=".1" max="5" scale="ln"/>
 +
     
 
       <Option key="regression" value="-1,0,1,2"/>
 
       <Option key="regression" value="-1,0,1,2"/>
 
       <Option key="backend" value="AP"/>
 
       <Option key="backend" value="AP"/>
   </[[Config:ModelInterface|ModelInterface]]>
+
   </[[Config:ModelFactory|ModelFactory]]>
 
</[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>
 
</[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>
 
</source>
 
</source>
=== DACEpso ===
+
=== dacepso ===
Build DACE models (= functionally equivalent to Kriging, but a custom implementation)
+
Build DACE models using PSO
<source lang="xml">
+
<source xmlns:saxon="http://icl.com/saxon" lang="xml">
<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] id="DACEpso" type="PatternSearchModelBuilder" combineOutputs="false">
+
<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] type="[[AdaptiveModelBuilder#OptimizerModelBuilder|OptimizerModelBuilder]]" combineOutputs="false">
   <Option key="plotOptimSurface" value="true"/>
+
  <!-- Plot the optimization surface, visualizes the search through the parameter space (2D only) -->
 +
   <Option key="plotOptimSurface" value="false"/>
 +
  <!-- Re-start strategy for resuming the optimization process between sampling iterations.
 +
        One of 'random','continue','model' and 'intelligent' (Default).  See the docs for more information -->
 
   <Option key="restartStrategy" value="intelligent"/>
 
   <Option key="restartStrategy" value="intelligent"/>
   <[[Config:Optimizer|Optimizer]] id="pso" type="PSOtOptimizer">
+
 
 +
   <[[Config:Optimizer|Optimizer]] type="[[Optimizer#PSOtOptimizer|PSOtOptimizer]]">
 
       <Option key="typePSO" value="0"/>
 
       <Option key="typePSO" value="0"/>
 
       <Option key="seedPSO" value="1"/>
 
       <Option key="seedPSO" value="1"/>
Line 162: Line 338:
 
       <Option key="gradientTermination" value="8"/>
 
       <Option key="gradientTermination" value="8"/>
 
   </[[Config:Optimizer|Optimizer]]>
 
   </[[Config:Optimizer|Optimizer]]>
   <[[Config:ModelInterface|ModelInterface]] id="dace" type="BFOptimizationInterface">
+
 
 +
   <[[Config:ModelFactory|ModelFactory]] type="[[ModelFactory#BFFactory|BFFactory]]">
 
       <Option key="type" value="DACE"/>
 
       <Option key="type" value="DACE"/>
       <[[Config:BasisFunction|BasisFunction]] name="gaussian" min=".1" max="5" scale="log"/>
+
     
 +
      <!--Option key="multipleBasisFunctionsAllowed" value="false"/-->
 +
     
 +
       <[[Config:BasisFunction|BasisFunction]] name="gaussian" min=".1" max="5" scale="ln"/>
 +
     
 
       <Option key="regression" value="-1,0,1,2"/>
 
       <Option key="regression" value="-1,0,1,2"/>
 
       <Option key="backend" value="AP"/>
 
       <Option key="backend" value="AP"/>
   </[[Config:ModelInterface|ModelInterface]]>
+
   </[[Config:ModelFactory|ModelFactory]]>
 
</[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>
 
</[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>
 
</source>
 
</source>
=== krigingsim ===
+
=== gpps ===
Build kriging models using Simulated Annealing (requires matlab v7.4)
+
Build GP using pattern search
<source lang="xml">
+
<source xmlns:saxon="http://icl.com/saxon" lang="xml">
<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] id="krigingsim" type="SimAnnealingModelBuilder" combineOutputs="false">
+
<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] type="[[AdaptiveModelBuilder#OptimizerModelBuilder|OptimizerModelBuilder]]" combineOutputs="false">
 +
  <!-- Plot the optimization surface, visualizes the search through the parameter space (2D only) -->
 
   <Option key="plotOptimSurface" value="false"/>
 
   <Option key="plotOptimSurface" value="false"/>
 +
  <!-- Re-start strategy for resuming the optimization process between sampling iterations.
 +
        One of 'random','continue','model' and 'intelligent' (Default).  See the docs for more information -->
 
   <Option key="restartStrategy" value="intelligent"/>
 
   <Option key="restartStrategy" value="intelligent"/>
   <Option key="maxIterations" value="500"/>
+
    
  <Option key="maxFunEvals" value="100"/>
+
  <[[Config:Optimizer|Optimizer]] type="[[Optimizer#MatlabPatternSearch|MatlabPatternSearch]]">
   <[[Config:ModelInterface|ModelInterface]] id="kriging" type="KrigingInterface">
+
      <Option key="maxIterations" value="500"/>
 +
      <Option key="maxFunEvals" value="100"/>
 +
      <Option key="searchMethod" value="GPSPositiveBasis2N"/>
 +
      <Option key="pollMethod" value="MADSPositiveBasis2N"/>       
 +
   </[[Config:Optimizer|Optimizer]]>
 +
 
 +
  <[[Config:ModelFactory|ModelFactory]] type="[[ModelFactory#GaussianProcessFactory|GaussianProcessFactory]]">
 +
      <Option key="covFunction" value="covSEiso"/>    
 +
     
 
       <Option key="lowerThetaBound" value="-5"/>
 
       <Option key="lowerThetaBound" value="-5"/>
 
       <Option key="upperThetaBound" value="3"/>
 
       <Option key="upperThetaBound" value="3"/>
       <Option key="regressionFunction" value="regpoly0"/>
+
  </[[Config:ModelFactory|ModelFactory]]>
       <Option key="correlationFunction" value="corrgauss"/>
+
</[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>
   </[[Config:ModelInterface|ModelInterface]]>
+
</source>
 +
=== gpgenetic ===
 +
Build Gaussian Process models using a GA
 +
<source xmlns:saxon="http://icl.com/saxon" lang="xml">
 +
<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] type="[[AdaptiveModelBuilder#GeneticModelBuilder|GeneticModelBuilder]]" combineOutputs="false">
 +
  <!--See that matlab gads toolbox documentation for more information on the options-->
 +
  <Option key="populationType" value="doubleVector"/>
 +
  <Option key="populationSize" value="15"/>
 +
  <Option key="crossoverFraction" value="0.7"/>
 +
  <Option key="maxGenerations" value="10"/>
 +
  <Option key="eliteCount" value="1"/>
 +
  <Option key="stallGenLimit" value="4"/>
 +
  <Option key="stallTimeLimit" value="Inf"/>
 +
 
 +
  <[[Config:ModelFactory|ModelFactory]] type="[[ModelFactory#GaussianProcessFactory|GaussianProcessFactory]]">
 +
            <Option key="creationFcn" value="@gacreationuniform"/>
 +
      <Option key="crossoverFcn" value="@crossoverheuristic"/>
 +
      <Option key="mutationFcn" value="@mutationadaptfeasible"/>
 +
            <!--
 +
      <Option key="crossoverFcn" value="crossover"/>
 +
      <Option key="mutationFcn" value="mutation"/>
 +
      <Option key="creationFcn" value="createInitialPopulation"/>
 +
            -->
 +
     
 +
      <Option key="covFunction" value="covSEiso"/>
 +
      <Option key="lowerThetaBound" value="-5"/>
 +
      <Option key="upperThetaBound" value="3"/>
 +
  </[[Config:ModelFactory|ModelFactory]]>
 +
</[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>
 +
</source>
 +
=== krigingsim ===
 +
Build kriging models using Simulated Annealing
 +
<source xmlns:saxon="http://icl.com/saxon" lang="xml">
 +
<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] type="[[AdaptiveModelBuilder#OptimizerModelBuilder|OptimizerModelBuilder]]" combineOutputs="false">
 +
  <!-- Plot the optimization surface, visualizes the search through the parameter space (2D only) -->
 +
  <Option key="plotOptimSurface" value="false"/>
 +
  <!-- Re-start strategy for resuming the optimization process between sampling iterations.
 +
        One of 'random','continue','model' and 'intelligent' (Default).  See the docs for more information -->
 +
  <Option key="restartStrategy" value="intelligent"/>
 +
 
 +
  <[[Config:Optimizer|Optimizer]] type="[[Optimizer#MatlabSimAnnealing|MatlabSimAnnealing]]">
 +
      <Option key="maxIterations" value="100"/>
 +
      <Option key="maxFunEvals" value="20"/>
 +
  </[[Config:Optimizer|Optimizer]]>
 +
 
 +
  <!-- See the documentaion for possible regression and correlation functions -->
 +
  <[[Config:ModelFactory|ModelFactory]] type="[[ModelFactory#KrigingFactory|KrigingFactory]]">
 +
      <Option key="regressionMetric" value=""/>
 +
       <Option key="regressionFunction" value="regpoly1"/>
 +
       <Option key="multipleBasisFunctionsAllowed" value="false"/>
 +
      <[[Config:BasisFunction|BasisFunction]]>corrgauss</[[Config:BasisFunction|BasisFunction]]>
 +
   </[[Config:ModelFactory|ModelFactory]]>
 +
 
 
</[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>
 
</[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>
 
</source>
 
</source>
 
=== krigingps ===
 
=== krigingps ===
 
Build kriging models using pattern search
 
Build kriging models using pattern search
<source lang="xml">
+
<source xmlns:saxon="http://icl.com/saxon" lang="xml">
<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] id="krigingps" type="PatternSearchModelBuilder" combineOutputs="false">
+
<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] type="[[AdaptiveModelBuilder#OptimizerModelBuilder|OptimizerModelBuilder]]" combineOutputs="false">
 +
  <!-- Plot the optimization surface, visualizes the search through the parameter space (2D only) -->
 
   <Option key="plotOptimSurface" value="false"/>
 
   <Option key="plotOptimSurface" value="false"/>
 +
  <!-- Re-start strategy for resuming the optimization process between sampling iterations.
 +
        One of 'random','continue','model' and 'intelligent' (Default).  See the docs for more information -->
 
   <Option key="restartStrategy" value="intelligent"/>
 
   <Option key="restartStrategy" value="intelligent"/>
   <Option key="maxIterations" value="500"/>
+
 
  <Option key="maxFunEvals" value="100"/>
+
   <[[Config:Optimizer|Optimizer]] type="[[Optimizer#MatlabPatternSearch|MatlabPatternSearch]]">
  <Option key="searchMethod" value="GPSPositiveBasis2N"/>
+
      <Option key="maxIterations" value="100"/>
  <Option key="pollMethod" value="MADSPositiveBasis2N"/>
+
      <Option key="maxFunEvals" value="20"/>
   <[[Config:ModelInterface|ModelInterface]] id="kriging" type="KrigingInterface">
+
      <Option key="searchMethod" value="GPSPositiveBasis2N"/>
       <Option key="lowerThetaBound" value="-5"/>
+
      <Option key="pollMethod" value="MADSPositiveBasis2N"/>        
       <Option key="upperThetaBound" value="3"/>
+
   </[[Config:Optimizer|Optimizer]]>
       <Option key="regressionFunction" value="regpoly0"/>
+
 
       <Option key="correlationFunction" value="corrgauss"/>
+
  <[[Config:ModelFactory|ModelFactory]] type="[[ModelFactory#KrigingFactory|KrigingFactory]]">
   </[[Config:ModelInterface|ModelInterface]]>
+
       <Option key="regressionMetric" value=""/>
 +
       <Option key="regressionFunction" value="regpoly1"/>
 +
       <Option key="multipleBasisFunctionsAllowed" value="true"/>
 +
       <[[Config:BasisFunction|BasisFunction]]>corrgauss</[[Config:BasisFunction|BasisFunction]]>
 +
      <[[Config:BasisFunction|BasisFunction]]>correxp</[[Config:BasisFunction|BasisFunction]]>
 +
   </[[Config:ModelFactory|ModelFactory]]>
 
</[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>
 
</[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>
 
</source>
 
</source>
 
=== krigingoptim ===
 
=== krigingoptim ===
 
Build kriging models using the matlab optimization toolbox
 
Build kriging models using the matlab optimization toolbox
<source lang="xml">
+
<source xmlns:saxon="http://icl.com/saxon" lang="xml">
<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] id="krigingoptim" type="OptimToolboxModelBuilder" combineOutputs="false">
+
<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] type="[[AdaptiveModelBuilder#OptimizerModelBuilder|OptimizerModelBuilder]]" combineOutputs="false">
 +
  <!-- Plot the optimization surface, visualizes the search through the parameter space (2D only) -->
 
   <Option key="plotOptimSurface" value="false"/>
 
   <Option key="plotOptimSurface" value="false"/>
 +
  <!-- Re-start strategy for resuming the optimization process between sampling iterations.
 +
        One of 'random','continue','model' and 'intelligent' (Default).  See the docs for more information -->
 
   <Option key="restartStrategy" value="intelligent"/>
 
   <Option key="restartStrategy" value="intelligent"/>
   <Option key="maxIterations" value="500"/>
+
    
  <Option key="maxFunEvals" value="100"/>
+
  <[[Config:Optimizer|Optimizer]] type="[[Optimizer#MatlabOptimizer|MatlabOptimizer]]">
   <[[Config:ModelInterface|ModelInterface]] id="kriging" type="KrigingInterface">
+
      <Option key="maxIterations" value="100"/>
      <Option key="lowerThetaBound" value="-5"/>
+
      <Option key="maxFunEvals" value="20"/>
       <Option key="upperThetaBound" value="3"/>
+
  </[[Config:Optimizer|Optimizer]]>
       <Option key="regressionFunction" value="regpoly0"/>
+
 
       <Option key="correlationFunction" value="corrgauss"/>
+
  <!-- See the documentaion for possible regression and correlation functions -->
   </[[Config:ModelInterface|ModelInterface]]>
+
   <[[Config:ModelFactory|ModelFactory]] type="[[ModelFactory#KrigingFactory|KrigingFactory]]">
 +
            <Option key="regressionMetric" value=""/>
 +
       <Option key="regressionFunction" value="regpoly1"/>
 +
       <Option key="multipleBasisFunctionsAllowed" value="false"/>
 +
       <[[Config:BasisFunction|BasisFunction]]>corrgauss</[[Config:BasisFunction|BasisFunction]]>
 +
   </[[Config:ModelFactory|ModelFactory]]>
 
</[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>
 
</[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>
 
</source>
 
</source>
 
=== kriginggenetic ===
 
=== kriginggenetic ===
 
Build kriging models using a genetic algorithm
 
Build kriging models using a genetic algorithm
<source lang="xml">
+
<source xmlns:saxon="http://icl.com/saxon" lang="xml">
<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] id="kriginggenetic" type="GeneticModelBuilder" combineOutputs="false">
+
<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] type="[[AdaptiveModelBuilder#GeneticModelBuilder|GeneticModelBuilder]]" combineOutputs="false">
 +
  <!-- Plot the optimization surface, visualizes the search through the parameter space (2D only) -->
 
   <Option key="plotOptimSurface" value="false"/>
 
   <Option key="plotOptimSurface" value="false"/>
 +
  <!-- Re-start strategy for resuming the optimization process between sampling iterations.
 +
        One of 'random','continue','model' and 'intelligent' (Default).  See the docs for more information -->
 
   <Option key="restartStrategy" value="intelligent"/>
 
   <Option key="restartStrategy" value="intelligent"/>
 +
  <!-- If you specify "custom" as the population type you will be evolving models
 +
  and will use the genetic operators defined in the KrigingFactory class -->
 
   <Option key="populationType" value="doubleVector"/>
 
   <Option key="populationType" value="doubleVector"/>
 
   <Option key="populationSize" value="10"/>
 
   <Option key="populationSize" value="10"/>
Line 233: Line 498:
 
   <Option key="stallGenLimit" value="4"/>
 
   <Option key="stallGenLimit" value="4"/>
 
   <Option key="stallTimeLimit" value="Inf"/>
 
   <Option key="stallTimeLimit" value="Inf"/>
   <[[Config:ModelInterface|ModelInterface]] id="kriging" type="KrigingGeneticInterface">
+
 
 +
        <!-- See the documentaion for possible regression and correlation functions -->
 +
   <[[Config:ModelFactory|ModelFactory]] type="[[ModelFactory#KrigingFactory|KrigingFactory]]">
 
       <Option key="creationFcn" value="@gacreationuniform"/>
 
       <Option key="creationFcn" value="@gacreationuniform"/>
       <Option key="crossoverFcn" value="@crossoversinglepoint"/>
+
       <Option key="crossoverFcn" value="@crossoverheuristic"/>
       <Option key="mutationFcn" value="@mutationgaussian"/>
+
       <Option key="mutationFcn" value="@mutationadaptfeasible"/>
       <Option key="constraintFcn" value="[]"/>
+
<!--          <Option key="creationFcn" value="createInitialPopulation"/>
       <Option key="lowerThetaBound" value="-5"/>
+
       <Option key="crossoverFcn" value="crossover"/>
      <Option key="upperThetaBound" value="3"/>
+
       <Option key="mutationFcn" value="mutation"/>          -->
       <Option key="regressionFunction" value="regpoly0"/>
+
            <!-- See the documentaion for possible regression and correlation functions -->                                                                                                                                                                                                                                                                        <Option key="regressionMetric" value=""/>
       <Option key="correlationFunction" value="corrgauss"/>
+
       <Option key="regressionFunction" value="regpoly1"/>
   </[[Config:ModelInterface|ModelInterface]]>
+
       <Option key="multipleBasisFunctionsAllowed" value="false"/>
 +
      <[[Config:BasisFunction|BasisFunction]]>corrgauss</[[Config:BasisFunction|BasisFunction]]>
 +
   </[[Config:ModelFactory|ModelFactory]]>
 
</[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>
 
</[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>
 
</source>
 
</source>
 
=== krigingpso ===
 
=== krigingpso ===
 
Build kriging models using PSO
 
Build kriging models using PSO
<source lang="xml">
+
<source xmlns:saxon="http://icl.com/saxon" lang="xml">
<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] id="krigingpso" type="PSOModelBuilder" combineOutputs="false">
+
<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] type="[[AdaptiveModelBuilder#OptimizerModelBuilder|OptimizerModelBuilder]]" combineOutputs="false">
 +
  <!-- Plot the optimization surface, visualizes the search through the parameter space (2D only) -->
 
   <Option key="plotOptimSurface" value="false"/>
 
   <Option key="plotOptimSurface" value="false"/>
 +
  <!-- Re-start strategy for resuming the optimization process between sampling iterations.
 +
        One of 'random','continue','model' and 'intelligent' (Default).  See the docs for more information -->
 
   <Option key="restartStrategy" value="intelligent"/>
 
   <Option key="restartStrategy" value="intelligent"/>
   <[[Config:Optimizer|Optimizer]] id="pso" type="PSOtOptimizer">
+
 
 +
   <[[Config:Optimizer|Optimizer]] type="[[Optimizer#PSOtOptimizer|PSOtOptimizer]]">
 
       <Option key="typePSO" value="0"/>
 
       <Option key="typePSO" value="0"/>
 
       <Option key="seedPSO" value="1"/>
 
       <Option key="seedPSO" value="1"/>
Line 259: Line 532:
 
       <Option key="gradientTermination" value="8"/>
 
       <Option key="gradientTermination" value="8"/>
 
   </[[Config:Optimizer|Optimizer]]>
 
   </[[Config:Optimizer|Optimizer]]>
   <[[Config:ModelInterface|ModelInterface]] id="kriging" type="KrigingInterface">
+
 
      <Option key="lowerThetaBound" value="-5"/>
+
  <!-- See the documentaion for possible regression and correlation functions -->
      <Option key="upperThetaBound" value="3"/>
+
   <[[Config:ModelFactory|ModelFactory]] type="[[ModelFactory#KrigingFactory|KrigingFactory]]">
       <Option key="regressionFunction" value="regpoly0"/>
+
            <Option key="regressionMetric" value=""/>
       <Option key="correlationFunction" value="corrgauss"/>
+
      <Option key="regressionFunction" value="regpoly1"/>
   </[[Config:ModelInterface|ModelInterface]]>
+
      <Option key="multipleBasisFunctionsAllowed" value="false"/>
 +
      <[[Config:BasisFunction|BasisFunction]]>corrgauss</[[Config:BasisFunction|BasisFunction]]>
 +
  </[[Config:ModelFactory|ModelFactory]]>
 +
</[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>
 +
</source>
 +
=== krigingnsga ===
 +
Build kriging models using NSGA-II, requires a multi-output or multi-measure setup
 +
<source xmlns:saxon="http://icl.com/saxon" lang="xml">
 +
<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] type="[[AdaptiveModelBuilder#ParetoModelBuilder|ParetoModelBuilder]]" combineOutputs="true">
 +
  <Option key="restartStrategy" value="model"/>
 +
  <Option key="populationSize" value="30"/>
 +
  <Option key="maxGenerations" value="30"/>
 +
  <Option key="plotParetoFront" value="false"/>
 +
  <Option key="paretoMode" value="true"/>
 +
       
 +
  <!-- See the documentaion for possible regression and correlation functions -->
 +
  <[[Config:ModelFactory|ModelFactory]] type="[[ModelFactory#KrigingFactory|KrigingFactory]]">
 +
            <Option key="regressionMetric" value=""/>
 +
       <Option key="regressionFunction" value="regpoly1"/>
 +
       <Option key="multipleBasisFunctionsAllowed" value="false"/>
 +
      <[[Config:BasisFunction|BasisFunction]]>corrgauss</[[Config:BasisFunction|BasisFunction]]>
 +
   </[[Config:ModelFactory|ModelFactory]]>
 
</[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>
 
</[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>
 
</source>
 
</source>
 
=== krigingrandom ===
 
=== krigingrandom ===
Build kriging models randomly
+
Build kriging models randomly, useful as a baseline comparison
<source lang="xml">
+
<source xmlns:saxon="http://icl.com/saxon" lang="xml">
<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] id="krigingrandom" type="RandomModelBuilder" combineOutputs="false">
+
<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] type="[[AdaptiveModelBuilder#RandomModelBuilder|RandomModelBuilder]]" combineOutputs="false">
 +
  <!-- Plot the optimization surface, visualizes the search through the parameter space (2D only) -->
 +
  <Option key="plotOptimSurface" value="false"/>
 +
  <!-- Build 100 random models before restarting -->
 
   <Option key="runSize" value="100"/>
 
   <Option key="runSize" value="100"/>
   <[[Config:ModelInterface|ModelInterface]] id="kriging" type="KrigingInterface">
+
 
      <Option key="lowerThetaBound" value="-5"/>
+
  <!-- See the documentaion for possible regression and correlation functions -->
      <Option key="upperThetaBound" value="3"/>
+
   <[[Config:ModelFactory|ModelFactory]] type="[[ModelFactory#KrigingFactory|KrigingFactory]]">
 +
            <Option key="regressionMetric" value=""/>
 +
      <Option key="regressionFunction" value="regpoly1"/>
 +
      <Option key="multipleBasisFunctionsAllowed" value="false"/>
 +
      <[[Config:BasisFunction|BasisFunction]]>corrgauss</[[Config:BasisFunction|BasisFunction]]>
 +
  </[[Config:ModelFactory|ModelFactory]]>
 +
</[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>
 +
</source>
 +
=== blindkriging ===
 +
Build blind kriging models
 +
<source xmlns:saxon="http://icl.com/saxon" lang="xml">
 +
<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] type="[[AdaptiveModelBuilder#AdaptiveModelBuilder|AdaptiveModelBuilder]]" combineOutputs="false">
 +
  <Option key="nBestModels" value="1"/>
 +
 
 +
  <!-- See the documentation for possible regression and correlation functions -->
 +
  <[[Config:ModelFactory|ModelFactory]] type="[[ModelFactory#KrigingFactory|KrigingFactory]]">
 +
            <Option key="regressionMetric" value="cvpe"/>
 
       <Option key="regressionFunction" value="regpoly0"/>
 
       <Option key="regressionFunction" value="regpoly0"/>
       <Option key="correlationFunction" value="corrgauss"/>
+
       <Option key="multipleBasisFunctionsAllowed" value="false"/>
   </[[Config:ModelInterface|ModelInterface]]>
+
     
 +
      <Option key="initialHp" value="0.5"/>
 +
      <[[Config:BasisFunction|BasisFunction]]>corrgauss</[[Config:BasisFunction|BasisFunction]]>
 +
     
 +
      <[[Config:Optimizer|Optimizer]]>fminconWithDerivatives</[[Config:Optimizer|Optimizer]]>
 +
   </[[Config:ModelFactory|ModelFactory]]>
 +
 
 
</[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>
 
</[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>
 
</source>
 
</source>
=== splines ===
+
=== kriging ===
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+
Build kriging models using the maximum likelihood to set the thetas
<source lang="xml">
+
<source xmlns:saxon="http://icl.com/saxon" lang="xml">
<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] id="splines" type="SequentialModelBuilder" combineOutputs="false">
+
<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] type="[[AdaptiveModelBuilder#AdaptiveModelBuilder|AdaptiveModelBuilder]]" combineOutputs="false">
   <Option key="maximumRunLength" value="30"/>
+
   <Option key="nBestModels" value="1"/>
   <Option key="decay" value=".99"/>
+
    
  <Option key="historySize" value="15"/>
+
  <!-- See the documentation for possible regression and correlation functions -->
  <Option key="strategy" value="best"/>
+
  <[[Config:ModelFactory|ModelFactory]] type="[[ModelFactory#KrigingFactory|KrigingFactory]]">
  <[[Config:ModelInterface|ModelInterface]] type="SplineSequentialInterface">
+
            <Option key="regressionMetric" value=""/>
       <Option key="smoothingBounds" value="0,1"/>
+
      <Option key="regressionFunction" value="regpoly0"/>
   </[[Config:ModelInterface|ModelInterface]]>
+
      <Option key="multipleBasisFunctionsAllowed" value="false"/>
 +
     
 +
       <Option key="initialHp" value="0.5"/>
 +
      <[[Config:BasisFunction|BasisFunction]]>corrgauss</[[Config:BasisFunction|BasisFunction]]>
 +
     
 +
      <[[Config:Optimizer|Optimizer]]>fminconWithDerivatives</[[Config:Optimizer|Optimizer]]>
 +
   </[[Config:ModelFactory|ModelFactory]]>
 +
 
 
</[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>
 
</[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>
 
</source>
 
</source>
 +
 +
== Splines ==
 +
 
=== splinesgenetic ===
 
=== splinesgenetic ===
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+
Build spline models using a GA
<source lang="xml">
+
<source xmlns:saxon="http://icl.com/saxon" lang="xml">
<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] id="splinesgenetic" type="GeneticModelBuilder" combineOutputs="false">
+
<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] type="[[AdaptiveModelBuilder#GeneticModelBuilder|GeneticModelBuilder]]" combineOutputs="false">
 +
  <!-- Re-start strategy for resuming the optimization process between sampling iterations.
 +
        One of 'random','continue','model' and 'intelligent' (Default).  See the docs for more information -->
 
   <Option key="restartStrategy" value="intelligent"/>
 
   <Option key="restartStrategy" value="intelligent"/>
   <Option key="populationType" value="custom"/>
+
   <Option key="populationType" value="doubleVector"/>
 
   <Option key="populationSize" value="10"/>
 
   <Option key="populationSize" value="10"/>
 
   <Option key="maxGenerations" value="10"/>
 
   <Option key="maxGenerations" value="10"/>
Line 305: Line 636:
 
   <Option key="stallGenLimit" value="4"/>
 
   <Option key="stallGenLimit" value="4"/>
 
   <Option key="stallTimeLimit" value="Inf"/>
 
   <Option key="stallTimeLimit" value="Inf"/>
   <[[Config:ModelInterface|ModelInterface]] id="spline" type="SplineGeneticInterface">
+
 
       <Option key="creationFcn" value="createInitialPopulation"/>
+
   <[[Config:ModelFactory|ModelFactory]] type="[[ModelFactory#SplineFactory|SplineFactory]]">
       <Option key="crossoverFcn" value="simpleCrossover"/>
+
       <Option key="creationFcn" value="@gacreationuniform"/>
       <Option key="mutationFcn" value="simpleMutation"/>
+
       <Option key="crossoverFcn" value="@crossoverheuristic"/>
       <Option key="constraintFcn" value="[]"/>
+
       <Option key="mutationFcn" value="@mutationadaptfeasible"/>
       <Option key="smoothingBounds" value="0,1"/>
+
      <!-- <Option key="creationFcn" value="createInitialPopulation"/>
   </[[Config:ModelInterface|ModelInterface]]>
+
      <Option key="crossoverFcn" value="crossover"/>
 +
       <Option key="mutationFcn" value="mutation"/> -->
 +
 
 +
       <Option key="smoothingBounds" value="0,1"/>  
 +
   </[[Config:ModelFactory|ModelFactory]]>
 
</[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>
 
</[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>
 
</source>
 
</source>
 
=== splinessim ===
 
=== splinessim ===
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+
Build spline models using the Simulated Annealing modelbuilder
<source lang="xml">
+
<source xmlns:saxon="http://icl.com/saxon" lang="xml">
<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] id="splinessim" type="SimAnnealingModelBuilder" combineOutputs="false">
+
<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] type="[[AdaptiveModelBuilder#OptimizerModelBuilder|OptimizerModelBuilder]]" combineOutputs="false">
 +
  <!-- Re-start strategy for resuming the optimization process between sampling iterations.
 +
        One of 'random','continue','model' and 'intelligent' (Default).  See the docs for more information -->
 
   <Option key="restartStrategy" value="intelligent"/>
 
   <Option key="restartStrategy" value="intelligent"/>
   <Option key="maxIterations" value="500"/>
+
    
  <Option key="maxFunEvals" value="100"/>
+
  <[[Config:Optimizer|Optimizer]] type="[[Optimizer#MatlabSimAnnealing|MatlabSimAnnealing]]">
   <[[Config:ModelInterface|ModelInterface]] id="spline" type="SplineInterface">
+
      <Option key="maxIterations" value="100"/>
       <Option key="smoothingBounds" value="0,1"/>
+
      <Option key="maxFunEvals" value="20"/>
   </[[Config:ModelInterface|ModelInterface]]>
+
  </[[Config:Optimizer|Optimizer]]>
 +
 
 +
   <[[Config:ModelFactory|ModelFactory]] type="[[ModelFactory#SplineFactory|SplineFactory]]">
 +
       <Option key="smoothingBounds" value="0,1"/>    
 +
   </[[Config:ModelFactory|ModelFactory]]>
 
</[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>
 
</[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>
 
</source>
 
</source>
 
=== splinesps ===
 
=== splinesps ===
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+
Build spline models using the Pattern Search modelbuilder
<source lang="xml">
+
<source xmlns:saxon="http://icl.com/saxon" lang="xml">
<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] id="splinesps" type="PatternSearchModelBuilder" combineOutputs="false">
+
<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] type="[[AdaptiveModelBuilder#OptimizerModelBuilder|OptimizerModelBuilder]]" combineOutputs="false">
 +
  <!-- Re-start strategy for resuming the optimization process between sampling iterations.
 +
        One of 'random','continue','model' and 'intelligent' (Default).  See the docs for more information -->
 
   <Option key="restartStrategy" value="intelligent"/>
 
   <Option key="restartStrategy" value="intelligent"/>
   <Option key="maxIterations" value="500"/>
+
    
  <Option key="maxFunEvals" value="100"/>
+
  <[[Config:Optimizer|Optimizer]] type="[[Optimizer#MatlabPatternSearch|MatlabPatternSearch]]">
  <Option key="searchMethod" value="GPSPositiveBasis2N"/>
+
      <Option key="maxIterations" value="100"/>
  <Option key="pollMethod" value="MADSPositiveBasis2N"/>
+
      <Option key="maxFunEvals" value="20"/>
   <[[Config:ModelInterface|ModelInterface]] id="spline" type="SplineInterface">
+
      <Option key="searchMethod" value="GPSPositiveBasis2N"/>
       <Option key="smoothingBounds" value="0,1"/>
+
      <Option key="pollMethod" value="MADSPositiveBasis2N"/>       
   </[[Config:ModelInterface|ModelInterface]]>
+
  </[[Config:Optimizer|Optimizer]]>
 +
 
 +
   <[[Config:ModelFactory|ModelFactory]] type="[[ModelFactory#SplineFactory|SplineFactory]]">
 +
       <Option key="smoothingBounds" value="0,1"/>          
 +
   </[[Config:ModelFactory|ModelFactory]]>
 
</[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>
 
</[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>
 
</source>
 
</source>
 
=== splinesoptim ===
 
=== splinesoptim ===
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+
Use the Matlab optimization toolbox to build spline models
<source lang="xml">
+
<source xmlns:saxon="http://icl.com/saxon" lang="xml">
<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] id="splinesoptim" type="OptimToolboxModelBuilder" combineOutputs="false">
+
<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] type="[[AdaptiveModelBuilder#OptimizerModelBuilder|OptimizerModelBuilder]]" combineOutputs="false">
 +
  <!-- Re-start strategy for resuming the optimization process between sampling iterations.
 +
        One of 'random','continue','model' and 'intelligent' (Default).  See the docs for more information -->
 
   <Option key="restartStrategy" value="intelligent"/>
 
   <Option key="restartStrategy" value="intelligent"/>
   <Option key="maxIterations" value="500"/>
+
 
  <Option key="maxFunEvals" value="100"/>
+
   <[[Config:Optimizer|Optimizer]] type="[[Optimizer#MatlabOptimizer|MatlabOptimizer]]">
   <[[Config:ModelInterface|ModelInterface]] id="spline" type="SplineInterface">
+
      <Option key="maxIterations" value="100"/>
       <Option key="smoothingBounds" value="0,1"/>
+
      <Option key="maxFunEvals" value="20"/>
   </[[Config:ModelInterface|ModelInterface]]>
+
  </[[Config:Optimizer|Optimizer]]>
 +
 
 +
   <[[Config:ModelFactory|ModelFactory]] type="[[ModelFactory#SplineFactory|SplineFactory]]">
 +
       <Option key="smoothingBounds" value="0,1"/>    
 +
   </[[Config:ModelFactory|ModelFactory]]>
 +
 
 
</[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>
 
</[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>
 
</source>
 
</source>
=== annbatch ===
+
 
Maintain a population (batch) of feedforward neural networks and mutation to search the parameter space See the matlab neural network toolbox for more information
+
== Interpolation model ==
<source lang="xml">
+
 
<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] id="annbatch" type="BatchModelBuilder" combineOutputs="false">
+
=== ipol ===
   <Option key="batchSize" value="10"/>
+
Simple linear/cubic/nearest neighbour interpolation models for scattered data. For one D uses interp1, for nD uses griddata(n)
   <Option key="maxBatches" value="10"/>
+
<source xmlns:saxon="http://icl.com/saxon" lang="xml">
   <Option key="maxBatchesNoImprovement" value="4"/>
+
<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] type="[[AdaptiveModelBuilder#AdaptiveModelBuilder|AdaptiveModelBuilder]]" combineOutputs="false">
   <[[Config:ModelInterface|ModelInterface]] id="ann" type="ANNBatchInterface">
+
        <[[Config:ModelFactory|ModelFactory]] type="[[ModelFactory#InterpolationFactory|InterpolationFactory]]">
 +
      <!--  depending on the input dimension options are: linear, nearest, and cubic
 +
      if you are using Matlab r2009 or later you can also use 'natural' -->
 +
      <Option key="method" value="linear"/> 
 +
        </[[Config:ModelFactory|ModelFactory]]>
 +
    </[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>
 +
</source>
 +
 
 +
== Artificial neural networks ==
 +
 
 +
=== ann ===
 +
Use a custom evolutionary-like strategy to generate ANN models, this is much faster than the GA approach but not necessarily better
 +
<source xmlns:saxon="http://icl.com/saxon" lang="xml">
 +
<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] type="[[AdaptiveModelBuilder#SequentialModelBuilder|SequentialModelBuilder]]" combineOutputs="false">
 +
  <Option key="maximumRunLength" value="15"/>
 +
  <!-- Degeneration of score if a model gets older -->
 +
   <Option key="decay" value=".99"/>
 +
  <!-- Size of the best model history -->
 +
   <Option key="historySize" value="6"/>
 +
  <!-- One of best, last. When set to best the best `historySize' models are kept,
 +
    - - when set to last, the last `historySize' models are kept -->
 +
   <Option key="strategy" value="best"/>
 +
 
 +
   <[[Config:ModelFactory|ModelFactory]] type="[[ModelFactory#ANNFactory|ANNFactory]]">
 +
      <!--initial hidden layer dimension-->
 
       <Option key="initialSize" value="3,3"/>
 
       <Option key="initialSize" value="3,3"/>
 +
      <!--comma separated list of allowed learning rules-->
 
       <Option key="allowedLearningRules" value="trainbr"/>
 
       <Option key="allowedLearningRules" value="trainbr"/>
 +
      <!--performance function to use, empty means use the matlab default-->
 
       <Option key="performFcn" value=""/>
 
       <Option key="performFcn" value=""/>
 +
      <!--how many epochs to train for-->
 
       <Option key="epochs" value="300"/>
 
       <Option key="epochs" value="300"/>
 +
      <!--max time to train for-->
 
       <Option key="trainingTime" value="Inf"/>
 
       <Option key="trainingTime" value="Inf"/>
 +
      <!--range of initial random weights-->
 
       <Option key="initWeightRange" value="-0.8,0.8"/>
 
       <Option key="initWeightRange" value="-0.8,0.8"/>
 +
      <!--mutation changes x neurons at a time (in a random layer) with x in [lb ub]-->
 
       <Option key="hiddenUnitDelta" value="-2,3"/>
 
       <Option key="hiddenUnitDelta" value="-2,3"/>
 +
      <!--train until the error reaches this goal-->
 
       <Option key="trainingGoal" value="0"/>
 
       <Option key="trainingGoal" value="0"/>
 +
      <!--show training progress every x epochs, set to NaN to disable-->
 
       <Option key="trainingProgress" value="NaN"/>
 
       <Option key="trainingProgress" value="NaN"/>
 +
      <!--How to train the network, one of 'auto' or 'earlyStopping'
 +
        auto: train with early stopping unless regularization is employed
 +
        Set to any other value for simply training on all the data, doing nothing special -->
 
       <Option key="trainMethod" value="auto"/>
 
       <Option key="trainMethod" value="auto"/>
 +
      <!--the training set - validation set - testset ratios-->
 
       <Option key="earlyStoppingRatios" value="0.80,0.20,0"/>
 
       <Option key="earlyStoppingRatios" value="0.80,0.20,0"/>
 +
      <!-- Transfer function to use for all hidden layers and the output layer
 +
      So should be a list of max 2 items -->
 
       <Option key="transferFunctionTemplate" value="tansig,purelin"/>
 
       <Option key="transferFunctionTemplate" value="tansig,purelin"/>
   </[[Config:ModelInterface|ModelInterface]]>
+
   </[[Config:ModelFactory|ModelFactory]]>
 
</[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>
 
</[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>
 
</source>
 
</source>
 
=== anngenetic ===
 
=== anngenetic ===
 
Use the matlab gads toolbox to select ANN parameters using a GA
 
Use the matlab gads toolbox to select ANN parameters using a GA
<source lang="xml">
+
<source xmlns:saxon="http://icl.com/saxon" lang="xml">
<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] id="anngenetic" type="GeneticModelBuilder" combineOutputs="false">
+
<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] type="[[AdaptiveModelBuilder#GeneticModelBuilder|GeneticModelBuilder]]" combineOutputs="false">
   <Option key="restartStrategy" value="intelligent"/>
+
  <!-- Re-start strategy for resuming the optimization process between sampling iterations.
 +
        One of 'random','continue','model' and 'intelligent' (Default).  See the docs for more information -->
 +
   <Option key="restartStrategy" value="continue"/>
 +
  <!--See that matlab gads toolbox documentation for more information on the options-->
 
   <Option key="populationType" value="custom"/>
 
   <Option key="populationType" value="custom"/>
 
   <Option key="populationSize" value="10"/>
 
   <Option key="populationSize" value="10"/>
Line 387: Line 782:
 
   <Option key="stallGenLimit" value="4"/>
 
   <Option key="stallGenLimit" value="4"/>
 
   <Option key="stallTimeLimit" value="Inf"/>
 
   <Option key="stallTimeLimit" value="Inf"/>
   <[[Config:ModelInterface|ModelInterface]] id="ann" type="ANNGeneticInterface">
+
 
       <Option key="crossoverFcn" value="simpleCrossover"/>
+
   <[[Config:ModelFactory|ModelFactory]] type="[[ModelFactory#ANNFactory|ANNFactory]]">
       <Option key="mutationFcn" value="simpleMutation"/>
+
       <Option key="crossoverFcn" value="crossover"/>
      <Option key="constraintFcn" value="[]"/>
+
       <Option key="mutationFcn" value="mutation"/>
 
       <Option key="creationFcn" value="createInitialPopulation"/>
 
       <Option key="creationFcn" value="createInitialPopulation"/>
 +
     
 +
      <!--initial hidden layer dimension-->
 
       <Option key="initialSize" value="3,3"/>
 
       <Option key="initialSize" value="3,3"/>
       <Option key="allowedLearningRules" value="trainbr,trainlm,trainscg"/>
+
      <!--comma separated list of allowed learning rules-->
 +
       <Option key="allowedLearningRules" value="trainbr"/>
 +
      <!--performance function to use, empty means use the matlab default-->
 
       <Option key="performFcn" value=""/>
 
       <Option key="performFcn" value=""/>
 +
      <!--how many epochs to train for-->
 
       <Option key="epochs" value="300"/>
 
       <Option key="epochs" value="300"/>
 +
      <!--max time to train for-->
 
       <Option key="trainingTime" value="Inf"/>
 
       <Option key="trainingTime" value="Inf"/>
 +
      <!--range of initial random weights-->
 
       <Option key="initWeightRange" value="-0.8,0.8"/>
 
       <Option key="initWeightRange" value="-0.8,0.8"/>
 +
      <!--mutation changes x neurons at a time (in a random layer) with x in [lb ub]-->
 
       <Option key="hiddenUnitDelta" value="-2,3"/>
 
       <Option key="hiddenUnitDelta" value="-2,3"/>
 +
      <!--train until the error reaches this goal-->
 
       <Option key="trainingGoal" value="0"/>
 
       <Option key="trainingGoal" value="0"/>
 +
      <!--show training progress every x epochs, set to NaN to disable-->
 
       <Option key="trainingProgress" value="NaN"/>
 
       <Option key="trainingProgress" value="NaN"/>
 +
      <!--How to train the network, one of 'auto' or 'earlyStopping'
 +
        auto: train with early stopping unless regularization is employed
 +
        Set to any other value for simply training on all the data, doing nothing special -->
 
       <Option key="trainMethod" value="auto"/>
 
       <Option key="trainMethod" value="auto"/>
 +
      <!--the training set - validation set - testset ratios-->
 
       <Option key="earlyStoppingRatios" value="0.80,0.20,0"/>
 
       <Option key="earlyStoppingRatios" value="0.80,0.20,0"/>
 +
      <!-- Transfer function to use for all hidden layers and the output layer
 +
      So should be a list of max 2 items -->
 
       <Option key="transferFunctionTemplate" value="tansig,purelin"/>
 
       <Option key="transferFunctionTemplate" value="tansig,purelin"/>
   </[[Config:ModelInterface|ModelInterface]]>
+
   </[[Config:ModelFactory|ModelFactory]]>
 +
</[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>
 +
</source>
 +
=== annfixed ===
 +
Fixed ANN model builder, allows you to choose the hidden layer structure manually Thus there is no optimization algorithm involved.
 +
<source xmlns:saxon="http://icl.com/saxon" lang="xml">
 +
<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] type="[[AdaptiveModelBuilder#AdaptiveModelBuilder|AdaptiveModelBuilder]]" combineOutputs="false">
 +
  <[[Config:ModelFactory|ModelFactory]] type="[[ModelFactory#ANNFactory|ANNFactory]]">
 +
      <Option key="allowedLearningRules" value="trainbr"/>
 +
      <Option key="initialSize" value="3,3"/>
 +
  </[[Config:ModelFactory|ModelFactory]]>
 
</[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>
 
</[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>
 
</source>
 
</source>
 
=== annrandom ===
 
=== annrandom ===
 
Random ANN model builder, usefull as a baseline comparison
 
Random ANN model builder, usefull as a baseline comparison
<source lang="xml">
+
<source xmlns:saxon="http://icl.com/saxon" lang="xml">
<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] id="annrandom" type="RandomModelBuilder" combineOutputs="false">
+
<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] type="[[AdaptiveModelBuilder#RandomModelBuilder|RandomModelBuilder]]" combineOutputs="false">
 +
  <!--This many iterations before allowing new samples-->
 
   <Option key="runSize" value="10"/>
 
   <Option key="runSize" value="10"/>
   <[[Config:ModelInterface|ModelInterface]] id="ann" type="ANNInterface">
+
   <[[Config:ModelFactory|ModelFactory]] type="[[ModelFactory#ANNFactory|ANNFactory]]">
 
       <Option key="allowedLearningRules" value="trainbr,trainlm,trainscg"/>
 
       <Option key="allowedLearningRules" value="trainbr,trainlm,trainscg"/>
   </[[Config:ModelInterface|ModelInterface]]>
+
   </[[Config:ModelFactory|ModelFactory]]>
 
</[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>
 
</[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>
 
</source>
 
</source>
 
=== fanngenetic ===
 
=== fanngenetic ===
 
Use the matlab gads toolbox to select ANN parameters using a GA (based on the FANN library)
 
Use the matlab gads toolbox to select ANN parameters using a GA (based on the FANN library)
<source lang="xml">
+
<source xmlns:saxon="http://icl.com/saxon" lang="xml">
<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] id="fanngenetic" type="GeneticModelBuilder" combineOutputs="false">
+
<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] type="[[AdaptiveModelBuilder#GeneticModelBuilder|GeneticModelBuilder]]" combineOutputs="false">
   <Option key="restartStrategy" value="intelligent"/>
+
  <!-- Re-start strategy for resuming the optimization process between sampling iterations.
   <Option key="populationType" value="custom"/>
+
        One of 'random','continue','model' and 'intelligent' (Default).  See the docs for more information -->
   <Option key="populationSize" value="10"/>
+
   <Option key="restartStrategy" value="continue"/>
   <Option key="crossoverFraction" value="0.7"/>
+
  <!--See that matlab gads toolbox documentation for more information on the options-->   
   <Option key="maxGenerations" value="10"/>
+
   <Option key="populationType" value="custom"/>    
   <Option key="eliteCount" value="1"/>
+
   <Option key="populationSize" value="10"/>    
   <Option key="stallGenLimit" value="4"/>
+
   <Option key="crossoverFraction" value="0.7"/>    
   <Option key="stallTimeLimit" value="Inf"/>
+
   <Option key="maxGenerations" value="10"/>    
   <[[Config:ModelInterface|ModelInterface]] id="fann" type="FANNGeneticInterface">
+
   <Option key="eliteCount" value="1"/>    
       <Option key="crossoverFcn" value="simpleCrossover"/>
+
   <Option key="stallGenLimit" value="4"/>    
       <Option key="mutationFcn" value="simpleMutation"/>
+
   <Option key="stallTimeLimit" value="Inf"/>    
       <Option key="constraintFcn" value="[]"/>
+
 
       <Option key="creationFcn" value="createInitialPopulation"/>
+
   <[[Config:ModelFactory|ModelFactory]] type="[[ModelFactory#FANNFactory|FANNFactory]]">    
       <Option key="initialSize" value="4,4"/>
+
       <Option key="crossoverFcn" value="crossover"/>    
       <Option key="epochs" value="1500"/>
+
       <Option key="mutationFcn" value="mutation"/>    
       <Option key="initWeightRange" value="-0.8,0.8"/>
+
       <Option key="creationFcn" value="createInitialPopulation"/>    
       <Option key="hiddenUnitDelta" value="-2,2"/>
+
     
       <Option key="trainingGoal" value="0"/>
+
       <!--initial hidden layer dimension-->    
   </[[Config:ModelInterface|ModelInterface]]>
+
       <Option key="initialSize" value="4,4"/>    
 +
      <!--how many epochs to train for-->   
 +
       <Option key="epochs" value="1500"/>    
 +
      <!--range of initial random weights-->   
 +
       <Option key="initWeightRange" value="-0.8,0.8"/>    
 +
      <!--mutation changes x neurons at a time (in a random layer) with x in [lb ub]-->   
 +
       <Option key="hiddenUnitDelta" value="-2,2"/>    
 +
      <!--train until the error reaches this goal-->   
 +
       <Option key="trainingGoal" value="0"/>    
 +
   </[[Config:ModelFactory|ModelFactory]]>    
 
</[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>
 
</[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>
 
</source>
 
</source>
 
=== nanngenetic ===
 
=== nanngenetic ===
 
Use the matlab gads toolbox to select ANN parameters using a GA (based on the NNSYSID library)
 
Use the matlab gads toolbox to select ANN parameters using a GA (based on the NNSYSID library)
<source lang="xml">
+
<source xmlns:saxon="http://icl.com/saxon" lang="xml">
<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] id="nanngenetic" type="GeneticModelBuilder" combineOutputs="false">
+
<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] type="[[AdaptiveModelBuilder#GeneticModelBuilder|GeneticModelBuilder]]" combineOutputs="false">
 +
  <!-- Re-start strategy for resuming the optimization process between sampling iterations.
 +
        One of 'random','continue','model' and 'intelligent' (Default).  See the docs for more information -->
 +
  <Option key="restartStrategy" value="continue"/>
 +
  <!--See that matlab gads toolbox documentation for more information on the options-->   
 +
  <Option key="populationType" value="custom"/>   
 +
  <Option key="populationSize" value="10"/>   
 +
  <Option key="crossoverFraction" value="0.7"/>   
 +
  <Option key="maxGenerations" value="10"/>   
 +
  <Option key="eliteCount" value="1"/>   
 +
  <Option key="stallGenLimit" value="4"/>   
 +
  <Option key="stallTimeLimit" value="Inf"/>   
 +
 
 +
  <[[Config:ModelFactory|ModelFactory]] type="[[ModelFactory#NANNFactory|NANNFactory]]">   
 +
      <Option key="crossoverFcn" value="crossover"/>   
 +
      <Option key="mutationFcn" value="mutation"/>   
 +
      <Option key="creationFcn" value="createInitialPopulation"/>   
 +
     
 +
      <!--initial hidden layer dimension-->   
 +
      <Option key="initialSize" value="10"/>   
 +
      <!--how many epochs to train for-->   
 +
      <Option key="epochs" value="500"/>   
 +
      <!--range of initial random weights-->   
 +
      <Option key="initWeightRange" value="-0.8,0.8"/>   
 +
      <!--mutation changes x neurons at a time (in a random layer) with x in [lb ub]-->   
 +
      <Option key="hiddenUnitDelta" value="-2,3"/>   
 +
      <!-- pruning techniques used : 0: none, 1: Mag Threshold, 2: Iterative Mag, 3: OBD, 4: OBS -->   
 +
      <Option key="allowedPruneTechniques" value="0,1,2,3,4"/>
 +
      <!-- threshold for magnitude based pruning -->   
 +
      <Option key="threshold" value="0.2"/>   
 +
      <!-- retrain epochs while pruning-->   
 +
      <Option key="retrain" value="50"/>   
 +
  </[[Config:ModelFactory|ModelFactory]]>   
 +
</[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>
 +
</source>
 +
 
 +
=== rbfnngenetic ===
 +
Genetic model builder for Radial Basis Function Neural networks
 +
<source xmlns:saxon="http://icl.com/saxon" lang="xml">
 +
<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] type="[[AdaptiveModelBuilder#GeneticModelBuilder|GeneticModelBuilder]]" combineOutputs="false">
 +
  <!-- Re-start strategy for resuming the optimization process between sampling iterations.
 +
        One of 'random','continue','model' and 'intelligent' (Default).  See the docs for more information -->
 
   <Option key="restartStrategy" value="intelligent"/>
 
   <Option key="restartStrategy" value="intelligent"/>
   <Option key="populationType" value="custom"/>
+
   <Option key="populationType" value="doubleVector"/>
 
   <Option key="populationSize" value="10"/>
 
   <Option key="populationSize" value="10"/>
  <Option key="crossoverFraction" value="0.7"/>
 
 
   <Option key="maxGenerations" value="10"/>
 
   <Option key="maxGenerations" value="10"/>
 
   <Option key="eliteCount" value="1"/>
 
   <Option key="eliteCount" value="1"/>
 +
  <Option key="crossoverFraction" value="0.7"/>
 
   <Option key="stallGenLimit" value="4"/>
 
   <Option key="stallGenLimit" value="4"/>
 
   <Option key="stallTimeLimit" value="Inf"/>
 
   <Option key="stallTimeLimit" value="Inf"/>
   <[[Config:ModelInterface|ModelInterface]] id="nann" type="NANNGeneticInterface">
+
 
       <Option key="crossoverFcn" value="simpleCrossover"/>
+
   <[[Config:ModelFactory|ModelFactory]] type="[[ModelFactory#RBFNNFactory|RBFNNFactory]]">
       <Option key="mutationFcn" value="simpleMutation"/>
+
      <Option key="creationFcn" value="@gacreationuniform"/>
       <Option key="constraintFcn" value="[]"/>
+
      <Option key="crossoverFcn" value="@crossoverheuristic"/>
       <Option key="creationFcn" value="createInitialPopulation"/>
+
      <Option key="mutationFcn" value="@mutationadaptfeasible"/>
       <Option key="initialSize" value="10"/>
+
    <!--      <Option key="creationFcn" value="createInitialPopulation"/>
       <Option key="epochs" value="500"/>
+
       <Option key="crossoverFcn" value="crossover"/>
       <Option key="initWeightRange" value="-0.8,0.8"/>
+
       <Option key="mutationFcn" value="mutation"/> -->
       <Option key="hiddenUnitDelta" value="-2,3"/>
+
     
       <Option key="allowedPruneTechniques" value="0,1,2,3,4"/>
+
      <!--Error goal when constructing the network-->
       <Option key="threshold" value="0.2"/>
+
      <Option key="goal" value="0"/>
       <Option key="retrain" value="50"/>
+
      <!--Initial value for the spread -->
   </[[Config:ModelInterface|ModelInterface]]>
+
      <Option key="spread" value="1"/>
 +
      <!--Spread bounds -->
 +
      <Option key="spreadBounds" value="0.0001,30"/>
 +
      <!--Maximum number of neurons to use per network-->
 +
      <Option key="maxNeurons" value="500"/>
 +
       <Option key="trainingProgress" value="Inf"/>
 +
  </[[Config:ModelFactory|ModelFactory]]>
 +
</[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>
 +
</source>
 +
=== rbfnnps ===
 +
Build Radial Basis Function Neural networks using Pattern Search
 +
<source xmlns:saxon="http://icl.com/saxon" lang="xml">
 +
<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] type="[[AdaptiveModelBuilder#OptimizerModelBuilder|OptimizerModelBuilder]]" combineOutputs="false">
 +
  <!-- Re-start strategy for resuming the optimization process between sampling iterations.
 +
        One of 'random','continue','model' and 'intelligent' (Default).  See the docs for more information -->
 +
  <Option key="restartStrategy" value="intelligent"/>
 +
 
 +
  <[[Config:Optimizer|Optimizer]] type="[[Optimizer#MatlabPatternSearch|MatlabPatternSearch]]">
 +
       <Option key="maxIterations" value="100"/>
 +
      <Option key="maxFunEvals" value="20"/>
 +
       <Option key="searchMethod" value="GPSPositiveBasis2N"/>
 +
       <Option key="pollMethod" value="MADSPositiveBasis2N"/>       
 +
  </[[Config:Optimizer|Optimizer]]>
 +
 
 +
  <[[Config:ModelFactory|ModelFactory]] type="[[ModelFactory#RBFNNFactory|RBFNNFactory]]">
 +
      <!--Error goal when constructing the network-->
 +
      <Option key="goal" value="0"/>
 +
      <!--Initial value for the spread -->
 +
       <Option key="spread" value="1"/>
 +
      <!--Spread bounds -->
 +
      <Option key="spreadBounds" value="0.0001,30"/>
 +
      <!--Maximum number of neurons to use per network-->
 +
      <Option key="maxNeurons" value="500"/>
 +
       <Option key="trainingProgress" value="Inf"/>
 +
  </[[Config:ModelFactory|ModelFactory]]>
 +
</[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>
 +
</source>
 +
=== rbfnnsim ===
 +
Build Radial Basis Function Neural networks using Simulated Annealing
 +
<source xmlns:saxon="http://icl.com/saxon" lang="xml">
 +
<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] type="[[AdaptiveModelBuilder#OptimizerModelBuilder|OptimizerModelBuilder]]" combineOutputs="false">
 +
  <!-- Re-start strategy for resuming the optimization process between sampling iterations.
 +
        One of 'random','continue','model' and 'intelligent' (Default).  See the docs for more information -->
 +
  <Option key="restartStrategy" value="intelligent"/>
 +
 
 +
  <[[Config:Optimizer|Optimizer]] type="[[Optimizer#MatlabSimAnnealing|MatlabSimAnnealing]]">
 +
      <Option key="maxIterations" value="100"/>
 +
      <Option key="maxFunEvals" value="20"/>
 +
  </[[Config:Optimizer|Optimizer]]>
 +
 
 +
  <[[Config:ModelFactory|ModelFactory]] type="[[ModelFactory#RBFNNFactory|RBFNNFactory]]">
 +
      <!--Error goal when constructing the network-->
 +
       <Option key="goal" value="0"/>
 +
      <!--Initial value for the spread -->
 +
      <Option key="spread" value="1"/>
 +
      <!--Spread bounds -->
 +
       <Option key="spreadBounds" value="0.0001,30"/>
 +
      <!--Maximum number of neurons to use per network-->
 +
      <Option key="maxNeurons" value="500"/>
 +
       <Option key="trainingProgress" value="Inf"/>
 +
   </[[Config:ModelFactory|ModelFactory]]>
 
</[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>
 
</[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>
 
</source>
 
</source>
 +
 +
== Support vector machines ==
 +
 
=== lssvmgenetic ===
 
=== lssvmgenetic ===
Use the matlab gads toolbox to select LSSVM parameters using a GA
+
Use the matlab gads toolbox to select LSSVM parameters using a GA (based on LSSVM-lab)
<source lang="xml">
+
<source xmlns:saxon="http://icl.com/saxon" lang="xml">
<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] id="lssvmgenetic" type="GeneticModelBuilder" combineOutputs="false">
+
<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] type="[[AdaptiveModelBuilder#GeneticModelBuilder|GeneticModelBuilder]]" combineOutputs="false">
 +
  <!-- Re-start strategy for resuming the optimization process between sampling iterations.
 +
        One of 'random','continue','model' and 'intelligent' (Default).  See the docs for more information -->
 
   <Option key="restartStrategy" value="intelligent"/>
 
   <Option key="restartStrategy" value="intelligent"/>
 +
  <!-- Plot the optimization surface, visualizes the search through the parameter space (2D only) -->
 
   <Option key="plotOptimSurface" value="false"/>
 
   <Option key="plotOptimSurface" value="false"/>
   <Option key="populationType" value="custom"/>
+
   <Option key="populationType" value="doubleVector"/>
 
   <Option key="populationSize" value="10"/>
 
   <Option key="populationSize" value="10"/>
 
   <Option key="maxGenerations" value="10"/>
 
   <Option key="maxGenerations" value="10"/>
Line 482: Line 1,020:
 
   <Option key="stallGenLimit" value="4"/>
 
   <Option key="stallGenLimit" value="4"/>
 
   <Option key="stallTimeLimit" value="Inf"/>
 
   <Option key="stallTimeLimit" value="Inf"/>
   <[[Config:ModelInterface|ModelInterface]] id="LSSVM" type="SVMGeneticInterface">
+
 
       <Option key="creationFcn" value="createInitialPopulation"/>
+
   <[[Config:ModelFactory|ModelFactory]] type="[[ModelFactory#SVMFactory|SVMFactory]]">
       <Option key="crossoverFcn" value="simpleCrossover"/>
+
       <Option key="creationFcn" value="@gacreationuniform"/>
       <Option key="mutationFcn" value="simpleMutation"/>
+
       <Option key="crossoverFcn" value="@crossoverheuristic"/>
       <Option key="constraintFcn" value="[]"/>
+
       <Option key="mutationFcn" value="@mutationadaptfeasible"/>
 +
      <!-- <Option key="creationFcn" value="createInitialPopulation"/>
 +
      <Option key="crossoverFcn" value="crossover"/>
 +
       <Option key="mutationFcn" value="mutation"/> -->
 +
     
 
       <Option key="backend" value="lssvm"/>
 
       <Option key="backend" value="lssvm"/>
 
       <Option key="kernel" value="rbf"/>
 
       <Option key="kernel" value="rbf"/>
       <Option key="kernelParamBounds" value="-4,4"/>
+
       <Option key="kernelParamBounds" value="-2,2"/>
 
       <Option key="regParamBounds" value="-5,5"/>
 
       <Option key="regParamBounds" value="-5,5"/>
   </[[Config:ModelInterface|ModelInterface]]>
+
   </[[Config:ModelFactory|ModelFactory]]>
 
</[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>
 
</[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>
 
</source>
 
</source>
 
=== lssvmps ===
 
=== lssvmps ===
 
Use the matlab gads toolbox to select LSSVM parameters using Pattern Search
 
Use the matlab gads toolbox to select LSSVM parameters using Pattern Search
<source lang="xml">
+
<source xmlns:saxon="http://icl.com/saxon" lang="xml">
<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] id="lssvmps" type="PatternSearchModelBuilder" combineOutputs="false">
+
<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] type="[[AdaptiveModelBuilder#OptimizerModelBuilder|OptimizerModelBuilder]]" combineOutputs="false">
 +
  <!-- Re-start strategy for resuming the optimization process between sampling iterations.
 +
        One of 'random','continue','model' and 'intelligent' (Default).  See the docs for more information -->
 
   <Option key="restartStrategy" value="intelligent"/>
 
   <Option key="restartStrategy" value="intelligent"/>
 +
  <!-- Plot the optimization surface, visualizes the search through the parameter space (2D only) -->
 
   <Option key="plotOptimSurface" value="false"/>
 
   <Option key="plotOptimSurface" value="false"/>
   <Option key="maxIterations" value="500"/>
+
    
  <Option key="maxFunEvals" value="100"/>
+
  <!--See that matlab gads toolbox documentation for more information on the options-->     
  <Option key="searchMethod" value="GPSPositiveBasis2N"/>
+
  <[[Config:Optimizer|Optimizer]] type="[[Optimizer#MatlabPatternSearch|MatlabPatternSearch]]">
  <Option key="pollMethod" value="MADSPositiveBasis2N"/>
+
      <Option key="maxIterations" value="100"/>
   <[[Config:ModelInterface|ModelInterface]] id="SVM" type="SVMInterface">
+
      <Option key="maxFunEvals" value="20"/>
 +
      <Option key="searchMethod" value="GPSPositiveBasis2N"/>
 +
      <Option key="pollMethod" value="MADSPositiveBasis2N"/>       
 +
  </[[Config:Optimizer|Optimizer]]>
 +
 
 +
   <[[Config:ModelFactory|ModelFactory]] type="[[ModelFactory#SVMFactory|SVMFactory]]">
 
       <Option key="backend" value="lssvm"/>
 
       <Option key="backend" value="lssvm"/>
 
       <Option key="kernel" value="rbf"/>
 
       <Option key="kernel" value="rbf"/>
       <Option key="kernelParamBounds" value="-4,4"/>
+
       <Option key="kernelParamBounds" value="-2,2"/>
 
       <Option key="regParamBounds" value="-5,5"/>
 
       <Option key="regParamBounds" value="-5,5"/>
   </[[Config:ModelInterface|ModelInterface]]>
+
   </[[Config:ModelFactory|ModelFactory]]>
 
</[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>
 
</[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>
 
</source>
 
</source>
 
=== lssvmoptim ===
 
=== lssvmoptim ===
 
Use the matlab optimization toolbox to select LSSVM parameters
 
Use the matlab optimization toolbox to select LSSVM parameters
<source lang="xml">
+
<source xmlns:saxon="http://icl.com/saxon" lang="xml">
<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] id="lssvmoptim" type="OptimToolboxModelBuilder" combineOutputs="false">
+
<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] type="[[AdaptiveModelBuilder#OptimizerModelBuilder|OptimizerModelBuilder]]" combineOutputs="false">
 +
  <!-- Re-start strategy for resuming the optimization process between sampling iterations.
 +
        One of 'random','continue','model' and 'intelligent' (Default).  See the docs for more information -->
 
   <Option key="restartStrategy" value="intelligent"/>
 
   <Option key="restartStrategy" value="intelligent"/>
 +
  <!-- Plot the optimization surface, visualizes the search through the parameter space (2D only) -->
 
   <Option key="plotOptimSurface" value="false"/>
 
   <Option key="plotOptimSurface" value="false"/>
   <Option key="maxIterations" value="500"/>
+
   <!--See the interface matlab file and the optimization toolbox documentation for more information on the options-->
  <Option key="maxFunEvals" value="100"/>
+
  <[[Config:Optimizer|Optimizer]] type="[[Optimizer#MatlabOptimizer|MatlabOptimizer]]">
   <[[Config:ModelInterface|ModelInterface]] id="SVM" type="SVMInterface">
+
      <Option key="maxIterations" value="100"/>
 +
      <Option key="maxFunEvals" value="20"/>
 +
   </[[Config:Optimizer|Optimizer]]>
 +
 
 +
  <[[Config:ModelFactory|ModelFactory]] type="[[ModelFactory#SVMFactory|SVMFactory]]">
 
       <Option key="backend" value="lssvm"/>
 
       <Option key="backend" value="lssvm"/>
 
       <Option key="kernel" value="rbf"/>
 
       <Option key="kernel" value="rbf"/>
       <Option key="kernelParamBounds" value="-4,4"/>
+
       <Option key="kernelParamBounds" value="-2,2"/>
 
       <Option key="regParamBounds" value="-5,5"/>
 
       <Option key="regParamBounds" value="-5,5"/>
   </[[Config:ModelInterface|ModelInterface]]>
+
   </[[Config:ModelFactory|ModelFactory]]>
 
</[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>
 
</[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>
 
</source>
 
</source>
 
=== lssvmpso ===
 
=== lssvmpso ===
 
Use the PSO toolbox to select LSSVM parameters using Particle Swarm Optimization
 
Use the PSO toolbox to select LSSVM parameters using Particle Swarm Optimization
<source lang="xml">
+
<source xmlns:saxon="http://icl.com/saxon" lang="xml">
<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] id="lssvmpso" type="PSOModelBuilder" combineOutputs="false">
+
<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] type="[[AdaptiveModelBuilder#OptimizerModelBuilder|OptimizerModelBuilder]]" combineOutputs="false">
 +
  <!-- Re-start strategy for resuming the optimization process between sampling iterations.
 +
        One of 'random','continue','model' and 'intelligent' (Default).  See the docs for more information -->
 
   <Option key="restartStrategy" value="intelligent"/>
 
   <Option key="restartStrategy" value="intelligent"/>
 +
  <!-- Plot the optimization surface, visualizes the search through the parameter space (2D only) -->
 
   <Option key="plotOptimSurface" value="false"/>
 
   <Option key="plotOptimSurface" value="false"/>
   <[[Config:Optimizer|Optimizer]] id="pso" type="PSOtOptimizer">
+
     
 +
   <[[Config:Optimizer|Optimizer]] type="[[Optimizer#PSOtOptimizer|PSOtOptimizer]]">
 
       <Option key="typePSO" value="0"/>
 
       <Option key="typePSO" value="0"/>
 
       <Option key="seedPSO" value="1"/>
 
       <Option key="seedPSO" value="1"/>
Line 542: Line 1,103:
 
       <Option key="gradientTermination" value="8"/>
 
       <Option key="gradientTermination" value="8"/>
 
   </[[Config:Optimizer|Optimizer]]>
 
   </[[Config:Optimizer|Optimizer]]>
   <[[Config:ModelInterface|ModelInterface]] id="SVM" type="SVMInterface">
+
 
 +
   <[[Config:ModelFactory|ModelFactory]] type="[[ModelFactory#SVMFactory|SVMFactory]]">
 
       <Option key="backend" value="lssvm"/>
 
       <Option key="backend" value="lssvm"/>
 
       <Option key="kernel" value="rbf"/>
 
       <Option key="kernel" value="rbf"/>
       <Option key="kernelParamBounds" value="-4,4"/>
+
       <Option key="kernelParamBounds" value="-2,2"/>
 
       <Option key="regParamBounds" value="-5,5"/>
 
       <Option key="regParamBounds" value="-5,5"/>
   </[[Config:ModelInterface|ModelInterface]]>
+
   </[[Config:ModelFactory|ModelFactory]]>
 
</[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>
 
</[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>
 
</source>
 
</source>
 
=== lssvmsim ===
 
=== lssvmsim ===
 
Use the matlab gads toolbox to select LSSVM parameters using simulated annealing
 
Use the matlab gads toolbox to select LSSVM parameters using simulated annealing
<source lang="xml">
+
<source xmlns:saxon="http://icl.com/saxon" lang="xml">
<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] id="lssvmsim" type="SimAnnealingModelBuilder" combineOutputs="false">
+
<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] type="[[AdaptiveModelBuilder#OptimizerModelBuilder|OptimizerModelBuilder]]" combineOutputs="false">
 +
  <!-- Re-start strategy for resuming the optimization process between sampling iterations.
 +
        One of 'random','continue','model' and 'intelligent' (Default).  See the docs for more information -->
 
   <Option key="restartStrategy" value="intelligent"/>
 
   <Option key="restartStrategy" value="intelligent"/>
 +
  <!-- Plot the optimization surface, visualizes the search through the parameter space (2D only) -->
 
   <Option key="plotOptimSurface" value="false"/>
 
   <Option key="plotOptimSurface" value="false"/>
   <Option key="maxIterations" value="500"/>
+
   <!--See the interface matlab file and the gads toolbox documentation for more information on the options-->
  <Option key="maxFunEvals" value="100"/>
+
  <[[Config:Optimizer|Optimizer]] type="[[Optimizer#MatlabSimAnnealing|MatlabSimAnnealing]]">
   <[[Config:ModelInterface|ModelInterface]] id="SVM" type="SVMInterface">
+
      <Option key="maxIterations" value="100"/>
 +
      <Option key="maxFunEvals" value="20"/>
 +
  </[[Config:Optimizer|Optimizer]]>
 +
 
 +
   <[[Config:ModelFactory|ModelFactory]] type="[[ModelFactory#SVMFactory|SVMFactory]]">
 
       <Option key="backend" value="lssvm"/>
 
       <Option key="backend" value="lssvm"/>
 
       <Option key="kernel" value="rbf"/>
 
       <Option key="kernel" value="rbf"/>
       <Option key="kernelParamBounds" value="-4,4"/>
+
       <Option key="kernelParamBounds" value="-2,2"/>
 
       <Option key="regParamBounds" value="-5,5"/>
 
       <Option key="regParamBounds" value="-5,5"/>
   </[[Config:ModelInterface|ModelInterface]]>
+
   </[[Config:ModelFactory|ModelFactory]]>
 
</[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>
 
</[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>
 
</source>
 
</source>
 
=== lssvmdirect ===
 
=== lssvmdirect ===
 
Use the DIviding RECtangles algorithm to optimize the LS-SVM hyperparameters
 
Use the DIviding RECtangles algorithm to optimize the LS-SVM hyperparameters
<source lang="xml">
+
<source xmlns:saxon="http://icl.com/saxon" lang="xml">
<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] id="lssvmdirect" type="OptimizerModelBuilder" combineOutputs="false">
+
<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] type="[[AdaptiveModelBuilder#OptimizerModelBuilder|OptimizerModelBuilder]]" combineOutputs="false">
 +
  <!-- Re-start strategy for resuming the optimization process between sampling iterations.
 +
        One of 'random','continue','model' and 'intelligent' (Default).  See the docs for more information -->
 
   <Option key="restartStrategy" value="intelligent"/>
 
   <Option key="restartStrategy" value="intelligent"/>
 +
  <!-- Plot the optimization surface, visualizes the search through the parameter space (2D only) -->
 
   <Option key="plotOptimSurface" value="false"/>
 
   <Option key="plotOptimSurface" value="false"/>
   <[[Config:Optimizer|Optimizer]] id="opt" type="DirectOptimizer">
+
 
       <Option key="maxits" value="500"/>
+
   <[[Config:Optimizer|Optimizer]] type="[[Optimizer#DirectOptimizer|DirectOptimizer]]">
       <Option key="maxevals" value="100"/>
+
       <Option key="maxits" value="100"/>
 +
       <Option key="maxevals" value="20"/>
 
   </[[Config:Optimizer|Optimizer]]>
 
   </[[Config:Optimizer|Optimizer]]>
   <[[Config:ModelInterface|ModelInterface]] id="SVM" type="SVMInterface">
+
 
 +
   <[[Config:ModelFactory|ModelFactory]] type="[[ModelFactory#SVMFactory|SVMFactory]]">
 +
      <Option key="backend" value="lssvm"/>
 +
      <Option key="kernel" value="rbf"/>
 +
      <Option key="kernelParamBounds" value="-2,2"/>
 +
      <Option key="regParamBounds" value="-5,5"/>
 +
  </[[Config:ModelFactory|ModelFactory]]>
 +
</[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>
 +
</source>
 +
=== lssvmego ===
 +
Generate LS-SVM models using Efficient Global Optimization (EGO). This means internally a kriging model is constructed to predict where one can expect to find good model parameters
 +
<source xmlns:saxon="http://icl.com/saxon" lang="xml">
 +
<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] type="[[AdaptiveModelBuilder#EGOModelBuilder|EGOModelBuilder]]" combineOutputs="false">
 +
  <Option key="numIterations" value="10"/>
 +
  <Option key="initPopSize" value="5"/>
 +
  <Option key="restartStrategy" value="continue"/>
 +
 
 +
  <[[Config:ModelFactory|ModelFactory]] type="[[ModelFactory#SVMFactory|SVMFactory]]">
 
       <Option key="backend" value="lssvm"/>
 
       <Option key="backend" value="lssvm"/>
 
       <Option key="kernel" value="rbf"/>
 
       <Option key="kernel" value="rbf"/>
 
       <Option key="kernelParamBounds" value="-4,4"/>
 
       <Option key="kernelParamBounds" value="-4,4"/>
 
       <Option key="regParamBounds" value="-5,5"/>
 
       <Option key="regParamBounds" value="-5,5"/>
   </[[Config:ModelInterface|ModelInterface]]>
+
   </[[Config:ModelFactory|ModelFactory]]>
 +
 
 +
  <!-- Optimizer for the internal kriging model -->
 +
  <[[Config:Optimizer|Optimizer]]>fminconWithDerivatives</[[Config:Optimizer|Optimizer]]>
 +
 
 +
  <!-- Sampleselector to use -->
 +
  <[[Config:SampleSelector|SampleSelector]]>expectedImprovement</[[Config:SampleSelector|SampleSelector]]>
 
</[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>
 
</[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>
 
</source>
 
</source>
 
=== lssvmrandom ===
 
=== lssvmrandom ===
Generate random LSSVM models
+
Generate random LSSVM models, useful as a baseline comparison
<source lang="xml">
+
<source xmlns:saxon="http://icl.com/saxon" lang="xml">
<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] id="lssvmrandom" type="RandomModelBuilder" combineOutputs="false">
+
<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] type="[[AdaptiveModelBuilder#RandomModelBuilder|RandomModelBuilder]]" combineOutputs="false">
   <Option key="runSize" value="100"/>
+
  <!-- Plot the optimization surface, visualizes the search through the parameter space (2D only) -->
   <[[Config:ModelInterface|ModelInterface]] id="SVM" type="SVMInterface">
+
  <Option key="plotOptimSurface" value="false"/>
 +
 
 +
   <Option key="runSize" value="20"/>
 +
 
 +
   <[[Config:ModelFactory|ModelFactory]] type="[[ModelFactory#SVMFactory|SVMFactory]]">
 
       <Option key="backend" value="lssvm"/>
 
       <Option key="backend" value="lssvm"/>
 
       <Option key="kernel" value="rbf"/>
 
       <Option key="kernel" value="rbf"/>
       <Option key="kernelParamBounds" value="-4,4"/>
+
       <Option key="kernelParamBounds" value="-2,2"/>
 
       <Option key="regParamBounds" value="-5,5"/>
 
       <Option key="regParamBounds" value="-5,5"/>
   </[[Config:ModelInterface|ModelInterface]]>
+
   </[[Config:ModelFactory|ModelFactory]]>
 
</[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>
 
</[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>
 
</source>
 
</source>
 
=== svmgenetic ===
 
=== svmgenetic ===
Use the matlab gads toolbox to select SVM parameters using a GA
+
Use the matlab gads toolbox to select SVM parameters using a GA (based on libsvm)
<source lang="xml">
+
<source xmlns:saxon="http://icl.com/saxon" lang="xml">
<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] id="svmgenetic" type="GeneticModelBuilder" combineOutputs="false">
+
<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] type="[[AdaptiveModelBuilder#GeneticModelBuilder|GeneticModelBuilder]]" combineOutputs="false">
 +
  <!-- Re-start strategy for resuming the optimization process between sampling iterations.
 +
        One of 'random','continue','model' and 'intelligent' (Default).  See the docs for more information -->
 
   <Option key="restartStrategy" value="intelligent"/>
 
   <Option key="restartStrategy" value="intelligent"/>
 +
  <!-- Plot the optimization surface, visualizes the search through the parameter space (2D only) -->
 
   <Option key="plotOptimSurface" value="false"/>
 
   <Option key="plotOptimSurface" value="false"/>
   <Option key="populationType" value="custom"/>
+
  <!--See the interface matlab file and the gads toolbox documentation for more information on the options-->
 +
   <Option key="populationType" value="doubleVector"/>
 
   <Option key="populationSize" value="10"/>
 
   <Option key="populationSize" value="10"/>
 
   <Option key="maxGenerations" value="10"/>
 
   <Option key="maxGenerations" value="10"/>
Line 610: Line 1,214:
 
   <Option key="stallGenLimit" value="4"/>
 
   <Option key="stallGenLimit" value="4"/>
 
   <Option key="stallTimeLimit" value="Inf"/>
 
   <Option key="stallTimeLimit" value="Inf"/>
   <[[Config:ModelInterface|ModelInterface]] id="SVM" type="SVMGeneticInterface">
+
 
       <Option key="creationFcn" value="createInitialPopulation"/>
+
   <[[Config:ModelFactory|ModelFactory]] type="[[ModelFactory#SVMFactory|SVMFactory]]">
       <Option key="crossoverFcn" value="simpleCrossover"/>
+
       <Option key="creationFcn" value="@gacreationuniform"/>
       <Option key="mutationFcn" value="simpleMutation"/>
+
       <Option key="crossoverFcn" value="@crossoverheuristic"/>
       <Option key="constraintFcn" value="[]"/>
+
       <Option key="mutationFcn" value="@mutationadaptfeasible"/>
 +
      <!-- <Option key="creationFcn" value="createInitialPopulation"/>
 +
      <Option key="crossoverFcn" value="crossover"/>
 +
       <Option key="mutationFcn" value="mutation"/>-->
 +
     
 
       <Option key="backend" value="libSVM"/>
 
       <Option key="backend" value="libSVM"/>
 
       <Option key="type" value="epsilon-SVR"/>
 
       <Option key="type" value="epsilon-SVR"/>
Line 623: Line 1,231:
 
       <Option key="epsilon" value="0"/>
 
       <Option key="epsilon" value="0"/>
 
       <Option key="stoppingTolerance" value="1e-6"/>
 
       <Option key="stoppingTolerance" value="1e-6"/>
   </[[Config:ModelInterface|ModelInterface]]>
+
   </[[Config:ModelFactory|ModelFactory]]>
 
</[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>
 
</[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>
 
</source>
 
</source>
 
=== svmps ===
 
=== svmps ===
 
Use the matlab gads toolbox to select SVM parameters using Pattern Search
 
Use the matlab gads toolbox to select SVM parameters using Pattern Search
<source lang="xml">
+
<source xmlns:saxon="http://icl.com/saxon" lang="xml">
<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] id="svmps" type="PatternSearchModelBuilder" combineOutputs="false">
+
<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] type="[[AdaptiveModelBuilder#OptimizerModelBuilder|OptimizerModelBuilder]]" combineOutputs="false">
 +
  <!-- Re-start strategy for resuming the optimization process between sampling iterations.
 +
        One of 'random','continue','model' and 'intelligent' (Default).  See the docs for more information -->
 
   <Option key="restartStrategy" value="intelligent"/>
 
   <Option key="restartStrategy" value="intelligent"/>
 +
  <!-- Plot the optimization surface, visualizes the search through the parameter space (2D only) -->
 
   <Option key="plotOptimSurface" value="false"/>
 
   <Option key="plotOptimSurface" value="false"/>
   <Option key="maxIterations" value="500"/>
+
    
  <Option key="maxFunEvals" value="100"/>
+
  <!--See the interface matlab file and the gads toolbox documentation for more information on the options-->
  <Option key="searchMethod" value="GPSPositiveBasis2N"/>
+
  <[[Config:Optimizer|Optimizer]] type="[[Optimizer#MatlabPatternSearch|MatlabPatternSearch]]">
  <Option key="pollMethod" value="MADSPositiveBasis2N"/>
+
      <Option key="maxIterations" value="100"/>
   <[[Config:ModelInterface|ModelInterface]] id="SVM" type="SVMInterface">
+
      <Option key="maxFunEvals" value="20"/>
 +
      <Option key="searchMethod" value="GPSPositiveBasis2N"/>
 +
      <Option key="pollMethod" value="MADSPositiveBasis2N"/>        
 +
   </[[Config:Optimizer|Optimizer]]>
 +
 
 +
  <[[Config:ModelFactory|ModelFactory]] type="[[ModelFactory#SVMFactory|SVMFactory]]">
 
       <Option key="backend" value="libSVM"/>
 
       <Option key="backend" value="libSVM"/>
 
       <Option key="type" value="epsilon-SVR"/>
 
       <Option key="type" value="epsilon-SVR"/>
 
       <Option key="kernel" value="rbf"/>
 
       <Option key="kernel" value="rbf"/>
       <Option key="kernelParamBounds" value="-4,4"/>
+
       <Option key="kernelParamBounds" value="-2,2"/>
 
       <Option key="regParamBounds" value="-5,5"/>
 
       <Option key="regParamBounds" value="-5,5"/>
 
       <Option key="nu" value="0.01"/>
 
       <Option key="nu" value="0.01"/>
 
       <Option key="epsilon" value="0"/>
 
       <Option key="epsilon" value="0"/>
 
       <Option key="stoppingTolerance" value="1e-6"/>
 
       <Option key="stoppingTolerance" value="1e-6"/>
   </[[Config:ModelInterface|ModelInterface]]>
+
   </[[Config:ModelFactory|ModelFactory]]>
 
</[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>
 
</[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>
 
</source>
 
</source>
 
=== svmsim ===
 
=== svmsim ===
 
Use the matlab gads toolbox to select SVM parameters using simulated annealing
 
Use the matlab gads toolbox to select SVM parameters using simulated annealing
<source lang="xml">
+
<source xmlns:saxon="http://icl.com/saxon" lang="xml">
<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] id="svmsim" type="SimAnnealingModelBuilder" combineOutputs="false">
+
<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] type="[[AdaptiveModelBuilder#OptimizerModelBuilder|OptimizerModelBuilder]]" combineOutputs="false">
 +
  <!-- Re-start strategy for resuming the optimization process between sampling iterations.
 +
        One of 'random','continue','model' and 'intelligent' (Default).  See the docs for more information -->
 
   <Option key="restartStrategy" value="intelligent"/>
 
   <Option key="restartStrategy" value="intelligent"/>
 +
  <!-- Plot the optimization surface, visualizes the search through the parameter space (2D only) -->
 
   <Option key="plotOptimSurface" value="false"/>
 
   <Option key="plotOptimSurface" value="false"/>
   <Option key="maxIterations" value="500"/>
+
   <!--See the interface matlab file and the gads toolbox documentation for more information on the options-->     
  <Option key="maxFunEvals" value="100"/>
+
  <[[Config:Optimizer|Optimizer]] type="[[Optimizer#MatlabSimAnnealing|MatlabSimAnnealing]]">
   <[[Config:ModelInterface|ModelInterface]] id="SVM" type="SVMInterface">
+
      <Option key="maxIterations" value="100"/>
 +
      <Option key="maxFunEvals" value="20"/>
 +
  </[[Config:Optimizer|Optimizer]]>
 +
 
 +
   <[[Config:ModelFactory|ModelFactory]] type="[[ModelFactory#SVMFactory|SVMFactory]]">
 
       <Option key="backend" value="libSVM"/>
 
       <Option key="backend" value="libSVM"/>
 
       <Option key="type" value="epsilon-SVR"/>
 
       <Option key="type" value="epsilon-SVR"/>
 
       <Option key="kernel" value="rbf"/>
 
       <Option key="kernel" value="rbf"/>
       <Option key="kernelParamBounds" value="-4,4"/>
+
       <Option key="kernelParamBounds" value="-2,2"/>
 
       <Option key="regParamBounds" value="-5,5"/>
 
       <Option key="regParamBounds" value="-5,5"/>
 
       <Option key="nu" value="0.01"/>
 
       <Option key="nu" value="0.01"/>
 
       <Option key="epsilon" value="0"/>
 
       <Option key="epsilon" value="0"/>
 
       <Option key="stoppingTolerance" value="1e-6"/>
 
       <Option key="stoppingTolerance" value="1e-6"/>
   </[[Config:ModelInterface|ModelInterface]]>
+
   </[[Config:ModelFactory|ModelFactory]]>
 
</[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>
 
</[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>
 
</source>
 
</source>
 
=== svmoptim ===
 
=== svmoptim ===
 
Use the matlab optimization toolbox to select SVM parameters
 
Use the matlab optimization toolbox to select SVM parameters
<source lang="xml">
+
<source xmlns:saxon="http://icl.com/saxon" lang="xml">
<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] id="svmoptim" type="OptimToolboxModelBuilder" combineOutputs="false">
+
<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] type="[[AdaptiveModelBuilder#OptimizerModelBuilder|OptimizerModelBuilder]]" combineOutputs="false">
 +
  <!-- Re-start strategy for resuming the optimization process between sampling iterations.
 +
        One of 'random','continue','model' and 'intelligent' (Default).  See the docs for more information -->
 
   <Option key="restartStrategy" value="intelligent"/>
 
   <Option key="restartStrategy" value="intelligent"/>
 +
  <!-- Plot the optimization surface, visualizes the search through the parameter space (2D only) -->
 
   <Option key="plotOptimSurface" value="false"/>
 
   <Option key="plotOptimSurface" value="false"/>
   <Option key="maxIterations" value="500"/>
+
   <!--See the interface matlab file and the optimization toolbox documentation for more
  <Option key="maxFunEvals" value="100"/>
+
      information on the options-->
   <[[Config:ModelInterface|ModelInterface]] id="SVM" type="SVMInterface">
+
  <[[Config:Optimizer|Optimizer]] type="[[Optimizer#MatlabOptimizer|MatlabOptimizer]]">
 +
      <Option key="maxIterations" value="100"/>
 +
      <Option key="maxFunEvals" value="20"/>
 +
  </[[Config:Optimizer|Optimizer]]>
 +
 
 +
   <[[Config:ModelFactory|ModelFactory]] type="[[ModelFactory#SVMFactory|SVMFactory]]">
 
       <Option key="backend" value="libSVM"/>
 
       <Option key="backend" value="libSVM"/>
 
       <Option key="type" value="epsilon-SVR"/>
 
       <Option key="type" value="epsilon-SVR"/>
 
       <Option key="kernel" value="rbf"/>
 
       <Option key="kernel" value="rbf"/>
       <Option key="kernelParamBounds" value="-4,4"/>
+
       <Option key="kernelParamBounds" value="-2,2"/>
 
       <Option key="regParamBounds" value="-5,5"/>
 
       <Option key="regParamBounds" value="-5,5"/>
 
       <Option key="nu" value="0.01"/>
 
       <Option key="nu" value="0.01"/>
 
       <Option key="epsilon" value="0"/>
 
       <Option key="epsilon" value="0"/>
 
       <Option key="stoppingTolerance" value="1e-6"/>
 
       <Option key="stoppingTolerance" value="1e-6"/>
   </[[Config:ModelInterface|ModelInterface]]>
+
   </[[Config:ModelFactory|ModelFactory]]>
 
</[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>
 
</[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>
 
</source>
 
</source>
 
=== svmpso ===
 
=== svmpso ===
 
Use the PSO toolbox to select SVM parameters using Particle Swarm Optimization
 
Use the PSO toolbox to select SVM parameters using Particle Swarm Optimization
<source lang="xml">
+
<source xmlns:saxon="http://icl.com/saxon" lang="xml">
<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] id="svmpso" type="PSOModelBuilder" combineOutputs="false">
+
<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] type="[[AdaptiveModelBuilder#OptimizerModelBuilder|OptimizerModelBuilder]]" combineOutputs="false">
 +
  <!-- Re-start strategy for resuming the optimization process between sampling iterations.
 +
        One of 'random','continue','model' and 'intelligent' (Default).  See the docs for more information -->
 
   <Option key="restartStrategy" value="intelligent"/>
 
   <Option key="restartStrategy" value="intelligent"/>
 +
  <!-- Plot the optimization surface, visualizes the search through the parameter space (2D only) -->
 
   <Option key="plotOptimSurface" value="false"/>
 
   <Option key="plotOptimSurface" value="false"/>
   <[[Config:Optimizer|Optimizer]] id="pso" type="PSOtOptimizer">
+
 
 +
   <[[Config:Optimizer|Optimizer]] type="[[Optimizer#PSOtOptimizer|PSOtOptimizer]]">
 
       <Option key="typePSO" value="0"/>
 
       <Option key="typePSO" value="0"/>
 
       <Option key="seedPSO" value="1"/>
 
       <Option key="seedPSO" value="1"/>
Line 702: Line 1,337:
 
       <Option key="gradientTermination" value="8"/>
 
       <Option key="gradientTermination" value="8"/>
 
   </[[Config:Optimizer|Optimizer]]>
 
   </[[Config:Optimizer|Optimizer]]>
   <[[Config:ModelInterface|ModelInterface]] id="SVM" type="SVMInterface">
+
 
 +
   <[[Config:ModelFactory|ModelFactory]] type="[[ModelFactory#SVMFactory|SVMFactory]]">
 
       <Option key="backend" value="libSVM"/>
 
       <Option key="backend" value="libSVM"/>
 
       <Option key="type" value="epsilon-SVR"/>
 
       <Option key="type" value="epsilon-SVR"/>
 
       <Option key="kernel" value="rbf"/>
 
       <Option key="kernel" value="rbf"/>
       <Option key="kernelParamBounds" value="-4,4"/>
+
       <Option key="kernelParamBounds" value="-2,2"/>
 
       <Option key="regParamBounds" value="-5,5"/>
 
       <Option key="regParamBounds" value="-5,5"/>
 
       <Option key="nu" value="0.01"/>
 
       <Option key="nu" value="0.01"/>
 
       <Option key="epsilon" value="0"/>
 
       <Option key="epsilon" value="0"/>
 
       <Option key="stoppingTolerance" value="1e-6"/>
 
       <Option key="stoppingTolerance" value="1e-6"/>
   </[[Config:ModelInterface|ModelInterface]]>
+
   </[[Config:ModelFactory|ModelFactory]]>
 
</[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>
 
</[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>
 
</source>
 
</source>
 
=== svmdirect ===
 
=== svmdirect ===
 
Use the DIviding RECtangles algorithm to optimize the SVM hyperparameters
 
Use the DIviding RECtangles algorithm to optimize the SVM hyperparameters
<source lang="xml">
+
<source xmlns:saxon="http://icl.com/saxon" lang="xml">
<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] id="svmdirect" type="OptimizerModelBuilder" combineOutputs="false">
+
<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] type="[[AdaptiveModelBuilder#OptimizerModelBuilder|OptimizerModelBuilder]]" combineOutputs="false">
 +
  <!-- Re-start strategy for resuming the optimization process between sampling iterations.
 +
        One of 'random','continue','model' and 'intelligent' (Default).  See the docs for more information -->
 
   <Option key="restartStrategy" value="intelligent"/>
 
   <Option key="restartStrategy" value="intelligent"/>
 +
  <!-- Plot the optimization surface, visualizes the search through the parameter space (2D only) -->
 
   <Option key="plotOptimSurface" value="false"/>
 
   <Option key="plotOptimSurface" value="false"/>
   <[[Config:Optimizer|Optimizer]] id="opt" type="DirectOptimizer">
+
 
       <Option key="maxits" value="500"/>
+
   <[[Config:Optimizer|Optimizer]] type="[[Optimizer#DirectOptimizer|DirectOptimizer]]">
       <Option key="maxevals" value="100"/>
+
       <Option key="maxits" value="100"/>
 +
       <Option key="maxevals" value="20"/>
 
   </[[Config:Optimizer|Optimizer]]>
 
   </[[Config:Optimizer|Optimizer]]>
   <[[Config:ModelInterface|ModelInterface]] id="SVM" type="SVMInterface">
+
 
 +
   <[[Config:ModelFactory|ModelFactory]] type="[[ModelFactory#SVMFactory|SVMFactory]]">
 
       <Option key="backend" value="libSVM"/>
 
       <Option key="backend" value="libSVM"/>
 
       <Option key="type" value="epsilon-SVR"/>
 
       <Option key="type" value="epsilon-SVR"/>
 
       <Option key="kernel" value="rbf"/>
 
       <Option key="kernel" value="rbf"/>
       <Option key="kernelParamBounds" value="-4,4"/>
+
       <Option key="kernelParamBounds" value="-2,2"/>
 
       <Option key="regParamBounds" value="-5,5"/>
 
       <Option key="regParamBounds" value="-5,5"/>
 
       <Option key="nu" value="0.01"/>
 
       <Option key="nu" value="0.01"/>
 
       <Option key="epsilon" value="0"/>
 
       <Option key="epsilon" value="0"/>
 
       <Option key="stoppingTolerance" value="1e-6"/>
 
       <Option key="stoppingTolerance" value="1e-6"/>
   </[[Config:ModelInterface|ModelInterface]]>
+
   </[[Config:ModelFactory|ModelFactory]]>
 
</[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>
 
</[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>
 
</source>
 
</source>
 
=== svmrandom ===
 
=== svmrandom ===
Generate random SVMs
+
Generate random SVMs, useful as a baseline comparison
<source lang="xml">
+
<source xmlns:saxon="http://icl.com/saxon" lang="xml">
<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] id="svmrandom" type="RandomModelBuilder" combineOutputs="false">
+
<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] type="[[AdaptiveModelBuilder#RandomModelBuilder|RandomModelBuilder]]" combineOutputs="false">
   <Option key="runSize" value="100"/>
+
  <!-- Plot the optimization surface, visualizes the search through the parameter space (2D only) -->
   <[[Config:ModelInterface|ModelInterface]] id="SVM" type="SVMInterface">
+
  <Option key="plotOptimSurface" value="false"/>
 +
 
 +
   <Option key="runSize" value="20"/>
 +
 
 +
   <[[Config:ModelFactory|ModelFactory]] type="[[ModelFactory#SVMFactory|SVMFactory]]">
 
       <Option key="backend" value="libSVM"/>
 
       <Option key="backend" value="libSVM"/>
 
       <Option key="type" value="epsilon-SVR"/>
 
       <Option key="type" value="epsilon-SVR"/>
 
       <Option key="kernel" value="rbf"/>
 
       <Option key="kernel" value="rbf"/>
       <Option key="kernelParamBounds" value="-4,4"/>
+
       <Option key="kernelParamBounds" value="-2,2"/>
 
       <Option key="regParamBounds" value="-5,5"/>
 
       <Option key="regParamBounds" value="-5,5"/>
 
       <Option key="nu" value="0.01"/>
 
       <Option key="nu" value="0.01"/>
 
       <Option key="epsilon" value="0"/>
 
       <Option key="epsilon" value="0"/>
 
       <Option key="stoppingTolerance" value="1e-6"/>
 
       <Option key="stoppingTolerance" value="1e-6"/>
   </[[Config:ModelInterface|ModelInterface]]>
+
   </[[Config:ModelFactory|ModelFactory]]>
</[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>
 
</source>
 
=== rbfnnbatch ===
 
Batch model builder for Radial Basis Function Neural networks See the matlab neural network toolbox for more information
 
<source lang="xml">
 
<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] id="rbfnnbatch" type="BatchModelBuilder" combineOutputs="false">
 
  <Option key="maxBatches" value="10"/>
 
  <Option key="maxBatchesNoImprovement" value="3"/>
 
  <Option key="batchSize" value="10"/>
 
  <[[Config:ModelInterface|ModelInterface]] id="rbfnn" type="RBFNNBatchInterface">
 
      <Option key="goal" value="0"/>
 
      <Option key="spread" value="1"/>
 
      <Option key="spreadBounds" value="0.0001,2"/>
 
      <Option key="maxNeurons" value="100"/>
 
      <Option key="trainingProgress" value="Inf"/>
 
  </[[Config:ModelInterface|ModelInterface]]>
 
</[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>
 
</source>
 
=== rbfnngenetic ===
 
Genetic model builder for Radial Basis Function Neural networks See the matlab neural network toolbox for more information
 
<source lang="xml">
 
<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] id="rbfnngenetic" type="GeneticModelBuilder" combineOutputs="false">
 
  <Option key="restartStrategy" value="intelligent"/>
 
  <Option key="populationType" value="custom"/>
 
  <Option key="populationSize" value="10"/>
 
  <Option key="maxGenerations" value="10"/>
 
  <Option key="eliteCount" value="1"/>
 
  <Option key="crossoverFraction" value="0.7"/>
 
  <Option key="stallGenLimit" value="4"/>
 
  <Option key="stallTimeLimit" value="Inf"/>
 
  <[[Config:ModelInterface|ModelInterface]] id="rbfnn" type="RBFNNGeneticInterface">
 
      <Option key="creationFcn" value="createInitialPopulation"/>
 
      <Option key="crossoverFcn" value="simpleCrossover"/>
 
      <Option key="mutationFcn" value="simpleMutation"/>
 
      <Option key="constraintFcn" value="[]"/>
 
      <Option key="goal" value="0"/>
 
      <Option key="spread" value="1"/>
 
      <Option key="spreadBounds" value="0.0001,2"/>
 
      <Option key="maxNeurons" value="100"/>
 
      <Option key="trainingProgress" value="Inf"/>
 
  </[[Config:ModelInterface|ModelInterface]]>
 
</[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>
 
</source>
 
=== rbfnnoptim ===
 
Build Radial Basis Function Neural networks using the Matlab Optimization Toolbox
 
<source lang="xml">
 
<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] id="rbfnnoptim" type="OptimToolboxModelBuilder" combineOutputs="false">
 
  <Option key="restartStrategy" value="intelligent"/>
 
  <Option key="maxIterations" value="300"/>
 
  <Option key="maxFunEvals" value="300"/>
 
  <[[Config:ModelInterface|ModelInterface]] id="rbfnn" type="RBFNNInterface">
 
      <Option key="goal" value="0"/>
 
      <Option key="spread" value="1"/>
 
      <Option key="spreadBounds" value="0.0001,3"/>
 
      <Option key="maxNeurons" value="100"/>
 
      <Option key="trainingProgress" value="Inf"/>
 
  </[[Config:ModelInterface|ModelInterface]]>
 
</[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>
 
</source>
 
=== rbfnnps ===
 
Build Radial Basis Function Neural networks using Pattern Search
 
<source lang="xml">
 
<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] id="rbfnnps" type="PatternSearchModelBuilder" combineOutputs="false">
 
  <Option key="restartStrategy" value="intelligent"/>
 
  <Option key="maxIterations" value="500"/>
 
  <Option key="maxFunEvals" value="100"/>
 
  <Option key="searchMethod" value="GPSPositiveBasis2N"/>
 
  <Option key="pollMethod" value="MADSPositiveBasis2N"/>
 
  <[[Config:ModelInterface|ModelInterface]] id="rbfnn" type="RBFNNInterface">
 
      <Option key="goal" value="0"/>
 
      <Option key="spread" value="1"/>
 
      <Option key="spreadBounds" value="0.0001,3"/>
 
      <Option key="maxNeurons" value="100"/>
 
      <Option key="trainingProgress" value="Inf"/>
 
  </[[Config:ModelInterface|ModelInterface]]>
 
</[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>
 
</source>
 
=== rbfnnsim ===
 
Build Radial Basis Function Neural networks using Pattern Search
 
<source lang="xml">
 
<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] id="rbfnnsim" type="SimAnnealingModelBuilder" combineOutputs="false">
 
  <Option key="restartStrategy" value="intelligent"/>
 
  <Option key="maxIterations" value="500"/>
 
  <Option key="maxFunEvals" value="100"/>
 
  <[[Config:ModelInterface|ModelInterface]] id="rbfnn" type="RBFNNInterface">
 
      <Option key="goal" value="0"/>
 
      <Option key="spread" value="1"/>
 
      <Option key="spreadBounds" value="0.0001,3"/>
 
      <Option key="maxNeurons" value="100"/>
 
      <Option key="trainingProgress" value="Inf"/>
 
  </[[Config:ModelInterface|ModelInterface]]>
 
</[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>
 
</source>
 
=== rbfnnrandom ===
 
Build random RBF neural networks
 
<source lang="xml">
 
<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] id="rbfnnrandom" type="RandomModelBuilder" combineOutputs="false">
 
  <Option key="runSize" value="10"/>
 
  <[[Config:ModelInterface|ModelInterface]] id="rbfnn" type="RBFNNInterface">
 
      <Option key="goal" value="0"/>
 
      <Option key="spread" value="1"/>
 
      <Option key="spreadBounds" value="0.0001,3"/>
 
      <Option key="maxNeurons" value="100"/>
 
      <Option key="trainingProgress" value="Inf"/>
 
  </[[Config:ModelInterface|ModelInterface]]>
 
 
</[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>
 
</[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>
 
</source>
 
</source>
 +
 +
 +
== Ensemble and heterogenetic models ==
 +
 
=== heterogenetic ===
 
=== heterogenetic ===
A heterogeneous genetic model builder. Uses a genetic algorithm with speciation (island model) to evolve different model types together. The models types compete against each other until the best model prevails.
+
A heterogeneous genetic model builder. Uses a genetic algorithm with speciation (island model) to evolve different model types together. The models types compete against each other until the best model prevails. So this model builder is a way to automatically select the best model type.
<source lang="xml">
+
<source xmlns:saxon="http://icl.com/saxon" lang="xml">
<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] id="heterogenetic" type="GeneticModelBuilder" combineOutputs="false">
+
<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] type="[[AdaptiveModelBuilder#GeneticModelBuilder|GeneticModelBuilder]]" combineOutputs="false">
 +
  <Option key="restartStrategy" value="continue"/>
 
   <Option key="populationType" value="custom"/>
 
   <Option key="populationType" value="custom"/>
 +
  <!-- the population size must match the number of model interfaces minus 1 -->
 
   <Option key="populationSize" value="10,10,10"/>
 
   <Option key="populationSize" value="10,10,10"/>
 
   <Option key="maxGenerations" value="10"/>
 
   <Option key="maxGenerations" value="10"/>
   <Option key="crossoverFraction" value="0.7"/>
+
   <Option key="crossoverFraction" value="0.7"/>  
 
   <Option key="eliteCount" value="1"/>
 
   <Option key="eliteCount" value="1"/>
 
   <Option key="stallGenLimit" value="4"/>
 
   <Option key="stallGenLimit" value="4"/>
Line 871: Line 1,417:
 
   <Option key="migrationDirection" value="forward"/>
 
   <Option key="migrationDirection" value="forward"/>
 
   <Option key="migrationFraction" value="0.1"/>
 
   <Option key="migrationFraction" value="0.1"/>
   <Option key="migrationInterval" value="3"/>
+
   <Option key="migrationInterval" value="4"/>
   <Option key="extinctionPrevention" value="no"/>
+
  <!-- Do we want to prevent any model type going completely extinct -->
   <[[Config:ModelInterface|ModelInterface]] id="hetero" type="HeterogeneousGeneticInterface">
+
   <Option key="extinctionPrevention" value="yes"/>  
 +
 
 +
   <[[Config:ModelFactory|ModelFactory]] type="[[ModelFactory#HeterogeneousFactory|HeterogeneousFactory]]">
 
       <Option key="creationFcn" value="createInitialPopulation"/>
 
       <Option key="creationFcn" value="createInitialPopulation"/>
 
       <Option key="crossoverFcn" value="crossover"/>
 
       <Option key="crossoverFcn" value="crossover"/>
       <Option key="mutationFcn" value="mutate"/>
+
       <Option key="mutationFcn" value="mutation"/>
       <Option key="constraintFcn" value="[]"/>
+
        
       <[[Config:ModelInterface|ModelInterface]] id="Ensemble" type="EnsembleGeneticInterface">
+
       <[[Config:ModelFactory|ModelFactory]] type="[[ModelFactory#EnsembleFactory|EnsembleFactory]]">
         <Option key="crossoverFcn" value="simpleCrossover"/>
+
         <Option key="crossoverFcn" value="crossover"/>
         <Option key="mutationFcn" value="simpleMutation"/>
+
         <Option key="mutationFcn" value="mutation"/>
 +
        <!-- the maximum ensemble size -->
 
         <Option key="maxSize" value="4"/>
 
         <Option key="maxSize" value="4"/>
 +
        <!-- Ensemble members should differ this much percent -->
 
         <Option key="equalityThreshold" value="0.05"/>
 
         <Option key="equalityThreshold" value="0.05"/>
       </[[Config:ModelInterface|ModelInterface]]>
+
       </[[Config:ModelFactory|ModelFactory]]>
       <[[Config:ModelInterface|ModelInterface]] id="SVM" type="SVMGeneticInterface">
+
 
 +
       <[[Config:ModelFactory|ModelFactory]] type="[[ModelFactory#SVMFactory|SVMFactory]]">
 
         <Option key="creationFcn" value="createInitialPopulation"/>
 
         <Option key="creationFcn" value="createInitialPopulation"/>
         <Option key="crossoverFcn" value="simpleCrossover"/>
+
         <Option key="crossoverFcn" value="crossover"/>
         <Option key="mutationFcn" value="simpleMutation"/>
+
         <Option key="mutationFcn" value="mutation"/>
         <Option key="constraintFcn" value="[]"/>
+
          
         <Option key="backend" value="libSVM"/>
+
         <Option key="backend" value="lssvm"/>
        <Option key="type" value="epsilon-SVR"/>
 
 
         <Option key="kernel" value="rbf"/>
 
         <Option key="kernel" value="rbf"/>
         <Option key="kernelParamBounds" value="-4,4"/>
+
         <Option key="kernelParamBounds" value="-2,2"/>
 
         <Option key="regParamBounds" value="-5,5"/>
 
         <Option key="regParamBounds" value="-5,5"/>
        <Option key="nu" value="0.01"/>
+
       </[[Config:ModelFactory|ModelFactory]]>
        <Option key="epsilon" value="0"/>
+
     
        <Option key="stoppingTolerance" value="1e-5"/>
+
       <[[Config:ModelFactory|ModelFactory]] type="[[ModelFactory#RationalFactory|RationalFactory]]">
       </[[Config:ModelInterface|ModelInterface]]>
 
       <[[Config:ModelInterface|ModelInterface]] type="RationalGeneticInterface">
 
 
         <Option key="crossoverFcn" value="crossover"/>
 
         <Option key="crossoverFcn" value="crossover"/>
 
         <Option key="mutationFcn" value="mutation"/>
 
         <Option key="mutationFcn" value="mutation"/>
        <Option key="constraintFcn" value="[]"/>
+
         <Option key="creationFcn" value="createInitialPopulation"/>
         <Option key="creationFcn" value="initial"/>
 
 
         <Option key="weightBounds" value="1,40"/>
 
         <Option key="weightBounds" value="1,40"/>
 
         <Option key="percentBounds" value="1,100"/>
 
         <Option key="percentBounds" value="1,100"/>
 
         <Option key="percentRational" value="70"/>
 
         <Option key="percentRational" value="70"/>
 
         <Option key="frequencyVariable" value="off"/>
 
         <Option key="frequencyVariable" value="off"/>
         <Option key="basis" value="chebyshev"/>
+
         <Option key="basis" value="power"/>
       </[[Config:ModelInterface|ModelInterface]]>
+
       </[[Config:ModelFactory|ModelFactory]]>
       <[[Config:ModelInterface|ModelInterface]] type="BFGeneticInterface">
+
 
 +
       <[[Config:ModelFactory|ModelFactory]] type="[[ModelFactory#BFFactory|BFFactory]]">
 
         <Option key="type" value="RBF"/>
 
         <Option key="type" value="RBF"/>
 +
 
         <Option key="crossoverFcn" value="crossover"/>
 
         <Option key="crossoverFcn" value="crossover"/>
 
         <Option key="mutationFcn" value="mutation"/>
 
         <Option key="mutationFcn" value="mutation"/>
         <Option key="constraintFcn" value="[]"/>
+
         <Option key="creationFcn" value="createInitialPopulation"/>
         <Option key="creationFcn" value="initial"/>
+
          
         <[[Config:BasisFunction|BasisFunction]] name="gaussian" min=".1" max="5" scale="log"/>
+
         <[[Config:BasisFunction|BasisFunction]] name="gaussian" min=".1" max="5" scale="ln"/>
         <[[Config:BasisFunction|BasisFunction]] name="multiquadric" min=".1" max="5" scale="log"/>
+
         <[[Config:BasisFunction|BasisFunction]] name="multiquadric" min=".1" max="5" scale="ln"/>
         <[[Config:BasisFunction|BasisFunction]] name="exponential" min=".1,.5" max="5,2" scale="log,lin"/>
+
         <[[Config:BasisFunction|BasisFunction]] name="exponential" min=".1,.5" max="5,2" scale="ln,lin"/>
 +
       
 
         <Option key="regression" value="-1,0,1,2"/>
 
         <Option key="regression" value="-1,0,1,2"/>
 
         <Option key="backend" value="Direct"/>
 
         <Option key="backend" value="Direct"/>
       </[[Config:ModelInterface|ModelInterface]]>
+
       </[[Config:ModelFactory|ModelFactory]]>        
   </[[Config:ModelInterface|ModelInterface]]>
+
   </[[Config:ModelFactory|ModelFactory]]>
 
</[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>
 
</[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>
 
</source>
 
</source>

Latest revision as of 16:19, 27 February 2014

The adaptive model builder component defines which model type (e.g. polynomial model, ANN, SVMs, etc...) is used to model your data as well as the algorithm used to optimize its hyperparameters (e.g. the order of a polynomial function, the number of hidden nodes of an ANN, the kernel parameters of an SVM, etc...).

This page lists all pre-defined <AdaptiveModelBuilder> configuration sections included in the default.xml. These configuration sections should be declared after the <Plan>...</Plan> section in your config.xml if you are using a custom configuration XML file.

In the default.xml each configuration section is also given an id, which can be referred to in the <Plan> section. These id's are not included in the configuration sections listed here. For example in the default.xml file, the following adaptive model builder configuration section can be referred to using <AdaptiveModelBuilder>rational</AdaptiveModelBuilder> in the <Plan> section.

<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] id="rational" type="[[AdaptiveModelBuilder#SequentialModelBuilder|SequentialModelBuilder]]" combineOutputs="true">
    ...
</[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>

Each configuration section consists of two parts. The first part is the <ModelFactory> tag, which defines all the settings and parameters for a particular model type as well as their boundaries if those parameters need to be optimized.

The second part, the <AdaptiveModelBuilder> itself defines settings specific to the optimization algorithm. You can find out more about the available modeling algorithms and how to add your own here.

By combining these two elements you can create your own <AdaptiveModelBuiler>. If you want to add your own model type, please refer to this page. To learn more about the optimization algorithms used or to add your own search algorithm, consult this page.


Generated for SUMO toolbox version 7.0. We are well aware that documentation is not always complete and possibly even out of date in some cases. We try to document everything as best we can but much is limited by available time and manpower. We are are a university research group after all. The most up to date documentation can always be found (if not here) in the default.xml configuration file and, of course, in the source files. If something is unclear please don't hesitate to ask.


Rational and polynomial models

rational

Build rational models using a custom stochastic hillclimber to select the model parameters

<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] type="[[AdaptiveModelBuilder#SequentialModelBuilder|SequentialModelBuilder]]" combineOutputs="true">
   <!-- Maximum number of models built before selecting new samples -->   
   <Option key="maximumRunLength" value="30"/>
   <!-- Degeneration of score if a model gets older -->
   <Option key="decay" value=".99"/>
   <!-- Size of the best model history -->
   <Option key="historySize" value="15"/>
   <!-- One of best, last. When set to best the best `historySize' models are kept,
    - - when set to last, the last `historySize' models are kept -->
   <Option key="strategy" value="best"/>
   <!-- <Option key="strategy" value="window"/> -->
   
   <[[Config:ModelFactory|ModelFactory]] type="[[ModelFactory#RationalFactory|RationalFactory]]">
      <!-- Bounds for the weights of the rational modeller -->
      <Option key="weightBounds" value="1,40"/>
      <!-- Bounds for the percentage of degrees of freedom wrt number of samples -->
      <Option key="percentBounds" value="1,100"/>
      <!-- Regardless of the percentage bounds, never use more than this many degrees of freedom -->
      <Option key="maxDegrees" value="80"/>
      <!-- When randomizing rational flags, what percentage should be set -->
      <Option key="percentRational" value="70"/>
      <!-- If a variable is named "f" of "frequency" it will be modelled differently, if this is set to auto,
       - - If this field is set to a variable name, that variable will be considered to be the frequency -->
      <Option key="frequencyVariable" value="auto"/>
      <!-- Base function for interpolation, one of chebyshev, power, legendre -->
      <Option key="basis" value="power"/>
   </[[Config:ModelFactory|ModelFactory]]>
</[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>

rationalgenetic

Build rational models using a genetic algorithm

<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] type="[[AdaptiveModelBuilder#GeneticModelBuilder|GeneticModelBuilder]]" combineOutputs="false">
   <!--See that matlab gads toolbox documentation for more information on the options-->
   <Option key="restartStrategy" value="continue"/>
   <Option key="populationType" value="custom"/>
   <Option key="populationSize" value="30"/>
   <Option key="crossoverFraction" value="0.7"/>
   <Option key="maxGenerations" value="20"/>
   <Option key="eliteCount" value="1"/>
   <Option key="stallGenLimit" value="5"/>
   <Option key="stallTimeLimit" value="Inf"/>
   
   <[[Config:ModelFactory|ModelFactory]] type="[[ModelFactory#RationalFactory|RationalFactory]]">
      <Option key="crossoverFcn" value="crossover"/>
      <Option key="mutationFcn" value="mutation"/>
      <Option key="creationFcn" value="createInitialPopulation"/>
      <!-- Use the next three functions instead of the previous three if you set the
            population type to doubleVector -->
      <!--<Option key="creationFcn" value="@gacreationuniform"/>
      <Option key="crossoverFcn" value="@crossoverheuristic"/>
      <Option key="mutationFcn" value="@mutationadaptfeasible"/>-->

          <!-- Bounds for the weights of the rational modeller -->
      <Option key="weightBounds" value="1,40"/>
      <!-- Bounds for the percentage of degrees of freedom wrt number of samples -->
      <Option key="percentBounds" value="1,100"/>
      <!-- Regardless of the percentage bounds, never use more than this many degrees of freedom -->
      <Option key="maxDegrees" value="80"/>
      <!-- When randomizing rational flags, what percentage should be set -->
      <Option key="percentRational" value="70"/>
      <!-- If a variable is named "f" of "frequency" 
         it will be modelled differently, if this is set to auto -->
      <!-- If this field is set to a variable name, that variable will be considered to be the frequency -->
      <Option key="frequencyVariable" value="auto"/>
      <!-- Base function for interpolation, one of chebyshev, power, legendre -->
      <Option key="basis" value="power"/>
   </[[Config:ModelFactory|ModelFactory]]>
</[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>

rationalpso

Generate Rational models using PSO

<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] type="[[AdaptiveModelBuilder#OptimizerModelBuilder|OptimizerModelBuilder]]" combineOutputs="false">
   <!-- Plot the optimization surface, visualizes the search through the parameter space (2D only) -->
   <Option key="plotOptimSurface" value="false"/>
   <!-- Re-start strategy for resuming the optimization process between sampling iterations.
        One of 'random','continue','model' and 'intelligent' (Default).  See the docs for more information -->
   <Option key="restartStrategy" value="intelligent"/>
   
   <[[Config:Optimizer|Optimizer]] type="[[Optimizer#PSOtOptimizer|PSOtOptimizer]]">
      <Option key="typePSO" value="0"/>
      <Option key="seedPSO" value="1"/>
      <Option key="popSize" value="10"/>
      <Option key="maxiters" value="10"/>
      <Option key="epochInertia" value="8"/>
      <Option key="gradientTermination" value="8"/>
   </[[Config:Optimizer|Optimizer]]>
   
   <[[Config:ModelFactory|ModelFactory]] type="[[ModelFactory#RationalFactory|RationalFactory]]">
      <!-- Bounds for the weights of the rational modeller -->
      <Option key="weightBounds" value="1,40"/>
      <!-- Bounds for the percentage of degrees of freedom wrt number of samples -->
      <Option key="percentBounds" value="1,100"/>
      <!-- Regardless of the percentage bounds, never use more than this many degrees of freedom -->
      <Option key="maxDegrees" value="80"/>
      <!-- When randomizing rational flags, what percentage should be set -->
      <Option key="percentRational" value="70"/>
      <!-- If a variable is named "f" of "frequency" 
         it will be modelled differently, if this is set to auto -->
      <!-- If this field is set to a variable name, that variable will be considered to be the frequency -->
      <Option key="frequencyVariable" value="auto"/>
      <!-- Base function for interpolation, one of chebyshev, power, legendre -->
      <Option key="basis" value="power"/>
   </[[Config:ModelFactory|ModelFactory]]>
</[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>

polynomialfixed

Build polynomial models with a fixed order

<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] type="[[AdaptiveModelBuilder#AdaptiveModelBuilder|AdaptiveModelBuilder]]" combineOutputs="false">

   <[[Config:ModelFactory|ModelFactory]] type="[[ModelFactory#PolynomialFactory|PolynomialFactory]]">
      <!-- Specifies the structure of the polynomial -->
      <!-- Expects matlab matrix: Element (i,j) is the exponent of variable i for term j.  -->
      <Option key="degrees" value="[0 0;1 0;0 1;1 1;2 0;0 2;2 2]"/> <!-- Equals to 1+x+y+xy+xx+yy+xxyy -->
      <!-- Base function for interpolation, one of chebyshev, power, legendre -->
      <Option key="basis" value="power"/>
   </[[Config:ModelFactory|ModelFactory]]>
</[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>

Gaussian processes

rbf

Build Radial Basis Function models

<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] type="[[AdaptiveModelBuilder#SequentialModelBuilder|SequentialModelBuilder]]" combineOutputs="false">
   <!-- Maximum number of models built before selecting new samples -->   
   <Option key="maximumRunLength" value="20"/>
   <!-- Degeneration of score if a model gets older -->
   <Option key="decay" value=".9"/>
   <!-- Size of the best model history -->
   <Option key="historySize" value="15"/>
   <!-- One of best, last. When set to best the best `historySize' models are kept,
   - - when set to last, the last `historySize' models are kept -->
   <Option key="strategy" value="best"/>
   
   <!-- <Option key="strategy" value="window"/> -->
   
   <[[Config:ModelFactory|ModelFactory]] type="[[ModelFactory#BFFactory|BFFactory]]">
      <Option key="type" value="RBF"/>
      
      <[[Config:BasisFunction|BasisFunction]] name="gaussian" min=".1" max="5" scale="ln"/>
      <[[Config:BasisFunction|BasisFunction]] name="multiquadric" min=".1" max="5" scale="ln"/>
      <!--<[[Config:BasisFunction|BasisFunction]] name="biharmonic"   min=".1"    max="5"    scale="ln"/> -->
      <[[Config:BasisFunction|BasisFunction]] name="exponential" min=".1,.5" max="5,2" scale="ln,lin"/>
      
      <Option key="regression" value="-1,0,1,2"/>
      <Option key="backend" value="AP"/>
   </[[Config:ModelFactory|ModelFactory]]>
</[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>

rbfgenetic

Build Radial Basis Function models using a genetic algorithm

<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] type="[[AdaptiveModelBuilder#GeneticModelBuilder|GeneticModelBuilder]]" combineOutputs="false">
   <Option key="restartStrategy" value="continue"/>
   <!--See that matlab gads toolbox documentation for more information on the options-->
   <Option key="populationType" value="custom"/>
   <Option key="populationSize" value="15"/>
   <Option key="crossoverFraction" value="0.7"/>
   <Option key="maxGenerations" value="10"/>
   <Option key="eliteCount" value="1"/>
   <Option key="stallGenLimit" value="4"/>
   <Option key="stallTimeLimit" value="Inf"/>
   
   <[[Config:ModelFactory|ModelFactory]] type="[[ModelFactory#BFFactory|BFFactory]]">
      <Option key="type" value="RBF"/>
      
      <Option key="crossoverFcn" value="crossover"/>
      <Option key="mutationFcn" value="mutation"/>
      <Option key="creationFcn" value="createInitialPopulation"/>
      
      <!-- Bounds for the shape parameter -->
      <[[Config:BasisFunction|BasisFunction]] name="gaussian" min=".1" max="5" scale="ln"/>
      <[[Config:BasisFunction|BasisFunction]] name="multiquadric" min=".1" max="5" scale="ln"/>
      <!-- <[[Config:BasisFunction|BasisFunction]] name="biharmonic"   min=".1"    max="5"    scale="ln"/> -->
      <[[Config:BasisFunction|BasisFunction]] name="exponential" min=".1,.5" max="5,2" scale="ln,lin"/>
      
      <Option key="regression" value="-1,0,1,2"/>
      <!-- Basisfunction, one of 'multiquadric', 'triharmonic', 'biharmonic' -->
      <!-- Specify which implementation to use, currently, 'Direct', 'AP', 'Greedy' and
      'FastRBF' are supported.
      
      'Direct' solves the direct problem by inverting the interpolation
      matrix
      'AP' uses an alternating projections method when the system gets
      too large. This is *MUCH* slower than 'Direct', and doesn't
      guarantee convergence, use with caution
      'Greedy' uses a one point greedy algorithm for selecting the 
      interpolation centers. Same remark applies as with 'AP'
      'FastRBF' interfaces the FastRBF library. When using FastRBF, 
      make sure your copy of the software is installed under 
      the src/matlab/contrib directory and that the software 
      is licensed properly.
      The FastRBF matlab toolbox can be found at
      http://www.farfieldtechnology.com
      -->
      <Option key="backend" value="AP"/>
   </[[Config:ModelFactory|ModelFactory]]>
</[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>

dace

Build DACE models (equivalent to Kriging but a custom implementation)

<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] type="[[AdaptiveModelBuilder#SequentialModelBuilder|SequentialModelBuilder]]" combineOutputs="false">
   <!-- Maximum number of models built before selecting new samples -->   
   <Option key="maximumRunLength" value="20"/>
   <!-- Degeneration of score if a model gets older -->
   <Option key="decay" value=".9"/>
   <!-- Size of the best model history -->
   <Option key="historySize" value="15"/>
   <!-- One of best, last. When set to best the best `historySize' models are kept,
        - - when set to last, the last `historySize' models are kept -->
   <Option key="strategy" value="best"/>
   
   <!-- <Option key="strategy" value="window"/> -->
   
   <[[Config:ModelFactory|ModelFactory]] type="[[ModelFactory#BFFactory|BFFactory]]">
      <Option key="type" value="DACE"/>
      
      <[[Config:BasisFunction|BasisFunction]] name="gaussian" min=".1" max="5" scale="ln"/>
      <[[Config:BasisFunction|BasisFunction]] name="multiquadric" min=".1" max="5" scale="ln"/>
      <!--<[[Config:BasisFunction|BasisFunction]] name="biharmonic"   min=".1"    max="5"    scale="ln"/> -->
      <[[Config:BasisFunction|BasisFunction]] name="exponential" min=".1,.5" max="5,2" scale="ln,lin"/>
      
      <Option key="regression" value="-1,0,1,2"/>
      <Option key="backend" value="AP"/>
   </[[Config:ModelFactory|ModelFactory]]>
</[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>

dacegenetic

Build DACE models using a genetic algorithm

<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] type="[[AdaptiveModelBuilder#GeneticModelBuilder|GeneticModelBuilder]]" combineOutputs="false">
   <!--See that matlab gads toolbox documentation for more information on the options-->
   <Option key="populationType" value="custom"/>
   <Option key="populationSize" value="15"/>
   <Option key="crossoverFraction" value="0.7"/>
   <Option key="maxGenerations" value="10"/>
   <Option key="eliteCount" value="1"/>
   <Option key="stallGenLimit" value="4"/>
   <Option key="stallTimeLimit" value="Inf"/>
   
   <[[Config:ModelFactory|ModelFactory]] type="[[ModelFactory#BFFactory|BFFactory]]">
      <Option key="type" value="DACE"/>
      
      <Option key="crossoverFcn" value="crossover"/>
      <Option key="mutationFcn" value="mutation"/>
      <Option key="creationFcn" value="createInitialPopulation"/>
      
      <!-- Bounds for the shape parameter -->
      <[[Config:BasisFunction|BasisFunction]] name="gaussian" min=".1" max="5" scale="ln"/>
      <[[Config:BasisFunction|BasisFunction]] name="multiquadric" min=".1" max="5" scale="ln"/>
      <!-- <[[Config:BasisFunction|BasisFunction]] name="biharmonic"   min=".1"    max="5"    scale="ln"/> -->
      <[[Config:BasisFunction|BasisFunction]] name="exponential" min=".1,.5" max="5,2" scale="ln,lin"/>
      
      <Option key="regression" value="-1,0,1,2"/>
      <Option key="backend" value="AP"/>
   </[[Config:ModelFactory|ModelFactory]]>
</[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>

daceps

Build DACE using pattern search

<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] type="[[AdaptiveModelBuilder#OptimizerModelBuilder|OptimizerModelBuilder]]" combineOutputs="false">
   <!-- Plot the optimization surface, visualizes the search through the parameter space (2D only) -->
   <Option key="plotOptimSurface" value="false"/>
   <!-- Re-start strategy for resuming the optimization process between sampling iterations.
        One of 'random','continue','model' and 'intelligent' (Default).  See the docs for more information -->
   <Option key="restartStrategy" value="intelligent"/>
   
   <[[Config:Optimizer|Optimizer]] type="[[Optimizer#MatlabPatternSearch|MatlabPatternSearch]]">
      <Option key="maxIterations" value="500"/>
      <Option key="maxFunEvals" value="100"/>
      <Option key="searchMethod" value="GPSPositiveBasis2N"/>
      <Option key="pollMethod" value="MADSPositiveBasis2N"/>         
   </[[Config:Optimizer|Optimizer]]>

   
   <[[Config:ModelFactory|ModelFactory]] type="[[ModelFactory#BFFactory|BFFactory]]">
      <Option key="type" value="DACE"/>
      
      <!--Option key="multipleBasisFunctionsAllowed" value="false"/-->
      
      <[[Config:BasisFunction|BasisFunction]] name="gaussian" min=".1" max="5" scale="ln"/>
      
      <Option key="regression" value="-1,0,1,2"/>
      <Option key="backend" value="AP"/>
   </[[Config:ModelFactory|ModelFactory]]>
</[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>

dacepso

Build DACE models using PSO

<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] type="[[AdaptiveModelBuilder#OptimizerModelBuilder|OptimizerModelBuilder]]" combineOutputs="false">
   <!-- Plot the optimization surface, visualizes the search through the parameter space (2D only) -->
   <Option key="plotOptimSurface" value="false"/>
   <!-- Re-start strategy for resuming the optimization process between sampling iterations.
        One of 'random','continue','model' and 'intelligent' (Default).  See the docs for more information -->
   <Option key="restartStrategy" value="intelligent"/>
   
   <[[Config:Optimizer|Optimizer]] type="[[Optimizer#PSOtOptimizer|PSOtOptimizer]]">
      <Option key="typePSO" value="0"/>
      <Option key="seedPSO" value="1"/>
      <Option key="popSize" value="10"/>
      <Option key="maxiters" value="10"/>
      <Option key="epochInertia" value="8"/>
      <Option key="gradientTermination" value="8"/>
   </[[Config:Optimizer|Optimizer]]>
   
   <[[Config:ModelFactory|ModelFactory]] type="[[ModelFactory#BFFactory|BFFactory]]">
      <Option key="type" value="DACE"/>
      
      <!--Option key="multipleBasisFunctionsAllowed" value="false"/-->
      
      <[[Config:BasisFunction|BasisFunction]] name="gaussian" min=".1" max="5" scale="ln"/>
      
      <Option key="regression" value="-1,0,1,2"/>
      <Option key="backend" value="AP"/>
   </[[Config:ModelFactory|ModelFactory]]>
</[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>

gpps

Build GP using pattern search

<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] type="[[AdaptiveModelBuilder#OptimizerModelBuilder|OptimizerModelBuilder]]" combineOutputs="false">
   <!-- Plot the optimization surface, visualizes the search through the parameter space (2D only) -->
   <Option key="plotOptimSurface" value="false"/>
   <!-- Re-start strategy for resuming the optimization process between sampling iterations.
        One of 'random','continue','model' and 'intelligent' (Default).  See the docs for more information -->
   <Option key="restartStrategy" value="intelligent"/>
   
   <[[Config:Optimizer|Optimizer]] type="[[Optimizer#MatlabPatternSearch|MatlabPatternSearch]]">
      <Option key="maxIterations" value="500"/>
      <Option key="maxFunEvals" value="100"/>
      <Option key="searchMethod" value="GPSPositiveBasis2N"/>
      <Option key="pollMethod" value="MADSPositiveBasis2N"/>         
   </[[Config:Optimizer|Optimizer]]>

   <[[Config:ModelFactory|ModelFactory]] type="[[ModelFactory#GaussianProcessFactory|GaussianProcessFactory]]">
      <Option key="covFunction" value="covSEiso"/>      
      
      <Option key="lowerThetaBound" value="-5"/>
      <Option key="upperThetaBound" value="3"/>
   </[[Config:ModelFactory|ModelFactory]]>
</[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>

gpgenetic

Build Gaussian Process models using a GA

<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] type="[[AdaptiveModelBuilder#GeneticModelBuilder|GeneticModelBuilder]]" combineOutputs="false">
   <!--See that matlab gads toolbox documentation for more information on the options-->
   <Option key="populationType" value="doubleVector"/>
   <Option key="populationSize" value="15"/>
   <Option key="crossoverFraction" value="0.7"/>
   <Option key="maxGenerations" value="10"/>
   <Option key="eliteCount" value="1"/>
   <Option key="stallGenLimit" value="4"/>
   <Option key="stallTimeLimit" value="Inf"/>
   
   <[[Config:ModelFactory|ModelFactory]] type="[[ModelFactory#GaussianProcessFactory|GaussianProcessFactory]]">
            <Option key="creationFcn" value="@gacreationuniform"/>
      <Option key="crossoverFcn" value="@crossoverheuristic"/>
      <Option key="mutationFcn" value="@mutationadaptfeasible"/>
            <!--
      <Option key="crossoverFcn" value="crossover"/>
      <Option key="mutationFcn" value="mutation"/>
      <Option key="creationFcn" value="createInitialPopulation"/>
            -->
      
      <Option key="covFunction" value="covSEiso"/>
      <Option key="lowerThetaBound" value="-5"/>
      <Option key="upperThetaBound" value="3"/>
   </[[Config:ModelFactory|ModelFactory]]>
</[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>

krigingsim

Build kriging models using Simulated Annealing

<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] type="[[AdaptiveModelBuilder#OptimizerModelBuilder|OptimizerModelBuilder]]" combineOutputs="false">
   <!-- Plot the optimization surface, visualizes the search through the parameter space (2D only) -->
   <Option key="plotOptimSurface" value="false"/>
   <!-- Re-start strategy for resuming the optimization process between sampling iterations.
        One of 'random','continue','model' and 'intelligent' (Default).  See the docs for more information -->
   <Option key="restartStrategy" value="intelligent"/>
   
   <[[Config:Optimizer|Optimizer]] type="[[Optimizer#MatlabSimAnnealing|MatlabSimAnnealing]]">
      <Option key="maxIterations" value="100"/>
      <Option key="maxFunEvals" value="20"/>
   </[[Config:Optimizer|Optimizer]]>
   
   <!-- See the documentaion for possible regression and correlation functions -->
   <[[Config:ModelFactory|ModelFactory]] type="[[ModelFactory#KrigingFactory|KrigingFactory]]">
      <Option key="regressionMetric" value=""/>
      <Option key="regressionFunction" value="regpoly1"/>
      <Option key="multipleBasisFunctionsAllowed" value="false"/>
      <[[Config:BasisFunction|BasisFunction]]>corrgauss</[[Config:BasisFunction|BasisFunction]]>
   </[[Config:ModelFactory|ModelFactory]]>
   
</[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>

krigingps

Build kriging models using pattern search

<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] type="[[AdaptiveModelBuilder#OptimizerModelBuilder|OptimizerModelBuilder]]" combineOutputs="false">
   <!-- Plot the optimization surface, visualizes the search through the parameter space (2D only) -->
   <Option key="plotOptimSurface" value="false"/>
   <!-- Re-start strategy for resuming the optimization process between sampling iterations.
        One of 'random','continue','model' and 'intelligent' (Default).  See the docs for more information -->
   <Option key="restartStrategy" value="intelligent"/>
   
   <[[Config:Optimizer|Optimizer]] type="[[Optimizer#MatlabPatternSearch|MatlabPatternSearch]]">
      <Option key="maxIterations" value="100"/>
      <Option key="maxFunEvals" value="20"/>
      <Option key="searchMethod" value="GPSPositiveBasis2N"/>
      <Option key="pollMethod" value="MADSPositiveBasis2N"/>         
   </[[Config:Optimizer|Optimizer]]>
   
   <[[Config:ModelFactory|ModelFactory]] type="[[ModelFactory#KrigingFactory|KrigingFactory]]">
      <Option key="regressionMetric" value=""/>
      <Option key="regressionFunction" value="regpoly1"/>
      <Option key="multipleBasisFunctionsAllowed" value="true"/>
      <[[Config:BasisFunction|BasisFunction]]>corrgauss</[[Config:BasisFunction|BasisFunction]]>
      <[[Config:BasisFunction|BasisFunction]]>correxp</[[Config:BasisFunction|BasisFunction]]>
   </[[Config:ModelFactory|ModelFactory]]>
</[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>

krigingoptim

Build kriging models using the matlab optimization toolbox

<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] type="[[AdaptiveModelBuilder#OptimizerModelBuilder|OptimizerModelBuilder]]" combineOutputs="false">
   <!-- Plot the optimization surface, visualizes the search through the parameter space (2D only) -->
   <Option key="plotOptimSurface" value="false"/>
   <!-- Re-start strategy for resuming the optimization process between sampling iterations.
        One of 'random','continue','model' and 'intelligent' (Default).  See the docs for more information -->
   <Option key="restartStrategy" value="intelligent"/>
   
   <[[Config:Optimizer|Optimizer]] type="[[Optimizer#MatlabOptimizer|MatlabOptimizer]]">
      <Option key="maxIterations" value="100"/>
      <Option key="maxFunEvals" value="20"/>
   </[[Config:Optimizer|Optimizer]]>

   <!-- See the documentaion for possible regression and correlation functions -->
   <[[Config:ModelFactory|ModelFactory]] type="[[ModelFactory#KrigingFactory|KrigingFactory]]">
            <Option key="regressionMetric" value=""/>
      <Option key="regressionFunction" value="regpoly1"/>
      <Option key="multipleBasisFunctionsAllowed" value="false"/>
      <[[Config:BasisFunction|BasisFunction]]>corrgauss</[[Config:BasisFunction|BasisFunction]]>
   </[[Config:ModelFactory|ModelFactory]]>
</[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>

kriginggenetic

Build kriging models using a genetic algorithm

<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] type="[[AdaptiveModelBuilder#GeneticModelBuilder|GeneticModelBuilder]]" combineOutputs="false">
   <!-- Plot the optimization surface, visualizes the search through the parameter space (2D only) -->
   <Option key="plotOptimSurface" value="false"/>
   <!-- Re-start strategy for resuming the optimization process between sampling iterations.
        One of 'random','continue','model' and 'intelligent' (Default).  See the docs for more information -->
   <Option key="restartStrategy" value="intelligent"/>
   <!-- If you specify "custom" as the population type you will be evolving models
   and will use the genetic operators defined in the KrigingFactory class -->
   <Option key="populationType" value="doubleVector"/>
   <Option key="populationSize" value="10"/>
   <Option key="maxGenerations" value="10"/>
   <Option key="eliteCount" value="1"/>
   <Option key="crossoverFraction" value="0.7"/>
   <Option key="stallGenLimit" value="4"/>
   <Option key="stallTimeLimit" value="Inf"/>

        <!-- See the documentaion for possible regression and correlation functions -->
   <[[Config:ModelFactory|ModelFactory]] type="[[ModelFactory#KrigingFactory|KrigingFactory]]">
      <Option key="creationFcn" value="@gacreationuniform"/>
      <Option key="crossoverFcn" value="@crossoverheuristic"/>
      <Option key="mutationFcn" value="@mutationadaptfeasible"/>
<!--          <Option key="creationFcn" value="createInitialPopulation"/>
      <Option key="crossoverFcn" value="crossover"/>
      <Option key="mutationFcn" value="mutation"/>          -->
            <!-- See the documentaion for possible regression and correlation functions -->                                                                                                                                                                                                                                                                        <Option key="regressionMetric" value=""/>
      <Option key="regressionFunction" value="regpoly1"/>
      <Option key="multipleBasisFunctionsAllowed" value="false"/>
      <[[Config:BasisFunction|BasisFunction]]>corrgauss</[[Config:BasisFunction|BasisFunction]]>
   </[[Config:ModelFactory|ModelFactory]]>
</[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>

krigingpso

Build kriging models using PSO

<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] type="[[AdaptiveModelBuilder#OptimizerModelBuilder|OptimizerModelBuilder]]" combineOutputs="false">
   <!-- Plot the optimization surface, visualizes the search through the parameter space (2D only) -->
   <Option key="plotOptimSurface" value="false"/>
   <!-- Re-start strategy for resuming the optimization process between sampling iterations.
        One of 'random','continue','model' and 'intelligent' (Default).  See the docs for more information -->
   <Option key="restartStrategy" value="intelligent"/>

   <[[Config:Optimizer|Optimizer]] type="[[Optimizer#PSOtOptimizer|PSOtOptimizer]]">
      <Option key="typePSO" value="0"/>
      <Option key="seedPSO" value="1"/>
      <Option key="popSize" value="10"/>
      <Option key="maxiters" value="10"/>
      <Option key="epochInertia" value="8"/>
      <Option key="gradientTermination" value="8"/>
   </[[Config:Optimizer|Optimizer]]>

   <!-- See the documentaion for possible regression and correlation functions -->
   <[[Config:ModelFactory|ModelFactory]] type="[[ModelFactory#KrigingFactory|KrigingFactory]]">
            <Option key="regressionMetric" value=""/>
      <Option key="regressionFunction" value="regpoly1"/>
      <Option key="multipleBasisFunctionsAllowed" value="false"/>
      <[[Config:BasisFunction|BasisFunction]]>corrgauss</[[Config:BasisFunction|BasisFunction]]>
   </[[Config:ModelFactory|ModelFactory]]>
</[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>

krigingnsga

Build kriging models using NSGA-II, requires a multi-output or multi-measure setup

<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] type="[[AdaptiveModelBuilder#ParetoModelBuilder|ParetoModelBuilder]]" combineOutputs="true">
   <Option key="restartStrategy" value="model"/>
   <Option key="populationSize" value="30"/>
   <Option key="maxGenerations" value="30"/>
   <Option key="plotParetoFront" value="false"/>
   <Option key="paretoMode" value="true"/>
        
   <!-- See the documentaion for possible regression and correlation functions -->
   <[[Config:ModelFactory|ModelFactory]] type="[[ModelFactory#KrigingFactory|KrigingFactory]]">
            <Option key="regressionMetric" value=""/>
      <Option key="regressionFunction" value="regpoly1"/>
      <Option key="multipleBasisFunctionsAllowed" value="false"/>
      <[[Config:BasisFunction|BasisFunction]]>corrgauss</[[Config:BasisFunction|BasisFunction]]>
   </[[Config:ModelFactory|ModelFactory]]>
</[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>

krigingrandom

Build kriging models randomly, useful as a baseline comparison

<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] type="[[AdaptiveModelBuilder#RandomModelBuilder|RandomModelBuilder]]" combineOutputs="false">
   <!-- Plot the optimization surface, visualizes the search through the parameter space (2D only) -->
   <Option key="plotOptimSurface" value="false"/>
   <!-- Build 100 random models before restarting -->
   <Option key="runSize" value="100"/>
   
   <!-- See the documentaion for possible regression and correlation functions -->
   <[[Config:ModelFactory|ModelFactory]] type="[[ModelFactory#KrigingFactory|KrigingFactory]]">
            <Option key="regressionMetric" value=""/>
      <Option key="regressionFunction" value="regpoly1"/>
      <Option key="multipleBasisFunctionsAllowed" value="false"/>
      <[[Config:BasisFunction|BasisFunction]]>corrgauss</[[Config:BasisFunction|BasisFunction]]>
   </[[Config:ModelFactory|ModelFactory]]>
</[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>

blindkriging

Build blind kriging models

<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] type="[[AdaptiveModelBuilder#AdaptiveModelBuilder|AdaptiveModelBuilder]]" combineOutputs="false">
   <Option key="nBestModels" value="1"/>
   
   <!-- See the documentation for possible regression and correlation functions -->
   <[[Config:ModelFactory|ModelFactory]] type="[[ModelFactory#KrigingFactory|KrigingFactory]]">
            <Option key="regressionMetric" value="cvpe"/>
      <Option key="regressionFunction" value="regpoly0"/>
      <Option key="multipleBasisFunctionsAllowed" value="false"/>
      
      <Option key="initialHp" value="0.5"/>
      <[[Config:BasisFunction|BasisFunction]]>corrgauss</[[Config:BasisFunction|BasisFunction]]>
      
      <[[Config:Optimizer|Optimizer]]>fminconWithDerivatives</[[Config:Optimizer|Optimizer]]>
   </[[Config:ModelFactory|ModelFactory]]>

</[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>

kriging

Build kriging models using the maximum likelihood to set the thetas

<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] type="[[AdaptiveModelBuilder#AdaptiveModelBuilder|AdaptiveModelBuilder]]" combineOutputs="false">
   <Option key="nBestModels" value="1"/>
   
   <!-- See the documentation for possible regression and correlation functions -->
   <[[Config:ModelFactory|ModelFactory]] type="[[ModelFactory#KrigingFactory|KrigingFactory]]">
            <Option key="regressionMetric" value=""/>
      <Option key="regressionFunction" value="regpoly0"/>
      <Option key="multipleBasisFunctionsAllowed" value="false"/>
      
      <Option key="initialHp" value="0.5"/>
      <[[Config:BasisFunction|BasisFunction]]>corrgauss</[[Config:BasisFunction|BasisFunction]]>
      
      <[[Config:Optimizer|Optimizer]]>fminconWithDerivatives</[[Config:Optimizer|Optimizer]]>
   </[[Config:ModelFactory|ModelFactory]]>
   
</[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>

Splines

splinesgenetic

Build spline models using a GA

<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] type="[[AdaptiveModelBuilder#GeneticModelBuilder|GeneticModelBuilder]]" combineOutputs="false">
   <!-- Re-start strategy for resuming the optimization process between sampling iterations.
        One of 'random','continue','model' and 'intelligent' (Default).  See the docs for more information -->
   <Option key="restartStrategy" value="intelligent"/>
   <Option key="populationType" value="doubleVector"/>
   <Option key="populationSize" value="10"/>
   <Option key="maxGenerations" value="10"/>
   <Option key="eliteCount" value="1"/>
   <Option key="crossoverFraction" value="0.7"/>
   <Option key="stallGenLimit" value="4"/>
   <Option key="stallTimeLimit" value="Inf"/>
   
   <[[Config:ModelFactory|ModelFactory]] type="[[ModelFactory#SplineFactory|SplineFactory]]">
      <Option key="creationFcn" value="@gacreationuniform"/>
      <Option key="crossoverFcn" value="@crossoverheuristic"/>
      <Option key="mutationFcn" value="@mutationadaptfeasible"/>
      <!-- <Option key="creationFcn" value="createInitialPopulation"/>
      <Option key="crossoverFcn" value="crossover"/>
      <Option key="mutationFcn" value="mutation"/> -->

      <Option key="smoothingBounds" value="0,1"/>   
   </[[Config:ModelFactory|ModelFactory]]>
</[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>

splinessim

Build spline models using the Simulated Annealing modelbuilder

<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] type="[[AdaptiveModelBuilder#OptimizerModelBuilder|OptimizerModelBuilder]]" combineOutputs="false">
   <!-- Re-start strategy for resuming the optimization process between sampling iterations.
        One of 'random','continue','model' and 'intelligent' (Default).  See the docs for more information -->
   <Option key="restartStrategy" value="intelligent"/>
   
   <[[Config:Optimizer|Optimizer]] type="[[Optimizer#MatlabSimAnnealing|MatlabSimAnnealing]]">
      <Option key="maxIterations" value="100"/>
      <Option key="maxFunEvals" value="20"/>
   </[[Config:Optimizer|Optimizer]]>
   
   <[[Config:ModelFactory|ModelFactory]] type="[[ModelFactory#SplineFactory|SplineFactory]]">
      <Option key="smoothingBounds" value="0,1"/>      
   </[[Config:ModelFactory|ModelFactory]]>
</[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>

splinesps

Build spline models using the Pattern Search modelbuilder

<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] type="[[AdaptiveModelBuilder#OptimizerModelBuilder|OptimizerModelBuilder]]" combineOutputs="false">
   <!-- Re-start strategy for resuming the optimization process between sampling iterations.
        One of 'random','continue','model' and 'intelligent' (Default).  See the docs for more information -->
   <Option key="restartStrategy" value="intelligent"/>
   
   <[[Config:Optimizer|Optimizer]] type="[[Optimizer#MatlabPatternSearch|MatlabPatternSearch]]">
      <Option key="maxIterations" value="100"/>
      <Option key="maxFunEvals" value="20"/>
      <Option key="searchMethod" value="GPSPositiveBasis2N"/>
      <Option key="pollMethod" value="MADSPositiveBasis2N"/>         
   </[[Config:Optimizer|Optimizer]]>
   
   <[[Config:ModelFactory|ModelFactory]] type="[[ModelFactory#SplineFactory|SplineFactory]]">
      <Option key="smoothingBounds" value="0,1"/>            
   </[[Config:ModelFactory|ModelFactory]]>
</[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>

splinesoptim

Use the Matlab optimization toolbox to build spline models

<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] type="[[AdaptiveModelBuilder#OptimizerModelBuilder|OptimizerModelBuilder]]" combineOutputs="false">
   <!-- Re-start strategy for resuming the optimization process between sampling iterations.
        One of 'random','continue','model' and 'intelligent' (Default).  See the docs for more information -->
   <Option key="restartStrategy" value="intelligent"/>

   <[[Config:Optimizer|Optimizer]] type="[[Optimizer#MatlabOptimizer|MatlabOptimizer]]">
      <Option key="maxIterations" value="100"/>
      <Option key="maxFunEvals" value="20"/>
   </[[Config:Optimizer|Optimizer]]>
   
   <[[Config:ModelFactory|ModelFactory]] type="[[ModelFactory#SplineFactory|SplineFactory]]">
      <Option key="smoothingBounds" value="0,1"/>      
   </[[Config:ModelFactory|ModelFactory]]>
   
</[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>

Interpolation model

ipol

Simple linear/cubic/nearest neighbour interpolation models for scattered data. For one D uses interp1, for nD uses griddata(n)

<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] type="[[AdaptiveModelBuilder#AdaptiveModelBuilder|AdaptiveModelBuilder]]" combineOutputs="false">
        <[[Config:ModelFactory|ModelFactory]] type="[[ModelFactory#InterpolationFactory|InterpolationFactory]]">
      <!--  depending on the input dimension options are: linear, nearest, and cubic
      if you are using Matlab r2009 or later you can also use 'natural' -->
      <Option key="method" value="linear"/>   
        </[[Config:ModelFactory|ModelFactory]]>
    </[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>

Artificial neural networks

ann

Use a custom evolutionary-like strategy to generate ANN models, this is much faster than the GA approach but not necessarily better

<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] type="[[AdaptiveModelBuilder#SequentialModelBuilder|SequentialModelBuilder]]" combineOutputs="false">
   <Option key="maximumRunLength" value="15"/>
   <!-- Degeneration of score if a model gets older -->
   <Option key="decay" value=".99"/>
   <!-- Size of the best model history -->
   <Option key="historySize" value="6"/>
   <!-- One of best, last. When set to best the best `historySize' models are kept,
    - - when set to last, the last `historySize' models are kept -->
   <Option key="strategy" value="best"/>

   <[[Config:ModelFactory|ModelFactory]] type="[[ModelFactory#ANNFactory|ANNFactory]]">
      <!--initial hidden layer dimension-->
      <Option key="initialSize" value="3,3"/>
      <!--comma separated list of allowed learning rules-->
      <Option key="allowedLearningRules" value="trainbr"/>
      <!--performance function to use, empty means use the matlab default-->
      <Option key="performFcn" value=""/>
      <!--how many epochs to train for-->
      <Option key="epochs" value="300"/>
      <!--max time to train for-->
      <Option key="trainingTime" value="Inf"/>
      <!--range of initial random weights-->
      <Option key="initWeightRange" value="-0.8,0.8"/>
      <!--mutation changes x neurons at a time (in a random layer) with x in [lb ub]-->
      <Option key="hiddenUnitDelta" value="-2,3"/>
      <!--train until the error reaches this goal-->
      <Option key="trainingGoal" value="0"/>
      <!--show training progress every x epochs, set to NaN to disable-->
      <Option key="trainingProgress" value="NaN"/>
      <!--How to train the network, one of 'auto' or 'earlyStopping'
         auto: train with early stopping unless regularization is employed
         Set to any other value for simply training on all the data, doing nothing special -->
      <Option key="trainMethod" value="auto"/>
      <!--the training set - validation set - testset ratios-->
      <Option key="earlyStoppingRatios" value="0.80,0.20,0"/>
      <!-- Transfer function to use for all hidden layers and the output layer
      So should be a list of max 2 items -->
      <Option key="transferFunctionTemplate" value="tansig,purelin"/>
   </[[Config:ModelFactory|ModelFactory]]>
</[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>

anngenetic

Use the matlab gads toolbox to select ANN parameters using a GA

<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] type="[[AdaptiveModelBuilder#GeneticModelBuilder|GeneticModelBuilder]]" combineOutputs="false">
   <!-- Re-start strategy for resuming the optimization process between sampling iterations.
        One of 'random','continue','model' and 'intelligent' (Default).  See the docs for more information -->
   <Option key="restartStrategy" value="continue"/>
   <!--See that matlab gads toolbox documentation for more information on the options-->
   <Option key="populationType" value="custom"/>
   <Option key="populationSize" value="10"/>
   <Option key="crossoverFraction" value="0.7"/>
   <Option key="maxGenerations" value="10"/>
   <Option key="eliteCount" value="1"/>
   <Option key="stallGenLimit" value="4"/>
   <Option key="stallTimeLimit" value="Inf"/>
   
   <[[Config:ModelFactory|ModelFactory]] type="[[ModelFactory#ANNFactory|ANNFactory]]">
      <Option key="crossoverFcn" value="crossover"/>
      <Option key="mutationFcn" value="mutation"/>
      <Option key="creationFcn" value="createInitialPopulation"/>
      
      <!--initial hidden layer dimension-->
      <Option key="initialSize" value="3,3"/>
      <!--comma separated list of allowed learning rules-->
      <Option key="allowedLearningRules" value="trainbr"/>
      <!--performance function to use, empty means use the matlab default-->
      <Option key="performFcn" value=""/>
      <!--how many epochs to train for-->
      <Option key="epochs" value="300"/>
      <!--max time to train for-->
      <Option key="trainingTime" value="Inf"/>
      <!--range of initial random weights-->
      <Option key="initWeightRange" value="-0.8,0.8"/>
      <!--mutation changes x neurons at a time (in a random layer) with x in [lb ub]-->
      <Option key="hiddenUnitDelta" value="-2,3"/>
      <!--train until the error reaches this goal-->
      <Option key="trainingGoal" value="0"/>
      <!--show training progress every x epochs, set to NaN to disable-->
      <Option key="trainingProgress" value="NaN"/>
      <!--How to train the network, one of 'auto' or 'earlyStopping'
         auto: train with early stopping unless regularization is employed
         Set to any other value for simply training on all the data, doing nothing special -->
      <Option key="trainMethod" value="auto"/>
      <!--the training set - validation set - testset ratios-->
      <Option key="earlyStoppingRatios" value="0.80,0.20,0"/>
      <!-- Transfer function to use for all hidden layers and the output layer
      So should be a list of max 2 items -->
      <Option key="transferFunctionTemplate" value="tansig,purelin"/>
   </[[Config:ModelFactory|ModelFactory]]>
</[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>

annfixed

Fixed ANN model builder, allows you to choose the hidden layer structure manually Thus there is no optimization algorithm involved.

<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] type="[[AdaptiveModelBuilder#AdaptiveModelBuilder|AdaptiveModelBuilder]]" combineOutputs="false">
   <[[Config:ModelFactory|ModelFactory]] type="[[ModelFactory#ANNFactory|ANNFactory]]">
      <Option key="allowedLearningRules" value="trainbr"/>
      <Option key="initialSize" value="3,3"/>
   </[[Config:ModelFactory|ModelFactory]]>
</[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>

annrandom

Random ANN model builder, usefull as a baseline comparison

<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] type="[[AdaptiveModelBuilder#RandomModelBuilder|RandomModelBuilder]]" combineOutputs="false">
   <!--This many iterations before allowing new samples-->
   <Option key="runSize" value="10"/>
   <[[Config:ModelFactory|ModelFactory]] type="[[ModelFactory#ANNFactory|ANNFactory]]">
      <Option key="allowedLearningRules" value="trainbr,trainlm,trainscg"/>
   </[[Config:ModelFactory|ModelFactory]]>
</[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>

fanngenetic

Use the matlab gads toolbox to select ANN parameters using a GA (based on the FANN library)

<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] type="[[AdaptiveModelBuilder#GeneticModelBuilder|GeneticModelBuilder]]" combineOutputs="false">
   <!-- Re-start strategy for resuming the optimization process between sampling iterations.
        One of 'random','continue','model' and 'intelligent' (Default).  See the docs for more information -->
   <Option key="restartStrategy" value="continue"/>
   <!--See that matlab gads toolbox documentation for more information on the options-->     
   <Option key="populationType" value="custom"/>     
   <Option key="populationSize" value="10"/>     
   <Option key="crossoverFraction" value="0.7"/>     
   <Option key="maxGenerations" value="10"/>     
   <Option key="eliteCount" value="1"/>     
   <Option key="stallGenLimit" value="4"/>     
   <Option key="stallTimeLimit" value="Inf"/>     
   
   <[[Config:ModelFactory|ModelFactory]] type="[[ModelFactory#FANNFactory|FANNFactory]]">     
      <Option key="crossoverFcn" value="crossover"/>     
      <Option key="mutationFcn" value="mutation"/>     
      <Option key="creationFcn" value="createInitialPopulation"/>     
      
      <!--initial hidden layer dimension-->     
      <Option key="initialSize" value="4,4"/>     
      <!--how many epochs to train for-->     
      <Option key="epochs" value="1500"/>     
      <!--range of initial random weights-->     
      <Option key="initWeightRange" value="-0.8,0.8"/>     
      <!--mutation changes x neurons at a time (in a random layer) with x in [lb ub]-->     
      <Option key="hiddenUnitDelta" value="-2,2"/>     
      <!--train until the error reaches this goal-->     
      <Option key="trainingGoal" value="0"/>     
   </[[Config:ModelFactory|ModelFactory]]>     
</[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>

nanngenetic

Use the matlab gads toolbox to select ANN parameters using a GA (based on the NNSYSID library)

<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] type="[[AdaptiveModelBuilder#GeneticModelBuilder|GeneticModelBuilder]]" combineOutputs="false">
   <!-- Re-start strategy for resuming the optimization process between sampling iterations.
        One of 'random','continue','model' and 'intelligent' (Default).  See the docs for more information -->
   <Option key="restartStrategy" value="continue"/>
   <!--See that matlab gads toolbox documentation for more information on the options-->     
   <Option key="populationType" value="custom"/>     
   <Option key="populationSize" value="10"/>     
   <Option key="crossoverFraction" value="0.7"/>     
   <Option key="maxGenerations" value="10"/>     
   <Option key="eliteCount" value="1"/>     
   <Option key="stallGenLimit" value="4"/>     
   <Option key="stallTimeLimit" value="Inf"/>     
   
   <[[Config:ModelFactory|ModelFactory]] type="[[ModelFactory#NANNFactory|NANNFactory]]">     
      <Option key="crossoverFcn" value="crossover"/>     
      <Option key="mutationFcn" value="mutation"/>     
      <Option key="creationFcn" value="createInitialPopulation"/>     
      
      <!--initial hidden layer dimension-->     
      <Option key="initialSize" value="10"/>     
      <!--how many epochs to train for-->     
      <Option key="epochs" value="500"/>     
      <!--range of initial random weights-->     
      <Option key="initWeightRange" value="-0.8,0.8"/>     
      <!--mutation changes x neurons at a time (in a random layer) with x in [lb ub]-->     
      <Option key="hiddenUnitDelta" value="-2,3"/>     
      <!-- pruning techniques used : 0: none, 1: Mag Threshold, 2: Iterative Mag, 3: OBD, 4: OBS -->     
      <Option key="allowedPruneTechniques" value="0,1,2,3,4"/>
      <!-- threshold for magnitude based pruning -->     
      <Option key="threshold" value="0.2"/>     
      <!-- retrain epochs while pruning-->     
      <Option key="retrain" value="50"/>     
   </[[Config:ModelFactory|ModelFactory]]>     
</[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>

rbfnngenetic

Genetic model builder for Radial Basis Function Neural networks

<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] type="[[AdaptiveModelBuilder#GeneticModelBuilder|GeneticModelBuilder]]" combineOutputs="false">
   <!-- Re-start strategy for resuming the optimization process between sampling iterations.
        One of 'random','continue','model' and 'intelligent' (Default).  See the docs for more information -->
   <Option key="restartStrategy" value="intelligent"/>
   <Option key="populationType" value="doubleVector"/>
   <Option key="populationSize" value="10"/>
   <Option key="maxGenerations" value="10"/>
   <Option key="eliteCount" value="1"/>
   <Option key="crossoverFraction" value="0.7"/>
   <Option key="stallGenLimit" value="4"/>
   <Option key="stallTimeLimit" value="Inf"/>
   
   <[[Config:ModelFactory|ModelFactory]] type="[[ModelFactory#RBFNNFactory|RBFNNFactory]]">
      <Option key="creationFcn" value="@gacreationuniform"/>
      <Option key="crossoverFcn" value="@crossoverheuristic"/>
      <Option key="mutationFcn" value="@mutationadaptfeasible"/>
    <!--      <Option key="creationFcn" value="createInitialPopulation"/>
      <Option key="crossoverFcn" value="crossover"/>
      <Option key="mutationFcn" value="mutation"/> -->
      
      <!--Error goal when constructing the network-->
      <Option key="goal" value="0"/>
      <!--Initial value for the spread -->
      <Option key="spread" value="1"/>
      <!--Spread bounds -->
      <Option key="spreadBounds" value="0.0001,30"/>
      <!--Maximum number of neurons to use per network-->
      <Option key="maxNeurons" value="500"/>
      <Option key="trainingProgress" value="Inf"/>
   </[[Config:ModelFactory|ModelFactory]]>
</[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>

rbfnnps

Build Radial Basis Function Neural networks using Pattern Search

<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] type="[[AdaptiveModelBuilder#OptimizerModelBuilder|OptimizerModelBuilder]]" combineOutputs="false">
   <!-- Re-start strategy for resuming the optimization process between sampling iterations.
        One of 'random','continue','model' and 'intelligent' (Default).  See the docs for more information -->
   <Option key="restartStrategy" value="intelligent"/>
   
   <[[Config:Optimizer|Optimizer]] type="[[Optimizer#MatlabPatternSearch|MatlabPatternSearch]]">
      <Option key="maxIterations" value="100"/>
      <Option key="maxFunEvals" value="20"/>
      <Option key="searchMethod" value="GPSPositiveBasis2N"/>
      <Option key="pollMethod" value="MADSPositiveBasis2N"/>         
   </[[Config:Optimizer|Optimizer]]>

   <[[Config:ModelFactory|ModelFactory]] type="[[ModelFactory#RBFNNFactory|RBFNNFactory]]">
      <!--Error goal when constructing the network-->
      <Option key="goal" value="0"/>
      <!--Initial value for the spread -->
      <Option key="spread" value="1"/>
      <!--Spread bounds -->
      <Option key="spreadBounds" value="0.0001,30"/>
      <!--Maximum number of neurons to use per network-->
      <Option key="maxNeurons" value="500"/>
      <Option key="trainingProgress" value="Inf"/>
   </[[Config:ModelFactory|ModelFactory]]>
</[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>

rbfnnsim

Build Radial Basis Function Neural networks using Simulated Annealing

<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] type="[[AdaptiveModelBuilder#OptimizerModelBuilder|OptimizerModelBuilder]]" combineOutputs="false">
   <!-- Re-start strategy for resuming the optimization process between sampling iterations.
        One of 'random','continue','model' and 'intelligent' (Default).  See the docs for more information -->
   <Option key="restartStrategy" value="intelligent"/>
   
   <[[Config:Optimizer|Optimizer]] type="[[Optimizer#MatlabSimAnnealing|MatlabSimAnnealing]]">
      <Option key="maxIterations" value="100"/>
      <Option key="maxFunEvals" value="20"/>
   </[[Config:Optimizer|Optimizer]]>
   
   <[[Config:ModelFactory|ModelFactory]] type="[[ModelFactory#RBFNNFactory|RBFNNFactory]]">
      <!--Error goal when constructing the network-->
      <Option key="goal" value="0"/>
      <!--Initial value for the spread -->
      <Option key="spread" value="1"/>
      <!--Spread bounds -->
      <Option key="spreadBounds" value="0.0001,30"/>
      <!--Maximum number of neurons to use per network-->
      <Option key="maxNeurons" value="500"/>
      <Option key="trainingProgress" value="Inf"/>
   </[[Config:ModelFactory|ModelFactory]]>
</[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>

Support vector machines

lssvmgenetic

Use the matlab gads toolbox to select LSSVM parameters using a GA (based on LSSVM-lab)

<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] type="[[AdaptiveModelBuilder#GeneticModelBuilder|GeneticModelBuilder]]" combineOutputs="false">
   <!-- Re-start strategy for resuming the optimization process between sampling iterations.
        One of 'random','continue','model' and 'intelligent' (Default).  See the docs for more information -->
   <Option key="restartStrategy" value="intelligent"/>
   <!-- Plot the optimization surface, visualizes the search through the parameter space (2D only) -->
   <Option key="plotOptimSurface" value="false"/>
   <Option key="populationType" value="doubleVector"/>
   <Option key="populationSize" value="10"/>
   <Option key="maxGenerations" value="10"/>
   <Option key="eliteCount" value="1"/>
   <Option key="crossoverFraction" value="0.7"/>
   <Option key="stallGenLimit" value="4"/>
   <Option key="stallTimeLimit" value="Inf"/>
   
   <[[Config:ModelFactory|ModelFactory]] type="[[ModelFactory#SVMFactory|SVMFactory]]">
      <Option key="creationFcn" value="@gacreationuniform"/>
      <Option key="crossoverFcn" value="@crossoverheuristic"/>
      <Option key="mutationFcn" value="@mutationadaptfeasible"/>
      <!-- <Option key="creationFcn" value="createInitialPopulation"/>
      <Option key="crossoverFcn" value="crossover"/>
      <Option key="mutationFcn" value="mutation"/> -->
      
      <Option key="backend" value="lssvm"/>
      <Option key="kernel" value="rbf"/>
      <Option key="kernelParamBounds" value="-2,2"/>
      <Option key="regParamBounds" value="-5,5"/>
   </[[Config:ModelFactory|ModelFactory]]>
</[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>

lssvmps

Use the matlab gads toolbox to select LSSVM parameters using Pattern Search

<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] type="[[AdaptiveModelBuilder#OptimizerModelBuilder|OptimizerModelBuilder]]" combineOutputs="false">
   <!-- Re-start strategy for resuming the optimization process between sampling iterations.
        One of 'random','continue','model' and 'intelligent' (Default).  See the docs for more information -->
   <Option key="restartStrategy" value="intelligent"/>
   <!-- Plot the optimization surface, visualizes the search through the parameter space (2D only) -->
   <Option key="plotOptimSurface" value="false"/>
   
   <!--See that matlab gads toolbox documentation for more information on the options-->      
   <[[Config:Optimizer|Optimizer]] type="[[Optimizer#MatlabPatternSearch|MatlabPatternSearch]]">
      <Option key="maxIterations" value="100"/>
      <Option key="maxFunEvals" value="20"/>
      <Option key="searchMethod" value="GPSPositiveBasis2N"/>
      <Option key="pollMethod" value="MADSPositiveBasis2N"/>         
   </[[Config:Optimizer|Optimizer]]>
   
   <[[Config:ModelFactory|ModelFactory]] type="[[ModelFactory#SVMFactory|SVMFactory]]">
      <Option key="backend" value="lssvm"/>
      <Option key="kernel" value="rbf"/>
      <Option key="kernelParamBounds" value="-2,2"/>
      <Option key="regParamBounds" value="-5,5"/>
   </[[Config:ModelFactory|ModelFactory]]>
</[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>

lssvmoptim

Use the matlab optimization toolbox to select LSSVM parameters

<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] type="[[AdaptiveModelBuilder#OptimizerModelBuilder|OptimizerModelBuilder]]" combineOutputs="false">
   <!-- Re-start strategy for resuming the optimization process between sampling iterations.
        One of 'random','continue','model' and 'intelligent' (Default).  See the docs for more information -->
   <Option key="restartStrategy" value="intelligent"/>
   <!-- Plot the optimization surface, visualizes the search through the parameter space (2D only) -->
   <Option key="plotOptimSurface" value="false"/>
   <!--See the interface matlab file and the optimization toolbox documentation for more information on the options-->
   <[[Config:Optimizer|Optimizer]] type="[[Optimizer#MatlabOptimizer|MatlabOptimizer]]">
      <Option key="maxIterations" value="100"/>
      <Option key="maxFunEvals" value="20"/>
   </[[Config:Optimizer|Optimizer]]>

   <[[Config:ModelFactory|ModelFactory]] type="[[ModelFactory#SVMFactory|SVMFactory]]">
      <Option key="backend" value="lssvm"/>
      <Option key="kernel" value="rbf"/>
      <Option key="kernelParamBounds" value="-2,2"/>
      <Option key="regParamBounds" value="-5,5"/>
   </[[Config:ModelFactory|ModelFactory]]>
</[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>

lssvmpso

Use the PSO toolbox to select LSSVM parameters using Particle Swarm Optimization

<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] type="[[AdaptiveModelBuilder#OptimizerModelBuilder|OptimizerModelBuilder]]" combineOutputs="false">
   <!-- Re-start strategy for resuming the optimization process between sampling iterations.
        One of 'random','continue','model' and 'intelligent' (Default).  See the docs for more information -->
   <Option key="restartStrategy" value="intelligent"/>
   <!-- Plot the optimization surface, visualizes the search through the parameter space (2D only) -->
   <Option key="plotOptimSurface" value="false"/>
      
   <[[Config:Optimizer|Optimizer]] type="[[Optimizer#PSOtOptimizer|PSOtOptimizer]]">
      <Option key="typePSO" value="0"/>
      <Option key="seedPSO" value="1"/>
      <Option key="popSize" value="10"/>
      <Option key="maxiters" value="10"/>
      <Option key="epochInertia" value="8"/>
      <Option key="gradientTermination" value="8"/>
   </[[Config:Optimizer|Optimizer]]>
   
   <[[Config:ModelFactory|ModelFactory]] type="[[ModelFactory#SVMFactory|SVMFactory]]">
      <Option key="backend" value="lssvm"/>
      <Option key="kernel" value="rbf"/>
      <Option key="kernelParamBounds" value="-2,2"/>
      <Option key="regParamBounds" value="-5,5"/>
   </[[Config:ModelFactory|ModelFactory]]>
</[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>

lssvmsim

Use the matlab gads toolbox to select LSSVM parameters using simulated annealing

<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] type="[[AdaptiveModelBuilder#OptimizerModelBuilder|OptimizerModelBuilder]]" combineOutputs="false">
   <!-- Re-start strategy for resuming the optimization process between sampling iterations.
        One of 'random','continue','model' and 'intelligent' (Default).  See the docs for more information -->
   <Option key="restartStrategy" value="intelligent"/>
   <!-- Plot the optimization surface, visualizes the search through the parameter space (2D only) -->
   <Option key="plotOptimSurface" value="false"/>
   <!--See the interface matlab file and the gads toolbox documentation for more information on the options-->
   <[[Config:Optimizer|Optimizer]] type="[[Optimizer#MatlabSimAnnealing|MatlabSimAnnealing]]">
      <Option key="maxIterations" value="100"/>
      <Option key="maxFunEvals" value="20"/>
   </[[Config:Optimizer|Optimizer]]>
   
   <[[Config:ModelFactory|ModelFactory]] type="[[ModelFactory#SVMFactory|SVMFactory]]">
      <Option key="backend" value="lssvm"/>
      <Option key="kernel" value="rbf"/>
      <Option key="kernelParamBounds" value="-2,2"/>
      <Option key="regParamBounds" value="-5,5"/>
   </[[Config:ModelFactory|ModelFactory]]>
</[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>

lssvmdirect

Use the DIviding RECtangles algorithm to optimize the LS-SVM hyperparameters

<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] type="[[AdaptiveModelBuilder#OptimizerModelBuilder|OptimizerModelBuilder]]" combineOutputs="false">
   <!-- Re-start strategy for resuming the optimization process between sampling iterations.
        One of 'random','continue','model' and 'intelligent' (Default).  See the docs for more information -->
   <Option key="restartStrategy" value="intelligent"/>
   <!-- Plot the optimization surface, visualizes the search through the parameter space (2D only) -->
   <Option key="plotOptimSurface" value="false"/>
   
   <[[Config:Optimizer|Optimizer]] type="[[Optimizer#DirectOptimizer|DirectOptimizer]]">
      <Option key="maxits" value="100"/>
      <Option key="maxevals" value="20"/>
   </[[Config:Optimizer|Optimizer]]>
   
   <[[Config:ModelFactory|ModelFactory]] type="[[ModelFactory#SVMFactory|SVMFactory]]">
      <Option key="backend" value="lssvm"/>
      <Option key="kernel" value="rbf"/>
      <Option key="kernelParamBounds" value="-2,2"/>
      <Option key="regParamBounds" value="-5,5"/>
   </[[Config:ModelFactory|ModelFactory]]>
</[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>

lssvmego

Generate LS-SVM models using Efficient Global Optimization (EGO). This means internally a kriging model is constructed to predict where one can expect to find good model parameters

<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] type="[[AdaptiveModelBuilder#EGOModelBuilder|EGOModelBuilder]]" combineOutputs="false">
   <Option key="numIterations" value="10"/>
   <Option key="initPopSize" value="5"/>
   <Option key="restartStrategy" value="continue"/>
   
   <[[Config:ModelFactory|ModelFactory]] type="[[ModelFactory#SVMFactory|SVMFactory]]">
      <Option key="backend" value="lssvm"/>
      <Option key="kernel" value="rbf"/>
      <Option key="kernelParamBounds" value="-4,4"/>
      <Option key="regParamBounds" value="-5,5"/>
   </[[Config:ModelFactory|ModelFactory]]>
   
   <!-- Optimizer for the internal kriging model -->
   <[[Config:Optimizer|Optimizer]]>fminconWithDerivatives</[[Config:Optimizer|Optimizer]]>
   
   <!-- Sampleselector to use -->
   <[[Config:SampleSelector|SampleSelector]]>expectedImprovement</[[Config:SampleSelector|SampleSelector]]>
</[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>

lssvmrandom

Generate random LSSVM models, useful as a baseline comparison

<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] type="[[AdaptiveModelBuilder#RandomModelBuilder|RandomModelBuilder]]" combineOutputs="false">
   <!-- Plot the optimization surface, visualizes the search through the parameter space (2D only) -->
   <Option key="plotOptimSurface" value="false"/>
   
   <Option key="runSize" value="20"/>
   
   <[[Config:ModelFactory|ModelFactory]] type="[[ModelFactory#SVMFactory|SVMFactory]]">
      <Option key="backend" value="lssvm"/>
      <Option key="kernel" value="rbf"/>
      <Option key="kernelParamBounds" value="-2,2"/>
      <Option key="regParamBounds" value="-5,5"/>
   </[[Config:ModelFactory|ModelFactory]]>
</[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>

svmgenetic

Use the matlab gads toolbox to select SVM parameters using a GA (based on libsvm)

<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] type="[[AdaptiveModelBuilder#GeneticModelBuilder|GeneticModelBuilder]]" combineOutputs="false">
   <!-- Re-start strategy for resuming the optimization process between sampling iterations.
        One of 'random','continue','model' and 'intelligent' (Default).  See the docs for more information -->
   <Option key="restartStrategy" value="intelligent"/>
   <!-- Plot the optimization surface, visualizes the search through the parameter space (2D only) -->
   <Option key="plotOptimSurface" value="false"/>
   <!--See the interface matlab file and the gads toolbox documentation for more information on the options-->
   <Option key="populationType" value="doubleVector"/>
   <Option key="populationSize" value="10"/>
   <Option key="maxGenerations" value="10"/>
   <Option key="eliteCount" value="1"/>
   <Option key="crossoverFraction" value="0.7"/>
   <Option key="stallGenLimit" value="4"/>
   <Option key="stallTimeLimit" value="Inf"/>
   
   <[[Config:ModelFactory|ModelFactory]] type="[[ModelFactory#SVMFactory|SVMFactory]]">
      <Option key="creationFcn" value="@gacreationuniform"/>
      <Option key="crossoverFcn" value="@crossoverheuristic"/>
      <Option key="mutationFcn" value="@mutationadaptfeasible"/>
      <!-- <Option key="creationFcn" value="createInitialPopulation"/>
      <Option key="crossoverFcn" value="crossover"/>
      <Option key="mutationFcn" value="mutation"/>-->
      
      <Option key="backend" value="libSVM"/>
      <Option key="type" value="epsilon-SVR"/>
      <Option key="kernel" value="rbf"/>
      <Option key="kernelParamBounds" value="-4,4"/>
      <Option key="regParamBounds" value="-5,5"/>
      <Option key="nu" value="0.01"/>
      <Option key="epsilon" value="0"/>
      <Option key="stoppingTolerance" value="1e-6"/>
   </[[Config:ModelFactory|ModelFactory]]>
</[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>

svmps

Use the matlab gads toolbox to select SVM parameters using Pattern Search

<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] type="[[AdaptiveModelBuilder#OptimizerModelBuilder|OptimizerModelBuilder]]" combineOutputs="false">
   <!-- Re-start strategy for resuming the optimization process between sampling iterations.
        One of 'random','continue','model' and 'intelligent' (Default).  See the docs for more information -->
   <Option key="restartStrategy" value="intelligent"/>
   <!-- Plot the optimization surface, visualizes the search through the parameter space (2D only) -->
   <Option key="plotOptimSurface" value="false"/>
   
   <!--See the interface matlab file and the gads toolbox documentation for more information on the options-->
   <[[Config:Optimizer|Optimizer]] type="[[Optimizer#MatlabPatternSearch|MatlabPatternSearch]]">
      <Option key="maxIterations" value="100"/>
      <Option key="maxFunEvals" value="20"/>
      <Option key="searchMethod" value="GPSPositiveBasis2N"/>
      <Option key="pollMethod" value="MADSPositiveBasis2N"/>         
   </[[Config:Optimizer|Optimizer]]>

   <[[Config:ModelFactory|ModelFactory]] type="[[ModelFactory#SVMFactory|SVMFactory]]">
      <Option key="backend" value="libSVM"/>
      <Option key="type" value="epsilon-SVR"/>
      <Option key="kernel" value="rbf"/>
      <Option key="kernelParamBounds" value="-2,2"/>
      <Option key="regParamBounds" value="-5,5"/>
      <Option key="nu" value="0.01"/>
      <Option key="epsilon" value="0"/>
      <Option key="stoppingTolerance" value="1e-6"/>
   </[[Config:ModelFactory|ModelFactory]]>
</[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>

svmsim

Use the matlab gads toolbox to select SVM parameters using simulated annealing

<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] type="[[AdaptiveModelBuilder#OptimizerModelBuilder|OptimizerModelBuilder]]" combineOutputs="false">
   <!-- Re-start strategy for resuming the optimization process between sampling iterations.
        One of 'random','continue','model' and 'intelligent' (Default).  See the docs for more information -->
   <Option key="restartStrategy" value="intelligent"/>
   <!-- Plot the optimization surface, visualizes the search through the parameter space (2D only) -->
   <Option key="plotOptimSurface" value="false"/>
   <!--See the interface matlab file and the gads toolbox documentation for more information on the options-->      
   <[[Config:Optimizer|Optimizer]] type="[[Optimizer#MatlabSimAnnealing|MatlabSimAnnealing]]">
      <Option key="maxIterations" value="100"/>
      <Option key="maxFunEvals" value="20"/>
   </[[Config:Optimizer|Optimizer]]>
   
   <[[Config:ModelFactory|ModelFactory]] type="[[ModelFactory#SVMFactory|SVMFactory]]">
      <Option key="backend" value="libSVM"/>
      <Option key="type" value="epsilon-SVR"/>
      <Option key="kernel" value="rbf"/>
      <Option key="kernelParamBounds" value="-2,2"/>
      <Option key="regParamBounds" value="-5,5"/>
      <Option key="nu" value="0.01"/>
      <Option key="epsilon" value="0"/>
      <Option key="stoppingTolerance" value="1e-6"/>
   </[[Config:ModelFactory|ModelFactory]]>
</[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>

svmoptim

Use the matlab optimization toolbox to select SVM parameters

<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] type="[[AdaptiveModelBuilder#OptimizerModelBuilder|OptimizerModelBuilder]]" combineOutputs="false">
   <!-- Re-start strategy for resuming the optimization process between sampling iterations.
        One of 'random','continue','model' and 'intelligent' (Default).  See the docs for more information -->
   <Option key="restartStrategy" value="intelligent"/>
   <!-- Plot the optimization surface, visualizes the search through the parameter space (2D only) -->
   <Option key="plotOptimSurface" value="false"/>
   <!--See the interface matlab file and the optimization toolbox documentation for more
      information on the options-->
   <[[Config:Optimizer|Optimizer]] type="[[Optimizer#MatlabOptimizer|MatlabOptimizer]]">
      <Option key="maxIterations" value="100"/>
      <Option key="maxFunEvals" value="20"/>
   </[[Config:Optimizer|Optimizer]]>
   
   <[[Config:ModelFactory|ModelFactory]] type="[[ModelFactory#SVMFactory|SVMFactory]]">
      <Option key="backend" value="libSVM"/>
      <Option key="type" value="epsilon-SVR"/>
      <Option key="kernel" value="rbf"/>
      <Option key="kernelParamBounds" value="-2,2"/>
      <Option key="regParamBounds" value="-5,5"/>
      <Option key="nu" value="0.01"/>
      <Option key="epsilon" value="0"/>
      <Option key="stoppingTolerance" value="1e-6"/>
   </[[Config:ModelFactory|ModelFactory]]>
</[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>

svmpso

Use the PSO toolbox to select SVM parameters using Particle Swarm Optimization

<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] type="[[AdaptiveModelBuilder#OptimizerModelBuilder|OptimizerModelBuilder]]" combineOutputs="false">
   <!-- Re-start strategy for resuming the optimization process between sampling iterations.
        One of 'random','continue','model' and 'intelligent' (Default).  See the docs for more information -->
   <Option key="restartStrategy" value="intelligent"/>
   <!-- Plot the optimization surface, visualizes the search through the parameter space (2D only) -->
   <Option key="plotOptimSurface" value="false"/>
   
   <[[Config:Optimizer|Optimizer]] type="[[Optimizer#PSOtOptimizer|PSOtOptimizer]]">
      <Option key="typePSO" value="0"/>
      <Option key="seedPSO" value="1"/>
      <Option key="popSize" value="10"/>
      <Option key="maxiters" value="10"/>
      <Option key="epochInertia" value="8"/>
      <Option key="gradientTermination" value="8"/>
   </[[Config:Optimizer|Optimizer]]>
   
   <[[Config:ModelFactory|ModelFactory]] type="[[ModelFactory#SVMFactory|SVMFactory]]">
      <Option key="backend" value="libSVM"/>
      <Option key="type" value="epsilon-SVR"/>
      <Option key="kernel" value="rbf"/>
      <Option key="kernelParamBounds" value="-2,2"/>
      <Option key="regParamBounds" value="-5,5"/>
      <Option key="nu" value="0.01"/>
      <Option key="epsilon" value="0"/>
      <Option key="stoppingTolerance" value="1e-6"/>
   </[[Config:ModelFactory|ModelFactory]]>
</[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>

svmdirect

Use the DIviding RECtangles algorithm to optimize the SVM hyperparameters

<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] type="[[AdaptiveModelBuilder#OptimizerModelBuilder|OptimizerModelBuilder]]" combineOutputs="false">
   <!-- Re-start strategy for resuming the optimization process between sampling iterations.
        One of 'random','continue','model' and 'intelligent' (Default).  See the docs for more information -->
   <Option key="restartStrategy" value="intelligent"/>
   <!-- Plot the optimization surface, visualizes the search through the parameter space (2D only) -->
   <Option key="plotOptimSurface" value="false"/>
   
   <[[Config:Optimizer|Optimizer]] type="[[Optimizer#DirectOptimizer|DirectOptimizer]]">
      <Option key="maxits" value="100"/>
      <Option key="maxevals" value="20"/>
   </[[Config:Optimizer|Optimizer]]>
   
   <[[Config:ModelFactory|ModelFactory]] type="[[ModelFactory#SVMFactory|SVMFactory]]">
      <Option key="backend" value="libSVM"/>
      <Option key="type" value="epsilon-SVR"/>
      <Option key="kernel" value="rbf"/>
      <Option key="kernelParamBounds" value="-2,2"/>
      <Option key="regParamBounds" value="-5,5"/>
      <Option key="nu" value="0.01"/>
      <Option key="epsilon" value="0"/>
      <Option key="stoppingTolerance" value="1e-6"/>
   </[[Config:ModelFactory|ModelFactory]]>
</[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>

svmrandom

Generate random SVMs, useful as a baseline comparison

<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] type="[[AdaptiveModelBuilder#RandomModelBuilder|RandomModelBuilder]]" combineOutputs="false">
   <!-- Plot the optimization surface, visualizes the search through the parameter space (2D only) -->
   <Option key="plotOptimSurface" value="false"/>
   
   <Option key="runSize" value="20"/>
   
   <[[Config:ModelFactory|ModelFactory]] type="[[ModelFactory#SVMFactory|SVMFactory]]">
      <Option key="backend" value="libSVM"/>
      <Option key="type" value="epsilon-SVR"/>
      <Option key="kernel" value="rbf"/>
      <Option key="kernelParamBounds" value="-2,2"/>
      <Option key="regParamBounds" value="-5,5"/>
      <Option key="nu" value="0.01"/>
      <Option key="epsilon" value="0"/>
      <Option key="stoppingTolerance" value="1e-6"/>
   </[[Config:ModelFactory|ModelFactory]]>
</[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>


Ensemble and heterogenetic models

heterogenetic

A heterogeneous genetic model builder. Uses a genetic algorithm with speciation (island model) to evolve different model types together. The models types compete against each other until the best model prevails. So this model builder is a way to automatically select the best model type.

<[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]] type="[[AdaptiveModelBuilder#GeneticModelBuilder|GeneticModelBuilder]]" combineOutputs="false">
   <Option key="restartStrategy" value="continue"/>
   <Option key="populationType" value="custom"/>
   <!-- the population size must match the number of model interfaces minus 1 -->
   <Option key="populationSize" value="10,10,10"/>
   <Option key="maxGenerations" value="10"/>
   <Option key="crossoverFraction" value="0.7"/> 
   <Option key="eliteCount" value="1"/>
   <Option key="stallGenLimit" value="4"/>
   <Option key="stallTimeLimit" value="Inf"/>
   <Option key="migrationDirection" value="forward"/>
   <Option key="migrationFraction" value="0.1"/>
   <Option key="migrationInterval" value="4"/>
   <!-- Do we want to prevent any model type going completely extinct -->
   <Option key="extinctionPrevention" value="yes"/>   

   <[[Config:ModelFactory|ModelFactory]] type="[[ModelFactory#HeterogeneousFactory|HeterogeneousFactory]]">
      <Option key="creationFcn" value="createInitialPopulation"/>
      <Option key="crossoverFcn" value="crossover"/>
      <Option key="mutationFcn" value="mutation"/>
      
      <[[Config:ModelFactory|ModelFactory]] type="[[ModelFactory#EnsembleFactory|EnsembleFactory]]">
         <Option key="crossoverFcn" value="crossover"/>
         <Option key="mutationFcn" value="mutation"/>
         <!-- the maximum ensemble size -->
         <Option key="maxSize" value="4"/>
         <!-- Ensemble members should differ this much percent -->
         <Option key="equalityThreshold" value="0.05"/>
      </[[Config:ModelFactory|ModelFactory]]>

      <[[Config:ModelFactory|ModelFactory]] type="[[ModelFactory#SVMFactory|SVMFactory]]">
         <Option key="creationFcn" value="createInitialPopulation"/>
         <Option key="crossoverFcn" value="crossover"/>
         <Option key="mutationFcn" value="mutation"/>
         
         <Option key="backend" value="lssvm"/>
         <Option key="kernel" value="rbf"/>
         <Option key="kernelParamBounds" value="-2,2"/>
         <Option key="regParamBounds" value="-5,5"/>
      </[[Config:ModelFactory|ModelFactory]]>
      
      <[[Config:ModelFactory|ModelFactory]] type="[[ModelFactory#RationalFactory|RationalFactory]]">
         <Option key="crossoverFcn" value="crossover"/>
         <Option key="mutationFcn" value="mutation"/>
         <Option key="creationFcn" value="createInitialPopulation"/>
         <Option key="weightBounds" value="1,40"/>
         <Option key="percentBounds" value="1,100"/>
         <Option key="percentRational" value="70"/>
         <Option key="frequencyVariable" value="off"/>
         <Option key="basis" value="power"/>
      </[[Config:ModelFactory|ModelFactory]]>

      <[[Config:ModelFactory|ModelFactory]] type="[[ModelFactory#BFFactory|BFFactory]]">
         <Option key="type" value="RBF"/>

         <Option key="crossoverFcn" value="crossover"/>
         <Option key="mutationFcn" value="mutation"/>
         <Option key="creationFcn" value="createInitialPopulation"/>
         
         <[[Config:BasisFunction|BasisFunction]] name="gaussian" min=".1" max="5" scale="ln"/>
         <[[Config:BasisFunction|BasisFunction]] name="multiquadric" min=".1" max="5" scale="ln"/>
         <[[Config:BasisFunction|BasisFunction]] name="exponential" min=".1,.5" max="5,2" scale="ln,lin"/>
         
         <Option key="regression" value="-1,0,1,2"/>
         <Option key="backend" value="Direct"/>
      </[[Config:ModelFactory|ModelFactory]]>         
   </[[Config:ModelFactory|ModelFactory]]>
</[[Config:AdaptiveModelBuilder|AdaptiveModelBuilder]]>