Recent Releases of PyBOP

PyBOP - v25.3

Full Changelog: https://github.com/pybop-team/PyBOP/blob/develop/CHANGELOG.md

v25.3 - 2025-03-28

Features

  • #649 - Adds verbose outputs to Pints-based optimisers
  • #659 - Enables user-defined weightings of the error measures.
  • #674 - Adds the reason for stopping to the OptimisationResult.
  • #663 - Adds DFN fitting examples alongside synthetic data generation methods.

Optimisations

  • #676 - Update the format of the problem sensitivities to a dict.
  • #681 - Update the spatial variable defaults of the GroupedSPMe model.
  • #692 - Improvements/fixes for BaseSampler and BasePintsSampler classes, adds ChainProcessor classes w/ clearer structure.

Bug Fixes

  • #678 - Fixed bug where model wasn't plotted for observer classes with pybop.plot.quick().

Breaking Changes

  • #684 - Updates plot.quick to plot.problem for clarity.
  • #661 - Adds pybop.CostInterface which aligns the optimisers and samplers with a unified call_cost in which transformations and sign inversions are applied. Also includes bug fixes for transformations and gradient calculations.

Energy Storage - Battery - Python
Published by NicolaCourtier about 1 month ago

PyBOP - v25.1

Full Changelog: https://github.com/pybop-team/PyBOP/blob/develop/CHANGELOG.md

v25.1 - 2025-02-03

Features

  • #636 - Adds pybop.IRPropPlus optimiser with corresponding tests.
  • #635 - Adds support for multi-proposal evaluation of list-like objects to BaseCost classes.
  • #635 - Adds global parameter sensitivity analysis with method BaseCost.sensitivity_analysis. This is computation is added to OptimisationResult if optimiser arg compute_sensitivities is True. An additional arg is added to select the number of samples for analysis: n_sensitivity_samples.
  • [#630] (https://github.com/pybop-team/PyBOP/pull/632) - Fisher Information Matrix added to BaseLikelihood class.
  • #619 - Adds pybop.SimulatingAnnealing optimiser with corresponding tests.
  • #565 - DigiBatt added as funding partner.

Optimisations

  • #638 - Allows the problem class to accept any domain name.
  • #618 - Adds Mean Absolute Error (MAE) and Mean Squared Error (MSE) costs.
  • #601 - Deprecates MultiOptimisationResult by merging with OptimisationResult.
  • #600 - Removes repetitious functionality within the cost classes.

Bug Fixes

  • #602 - Aligns the standard quick plot of MultiFittingProblem outputs.

Breaking Changes

  • #656 - Completes ParameterSet changes from #593 and aligns the simulation options in model.predict with the model properties such as the solver.
  • #593 - Enables ParameterSet to systematically return a pybamm.ParameterValues object within the model class.

New Contributors

Energy Storage - Battery - Python
Published by BradyPlanden 3 months ago

PyBOP - v24.12

Full Changelog

https://github.com/pybop-team/PyBOP/blob/develop/CHANGELOG.md

What's Changed

Energy Storage - Battery - Python
Published by BradyPlanden 4 months ago

PyBOP - v24.9.1

What's Changed

Patch release for yanked v24.9.0.

New Contributors

Full Changelog: https://github.com/pybop-team/PyBOP/blob/develop/CHANGELOG.md

Energy Storage - Battery - Python
Published by BradyPlanden 8 months ago

PyBOP - v24.9.0

What's Changed

New Contributors

Full Changelog: https://github.com/pybop-team/PyBOP/blob/develop/CHANGELOG.md

Energy Storage - Battery - Python
Published by BradyPlanden 8 months ago

PyBOP - v24.6.1

What's Changed

Full Changelog: https://github.com/pybop-team/PyBOP/blob/main/CHANGELOG.md#v2461---2024-07-31

Energy Storage - Battery - Python
Published by BradyPlanden 9 months ago

PyBOP - v24.6

Full Changelog: https://github.com/pybop-team/PyBOP/blob/main/CHANGELOG.md#v246---2024-07-08

What's Changed

New Contributors

Energy Storage - Battery - Python
Published by BradyPlanden 10 months ago

PyBOP - v24.3.1

What's Changed

Full Changelog: https://github.com/pybop-team/PyBOP/compare/v24.3...v24.3.1

Energy Storage - Battery - Python
Published by BradyPlanden 11 months ago

PyBOP - v24.3

What's Changed

New Contributors

Full Changelog: https://github.com/pybop-team/PyBOP/blob/develop/CHANGELOG.md

Energy Storage - Battery - Python
Published by BradyPlanden about 1 year ago

PyBOP - v23.12

Features

  • #141 - Adds documentation with Sphinx and PyData Sphinx Theme. Updates docstrings across package, relocates costs and dataset to top-level of package. Adds noxfile session and deployment workflow for docs.
  • #131 - Adds SciPyDifferentialEvolution optimiser, adds functionality for user-selectable maximum iteration limit to SciPyMinimize, NLoptOptimize, and BaseOptimiser classes.
  • #107 - Adds Equivalent Circuit Model (ECM) with examples, Import/Export parameter methods ParameterSet.import_parameter and ParameterSet.export_parameters, updates default FittingProblem.signal definition to "Voltage [V]", and testing infrastructure
  • #127 - Adds Windows and macOS runners to the test_on_push action
  • #114 - Adds standard plotting class pybop.StandardPlot() via plotly backend
  • #114 - Adds quick_plot(), plot_convergence(), and plot_cost2d() methods
  • #114 - Adds a SciPy minimize example and logging for non-Pints optimisers
  • #116 - Adds PSO, SNES, XNES, ADAM, and IPropMin optimisers to PintsOptimisers() class
  • #38 - Restructures the Problem classes ahead of adding a design optimisation example
  • #120 - Updates the parameterisation test settings including the number of iterations
  • #145 - Reformats Dataset to contain a dictionary and signal into a list of strings

Breaking Changes

  • #38 - Restructures the Problem classes into FittingProblem and DesignProblem. FittingProblem replaces previous Problem class
  • #145 - Reformats Dataset class to contain a dictionary and signal into a list of strings.

Energy Storage - Battery - Python
Published by BradyPlanden over 1 year ago

PyBOP - Release Candidate v23.12rc0

CHANGELOG

  • #141 - Adds documentation with Sphinx and PyData Sphinx Theme. Updates docstrings across package, relocates costs and dataset to top-level of package. Adds noxfile session and deployment workflow for docs.
  • #131 - Adds SciPyDifferentialEvolution optimiser, adds functionality for user-selectable maximum iteration limit to SciPyMinimize, NLoptOptimize, and BaseOptimiser classes.
  • #107 - Adds Equivalent Circuit Model (ECM) with examples, Import/Export parameter methods ParameterSet.import_parameter and ParameterSet.export_parameters, updates default FittingProblem.signal definition to "Voltage [V]", and testing infrastructure
  • #127 - Adds Windows and macOS runners to the test_on_push action
  • #114 - Adds standard plotting class pybop.StandardPlot() via plotly backend
  • #114 - Adds quick_plot(), plot_convergence(), and plot_cost2d() methods
  • #114 - Adds a SciPy minimize example and logging for non-Pints optimisers
  • #116 - Adds PSO, SNES, XNES, ADAM, and IPropMin optimisers to PintsOptimisers() class
  • #38 - Restructures the Problem classes ahead of adding a design optimisation example
  • #120 - Updates the parameterisation test settings including the number of iterations
  • #145 - Reformats Dataset to contain a dictionary and signal into a list of strings

Energy Storage - Battery - Python
Published by BradyPlanden over 1 year ago

PyBOP - v23.11

Initial release v23.11

  • Pints, NLOpt, and SciPy optimisers available
  • SumofSquareError and RootMeanSquareError cost functions available
  • Parameter and dataset classes available
  • Examples here

Energy Storage - Battery - Python
Published by BradyPlanden over 1 year ago