Chaotic algorithms for constraint satisfaction
Until recently, the position of processors had no significant role in computing. Today, several microprocessors placed on a single chip have become very similar to a layer of neurons. Imitating how our nervous system works, such large-scale non-linear circuits have helped overcome the speed bottleneck that conventional computation methods run into. The many applications of these cellular neural networks (CNNs) like solving partial differential equations also result from their spatial structure. The aim of the EU-funded project 'Chaotic cellular neural/nonlinear networks for solving constraint satisfaction' (CHAOPT) was to design a CNN able to efficiently solve constraint satisfaction problems. Computation models proposed in the past to solve this class of optimisation problems were vulnerable to noise. The asymmetric continuous-time CNN model developed within the CHAOPT project is stable to white noise as well as coloured noise. In addition, it has been experimentally demonstrated to tolerate higher noise levels than existing hardware. Numerical experiments also helped CHAOPT scientists better understand the transient chaotic and overall behaviour of the network. Simulations were performed on thousands of random Boolean Satisfiability Problems (SATs)of different sizes and constraint densities. They revealed one-to-one correspondence between the fixed points of the CNN model and the SAT solutions. The CHAOPT model can be implemented by analogue circuits, in which dedicated algorithms lead the network to a solution based on the initial condition. The operation of algorithms handling the CNN is based on the observation that beyond a critical value of constraint density its behaviour becomes chaotic. Using these so-called chaotic algorithms on hardware is a revolutionary concept that can lay the groundwork for decision-making, task-scheduling and error-correction applications.
Keywords
Chaotic algorithms, constraint satisfaction, cellular neural networks,satisfiability, analogue circuits