Commit ce9545cf authored by Romain Reuillon's avatar Romain Reuillon
Browse files

[Doc] enh: document OSE and fix PSE code test

parent 8a37c90a
......@@ -225,7 +225,7 @@ object DocumentationPages {
lazy val container = DocumentationPage.fromScalatex(name = "Linux Executable", content = scalatex.documentation.embed.Container)
// Explore
def explorePages = pageNode(explore, Vector(samplings, calibration, sensitivity, profile, pse))
def explorePages = pageNode(explore, Vector(samplings, calibration, sensitivity, profile, pse, ose))
lazy val explore = DocumentationPage.fromScalatex(name = "Explore", content = scalatex.documentation.explore.Explore, title = Some("Explore Your Model"))
......@@ -248,6 +248,7 @@ object DocumentationPages {
lazy val sensitivity = DocumentationPage.fromScalatex(name = "Sensitivity", content = scalatex.documentation.explore.Sensitivity, title = Some("Stastistical Sensitivity Analysis"))
lazy val profile = DocumentationPage.fromScalatex(name = "Profile", content = scalatex.documentation.explore.Profile)
lazy val pse = DocumentationPage.fromScalatex(name = "PSE", content = scalatex.documentation.explore.PSE, title = Some("Pattern Space Exploration"))
lazy val ose = DocumentationPage.fromScalatex(name = "OSE", content = scalatex.documentation.explore.OSE, title = Some("Origin Space Exploration"))
// Scale
def scalePages = pageNode(scale, Vector(multithread, ssh, cluster, egi))
......
@import org.openmole.site.tools._
@import org.openmole.site._
@import org.openmole.site.stylesheet._
@import DocumentationPages._
@h2{OSE description}
The Origin Space Exploration (OSE) method is used to @b{explore the multiples antecedents of a pattern}. Input parameter values which produce a given pattern are selected. OSE optimize the fitness and when it founds solutions that are good enough it keep them and blacklist the part of the inputs space containing these solution. The optimization process keep going in order to find multiple solution producing the pattern.
@h3{Exemple}
Here is a use example of the OSE method in an OpenMOLE script:
@br@br
@hl.openmole("""
// Seed declaration for random number generation
val myseed = Val[Int]
val param1 = Val[Double]
val param2 = Val[Double]
val output1 = Val[Double]
val output2 = Val[Double]
// PSE method
OSEEvolution(
evaluation = modelTask,
parallelism = 10,
termination = 100,
origin = Seq(
param1 in (0.0 to 1.0 by 0.1),
param2 in (-10.0 to 10.0 by 1.0)),
objectives = Seq(
output1 under 5.0,
output2 under 50.0),
stochastic = Stochastic(seed = myseed)
) hook (workDirectory / "results", frequency = 100)
""", name = "OSE", header = "val modelTask = EmptyTask()")
@i{origin} describes the discrete space of possible origins. Each cell is considered a potential origin. @i{objectives} describe the pattern to reach with inequalities. The sought patten is considered as reached when all the objective are under their threshold value. In this example OSE computes a maximal diversity of inputs for which all the outputs are under their respective threshold values.
\ No newline at end of file
......@@ -83,7 +83,12 @@ Here is a use example of the PSE method in an OpenMOLE script:
@hl.openmole("""
// Seed declaration for random number generation
val myseed =Val[Int]
val myseed = Val[Int]
val param1 = Val[Double]
val param2 = Val[Double]
val output1 = Val[Double]
val output2 = Val[Double]
// PSE method
PSEEvolution(
......@@ -98,7 +103,7 @@ PSEEvolution(
output2 in (0.0 to 4000.0 by 50.0)),
stochastic = Stochastic(seed = myseed)
) hook (workDirectory / "results", frequency = 100)
""", name = "PSE")
""", name = "PSE", header = "val modelTask = EmptyTask()")
@br
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment