Open main menu
Home
Random
Recent changes
Special pages
Community portal
Preferences
About Wikipedia
Disclaimers
Incubator escapee wiki
Search
User menu
Talk
Dark mode
Contributions
Create account
Log in
Editing
Evolvable hardware
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
'''Evolvable hardware (EH)''' is a field focusing on the use of [[evolutionary algorithm]]s (EA) to create specialized [[electronics]] without manual engineering. It brings together [[reconfigurable computing|reconfigurable hardware]], [[evolutionary computation]], [[fault tolerance]] and [[autonomous robot|autonomous systems]]. Evolvable hardware refers to hardware that can change its architecture and behavior dynamically and autonomously by interacting with its environment. ==Introduction== In its most fundamental form an [[evolutionary algorithm]] manipulates a population of individuals where each individual describes how to construct a candidate circuit. Each circuit is assigned a [[Optimization (mathematics)|fitness]], which indicates how well a candidate circuit satisfies the design specification. The evolutionary algorithm uses stochastic operators to evolve new circuit configurations from existing ones. Done properly, over time the evolutionary algorithm will evolve a circuit configuration that exhibits desirable behavior. Each candidate circuit can either be simulated or physically implemented in a reconfigurable device. Typical [[programmable logic device|reconfigurable devices]] are [[field-programmable gate array]]s (for digital designs) or [[field-programmable analog array]]s (for analog designs). At a lower level of abstraction are the field-programmable [[transistor array]]s that can implement either digital or analog designs. The concept was pioneered by Adrian Thompson at the University of Sussex, England, who in 1996 used an FPGA to evolve a tone discriminator that used fewer than 40 programmable logic gates, and had no [[clock signal]]. This is a remarkably small design for such a device, and relied on exploiting peculiarities of the hardware that engineers normally avoid. For example, one group of gates has no logical connection to the rest of the circuit, yet is crucial to its function.<ref>{{cite book|doi=10.1007/3-540-63173-9_61|citeseerx=10.1.1.50.9691 |chapter=An evolved circuit, intrinsic in silicon, entwined with physics |title=Evolvable Systems: From Biology to Hardware |series=Lecture Notes in Computer Science |date=1997 |last1=Thompson |first1=Adrian |volume=1259 |pages=390–405 |isbn=978-3-540-63173-6 }}</ref> ==Motivation== In many cases, conventional design methods (formulas, etc.) can be used to design a circuit. But in other cases, the design specification doesn't provide sufficient information to permit using conventional design methods. For example, the specification may only state desired behavior of the target hardware. In other cases, an existing circuit must adapt—i.e., modify its configuration—to compensate for faults or perhaps a changing operational environment. For instance, deep-space probes may encounter sudden high radiation environments, which alter a circuit's performance; the circuit must self-adapt to restore as much of the original behavior as possible. ==Finding the fitness of an evolved circuit== The [[Optimization (mathematics)|fitness]] of an evolved circuit is a measure of how well the circuit matches the design specification. Fitness in evolvable hardware problems is determined via two methods: * extrinsic evolution: all circuits are simulated to see how they perform, * intrinsic evolution: physical tests are run on actual hardware. In extrinsic evolution, only the final best solution in the final population of the evolutionary algorithm is physically implemented, whereas with intrinsic evolution every individual in every generation of the EA's population is physically realized and tested. ==Future research directions== Evolvable hardware problems fall into two categories: original design and adaptive systems. Original design uses evolutionary algorithms to design a system that meets a predefined specification. Adaptive systems reconfigure an existing design to counteract faults or a changed operational environment. Original design of [[digital system]]s is not of much interest because industry already can synthesize enormously complex circuitry. For example, one can buy [[IP core|intellectual property cores]] to synthesize USB port circuitry, Ethernet microcontrollers and even entire RISC processors. Some research into original design still yields useful results, for example genetic algorithms have been used to design logic systems with integrated fault detection that outperform hand designed equivalents.<ref>{{cite web |last1=Garvie |first1=Michael |last2=Husbands |first2=Phil |title=Automatic Synthesis of Totally Self-Checking Circuits |url=https://www.researchgate.net/publication/330552605 |access-date=29 November 2021 |date=2019}}</ref><ref>{{cite web |last1=Garvie |first1=Michael |last2=Thompson |first2=Adrian |title=Low Overhead Self-Checking Combinational and Sequential Circuits Designed by Evolution |url=https://www.researchgate.net/publication/266606235 |access-date=29 November 2021 |date=2021}}</ref> Original design of analog circuitry is still a wide-open research area. Indeed, the analog design industry is nowhere near as mature as is the digital design industry. [[Adaptive system]]s has been and remains an area of intense interest. ==See also== * [[Self-management (computer science)]] * [[Programmable logic device]] ==References== {{reflist|1}} ==Further reading== * {{Cite book |isbn=978-0471719779 |title=Introduction to Evolvable Hardware: A Practical Guide for Designing Self-Adaptive Systems |first1=Garrison W.|last1=Greenwood |first2=Andrew M. |last2=Tyrrell |publisher=Wiley-IEEE Press |date=2006-10-20 |edition=1 }} * {{Cite book | doi = 10.1007/3-540-63173-9_38| chapter = Promises and challenges of Evolvable hardware| title = Evolvable Systems: From Biology to Hardware| volume = 1259| pages = 55| series = Lecture Notes in Computer Science| year = 1997| last1 = Yao | first1 = X. | last2 = Higuchi | first2 = T. | isbn = 978-3-540-63173-6}} ==External links== * [https://web.archive.org/web/20040916011713/http://ehw.jpl.nasa.gov/events/nasaeh04/ NASA-DoD-sponsored conference 2004] * [https://web.archive.org/web/20051204233842/http://ic.arc.nasa.gov/projects/eh2005/ NASA-DoD-sponsored conference 2005] * [https://web.archive.org/web/20070206123308/http://ehw.jpl.nasa.gov/events/ahs2006/ NASA/ESA Conference on Adaptive Hardware and Systems (AHS-2006)] * [https://web.archive.org/web/20070308160806/http://www.see.ed.ac.uk/ahs2007/AHS.htm NASA/ESA Conference on Adaptive Hardware and Systems (AHS-2007)] * NASA used a genetic algorithm to design a novel [https://web.archive.org/web/20041016085914/http://www.arc.nasa.gov/exploringtheuniverse-evolvablesystems.cfm antenna] (see [http://www.genetic-programming.org/gecco2004hc/lohn-paper.pdf PDF] paper for details) * [https://web.archive.org/web/20070221082639/http://www.informatics.sussex.ac.uk/users/adrianth/ Evolutionary Electronics at the University of Sussex] [[Category:Electronic design]]
Edit summary
(Briefly describe your changes)
By publishing changes, you agree to the
Terms of Use
, and you irrevocably agree to release your contribution under the
CC BY-SA 4.0 License
and the
GFDL
. You agree that a hyperlink or URL is sufficient attribution under the Creative Commons license.
Cancel
Editing help
(opens in new window)
Pages transcluded onto the current version of this page
(
help
)
:
Template:Cite book
(
edit
)
Template:Cite web
(
edit
)
Template:Reflist
(
edit
)