Cellular neural networks
What Are Cellular Neural Networks?
Cellular neural networks (CNNs) are large-scale analog computing systems composed of a regular array of locally coupled nonlinear processing elements called cells. The architecture was introduced by Leon Chua and Lin Yang at the University of California, Berkeley in 1988 and published in the IEEE Transactions on Circuits and Systems, one of the most cited papers in the history of the journal. Unlike digital neural networks, which operate on discrete numerical representations, CNNs process continuous-valued state variables in parallel across all cells simultaneously, making them well suited for real-time signal processing tasks where computational throughput and energy efficiency are paramount. Each cell in a CNN communicates directly only with cells within a defined neighborhood, a property that mirrors the local connectivity of biological neural tissue and enables efficient VLSI implementation.
Architecture and Cell Interactions
A CNN consists of an M-by-N array of cells arranged on a two-dimensional grid. Each cell contains a capacitor, a resistor, and a nonlinear element, typically a piecewise-linear saturating function that limits the output voltage to the range from minus one to plus one. The state of each cell evolves in continuous time according to a differential equation that sums inputs from neighboring cells, weighted by two sets of template coefficients called the A-template (feedback from neighboring outputs) and the B-template (feedforward from neighboring inputs). The templates are the programmable parameters of the CNN: choosing them correctly produces a particular computational function across the array. Because the array processes all cells in parallel, an M-by-N CNN performs its computation in a time independent of the array size, giving it an inherent speed advantage over sequential digital processors on problems that map naturally to the grid structure.
Dynamics, Stability, and the Universal Machine
Chua proved that symmetric CNN templates guarantee that the network converges to a stable equilibrium rather than oscillating indefinitely, a result rooted in Lyapunov stability theory. This convergence property is essential for reliable computation: the final stable output state of the array represents the result of the computation. When templates are allowed to be asymmetric and time-varying, CNNs can exhibit complex dynamics including traveling waves and oscillations, which have been studied for their relevance to models of the visual cortex. The CNN Universal Machine, proposed by Tamás Roska and Chua in 1993, extended the standard CNN to an algorithmically programmable analog array computer by adding an instruction set that can load different templates in sequence, allowing the chip to execute arbitrary cellular automaton programs. As analyzed in the IntechOpen chapter on CNN image processing applications, the Universal Machine concept brought analog array computation close to the generality of stored-program digital computers while retaining the throughput advantages of analog parallelism.
Image and Signal Processing Applications
The primary application domain for CNNs has been image processing, where the two-dimensional spatial structure of the array maps directly onto pixel neighborhoods in an image. A CNN performing edge detection, for example, uses a Laplacian-like A-template that computes local contrast differences across the array in a single computation step. Other documented operations include noise suppression, binary morphology (erosion and dilation), connected-component labeling, and optical flow estimation. VLSI implementations of CNN chips demonstrated processing rates orders of magnitude faster than equivalent digital implementations for these tasks at comparable power budgets. The Nature Electronics paper on memristive cellular neural networks describes recent implementations using memristors as the synaptic weights, enabling in-pixel computation where the CNN template is stored directly at the sensor, eliminating the data movement bottleneck between image sensor and processing unit.
Applications
Cellular neural networks have applications in a range of fields, including:
- Real-time image processing, performing edge detection, noise filtering, and morphological operations at video frame rates
- Pattern recognition, classifying visual features using analog parallel computation in embedded vision systems
- Robotics and autonomous vehicles, processing sensor arrays with low latency and power consumption
- Neuromorphic computing, serving as a model for analog brain-inspired hardware architectures
- Scientific simulation, implementing cellular automaton models of physical and biological systems on CNN hardware