Releases: experimental-design/bofire
Engineered Features and fixes to augmented DoE
What's Changed
- Tests/reduce disk space by @bertiqwerty in #672
- 631 doeutils model matrix by @dlinzner-bcs in #673
- Docs quarto by @bertiqwerty in #667
- Feature/isolate repair by @LukasHebing in #668
- Implement new cache_root behavior from botorch by @jduerholt in #682
- 652 decorrelated mol features by @KislayaRavi in #683
- Feature/aggregations2 by @jduerholt in #678
- 675 fim matrix rank etc (replacing other pull request) by @rosonaeldred in #684
New Contributors
- @KislayaRavi made their first contribution in #683
- @rosonaeldred made their first contribution in #684
Full Changelog: v0.3.0...v0.3.1
Many fixes and improvements
What's Changed
- fix typo MBO_LENGTHCALE_PRIOR -> MBO_LENGTHSCALE_PRIOR by @Jimbo994 in #610
- number_of_categorical_combinations by @jduerholt in #616
- Introduce
LogTransformedIntervalPrior Constraint by @jduerholt in #618 - 562 pydantic deprecation warnings by @Jimbo994 in #617
- Update for botorch 0.15.0 by @jduerholt in #619
- Make notebook render well by @jduerholt in #622
- Tidy-up Tutorial on Optimality Criteria by @jduerholt in #621
- Update link to Gauche by @jduerholt in #623
- improve link to chemistry by @jduerholt in #620
- Fix/624 by @LukasHebing in #625
- Fix/628 by @LukasHebing in #630
- Wrapper für Botorch Test Functions by @jduerholt in #632
- suggestions to NChooseK repair function by @Jimbo994 in #633
- Active Learning Strategy: fix missing input processing for acqf samples. by @jkeupp in #634
- Formulation and SpuriousFeature Wrappers by @jduerholt in #636
- Add AdditiveSaasModel to BotorchSurrogates by @jduerholt in #637
- New Pydantic Version Adaptions by @jduerholt in #638
- Add nchoosek for forumlation wrapper by @jduerholt in #639
- add clamping by @jduerholt in #641
- Hotfix/stability by @jduerholt in #640
- Refactor Input Preproccesing and Mixed Optimization by @jduerholt in #626
- Feature/ Exclude constraints usable in GA by @LukasHebing in #644
- Fix formulation wrapper by @jduerholt in #647
- change badge-svg to main by @bertiqwerty in #649
- Enable manual trigger of test pipeline by @jduerholt in #654
- Conditional input features by @TobyBoyne in #645
- Hotfix Acqf setup for fixed-features by @jduerholt in #664
- Removed XGBoost and removed scikit-learn version constraint. by @md-121 in #666
New Contributors
Full Changelog: v0.2.1...v0.3.0
Maintenance Release
Maintenance release that solves the issue of failing acquisition setup when used with fixed features that have not been used before.
Shap analysis for surrogates, fully Bayesian model, EBDO priors and more besides bugfixes
What's Changed
- Fix docu domain.md by @KappatC in #599
- Fix error in domain doc by @jduerholt in #600
- Probabiltiy of Feasibility ACQF by @jduerholt in #580
- 595 bug categorical doe unstable by @dlinzner-bcs in #597
- EDBO Priors by @jduerholt in #602
- Shap by @jduerholt in #592
- Feature/exclude constraints in bo by @jduerholt in #604
is_fulfilledforDomainandInputsby @jduerholt in #605- Feature/modularize ga by @LukasHebing in #596
- Bugfix in Hyperopt Functionality of SingleTaskGPSurrogate by @jduerholt in #607
- Hvarfner Priors for MixedSingleTaskGP by @jduerholt in #609
- fix input/output - mixup by @bertiqwerty in #608
- Feature/relevance pursuit Implemention of RobustRelevancePursuitSingleTaskGP into BoFire by @Jimbo994 in #591
- Additions for Fully Bayesian Models by @jduerholt in #606
New Contributors
Full Changelog: v0.2.0...v0.2.1
Easier interface with `Strategy.make`
This release contains a major interface simplification. A strategy can now be instantiated via
from bofire.strategies.api import SoboStrategy
sobo = SoboStrategy.make(domain=domain)
Of course, the old way still works to keep the separation between data models and functionality possible:
import bofire.strategies.api as strategies
from bofire.data_models.strategies.api import SoboStrategy as DataModel
data_model = DataModel(domain=domain)
sobo = strategies.map(data_model)
Further note that we have now a GA based optimizer for acquisition functions, see this tutorial.
What's Changed
- Dtype not specified in
ActiveLearningStrategyby @jduerholt in #576 - Expose
sequentialto data model by @jduerholt in #577 - Make the refpoint setting for MOBO more flexible by @jduerholt in #518
- Feature/add ga optimizer by @LukasHebing in #561
- pragmatic support for discrete and categorical variables by @dlinzner-bcs in #575
- New readme and getting_started notebook by @chrihaas in #472
- add jingle by @dlinzner-bcs in #583
- Bofire music jingle by @bertiqwerty in #585
- Fix missing documentation by including subfolders automatically by @rlars in #584
- Create a
makemethod inStrategys by @TobyBoyne in #572 - CategoricalExcludeConstraint by @jduerholt in #582
- bounds can be tuple by @bertiqwerty in #567
- fix edgecase by @dlinzner-bcs in #590
- Working Stepsize Implementation by @jduerholt in #588
- Remove cvxopt by @LukasHebing in #594
New Contributors
Full Changelog: v0.1.0...v0.2.0
Refactoring of ACQF Optimization and many small fixes
What's Changed
- Polynomial feature interaction kernel by @e-dorigatti in #520
- nonlinear constraints without torch by @Osburg in #527
- Proper error message for
strategy.predictby @jduerholt in #528 - Fix pyright issues by @CompRhys in #505
- Strategy TidyUp by @jduerholt in #529
- 'added code to plot cv folds with plotly' by @Jimbo994 in #534
- Blocking for Fractional Factorial Designs by @jduerholt in #532
- Skip XGBoost test if uninstalled by @TobyBoyne in #538
- Pull Request Template by @jduerholt in #539
- replace .json() with .model_dump_json() by @R-M-Lee in #543
- fix types in getting started by @bertiqwerty in #541
- Bump image for doc pipelines by @jduerholt in #537
- add note on how to print hyperparameters by @bertiqwerty in #544
- test coverage note by @bertiqwerty in #545
- Docs - maximize acquisition functions by @bertiqwerty in #540
- Comment on usage of seeds by @jduerholt in #547
- Templates for issues by @jduerholt in #549
- docs used deprecated pydantic by @bertiqwerty in #550
- add api examples to docs by @bertiqwerty in #548
- Bump Entmoot and LightGBM by @TobyBoyne in #536
- Solve frequently failing doe test by @jduerholt in #546
- Documentation on using categorical outputs by @jduerholt in #552
- Fix doc building by @jduerholt in #554
- Refactor Installation Guide by @jduerholt in #557
- Lift data-models in docs by @bertiqwerty in #560
- Add chemistry focus to documentation by @TobyBoyne in #555
- Refactor ACQF Optimization by @jduerholt in #535
- Use Seed Sequences for random number generation by @TobyBoyne in #566
- fix broken link in tutorials README.md by @R-M-Lee in #564
- Reintroduce sampling parameter into DoEStrategy to allow for seeding by @dlinzner-bcs in #559
- Python 3.10 support by @bertiqwerty in #570
- DoE objective evaluation in pytorch by @Osburg in #525
- Docs versioning by @bertiqwerty in #573
Full Changelog: v0.0.18...v0.1.0
Maintenance Release
What's Changed
- pin cyipopt version in conda install by @jduerholt in #516
- Custom Sobo Tutorial by @jduerholt in #508
- added plot_gp_slice.py by @Jimbo994 in #499
- Make pyright a seperate test job by @jduerholt in #524
get_by_keyusing regex by @jduerholt in #523- Fix that BoFire is not working without cyipopt by @jduerholt in #522
New Contributors
Full Changelog: v0.0.17...v0.0.18
Maintenance Release for BoTorch 0.13.0
What's Changed
- Fix mapper tests by @jduerholt in #502
- Adding Desirability functions as objectives by @LukasHebing in #497
- Refactoring of
DoEStrategydata model class by @jduerholt in #448 - Feature/add desirability function in range by @LukasHebing in #504
- Fix wrong desirabilities in predictive strategies by @jduerholt in #506
- I optimality criterion and nonlinear constraints defined by python function by @Osburg in #485
- Defined OptimalityCriteria two times by accident by @dlinzner-bcs in #507
- Make doe tests fail less by @dlinzner-bcs in #509
- Make BoFire compatible to BoTorch 0.13.0 by @jduerholt in #511
- Randomization for FractionalFactorials by @jduerholt in #510
- Fix failing doe notebooks by @Osburg in #512
- Mark
DesirabilityObjectiveas only abstract by @jduerholt in #513
Full Changelog: v0.0.16...v0.0.17
Feature specific kernels, Multifidelity Strategy, more flexibility in Stepwise Strategy
What's Changed
- Add pandas data manipulation transform by @jduerholt in #460
get_by_keyswith exclude option by @jduerholt in #465- [QOL] cancel tests on same PR by @CompRhys in #467
- Suppress import warning prints by @chrihaas in #466
- StepwiseStrategy: Make domain comparison less strict by @jduerholt in #468
- Fix PiecewiselinearGPSurrogate by @jduerholt in #469
- Multifidelity Strategy by @TobyBoyne in #453
- Fix NumberOfExperimentsCondition by @chrihaas in #470
- Add example notebook that demonstrates how to use inputs also as outputs by @jduerholt in #475
- Move setup.py to pyproject.toml by @chrihaas in #473
- Categorical deterministic surrogate by @jduerholt in #479
- Add categoricals for
FractionalFactorialStrategyby @jduerholt in #480 - pin compatible version of packages by @e-dorigatti in #489
- Multiplicative additive sobo objectives by @LukasHebing in #481
- Progessbar for Hyperopt by @jduerholt in #494
- Make the BoFire Data Models OpenAI compatible by @jduerholt in #495
- Group split kfold by @jkeupp in #484
- Make candidate_count enforcement less strict by @jduerholt in #492
- Drop support for Python 3.9 by @jduerholt in #493
- Slowdown due to Scipy 1.15 by @jduerholt in #501
- kernels working on a given set of features by @e-dorigatti in #476
New Contributors
- @chrihaas made their first contribution in #466
- @e-dorigatti made their first contribution in #489
- @LukasHebing made their first contribution in #481
Full Changelog: v0.0.15...v0.0.16
Maintenance Release: Different Behavior of Enum Serialization
What's Changed
- sketch of how default kernel will change by @R-M-Lee in #435
- Fix enum serialization problems by @jduerholt in #458
- [Lint] apply ruff format as all safe fixes by @CompRhys in #456
Full Changelog: v0.0.14...v0.0.15