Skip to content

Commit b417b06

Browse files
committed
release ready
1 parent ab78439 commit b417b06

11 files changed

+78
-58
lines changed

NEWS.md

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,10 @@
1+
# mlrMBO 1.1.2
2+
3+
* Adaptive infill criterions. Infill criterions now have to support an `progress` argument. Termination criterions now can supply a `progress` return value.
4+
* Fix for parEGO + EI (Issue #407)
5+
* `save.on.disk` now can take arbitrary numeric vectors to specify iterations, when to save on disk.
6+
* Spelling mistakes for infill criterions will now be cought. (Issue #417)
7+
18
# mlrMBO 1.1.1
29

310
* `makeMBOControl()` has `on.surrogate.error` argument which enables random proposals if the surrogate model fails.

_pkgdown.yml

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,8 @@ navbar:
2626
href: articles/supplementary/human_in_the_loop_MBO.html
2727
- text: mlrMBO and the Command Line
2828
href: articles/supplementary/mlrmbo_and_the_command_line.html
29+
- text: Adaptive Infill Criteria
30+
href: articles/supplementary/adaptive_infill_criteria.html
2931
- text: Reference
3032
icon: fa-book
3133
href: reference/index.html
@@ -44,7 +46,14 @@ reference:
4446
- mboFinalize
4547
- mbo_parallel
4648
- mlrMBO_examples
47-
49+
- title: "Human in the loop MBO"
50+
desc: "Controlling sequential manual MBO"
51+
contents:
52+
- initSMBO
53+
- proposePoints
54+
- updateSMBO
55+
- finalizeSMBO
56+
- plot.OptState
4857
- title: "Infill Criteria"
4958
desc: "Infill Criteria and Functions to generate and interact with Infill Criteria."
5059
contents:

vignettes/mlrMBO.Rmd

Lines changed: 0 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,5 @@
11
---
22
title: "mlrMBO: A brief introduction"
3-
output:
4-
html_document:
5-
toc: true
6-
toc_float:
7-
collapsed: true
8-
smooth_scroll: false
9-
dev: svg
103
vignette: >
114
%\VignetteIndexEntry{Quick introduction}
125
%\VignetteEngine{knitr::rmarkdown}
Lines changed: 61 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,61 @@
1+
---
2+
title: "Adaptive Infill Criteria"
3+
vignette: >
4+
%\VignetteIndexEntry{Infill criteria}
5+
%\VignetteEngine{knitr::rmarkdown}
6+
%\VignetteEncoding{UTF-8}
7+
---
8+
9+
```{r setup, include=FALSE}
10+
library(mlrMBO)
11+
library(rgenoud)
12+
set.seed(1)
13+
knitr::opts_chunk$set(cache = TRUE, collapse = FALSE)
14+
knitr::knit_hooks$set(document = function(x){
15+
gsub("```\n*```r*\n*", "", x)
16+
})
17+
```
18+
19+
## Purpose
20+
21+
This vignette gives a short example of the usage of the adaptive infill criteria in `mlrMBO`.
22+
23+
## Adaptive Infill Criteria
24+
25+
An adaptive infill criterion can change its behaviour based on the progress of the optimization.
26+
The progress has to be supplied by the termination criterion.
27+
All integrated termination criteria support this feature.
28+
29+
## Exemplary Usage of the Adaptive CB
30+
31+
To specify which infill criterion should be used, the `MBOControl` object has to be extended by calling `setMBOControlInfill()`.
32+
In addition to the criterion you can also set the parameters of the infill criterion optimization.
33+
The criterion itself is created with `makeMBOInfillCrit*()`.
34+
The most common infill criteria are predefined like `crit.ei` and `crit.cb2`. See `?MBOInfillCrit` for details.
35+
36+
```{r control}
37+
ctrl = makeMBOControl()
38+
ctrl = setMBOControlTermination(ctrl, iters = 10L)
39+
ctrl = setMBOControlInfill(ctrl, crit = makeMBOInfillCritAdaCB(cb.lambda.start = 4, cb.lambda.end = 0.1))
40+
```
41+
42+
This will lead to an CB infill criterion ($CB(x) = \hat{\mu}(x) \pm \lambda * \hat{s}(x)$) that will focus on uncertain regions in the beginning (`cb.lambda.start = 4`) and towards the end will have a stronger focus on areas close to the global minimum of the surrogate (`cb.lambda.end = 0.1`).
43+
44+
```{r fun}
45+
test.fun = makeSingleObjectiveFunction(
46+
fn = function(x) x[1]^2 * sin(3 * x[2]),
47+
par.set = makeNumericParamSet(lower = 0, upper = 1, len = 2L)
48+
)
49+
```
50+
51+
You can now start the optimization like usual:
52+
53+
```{r example, results = "hide", message = FALSE, warning = FALSE}
54+
res = mbo(test.fun, control = ctrl)
55+
```
56+
57+
If we look at the OptPath we can see the different progress values and the resulting different values of lambda.
58+
59+
```{r res}
60+
tail(as.data.frame(res$opt.path))
61+
```

vignettes/supplementary/human_in_the_loop_MBO.Rmd

Lines changed: 0 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,5 @@
11
---
22
title: "Human-in-the-loop MBO"
3-
output:
4-
html_document:
5-
toc: true
6-
toc_float:
7-
collapsed: true
8-
smooth_scroll: false
9-
dev: svg
103
vignette: >
114
%\VignetteIndexEntry{Human-in-the-loop MBO}
125
%\VignetteEngine{knitr::rmarkdown}

vignettes/supplementary/infill_criteria.Rmd

Lines changed: 0 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,5 @@
11
---
22
title: "Infill criteria"
3-
output:
4-
html_document:
5-
toc: true
6-
toc_float:
7-
collapsed: true
8-
smooth_scroll: false
9-
dev: svg
103
vignette: >
114
%\VignetteIndexEntry{Infill criteria}
125
%\VignetteEngine{knitr::rmarkdown}

vignettes/supplementary/machine_learning_with_mlrmbo.Rmd

Lines changed: 0 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,5 @@
11
---
22
title: "Machine learning with mlrMBO: Tuning hyperparameters with model-based optimization"
3-
output:
4-
html_document:
5-
toc: true
6-
toc_float:
7-
collapsed: true
8-
smooth_scroll: false
9-
dev: svg
103
vignette: >
114
%\VignetteIndexEntry{Machine learning with mlrMBO}
125
%\VignetteEngine{knitr::rmarkdown}

vignettes/supplementary/mixed_space_optimization.Rmd

Lines changed: 0 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,5 @@
11
---
22
title: "Mixed Space Optimization"
3-
output:
4-
html_document:
5-
toc: true
6-
toc_float:
7-
collapsed: true
8-
smooth_scroll: false
9-
dev: svg
103
vignette: >
114
%\VignetteIndexEntry{Mixed Space Optimization}
125
%\VignetteEngine{knitr::rmarkdown}

vignettes/supplementary/mlrmbo_and_the_command_line.rmd

Lines changed: 0 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,5 @@
11
---
22
title: mlrMBO and the command line
3-
output:
4-
html_document:
5-
toc: true
6-
toc_float:
7-
collapsed: true
8-
smooth_scroll: false
9-
dev: svg
103
vignette: >
114
%\VignetteIndexEntry{mlrMBO and the Command Line}
125
%\VignetteEngine{knitr::rmarkdown}

vignettes/supplementary/noisy_optimization.Rmd

Lines changed: 0 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,5 @@
11
---
22
title: "Noisy Optimization"
3-
output:
4-
html_document:
5-
toc: true
6-
toc_float:
7-
collapsed: true
8-
smooth_scroll: false
9-
dev: svg
103
vignette: >
114
%\VignetteIndexEntry{Noisy Optimization}
125
%\VignetteEngine{knitr::rmarkdown}

0 commit comments

Comments
 (0)