Skip to main content

Blue Brain Python Optimisation Library (bluepyopt)

Project description

banner

BluePyOpt

Latest Release

latest release

Documentation

latest documentation

License

license

Build Status

actions build status

Coverage

coverage

Gitter

Join the chat at https://gitter.im/openbraininstitute/BluePyOpt

Zenodo

zenodo

Introduction

The Blue Brain Python Optimisation Library (BluePyOpt) is an extensible framework for data-driven model parameter optimisation that wraps and standardises several existing open-source tools.

It simplifies the task of creating and sharing these optimisations, and the associated techniques and knowledge. This is achieved by abstracting the optimisation and evaluation tasks into various reusable and flexible discrete elements according to established best-practices.

Further, BluePyOpt provides methods for setting up both small- and large-scale optimisations on a variety of platforms, ranging from laptops to Linux clusters and cloud-based compute infrastructures.

Citation

When you use the BluePyOpt software or method for your research, we ask you to cite the following publication (this includes poster presentations):

Van Geit W, Gevaert M, Chindemi G, Rössert C, Courcol J, Muller EB, Schürmann F, Segev I and Markram H (2016). BluePyOpt: Leveraging open source software and cloud infrastructure to optimise model parameters in neuroscience. Front. Neuroinform. 10:17. doi: 10.3389/fninf.2016.00017.

@ARTICLE{bluepyopt,
AUTHOR={Van Geit, Werner  and  Gevaert, Michael  and  Chindemi, Giuseppe  and  Rössert, Christian  and  Courcol, Jean-Denis  and  Muller, Eilif Benjamin  and  Schürmann, Felix  and  Segev, Idan  and  Markram, Henry},
TITLE={BluePyOpt: Leveraging open source software and cloud infrastructure to optimise model parameters in neuroscience},
JOURNAL={Frontiers in Neuroinformatics},
VOLUME={10},
YEAR={2016},
NUMBER={17},
URL={http://www.frontiersin.org/neuroinformatics/10.3389/fninf.2016.00017/abstract},
DOI={10.3389/fninf.2016.00017},
ISSN={1662-5196}
}

Publications that use or mention BluePyOpt

The list of publications that use or mention BluePyOpt can be found on the github wiki page.

Support

We are providing support using a chat channel on Gitter, or the Github discussion page.

News

Requirements

  • Python 3.9+

  • Pip (installed by default in newer versions of Python)

  • Neuron 7.4+ (compiled with Python support)

  • eFEL eFeature Extraction Library (automatically installed by pip)

  • Numpy (automatically installed by pip)

  • Pandas (automatically installed by pip)

  • The instruction below are written assuming you have access to a command shell on Linux / UNIX / MacOSX / Cygwin

Installation

If you want to use the ephys module of BluePyOpt, you first need to install NEURON with Python support on your machine.

And then bluepyopt itself:

pip install bluepyopt

Support for simulators other than NEURON is optional and not installed by default. If you want to use [Arbor](https://arbor-sim.org/) to run your models, use the following line instead to install bluepyopt.

pip install bluepyopt[arbor]

Cloud infrastructure

We provide instructions on how to set up an optimisation environment on cloud infrastructure or cluster computers here

Quick Start

Single compartmental model

An iPython notebook with an introductory optimisation of a one compartmental model with 2 HH channels can be found at

https://github.com/openbraininstitute/BluePyOpt/blob/master/examples/simplecell/simplecell.ipynb (NEURON) https://github.com/openbraininstitute/BluePyOpt/blob/master/examples/simplecell/simplecell_arbor.ipynb (Arbor)

landscape_example

Figure: The solution space of a single compartmental model with two parameters: the maximal conductance of Na and K ion channels. The color represents how well the model fits two objectives: when injected with two different currents, the model has to fire 1 and 4 action potential respectively during the stimuli. Dark blue is the best fitness. The blue circles represent solutions with a perfect score.

Neocortical Layer 5 Pyramidal Cell

Scripts for a more complex neocortical L5PC are in this directory

With a notebook:

https://github.com/openbraininstitute/BluePyOpt/blob/master/examples/l5pc/L5PC.ipynb (NEURON) https://github.com/openbraininstitute/BluePyOpt/blob/master/examples/l5pc/L5PC_arbor.ipynb (Arbor)

Thalamocortical Cells

Scripts for 2 thalamocortical cell types are in this directory

With a notebook:

https://github.com/openbraininstitute/BluePyOpt/blob/master/examples/thalamocortical-cell/thalamocortical-cell_opt.ipynb

Tsodyks-Markram Model of Short-Term Plasticity

Scripts for 2 version of fitting the Tsodyks-Markram model to synaptic traces are in this directory

With 2 notebooks:

https://github.com/openbraininstitute/BluePyOpt/blob/master/examples/tsodyksmarkramstp/tsodyksmarkramstp.ipynb https://github.com/openbraininstitute/BluePyOpt/blob/master/examples/tsodyksmarkramstp/tsodyksmarkramstp_multiplefreqs.ipynb

Exporting cell in neuroml format

An iPython notebook showing how to export a BluePyOpt cell in the neuroml format, how to create a LEMS simulation, and how to run the LEMS simulation with the neuroml cell can be found at:

https://github.com/openbraininstitute/BluePyOpt/blob/master/examples/neuroml/neuroml.ipynb

API documentation

The API documentation can be found on ReadTheDocs.

Funding

This work has been partially funded by the European Union Seventh Framework Program (FP7/2007­2013) under grant agreement no. 604102 (HBP), the European Union’s Horizon 2020 Framework Programme for Research and Innovation under the Specific Grant Agreement No. 720270, 785907 (Human Brain Project SGA1/SGA2) and by the EBRAINS research infrastructure, funded from the European Union’s Horizon 2020 Framework Programme for Research and Innovation under the Specific Grant Agreement No. 945539 (Human Brain Project SGA3). This project/research was supported by funding to the Blue Brain Project, a research center of the École polytechnique fédérale de Lausanne (EPFL), from the Swiss government’s ETH Board of the Swiss Federal Institutes of Technology.

Copyright (c) 2016-2024 Blue Brain Project/EPFL

Copyright (c) 2025 Open Brain Institute

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

bluepyopt-1.14.18.tar.gz (29.6 MB view details)

Uploaded Source

Built Distribution

bluepyopt-1.14.18-py3-none-any.whl (21.7 MB view details)

Uploaded Python 3

File details

Details for the file bluepyopt-1.14.18.tar.gz.

File metadata

  • Download URL: bluepyopt-1.14.18.tar.gz
  • Upload date:
  • Size: 29.6 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.8

File hashes

Hashes for bluepyopt-1.14.18.tar.gz
Algorithm Hash digest
SHA256 23d6239294d944c8f9d4ea298091bcf243d236735844e1bcba60535a0f520ca8
MD5 3dfd383472b9fe776a09e9dd9333866c
BLAKE2b-256 0c7192a18997597ba3ef57388e3ceaf53fb6ae352abce44c16ea2ce262f76907

See more details on using hashes here.

Provenance

The following attestation bundles were made for bluepyopt-1.14.18.tar.gz:

Publisher: build.yml on openbraininstitute/BluePyOpt

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file bluepyopt-1.14.18-py3-none-any.whl.

File metadata

  • Download URL: bluepyopt-1.14.18-py3-none-any.whl
  • Upload date:
  • Size: 21.7 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.8

File hashes

Hashes for bluepyopt-1.14.18-py3-none-any.whl
Algorithm Hash digest
SHA256 dbc2f33ebaefff31cb67260c1685efb1b0dd974c7f87082bd08c67c93e01893a
MD5 52ab7b14eb5c25a1ceb54ed1cb5dac00
BLAKE2b-256 82845b7908ff9a96c41dde2323ef8ba391dcbac9b325c41489249de64ca75999

See more details on using hashes here.

Provenance

The following attestation bundles were made for bluepyopt-1.14.18-py3-none-any.whl:

Publisher: build.yml on openbraininstitute/BluePyOpt

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page