# Caravelli-Traversa-Di Ventra equation

The Caravelli-Traversa-Di Ventra equation (CTDV) is a closed-form equation to the evolution of networks of memristors. It was derived by Francesco Caravelli (Los Alamos National Laboratory), Fabio L. Traversa (Memcomputing Inc.) and Massimiliano Di Ventra (UC San Diego) to study the exact evolution of complex circuits made of resistances with memory (memristors).
A memristor is a resistive device whose resistance changes as a function of the history of the applied voltage or current. A physical realization of the memristor was introduced in the Nature paper by Strukov and collaborators while studying titanium dioxide junctions, with a resistance experimentally observed to change approximately in accordance to the model
$R(x)=R_{off}(1-x)+xR_{on}$
${\frac {dx}{dt}}={\frac {1}{\beta }}I\ \ \ \ \ \ \ \ \ \ \ (1)$
where $x$ is a parameter describing the evolution of resistance, $I$ is the current across the device and $\beta$ is an effective parameter which characterizes the response of the device to a current flow. If the device decays over time to a high resistance state, one can also add a term $-\alpha x$ to the right-hand side of the evolution for $x$, where $\alpha$ is a decay constant. However, such resistive switching has been known since the late 60's. The model above is often called Williams-Strukov or Strukov model. Albeit this model is too simplistic to represent real devices, it still serves as a good model exhibiting a pinched hysteresis loop in the current-voltage diagram. However, because of Kirchhoff's laws, the evolution of networks of these components becomes utterly complicated, in particular for disordered neuromorphic materials such as nanowires. Often, these are called memristive networks. The simplest example of a memristive circuit or network is a memristors crossbar. A memristor crossbar is often used as a way to address single memristors for a variety of applications in artificial intelligence. However, this is a one particular example of memristive network arranged on a two dimensional grid. Memristive networks have also important applications, for instance, in reservoir computing. A network of memristors can serve as a reservoir for nonlinearly transforming an input signal into a high-dimensional feature space. The memristor-based reservoir concept was introduced by Kulkarni and Teuscher in 2012. While this model was initially employed for tasks like wave pattern classification and associative memory, the readout mechanism utilized a genetic algorithm, which inherently operates non-linearly. A memristive network is a circuit that satisfies the Kirchhoff laws, e.g. the conservation of the currents at the nodes, and in which every circuit element is a memristive component. Kirchhoff's laws can be written in terms of the sum of the currents on node n as
${\frac {dx_{i}}{dt}}=f(x_{i};I_{i})$
    $\sum _{i\rightarrow n}I_{i}=0\ \ \ \ \ (2)$
where the first equation represents the time evolution of the memristive element's internal memory either in current or voltage, and the second equation represents the conservation of currents at the nodes. Since every element is Ohmic, then, $V=R(x)I$ which is Ohm's law and $x$ is the memory parameters. These parameters typically represent the internal memory of the resistive device and are associated to physical properties of the device changing as an effect of current flowing through the device or the voltage drop. These equations become quickly highly nonlinear because the memristive device is typically nonlinear, and moreover Kirchhoff's laws introduce a higher layer of complexity. A silver nanowire connectome can be described using graph theory, and have applications ranging from sensors to information storage.Since memristive devices behave as axons in a neuronal network, the theory of memristive networks is the theory of nanoscale electric physical devices whose behavior parallels the one of real neuronal circuits.
In neuromorphic engineering, the goal is the use of very-large-scale integration (VLSI) systems containing electronic analog circuits to mimic neuro-biological architectures similar to the ones in the nervous system. A neuromorphic computer/chip is any device that uses physical artificial neurons (made from silicon) to do computations. The development of the formalism of memristive networks is used to understand the behavior of memristors for a variety of purposes, including modelling and understand electronic plasticity in real circuits. Side applications of such theory is to understand the role of instances in memcomputers and self-organizing logic gates.
In a typical memristive network simulation one has to solve first for Kirchhoff's laws numerically, obtain voltage drops and currents for each device, and then evolve the parameters of the memristive device and/or junction to obtain the resistance or conductance. This means that effectively, as memristive devices change their resistance or conductance, such devices are interacting. Even for the simple memristor model, such a problem leads to nonlinearities strongly dependent on the circuit realizations. The CTDV equation is a model for the evolution of networks of arbitrary circuits composed of devices such as in eqn. (1), with the inclusion of a decay parameter controlling the volatility. It can be considered a generalization of the Strukov et al. model to arbitrary circuits.
For the case of the Strukov et al. model, equations (2) can be written explicitly by integrating analytically Kirchhoff's laws. The evolution of a network of memristive devices can be written in a closed form (Caravelli-Traversa-Di Ventra equation):
    ${\frac {d}{dt}}{\vec {x}}=-\alpha {\vec {x}}+{\frac {1}{\beta }}(I-\chi \Omega X)^{-1}\Omega {\vec {S}}$
as a function of the properties of the physical memristive network and the external sources, where $x_{i}$ is the internal memory parameter of each device. The equation is valid in the case of the Strukov original toy model and it can be considered as a generalization of the single device model; in the case of ideal memristors, $\alpha =0$, although the hypothesis of the existence of an ideal memristor is debatable. In the equation above, $\alpha$ is the "forgetting" time scale constant, typically associated to memory volatility, while $\chi ={\frac {R_{\text{off}}-R_{\text{on}}}{R_{\text{off}}}}$ is the adimensional ratio between the resistance gap and off resistance value. ${\vec {S}}$ is the vector of the voltage sources in series to each junction. Instead, $\Omega$ is a projection matrix in which the circuit enters directly, by projecting on the fundamental loops of the graph; such matrix enforces Kirchhoff's laws. Interestingly, the equation is valid for any network topology simply by changing the corresponding matrix $\Omega$. The constant $\beta$ has the dimension of a voltage and is associated to the properties of the memristor; its physical origin is the charge mobility in the conductor. The diagonal matrix and vector $X=\operatorname {diag} ({\vec {X}})$ and ${\vec {x}}$ respectively, are instead the dynamical internal value of the memristive devices, with values between 0 and 1. This equation thus requires adding extra constraints on the memory values in order to be reliable, but can be used for instance to predict analytically the presence of instantonic transitions in memristive networks.