|
Systems
& Languages |
|
||||||
|
An AI system is an orchestrated performance, not unlike a Broadway musical. Both come to life as the result of the choreographed interplay of diverse parts. In the theater, the music and words, scenery nd lighting, actors and dancers, all interact to create a purposeful experience. Similarly, the system hardware of your desktop PC sets the stage on which software technologies such as voice recognition, web access, text-to-speech, and 3-D image generators, perform their roles as directed by a complex computer program. The choice of a programming language also has its theatrical counterpart. The decision as to whether the concept should be embodied within a musical, an opera, or drama, obviously sets parameters for what can and cannot be done. The choice to write it in English, French, Spanish or Italian will determine how many of the cast, crew and audience will understand it without translation, and if translation is provided, will meaning be lost. A programmer faces similar decisions when choosing a programming language. The language must be capable of representing the necessary concepts and it must be able to be understood by the other system components. After all, you wouldn't use a language developed for robot navigation to program a system designed to decode music...or would you ? And just as advancements in construction and acoustics changed the shape of theater architecture, and the introduction of wireless microphones made possible new staging options, the universe of systems and languages is evolving on every level such that it offers increasingly spectacular performances. For example:
Systems, Systematically Speaking. A Letter from the Editor, James Hendler. IEEE Intelligent Systems (May / June 2005; 20 (3): 2-4). "Think of the difference between the system of equations describing computation,the computing system hardware designed to bring those to reality,and the operating system software that makes the whole thing run. These different meanings are connected to a problem we computer scientists face when explaining what we do to those outside our field. ... Where does this confusion come from? I think the word 'systems' is partly to blame. It entered our field through our roots in cybernetics and control, before the computer, as we know it today, came into existence. As a result, we refer to 'systems' at virtually every level of our endeavor from 'systems administrator' to 'systems theory.' ... [I]f we look closely at these articles [in this issue], at least one theme emerges. It arises from the understanding that a system is, as dictionary.com defines it, 'A group of interacting, interrelated, or interdependent elements forming a complex whole.' In each article,we see not the explicit interaction of these parts but the demonstration of techniques that can be used not just in the system being described but also more widely." FAQ 1-10: What are good programming languages for AI ? From the Artificial Intelligence FAQ's collection that moved from CMU to UCLA and is maintained by Amit Dubey and Ric Crabbe; written by Ric Crabbe, Amit Dubey, and Mark Kantrowitz. AI Language Overview. From PC AI. C++, Dylan, Eiffel, Lisp, and many more. Webopedia: LISP and Prolog. You'll not only find good definitions on each page, but also links to some very good resources. Artificial Intelligence development environments. Professor Aaron Sloman. "This was a lecture to first year AI students at Birmingham, Dec 4th 2001, on how AI programming is both like and unlike other forms of software engineering and how this influences design of AI languages and development environments." Be sure to see slides 13 - 15: "Some characteristics of AI languages." A bit of Prolog History from Roman Bartak's Introduction to Guide to Prolog Programming. Timeline exhibit at the Computer History Museum. "This timeline explores the history of computing from 1945 to 1990. Each year features illustrated descriptions of significant innovations in hardware and software technology, as well as milestones in areas such as commercial applications and artificial intelligence. When appropriate, biographical sketches of the pioneers responsible for the advances are included."
An Introduction to the LISP Programming Language: LISP Tutorial. By Marc Schwarz. From the forthcoming text: Natural Language Computing Workbook, by Ray C. Dougherty and Marc Schwarz. "LISP is among the oldest high level programming languages. It was first developed in 1958 by John McCarthy. It was later adopted as the primary research language of Artificial Intelligence (AI), which was born at a research conference in 1956. Despite later developments of such languages as FORTRAN, BASIC, ALGOL, APL, and C, LISP remains the predominant language in AI. There are a number of reasons...."
An Introduction and Tutorial for Common Lisp. By Marty Hall. Sections include: Lisp-Related Books; Online Lisp References; Issues for Lisp Beginners and Advanced Beginners; Issues for Intermediate/Advanced Lisp Programmers; CLOS [Common Lisp Object System]; Internet Lisp Resources; and Lisp-Related Papers.
See Our FAQ -> Q: After strolling around on your website the other day, I came across a frequently asked questions page on Machine Learning. One of the questions was, are the computers today powerful enough for Artificial Intelligence? And the answer was, I believe the computers of 30 years ago were powerful enough if only we knew how to program them. which leads me to my question. In current research, is AI research being programmed on top of exisiting operating systems, and basically are programs running on top of other programs? I've started work on a kernel, which IS the AI program, not a program on top of a kernel." For the rest of the inquiry and the response from one of our AI experts, go to our FAQ page. Robotics gains in prestige, in part due to military conflicts. By Charles Sheehan. Associated Press / available from USA Today (April 8, 2004). "Researchers in robotics have traditionally faced two debilitating obstacles: terribly expensive parts and difficulty attracting funding from anyone outside of a small corps of true believers. But the field could be in line for a major jolt. Robotics experts see a 'perfect storm' heading their way, thanks in no small part to the human ravages of war. Just as the constant march of technology is driving down the cost of key components, top universities in robotics are reporting major increases in federal funding, with the Defense Department the biggest spender. ... At the same time, the materials that comprise the most technologically advanced components in robots, from optics to software, are becoming 'dirt cheap,' said Dan Kara, who covers the industry for Robotics Trends. Technology that lets robots perceive and overcome obstacles has made unparalleled bounds largely because the cost of charge-coupled devices (the core of every camera), microprocessors and varied sensors has fallen away as rapidly as computing power and memory have expanded." LISP Primer. Colin Allen & Maneesh Dhagat. "This text has been written to provide a quick introduction to the basic elements of Common LISP for both experienced and novice programmers. ... This text has been used successfully with honors undergraduate students at Texas A&M; University. We now make it available on the World Wide Web in the hope that it will provide useful to the LISP community at large." A Brief History of Programming Languages. BYTE. September 1995. "We've come a long way from computers programmed with wires and punch cards. Maybe not as far as some would like, though. Here are the innovations in programming." The
Future of Computing. By Michael L. Dertouzos. Scientific American
(August 1999). "Oxygen, then, is an integrated collection of eight new
technologies: handhelds, wall and trunk computers, a novel net, built-in
speech understanding, knowledge access, collaboration, automation and
customization. The power of Oxygen lies not in any one piece but in the
totality of these human-oriented technologies together."
TRIPS: An Intelligent Integrated Problem-Solving Assistant. By George Ferguson and James Allen. In Proceedings of the Fifteenth National Conference on Artificial Intelligence (AAAI-98), pages 567-573. "This paper argues first for the utility of building end-to end systems that integrate a variety of capabilities in the performance of some task. ... We start with what it means to be an integrated AI system. The AI part seems straightforward: the system should perform some task or tasks that people find to require intelligence. As for integration, we feel that there are two important dimensions to consider. First, the system can integrate the functionality of multiple more specialized components in the performance of the task. In an integrated AI system, these components are things like planners, natural language parsers, learning algorithms, speech recognizers, temporal reasoners, logic engines, and so on. These are AI technologies that do not themselves solve a task, but that provide services necessary to do so. The second, less obvious, dimension to consider is the integration between the AI system and the person or people using it. Most, if not all, fielded AI systems have to interact with people at some time. It is in our interests to make this interaction as natural for the people as possible, both to increase the acceptance of the AI technology and to leverage people’s skills in the performance of the task. So an integrated system, to us, is one that both integrates multiple capabilities in service of a task and integrates its functions with those of its human users." Lisp as an alternative to Java. Point of View by Erann Gat. Intelligence 11(4): 21-24 (2000). "Our results beg two questions: 1) Why does Lisp seem to do as well as it does and 2) If these results are real why isn't Lisp used more than it is?" On Lisp. By Paul Graham. Prentice Hall (1993). You can now download the enite text for free from the author's website. "[A] comprehensive study of advanced Lisp techniques, with bottom-up programming as the unifying theme. ... As well as an indispensable reference, On Lisp is a source of software. Its examples form a library of functions and macros that readers will be able to use in their own Lisp programs."
God Is the Machine. In the beginning there was 0. and then there was 1. A mind-bending meditation on the transcendent power of digital computation. By Kevin Kelly. Wired Magazine (December 2002). Languages and Environments for AI. Section 1.2.7 of Chapter One (available online) of George F. Luger's textbook, Artificial Intelligence: Structures and Strategies for Complex Problem Solving, 5th Edition (Addison-Wesley; 2005). "Some of the most important by-products of artificial intelligence research have been advances in programming languages and software development environments. For a number of reasons, including the size of many AI application programs, the importance of a prototyping methodology, the tendency of search algorithms to generate huge spaces, and the difficulty of predicting the behavior of heuristically driven programs, AI programmers have been forced to develop a powerful set of programming methodologies." Recursive Functions of Symbolic Expressions and their Computation by Machine (Part I). By John McCarthy. "This was the original paper on LISP. It is copied with minor notational changes from CACM, April 1960. If you want the exact typography, look there. A few typographical changes have been made, but the notation has not been modernized. There are also some new explanatory footnotes. Part II, which never appeared, was to have had some Lisp programs for algebraic computation." - from his list of Papers on Programming Languages
When will computer hardware match the human brain? By Hans Moravec. Journal of Transhumanism (now known as the Journal of Evolution and Technology). (Volume 1, March 1998). "This paper describes how the performance of AI machines tends to improve at the same pace that AI researchers get access to faster hardware. The processing power and memory capacity necessary to match general intellectual performance of the human brain are estimated. Based on extrapolation of past trends and on examination of technologies under development, it is predicted that the required hardware will be available in cheap machines in the 2020s." The
Challenges of Real-Time AI. By David J. Musliner, James A. Hendler,
Ashok K. Agrawala, Edmund H. Durfee, Jay K. Strosnider, and C. J. Paul.
(1995). "The research agendas of two major areas of computer science
are converging: Artificial Intelligence (AI) methods are moving towards
more realistic domains requiring real-time responses, and real-time systems
are moving toward more complex applications requiring intelligent behavior.
Together, they meet at the crossroads of interest in 'real-time intelligent
control,' or 'real-time AI'".
Excerpt
from Paradigms of Artificial
Intelligence Programming: Case Studies in Common Lisp, by Peter Norvig
(1992). The Isaac Newton of logic - It was 150 years ago that George Boole published his classic The Laws of Thought, in which he outlined concepts that form the underpinnings of the modern high-speed computer. By Siobhan Roberts. The Globe and Mail (March 27, 2004; page F9). "It was 150 years ago that George Boole published his literary classic The Laws of Thought, wherein he devised a mathematical language for dealing with mental machinations of logic. It was a symbolic language of thought -- an algebra of logic (algebra is the branch of mathematics that uses letters and other general symbols to represent numbers and quantities in formulas and equations)." Ambient Intelligence. By Nigel Shadbolt. IEEE Intelligent Systems (July/August 2003: pages 2 - 3). "Films portraying the future often contain visions of homes of the future. Fitted out with an array of intelligent devices, these homes can anticipate your every need. They are usually depicted as existing within wider smart infrastructures. These infrastructures boast intelligent transportation systems and seamlessly integrate services from health to shopping and from entertainment to law enforcement. This probably differs just a little from our everyday experience of public services. But help is at hand -- numerous research efforts are underway that aim to deliver environments rich in what the Europeans call ambient intelligence. Ambient intelligence involves the convergence of several computing areas."
Nanotechnology: Small wonders. By Mike Toner. The Atlanta Journal-Constitution (December 5, 2004). "Nanotechnology has been touted as the second industrial revolution --- a brave new world of atomic-scale engineering in which the ability to assemble individual atoms like Lego blocks will transform science, medicine and even our golf game. ... The National Science Foundation predicts that within a decade nanotechnology will be a $1 trillion market --- and provide as many as 2 million new jobs. ... Nano comes from the Greek for dwarf. Nanotechnology is the manipulation of materials, devices or processes that are 100 nanometers or less in at least one dimension. One nanometer is a billionth of a meter, about 80,000 times less than the width of a human hair. ... In his oft-cited 'Engines of Creation,' nanotech pioneer K. Eric Drexler --- formerly a researcher at MIT's artificial intelligence lab --- warned that 'replicating assemblers and thinking machines pose basic threats to people and life on Earth' --- threatening to turn everything on the planet into an amorphous 'gray goo.' Michael Crichton breathed new life into the notion a few years ago with 'Prey,' a sci-fi thriller about the escape of microscopic, self-replicating assemblers from a secret desert research lab. ... Drexler, who now heads the nonprofit educational Foresight Institute, has recanted much of his original claim, but he insists that the industry should have a policy prohibiting 'the construction of anything resembling a dangerous self-replicating nanomachine.'"
Cryptic languages pronounced with a bit of a Lisp. By Tony Valsamidis. The Times Higher Education Supplement (December 24, 2004; subscription req'd.). "Not many years ago, a review of artificial intelligence systems reported that the majority were coded in Lisp, a programming language that is particularly suited to their implementation. Lisp, which was devised in the earliest days of computers, survives in many systems today in various forms despite its clumsy syntax involving the extensive use of nested brackets. Thomas Dean, an AI specialist, is an aficionado of Lisp, and most of the examples in his book [Talking with Computers] are given in Scheme, a dialect of Lisp. That is not to say that he excludes more fashionable languages such as Java, indeed he points out that many programming languages vary only in minor syntactical ways from each other."
The Quantum Computer - An Introduction. By Jacob West (April 28, 2000). "In a quantum computer, the fundamental unit of information (called a quantum bit or qubit), is not binary but rather more quaternary in nature. This qubit property arises as a direct consequence of its adherence to the laws of quantum mechanics which differ radically from the laws of classical physics. A qubit can exist not only in a state corresponding to the logical state 0 or 1 as in a classical bit, but also in states corresponding to a blend or superposition of these classical states. In other words, a qubit can exist as a zero, a one, or simultaneously as both 0 and 1, with a numerical coefficient representing the probability for each state."
AI on the Web: AI Programming: Lisp, C++ and Java, Prolog, and Python). A resource companion to Stuart Russell and Peter Norvig's "Artificial Intelligence: A Modern Approach" with links to reference material, people, research groups, books, companies and much more. "Association of Lisp Users is an international organization dedicated to promoting and representing the international Lisp communities. The ALU maintains this website and holds annual international Lisp conferences in major cities around the world." Be sure to see their History of Lisp page. Autonomic Computing at IBM. "There are a number of immediate needs that require us to adjust our thinking and reinterpret our approach to computing in general, and specifically to the interaction between computer hardware, software and networks. The current strain on I/T services demands that we turn our best minds to developing computer systems to be more automated and less reliant on human intervention." - from Academic Focus
Autonomous Systems Laboratory at CSIRO, Australia's Commonwealth Scientific and Industrial Research Organisation. "Autonomous systems will bring enormous sociological and economic benefits through improved human safety, increased equipment utilisation, reduced maintenance costs and increased production. These systems comprise sensors intelligently linked to control and actuation, and may communicate and co-operate to achieve complex tasks. They are designed to perform tasks that humans do not wish to do, or that they cannot do safely or well." Dynamic Languages Group. MIT Computer Science and Artificial Intelligence Laboratory (CSAIL). "We are exploring the design and implementation of next generation programming languages to support intelligent, adaptive, complex software systems." Human-Centered Computing at the The University of West Florida's Institute for Human and Machine Cognition (IHMC). "The emerging concept of human-centered computing (HCC) represents a significant shift in thinking about intelligent systems, and indeed about information technology in general. This shift in perspective places human/machine interaction issues at the center of the subject. HCC can be defined as the discipline of matching hardware and software with human performance and capabilities toward the accomplishment of a specific task. HCC embodies a “systems view,” in which human thought and action and technological systems are seen as inextricably linked and equally important aspects of analysis, design, and evaluation. The “system” in question isn’t only “the computer” but instead includes cognitive and social systems, computational tools, and the physical facilities and environment. Thus, HCC provides a new research outlook, with new research agendas and goals. HCC research is inherently interdisciplinary, combining research in cognitive science, computer science, medical sciences, and the social sciences." Nanocomputing and Nanoprocessors. From ArtificialBrains.com - maintained by James Pearn. "Nanocomputing, also known as nanoelectronics, is all about the building of incredibly tiny electronic circuits and microprocessors (or "nanoprocessors"). A nanometre is one billionth of a metre. ... Nanocomputing is of huge importance to advancement in artificial intelligence because it will enable the building of computers which are orders of magnitude smaller and more powerful than those available today." Free Versions of POPLOG Including POP-11, LISP, PROLOG and ML. From the School of Computer Science, University of Birmingham, in collaboration with School of Cognitive and Computing Sciences, University of Sussex. Also offered at this site are lots of other resources such as primers, tutorials, demos, and Sim agent toolkits. The Prolog Dictionary. Compiled by Bill Wilson, Associate Professor in the Artificial Intelligence Group, School of Computer Science and Engineering, University of NSW. "You should use The Prolog Dictionary to clarify or revise concepts that you have already met. The Prolog Dictionary is not a suitable way to begin to learn about Prolog." Prolog resources from the web site of the Computer Based Learning Unit at the University of Leeds:
Neuromorphic Microchips - Compact, efficient electronics based on the brain's neural system could yield implantable silicon retinas to restore vision, as well as robotic eyes and other smart sensors. By Kwabena Boahen. Scientific American (May 2005; subscription req'd.).
|