Ресурси


Съдържание

Study Materials

Lecture 1 – Introduction

  1. The Most Awesome Robots 2015 – https://www.youtube.com/watch/S5AnWzjHtWA
  2. iRobot Roomba® Vacuum Cleaning Robot – http://www.irobot.com/For-the-Home/Vacuum-Cleaning/Roomba.aspx
  3. Raspberry Pi Robotics #2: Zumo Robot – https://www.youtube.com/watch?v=AZSiqj0NZgU
  4. Make: The Latest In Hobby Robotics 05 – http://makezine.com/2011/04/12/the-latest-in-hobby-robotics-05/
  5. E3 2009: Project Natal Milo demo – https://www.youtube.com/watch?v=CPIbGnBQcJY
  6. Microsoft demos the „brains“ behind its new Kinect sensor: skeletal tracking – https://www.youtube.com/watch?v=bdviGrPaQDQ

Lectures 2-3 – Intelligent Agents

Stages and perspectives in development of agent technology. Distinctive Features and Applications

  • Distinctive Features: Autonomy, Intelligence, Learning/Adaptation, Reactivity, Pro-activity, Communication/Social Ability, Cooperativity, Mobility, Long-term Persistence, Personalization).
  • Types of Agent Applications – Interface/Task/Information/Collaborative/Mobile/Reactive/Hterogenious/Social/Emotional Agents and Avatars.
  1. Intelligent Agents – presentation by Trayan Iliev, IPT, 2015 (.PDF, in Bulgarian).
  2. Intelligent Agents – Distinctive Features and Applications by Trayan Iliev (unpublished paper, .PDF, full version), © IPT – Intellectual Products & Technologies, 2006.
  3. Подход на интелигентните агенти при моделиране на знания и системи (.PDF, in Bulgarian, short version)

Intelligent Agents – Rational agents- AIMA. Different types of agent architectures – table-based, simple reflex, internal state, goal-driven, utility-driven. Agent environments – types and characteristics. Pseudo-code examples

  1. Chapter 02: „Intelligent Agents“ form „Artificial Intelligence: A Modern Approach“ (AIMA) by Stuart Russell and Peter Norvig, 1-st ed.
  2. Chapter 02 (AIMA, 1-st ed.): „Intelligent Agents“ – Stuart Russell’s (Berkeley) course slides in pdf format – PAGE (Perceptions, Actions, Goals, Environment) internal (glassbox) description of IAs, different types of environments and agent architectures.
  3. Chapter 02 (AIMA, 3-rd ed.): „Intelligent Agents“ – Stuart Russell’s (Berkeley) course slides in pdf format – PEAS (Performance Measure, Environment, Actuators, Sensors) external (blackbox) description of IAs, different types of environments and agent architectures.

Planning robots – STRIPS

  1. STRIPS (Stanford Research Institute Problem Solver) is an automated planner developed by Fikes and Nilsson, 1971 in Wikipedia
  2. Chapter 11: „Planning“ form „Artificial Intelligence: A Modern Approach“ by Stuart Russell and Peter Norvig, 2-nd ed.

Reactive Agents – Subsumption Architecture (Brooks, 1986)

  1. Subsumption architecture article in Wikipedia
  2. Brooks, R. A. (1986). A robust layered control system for a mobile robot. IEEE Journal of Robotics and Automation, RA-2(1):14-23
  3. A robust layered control system for a mobile robot. A.I. Memo 864, MIT, 1985 (extended version of the paper).
  4. Brooks, R.A. (1990). „Elephants Don’t Play Chess“. Designing Autonomous Agents: Theory and Practice from Biology to Engineering and Back (MIT Press). ISBN 978-0-262-63135-8. Retrieved 2013-11-23

Additional Materials

  1. Additional materials: Presentations, sample Java™ code, and other resources from „Artificial Intelligence: A Modern Approach“ by Stuart Russell and Peter Norvig (http://aima.cs.berkeley.edu/, http://aima.cs.berkeley.edu/instructors.html)
  2. Chapter 07: „Logical Agents“ form „Artificial Intelligence: A Modern Approach“ by Stuart Russell and Peter Norvig, 2-nd ed.

Lectures 4-6 – Small Robots Platforms: Lego® Mindstorms® EV3, Raspberry Pi™, Arduino.

Electronics basics – soldering, equipment, components, principles

  1. How to Solder: Through-Hole Soldering
  2. Analog to Digital Conversion
  3. Serial Communication
  4. Serial Basic Hookup Guide

Programming Lego® robots in Java®: leJOS – Wifi configuration, using sensors, motors, tools. Accessing EV3 using SSH. Sample programs.

  1. Lego® Mindstorms® official webpage
  2. EV3 SOFTWARE DOWNLOAD (PC)
  3. LeJOS – Java for Lego® Mindstorms® for EV3 download page
  4. LeJOS – Java for Lego® Mindstorms® EV3 Wiki
  5. leJOS EV3 Eclipse plugin download page + Plugin installation tutorial (from menu Help / “Install New Software…”).
  6. IPT LeJaRo Demos – Motor and Audio Demos

Opensource Hardware and Software: Arduino – GPIO, Sensors and Effectors. Communication Protocols (UART, Serial, USB, SPI, I2C). Using Arduino IDE.

Arduino – Installation and Development
  1. Arduino official website
  2. Arduino boards, shields and kits
  3. Download the Arduino Software opensource IDE
  4. Arduino Examples Page
  5. How to Install an ATtiny Bootloader With Virtual USB
Arduino In Bulgarian
  1. Bulgarian Arduino tutorials, examples, blogs
  2. Книжка туториал „Запознанство с Ардуино“
  3. Наръчник „Ардуино книжка за програмиране“ Наръчник „Ардуино книжка за програмиране“
  4. Ардуино Игрище – примерни схеми и програми за използване на Ардуино в комбинация с различни софтуерни и хардуерни компоненти
Arduino GPIO, SPI and I2C Tutorials
  1. GPIO, SPI and I2C from Userspace, the True Linux Way – presentation by Baruch Siach
  2. Serial Programming WikiBook (including serial programming in Java)
  3. General-purpose input/output (GPIO) in Wikipedia
  4. I²C (Inter-Integrated Circuit) in Wikipedia
  5. I2C
  6. Serial Peripheral Interface (SPI) in Wikipedia
  7. Serial Peripheral Interface (SPI)
  8. Better SPI Bus Design in 3 Steps
Arduino Components
  1. OLIMEX – Bulgarian open hardware Arduino/robotic components development company homepage
  2. Robotev – Arduino/Pi/robotic components homepage

Raspberry Pi™ 2 and 3 – an IoT & Robotics Platform with Higher Computational Capabilities / WiFi / Bluetooth Low Energy (BLE). Installing Raspbian. Integration of Different Hardware Modules – LCD, Ultarsound and Infrared Distance Sensors, Motor Drivers, Compass/Gyroscope/Accelerometer. Raspberry Pi – Arduino Integration.

  1. Raspberry Pi GPIO Pin Information [all_models]
  2. Wiring Pi – Raspberry Pi GPIO Pins
  3. Using Node-Red with RPi GPIO
  4. The Pi4J project: Connecting Java to Raspberry Pi
  5. Pin Numbering – Raspberry Pi 2 Model B, Diagram with Broadcom pin numbers
  6. Simple GPIO Control using Pi4J
  7. Raspberry PI 2 B first time Setup (1/2 Hr Process to full GUI and WIFI) – YouTube video
  8. Raspberry Pi™: Basic examples to help you get started with some of the software available in Raspbian
  9. GPIO: Models A+, B+ and Raspberry Pi 2
  10. Raspberry Pi – How to use the GPIO RaspberryPi IV Beginners – – YouTube video
  11. Adafruit’s Raspberry Pi Lesson 4. GPIO Setup
  12. RPi Low-level peripherals
  13. RPi BCM2835 GPIOs functions
  14. RPi GPIO Interface Circuits
  15. RPi Serial Connection
  16. RPi SPI
  17. Gordons Projects – Projects, Fun and Games from Gordon @ Drogon
  18. The GPIO utility from Gordon
  19. Physical Python – Part 1 – tutorial by Quick2Wire
  20. Raspberry Pi and Arduino linked via I2C – tutorial by Quick2Wire
  21. Enabling The I2C Interface On The Raspberry Pi
  22. usb4java: A Java library to access USB devices

Lecture 6 – Programming Multithreaded Applications in Java™

  1. Programming Multithreaded Applications in Java™ – presentation by Trayan Iliev, IPT, 2015 (.PDF, in Bulgarian)
  2. Thinking in Java – 4-th ed. source code from concurrency chapter by Bruce Eckel, MindView.com

Lectures 7 – 8 – Reactive programming. Actor Model for building reactive (event-driven, scalable, resilient and adaptive) applications. Akka toolkit for building massively concurrent, distributed, and robust event-driven applications

  • Actors – references, state, behavior, subordinate actors, supervision, interruption. One-For-One Strategy and All-For-One control strategies. Task delegation. Actor references, paths and addresses. Actor lifecycle – DeathWatch.
  • Message passing and receiving – tell, ask, reply. Message routers. Mailboxes.
  • Swapping dynamic behaviors – become and unbecome (State pattern). Finite state machines implementation using actors. Data persistence – processor, view, streams, channel, journal, snapshot store, event sourcing.
  1. Akka framework homepage
  2. Introducing Akka – presentation by Jonas Bonér, Typesafe Inc.
  3. Introducing Akka – Simpler Scalability, Fault-Tolerance, Concurrency & Remoting Through Actors DZone tutorial by Jonas Bonér, Typesafe Inc.
  4. Akka Pi calculation example with added dynamic behaviors – become/unbecome.

Lecture 9 – Types of Agent Applications. Intelligent Agents and Future of Internet. Comparison with Search Engines. Proposal for Three Layer Structure of Internet

  1. Intelligent Agents – Distinctive Features and Applications by Trayan Iliev (unpublished paper, .PDF), IPT – Intellectual Products & Technologies, 2006.
  2. Intelligent Software Agents on the Internet an inventory of currently offered functionality in the information society and a prediction of (near-)future developments by Björn Hermans (SHORT VERSION)
  3. Intelligent Software Agents on the Internet an inventory of currently offered functionality in the information society and a prediction of (near-)future developments by Björn Hermans (FULL VERSION)

Lecture 10 – Intelligent Agents – Interactions between Intelligent (Social) Agents. Game Theory

  1. Interactions between Intelligent (Social) Agents. Game Theory – presentation by Trayan Iliev, IPT, 2015 (.PDF, in Bulgarian)
  2. Artificial Intelligence: Foundations of Computational Agents – Ch. 10: Multiagent Systems – Poole & MackworthPPT Slides
  3. Course Multi-Agent Systems at University Politehnica Bucharest

Lecture 11 – Learning Agents

Presentations from „Artificial Intelligence: A Modern Approach“ by Stuart Russell and Peter Norvig (http://aima.cs.berkeley.edu/, http://aima.cs.berkeley.edu/instructors.html)

  • Stuart Russell’s (Berkeley) course slides in pdf format:
  1. Ch.18: Learning from Examples
  2. Ch.20a: Learning Probabilistic Models
  3. Ch.20b: Neural Networks

Lectures 12 – Belief–Desire–Intention (BDI) Model of Practical Reasoning. Agent Communication Languages. DARPA ACL. FIPA Standards. FIPA ACL. JADE

  1. Agent Communication Languages – Finin & Labrou, University of Maryland Baltimore County, 1999
  2. FIPA Communicative Acts (CA) presentation by SEC (.PPT)
  3. Agent Based Software Development presentation by Michael Luck, Ronald Ashri and Mark d’Inverno (.PPT)
  4. FIPA Abstract Architecture presentation at London FIPA meeting, January 24-29, 2000, from: TC-A members (.PPT)
  5. FIPA Agents and Platform presentation by M. Cossentino, ICAR – C.N.R. Palermo (.PPT)
  6. FIPA IEEE Standardization Activities – AgentLink.org (.PPT)
  7. Specifying Protocols for Multi-Agent Systems Interaction – Poslad, In ACM Transactions on Autonomous and Adaptive Systems, 2007, Volume 2, Number 4 (.PDF)
  8. FIPA page in Wikipedia (includes links to different FIPA-compliant implementation platforms)
  9. Java Agent DEvelopment Framework (JADE) page in Wikipedia
  10. Introduction of Java Agent Development Environment (JADE) presentation by Po-Cheng Huang (.PPT)

Lecture 13 – Knowledge Representation Using Ontologies. W3C Semantic Web Project. Resource Description Framework (RDF). Web Ontology Language (OWL). Protégé

  1. W3C Semantic Web Technologies – RDF and OWL presentation by Trayan Iliev, IPT – Intellectual Products & Technologies, 2007 (.PDF, in Bulgarian)
  2. Ontology Development 101: A Guide to Creating Your First Ontology by Natalya F. Noy and Deborah L. McGuinness, Stanford University, CA (.PDF)
  3. Protégé – a Java based Ontology development environment provided by Stanford University (supports OWL, RDF, RDFS W3C Semantic Web standards).

Lecture 14 (Discussion) – Agent Perspectives

  1. Agentlink Roadmap: www.agentlink.org