Learning hardware using multiple-valued logic - Part 1: introduction and approach

M. Perkowski, D. Foote, Qihong Chen, A. Al-Rabadi, L. Jozwiak
2002 IEEE Micro  
Many robotics, multimedia, and other types of tasks require fast, real-time realization of certain algorithms to solve problems presented by a human's or robot's environment. This need is most common in computer vision and speech recognition areas, where specialized hardware accelerators are built to satisfy speed, power, size, or cost requirements. So far, most of these hardware systems solve polynomial problems. However, in test generation 1 and combinatorial optimization areas,
more » ... , field-programmable-gate-array (FPGA)-based processors can solve some nondeterministic polynomial time (NP)-hard problems, such as satisfiability, 2 tautology or binate covering, 3 and so on. Hanyu et al. describe a robot vision coprocessor that performs matching by solving the NPhard maximum-clique problem. 4 Software solutions are adequate for many other NP-hard problems in computer vision, robot navigation and manipulation, speech recognition, and so on. Although these software solutions are too slow to be applied in real time, require too many parallel processors to put on a robot, or are too approximate to produce useful solu-tions. Building intelligent robots will ultimately require developing real-time hardware realizations of exact or high-quality approximate algorithms for NP combinatorial problems. We propose a new approach that combines hardware realization of such algorithms with learning in reconfigurable hardware. Observe recent rapid progress in soft computing, that is, artificial neural networks (ANNs), fuzzy logic, rough sets, genetic algorithms, and genetic and evolutionary programming. In different ways, these approaches try to solve complex and poorly defined problems that previously developed analytic models could not efficiently tackle. All of these approaches offer a method of automatic learning. These methods teach the computer system by examples and evaluations of the system's behavior rather than completely programming the system. This philosophy also dominates approaches to artificial life, problem solving using analogies to nature, decision making, knowledge acquisition, and intelligent robotics. Machine learning has become a general paradigm for software system design, unifying all these previously disconnected areas. With the
doi:10.1109/mm.2002.1013303 fatcat:fjeo52iks5hafg5gcuz53h7sxy