Yves Lespérance
Professor Emeritus, York University
Visiting Faculty 2023-26, DIAG, Sapienza University of Rome
B.Sc.(1978) Montréal,
M.Sc. (1980) Toronto,
Ph.D. (1991) Toronto
Associate Editor of
Autonomous Agents and Multi-Agent Systems Journal (JAAMAS) 2021-26.
Former Associate Editor of the
Artificial intelligence Journal 2017-24.
Former Associate Editor of the
Journal of Artificial intelligence Research (JAIR) 2016-22.
Address
Department of Electrical Engineering and Computer Science
York University
4700 Keele Street
Toronto, ON, M3J 1P3, CANADA
E-Mail: lesperan "at" eecs.yorku.ca
Dept Phone: +1-416-736-5053 Fax: +1-416-736-5872
Current/Recent Courses
- EECS 4401/5326 Artificial Intelligence, Winter 2022,
course web page,
course eClass page.
- EECS 2030 (Section M) Advanced Object-Oriented Programming, Winter 2021,
course eClass page.
- EECS 4401/5326 Artificial Intelligence, Winter 2021,
course web page,
course eClass page.
- EECS 1022 Programming for Mobile Computing, Summer 2020,
course web page,
course Moodle page.
- EECS 1022 Programming for Mobile Computing, Winter 2020,
course web page,
course Moodle page.
- EECS 4401/5326 Artificial Intelligence, Winter 2020,
course web page.
- EECS 1022 Programming for Mobile Computing, Summer 2019,
course web page,
course Moodle page.
- EECS 1022 Programming for Mobile Computing, Fall 2018,
course web page,
course Moodle page.
- EECS 3401 Introduction to Artificial Intelligence and Logic Programming,
Fall 2018,
course web page.
- EECS 3401 Introduction to Artificial Intelligence and Logic Programming,
Fall 2017,
course web page.
- EECS 6390A Knowledge Representation, Fall 2017,
course web page.
- EECS 1720 Building Interactive Systems, Winter 2017,
course web page.
- EECS 3401 Introduction to Artificial Intelligence and Logic Programming,
Winter 2017,
course web page.
- EECS 1022 Introduction to Software Development, Winter 2016,
main course web page on Moodle,
web page for my section.
- EECS 1720 Building Interactive Systems, Winter 2016,
course web page.
- CSE 6390A Knowledge Representation, Fall 2015,
course web page.
- CSE 1030 Introduction to Computer Science II, Winter 2014,
course web page, web page for my section.
- CSE 3342 System Specification and Refinement, Winter 2014,
course web page.
- CSE 2001 Introduction to Theory of Computation,
Summer 2013,
course web page.
- CSE 3401 Introduction to Artificial Intelligence and Logic Programming,
Fall 2012,
course web page.
- CSE 6390A Knowledge Representation, Fall 2012,
course web page.
- CSE 3402 Introduction to Concepts of Artificial Intelligence, Winter 2012,
course web page.
- PHIL 3750 Philosophy of Artificial Intelligence, Fall 2011,
course web page.
- PHIL 3750 Philosophy of Artificial Intelligence, Winter 2011,
course web page.
- CSE 1030 Introduction to Computer Science II, Fall 2010,
course web page
.
- CSE 6390A Knowledge Representation, Fall 2010,
course web page.
- CSE 3402 Introduction to Concepts of Artificial Intelligence, Winter 2010,
course web page.
- CSE 1030 Introduction to Computer Science II, Fall 2009,
course web page
.
- CSE 1030 Introduction to Computer Science II, Winter 2009,
course web page.
- CSE 3402 Introduction to Concepts of Artificial Intelligence, Winter 2009,
course web page.
- CSE 6390A Knowledge Representation, Fall 2008,
course web page.
- CSE 3402 Introduction to Concepts of Artificial Intelligence, Winter 2007,
course web page.
- ITEC 1630 Object-Oriented Programming, Winter 2007,
web page for my section.
- COSC 6390A Knowledge Representation, Fall 2006,
course web page.
- CSE 3401 Functional and Logic Programming (Section B), Fall 2005,
course web page.
- COSC 4401/5326 Artificial Intelligence, Fall 2004,
course web page.
- COSC 6390A Knowledge Representation, Fall 2003,
course web page.
- COSC 1020 Introduction to Computer Science I, Fall 2002,
course web page,
web page for my section.
- COSC 6390A Knowledge Representation, Fall 2002,
course web page.
- COSC 1030 Introduction to Computer Science II, Fall 2000,
course web page
- COSC 4401/5326 Artificial Intelligence, Winter 2000,
course web page.
Research Interests
- Knowledge Representation and Reasoning
- Autonomous Agents and Multiagent Systems
- Cognitive Robotics
Recent Research Projects
- Using Abstraction in Reasoning about Autonomous Agents and Multiagent Systems
NSERC Discovery Grant (2022-27)
Project Description
- Specification, Verification, and Synthesis of Autonomous Adaptive Agents
NSERC Discovery Grant (2015-22)
Project Description
- Designing Rational Agents that Can Work with Others
NSERC Discovery Grant (2010-15)
- Logic-Based Agent Programming II
NSERC Individual Research Grant (2005-10)
- Logic-Based Agent Programming
NSERC Individual Research Grant (2000-05)
Project Description
- Lights and Camera
CITO Research Project (2003-05)
Industrial Partner: MacDonald Dettwiler Space & Advanced Robotics
Project Description
- High-Level Control of Vision Sensing Systems
CITO Research Project (2000-02)
Industrial Partner: MacDonald Dettwiler Space & Advanced Robotics
Project Description
- Agent-Oriented Software Development
CITO Research Project (2000-02)
Project Description
Golog/ConGolog/IndiGolog Software
A very simple Golog interpreter in SWI Prolog can be found
here (suitable for running simple examples such as this
simple elevator controller).
An ECLIPSE Prolog version can be found
here.
More Golog-related code can be found on the home page of Reiter's book
Knowledge in Action: Logical Foundations for Specifying and
Implementing Dynamical Systems
here.
A much more developed and usable implementation of IndiGolog in Prolog
due to Sardina and Vassos is available
here;
it also supports some forms of incomplete knowledge.
There is also Levesque's well-developed
Ergo
implementation of IndiGolog in Scheme;
it suports some forms of incomplete knowledge and probabilistic reasoning, as well as interfacing to Unity and the LEGO robot.
Another well-developed implementation in Prolog is
ReadyLog
from RWTH Aachen University's Knowledge-Based Systems Group;
it supports forms of decision-theoretic planning.
golog++ is a recent interfacing and development framework for GOLOG languages from the same group;
its backend is an abstract C++ interface, making integration into any robotics framework staightforward and simple.
A
list of available implementations of Golog, ConGolog, IndiGolog, etc. is
maintained on the University of
Toronto Cognitive Robotics Group web site.
At York, Alexei
Lapouchnian and I have developed the IG-OAAlib
implementation of IndiGolog for use in combination with SRI's Open Agent Architecture
communication/matchmaking infrastructure.
Last modified: April 14, 2026