Legolog

[UofT Logo] [Legolog in action] Powered by: [Powered by Golog]


Introduction Documentation Download Related Sites
Disclaimer License Contact


Introduction

Legolog is a Prolog-based system developed to allow experimentation with and demonstration of Cognitive Robotics research on the LEGO® MINDSTORMSTM Robotics Invention System (RIS)TM. In particular, it was originally aimed at controlling the RIS via a Golog planner. However, the code has been structured in such a way as to allow the Golog interpreter to be replaced by another planner with a minimum of effort. Legolog is intended to run on various Prolog implementations with current support for SWI-Prolog and ECLiPSe Prolog under Linux, and LPA Prolog under DOS.
Note: For MS-DOS we have only sucessfully tested Legolog on the HP200LX using LPA DOS-Prolog 3.83. Attempts to run Legolog reliably on Windows machines using various Prologs have encountered problems with the serial port. It is recommended that users adopt one of the methods above.

Back to top of page. [Top of Page]

Documentation

The Legolog documentation is currently in the form of a README file which is available in both HTML or text. The README describes the component files that come with Legolog and what you need to do to use Legolog with a planner other than Golog.

There is also the following paper which gives a brief overview of the system:

Hector J. Levesque and Maurice Pagnucco, Legolog: Inexpensive Experiments in Cognitive Robotics, Proceedings of the Second International Cognitive Robotics Workshop, Berlin, Germany, August 21-22, 2000.
You can download a gzip'ed postscript or PDF copy of this paper.

Back to top of page. [Top of Page]

Download

Legolog Distribution

The Legolog distribution can be obtained in the form of a single zip archive legolog.zip.

To run demo:

  1. Construct robot and track (see images below for ideas)

  2. Download nqc program
    nqc -d delivery.nqc

  3. Select appropriate main_XXX.pl for your Prolog and consult

  4. Press Run button on RCX

  5. Evaluate main/0 in Prolog

Videos

We have two movies available of a LEGO® robot performing a delivery task using the files above. The longer movie starts with the HP200LX controlling the robot and then shows the robot moving to a landmark where it is to make a delivery and then returning to the "home position". The shorter one (17 seconds in duration) shows the robot performing only part of this task.

Viewers for the following operating systems can be downloaded from the web

Linux:
Xanim (will show AVI files)

Macintosh:
Quicktime (will show all files)

Windows95/98/00/NT:
Quicktime (will show all files)

Images

The following images are intended to give an idea of one of the scenarios used with the code given above. In this scenario there is a track (black line) with six landmarks representing way stations. The robot is to make pick-ups and deliveries between way stations and otherwise wait at the first landmark for requests. The robot uses the base from the Tankbot in Chapter 5 of Dave Baum's Definitive Guide to LEGO MINDSTORMS (Click on images for larger versions.)

  • [Front view of delivery robot] Front of robot showing light sensor attached [45Kb]

  • [Side view of delivery robot] Side-on shot of robot [125Kb]

  • [Overhead view of delivery robot and track] Overhead shot showing top of robot and track with way stations [90Kb]

Back to top of page. [Top of Page]

Related Sites

Back to top of page. [Top of Page]

Disclaimer

Legolog is in no way associated with LEGO® or any of its products.

Back to top of page. [Top of Page]

License

June 15, 2000

This software was developed by the Cognitive Robotics Group under the direction of Hector Levesque and Ray Reiter.

Do not distribute without permission.
Include this notice in any copy made.

Copyright (c) 2000 by The University of Toronto,

Toronto, Ontario, Canada.

All Rights Reserved

Permission to use, copy, and modify, this software and its documentation for non-commercial research purpose is hereby granted without fee, provided that the above copyright notice appears in all copies and that both the copyright notice and this permission notice appear in supporting documentation, and that the name of The University of Toronto not be used in advertising or publicity pertaining to distribution of the software without specific, written prior permission. The University of Toronto makes no representations about the suitability of this software for any purpose. It is provided "as is" without express or implied warranty.

THE UNIVERSITY OF TORONTO DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL THE UNIVERSITY OF TORONTO BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.

Back to top of page. [Top of Page]

Contact

For further information please contact:

Maurice Pagnucco/Hector J. Levesque
Cognitive Robotics Group
Department of Computer Science
D. L. Pratt Building
6 King's College Road
University of Toronto
Toronto, Ontario, CANADA, M5S 3G4

Email: {morri | hector}@cs.toronto.edu.

Back to top of page. [Top of Page]


Maurice Pagnucco (morri@cs.toronto.edu) and Hector J. Levesque (hector@cs.toronto.edu)