We propose a new method for solving Initial Value Problems (IVPs). Our method is based on analog computing and has the potential to almost eliminate traditional switching time in digital computing. The approach can be used to simulate large systems longer, faster, and with higher accuracy. Many algorithms for Model-Based Diagnosis use numerical integration to simulate physical systems. The numerical integration process is often either computationally expensive or imprecise. We propose a new method, based on FieldProgrammable Analog Arrays (FPAAs) that has the potential to overcome many practical problems. We envision a software/hardware framework for solving systems of simultaneous Ordinary Differential Equations (ODEs) in fraction of the time of traditional numerical algorithms. In this paper we describe the solving of an IVP with the help of an Analog Computing Unit (ACU). To do this we build a special calculus based on operational amplifiers (op-amps) with local feedback. We discuss the implementation of the ACU on an Integrated Circuit (IC). We analyze the working if the IC and simulate the dynamic Lotka-Volterra system with the de-facto standard tool for electrical simulation: SPICE. Introduction Analog computers have been used extensively for solving many problems. The differential analyzer (Bush 1931) is an early example. In this paper we leverage the advancement of microelectronics to propose a new implementation of a reconfigurable analog computer. We propose an Integrated Circuit (IC) design that can dramatically improve simulation of physical systems. Our idea bridges the worlds of hybrid analog and digital electronic design, numerical methods and simulation of dynamic systems, and diagnostic and prognostic reasoning. Traditional methods for solving systems of Ordinary Differential Equations (ODEs) involve numerical integration methods such as the classical Runge-Kutta algorithm (Butcher 1987). Many algorithms for solving ODEs are implemented in the SUNDIALS (Hindmarsh et al. 2005) library, the industrial and scientific standard for numerical integration. Depending on properties of the ODEs such as stiffness, Copyright c © 2020, Association for the Advancement of Artificial Intelligence (www.aaai.org). All rights reserved. however, methods from SUNDIALS may be slow or they may fail to converge. Instead of evaluating the right-hand side of an integration problem as is done traditionally, our IC uses analog computing and eliminates the need of any clocks during the computation. The integration is entirely driven by the propagation of electrical signal and transistor switching time is reduced to minimum. To map a system of simultaneous ODEs to our ACU we propose a calculus that is based on elementary computational elements, built of operational amplifiers (op-amps). The IC design we propose is mixed analog and digital. There is a classical ARM core that is responsible for configuring the ACU. The firmware configures all transistor switches connecting the op-amps to the analog data buses. The digital core is also responsible for calibrating the analog computational elements to compensate for environmental factors such as temperature. The approach we present in this paper faces many challenges. Real analog components behave differently from their idealized models. Electrical noise propagates alongside the computation and decreases the precision of the result. Environmental factors such as temperature variations increase the computational error. Transistor size in analog ICs is typically larger than in digital ones which makes the analog approach less competitive. Making linear resistors and digital potentiometers that are both accurate, linear, and with high resolution is an open topic of research. Power consumption of analog components is generally increased and thermal management could be a problem by itself. In this paper, we address part of the above challenges with improved framework-level design, self-compensating mechanisms, extensive use of local feedback and novel hybrid digital/analog techniques. Problem Definition Our goal is to develop a method that solves a system of simultaneous Ordinary Differential Equations (ODEs): y = (F ) ( x,y,y′,y′′, . . . ,y(n−1) ) (1) where the initial values are given. This paper uses a water clock model for illustration purposes. The water clock is a single vessel filled with liquid
[1]
Hans Petter Langtangen,et al.
Scaling of Differential Equations
,
2016
.
[2]
H. Baher.
Signal Processing and Integrated Circuits
,
2012
.
[3]
Csaba Petre,et al.
A High-Level Simulink-Based Tool for FPAA Configuration
,
2012,
IEEE Transactions on Very Large Scale Integration (VLSI) Systems.
[4]
Chika O. Nwankpa,et al.
Utilization of field programmable analog arrays (FPAA) to emulate power system dynamics
,
2009,
2009 IEEE International Symposium on Circuits and Systems.
[5]
Carol S. Woodward,et al.
Enabling New Flexibility in the SUNDIALS Suite of Nonlinear and Differential/Algebraic Equation Solvers
,
2020,
ACM Trans. Math. Softw..
[6]
Sarma Vrudhula,et al.
Programmable Analog/Digital Arrays in Control and Simulation
,
2004
.
[7]
Peter A. Fritzson,et al.
Principles of object-oriented modeling and simulation with Modelica 2.1
,
2004
.
[8]
Corinna Cortes,et al.
Support-Vector Networks
,
1995,
Machine Learning.
[9]
C. Fischer.
The differential analyzer
,
2003
.
[10]
Rudolph van der Merwe,et al.
The unscented Kalman filter for nonlinear estimation
,
2000,
Proceedings of the IEEE 2000 Adaptive Systems for Signal Processing, Communications, and Control Symposium (Cat. No.00EX373).
[11]
Leon O. Chua,et al.
Field-programmable analog arrays
,
1998
.
[12]
Jun S. Liu,et al.
Sequential Monte Carlo methods for dynamic systems
,
1997
.
[13]
J. Butcher.
The numerical analysis of ordinary differential equations: Runge-Kutta and general linear methods
,
1987
.
[14]
Vannevar Bush,et al.
The differential analyzer. A new machine for solving differential equations
,
1931
.