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
53 changes: 53 additions & 0 deletions template.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,53 @@
# Please enter the information relevant to your problem/suite/generator.
#
# Instructions:
# - Give your entry a unique id (e.g., "my_problem").
# - Enter null for fields where the value is unknown.
# - If there are any properties you want to add, use the 'tags' list to add them.
your_problem_id:
name: short_problem_name
long_name: your_full_problem_name
type: problem # One of problem, suite or generator
variables: # For each variable type, enter the number of variables of that type, or a range by specifiying min and/or max
binary: 0 # Number of this varialbe type
categorical: [0,5] # Options for numbers of this variable type (here, the suite has problems with either 0 or 5 categorical variables)
continuous: # For a range, you can specify the bounds
max: 80
min: 1
integer: # Or specify only one of the bounds, and leave the other as null
max: 5
objectives: # For objectives, also indicate the number, either as an integer, list or range
- 1
constraints: #constraints refers to hard constrains (violations don't have a true fitness value)
#Similar to variables, specify for each type of constraints the number, list, or a range.
box: 1
soft_constraints:
linear:
max: 5
function: [5, 10]
allows_partial_evaluation: yes / no / some #Whether evaluation of subset(s) of decision variables are possible
can_evaluate_objectives_independently: yes / no / some # Can objective functions be evaluated independently of each other yes, no or some
code_examples: null #Link to a code example in the OPL repository
description: lorem ipsum #Textual description of the problem/suite/generator
dynamic_type: null #If the problem is dynamic, specify the type of dynamics. If not, enter null.
fidelity_levels: 1 #Number of fidelity levels, if applicable. If not, enter 1.
modality: null #list of modalities (e.g. unimodal, multimodal)
noise_type: null #type of noise (e.g. additive, multiplicative, heteroscedastic)
references: null #list of references or citations
source: null #source of the problem/suite/generator
tags: null #list of tags or keywords
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.
implementations:
- your_implementation #If available, make an entry for the implementation of the problem/suite/generator as well. You can list multiple implementations if needed
your_implementation: #implementations should also have unique identifiers
name: your_implementation
description: lorem ipsum #textual description of the implementation
link:
- type: GitHub
url: github.com/yourproject
- 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 implemenation