Skip to content

Commit 194a68d

Browse files
authored
Make CoopCompKRG a true SMT surrogate model (#808)
This PR moves `CoopCompKRG` from `applications` to `surrogate_models`. To respect the `SurrogateModel` API: * add a `comp_var` option to specify the [nx, ncomp] mapping or set the `n_comp` option which allows to compute `comp_var` randomly. This allows to make `train()` call compatible. * support derivatives and variance_derivatives (implementations inherited from `KrgBased`) Resolves #804
1 parent f86ecc4 commit 194a68d

14 files changed

Lines changed: 403 additions & 358 deletions

File tree

doc/_src_docs/applications.rst

Lines changed: 0 additions & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

doc/_src_docs/applications.rstx

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,6 @@ Three methods are available:
2020
applications/mfkplsk
2121
applications/ego
2222
applications/podi
23-
applications/cckrg
2423

2524

2625
The intent is to provide applications of surrogate models in higher level methods.

doc/_src_docs/surrogate_models/gpr.rst

Lines changed: 3 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

doc/_src_docs/surrogate_models/gpr.rstx

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ SMT implements several surrogate models related to Gaussian process regression:
99
* `GEKPLS` leverages on derivatives training data to improve the surrogate model quality.
1010
* `MGP` takes into account the uncertainty of the hyperparameters defined as a density function.
1111
* `SGP` implements sparse methods allowing to deal with large training dataset as others implementations have a time complexity of :math:`O(n^3)` as well as a :math:`O(n^2)` memory cost in the number :math:`n` of training points.
12+
* `CCKRG` implements cooperative components Kriging, a way of fitting a high-dimensional ordinary Kriging model by sequential lower-dimensional component model fits. For each component, only the associated hyperparameters are optimized. All other hyperparameters are set to a so-called cooperative context vector, which contains the current best hyperparameter values.
1213

1314
Here below, the links to the dedicated pages:
1415

@@ -23,3 +24,5 @@ Here below, the links to the dedicated pages:
2324
gpr/gekpls
2425
gpr/mgp
2526
gpr/sgp
27+
gpr/cckrg
28+

doc/_src_docs/applications/cckrg.rst renamed to doc/_src_docs/surrogate_models/gpr/cckrg.rst

Lines changed: 18 additions & 54 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

doc/_src_docs/applications/cckrg.rstx renamed to doc/_src_docs/surrogate_models/gpr/cckrg.rstx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,9 +17,9 @@ References
1717
Usage
1818
-----
1919

20-
.. embed-test-print :: smt.applications.tests.test_cckrg , TestCCKRG , run_cckrg_example
20+
.. embed-test-print :: smt.surrogate_models.tests.test_cckrg , TestCCKRG , run_cckrg_example
2121

2222
Options
2323
-------
2424

25-
.. embed-options-table :: smt.applications , CoopCompKRG , options
25+
.. embed-options-table :: smt.surrogate_models , CoopCompKRG , options

doc/_src_docs/surrogate_models/gpr/gpx.rst

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

smt/applications/__init__.py

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,6 @@
88
from .moe import MOE, MOESurrogateModel
99
from .vfm import VFM
1010
from .podi import PODI, SubspacesInterpolation
11-
from .cckrg import CoopCompKRG
1211
from .mixed_integer import (
1312
MixedIntegerSamplingMethod,
1413
MixedIntegerSurrogateModel,
@@ -31,7 +30,6 @@
3130
"Evaluator",
3231
"PODI",
3332
"SubspacesInterpolation",
34-
"CoopCompKRG",
3533
"MixedIntegerSamplingMethod",
3634
"MixedIntegerSurrogateModel",
3735
"MixedIntegerKrigingModel",

0 commit comments

Comments
 (0)