soga
- pydantic model dakota.spec.method.soga.SogaSelection
Generated model for SogaSelection
Show JSON schema
{ "title": "SogaSelection", "description": "Generated model for SogaSelection", "type": "object", "properties": { "soga": { "$ref": "#/$defs/SogaConfig", "x-materialization": [ { "ir_key": "method.algorithm", "ir_value_type": "unsigned short", "storage_type": "PRESENCE_ENUM", "stored_value": "SOGA" } ] } }, "$defs": { "AverageFitnessTracker": { "additionalProperties": false, "description": "Tracks the average fitness of the population", "properties": { "average_fitness_tracker": { "$ref": "#/$defs/AverageFitnessTrackerConfig", "x-materialization": [ { "ir_key": "method.jega.convergence_type", "ir_value_type": "String", "storage_type": "PRESENCE_LITERAL", "stored_value": "average_fitness_tracker" } ] } }, "required": [ "average_fitness_tracker" ], "title": "AverageFitnessTracker", "type": "object" }, "AverageFitnessTrackerConfig": { "additionalProperties": false, "description": "Tracks the average fitness of the population", "properties": { "percent_change": { "default": -1.7976931348623157e+308, "description": "Define the convergence criterion for JEGA methods", "minimum": 0, "title": "Percent Change", "type": "number", "x-materialization": [ { "ir_key": "method.convergence_tolerance", "ir_value_type": "Real", "storage_type": "DIRECT_VALUE" }, { "ir_key": "method.jega.percent_change", "ir_value_type": "Real", "storage_type": "DIRECT_VALUE" } ] }, "num_generations": { "default": 15, "description": "Define the convergence criterion for JEGA methods", "minimum": 0, "title": "Num Generations", "type": "integer", "x-materialization": [ { "ir_key": "method.jega.num_generations", "ir_value_type": "size_t", "storage_type": "DIRECT_VALUE" } ] } }, "title": "AverageFitnessTrackerConfig", "type": "object" }, "BestFitnessTracker": { "additionalProperties": false, "description": "Tracks the best fitness of the population", "properties": { "best_fitness_tracker": { "$ref": "#/$defs/BestFitnessTrackerConfig", "x-materialization": [ { "ir_key": "method.jega.convergence_type", "ir_value_type": "String", "storage_type": "PRESENCE_LITERAL", "stored_value": "best_fitness_tracker" } ] } }, "required": [ "best_fitness_tracker" ], "title": "BestFitnessTracker", "type": "object" }, "BestFitnessTrackerConfig": { "additionalProperties": false, "description": "Tracks the best fitness of the population", "properties": { "percent_change": { "default": -1.7976931348623157e+308, "description": "Define the convergence criterion for JEGA methods", "minimum": 0, "title": "Percent Change", "type": "number", "x-materialization": [ { "ir_key": "method.convergence_tolerance", "ir_value_type": "Real", "storage_type": "DIRECT_VALUE" }, { "ir_key": "method.jega.percent_change", "ir_value_type": "Real", "storage_type": "DIRECT_VALUE" } ] }, "num_generations": { "default": 15, "description": "Define the convergence criterion for JEGA methods", "minimum": 0, "title": "Num Generations", "type": "integer", "x-materialization": [ { "ir_key": "method.jega.num_generations", "ir_value_type": "size_t", "storage_type": "DIRECT_VALUE" } ] } }, "title": "BestFitnessTrackerConfig", "type": "object" }, "BitRandom": { "additionalProperties": false, "description": "Mutate by flipping a random bit", "properties": { "bit_random": { "const": true, "default": true, "description": "Mutate by flipping a random bit", "title": "Bit Random", "type": "boolean", "x-materialization": [ { "ir_key": "method.mutation_type", "ir_value_type": "String", "storage_type": "PRESENCE_LITERAL", "stored_value": "bit_random" } ] } }, "title": "BitRandom", "type": "object" }, "CrossoverType": { "additionalProperties": false, "description": "Select a crossover type for JEGA methods", "properties": { "strategy": { "anchor": true, "anyOf": [ { "$ref": "#/$defs/MultiPointBinary" }, { "$ref": "#/$defs/MultiPointParameterizedBinary" }, { "$ref": "#/$defs/MultiPointReal" }, { "$ref": "#/$defs/ShuffleRandom" } ], "description": "Crossover Type", "title": "Strategy", "x-union-pattern": 4 }, "crossover_rate": { "anyOf": [ { "minimum": 0, "type": "number" }, { "type": "null" } ], "default": null, "description": "Specify the probability of a crossover event", "title": "Crossover Rate", "x-materialization": [ { "ir_key": "method.crossover_type", "ir_value_type": "String", "secondary_ir_key": "method.crossover_rate", "secondary_ir_value_type": "Real", "storage_type": "TYPE_DATA_COMBINED", "stored_value": "null_crossover" } ] } }, "required": [ "strategy" ], "title": "CrossoverType", "type": "object" }, "Debug": { "additionalProperties": false, "description": "Level 5 of 5 - maximum", "properties": { "debug": { "const": true, "default": true, "description": "Level 5 of 5 - maximum", "title": "Debug", "type": "boolean", "x-materialization": [ { "ir_key": "method.output", "ir_value_type": "short", "storage_type": "PRESENCE_ENUM", "stored_value": "DEBUG_OUTPUT" } ] } }, "title": "Debug", "type": "object" }, "FavorFeasible": { "additionalProperties": false, "description": "Prioritize feasible designs", "properties": { "favor_feasible": { "const": true, "default": true, "description": "Prioritize feasible designs", "title": "Favor Feasible", "type": "boolean", "x-materialization": [ { "ir_key": "method.replacement_type", "ir_value_type": "String", "storage_type": "PRESENCE_LITERAL", "stored_value": "favor_feasible" } ] } }, "title": "FavorFeasible", "type": "object" }, "FitnessType": { "additionalProperties": false, "description": "Select the fitness type for JEGA methods", "properties": { "merit_function": { "const": true, "description": "Balance goals of reducing objective function and satisfying constraints", "title": "Merit Function", "type": "boolean", "x-materialization": [ { "ir_key": "method.fitness_type", "ir_value_type": "String", "storage_type": "PRESENCE_LITERAL", "stored_value": "merit_function" } ] }, "constraint_penalty": { "default": 0.0, "description": "Multiplier for the penalty function", "exclusiveMinimum": 0, "title": "Constraint Penalty", "type": "number", "x-materialization": [ { "ir_key": "method.constraint_tolerance", "ir_value_type": "Real", "storage_type": "DIRECT_VALUE" } ] } }, "required": [ "merit_function" ], "title": "FitnessType", "type": "object" }, "MethodJegaCommonOptsInitializationTypeFlatFile": { "additionalProperties": false, "description": "Read initial solutions from file", "properties": { "flat_file": { "description": "Read initial solutions from file", "title": "Flat File", "type": "string", "x-materialization": [ { "ir_key": "method.initialization_type", "ir_value_type": "String", "secondary_ir_key": "method.flat_file", "secondary_ir_value_type": "String", "storage_type": "TYPE_DATA_COMBINED", "stored_value": "flat_file" } ] } }, "required": [ "flat_file" ], "title": "MethodJegaCommonOptsInitializationTypeFlatFile", "type": "object" }, "MethodJegaCommonOptsInitializationTypeSimpleRandom": { "additionalProperties": false, "description": "Create random initial solutions", "properties": { "simple_random": { "const": true, "default": true, "description": "Create random initial solutions", "title": "Simple Random", "type": "boolean", "x-materialization": [ { "ir_key": "method.initialization_type", "ir_value_type": "String", "storage_type": "PRESENCE_LITERAL", "stored_value": "random" } ] } }, "title": "MethodJegaCommonOptsInitializationTypeSimpleRandom", "type": "object" }, "MethodJegaCommonOptsInitializationTypeUniqueRandom": { "additionalProperties": false, "description": "Create random initial solutions, but enforce uniqueness (default)", "properties": { "unique_random": { "const": true, "default": true, "description": "Create random initial solutions, but enforce uniqueness (default)", "title": "Unique Random", "type": "boolean", "x-materialization": [ { "ir_key": "method.initialization_type", "ir_value_type": "String", "storage_type": "PRESENCE_LITERAL", "stored_value": "unique_random" } ] } }, "title": "MethodJegaCommonOptsInitializationTypeUniqueRandom", "type": "object" }, "MethodJegaCommonOptsMutationType": { "additionalProperties": false, "description": "Select a mutation type for JEGA methods", "properties": { "strategy": { "anchor": true, "anyOf": [ { "$ref": "#/$defs/BitRandom" }, { "$ref": "#/$defs/MethodJegaCommonOptsMutationTypeReplaceUniform" }, { "$ref": "#/$defs/MethodJegaCommonOptsMutationTypeOffsetNormal" }, { "$ref": "#/$defs/MethodJegaCommonOptsMutationTypeOffsetCauchy" }, { "$ref": "#/$defs/MethodJegaCommonOptsMutationTypeOffsetUniform" } ], "description": "Mutation Type", "title": "Strategy", "x-union-pattern": 4 }, "mutation_rate": { "anyOf": [ { "minimum": 0, "type": "number" }, { "type": "null" } ], "default": null, "description": "Set probability of a mutation", "title": "Mutation Rate", "x-materialization": [ { "ir_key": "method.mutation_type", "ir_value_type": "String", "secondary_ir_key": "method.mutation_rate", "secondary_ir_value_type": "Real", "storage_type": "TYPE_DATA_COMBINED", "stored_value": "null_mutation" } ] } }, "required": [ "strategy" ], "title": "MethodJegaCommonOptsMutationType", "type": "object" }, "MethodJegaCommonOptsMutationTypeOffsetCauchy": { "additionalProperties": false, "description": "Use a Cauchy distribution for the mutation offset", "properties": { "offset_cauchy": { "$ref": "#/$defs/OffsetNormalConfig", "description": "Use a Cauchy distribution for the mutation offset", "x-materialization": [ { "ir_key": "method.mutation_type", "ir_value_type": "String", "storage_type": "PRESENCE_LITERAL", "stored_value": "offset_cauchy" } ] } }, "required": [ "offset_cauchy" ], "title": "MethodJegaCommonOptsMutationTypeOffsetCauchy", "type": "object" }, "MethodJegaCommonOptsMutationTypeOffsetNormal": { "additionalProperties": false, "description": "Set mutation offset to use a normal distribution", "properties": { "offset_normal": { "$ref": "#/$defs/OffsetNormalConfig", "x-materialization": [ { "ir_key": "method.mutation_type", "ir_value_type": "String", "storage_type": "PRESENCE_LITERAL", "stored_value": "offset_normal" } ] } }, "required": [ "offset_normal" ], "title": "MethodJegaCommonOptsMutationTypeOffsetNormal", "type": "object" }, "MethodJegaCommonOptsMutationTypeOffsetUniform": { "additionalProperties": false, "description": "Set mutation offset to use a uniform distribution", "properties": { "offset_uniform": { "$ref": "#/$defs/OffsetNormalConfig", "description": "Set mutation offset to use a uniform distribution", "x-materialization": [ { "ir_key": "method.mutation_type", "ir_value_type": "String", "storage_type": "PRESENCE_LITERAL", "stored_value": "offset_uniform" } ] } }, "required": [ "offset_uniform" ], "title": "MethodJegaCommonOptsMutationTypeOffsetUniform", "type": "object" }, "MethodJegaCommonOptsMutationTypeReplaceUniform": { "additionalProperties": false, "description": "Use uniformly distributed value over range of parameter", "properties": { "replace_uniform": { "const": true, "default": true, "description": "Use uniformly distributed value over range of parameter", "title": "Replace Uniform", "type": "boolean", "x-materialization": [ { "ir_key": "method.mutation_type", "ir_value_type": "String", "storage_type": "PRESENCE_LITERAL", "stored_value": "replace_uniform" } ] } }, "title": "MethodJegaCommonOptsMutationTypeReplaceUniform", "type": "object" }, "MultiPointBinary": { "additionalProperties": false, "description": "Use bit switching for crossover events", "properties": { "multi_point_binary": { "default": 2, "description": "Use bit switching for crossover events", "exclusiveMinimum": 0, "title": "Multi Point Binary", "type": "integer", "x-materialization": [ { "ir_key": "method.crossover_type", "ir_value_type": "String", "secondary_ir_key": "method.jega.num_cross_points", "secondary_ir_value_type": "size_t", "storage_type": "TYPE_DATA_COMBINED", "stored_value": "multi_point_binary" } ] } }, "title": "MultiPointBinary", "type": "object" }, "MultiPointParameterizedBinary": { "additionalProperties": false, "description": "Use bit switching to crossover each design variable", "properties": { "multi_point_parameterized_binary": { "default": 2, "description": "Use bit switching to crossover each design variable", "exclusiveMinimum": 0, "title": "Multi Point Parameterized Binary", "type": "integer", "x-materialization": [ { "ir_key": "method.crossover_type", "ir_value_type": "String", "secondary_ir_key": "method.jega.num_cross_points", "secondary_ir_value_type": "size_t", "storage_type": "TYPE_DATA_COMBINED", "stored_value": "multi_point_parameterized_binary" } ] } }, "title": "MultiPointParameterizedBinary", "type": "object" }, "MultiPointReal": { "additionalProperties": false, "description": "Perform crossover in real valued genome", "properties": { "multi_point_real": { "default": 2, "description": "Perform crossover in real valued genome", "exclusiveMinimum": 0, "title": "Multi Point Real", "type": "integer", "x-materialization": [ { "ir_key": "method.crossover_type", "ir_value_type": "String", "secondary_ir_key": "method.jega.num_cross_points", "secondary_ir_value_type": "size_t", "storage_type": "TYPE_DATA_COMBINED", "stored_value": "multi_point_real" } ] } }, "title": "MultiPointReal", "type": "object" }, "Normal": { "additionalProperties": false, "description": "Level 3 of 5 - default", "properties": { "normal": { "const": true, "default": true, "description": "Level 3 of 5 - default", "title": "Normal", "type": "boolean", "x-materialization": [ { "ir_key": "method.output", "ir_value_type": "short", "storage_type": "PRESENCE_ENUM", "stored_value": "NORMAL_OUTPUT" } ] } }, "title": "Normal", "type": "object" }, "OffsetNormalConfig": { "additionalProperties": false, "description": "Set mutation offset to use a normal distribution", "properties": { "mutation_scale": { "default": 0.1, "description": "Scales mutation across range of parameter", "maximum": 1, "minimum": 0, "title": "Mutation Scale", "type": "number", "x-materialization": [ { "ir_key": "method.mutation_scale", "ir_value_type": "Real", "storage_type": "DIRECT_VALUE" } ] } }, "title": "OffsetNormalConfig", "type": "object" }, "Quiet": { "additionalProperties": false, "description": "Level 2 of 5 - less than normal", "properties": { "quiet": { "const": true, "default": true, "description": "Level 2 of 5 - less than normal", "title": "Quiet", "type": "boolean", "x-materialization": [ { "ir_key": "method.output", "ir_value_type": "short", "storage_type": "PRESENCE_ENUM", "stored_value": "QUIET_OUTPUT" } ] } }, "title": "Quiet", "type": "object" }, "ShuffleRandom": { "additionalProperties": false, "description": "Perform crossover by choosing design variable(s)", "properties": { "shuffle_random": { "$ref": "#/$defs/ShuffleRandomConfig", "x-materialization": [ { "ir_key": "method.crossover_type", "ir_value_type": "String", "storage_type": "PRESENCE_LITERAL", "stored_value": "shuffle_random" } ] } }, "required": [ "shuffle_random" ], "title": "ShuffleRandom", "type": "object" }, "ShuffleRandomConfig": { "additionalProperties": false, "description": "Perform crossover by choosing design variable(s)", "properties": { "num_parents": { "default": 2, "description": "Number of parents in random shuffle crossover", "exclusiveMinimum": 0, "title": "Num Parents", "type": "integer", "x-materialization": [ { "ir_key": "method.jega.num_parents", "ir_value_type": "size_t", "storage_type": "DIRECT_VALUE" } ] }, "num_offspring": { "default": 2, "description": "Number of offspring in random shuffle crossover", "exclusiveMinimum": 0, "title": "Num Offspring", "type": "integer", "x-materialization": [ { "ir_key": "method.jega.num_offspring", "ir_value_type": "size_t", "storage_type": "DIRECT_VALUE" } ] } }, "title": "ShuffleRandomConfig", "type": "object" }, "Silent": { "additionalProperties": false, "description": "Level 1 of 5 - minimum", "properties": { "silent": { "const": true, "default": true, "description": "Level 1 of 5 - minimum", "title": "Silent", "type": "boolean", "x-materialization": [ { "ir_key": "method.output", "ir_value_type": "short", "storage_type": "PRESENCE_ENUM", "stored_value": "SILENT_OUTPUT" } ] } }, "title": "Silent", "type": "object" }, "SogaConfig": { "additionalProperties": false, "description": "Single-objective Genetic Algorithm (a.k.a Evolutionary Algorithm)", "properties": { "population_size": { "default": 50, "description": "Set the initial population size in JEGA methods", "minimum": 0, "title": "Population Size", "type": "integer", "x-materialization": [ { "ir_key": "method.population_size", "ir_value_type": "int", "storage_type": "DIRECT_VALUE" } ] }, "log_file": { "default": "JEGAGlobal.log", "description": "Specify the name of a log file", "title": "Log File", "type": "string", "x-materialization": [ { "ir_key": "method.log_file", "ir_value_type": "String", "storage_type": "DIRECT_VALUE" } ] }, "print_each_pop": { "anyOf": [ { "const": true, "type": "boolean" }, { "type": "null" } ], "default": null, "description": "Print every population to a population file", "title": "Print Each Pop", "x-materialization": [ { "ir_key": "method.print_each_pop", "ir_value_type": "bool", "storage_type": "PRESENCE_TRUE" } ] }, "initialization_type": { "anyOf": [ { "$ref": "#/$defs/MethodJegaCommonOptsInitializationTypeSimpleRandom" }, { "$ref": "#/$defs/MethodJegaCommonOptsInitializationTypeUniqueRandom" }, { "$ref": "#/$defs/MethodJegaCommonOptsInitializationTypeFlatFile" } ], "description": "Specify how to initialize the population", "title": "Initialization Type", "x-model-default": "MethodJegaCommonOptsInitializationTypeUniqueRandom", "x-union-pattern": 1 }, "crossover_type": { "anyOf": [ { "$ref": "#/$defs/CrossoverType" }, { "type": "null" } ], "default": null, "description": "Select a crossover type for JEGA methods" }, "mutation_type": { "anyOf": [ { "$ref": "#/$defs/MethodJegaCommonOptsMutationType" }, { "type": "null" } ], "default": null, "description": "Select a mutation type for JEGA methods" }, "seed": { "anyOf": [ { "exclusiveMinimum": 0, "type": "integer" }, { "type": "null" } ], "default": null, "description": "Seed of the random number generator", "title": "Seed", "x-materialization": [ { "ir_key": "method.random_seed", "ir_value_type": "int", "storage_type": "DIRECT_VALUE" } ] }, "convergence_tolerance": { "default": -1.7976931348623157e+308, "description": "Stopping criterion based on objective function or statistics convergence", "title": "Convergence Tolerance", "type": "number", "x-materialization": [ { "ir_key": "method.convergence_tolerance", "ir_value_type": "Real", "storage_type": "DIRECT_VALUE" }, { "ir_key": "method.jega.percent_change", "ir_value_type": "Real", "storage_type": "DIRECT_VALUE" } ] }, "model_pointer": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "default": null, "description": "Identifier for model block to be used by a method", "title": "Model Pointer", "x-block-pointer": "model", "x-materialization": [ { "ir_key": "method.model_pointer", "ir_value_type": "String", "storage_type": "DIRECT_VALUE" } ] }, "scaling": { "anyOf": [ { "const": true, "type": "boolean" }, { "type": "null" } ], "default": null, "description": "Turn on scaling for variables, responses, and constraints", "title": "Scaling", "x-materialization": [ { "ir_key": "method.scaling", "ir_value_type": "bool", "storage_type": "PRESENCE_TRUE" } ] }, "max_function_evaluations": { "default": 9223372036854775807, "description": "Number of function evaluations allowed for optimizers", "minimum": 0, "title": "Max Function Evaluations", "type": "integer", "x-materialization": [ { "ir_key": "method.max_function_evaluations", "ir_value_type": "size_t", "storage_type": "DIRECT_VALUE" } ] }, "max_iterations": { "default": 9223372036854775807, "description": "Number of iterations allowed for optimizers and adaptive UQ methods", "minimum": 0, "title": "Max Iterations", "type": "integer", "x-materialization": [ { "ir_key": "method.max_iterations", "ir_value_type": "size_t", "storage_type": "DIRECT_VALUE" } ] }, "id_method": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "default": null, "description": "Name the method block; helpful when there are multiple", "title": "Id Method", "x-materialization": [ { "ir_key": "method.id", "ir_value_type": "String", "storage_type": "DIRECT_VALUE" } ] }, "output": { "anyOf": [ { "$ref": "#/$defs/Debug" }, { "$ref": "#/$defs/Verbose" }, { "$ref": "#/$defs/Normal" }, { "$ref": "#/$defs/Quiet" }, { "$ref": "#/$defs/Silent" } ], "description": "Control how much method information is written to the screen and output file", "title": "Output", "x-model-default": "Normal", "x-union-pattern": 1 }, "final_solutions": { "default": 0, "description": "Number of designs returned as the best solutions", "minimum": 0, "title": "Final Solutions", "type": "integer", "x-materialization": [ { "ir_key": "method.final_solutions", "ir_value_type": "size_t", "storage_type": "DIRECT_VALUE" } ] }, "fitness_type": { "anyOf": [ { "$ref": "#/$defs/FitnessType" }, { "type": "null" } ], "default": null, "description": "Select the fitness type for JEGA methods" }, "replacement_type": { "anyOf": [ { "$ref": "#/$defs/SogaReplacementTypeElitist" }, { "$ref": "#/$defs/FavorFeasible" }, { "$ref": "#/$defs/SogaReplacementTypeRouletteWheel" }, { "$ref": "#/$defs/SogaReplacementTypeUniqueRouletteWheel" }, { "type": "null" } ], "default": null, "description": "Select a replacement type for JEGA methods", "title": "Replacement Type", "x-union-pattern": 2 }, "convergence_type": { "anyOf": [ { "$ref": "#/$defs/BestFitnessTracker" }, { "$ref": "#/$defs/AverageFitnessTracker" }, { "type": "null" } ], "default": null, "description": "Select the convergence type for JEGA methods", "title": "Convergence Type", "x-union-pattern": 2 } }, "title": "SogaConfig", "type": "object" }, "SogaReplacementTypeElitist": { "additionalProperties": false, "description": "Use the best designs to form a new population", "properties": { "elitist": { "const": true, "default": true, "description": "Use the best designs to form a new population", "title": "Elitist", "type": "boolean", "x-materialization": [ { "ir_key": "method.replacement_type", "ir_value_type": "String", "storage_type": "PRESENCE_LITERAL", "stored_value": "elitist" } ] } }, "title": "SogaReplacementTypeElitist", "type": "object" }, "SogaReplacementTypeRouletteWheel": { "additionalProperties": false, "description": "Replace population", "properties": { "roulette_wheel": { "const": true, "default": true, "description": "Replace population", "title": "Roulette Wheel", "type": "boolean", "x-materialization": [ { "ir_key": "method.replacement_type", "ir_value_type": "String", "storage_type": "PRESENCE_LITERAL", "stored_value": "roulette_wheel" } ] } }, "title": "SogaReplacementTypeRouletteWheel", "type": "object" }, "SogaReplacementTypeUniqueRouletteWheel": { "additionalProperties": false, "description": "Replace population", "properties": { "unique_roulette_wheel": { "const": true, "default": true, "description": "Replace population", "title": "Unique Roulette Wheel", "type": "boolean", "x-materialization": [ { "ir_key": "method.replacement_type", "ir_value_type": "String", "storage_type": "PRESENCE_LITERAL", "stored_value": "unique_roulette_wheel" } ] } }, "title": "SogaReplacementTypeUniqueRouletteWheel", "type": "object" }, "Verbose": { "additionalProperties": false, "description": "Level 4 of 5 - more than normal", "properties": { "verbose": { "const": true, "default": true, "description": "Level 4 of 5 - more than normal", "title": "Verbose", "type": "boolean", "x-materialization": [ { "ir_key": "method.output", "ir_value_type": "short", "storage_type": "PRESENCE_ENUM", "stored_value": "VERBOSE_OUTPUT" } ] } }, "title": "Verbose", "type": "object" } }, "additionalProperties": false, "required": [ "soga" ] }
- field soga: SogaConfig [Required]
- classmethod get_registry() dict[str, type[MethodSelection]]
Get registry, performing deferred registration on first call
- classmethod get_union()
Generate Union from all registered selections
- pydantic model dakota.spec.method.soga.SogaConfig
Single-objective Genetic Algorithm (a.k.a Evolutionary Algorithm)
Show JSON schema
{ "title": "SogaConfig", "description": "Single-objective Genetic Algorithm (a.k.a Evolutionary Algorithm)", "type": "object", "properties": { "population_size": { "default": 50, "description": "Set the initial population size in JEGA methods", "minimum": 0, "title": "Population Size", "type": "integer", "x-materialization": [ { "ir_key": "method.population_size", "ir_value_type": "int", "storage_type": "DIRECT_VALUE" } ] }, "log_file": { "default": "JEGAGlobal.log", "description": "Specify the name of a log file", "title": "Log File", "type": "string", "x-materialization": [ { "ir_key": "method.log_file", "ir_value_type": "String", "storage_type": "DIRECT_VALUE" } ] }, "print_each_pop": { "anyOf": [ { "const": true, "type": "boolean" }, { "type": "null" } ], "default": null, "description": "Print every population to a population file", "title": "Print Each Pop", "x-materialization": [ { "ir_key": "method.print_each_pop", "ir_value_type": "bool", "storage_type": "PRESENCE_TRUE" } ] }, "initialization_type": { "anyOf": [ { "$ref": "#/$defs/MethodJegaCommonOptsInitializationTypeSimpleRandom" }, { "$ref": "#/$defs/MethodJegaCommonOptsInitializationTypeUniqueRandom" }, { "$ref": "#/$defs/MethodJegaCommonOptsInitializationTypeFlatFile" } ], "description": "Specify how to initialize the population", "title": "Initialization Type", "x-model-default": "MethodJegaCommonOptsInitializationTypeUniqueRandom", "x-union-pattern": 1 }, "crossover_type": { "anyOf": [ { "$ref": "#/$defs/CrossoverType" }, { "type": "null" } ], "default": null, "description": "Select a crossover type for JEGA methods" }, "mutation_type": { "anyOf": [ { "$ref": "#/$defs/MethodJegaCommonOptsMutationType" }, { "type": "null" } ], "default": null, "description": "Select a mutation type for JEGA methods" }, "seed": { "anyOf": [ { "exclusiveMinimum": 0, "type": "integer" }, { "type": "null" } ], "default": null, "description": "Seed of the random number generator", "title": "Seed", "x-materialization": [ { "ir_key": "method.random_seed", "ir_value_type": "int", "storage_type": "DIRECT_VALUE" } ] }, "convergence_tolerance": { "default": -1.7976931348623157e+308, "description": "Stopping criterion based on objective function or statistics convergence", "title": "Convergence Tolerance", "type": "number", "x-materialization": [ { "ir_key": "method.convergence_tolerance", "ir_value_type": "Real", "storage_type": "DIRECT_VALUE" }, { "ir_key": "method.jega.percent_change", "ir_value_type": "Real", "storage_type": "DIRECT_VALUE" } ] }, "model_pointer": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "default": null, "description": "Identifier for model block to be used by a method", "title": "Model Pointer", "x-block-pointer": "model", "x-materialization": [ { "ir_key": "method.model_pointer", "ir_value_type": "String", "storage_type": "DIRECT_VALUE" } ] }, "scaling": { "anyOf": [ { "const": true, "type": "boolean" }, { "type": "null" } ], "default": null, "description": "Turn on scaling for variables, responses, and constraints", "title": "Scaling", "x-materialization": [ { "ir_key": "method.scaling", "ir_value_type": "bool", "storage_type": "PRESENCE_TRUE" } ] }, "max_function_evaluations": { "default": 9223372036854775807, "description": "Number of function evaluations allowed for optimizers", "minimum": 0, "title": "Max Function Evaluations", "type": "integer", "x-materialization": [ { "ir_key": "method.max_function_evaluations", "ir_value_type": "size_t", "storage_type": "DIRECT_VALUE" } ] }, "max_iterations": { "default": 9223372036854775807, "description": "Number of iterations allowed for optimizers and adaptive UQ methods", "minimum": 0, "title": "Max Iterations", "type": "integer", "x-materialization": [ { "ir_key": "method.max_iterations", "ir_value_type": "size_t", "storage_type": "DIRECT_VALUE" } ] }, "id_method": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "default": null, "description": "Name the method block; helpful when there are multiple", "title": "Id Method", "x-materialization": [ { "ir_key": "method.id", "ir_value_type": "String", "storage_type": "DIRECT_VALUE" } ] }, "output": { "anyOf": [ { "$ref": "#/$defs/Debug" }, { "$ref": "#/$defs/Verbose" }, { "$ref": "#/$defs/Normal" }, { "$ref": "#/$defs/Quiet" }, { "$ref": "#/$defs/Silent" } ], "description": "Control how much method information is written to the screen and output file", "title": "Output", "x-model-default": "Normal", "x-union-pattern": 1 }, "final_solutions": { "default": 0, "description": "Number of designs returned as the best solutions", "minimum": 0, "title": "Final Solutions", "type": "integer", "x-materialization": [ { "ir_key": "method.final_solutions", "ir_value_type": "size_t", "storage_type": "DIRECT_VALUE" } ] }, "fitness_type": { "anyOf": [ { "$ref": "#/$defs/FitnessType" }, { "type": "null" } ], "default": null, "description": "Select the fitness type for JEGA methods" }, "replacement_type": { "anyOf": [ { "$ref": "#/$defs/SogaReplacementTypeElitist" }, { "$ref": "#/$defs/FavorFeasible" }, { "$ref": "#/$defs/SogaReplacementTypeRouletteWheel" }, { "$ref": "#/$defs/SogaReplacementTypeUniqueRouletteWheel" }, { "type": "null" } ], "default": null, "description": "Select a replacement type for JEGA methods", "title": "Replacement Type", "x-union-pattern": 2 }, "convergence_type": { "anyOf": [ { "$ref": "#/$defs/BestFitnessTracker" }, { "$ref": "#/$defs/AverageFitnessTracker" }, { "type": "null" } ], "default": null, "description": "Select the convergence type for JEGA methods", "title": "Convergence Type", "x-union-pattern": 2 } }, "$defs": { "AverageFitnessTracker": { "additionalProperties": false, "description": "Tracks the average fitness of the population", "properties": { "average_fitness_tracker": { "$ref": "#/$defs/AverageFitnessTrackerConfig", "x-materialization": [ { "ir_key": "method.jega.convergence_type", "ir_value_type": "String", "storage_type": "PRESENCE_LITERAL", "stored_value": "average_fitness_tracker" } ] } }, "required": [ "average_fitness_tracker" ], "title": "AverageFitnessTracker", "type": "object" }, "AverageFitnessTrackerConfig": { "additionalProperties": false, "description": "Tracks the average fitness of the population", "properties": { "percent_change": { "default": -1.7976931348623157e+308, "description": "Define the convergence criterion for JEGA methods", "minimum": 0, "title": "Percent Change", "type": "number", "x-materialization": [ { "ir_key": "method.convergence_tolerance", "ir_value_type": "Real", "storage_type": "DIRECT_VALUE" }, { "ir_key": "method.jega.percent_change", "ir_value_type": "Real", "storage_type": "DIRECT_VALUE" } ] }, "num_generations": { "default": 15, "description": "Define the convergence criterion for JEGA methods", "minimum": 0, "title": "Num Generations", "type": "integer", "x-materialization": [ { "ir_key": "method.jega.num_generations", "ir_value_type": "size_t", "storage_type": "DIRECT_VALUE" } ] } }, "title": "AverageFitnessTrackerConfig", "type": "object" }, "BestFitnessTracker": { "additionalProperties": false, "description": "Tracks the best fitness of the population", "properties": { "best_fitness_tracker": { "$ref": "#/$defs/BestFitnessTrackerConfig", "x-materialization": [ { "ir_key": "method.jega.convergence_type", "ir_value_type": "String", "storage_type": "PRESENCE_LITERAL", "stored_value": "best_fitness_tracker" } ] } }, "required": [ "best_fitness_tracker" ], "title": "BestFitnessTracker", "type": "object" }, "BestFitnessTrackerConfig": { "additionalProperties": false, "description": "Tracks the best fitness of the population", "properties": { "percent_change": { "default": -1.7976931348623157e+308, "description": "Define the convergence criterion for JEGA methods", "minimum": 0, "title": "Percent Change", "type": "number", "x-materialization": [ { "ir_key": "method.convergence_tolerance", "ir_value_type": "Real", "storage_type": "DIRECT_VALUE" }, { "ir_key": "method.jega.percent_change", "ir_value_type": "Real", "storage_type": "DIRECT_VALUE" } ] }, "num_generations": { "default": 15, "description": "Define the convergence criterion for JEGA methods", "minimum": 0, "title": "Num Generations", "type": "integer", "x-materialization": [ { "ir_key": "method.jega.num_generations", "ir_value_type": "size_t", "storage_type": "DIRECT_VALUE" } ] } }, "title": "BestFitnessTrackerConfig", "type": "object" }, "BitRandom": { "additionalProperties": false, "description": "Mutate by flipping a random bit", "properties": { "bit_random": { "const": true, "default": true, "description": "Mutate by flipping a random bit", "title": "Bit Random", "type": "boolean", "x-materialization": [ { "ir_key": "method.mutation_type", "ir_value_type": "String", "storage_type": "PRESENCE_LITERAL", "stored_value": "bit_random" } ] } }, "title": "BitRandom", "type": "object" }, "CrossoverType": { "additionalProperties": false, "description": "Select a crossover type for JEGA methods", "properties": { "strategy": { "anchor": true, "anyOf": [ { "$ref": "#/$defs/MultiPointBinary" }, { "$ref": "#/$defs/MultiPointParameterizedBinary" }, { "$ref": "#/$defs/MultiPointReal" }, { "$ref": "#/$defs/ShuffleRandom" } ], "description": "Crossover Type", "title": "Strategy", "x-union-pattern": 4 }, "crossover_rate": { "anyOf": [ { "minimum": 0, "type": "number" }, { "type": "null" } ], "default": null, "description": "Specify the probability of a crossover event", "title": "Crossover Rate", "x-materialization": [ { "ir_key": "method.crossover_type", "ir_value_type": "String", "secondary_ir_key": "method.crossover_rate", "secondary_ir_value_type": "Real", "storage_type": "TYPE_DATA_COMBINED", "stored_value": "null_crossover" } ] } }, "required": [ "strategy" ], "title": "CrossoverType", "type": "object" }, "Debug": { "additionalProperties": false, "description": "Level 5 of 5 - maximum", "properties": { "debug": { "const": true, "default": true, "description": "Level 5 of 5 - maximum", "title": "Debug", "type": "boolean", "x-materialization": [ { "ir_key": "method.output", "ir_value_type": "short", "storage_type": "PRESENCE_ENUM", "stored_value": "DEBUG_OUTPUT" } ] } }, "title": "Debug", "type": "object" }, "FavorFeasible": { "additionalProperties": false, "description": "Prioritize feasible designs", "properties": { "favor_feasible": { "const": true, "default": true, "description": "Prioritize feasible designs", "title": "Favor Feasible", "type": "boolean", "x-materialization": [ { "ir_key": "method.replacement_type", "ir_value_type": "String", "storage_type": "PRESENCE_LITERAL", "stored_value": "favor_feasible" } ] } }, "title": "FavorFeasible", "type": "object" }, "FitnessType": { "additionalProperties": false, "description": "Select the fitness type for JEGA methods", "properties": { "merit_function": { "const": true, "description": "Balance goals of reducing objective function and satisfying constraints", "title": "Merit Function", "type": "boolean", "x-materialization": [ { "ir_key": "method.fitness_type", "ir_value_type": "String", "storage_type": "PRESENCE_LITERAL", "stored_value": "merit_function" } ] }, "constraint_penalty": { "default": 0.0, "description": "Multiplier for the penalty function", "exclusiveMinimum": 0, "title": "Constraint Penalty", "type": "number", "x-materialization": [ { "ir_key": "method.constraint_tolerance", "ir_value_type": "Real", "storage_type": "DIRECT_VALUE" } ] } }, "required": [ "merit_function" ], "title": "FitnessType", "type": "object" }, "MethodJegaCommonOptsInitializationTypeFlatFile": { "additionalProperties": false, "description": "Read initial solutions from file", "properties": { "flat_file": { "description": "Read initial solutions from file", "title": "Flat File", "type": "string", "x-materialization": [ { "ir_key": "method.initialization_type", "ir_value_type": "String", "secondary_ir_key": "method.flat_file", "secondary_ir_value_type": "String", "storage_type": "TYPE_DATA_COMBINED", "stored_value": "flat_file" } ] } }, "required": [ "flat_file" ], "title": "MethodJegaCommonOptsInitializationTypeFlatFile", "type": "object" }, "MethodJegaCommonOptsInitializationTypeSimpleRandom": { "additionalProperties": false, "description": "Create random initial solutions", "properties": { "simple_random": { "const": true, "default": true, "description": "Create random initial solutions", "title": "Simple Random", "type": "boolean", "x-materialization": [ { "ir_key": "method.initialization_type", "ir_value_type": "String", "storage_type": "PRESENCE_LITERAL", "stored_value": "random" } ] } }, "title": "MethodJegaCommonOptsInitializationTypeSimpleRandom", "type": "object" }, "MethodJegaCommonOptsInitializationTypeUniqueRandom": { "additionalProperties": false, "description": "Create random initial solutions, but enforce uniqueness (default)", "properties": { "unique_random": { "const": true, "default": true, "description": "Create random initial solutions, but enforce uniqueness (default)", "title": "Unique Random", "type": "boolean", "x-materialization": [ { "ir_key": "method.initialization_type", "ir_value_type": "String", "storage_type": "PRESENCE_LITERAL", "stored_value": "unique_random" } ] } }, "title": "MethodJegaCommonOptsInitializationTypeUniqueRandom", "type": "object" }, "MethodJegaCommonOptsMutationType": { "additionalProperties": false, "description": "Select a mutation type for JEGA methods", "properties": { "strategy": { "anchor": true, "anyOf": [ { "$ref": "#/$defs/BitRandom" }, { "$ref": "#/$defs/MethodJegaCommonOptsMutationTypeReplaceUniform" }, { "$ref": "#/$defs/MethodJegaCommonOptsMutationTypeOffsetNormal" }, { "$ref": "#/$defs/MethodJegaCommonOptsMutationTypeOffsetCauchy" }, { "$ref": "#/$defs/MethodJegaCommonOptsMutationTypeOffsetUniform" } ], "description": "Mutation Type", "title": "Strategy", "x-union-pattern": 4 }, "mutation_rate": { "anyOf": [ { "minimum": 0, "type": "number" }, { "type": "null" } ], "default": null, "description": "Set probability of a mutation", "title": "Mutation Rate", "x-materialization": [ { "ir_key": "method.mutation_type", "ir_value_type": "String", "secondary_ir_key": "method.mutation_rate", "secondary_ir_value_type": "Real", "storage_type": "TYPE_DATA_COMBINED", "stored_value": "null_mutation" } ] } }, "required": [ "strategy" ], "title": "MethodJegaCommonOptsMutationType", "type": "object" }, "MethodJegaCommonOptsMutationTypeOffsetCauchy": { "additionalProperties": false, "description": "Use a Cauchy distribution for the mutation offset", "properties": { "offset_cauchy": { "$ref": "#/$defs/OffsetNormalConfig", "description": "Use a Cauchy distribution for the mutation offset", "x-materialization": [ { "ir_key": "method.mutation_type", "ir_value_type": "String", "storage_type": "PRESENCE_LITERAL", "stored_value": "offset_cauchy" } ] } }, "required": [ "offset_cauchy" ], "title": "MethodJegaCommonOptsMutationTypeOffsetCauchy", "type": "object" }, "MethodJegaCommonOptsMutationTypeOffsetNormal": { "additionalProperties": false, "description": "Set mutation offset to use a normal distribution", "properties": { "offset_normal": { "$ref": "#/$defs/OffsetNormalConfig", "x-materialization": [ { "ir_key": "method.mutation_type", "ir_value_type": "String", "storage_type": "PRESENCE_LITERAL", "stored_value": "offset_normal" } ] } }, "required": [ "offset_normal" ], "title": "MethodJegaCommonOptsMutationTypeOffsetNormal", "type": "object" }, "MethodJegaCommonOptsMutationTypeOffsetUniform": { "additionalProperties": false, "description": "Set mutation offset to use a uniform distribution", "properties": { "offset_uniform": { "$ref": "#/$defs/OffsetNormalConfig", "description": "Set mutation offset to use a uniform distribution", "x-materialization": [ { "ir_key": "method.mutation_type", "ir_value_type": "String", "storage_type": "PRESENCE_LITERAL", "stored_value": "offset_uniform" } ] } }, "required": [ "offset_uniform" ], "title": "MethodJegaCommonOptsMutationTypeOffsetUniform", "type": "object" }, "MethodJegaCommonOptsMutationTypeReplaceUniform": { "additionalProperties": false, "description": "Use uniformly distributed value over range of parameter", "properties": { "replace_uniform": { "const": true, "default": true, "description": "Use uniformly distributed value over range of parameter", "title": "Replace Uniform", "type": "boolean", "x-materialization": [ { "ir_key": "method.mutation_type", "ir_value_type": "String", "storage_type": "PRESENCE_LITERAL", "stored_value": "replace_uniform" } ] } }, "title": "MethodJegaCommonOptsMutationTypeReplaceUniform", "type": "object" }, "MultiPointBinary": { "additionalProperties": false, "description": "Use bit switching for crossover events", "properties": { "multi_point_binary": { "default": 2, "description": "Use bit switching for crossover events", "exclusiveMinimum": 0, "title": "Multi Point Binary", "type": "integer", "x-materialization": [ { "ir_key": "method.crossover_type", "ir_value_type": "String", "secondary_ir_key": "method.jega.num_cross_points", "secondary_ir_value_type": "size_t", "storage_type": "TYPE_DATA_COMBINED", "stored_value": "multi_point_binary" } ] } }, "title": "MultiPointBinary", "type": "object" }, "MultiPointParameterizedBinary": { "additionalProperties": false, "description": "Use bit switching to crossover each design variable", "properties": { "multi_point_parameterized_binary": { "default": 2, "description": "Use bit switching to crossover each design variable", "exclusiveMinimum": 0, "title": "Multi Point Parameterized Binary", "type": "integer", "x-materialization": [ { "ir_key": "method.crossover_type", "ir_value_type": "String", "secondary_ir_key": "method.jega.num_cross_points", "secondary_ir_value_type": "size_t", "storage_type": "TYPE_DATA_COMBINED", "stored_value": "multi_point_parameterized_binary" } ] } }, "title": "MultiPointParameterizedBinary", "type": "object" }, "MultiPointReal": { "additionalProperties": false, "description": "Perform crossover in real valued genome", "properties": { "multi_point_real": { "default": 2, "description": "Perform crossover in real valued genome", "exclusiveMinimum": 0, "title": "Multi Point Real", "type": "integer", "x-materialization": [ { "ir_key": "method.crossover_type", "ir_value_type": "String", "secondary_ir_key": "method.jega.num_cross_points", "secondary_ir_value_type": "size_t", "storage_type": "TYPE_DATA_COMBINED", "stored_value": "multi_point_real" } ] } }, "title": "MultiPointReal", "type": "object" }, "Normal": { "additionalProperties": false, "description": "Level 3 of 5 - default", "properties": { "normal": { "const": true, "default": true, "description": "Level 3 of 5 - default", "title": "Normal", "type": "boolean", "x-materialization": [ { "ir_key": "method.output", "ir_value_type": "short", "storage_type": "PRESENCE_ENUM", "stored_value": "NORMAL_OUTPUT" } ] } }, "title": "Normal", "type": "object" }, "OffsetNormalConfig": { "additionalProperties": false, "description": "Set mutation offset to use a normal distribution", "properties": { "mutation_scale": { "default": 0.1, "description": "Scales mutation across range of parameter", "maximum": 1, "minimum": 0, "title": "Mutation Scale", "type": "number", "x-materialization": [ { "ir_key": "method.mutation_scale", "ir_value_type": "Real", "storage_type": "DIRECT_VALUE" } ] } }, "title": "OffsetNormalConfig", "type": "object" }, "Quiet": { "additionalProperties": false, "description": "Level 2 of 5 - less than normal", "properties": { "quiet": { "const": true, "default": true, "description": "Level 2 of 5 - less than normal", "title": "Quiet", "type": "boolean", "x-materialization": [ { "ir_key": "method.output", "ir_value_type": "short", "storage_type": "PRESENCE_ENUM", "stored_value": "QUIET_OUTPUT" } ] } }, "title": "Quiet", "type": "object" }, "ShuffleRandom": { "additionalProperties": false, "description": "Perform crossover by choosing design variable(s)", "properties": { "shuffle_random": { "$ref": "#/$defs/ShuffleRandomConfig", "x-materialization": [ { "ir_key": "method.crossover_type", "ir_value_type": "String", "storage_type": "PRESENCE_LITERAL", "stored_value": "shuffle_random" } ] } }, "required": [ "shuffle_random" ], "title": "ShuffleRandom", "type": "object" }, "ShuffleRandomConfig": { "additionalProperties": false, "description": "Perform crossover by choosing design variable(s)", "properties": { "num_parents": { "default": 2, "description": "Number of parents in random shuffle crossover", "exclusiveMinimum": 0, "title": "Num Parents", "type": "integer", "x-materialization": [ { "ir_key": "method.jega.num_parents", "ir_value_type": "size_t", "storage_type": "DIRECT_VALUE" } ] }, "num_offspring": { "default": 2, "description": "Number of offspring in random shuffle crossover", "exclusiveMinimum": 0, "title": "Num Offspring", "type": "integer", "x-materialization": [ { "ir_key": "method.jega.num_offspring", "ir_value_type": "size_t", "storage_type": "DIRECT_VALUE" } ] } }, "title": "ShuffleRandomConfig", "type": "object" }, "Silent": { "additionalProperties": false, "description": "Level 1 of 5 - minimum", "properties": { "silent": { "const": true, "default": true, "description": "Level 1 of 5 - minimum", "title": "Silent", "type": "boolean", "x-materialization": [ { "ir_key": "method.output", "ir_value_type": "short", "storage_type": "PRESENCE_ENUM", "stored_value": "SILENT_OUTPUT" } ] } }, "title": "Silent", "type": "object" }, "SogaReplacementTypeElitist": { "additionalProperties": false, "description": "Use the best designs to form a new population", "properties": { "elitist": { "const": true, "default": true, "description": "Use the best designs to form a new population", "title": "Elitist", "type": "boolean", "x-materialization": [ { "ir_key": "method.replacement_type", "ir_value_type": "String", "storage_type": "PRESENCE_LITERAL", "stored_value": "elitist" } ] } }, "title": "SogaReplacementTypeElitist", "type": "object" }, "SogaReplacementTypeRouletteWheel": { "additionalProperties": false, "description": "Replace population", "properties": { "roulette_wheel": { "const": true, "default": true, "description": "Replace population", "title": "Roulette Wheel", "type": "boolean", "x-materialization": [ { "ir_key": "method.replacement_type", "ir_value_type": "String", "storage_type": "PRESENCE_LITERAL", "stored_value": "roulette_wheel" } ] } }, "title": "SogaReplacementTypeRouletteWheel", "type": "object" }, "SogaReplacementTypeUniqueRouletteWheel": { "additionalProperties": false, "description": "Replace population", "properties": { "unique_roulette_wheel": { "const": true, "default": true, "description": "Replace population", "title": "Unique Roulette Wheel", "type": "boolean", "x-materialization": [ { "ir_key": "method.replacement_type", "ir_value_type": "String", "storage_type": "PRESENCE_LITERAL", "stored_value": "unique_roulette_wheel" } ] } }, "title": "SogaReplacementTypeUniqueRouletteWheel", "type": "object" }, "Verbose": { "additionalProperties": false, "description": "Level 4 of 5 - more than normal", "properties": { "verbose": { "const": true, "default": true, "description": "Level 4 of 5 - more than normal", "title": "Verbose", "type": "boolean", "x-materialization": [ { "ir_key": "method.output", "ir_value_type": "short", "storage_type": "PRESENCE_ENUM", "stored_value": "VERBOSE_OUTPUT" } ] } }, "title": "Verbose", "type": "object" } }, "additionalProperties": false }
- Fields:
- field convergence_tolerance: DakotaFloat = -1.7976931348623157e+308
Stopping criterion based on objective function or statistics convergence
- Constraints:
func = <function _serialize_dakota_float at 0x7f2a3de76700>
return_type = float | str
when_used = json
- field convergence_type: BestFitnessTracker | AverageFitnessTracker | None = None
Select the convergence type for JEGA methods
- field crossover_type: CrossoverType | None = None
Select a crossover type for JEGA methods
- field final_solutions: int = 0
Number of designs returned as the best solutions
- Constraints:
ge = 0
- field fitness_type: FitnessType | None = None
Select the fitness type for JEGA methods
- field id_method: str | None = None
Name the method block; helpful when there are multiple
- field initialization_type: MethodJegaCommonOptsInitializationTypeSimpleRandom | MethodJegaCommonOptsInitializationTypeUniqueRandom | MethodJegaCommonOptsInitializationTypeFlatFile [Optional]
Specify how to initialize the population
- field log_file: str = 'JEGAGlobal.log'
Specify the name of a log file
- field max_function_evaluations: int = 9223372036854775807
Number of function evaluations allowed for optimizers
- Constraints:
ge = 0
- field max_iterations: int = 9223372036854775807
Number of iterations allowed for optimizers and adaptive UQ methods
- Constraints:
ge = 0
- field model_pointer: str | None = None
Identifier for model block to be used by a method
- field mutation_type: MethodJegaCommonOptsMutationType | None = None
Select a mutation type for JEGA methods
- field output: Debug | Verbose | Normal | Quiet | Silent [Optional]
Control how much method information is written to the screen and output file
- field population_size: int = 50
Set the initial population size in JEGA methods
- Constraints:
ge = 0
- field print_each_pop: Literal[True] | None = None
Print every population to a population file
- field replacement_type: SogaReplacementTypeElitist | FavorFeasible | SogaReplacementTypeRouletteWheel | SogaReplacementTypeUniqueRouletteWheel | None = None
Select a replacement type for JEGA methods
- field scaling: Literal[True] | None = None
Turn on scaling for variables, responses, and constraints
- field seed: int | None = None
Seed of the random number generator
- Constraints:
gt = 0
Generated Pydantic models for method.soga
- pydantic model dakota.spec.method.soga.AverageFitnessTracker
Tracks the average fitness of the population
Show JSON schema
{ "title": "AverageFitnessTracker", "description": "Tracks the average fitness of the population", "type": "object", "properties": { "average_fitness_tracker": { "$ref": "#/$defs/AverageFitnessTrackerConfig", "x-materialization": [ { "ir_key": "method.jega.convergence_type", "ir_value_type": "String", "storage_type": "PRESENCE_LITERAL", "stored_value": "average_fitness_tracker" } ] } }, "$defs": { "AverageFitnessTrackerConfig": { "additionalProperties": false, "description": "Tracks the average fitness of the population", "properties": { "percent_change": { "default": -1.7976931348623157e+308, "description": "Define the convergence criterion for JEGA methods", "minimum": 0, "title": "Percent Change", "type": "number", "x-materialization": [ { "ir_key": "method.convergence_tolerance", "ir_value_type": "Real", "storage_type": "DIRECT_VALUE" }, { "ir_key": "method.jega.percent_change", "ir_value_type": "Real", "storage_type": "DIRECT_VALUE" } ] }, "num_generations": { "default": 15, "description": "Define the convergence criterion for JEGA methods", "minimum": 0, "title": "Num Generations", "type": "integer", "x-materialization": [ { "ir_key": "method.jega.num_generations", "ir_value_type": "size_t", "storage_type": "DIRECT_VALUE" } ] } }, "title": "AverageFitnessTrackerConfig", "type": "object" } }, "additionalProperties": false, "required": [ "average_fitness_tracker" ] }
- field average_fitness_tracker: AverageFitnessTrackerConfig [Required]
Tracks the average fitness of the population
- pydantic model dakota.spec.method.soga.AverageFitnessTrackerConfig
Tracks the average fitness of the population
Show JSON schema
{ "title": "AverageFitnessTrackerConfig", "description": "Tracks the average fitness of the population", "type": "object", "properties": { "percent_change": { "default": -1.7976931348623157e+308, "description": "Define the convergence criterion for JEGA methods", "minimum": 0, "title": "Percent Change", "type": "number", "x-materialization": [ { "ir_key": "method.convergence_tolerance", "ir_value_type": "Real", "storage_type": "DIRECT_VALUE" }, { "ir_key": "method.jega.percent_change", "ir_value_type": "Real", "storage_type": "DIRECT_VALUE" } ] }, "num_generations": { "default": 15, "description": "Define the convergence criterion for JEGA methods", "minimum": 0, "title": "Num Generations", "type": "integer", "x-materialization": [ { "ir_key": "method.jega.num_generations", "ir_value_type": "size_t", "storage_type": "DIRECT_VALUE" } ] } }, "additionalProperties": false }
- field num_generations: int = 15
Define the convergence criterion for JEGA methods
- Constraints:
ge = 0
- field percent_change: DakotaFloat = -1.7976931348623157e+308
Define the convergence criterion for JEGA methods
- Constraints:
ge = 0
func = <function _serialize_dakota_float at 0x7f2a3de76700>
return_type = float | str
when_used = json
- pydantic model dakota.spec.method.soga.BestFitnessTracker
Tracks the best fitness of the population
Show JSON schema
{ "title": "BestFitnessTracker", "description": "Tracks the best fitness of the population", "type": "object", "properties": { "best_fitness_tracker": { "$ref": "#/$defs/BestFitnessTrackerConfig", "x-materialization": [ { "ir_key": "method.jega.convergence_type", "ir_value_type": "String", "storage_type": "PRESENCE_LITERAL", "stored_value": "best_fitness_tracker" } ] } }, "$defs": { "BestFitnessTrackerConfig": { "additionalProperties": false, "description": "Tracks the best fitness of the population", "properties": { "percent_change": { "default": -1.7976931348623157e+308, "description": "Define the convergence criterion for JEGA methods", "minimum": 0, "title": "Percent Change", "type": "number", "x-materialization": [ { "ir_key": "method.convergence_tolerance", "ir_value_type": "Real", "storage_type": "DIRECT_VALUE" }, { "ir_key": "method.jega.percent_change", "ir_value_type": "Real", "storage_type": "DIRECT_VALUE" } ] }, "num_generations": { "default": 15, "description": "Define the convergence criterion for JEGA methods", "minimum": 0, "title": "Num Generations", "type": "integer", "x-materialization": [ { "ir_key": "method.jega.num_generations", "ir_value_type": "size_t", "storage_type": "DIRECT_VALUE" } ] } }, "title": "BestFitnessTrackerConfig", "type": "object" } }, "additionalProperties": false, "required": [ "best_fitness_tracker" ] }
- field best_fitness_tracker: BestFitnessTrackerConfig [Required]
Tracks the best fitness of the population
- pydantic model dakota.spec.method.soga.BestFitnessTrackerConfig
Tracks the best fitness of the population
Show JSON schema
{ "title": "BestFitnessTrackerConfig", "description": "Tracks the best fitness of the population", "type": "object", "properties": { "percent_change": { "default": -1.7976931348623157e+308, "description": "Define the convergence criterion for JEGA methods", "minimum": 0, "title": "Percent Change", "type": "number", "x-materialization": [ { "ir_key": "method.convergence_tolerance", "ir_value_type": "Real", "storage_type": "DIRECT_VALUE" }, { "ir_key": "method.jega.percent_change", "ir_value_type": "Real", "storage_type": "DIRECT_VALUE" } ] }, "num_generations": { "default": 15, "description": "Define the convergence criterion for JEGA methods", "minimum": 0, "title": "Num Generations", "type": "integer", "x-materialization": [ { "ir_key": "method.jega.num_generations", "ir_value_type": "size_t", "storage_type": "DIRECT_VALUE" } ] } }, "additionalProperties": false }
- field num_generations: int = 15
Define the convergence criterion for JEGA methods
- Constraints:
ge = 0
- field percent_change: DakotaFloat = -1.7976931348623157e+308
Define the convergence criterion for JEGA methods
- Constraints:
ge = 0
func = <function _serialize_dakota_float at 0x7f2a3de76700>
return_type = float | str
when_used = json
- pydantic model dakota.spec.method.soga.FavorFeasible
Prioritize feasible designs
Show JSON schema
{ "title": "FavorFeasible", "description": "Prioritize feasible designs", "type": "object", "properties": { "favor_feasible": { "const": true, "default": true, "description": "Prioritize feasible designs", "title": "Favor Feasible", "type": "boolean", "x-materialization": [ { "ir_key": "method.replacement_type", "ir_value_type": "String", "storage_type": "PRESENCE_LITERAL", "stored_value": "favor_feasible" } ] } }, "additionalProperties": false }
- Fields:
- field favor_feasible: Literal[True] = True
Prioritize feasible designs
- pydantic model dakota.spec.method.soga.FitnessType
Select the fitness type for JEGA methods
Show JSON schema
{ "title": "FitnessType", "description": "Select the fitness type for JEGA methods", "type": "object", "properties": { "merit_function": { "const": true, "description": "Balance goals of reducing objective function and satisfying constraints", "title": "Merit Function", "type": "boolean", "x-materialization": [ { "ir_key": "method.fitness_type", "ir_value_type": "String", "storage_type": "PRESENCE_LITERAL", "stored_value": "merit_function" } ] }, "constraint_penalty": { "default": 0.0, "description": "Multiplier for the penalty function", "exclusiveMinimum": 0, "title": "Constraint Penalty", "type": "number", "x-materialization": [ { "ir_key": "method.constraint_tolerance", "ir_value_type": "Real", "storage_type": "DIRECT_VALUE" } ] } }, "additionalProperties": false, "required": [ "merit_function" ] }
- field constraint_penalty: DakotaFloat = 0.0
Multiplier for the penalty function
- Constraints:
gt = 0
func = <function _serialize_dakota_float at 0x7f2a3de76700>
return_type = float | str
when_used = json
- field merit_function: Literal[True] [Required]
Balance goals of reducing objective function and satisfying constraints
- pydantic model dakota.spec.method.soga.SogaReplacementTypeElitist
Use the best designs to form a new population
Show JSON schema
{ "title": "SogaReplacementTypeElitist", "description": "Use the best designs to form a new population", "type": "object", "properties": { "elitist": { "const": true, "default": true, "description": "Use the best designs to form a new population", "title": "Elitist", "type": "boolean", "x-materialization": [ { "ir_key": "method.replacement_type", "ir_value_type": "String", "storage_type": "PRESENCE_LITERAL", "stored_value": "elitist" } ] } }, "additionalProperties": false }
- Fields:
- field elitist: Literal[True] = True
Use the best designs to form a new population
- pydantic model dakota.spec.method.soga.SogaReplacementTypeRouletteWheel
Replace population
Show JSON schema
{ "title": "SogaReplacementTypeRouletteWheel", "description": "Replace population", "type": "object", "properties": { "roulette_wheel": { "const": true, "default": true, "description": "Replace population", "title": "Roulette Wheel", "type": "boolean", "x-materialization": [ { "ir_key": "method.replacement_type", "ir_value_type": "String", "storage_type": "PRESENCE_LITERAL", "stored_value": "roulette_wheel" } ] } }, "additionalProperties": false }
- Fields:
- field roulette_wheel: Literal[True] = True
Replace population
- pydantic model dakota.spec.method.soga.SogaReplacementTypeUniqueRouletteWheel
Replace population
Show JSON schema
{ "title": "SogaReplacementTypeUniqueRouletteWheel", "description": "Replace population", "type": "object", "properties": { "unique_roulette_wheel": { "const": true, "default": true, "description": "Replace population", "title": "Unique Roulette Wheel", "type": "boolean", "x-materialization": [ { "ir_key": "method.replacement_type", "ir_value_type": "String", "storage_type": "PRESENCE_LITERAL", "stored_value": "unique_roulette_wheel" } ] } }, "additionalProperties": false }
- field unique_roulette_wheel: Literal[True] = True
Replace population

