# Synthetic nervous system

Synthetic Nervous System (SNS) is a computational neuroscience model that may be developed with the Functional Subnetwork Approach (FSA) to create biologically plausible models of circuits in a nervous system. The FSA enables the direct analytical tuning of dynamical networks that perform specific operations within the nervous system without the need for global optimization methods like genetic algorithms and reinforcement learning. The primary use case for a SNS is system control, where the system is most often a simulated biomechanical model or a physical robotic platform. An SNS is a form of a neural network much like artificial neural networks (ANNs), convolutional neural networks (CNN), and recurrent neural networks (RNN). The building blocks for each of these neural networks is a series of nodes and connections denoted as neurons and synapses. More conventional artificial neural networks rely on training phases where they use large data sets to form correlations and thus “learn” to identify a given object or pattern. When done properly this training results in systems that can produce a desired result, sometimes with impressive accuracy. However, the systems themselves are typically “black boxes” meaning there is no readily distinguishable mapping between structure and function of the network. This makes it difficult to alter the function, without simply starting over, or extract biological meaning except in specialized cases. The SNS method differentiates itself by using details of both structure and function of biological nervous systems. The neurons and synapse connections are intentionally designed rather than iteratively changed as part of a learning algorithm.
As in many other computational neuroscience models (Rybak, Eliasmith), the details of a neural model are informed by experimental data wherever possible. Not every study can measure every parameter of the network under investigation, requiring the modeler to make assumptions regarding plausible parameter values. Rybak uses a sampling method where each node is composed of many neurons and each particular neuron’s parameters are pulled from a probability distribution. Eliasmith uses what they call the Neural Engineering Framework (NEF) in which the user specifies the functions of the network and the synaptic and neural properties are learned over time. SNS follows a similar approach via the Functional Subnetwork Approach (FSA). FSA allows parameters within the network (e.g., membrane conductances, synaptic conductances) to be designed analytically based on their intended function. As a result, it is possible to use this approach to directly assemble networks that perform basic functions, like addition or subtraction, as well as dynamical operations like differentiation and integration.

## Background and History of Synthetic Nervous Systems
### Background

The details of the underlying control networks for many biological systems are not very well understood. However, recent advancements in neuroscience tools and techniques have clarified the cellular and biophysical mechanisms of these networks, and their operation during behavior in complex environments. Although there is a long-standing interest in biologically-inspired robots and robotic platforms, there is a recent interest in incorporating features of biomechanics and neural control, e.g., biomimicry. The SNS method uses data from neuroscience in control systems for neuromechanical simulations and robots. Designing both a robot’s mechanics and controller to capture key aspects of a particular animal may lead to more flexible functionality while suggesting new hypotheses for how the animal’s nervous system works.
Keeping neural models simple facilitates analysis, real time operation, and tuning. To this end, SNSs primarily model neurons as leaky integrators, which are reasonable approximations of sub-threshold passive membrane dynamics. The leaky integrator also models non-spiking interneurons which contribute to motor control in some invertebrates (locust, stick insect, C. elegans). If spiking needs to be incorporated into the model, nodes may be represented using the leaky integrate-and-fire models. In addition, other conductances like those of the Hodgkin-Huxley model can be incorporated into the model. A model may be initialized with simple components (e.g., leaky integrators), and then details added to incorporate additional biological details. The modeler may then increase or decrease the level of biological detail depending upon the intended application. Keeping models simple in this way offers:
* The ability to use dynamical systems analysis by way of balancing biological detail with analytical tractability.
* Fast and computationally inexpensive network dynamic simulations to work effectively in a robotic controller. Thus, complex traditional models, like the cable equation or the full Hodgkin-Huxley action potential model, are typically avoided or simplified for the sake of computational efficiency.
* Sparse function-dependent connectivity via the Functional Subnetwork (FSA) instead of fully connected (i.e., all-to-all connected) topologies, common in machine learning.
While the neuroscientific models are typically simplified for SNS, the method is flexible enough that more features can be incorporated. Consequently, the SNS method can accommodate demand driven complexity, only adding features specifically where they are needed. For example, persistent sodium channels can be added to just two neurons in a neural circuit to create a half- center oscillator pattern generator without changing the other neurons in the circuit. While these additions may increase computational cost, they grant the system the ability to perform a wider array of interesting behaviors.

### History

The term “synthetic nervous system” (SNS) has appeared in the literature since the year 2000 to describe several different computational frameworks for mimicking the functionality of biological nervous systems.
Cynthia Breazeal developed a social robot named “Kismet” while at MIT in the early 2000s. She used the term SNS to refer to her biologically-inspired hierarchical model of cognition, which included systems for low-level sensory feature extraction, attention, perception, motivation, behavior, and motor output. Using this framework, Kismet could respond to people by abstracting its sensory information into motivation for responsive behaviors and the corresponding motor output.
In 2005, Inman Harvey used the term in a review article on his field, Evolutionary Robotics. In his article, Harvey uses the term SNS to refer to the evolved neural controller for a simulated agent. He does not explicitly define the term SNS; instead, he uses the term to differentiate the evolved neural controller from one created via alternative approaches, e.g., multi-layer perceptron (MLP) networks.
In 2008, Thomas R. Insel, MD, the director of the National Institute of Mental Health, was quoted in an American Academy of Neurology interview calling for a “clear moon shot…[to motivate] a decade of new discovery [and] basic research on brain anatomy”. As part of that interview, Dr. Insel suggested building a “synthetic nervous system” as one such motivational moon shot to drive ongoing and future research. The technical details of what such a SNS would entail were not described.
An article published as part of the International Work-Conference on Artificial Neural Networks (IWANN) proposes a “synthetic nervous system” as an alternative to artificial neural networks (ANNs) based in machine learning. In particular, SNS should be able to include or learn new information without forgetting what it has already learned. However, the authors do not propose a computational neuroscience framework for constructing such networks. Instead, they propose a homeostatic network of the robot’s “needs”, in which the robot takes actions to satisfy its needs and return to homeostasis. Over time, the robot learns which actions to take in response to its needs.
A dissertation from Prof. Joseph Ayer’s lab at Northeastern University uses a similar term in its title but never explicitly defines it. The topic of the dissertation is “RoboLobster, a biomimetic robot controlled by an electronic nervous system simulation”. Other publications from Prof. Ayers use the term “electronic nervous system” (ENS) to describe similar work. In each of these studies, Prof. Ayers uses a robot that is controlled by a network of simplified dynamical neural models whose structure mimic specific networks from the model organism. The choice of neural model reflects a balance between simulating the dynamics of the nervous system, which motivates mathematical complexity, while ensuring the simulation runs in real time, which motivates mathematical simplicity.
A 2017 research article from Prof. Alexander Hunt, Dr. Nicholas Szczecinski, and Prof. Roger Quinn use the term SNS and implicitly define it as “neural [or] neuro-mechanical models…composed of non-spiking leaky integrator neuron models”. Similar to work by Ayers et al., Hunt et al. apply the term SNS to refer to a simplified dynamical simulation of neurons and synapses used in the closed-loop control of robotic hardware. Subsequent articles by these authors present the Functional Subnetwork Approach for tuning SNS constructed from these and other simplified dynamical neural models (i.e., leaky integrate-and-fire), as well as further SNS models of the nervous system
Comparing the diversity of works that use the term SNS produces an implicit definition of SNS:
* Their Network’s structure and behavioral goals are grounded in biology
* Their priority is to learn more about nervous system function, with the secondary goal of creating a more effective robot control system
* They are typically posed as an alternative to more abstracted neural networks with simplified (e.g., all-to-all) network structure (e.g., multi-layer perceptron networks, deep neural networks)
* They are computational models of the nervous system meant for closed-loop control of the behavior of simulated or robotic agent within an environment.

## Comparison to Other Neural Networks

SNSs share some features with machine learning networks like Artificial Neural Networks (ANN), Convolutional Neural Networks (CNN), and Recurrent Neural Networks (RNN). All of these networks are composed of neurons and synapses inspired in some way by biological nervous systems. These components are used to build neural circuits with the express purpose of accomplishing a specific task. ANN simply refers to a collection of nodes (neurons) connected such that they loosely model a biological brain. This is a rather broad definition and as a consequence there are many subcategories of ANN, two of which are CNN and RNN. CNNs are primarily used for image recognition and classification. Their layer-to-layer connections implement convolutional kernels across small areas of the image, which map the input to the system (typically an image) onto a collection of features. ANNs and CNNs are only loosely associated with SNS in that they share the same general building blocks of neurons and synapses, though the methods used to model each component varies between the networks. Of the three, RNNs are the most closely related to SNS. SNSs use the same leaky-integrator neuron models utilized in RNNs. This is advantageous as neurons inherently act as low pass filters, which is useful for robotic applications where such filtering is often applied to reduce noise for both sensing and control purposes. Both models also exhibit dynamic responses to inputs. While predicting the responses of a complicated network can be difficult, the dynamics of each node are relatively simple in that each is a system of first order differential equations (as opposed to fractional derivatives). The key difference that distinguishes SNS from these neural networks are the synaptic connections and the general architecture of the neural circuit.
RNN structures generally present as large, highly connected or even all-to- all connected layers of neurons. Instead of these layers, SNS relies on functional subnetworks which are tuned to perform specific operations and then assembled into larger networks with explainable functions. These are significantly more tractable than a typical machine learning network. The tradeoff of SNS is that it typically takes more time to design and tune the network but it does not require a training phase involving large amounts of computing power and training data. The other key difference is that SNS synapses are conductance based rather than current based which makes the dynamics non-linear, unlike an RNN. This allows for the modelling of modulatory neural pathways since the synapses can alter the net membrane conductance of a postsynaptic neuron without injecting current. It also enables the functional subnetwork approach to encompass addition, subtraction, multiplication, division, differentiation, and integration operations using the same family of functions.

## Neuron and Synapse Models
### Non-spiking Neuron

SNS networks are composed mainly of non-spiking leaky integrator nodes to which complexity may be added if needed. Such dynamics model non-spiking neurons like those studied extensively in invertebrates (e.g., nematode, locust, cockroach) or may represent the mean activity of a population of spiking neurons. The dynamics of the membrane voltage $V$ of a non-spiking neuron are governed by the differential equation
$C_{m}{\dfrac {dV}{dt}}=I_{\text{leak}}+I_{\text{syn}}+I_{\text{app}}$
where $C_{m}$ is the membrane capacitance, $I_{\text{app}}$ is an arbitrary current injected into the cell e.g., via a current clamp, and $I_{\text{leak}}$ and $I_{\text{syn}}$ are the leak and synaptic currents, respectively. The leak current
$I_{\text{leak}}=G_{m}*(E_{r}-V)$
where $G_{m}$ is the conductance of the cell membrane and $E_{r}$ is the rest potential across the cell membrane. The synaptic current
$I_{\text{syn}}=\sum \limits _{i=1}^{n}G_{s,i}*(E_{s,i}-V)$
where $n$ is the number of synapses that impinge on the cell, $G_{s,i}$ is the instantaneous synaptic conductance of the $i^{th}$ incoming synapse, and $E_{s,i}$ is the reversal potential of the $i^{th}$ incoming synapse.

### Graded Chemical Synapse

Non-spiking neurons communicate via graded chemical synapses:. Typically, synaptic conductances are modeled with a continuous function like a sigmoid but in an SNS this conductance is approximated by the following piecewise-linear function
$G_{s,i}={\begin{cases}0&{\text{if }}V_{pre}<E_{lo}\\g_{s,i}*{\dfrac {V_{pre}-E_{lo}}{E_{hi}-E_{lo}}}&{\text{if }}E_{lo}<V_{pre}<E_{hi}\\g_{s,i}&{\text{if }}V_{pre}>E_{hi}\end{cases}}$
As shown in the corresponding figure this allows the conductance to vary between 0 and a prescribed or designed maximum value ($g_{s,i}$) depending on the presynaptic potential ($V_{pre}$). A piecewise approach is used to ensure exactly 0 conductance, and therefore current, at low activation potentials. This approximates a feature of spiking neuron activity in that no information is transmitted when the neuron isn’t spiking/active. Furthermore, this approximation eliminates transcendental functions enabling analytical calculations of dynamical properties. While this does prevent the network activity from being differentiable, since no gradient-based learning methods are employed (like backpropagation) this is not a drawback.

### Persistent Sodium Current

It was previously mentioned that additional ion channels could be incorporated to elicit more interesting behaviors from non-spiking neuron models. The persistent sodium current is one such addition. A persistent sodium current can depolarize a membrane enough to induce action potential firings at sub-threshold membrane potentials while also being slow to inactivate. In the context of neuroscientific models, this is useful for applications such as pattern generators where it is desired that a neuron’s potential can be rapidly increased and remain elevated until inhibited by another neural signal or applied current.
The model for the behavior of this channel is based on the m and h gating present in the full Hodgkin-Huxley model. The main difference is that this model only uses one m gate instead of three. The equations governing this behavior can be found here and in this paper.

### Integrate-and-Fire

Unless explicitly studying or utilizing the Hodgkin-Huxley model for action potentials, spiking neurons can be modeled via the integrate-and-fire method. This is significantly more computationally efficient than Hodgkin-Huxley making it easier to simulate much larger networks. In particular, leaky integrate-and-fire (LIF) neurons are used for SNS. As the name suggests, this model accounts for membrane potential leak behavior representing ion diffusion across the membrane. This integrate-and-fire model is very similar to the non-spiking neuron described above with the key addition of a firing threshold parameter. When the neuron potential depolarizes to this threshold the neuron “spikes” by instantaneously resetting to its resting potential
While these do not provide the same diversity of dynamical responses as Hodgkin-Huxley, they are usually sufficient for SNS applications and can be analyzed mathematically which is crucial for network tractability. Please refer to the linked Wikipedia article and paper for the equations associated with the LIF neuron model.

### Izhikevich Model

Spiking neurons can also be modeled in a computationally efficient manner without sacrificing the rich behaviors exhibited in biological neural activity. The Izhikevich model can produce spiking behaviors approximately as plausible as Hodgkin-Huxley but with comparable computational efficiency to the integrate-and-fire method. To accomplish this, Izhikevich reduces the Hodgkin-Huxley model to a two-dimensional set of ordinary differential equations via bifurcation methods. These can be seen here:
$v'=0.04v^{2}+5v+140-u+I$
$u'=a*(bv-u)$
Where the membrane potential resets after spiking as described by:
${\text{if }}v\geq 30mV,{\text{then }}{\begin{cases}v\longleftarrow c\\u\longleftarrow u+d\\\end{cases}}$
$v$ is a dimensionless variable representing the membrane potential. $u$ is a dimensionless variable representing membrane recovery which accounts for the ion current behaviors, specifically those of $Na^{+}$ and $K^{+}$. $a$, $b$, $c$, and $d$ are dimensionless parameters that can be altered to shape the signal into different neuronal response patterns. This enables chattering, bursting, and continuous spiking with frequency adaptation which constitute a richer array of behaviors than the basic integrate-and-fire method can produce.
The coefficients in the $v'$ equation were acquired via data fitting to a particular neuron’s spiking patterns (a cortical neuron in this case) to get the potentials in the mV range and time on the scale of ms. It is possible to use other neurons to fit the spike initiation dynamics, they will simply produce different coefficients.
For more information on the Izhikevich model and the bifurcation methods used to develop it please read the following.

### Rulkov Map

The Rulkov map forgoes complex ion channel-based models composed of many non-linear differential equations in favor of a two-dimensional map. This map expresses slow and fast dynamics which is vital for representing both slow oscillations and fast spikes and bursts. The model is shown below:
$x_{n+1}=f(x_{n},y_{n}+\beta _{n})$
$y_{n+1}=y_{n}-\mu (x_{n}+1)+\mu \sigma _{n}$
$x$ is the fast dynamical variable and represents the membrane potential while $y$ is the slow dynamical variable and does not have explicit biological meaning. $\beta$ and $\sigma$ are used to describe external influences and help model the dynamics of stimuli like injected/synaptic and tonic/bias currents. Small values of $\mu$ result in slow changes in $y$ that account for its slower behavior. Assuming a constant external influence ($\beta _{n}=\beta$) the function $f$ can be written as the following discontinuous function:
$f(x,y)={\begin{cases}{\dfrac {\alpha }{1-x}}+y&x\leq 0\\\alpha +y&0<x<\alpha +y\\-1&x\geq \alpha +y\end{cases}}$
In this case $\alpha$ is the map control parameter and can be used, along with $\sigma$, to shape the output behavior of the neuron.
You can read more about the Rulkov map on the Wikipedia page hyperlinked here and in.

## Functional Subnetwork Approach (FSA)

Functional Subnetworks are the building blocks of SNSs. They are composed of neurons and synapses modeled from the equations described above as well as other neuroscience models. When tuned properly, as shown in the following section, they are capable of performing mathematical calculations as well as dynamical operations. This process is different from other artificial neural networks in that the tuning exploits the network structure. The artificial neural networks mentioned previously utilize all-to-all connectivity between layers but in a SNS there are no distinct layers. Rather the synaptic connections are methodically designed with an express function in mind. This results in fewer synaptic connections without sacrificing network effectiveness. Tuned subnetworks can be assembled into larger networks to form the SNS itself. Assembly can be done in series or in parallel, much like adding components to an electrical circuit. The resulting neural network is reminiscent of a peripheral nervous system, rather than a brain-like network (ANN).

## Tuning with the Functional Subnetwork Approach (FSA)

The leaky-integrator model above can be converted into a tuning-friendly equation by normalizing the membrane potential to read 0 when at rest ($U=V-E_{r}$) and by introducing the $R$ parameter. $R$ is the potential operating range of the graded chemical synapse and is equal to $E_{hi}-E_{lo}$. Making these changes and then solving for the steady-state activation ($U^{*}$) of the neuron (when ${\tfrac {dU}{dt}}=0$) gives the following equation:
$U^{*}={\dfrac {\sum \limits _{i=1}^{n}{\dfrac {g_{s,i}}{R}}*U_{pre,i}*\Delta E_{s,i}+I_{\text{app}}}{1+\sum \limits _{i=1}^{n}{\dfrac {g_{s,i}}{R}}U_{pre,i}}}$
$\Delta E_{s}$ is determined by the difference between cell resting potential ($E_{r}$) and the synaptic reversal potential ($E_{s}$). This equation can be used to tune synapse conductances for specific points in the network’s operation where the neurons are in a steady state or have a known/designed membrane potential ($U_{pre}$). In this way it is possible to intentionally and directly set the state of the network during key moments in its operation sequence so that it produces a desired action or behavior.
Tuning a subnetwork requires the use of signal transmission and/or modulation pathways. Signal transmission pathways make a postsynaptic neuron’s potential proportional to that of the presynaptic neuron(s). The ratio of the synaptic proportionality is referred to as $k_{syn}$. This can be used to calculate the maximum conductance value for a synapse ($g_{s}$) via the equation:
$g_{s}={\dfrac {k_{syn}R}{\Delta E_{s}-k_{syn}R}}$
$g_{s}$ is used in the graded chemical synapse model discussed previously. Tuning a synapse using $k_{syn}$ instead of the steady-state activation equation is practical when a specific relationship between a small subset of neurons is desired. For example, if a network requires that the postsynaptic neuron membrane potential be half that of the presynaptic neuron, $k_{syn}$ can be set to ${\tfrac {1}{2}}$ and plugged into the equation.
The signal modulation pathway is used to modulate neuron sensitivity This allows for adaptive responses to various inputs. In this pathway $c_{syn}$ is used instead of $k_{syn}$. Technically both are defined as the steady state postsynaptic potential ($U_{post}^{*}$) divided by the presynaptic potential ($U_{pre}$), the ratio mentioned above, for a given applied current. The letter $c$ is used for modulation to indicate that the neuron sensitivity is changing and is therefore not the same as $k$ which represents a static relationship. For a modulation pathway, $g_{s}$ can be calculated as:
$g_{s}={\dfrac {c_{syn}R-R}{\Delta E_{s}-c_{syn}R}}$
In order to minimize hyperpolarization of the postsynaptic neuron $\Delta E_{s}$ should be kept negative and as close to 0 as possible (or zeroed entirely).

### Arithmetic Networks

All arithmetic subnetwork tuning methods were taken from.

#### Addition

Addition subnetworks are composed of one postsynaptic neuron connected to presynaptic neurons via excitatory transmission pathways. The purpose of the network is to enable an approximation of linear addition of the incoming presynaptic signals. The subnetwork can be tuned using either of the methods outlined previously. The addition behavior can be weighted using $k_{syn}$. This type of network may represent positive feedback mechanisms in biology. To capture the addition properly $g_{s}$ must be small but it cannot be 0 or the synapse will effectively be severed. Instead, $\Delta E_{s}$ is maximized which results in small values of $g_{s}$.

#### Subtraction

Subtraction subnetworks are similar to addition networks except the presynaptic potentials being subtracted travel to the postsynaptic cell via inhibitory transmission pathways. This may approximate negative feedback mechanisms in the nervous system. Unlike with depolarizing ions, hyperpolarizing ion potentials tend to be much closer to the membrane resting potential. This results in smaller $\Delta E_{s}$ values so it is difficult to minimize $g_{syn}$ like in the addition subnetwork. The easiest way to properly tune a subtraction network is to design the parameters to fit a specific scenario. This process was already described using the steady state activation equation. $k_{syn}$ can also be used as in the addition subnetwork but since $g_{syn}$ cannot be minimized to the same degree the effect is not as precise. The equation to solve the inhibitory pathway in this manner is as follows:
$g_{s,2}={\dfrac {\Delta E_{s,1}}{\Delta E_{s,2}}}*{\dfrac {-k_{syn}R}{\Delta E_{s,1}-k_{syn}R}}$
The excitation pathway synaptic potential difference ($\Delta E_{s,1}$) must first be determined. It is vital that $\Delta E_{s,2}$ for the inhibitory pathway be negative or solving the equation will produce a negative conductance which is biologically impossible.

#### Division

The physical structure of a division subnetwork is the same as a subtraction subnetwork except the inhibitory synapse is modulatory, rather than transmission. The division performed in this network follows the form below where the transmitted signal $U_{pre,1}$ is divided by the modulating signal $U_{pre,2}$:
$U_{post}^{*}={\dfrac {U_{pre,1}}{1+{\dfrac {1-c_{syn}}{c_{syn}R}}*U_{pre,2}}}$
The excitatory transmission synapse is tuned as described previously. The modulatory reversal potential is right around 0 so the $\Delta E_{s,2}$ from before is cancelled out (set to 0). Setting $\Delta E_{s,1}$ equal to $R$ and applying these to the steady-state activation equation gives the division equation above once simplified. From here the equation can be used as before and $c_{syn}$ can be set such that the network produces the desired division behavior. For example, if it were desired that $U_{post}^{*}=1$ when $U_{pre,2}=R$ then $c_{syn}$ could be set to ${\tfrac {1}{R}}$ (example from). $c_{syn}$ values closer to 0 more strongly reduce the postsynaptic neuron’s sensitivity to inputs.

#### Multiplication

Multiplication networks are somewhat similar to division networks but rather than having the modulatory synaptic connection directly between the presynaptic and postsynaptic neuron there is an interneuron in the way. The presynaptic neuron connects to the interneuron via a modulatory pathway and the interneuron connects to the postsynaptic neuron with another modulatory synapse (please see the figure in this section for clarification). This modulation in series results in a network that essentially divides by the inverse which turns out to be multiplication. The $c_{syn}$ parameter between the interneuron and the postsynaptic neuron is 0. This ensures that when its potential ($U_{inter}$) is at the maximum value allowed ($R$) the postsynaptic neuron potential ($U_{post}$) is 0 regardless of the applied current. This makes sense since dividing by a maximum allowed number for a system should result in the lowest possible output. Plugging this into the steady-state activation equation gives the following solution for the synaptic conductance:
$g_{s,2}={\dfrac {-R}{\Delta E_{syn,2}}}$
$\Delta E_{syn,2}$ cannot be greater than or equal to 0 here as division by zero is undefined and dividing by a positive number gives a negative conductance which is impossible. The less negative $\Delta E_{syn,2}$ is, the larger $g_{s,2}$ is. This means $g_{s,2}$ must determine $\Delta E_{syn,2}$ so as to stay within the confines of biological plausibility. With this synapse designed the rest can be determined using the methods outlined in. The process is rather involved and better suited for an in-depth reading.

### Dynamic networks

All dynamic subnetwork tuning methods were taken from.

#### Differentiation

Differentiation networks are nearly the same as subtraction networks with an added dynamical component. The presynaptic neuron that inhibits the postsynaptic neuron is modelled as a physically larger neuron which means it has a greater capacitance than the excitatory synapsing neuron. This increased capacitance results in a neuron that is slower to reach its fully excited state (ie. $\tau _{2}>\tau _{1}$). Subtracting the slow responding neuron signal (with the inhibitory synapse) from the fast responding signal is basically a biological version of numerical differentiation whereby a previous time-“step” is subtracted from the current time-“step”. This network is good for identifying changes in applied current to a network or applied stimulus to a sensory neuron. The equations that detail this behavior are presented in.

#### Integration

The neuron model used for SNS has leak dynamics meaning a current is always leaking out of the neuron to return it to resting potential. This means a single neuron modelled in this fashion is incapable of storing data. A system of two neurons, however, are capable of this if linked via mutually inhibitory transmission synapses with a marginally stable equilibrium curve. The mutual inhibition means that the activation levels are maintained instead of leaking away and the system state changes continuously for the duration of an applied stimulus (integration). Integration subnetworks, while not necessarily complicated in structure, are the most complex to define and prove. As such the derivation and proof of marginal stability are worth an in-depth read here as a cursory overview would be insufficient.

## Applications
### Robotic Leg Control

As mentioned previously, the primary application of the Synthetic Nervous System method is robotic control. Within this field, SNSs have largely been used to control the locomotion of legged robots. Many examples of both simulated and physical robots which incorporate SNSs exist in the literature:

#### RoboLobster

* Ayers et al. constructed and tuned SNS controllers whose structure and function incorporated findings from many experimental studies to control the motions of the lobster-inspired robot, RoboLobster. This work stands out as an early example of quintessential SNS robot control because of its depth of neural circuitry detail (e.g., command networks, coordination networks, and pattern generation networks) and breadth of bioinspiration (e.g., nervous system-like controller organization, animal-like body plan, neuromorphic sensors and encoding strategies, and myomorphic actuators).
* Subsequent work from the Ayers lab has increased the biological detail of the neural and synaptic models used in their SNS controllers. Once tuned by hand, the SNS produces coordinated output for controlling RoboLobster. As a consequence, this work demonstrates the robustness of neural circuits that coordinate crustacean leg movements

#### Neural controller for the hind leg walking in a dog robot based on mouse spinal circuitry

* This study proposed a novel systematic, offline method by which to tune the parameter values within the SNS. The tuning method was systematic in that derivative-free optimization programs selected parameter values that minimized loss functions related to network performance, e.g., the phasing between leg movement and pattern generating network activity, without human intervention. This eliminated time-consuming manual parameter tuning. The tuning method was offline in that all parameter selection took place before the robot began operation, eliminating the complex process of operating the robot to select parameter values.

#### Design process and tools for dynamic neuromechanical models and robot controllers

* This study quantified the stability and phase response of a half-center oscillator model used in prior and subsequent SNS studies. The quantity “delta”, that is, the equilibrium voltage of the inhibited half-center relative to its synaptic conductance threshold $E_{lo}$, was introduced as a means to predict the stability and phase-response characteristics of the oscillator model. This study relates “delta” to the synaptic conductance and reversal potential within the network.
* A mechanism underlying post-inhibitory rebound (PIR) within the half-center oscillator model was identified. Quantifying this mechanism facilitated the design of subsequent networks in which phase-altering sensory feedback should induce PIR (e.g., activation of swing networks after stance phase-signaling feedback ends) or should not induce PIR (e.g., load feedback from one leg inhibiting the swing networks of the anterior leg).
* Design programs for tuning SNS parameters to achieve particular oscillation frequencies or phase response curves were described. These programs were applied to the control of a two-jointed simulated leg.

#### Directed stepping neural control for the legs of a praying mantis robot known as MantisBot

* This study was the first to apply the Functional Subnetwork Approach (FSA) to the design of an SNS that controlled the motion of a robot. The SNS of over 400 neurons and over 800 synapses controlled the stepping of the robot’s leg and adapted the stepping motion based on the robot’s visual input. No trial-and-error was required to tune the network parameters, i.e., no hand tuning, optimization, or machine learning. Furthermore, because tuning was based on circuit structure and functionality, this approach saved time relative to past studies that used derivative-free optimization to tune the values. The structure of the network and its tuning by the FSA enabled the robot to produce the intended behaviors.

#### Locomotion control of a simulated cockroach

* This study presented the largest SNS to be tuned by the FSA, an SNS with over 3,500 neurons and over 6,500 synapses whose structure was based on thoracic circuitry that controls insect locomotion. The SNS controlled the walking of a forward-dynamics simulation of a cockroach, named SimRoach2. SimRoach2 walked in a straight path with minimal body pitch and roll at 20 cm/s, a commonly observed walking speed for the model organism, Blaberus discoidalis. As in study, no trial-and-error was required to tune the network parameters.

#### Neuromechanical walking model of a rat hind limb incorporating neural central pattern generators

* This study applied the FSA to the SNS from and expanded it to include additional hierarchical levels of the spinal locomotion control network. This study demonstrated that FSA techniques could be applied to models of vertebrate locomotion and were not insect-specific.

### Brain networks

Synthetic Nervous Systems have also been used to model higher functions in the nervous system than the peripheral networks responsible for locomotion. Some examples of these kinds of SNS are listed here:

#### Visual neural network model of a lobster for optical flow reflexes

* This study produced an SNS that calculated the optic flow of a lobster’s visual scene, and formulated direction-specific descending commands to the locomotion networks to drive behavior. This is an early SNS model of a brain network.

#### Visual neural network model of a fruit fly for motion recognition

* The FSA was used to construct an SNS model of networks that process wide-field vision in insects, i.e., 12 columns of the insect optic lobe, including the retina, lamina, medulla, and lobula plate tangential cells (LPTC). This study is the first to apply the FSA to design exteroceptive networks, i.e., visual elementary motion detector (EMD) networks.

#### Optomotor response model for a praying mantis inspired robot visual system

* The authors extend the model from to include 64 columns of the optic lobe. The network was implemented as part of a robot’s control system. Neural feedback from the LPTCs drove an optomotor reflex similar to that described in insects.

#### Simulation of a sensory integrator in the central complex of an insect brain

* An SNS based on the connectivity and function of the insect central complex (CX) was designed and tuned using the FSA and tested in simulation. The CX model reproduced responses to perturbations recorded in fruit flies and integrated antennal input as hypothesized in cockroaches. Analysis from the FSA suggested a mechanism that may underlie the memory-like behavior of the CX.