Stochastic Algorithms for Optimization: Devices, Circuits, and Architecture
With increasing demands for efficient computing models to solve multiple types of optimization problems, enormous efforts have been devoted to find alternative solutions across the device, circuit and architecture level design space rather than solely relying on traditional computing methods. The computational cost associated with solving optimization problems increases exponentially with the number of variables involved. Moreover, computation based on the traditional von-Neumann architecture follows sequential fetch, decode and execute operations, thereby involving significant energy overhead. To address such difficulties, efficient optimization solvers based on stochastic algorithms were proposed. The stochastic algorithms show fast search time through parallel solution space exploration by exploiting stochastic switching elements. The goal of this research is to propose efficient computing models for optimization problems by adopting a biased random number generator (RNG). Here we use stochastic switching of nanomagnet under thermal noise. The switching probability of the nanomagnet is manipulated by the magnitude of input stimulus through the device. This core element is used to build combinatorial optimization problem solvers for different types of problems such as an Ising spin model for Graph Coloring and a Bayesian inference engine for probabilistic inference. Apart from the optimization solvers, this research also focuses on the implementation of spin transfer torque based coupled oscillators on core computing primitives for image processing applications and the associated CMOS supporting circuit design. We have shown that the proposed coupled oscillator system can perform efficient convolution computation, suitable for a large class of signal processing applications
Roy, Purdue University.
Electrical engineering|Information Technology
Off-Campus Purdue Users:
To access this dissertation, please log in to our