2.2. Models Analysed
To simulate a memristor using compact models, it is necessary to describe the relationship between the parameters of the equations and the real parameters of the device. The focus of compact modeling is the simulation of the I-V curves of the system, the general approach involves solving the following system of equations:
where
is the control signal,
is the response,
is the function linking the input signal and the response (resistance or conductivity),
is the evolution function,
is the window function,
is the state variable of the memristor. In many cases [
30] these equations are simplified to:
The first and most popular memristor model was proposed in [
2]. The linear drift model is still relevant today and is used as the basis for other models. It is described by a system of equations:
The above equations are simple, and their influence on the appearance of the VAC can be deduced trivially from general considerations.
However, in addition to the advantages of good interpretability, computational simplicity, and stability, the model has a number of key drawbacks that make it difficult to use. The simplicity of the model is due to strong simplifying assumptions about the processes in the active layer of the memristor, which affect the accuracy of the model. Also, the model explicitly includes assumptions of switching physics that severely limit the range of approximated VACs.
The emergence of nonlinear drift models was designed to compensate for these drawbacks. An essential part of nonlinear drift models is based on [
2]. Some of the first models were proposed by Joglekar and Wolf, Prodromakis, Biolek, Zha and their colleagues [
31,
32,
33,
34]. Each model was designed to correct for state evolution in the linear drift model using a window function with internal parameters. At present, there is a tendency to extend the original window functions and build generalized window functions on their basis [
20,
21,
22], and it is the generalized nonlinear drift models that we will analyze.
Shi’s [
21] nonlinear drift model is a fractional-order memristor model with the introduction of a new window function and a fractional time derivative of the state variable into the evolution equation:
where the parameter
lies in
,
is a positive real number,
is the partial derivative of Caputo, defined by the formula
Here is an integer, , and is the Euler gamma function. In the analysis of this model, is assumed to be equal to one for simplicity.
According to the authors, models with fractional derivatives better describe physical phenomena related to nonlocality, time memory, power law and weak singularity. The proposed window function avoids problems related to stick effect, and by varying the parameter one can achieve a change in the maximum value of the window function.
Zha’s generalized window function [
20] is given by the formula:
where the parameter
is a positive integer,
is a positive real number, and the parameter
belongs to the interval
. This window function solves the problem of the stick effect and scaling. The authors of the original paper propose a fine-tuning of this window function to obtain adjustable resolution in memristors using a sequence of input pulses.
A nonlinear drift model with the Li’s window function [
22] was developed to overcome the stick effect, the inflexible parameter and the distorted pinched hysteresis loop problems. The window function has the following form:
As the authors note, the general form of the window function allows one to adapt it to spike neural network simulations.
Another group of nonlinear drift models includes the Yang’s [
35] and Simmons’ barrier models [
36]. The latter model is considered to be the most accurate memristor model from Hewlett Packard (HP) Labs at the moment. Models from this group were omitted in the analysis, because in the Yang’s model the nonlinear evolution and boundary effects are introduced with window functions, and the Simmons’ barrier model is inefficient in terms of Simulation Program with Integrated Circuit Emphasis (SPICE) simulations [
37].
There are also adaptive models with varying degrees of adaptivity. Such models include Yakopcic’s model [
24], defined by equations:
Here is the state variable, and are constants, and are constants that determine the change rate of the state variable after overcoming threshold voltages, and are the absolute values of the upper and lower threshold voltages, respectively. Parameters and are restricted only to the range .
The motivation for creating this model was the experimental confirmation of threshold voltages as well as the inability of the models [
35,
38,
39,
40] to simulate a decrease in the lobe width of the current–voltage characteristic as the average conductance per cycle increases.
The VTEAM model [
23] was created by the authors as an adaptive threshold model of a voltage controlled memristor. The current–voltage relationship in this model is defined differently for each case. We use the following combination of equations for this model:
where
. The VTEAM threshold model is a modification of the earlier TEAM [
41] model used to simulate current-controlled memristors. The reason for creating the VTEAM model was to avoid performance and reliability problems in crossbars of threshold voltage memristors, since the voltage across all memristors is the same, and the variable resistance does not affect the procedure of switching to the high impedance state.
We previously developed a mobility modification model (MMM). This model is based on the Yakopcic’s model, which demonstrates competitive simulation accuracy and speed of the experimental VAC approximation. The model was obtained by multiplying the evolution equation by functions to account for inhomogeneities that modify the mobility of charge carriers:
Here
is the current–voltage relation in the Equation (15),
is the accounting function of the i-th inhomogeneity, is the number of inhomogeneities, is the effective position of the i-th inhomogeneity in the state space of a memristor, is the effective width of a given inhomogeneity. The motivation for creating this model was the presence of inhomogeneities in the active layer of a memristor that change the mobility of charge carriers [
42].
The above equations were solved using the 4th order predictor–corrector method. The idea behind the predictor-corrector method is to use a suitable combination of an explicit and an implicit technique to obtain a method with better convergence characteristics. The explicit and implicit methods are third order Adams Methods [
43], called Adams–Bashforth and Adams–Moulton methods respectively.
2.4. Synthetic Sampling
Analyzing the results of both the experiment performed and those obtained in the works of other authors, we can conclude that the lowest accuracy of the obtained results refers to the region of switching between states and some of its vicinity. Moreover, the different character of switching can be observed not only between devices on different materials, but also within one series of switching. This phenomenon is connected with a set of effects: with peculiarities of experiment, with the equipment signal of registration, different nature of the functional domain effects, and so on. Thus, a significant part of the features that are possible to distinguish in the switching domain can refer not just to a structure of a certain type, but even to a specific device or even experiment. Consequently, due to the ambiguous nature of the switching region features (e.g., set voltage [
26]), when comparing models, priority should be given to the pre-switching regions.
Thus, parts one and four of
Figure 2 are considered indirectly, through the value of the regularizer, as a function of the area. The choice of a particular area is conditioned, among other things, by the estimation of the characteristic values of the readout voltage.
Therefore, the parts two and three of the I-V contour are used to construct the basic error function. The points over which the approximation functional was constructed were selected proportionally to the maximum voltage amplitude in the structure during the switching process.
For 100 voltage points proportional to the maximum voltage, the square of the current value difference (MSE) was calculated and averaged for the approximation result and the testing sample using the formula:
where
is the model current at point
,
is the loop current at point
,
is the total number of points for which the error is estimated.
Based on experimental contours, including [
12,
14,
44,
45,
46], we designed asymmetric elements of the VAC contours (
Figure 3), significantly different for right and left parts.
2.5. Threshold Voltages
Threshold voltages in memristor models correspond to the values of the electric field strengths, above which the memristor resistance dynamics change significantly. This effect physically corresponds to changes within the conducting regions.
Depending on the type of model, thresholds can be included explicitly or implicitly. In the VTEAM and Yakopcic’s threshold models, threshold voltages appear in the evolution equations explicitly:
In the exponential drift model [
47], instead of threshold voltage, a characteristic value of the electric field is accounted in the vacancy drift rate as follows:
The threshold voltage is not specified in the linear drift model. In the nonlinear drift models based on it, the threshold voltage is not explicitly specified either. However, depending on the values of the window function parameters, one can observe a nonlinear evolution simulating the presence of threshold characteristics. In this case the evolution of the state variable occurs along the entire switching cycle.
The presence of the threshold voltages is confirmed experimentally, so it is necessary to account them in modeling. Taking into account the threshold values generate additional computational complexity, because due to the asymmetry of the I-V curve, we have to additionally determine a group of related parameters separately for the left and right lobe of the I-V curve.
2.7. Optimization Method
As the most popular method for solving the optimization problem is a combination of multistart method for some parameters and gradient descent for the rest. Application of this approach is justified for a small number of considered switching cycles for each particular model.
The search method for an optimal solution for a set of models is determined by the complexity of each individual model, which is associated with unique parameter sets and equations complexity.
Thus, it is important to use a general global optimization algorithm. One of the well-studied global optimization methods is random search [
50,
51].
By random search we will imply an iterative algorithm for finding the minimum of the target function
,
, with its’ step being defined as follows:
where
is a sequence of random vectors.
A common choice of
is:
where
are independent equally distributed random vectors,
and
are parameters (matrix and vector respectively) depending only on the results of previous iterations, e.g., in the most general case:
However, a simpler dependence is usually chosen. In the following, we will assume that:
Usually, is selected as normally distributed or uniformly distributed on a unit sphere.
There are theoretical results guaranteeing the convergence of this algorithm to the probability optimum under rather general assumptions, as well as estimates of the expectation of the number of steps to convergence [
50,
51]. For example, if we assume that functions
,
and
are continuous, and
have a distribution with nonzero density on all space
, then there is a probability convergence to a global minimum:
Earlier studies have been conducted [
52] on estimation of expectation of number of steps
of algorithm before achievement of accuracy
, i.e.,
. Let
be the density of distribution of random variables
,
. Then
where
is Lebesgue measure in
.
We used the adaptive random search algorithm implemented in the Python programming language. The algorithm step depends on the current argument value. The step has normal distribution with zero expected value and standard deviation proportional to the absolute value of the argument.
As an experimental curve for the calculation, we used the results of experiments on the study of the characteristics of the graphene oxide memristor, first presented in [
25]. The I-V contour of the memristor is presented in
Figure 4.