Skip to content

Commit 3c99fb5

Browse files
authored
feat: add async optimization (#138)
* feat: add async optimization * ... * ... * ... * ... * ... * ... * ... * ... * ... * ...
1 parent 4ce4d5e commit 3c99fb5

File tree

67 files changed

+4680
-123
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

67 files changed

+4680
-123
lines changed

.github/workflows/dev-cmd-check.yml

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -42,6 +42,10 @@ jobs:
4242
with:
4343
r-version: ${{ matrix.config.r }}
4444

45+
- uses: supercharge/redis-github-action@1.7.0
46+
with:
47+
redis-version: 7
48+
4549
- uses: r-lib/actions/setup-r-dependencies@v2
4650
with:
4751
extra-packages: any::rcmdcheck
@@ -57,3 +61,5 @@ jobs:
5761
limit-access-to-actor: true
5862

5963
- uses: r-lib/actions/check-r-package@v2
64+
with:
65+
args: 'c("--no-manual", "--as-cran")'

.github/workflows/r-cmd-check.yml

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -42,6 +42,10 @@ jobs:
4242
with:
4343
r-version: ${{ matrix.config.r }}
4444

45+
- uses: supercharge/redis-github-action@1.7.0
46+
with:
47+
redis-version: 7
48+
4549
- uses: r-lib/actions/setup-r-dependencies@v2
4650
with:
4751
extra-packages: any::rcmdcheck
@@ -53,3 +57,6 @@ jobs:
5357
limit-access-to-actor: true
5458

5559
- uses: r-lib/actions/check-r-package@v2
60+
with:
61+
args: 'c("--no-manual", "--as-cran")'
62+

DESCRIPTION

Lines changed: 18 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ URL: https://mlr3fselect.mlr-org.com,
2424
https://github.com/mlr-org/mlr3fselect
2525
BugReports: https://github.com/mlr-org/mlr3fselect/issues
2626
Depends:
27-
mlr3 (>= 0.23.0.9000),
27+
mlr3 (>= 0.23.0),
2828
R (>= 3.1.0)
2929
Imports:
3030
bbotk (>= 1.5.0.9000),
@@ -38,32 +38,43 @@ Imports:
3838
stabm
3939
Suggests:
4040
e1071,
41+
fastVoteR,
4142
genalg,
43+
mirai,
4244
mlr3learners,
4345
mlr3pipelines,
4446
rpart,
45-
fastVoteR,
47+
rush,
48+
rush (>= 0.2.0),
4649
testthat (>= 3.0.0)
47-
Remotes:
48-
mlr-org/mlr3,
49-
mlr-org/bbotk
5050
Config/testthat/edition: 3
51-
Config/testthat/parallel: true
51+
Config/testthat/parallel: false
5252
Encoding: UTF-8
5353
Language: en-US
5454
NeedsCompilation: no
5555
Roxygen: list(markdown = TRUE)
5656
RoxygenNote: 7.3.2
5757
Collate:
58+
'ArchiveAsyncFSelect.R'
59+
'ArchiveAsyncFSelectFrozen.R'
5860
'ArchiveBatchFSelect.R'
5961
'AutoFSelector.R'
62+
'CallbackAsyncFSelect.R'
6063
'CallbackBatchFSelect.R'
64+
'ContextAsyncFSelect.R'
6165
'ContextBatchFSelect.R'
6266
'EnsembleFSResult.R'
67+
'FSelectInstanceAsyncSingleCrit.R'
68+
'FSelectInstanceAsyncMultiCrit.R'
6369
'FSelectInstanceBatchSingleCrit.R'
6470
'FSelectInstanceBatchMultiCrit.R'
6571
'mlr_fselectors.R'
6672
'FSelector.R'
73+
'FSelectorAsync.R'
74+
'FSelectorAsyncDesignPoints.R'
75+
'FSelectorAsyncExhaustiveSearch.R'
76+
'FSelectorAsyncFromOptimizerAsync.R'
77+
'FSelectorAsyncRandomSearch.R'
6778
'FSelectorBatch.R'
6879
'FSelectorBatchDesignPoints.R'
6980
'FSelectorBatchExhaustiveSearch.R'
@@ -75,6 +86,7 @@ Collate:
7586
'FSelectorBatchSequential.R'
7687
'FSelectorBatchShadowVariableSearch.R'
7788
'ObjectiveFSelect.R'
89+
'ObjectiveFSelectAsync.R'
7890
'ObjectiveFSelectBatch.R'
7991
'assertions.R'
8092
'auto_fselector.R'

NAMESPACE

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
11
# Generated by roxygen2: do not edit by hand
22

3+
S3method(as.data.table,ArchiveAsyncFSelect)
4+
S3method(as.data.table,ArchiveAsyncFSelectFrozen)
35
S3method(as.data.table,ArchiveBatchFSelect)
46
S3method(as.data.table,DictionaryFSelector)
57
S3method(as.data.table,EnsembleFSResult)
@@ -8,13 +10,24 @@ S3method(extract_inner_fselect_archives,BenchmarkResult)
810
S3method(extract_inner_fselect_archives,ResampleResult)
911
S3method(extract_inner_fselect_results,BenchmarkResult)
1012
S3method(extract_inner_fselect_results,ResampleResult)
13+
export(ArchiveAsyncFSelect)
14+
export(ArchiveAsyncFSelectFrozen)
1115
export(ArchiveBatchFSelect)
1216
export(AutoFSelector)
17+
export(CallbackAsyncFSelect)
18+
export(ContextAsyncFSelect)
1319
export(ContextBatchFSelect)
1420
export(EnsembleFSResult)
21+
export(FSelectInstanceAsyncMultiCrit)
22+
export(FSelectInstanceAsyncSingleCrit)
1523
export(FSelectInstanceBatchMultiCrit)
1624
export(FSelectInstanceBatchSingleCrit)
1725
export(FSelector)
26+
export(FSelectorAsync)
27+
export(FSelectorAsyncDesignPoints)
28+
export(FSelectorAsyncExhaustiveSearch)
29+
export(FSelectorAsyncFromOptimizerAsync)
30+
export(FSelectorAsyncRandomSearch)
1831
export(FSelectorBatch)
1932
export(FSelectorBatchDesignPoints)
2033
export(FSelectorBatchExhaustiveSearch)
@@ -26,14 +39,18 @@ export(FSelectorBatchRandomSearch)
2639
export(FSelectorBatchSequential)
2740
export(FSelectorBatchShadowVariableSearch)
2841
export(ObjectiveFSelect)
42+
export(ObjectiveFSelectAsync)
2943
export(ObjectiveFSelectBatch)
44+
export(assert_async_fselect_callback)
45+
export(assert_async_fselect_callbacks)
3046
export(assert_fselect_instance)
3147
export(assert_fselect_instance_async)
3248
export(assert_fselect_instance_batch)
3349
export(assert_fselector_async)
3450
export(assert_fselector_batch)
3551
export(assert_fselectors)
3652
export(auto_fselector)
53+
export(callback_async_fselect)
3754
export(callback_batch_fselect)
3855
export(clbk)
3956
export(clbks)
@@ -45,6 +62,7 @@ export(fs)
4562
export(fselect)
4663
export(fselect_nested)
4764
export(fsi)
65+
export(fsi_async)
4866
export(fss)
4967
export(mlr_callbacks)
5068
export(mlr_fselectors)

NEWS.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
# mlr3fselect (development version)
22

3+
* feat: Introduce asynchronous optimization with the `FSelectorAsync` and `FSelectInstanceAsync*` classes.
34
* feat: Add `max_nfeatures` argument in the `pareto_front()` and `knee_points()` methods of an `EnsembleFSResult()`
45

56
# mlr3fselect 1.3.0

0 commit comments

Comments
 (0)