June 24, 2017
 

Software

Dynamic adaptive language for dynamic adaptive solutions

Helena Keeley and Thomas Keeley
A dynamic analog language provides a path to create adaptive cognitive engines for real-time adaptive-control systems that can explain their decisions and actions.

For the next generation of computer systems to achieve the level of capabilities projected in science-fiction movies, a paradigm shift is required. To leap forward with new capabilities requires that new problems be addressed. If systems are to autonomously pursue goals, then they will have to interpret and integrate apparently unrelated features. They will need to integrate information to determine relationships, balance alternatives and allocate resources. Actions happen simultaneously and must be considered collectively to achieve short-term tactical and longer-term strategic goals.

Since the invention of the computer and the subsequent evolution from the computer age to the digital age and eventually to the Internet age, the human mindset has been driven by the capabilities of digital computers, which have functionally changed very little since their inception. Most computers today process micro-coded instructions ‘sequentially.’ As such, programming languages are mostly sequential IF|THEN|ELSE scripts. Multicore and parallel processors just distribute the sequential processing for more efficient overall operation. Historically, the basic strategy has been to create smaller, cheaper and faster ways to process information, and to distribute the processing in different ways to process more information in the same way.

Therefore, we have developed the Knowledge Enhanced Electronic Logic1–4 (KEEL® )technology. KEEL is an umbrella term which incorporates the KEEL Dynamic Graphical Language, a method of integrating analog information and an architecture for packaging cognitive models as KEEL ‘engines.’

The KEEL Dynamic Graphical Language5,6 (see Figure 1) is composed of interactive, graphical elements, which allow one to describe the behaviour of pieces of information as they interact. Behind the graphical front end, a KEEL engine is being developed in real time. It processes information, but does not depend on manually developed and debugged conventional code, because the resultant computer code is auto-generated. This allows domain or subject-matter experts to develop content without support from mathematicians or software engineers. When the model is complete, it is automatically translated to the desired programming language—e.g., C, C++, C++.NET, C#, Java, JavaScript, Actionscript, Octave (MATLAB), Python, Scilab, Visual Basic or VB.NET—for inclusion in the broader application.


Source code of the KEEL Dynamic Graphical Language, where one would edit and test it on a graphical display. KEEL: Knowledge Enhanced Electronic Logic.

One example7,8 which demonstrates goal-seeking capabilities of unmanned aerial vehicles (UAVs) has been published (see Figure 2). In this demonstration, a KEEL engine controls each of the UAVs (evaluating targets, threats, system health, weapons, etc.) to control maneuvers, select targets, avoid collisions and select the moment to shoot (if appropriate). To evaluate the policy for the UAV, one can ‘watch it think’ in a simulation, or audit its behaviour using recorded sensor values to animate the KEEL Dynamic Graphical Language.


Cognitive-reasoning demonstration using unmanned aerial vehicles.

Language animation9 (see Figure 3) is an extension to the dynamic nature of the KEEL language. Real-world information, packaged as an XML (extensible markup language) file, can be read periodically into the KEEL development environment and used to manipulate the inputs just as if one had manipulated scroll bars. It is possible to freeze on decisions or actions and then trace through the logic to see why they were made. This makes it relatively easy to understand and audit complex behaviours.


Language animation. A simulation includes unmanned aerial vehicles (UAVs), each with a KEEL engine, which publish what they see to the KEEL toolkit (using the KEEL Dynamic Graphical Language), where the language is animated so one can watch the UAV ‘think.’

There are many cases where analysts need to define or respond to complex issues. A critical need is to provide a way to ‘help the analyst think.’ KEEL satisfies this demand with the interactive nature of the language. The analyst thinks in terms of the changing importance of information items and how each piece of information interacts with others. Development is iterative: add, test, modify, delete, refine and test again.

In summary, KEEL technology's graphical toolkit can be used to rapidly translate a domain expert's logic and thinking into quantified, characterized, complex decision-making logic for machines. The technology offers a way to save time and money by rapidly accelerating the design and development process by auto-generating the data tables and code. This technology allows addition of advanced capabilities to almost any application domain. KEEL provides the ability to focus attention on the broader system aspects of information processing without concern for specific coding practices. It can, therefore, be defined as a language for policy makers,10 with the ability to package those policies into software applications and devices. We continue to extend the KEEL toolkit and apply KEEL technology to new market areas.


Authors

Helena Keeley
Compsim LLC

Helena Keeley is the company's chief executive officer. She has a background in aircraft simulation, robotics and vision systems, industrial automation, electronic-data interchange and data security with major corporations, in addition to a variety of application areas associated with KEEL technology.

Thomas Keeley
Compsim LLC

Thomas Keeley is president and founder of Compsim and the inventor of KEEL technology. He has a background in submarine/missile systems, digital wireless and cellular communications, industrial robotics and automation, intelligent sensors, medical systems and military information-fusion systems.


References
  1. http://www.compsim.com/AboutKEEL.htm Knowledge Enhanced Electronic Logic for embedded intelligence. Accessed 31 July 2010.

  2. http://www.youtube.com/watch?v=6bEl9SyYfvg YouTube video: introduction to KEEL technology. Accessed 31 July 2010.

  3. http://www.compsim.com/keelfaq/keelfaq1.html KEEL Frequently Asked Questions. Accessed 31 July 2010.

  4. http://www.compsim.com/flash/papers2.html KEEL Related Papers. Accessed 31 July 2010.

  5. http://www.youtube.com/watch?v=WBs-w1lgZgk YouTube video: KEEL Dynamic Graphical Language. Accessed 31 July 2010.

  6. http://www.compsim.com/demos/d18/ShowKEELDemo1.html Interactive rendering of the KEEL Dynamic Graphical Language. Accessed 31 July 2010.

  7. http://www.youtube.com/watch?v=pZIg6IR0Lz4&feature=related YouTube video: embedded KEEL intelligence in UAVs. Accessed 31 July 2010.

  8. http://www.compsim.com/demos/d9a/2Planesmovingtgtretrys.html It's not just cute little planes flying around. Accessed 31 July 2010.

  9. http://s316758578.onlinehome.us/Papers/Unmanned%20Combat%20Aerial %20Vehicles.pdf Unmanned combat aerial vehicles that ‘think.’ Accessed 31 July 2010.

  10. http://www.youtube.com/watch?v=j9DehBDqSVI YouTube video: ‘KEEL for policy makers.’ Accessed 31 July 2010.


 
DOI:  10.2417/2201008.003202