Project title Analysis and design of memristive circuits for neuromorphic applications
- Granting agency: NCN,
- Grant type: OPUS,
- Grant no.: UMO-2024/53/B/ST7/03841,
- Dates: 2025.02.17-2028.02.16.
Team
- Prof. Zbigniew Galias: home page, AGH, BaDAP - chief investigator,
- Dr. Bartłomiej Garda: AGH, BaDAP - investigator,
- Mr. Karol Bednarz: BaDAP - PhD student.
Project Background and Context
Introduction to Memristor Technology
Neuromorphic Applications of Memristive
Devices
Fundamentals of Reservoir Computing
The Role of Memristors in Reservoir
Computing
Interactive Memristor Simulator
Interactive Minati Circuit - Demo
Research tasks
Stanford Memristor Chua's Circuit
Memristor-based reservoir computing
Analysis of memristor-based oscillators
Minati Circuit
NeuralODE-based memristor modeling
Publications
Articles in journals
-
K. Bednarz, B. Garda, Z. Galias, "Neural ODE based modeling of memristive devices".
submitted to IEEE Transactions on Circuits and Systems 2.
Articles in conference proceedings
-
Z. Galias, "Dynamical Behaviors and Multistability in the Stanford Memristor Chua's Circuit", Proc.
International
Conference of Numerical Analysis and Applied Mathematics, ICNAAM'2025, Heraklion, Greece, 16-22 September, 2025.
accepted for publication.
icnaam2025mb.pdf
Conference/workshop presentations
-
Z. Galias, Dynamical Behaviors and Multistability in the Stanford Memristor Chua's Circuit, International
Conference of Numerical Analysis and Applied Mathematics, ICNAAM'2025, Heraklion, Greece, 16-22 September, 2025.
Lecture presentation.
Slides: icnaam2025mf.pdf
-
K. Bednarz, B. Garda, "Neural Network-Based Modeling of a Memristor Embedded in a Physical Chaotic Circuit", The
8th
International Conference on Memristive Materials, Devices & Systems, MEMRISYS'2025, Edinburgh, UK, 13-16
October,
2025.
Lecture presentation.
Slides: memrisys2025kb.pdf
Abstract: memrisys2025kb.pdf
PROJECT DATABASE
MATLAB code:
-
Simulations of the Stanford memristor Chua's circuit (Z. Galias, "Dynamical Behaviors and Multistability in the
Stanford Memristor Chua's Circuit"):
- circuit parameters (3D and 5D): smccparameters.m,
- 3D circuit:
- smcc3.m (vector field),
- smcc3events.m (events),
- smcc3integrate.m (integrate),
- 5D circuit:
- smcc5.m (vector field),
- smcc5reg.m (vector field with regions),
- smcc5events.m (events),
- smcc5integrate.m (integrate).
-
Analysis of MMS Memristor Model Based Oscillator (B. Garda):
- MMS switching function: fun_MMS.m,
- ODE right-hand side: minati_system.m,
- analytical Jacobian: compute_jacobian.m,
- parameter struct builder: create_osc_params.m,
- fixed-point analysis, eigenvalue sweep over R3: fixed_point_simplified.m,
- stability classification at one R3: chk_stability.m,
- Lyapunov exponent sweep (N=500): lyapunov_config.m,
- Lyapunov sweep high-res (N=5000, period-doubling detection): lyapunov_config_5000.m,
- fine-resolution Lyapunov in zoom windows A and B: lyapunov_zoom_sweep.m,
- QR/Benettin algorithm, Kaplan-Yorke dim, 0-1 test at one R3: compute_lyapunov.m,
- bifurcation diagram sweep: bifurcation_config.m,
- Poincare crossings at one R3: compute_bifurcation.m,
- Poincare section config at one R3: poincare_config.m,
- ODE integration with Poincare event detection: compute_poincare.m.
C++ code:
- Simulations of the Stanford memristor Chua's circuit (Z. Galias, "Dynamical Behaviors and Multistability in the Stanford Memristor Chua's Circuit"):
Python code:
- Neural ODE based modeling of memristive devices
- Project file: pyproject.toml,
- Single-MemODE implementation: jax_generalGoff.py,
- Dual-MemODE implementation: jax_general_optuna_3obj_test_set.py,
- Utils: utils.py
- Neural Network-Based Modeling of a Memristor Embedded in a Physical Chaotic Circuit
- Model definition and training script: neural_memristor_all_feature.py
- Model with RNN autoencoder: neural_memristor_autoencoder_rnn.py
- Declaration of loss function modules: multi_loss.py
- Estimation of initial conditions: initials.py
Julia code:
- Neural ODE based modeling of memristive devices
- MMS Model Optimization: main_mms_test.jl,
- GMMS Model Optimization:main_gmms_dae_test.jl,
Firmware code/C code:
- Neural Network-Based Modeling of a Memristor Embedded in a Physical Chaotic Circuit
- Arduino firmware, for control AD5292 digital potentiometer: ad5292.cpp. External AD5293 library: AD5293,
- STM32 firmware: ReservoirComputing-stm32h7-firmware