Keith Clark (Emeritus Professor at Imperial College)
Keith Clark has first degrees in both Mathematics and Philosophy, and a PhD in Computational Logic. Most of his academic career has been at Imperial College London. He is now an Emeritus Professor at Imperial. He is an Honorary Professor at UQ Brisbane and UNSW Sydney, where he has long standing research collaborations. He has taught courses at Stanford, Syracuse and UC Santa Cruz in the US, at three Universities in Sweden, at two in Africa, and at the University of Queensland. His research has covered: theoretical results in computational logic, design and implementation of new logic programming languages, including concurrent languages, rule languages for programming communicating agents. With his research students he has explored AI, agent and robotic applications of these languages. He has consulted for the Japanese Fifth Generation Project, Hewlett Packard, IBM, Fujitsu and two start-ups, one in Sweden and one in California. He is a co-founder of the Prolog software and consultancy company Logic Programming Associates (LPA).
Keynote Title: Rule Control of Teleo-Reactive, Multi-threaded, Communicating Robotic Agents
Abstract: The robotic agents are programmed in two rule based languages: QuLog and TeleoR. They communicate using a logic based pub/sub and addressed message routing server, Pedro. QuLog is a flexibly typed rule language for programming multi-threaded communicating agents. Its declarative subset of relation and function defining rules is used for encoding an agent’s dynamic beliefs and static knowledge. Its imperative rules are used for implementing an agent’s multi-threaded architecture, for updating the dynamic beliefs, and for inter-agent communication. TeleoR is an application specific extension of QuLog for programming task threads that control robotic devices. It is a major extension of the T-R language proposed by Nils Nilsson., itself a descendant of generalised hierarchical triangular table action plans of the first cognitive robot Shakey. TeleoR programs comprise sequences of guarded robotic action rules, G ~> A, clustered into parameterised procedures. G is a QuLog query to the agent's dynamic beliefs. A is a robotic action, optionally paired with an agent action, or it is a call to a TeleoR procedure, including a recursive call.