CSAIL Research Abstracts - 2005 link to http://publications.csail.mit.edu/abstracts/abstracts05/index.html link to http://www.csail.mit.edu
bullet Introduction bullet Architecture, Systems
& Networks
bullet Language, Learning,
Vision & Graphics
bullet Physical, Biological
& Social Systems
bullet Theory bullet

horizontal line

A K-Line-Based Language for Artificial Intelligence Programming

Robert A. Hearn

What

Minsky's book The Society of Mind [1] offers a set of powerful insights on how one might go about constructing an artificial mind. To put these ideas into practice, there are several engineering challenges that must be overcome. Chief among these is designing an explicit memory architecture that adequately supports the concept of K-line. I am designing and implementing a programming language based on K-lines. The language is declarative, specifying something akin to a connectionist network, which is then simulated.

Why

Artificial intelligence (AI) has been an active area of research for nearly fifty years, yet the original goal - computational human-level intelligence - seems as far off as ever. To a large degree the size of the problem was initially underestimated, but over the past couple of decades the focus of AI research has shifted away from attempting to understand and build truly intelligent systems. Yet, I maintain that the keys are there, if one knows how to find and use them. The Society of Mind lays out a grand vision of human cognitive architecture. It is the inspiration for the programming language I am designing for building intelligent systems. Of course almost any program may be written in almost any language, but a suitable language significantly simplifies and better directs the programming task. The key issue is what is implicit vs. explicit in a language. In the K-line-based language I propose, massive concurrency and appropriate memory models are implicit, but many ordinary computer science concepts (e.g. recursion, arithmetic operations) are not.

How

The programming language allows specification of behaviors in terms of basic K-line relationships and operations. The result is a connectionist-style unit network, which is then simulated by the cognitive simulator. The programming language is declarative; programs written in it simply define the initial network state. The memory operations that occur as the network runs are controlled by the structure of the network itself. Over time, the network can structurally change, as new memories are formed and working memory states change. In essence the programs are self-modifying. There is no distinction between program and data.

Progress

A first-pass language has been implemented. A parser translates K-line programs into an internal unit network, which is simulated and used to control the behaviors of a simulated creature in a two-dimensional world (inspired by A. K. Dewdney's book The Planiverse [2]). There is a graphical browser showing the runtime state of the network, allowing the user to hierarchically browse the connections and activation states.

The current creature programs define basic behaviors such as walking and simple postural controls. These behaviors are not mere abstractions, but are executed with realistic (two-dimensional) physics - objects bounce, slide, and deform. An earlier, related project [3] simulated creatures with some more interesting behaviors (navigation, hunting, rudimentary problem solving), implemented using many of the core ideas from Society of Mind. However, that project was ultimately limited by the simple nature of the simulated world, and also by the lack of an explicit K-line programming language - thus, the new language and the more sophisticated physics and creature anatomy used for the current project.

Future

Future creature behaviors to be implemented using the language include object manipulation, navigation, an emotional architecture, social behaviors, and problem solving. These behaviors will require elaborating the short-term memory model currently provided by the K-line language.

References

[1] Marvin Minsky. The Society of Mind, Simon and Schuster, 1986.

[2] A. K. Dewdney. The Planiverse: Computer Contact with a Two-Dimensional World, Simon and Schuster, 1984.

[3] Robert A. Hearn. Building Grounded Abstractions for Artificial Intelligence Programming. Master's thesis, Massachusetts Institute of Technology, May 2001.

horizontal line

MIT logo Computer Science and Artificial Intelligence Laboratory (CSAIL)
The Stata Center, Building 32 - 32 Vassar Street - Cambridge, MA 02139 - USA
tel:+1-617-253-0073 - publications@csail.mit.edu
(Note: On July 1, 2003, the AI Lab and LCS merged to form CSAIL.)