Brian (oprogramowanie)
Brian to pakiet Python o otwartym kodzie źródłowym służący do tworzenia symulacji impulsowych sieci neuronowych.
Szczegóły projektu
Brian skierowany jest do badaczy opracowujących modele oparte na impulsowych sieciach neuronowych. Projekt ma na celu maksymalizację elastyczności, prostoty i szybkości tworzenia sieci przez użytkownika[1]. Użytkownicy określają modele neuronów, podając swoje równania różniczkowe w standardowej formie matematycznej jako ciągi znaków, tworzą grupy neuronów i łączą je za pomocą synaps. Jest to przeciwieństwo podejścia stosowanego w wielu symulatorach neuronowych, w których użytkownicy wybierają z uprzednio zdefiniowanego zestawu modeli neuronów.
Brian jest napisany w języku Python. Pod względem obliczeniowym opiera się na koncepcji generowania kodu: użytkownicy określają model w Pythonie, ale w tle Brian generuje, kompiluje i uruchamia kod w jednym z kilku języków (w tym Python, Cython i C++). Dodatkowo istnieje tryb „standalone”, w którym Brian generuje całe drzewo kodu źródłowego C++ bez zależności, co pozwala na uruchamianie modeli na platformach, na których Python nie jest dostępny.
Przykład użycia
Poniższy kod definiuje, uruchamia i kreśli losowo połączoną sieć wystrzeliwujących neuronów z wykładniczymi prądami hamującymi i pobudzającymi.

from brian2 import *
eqs = """
dv/dt = (ge+gi-(v+49*mV))/(20*ms) : volt
dge/dt = -ge/(5*ms) : volt
dgi/dt = -gi/(10*ms) : volt
"""
P = NeuronGroup(4000, eqs, threshold="v>-50*mV", reset="v=-60*mV")
P.v = -60 * mV
Pe = P[:3200]
Pi = P[3200:]
Ce = Synapses(Pe, P, on_pre="ge+=1.62*mV")
Ce.connect(p=0.02)
Ci = Synapses(Pi, P, on_pre="gi-=9*mV")
Ci.connect(p=0.02)
M = SpikeMonitor(P)
run(1 * second)
plot(M.t / ms, M.i, ".")
show()
Porównanie z innymi symulatorami SNN
Brian koncentruje się przede wszystkim na modelach neuronów jednokomorowych. Symulatory skupiające się na modelach wielokomorowych to przykładowo Neuron z 1993 roku i GENESIS z 1994 roku.
Brian koncentruje się na elastyczności i łatwości użytkowania, a także obsługuje symulacje uruchamiane wyłącznie na jednej maszynie. Symulator NEST zawiera funkcje umożliwiające dystrybucję symulacji w klastrze[2].
Nagrody
- Nagroda Open Science Award for Open Source Research Software w kategorii „Dokumentacja” z 2023 roku[3]
Przypisy
- ↑ Dan Goodman, Romain Brette. The Brian Simulator. „PMC PubMed Central”, 2009-09-15. DOI: 10.3389/neuro.01.026.2009. (ang.).
- ↑ NEST Initiative.
- ↑ The 2023 Open Science Free Research Software Awards. Ouvrir la Science, 2023-11-30. [dostęp 2025-12-04]. (ang.).
Linki zewnętrzne
Content Disclaimer
Informasi ini disarikan dari Wikipedia dan disajikan kembali untuk tujuan edukasi. Konten tersedia di bawah lisensi CC BY-SA 3.0. Kami tidak bertanggung jawab atas ketidakakuratan data yang bersumber dari kontribusi publik tersebut.
- The information displayed on this website is sourced in part or in whole from Wikipedia and has been adapted for the purpose of restating it. We strive to provide accurate and relevant information, however:
- There is no guarantee of absolute accuracy. Wikipedia is an open, collaborative project that can be edited by anyone, so information is subject to change.
- It is not intended to constitute professional advice. The content displayed is for informational and educational purposes only. For important decisions (e.g., medical, legal, or financial), please consult a professional.
- Content copyright. Wikipedia is licensed under the Creative Commons Attribution-ShareAlike License (CC BY-SA). This means that content may be reused with appropriate attribution and shared under a similar license.
- Responsible use. Any risk arising from the use of information from this website is entirely the responsibility of the user.