|
2 | 2 |
|
3 | 3 | import math |
4 | 4 | from dataclasses import dataclass |
5 | | -from typing import Any, Literal |
| 5 | +from typing import TYPE_CHECKING, Any, Literal |
6 | 6 |
|
7 | 7 | import numpy as np |
8 | 8 | from numpy.typing import NDArray |
|
29 | 29 | PositiveInt, |
30 | 30 | ) |
31 | 31 |
|
32 | | -if IS_NEVERGRAD_INSTALLED: |
| 32 | +if TYPE_CHECKING: |
33 | 33 | import nevergrad as ng |
34 | 34 |
|
35 | 35 |
|
@@ -77,6 +77,8 @@ def _solve_internal_problem( |
77 | 77 | if not IS_NEVERGRAD_INSTALLED: |
78 | 78 | raise NotInstalledError(NEVERGRAD_NOT_INSTALLED_ERROR) |
79 | 79 |
|
| 80 | + import nevergrad as ng |
| 81 | + |
80 | 82 | configured_optimizer = ng.optimizers.ConfPSO( |
81 | 83 | transform=self.transform, |
82 | 84 | popsize=self.population_size, |
@@ -160,6 +162,8 @@ def _solve_internal_problem( |
160 | 162 | if not IS_NEVERGRAD_INSTALLED: |
161 | 163 | raise NotInstalledError(NEVERGRAD_NOT_INSTALLED_ERROR) |
162 | 164 |
|
| 165 | + import nevergrad as ng |
| 166 | + |
163 | 167 | cma_options = { |
164 | 168 | "AdaptSigma": self.step_size_adaptive, |
165 | 169 | "CSA_dampfac": self.CSA_dampfac, |
@@ -285,6 +289,8 @@ def _solve_internal_problem( |
285 | 289 | if not IS_NEVERGRAD_INSTALLED: |
286 | 290 | raise NotInstalledError(NEVERGRAD_NOT_INSTALLED_ERROR) |
287 | 291 |
|
| 292 | + import nevergrad as ng |
| 293 | + |
288 | 294 | configured_optimizer = ng.optimizers.ParametrizedOnePlusOne( |
289 | 295 | noise_handling=self.noise_handling, |
290 | 296 | mutation=self.mutation, |
@@ -363,6 +369,8 @@ def _solve_internal_problem( |
363 | 369 | if not IS_NEVERGRAD_INSTALLED: |
364 | 370 | raise NotInstalledError(NEVERGRAD_NOT_INSTALLED_ERROR) |
365 | 371 |
|
| 372 | + import nevergrad as ng |
| 373 | + |
366 | 374 | configured_optimizer = ng.optimizers.DifferentialEvolution( |
367 | 375 | scale=self.scale, |
368 | 376 | recommendation=self.recommendation, |
@@ -418,6 +426,8 @@ def _solve_internal_problem( |
418 | 426 | if not IS_NEVERGRAD_INSTALLED: |
419 | 427 | raise NotInstalledError(NEVERGRAD_NOT_INSTALLED_ERROR) |
420 | 428 |
|
| 429 | + import nevergrad as ng |
| 430 | + |
421 | 431 | configured_optimizer = ng.optimizers.BayesOptim( |
422 | 432 | init_budget=self.init_budget, |
423 | 433 | pca=self.pca, |
@@ -470,6 +480,8 @@ def _solve_internal_problem( |
470 | 480 | if not IS_NEVERGRAD_INSTALLED: |
471 | 481 | raise NotInstalledError(NEVERGRAD_NOT_INSTALLED_ERROR) |
472 | 482 |
|
| 483 | + import nevergrad as ng |
| 484 | + |
473 | 485 | configured_optimizer = ng.optimizers.EMNA( |
474 | 486 | isotropic=self.isotropic, |
475 | 487 | naive=self.noise_handling, |
@@ -518,6 +530,8 @@ def _solve_internal_problem( |
518 | 530 | if not IS_NEVERGRAD_INSTALLED: |
519 | 531 | raise NotInstalledError(NEVERGRAD_NOT_INSTALLED_ERROR) |
520 | 532 |
|
| 533 | + import nevergrad as ng |
| 534 | + |
521 | 535 | configured_optimizer = ng.optimizers.cGA |
522 | 536 |
|
523 | 537 | res = _nevergrad_internal( |
@@ -561,6 +575,8 @@ def _solve_internal_problem( |
561 | 575 | if not IS_NEVERGRAD_INSTALLED: |
562 | 576 | raise NotInstalledError(NEVERGRAD_NOT_INSTALLED_ERROR) |
563 | 577 |
|
| 578 | + import nevergrad as ng |
| 579 | + |
564 | 580 | configured_optimizer = ng.optimizers.EDA |
565 | 581 |
|
566 | 582 | res = _nevergrad_internal( |
@@ -606,6 +622,8 @@ def _solve_internal_problem( |
606 | 622 | if not IS_NEVERGRAD_INSTALLED: |
607 | 623 | raise NotInstalledError(NEVERGRAD_NOT_INSTALLED_ERROR) |
608 | 624 |
|
| 625 | + import nevergrad as ng |
| 626 | + |
609 | 627 | configured_optimizer = ng.optimizers.ParametrizedTBPSA( |
610 | 628 | naive=self.noise_handling, |
611 | 629 | initial_popsize=self.initial_popsize, |
@@ -658,6 +676,8 @@ def _solve_internal_problem( |
658 | 676 | if not IS_NEVERGRAD_INSTALLED: |
659 | 677 | raise NotInstalledError(NEVERGRAD_NOT_INSTALLED_ERROR) |
660 | 678 |
|
| 679 | + import nevergrad as ng |
| 680 | + |
661 | 681 | configured_optimizer = ng.optimizers.RandomSearchMaker( |
662 | 682 | stupid=False, |
663 | 683 | middle_point=self.middle_point, |
@@ -715,6 +735,8 @@ def _solve_internal_problem( |
715 | 735 | if not IS_NEVERGRAD_INSTALLED: |
716 | 736 | raise NotInstalledError(NEVERGRAD_NOT_INSTALLED_ERROR) |
717 | 737 |
|
| 738 | + import nevergrad as ng |
| 739 | + |
718 | 740 | configured_optimizer = ng.optimizers.SamplingSearch( |
719 | 741 | sampler=self.sampler, |
720 | 742 | scrambled=self.scrambled, |
@@ -820,6 +842,8 @@ def _solve_internal_problem( |
820 | 842 | if not IS_NEVERGRAD_INSTALLED: |
821 | 843 | raise NotInstalledError(NEVERGRAD_NOT_INSTALLED_ERROR) |
822 | 844 |
|
| 845 | + import nevergrad as ng |
| 846 | + |
823 | 847 | configured_optimizer = getattr(ng.optimizers, self.optimizer) |
824 | 848 |
|
825 | 849 | res = _nevergrad_internal( |
@@ -903,6 +927,8 @@ def _solve_internal_problem( |
903 | 927 | if not IS_NEVERGRAD_INSTALLED: |
904 | 928 | raise NotInstalledError(NEVERGRAD_NOT_INSTALLED_ERROR) |
905 | 929 |
|
| 930 | + import nevergrad as ng |
| 931 | + |
906 | 932 | configured_optimizer = getattr(ng.optimizers, self.optimizer) |
907 | 933 |
|
908 | 934 | res = _nevergrad_internal( |
@@ -948,6 +974,8 @@ def _nevergrad_internal( |
948 | 974 |
|
949 | 975 | """ |
950 | 976 |
|
| 977 | + import nevergrad as ng |
| 978 | + |
951 | 979 | param = ng.p.Array( |
952 | 980 | init=x0, |
953 | 981 | ) |
|
0 commit comments