Computational neuroscience har producerat en mångfald av programvara för simuleringar av nätverk av spikande neuroner, med både negativa och positiva konsekvenser. Å ena sidan använder varje simulator sitt eget programmerings- eller konfirmeringsspråk, vilket leder till betydande skillnader i anpassning av modeller från en simulator till en annan. Detta hindrar kommunikationen mellan utredarna och gör det svårare att reproducera och bygga vidare på andras arbete. Å andra sidan kan simuleringsresultaten korskontrolleras mellan olika simulatorer, vilket ger större konfidens i deras korrekthet, och varje simulator har olika optimeringar, så den lämpligaste simulatorn kan väljas för en given modelleringsuppgift. Ett gemensamt programmeringsgränssnitt för flera simulatorer skulle minska eller eliminera problemen med simulatormångfald samtidigt som fördelarna bibehålls. PyNN är ett sådant gränssnitt, vilket gör det möjligt att skriva ett simuleringsskript en gång, med hjälp av Python programmeringsspråk, och köra det utan modifikatjon på någon stöds simulator (för närvarande NEURON, NEST, PCSIM, Brian och Heidelberg VLSI neuromorphic hårdvara). PyNN ökar produktiviteten i neuronal nätverksmodellering genom att tillhandahålla hög nivå abstraktion, genom att främja code sharing och återanvändning, och genom att ge en grund för simulator-agnostic analys, visualisering och datahantering verktyg. PyNN ökar tillförlitligheten i modelleringsstudier genom att göra det mycket lättare att kontrollera resultaten på flera simulatorer. PyNN är programvara med öppen källkod och finns tillgänglig på http://neuralensemble.org/PyNN. Nyckelord: Python, interoperabilitet, storskaliga modeller, simulering, parallell beräkning, reproducerbarhet, beräkningsneurovetenskap, översättningskompilatorstandarder och simulatorer utvecklas. En annan är att modellen källkod ofta inte skrivs med återanvändning och förlängning i åtanke, och så betydande omskrivning för att modularisera koden är nödvändigt. Förmodligen den viktigaste barriären är att kod skriven för en simulator inte är kompatibel med någon annan simulator. Även om många beräkningsmodeller i neurovetenskap är skrivna från grunden i ett allmänt syfte programmeringsspråk som C++ eller Fortran, förmodligen använder majoriteten en special simulator som tillåter modeller att uttryckas i termer av neuroscience-specifi c begrepp såsom neuroner, jonkanaler, synapser; simulatorn tar hand om att översätta dessa begrepp till ett system av ekvationer och av numeriskt lösa ekvationer. Ett stort antal sådana simulatorer finns tillgängliga (reviewed in Brette et al., 2007), mestadels som öppen källkod programvara, och var och en har sitt eget programmeringsspråk, konfiration syntax och / eller grafiskt gränssnitt, vilket skapar betydande diffi kulty i att översätta modeller från en simulator till en annan, eller ens för att förstå någon annans kod, med uppenbara negativa konsekvenser för kommunikationen mellan utredare, reproducerbarhet av andras modeller och bygga på befintliga modeller. Mångfalden av simulatorer har dock också ett antal positiva konsekvenser: i) det gör det möjligt att dubbelkontrollera - sannolikheten för två
När det gäller kompatibilitet mellan modeller är PyNN (Python Neural Networks) ett programmeringsgränssnitt som är gemensamt för flera neuronala nätverkssimulatorer, vilket gör det möjligt att skriva ett simuleringsskript en gång i Python programmeringsspråket och köra det utan ändring på någon stödd simulator REF.
PyNN: A Common Interface for Neuronal Network Simulators
{'venue': 'Front. Neuroinform.', 'journal': None, 'mag_field_of_study': ['Computer Science', 'Medicine']}