Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
42 changes: 42 additions & 0 deletions examples/GKLS.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
gkls:
name: GKLS
long_name: GKLS Generator
type: generator
variables:
binary: 0
categorical: 0
continuous:
integer: 0
objectives:
- 1
constraints:
soft_constraints:
box: 0
allows_partial_evaluation: no
can_evaluate_objectives_independently: no
code_examples: null
description: a set of test problems is constructed by defining a convex quadratic function which is systematically distorted by polynomials in order to produce local (and one global) minima
dynamic_type: null
fidelity_levels: 1
modality:
- unimodal
- multimodal
noise_type: null
references:
- title: Algorithm 829 Software for Generation ofClasses of Test Functions with Known Localand Global Minima for Global Optimization
authors: MARCO GAVIANO, DMITRI E. KVASOV, DANIELA LERA and YAROSLAV D. SERGEYEV
url: https://dl.acm.org/doi/epdf/10.1145/962437.962444
source: artificial
tags: null
implementations:
- gkls_c
gkls_c:
name: GKLS_C
description: Original C-implementation of GKLS
link:
- type: zipfils
url: https://netlib.org/toms/829.gz
language: C
evaluation_time: null
requirements: null

145 changes: 145 additions & 0 deletions examples/ShapeOptimizationCFD.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,145 @@
shapoptcfd:
name: ShapeOptimisation w CFD
long_name: Computationally Expensive Shape Optimisation Problems Using Computational Fluid Dynamics
type: suite
variables:
binary: 0
categorical: 0
continuous:
min: 2
integer: 0
objectives:
- [1,2]
constraints:
function:
min: 1
box: 1
soft_constraints: null
allows_partial_evaluation: no
can_evaluate_objectives_independently: no
code_examples: null
description: A Suite of Computationally Expensive Shape Optimisation Problems Using Computational Fluid Dynamics
dynamic_type: null
fidelity_levels: 1
modality: null
noise_type: null
references:
- title: A Suite of Computationally Expensive Shape Optimisation Problems Using Computational Fluid Dynamics
authors: S. Daniels, A. Rahat, R. Everson, G. Tabor and J. Fieldsend.
url: https://link.springer.com/chapter/10.1007/978-3-319-99259-4_24
source: real-world
tags: null
problems:
- pitzdaily
- kaplandrafttube
- heatexchanger
implementations:
- shapeopt
shapeopt:
name: shapeopt
description: Original implementation of ShapeOptimisation w CFD
link:
- type: repository
url: https://bitbucket.org/arahat/cfd-test-problem-suite/src/master/
language: Python
evaluation_time: 30-1000 seconds
requirements: Relies on OpenFOAM
pitzdaily:
name: PitzDaily
long_name: PitzDaily Shape Optimisation Problem
type: problem
variables:
binary: 0
categorical: 0
continuous:
min: 2
integer: 0
objectives:
- 1
constraints:
function:
min: 1
box: 1
soft_constraints: null
allows_partial_evaluation: no
can_evaluate_objectives_independently: no
code_examples: null
description: A Computationally Expensive Shape Optimisation Problem Using Computational Fluid Dynamics
dynamic_type: null
fidelity_levels: 1
modality: null
noise_type: null
references:
- title: A Suite of Computationally Expensive Shape Optimisation Problems Using Computational Fluid Dynamics
authors: S. Daniels, A. Rahat, R. Everson, G. Tabor and J. Fieldsend.
url: https://link.springer.com/chapter/10.1007/978-3-319-99259-4_24
source: real-world
tags: null
implementations:
- shapeopt
kaplandrafttube:
name: Kaplan Draft Tube
long_name: Sharp-heeled Kaplan Draft Tube Shape Optimisation Problem
type: problem
variables:
binary: 0
categorical: 0
continuous:
min: 2
integer: 0
objectives:
- 1
constraints:
function:
min: 1
box: 1
soft_constraints: null
allows_partial_evaluation: no
can_evaluate_objectives_independently: no
code_examples: null
description: A Computationally Expensive Shape Optimisation Problem Using Computational Fluid Dynamics
dynamic_type: null
fidelity_levels: 1
modality: null
noise_type: null
references:
- title: A Suite of Computationally Expensive Shape Optimisation Problems Using Computational Fluid Dynamics
authors: S. Daniels, A. Rahat, R. Everson, G. Tabor and J. Fieldsend.
url: https://link.springer.com/chapter/10.1007/978-3-319-99259-4_24
source: real-world
tags: null
implementations:
- shapeopt
heatexchanger:
name: Heat Exchanger
long_name: Heat Exchanger Shape Optimisation Problem
type: problem
variables:
binary: 0
categorical: 0
continuous:
min: 2
integer: 0
objectives:
- 2
constraints:
function:
min: 1
box: 1
soft_constraints: null
allows_partial_evaluation: no
can_evaluate_objectives_independently: no
code_examples: null
description: A Computationally Expensive Shape Optimisation Problem Using Computational Fluid Dynamics
dynamic_type: null
fidelity_levels: 1
modality: null
noise_type: null
references:
- title: A Suite of Computationally Expensive Shape Optimisation Problems Using Computational Fluid Dynamics
authors: S. Daniels, A. Rahat, R. Everson, G. Tabor and J. Fieldsend.
url: https://link.springer.com/chapter/10.1007/978-3-319-99259-4_24
source: real-world
tags: null
implementations:
- shapeopt
85 changes: 85 additions & 0 deletions template.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,85 @@
# Please enter the information relevant to your problem/suite/generator/implementation.
#
# Instructions:
# - Enter null for fields where the value is unknown.
# - If there are any additional properties you want to add, use the 'tags' list to add them.

# Problem / suite / generator example
your_problem_id: # Unique ID for the entry (e.g., "my_problem").
type: problem # One of problem, suite or generator
name: short_problem_name # Short problem name / abbreviation
long_name: your_full_problem_name # Full problem name
description: lorem ipsum # Textual description of the problem/suite/generator
tags: # List of tags or keywords not covered by other properties, examples below
- Convex Pareto front
- Disconnected Pareto front segments
references: # List of references or citations
- title: Good Work
authors:
- Author One
- Author Two
link: https://url.mine
implementations: # List with implementation IDs, multiple can be listed
- your_implementation # If the implementation you want to refer to does not exist yet, make an entry for the implementation of the problem/suite/generator as well.
objectives: # The number of objectives: either as an integer, list or range
min: 2
max: 5
variables: # For each variable type
- type: continuous # Type of variable, one of: continuous, integer, binary, categorical, unknown
dim: # Number of variables as int, list of ints, or range with min and/or max
min: 1
max: 80
- type: integer
dim:
max: 5 # Or specify only one of the bounds, and leave the other as null
- type: binary
dim: 100 # A single value
- type: categorical
dim: [0,5] # List of possible values
- type: unknown # If the variable type(s) are unknown, the number of dimensions can still be given
dim: 42
constraints: # Constraints can be give as a list
- type: box # Constraints have a type: box, linear, function, or unknown
number: 1 # The number of each type of constraint can be given as int, list of ints, or as range with min and max
- type: linear
hard: yes # This is a hard constraint, other options are: no, some, ?
equality: yes # This is an equality constraint, other options are: no, some, ?
number: [2,5] # There can be two or five constraints of this type
- type: function # This is a non-linear constraint
hard: no # This is a soft constraint
equality: no # This is an inequality constraint
number: # There can be between 5 and 10 constraints of this type
min: 5
max: 10
- type: unknown # The type of these constraints is unknown
number: 3
dynamic_type: null # List of the dynamic properties, or null.
noise_type: # List of the types of noise, or null, e.g.:
- additive
- multiplicative
- heteroscedastic
allows_partial_evaluation: null # Whether evaluation of subset(s) of decision variables are possible. Can be: yes, no, some, ?
can_evaluate_objectives_independently: yes / no / some # Can objective functions be evaluated independently of each other yes, no or some
modality: null # List of modality types (e.g. unimodal, multimodal)
fidelity_levels: 1 # Number or list of fidelity levels for multi-fidelity problems. If single fidelity, enter 1.
evaluation_time: # Approximate time for a single full function evaluation
- seconds
- minutes
code_examples: null # Link to a code example in the OPL repository
source: Real-world # Source of the problem(s), e.g., artificial, real-world
instances: null # For problems, specify the number of instances, or a list of instance ids, or a range of instance ids. For suites, specify the number of problems, or a list of problem ids, or a range of problem ids. For generators, specify the number of problems that can be generated, or a list of problem ids that can be generated, or a range of problem ids that can be generated.
problems: null # For suites, optionally specify the problems that are part of the suite. Each problem should then have a unique id, and be another entry in this yaml file. For generators, specify the problems that can be generated. Each problem should have a unique id, and be another entry in this yaml file. For problems, enter null.

# Implementation example
your_implementation: # Unique ID for the implementation (e.g., "my_implementation").
type: implementation # The type is always implementation here
name: your_implementation
description: lorem ipsum # Textual description of the implementation
links: # A list of links to the implementation sources can be provided
- type: GitHub # Optionally specifiy the type of the link
url: github.com/yourproject # URL
- type: Package
url: linktoyourpackage
language: Python # Language of the implementation
evaluation_time: seconds # Approximate time for a single full function evaluation
requirements: null # Any important requirements to be able to run your implementation