A Revolution in Computing Technology: AEM Architecture

On February 26th, 2012, Dr. Michael Fiske  CEO of Fiske Software presented at the Naval Postgraduate School in MOnterey California. He proposed a revolutionary idea: A new computing machine that addresses a root cause of malware.

Malware is a serious problem when it comes to computer hardware and software. Recent cyber-attacks have demonstrated that current attempts and “solutions” to the prevention of malware are subpar at best. This is because malware detection is “Turing undecidable”. Some recent malware implementations use nondeterministic polynomial time hard problems to encrypt and camouflage the malicious software (Dr. Michael Fisk, 2012). This makes standards security mechanisms such as passwords, cryptography and even biometrics unreliable in protecting against malware. Current computers rely on operating systems that execute on a von Neumann machine architecture, which means these machines execute computational steps that are topologically disconnected. This creates hijacking opportunities for malware.

The Defense Advanced Research Projects Agency (DARPA) has a program called the Clean-Slate Design of Resilient, Adaptive, Secure Hosts (CRASH) which has been running for the past twenty years. After comparing the number of lines of source code in security software the number in malware, DARPA discovered that security code grew from about 10,000 to 10 million lines while malware was almost constant at 125 lines (Dr. Michael Fisk, 2012). This shows that only a small module of malware is needed to hijack a program. After a program has been hijacked, safeguard routines may never get executed. Inevitably the malware cripples the program from defending and repairing itself.

A new computing machine called the Active Element Machine (AEM) has been invented, which makes hijacking program execution far more difficult. The following is an explanation of its functions from the Dr. Michael Fiske himself:

“An AEM is composed of computational primitives called active elements that simultaneously transmit and receive pulses to and from other active elements. Each pulse has amplitude and a width, representing how long the pulse amplitude lasts as input to the active element receiving the pulse. If an element Ei simultaneously receives pulses with amplitudes summing to a value greater than Ei’s threshold and Ei’s refractory period has expired, then Ei fires. When Ei fires, it sends pulses to other active elements. If Ei fires at time t, a pulse reaches element Ek at time t + τik where τik is the transmission time from Ei to Ek. The AEM programming language uses five commands to write AEM programs: Element, Connection, Fire, Program and Meta. Time is explicitly specified in each command and multiple commands may simultaneously execute, which makes the AEM an inherently parallel machine. An Element command creates, at the time specified in the command, an active element with a threshold value, a refractory period and a most recent firing time. A Connection command sets, at the time specified in the command, a pulse amplitude, a pulse width and a transmission time from element Ei to element Ek. The Fire command fires an input element at a particular time. The Program command defines the execution of multiple commands with a single command. Element and Connection commands establish the AEM architecture and firing activity. The Meta command can change the AEM architecture during AEM program execution.” (Dr. Michael Fiske, January 2013)

Basically, the AEM architecture sends out a volley of random pulses that make it difficult for malware to latch onto. If the malicious software does infiltrate a part of the AEM program, the pulse threshold will detect this and will “self-repair” itself. More importantly, this AEM procedure makes it algorithmically impossible to reverse engineer the incomputable firing patterns back to the sequence of digital computer instructions being executed. We are essentially looking at the beginnings of hyper computation. Some AEM programs can execute 10,000 commands or more at a time, depending on the hardware. AEM programs can be designed so that if 10% of the commands are sabotaged, the resulting AEM computing behavior remains unharmed. By using favorable mathematical properties, AEM programs can be designed so that they can detect if they’ve been altered and Meta commands can repair the altered AEM program. This detection and repair is analogous to a biological organism healing itself after an injury.

The impact of such a revolutionary computing architecture is profound! The potential uses and benefits of this could change various medical, military and scientific technologies. With this new hyper computing technology, we can even have new insights into various fields such as nanotechnology, cybernetics and artificial intelligence. As a science and technology enthusiast, I can honestly say that I am excited to see what tomorrow will bring with this new technology.



  1. Cook, Stephen. “The P Versue NP Problem.” Claymath.org. N.p.. Web. 25 Feb 2013. 
  2. Tuutti, Camille. “DARPA Works to ‘Surprise’ Cyber Enemies.” (2010): n.pag. Thenewnewinternet.com. Web. 25 Feb 2013.
  3. Dr. Fiske, Michael. United States. Naval Postgraduate School. Turing, von Neumann and Beyond : A New Computing Machine That Addresses a Root Cause of Malware. 2013. 

See also: http://www.aemea.org/msf/AEM.pdf and http://www.google.com/patents?id=2k2XAAAAEBAJ&zoom=4&pg=PA1#v=onepage&q&f=false

Leave a Reply