Search icon CANCEL
Arrow left icon
Explore Products
Best Sellers
New Releases
Books
Videos
Audiobooks
Learning Hub
Conferences
Free Learning
Arrow right icon
Artificial Intelligence for Robotics
Artificial Intelligence for Robotics

Artificial Intelligence for Robotics: Build intelligent robots that perform human tasks using AI techniques

Arrow left icon
Profile Icon Francis X. Govers III
Arrow right icon
$19.99 per month
Full star icon Full star icon Full star icon Full star icon Half star icon 4.4 (5 Ratings)
Paperback Aug 2018 344 pages 1st Edition
eBook
$32.99 $47.99
Paperback
$59.99
Subscription
Free Trial
Renews at $19.99p/m
Arrow left icon
Profile Icon Francis X. Govers III
Arrow right icon
$19.99 per month
Full star icon Full star icon Full star icon Full star icon Half star icon 4.4 (5 Ratings)
Paperback Aug 2018 344 pages 1st Edition
eBook
$32.99 $47.99
Paperback
$59.99
Subscription
Free Trial
Renews at $19.99p/m
eBook
$32.99 $47.99
Paperback
$59.99
Subscription
Free Trial
Renews at $19.99p/m

What do you get with a Packt Subscription?

Free for first 7 days. $19.99 p/m after that. Cancel any time!
Product feature icon Unlimited ad-free access to the largest independent learning library in tech. Access this title and thousands more!
Product feature icon 50+ new titles added per month, including many first-to-market concepts and exclusive early access to books as they are being written.
Product feature icon Innovative learning tools, including AI book assistants, code context explainers, and text-to-speech.
Product feature icon Thousands of reference materials covering every tech concept you need to stay up to date.
Subscribe now
View plans & pricing
Table of content icon View table of contents Preview book icon Preview Book

Artificial Intelligence for Robotics

Setting Up Your Robot

This chapter begins with some background on my thoughts as to what a robot is, and what robots are made of – a fairly standard list of parts and components. This chapter is designed to allow you to duplicate the exercises and use the source code that is found throughout the book. I thought you would appreciate information on how I set up my environments for development, what tools I use to create my code, and how I install the Robotic Operating System (ROS). We will also cover the assembly of TinMan, our robot hardware that I used for the development and testing of the code in this book. There are many types and configurations of robots that can work with our concepts and source code, with some minor modifications.

Topics covered in this chapter include the following:

  • What is a robot?
  • Robot anatomy – what are little robots made of?
  • Software...

Technical requirements

The hardware and software requirements for this chapter are as follows:

  • Python 2.7 or 3.5, with NumPy, SciPy, Matplotlib, and scikit-learn installed.
  • ROS Kinetic Kame.
  • A computer running Linux for development or a virtual machine running Linux under Windows. Ubuntu 16.04 is used for the examples and illustrations.
  • A Raspberry Pi 3 or similar single board computer (BeagleBone Black, Odroid, or similar). We are not using the GPIO or special interfaces on the Pi 3, so there is not a lot of RasPi-specific code.
  • An Arduino Mega 2560 microcontroller.
  • A Pololu Micro Maestro Servo Controller x6.
  • An Arduino development environment. This can be installed either on the control station (a laptop running Windows or a Linux laptop), or on the Raspberry Pi.
  • The TinMan robot hardware was purchased from AliExpress and was called Track Cars Creeper Truck Crawler Kits with...

What is a robot?

The word robot entered the modern language from the play R.U.R. by the Czech author, Karel Capek, which was published back in 1920. Roboti is supposed to be a Czech word meaning forced servitude. In the play, an industrialist learns how to build artificial people – not mechanical, metal men, but made of flesh and blood, who emerge from a factory fully grown. The English translation of the name as Rossum’s Universal Robots (R.U.R.) introduced the word "robot" to the world.

Robot anatomy – what are robots made of?

In our limited definition of robots as meaning mobile machines that have sensors and interact with their environment, there is a fairly standard collection of components...

Subsumption architecture

At this point, I want to spend a bit more time on the idea behind the subsumption architecture, and point out some specifics of how we will be using this concept in the design of our robot project. Many of you will be familiar with the concept from school or from study, and so you can look at my diagram and then move on. For the rest of us, let's talk a bit about this biologically inspired robot concept.

Subsumption architecture was originally described by Dr. Rodney Brooks, a professor at MIT, who would later help found iRobot Corporation and invent the Baxter Robot. Rodney was trying to develop analogues of insect brains in order to understand how to program intelligent robots. Robots before this time (1986) were very much single-threaded machines that pretty much only did one thing at a time. They read sensors, made decisions and then acted &...

Software setup

To match the examples in this book, and to have access to the same tools that are used in the code samples, you will have to set up three environments:

  • A laptop or desktop computer: This will run our control panel, and also be used to train neural networks. I used a Windows 10 computer with Oracle VirtualBox supporting a virtual machine running Ubuntu 16.14. You may run a computer running Ubuntu or another Linux operating system by itself (without Windows) if you want. Several of the AI packages we will use in the tutorial sections of the book will require Ubuntu 16 or later to run. We will load ROS on this computer. I will also be using a PlayStation-type game controller on this computer for teleoperation (remote control) of the robot.
  • Raspberry Pi 3: Also running Ubuntu Linux (you can also run other Linux versions, but you will have to make any adjustments between...

Hardware

The TinMan robot is based on a kit I found from a Chinese company named Robo-Soul. It is called the TK-6A Robot base with a 6-DOF Robot arm. The kit arrived in a timely fashion via post, but arrived with no instructions whatsoever. Also, the pictures on the website did not match the kit, either, so I have basically no guide to putting this thing together, other than trial and error. I will provide an abbreviated version here in the book that will get you through the rough parts. A complete version will be on the website for the book at http://github.com/fgovers/ai_and_robots.

Beginning at the beginning – knolling

The best way to start with a kit this complex, particularly when you don't have instructions...

Summary

This chapter covered several important topics. It started with some of the basics of robotics, for readers who needed a bit more background. We talked about common robot parts, such as sensors, computers, and motors/actuators. We discussed the subsumption architecture in more depth and showed how it helped the robot arbitrate between responding to different events and commands.

The next section covered the software setup for running the robot, including the offboard development environment and the onboard Raspberry Pi 3 computer environments. We set up the ROS and installed the Python tools.

The final section covered the hardware construction of the example robot, TinMan, with its tank-tread base and robot arm composed of servo motors. We showed how to wire the power supply up and connect all of the components to the Raspberry Pi 3 controller. We installed the ROS software...

Questions

  1. Name three types of robot sensors.
  2. What does the acronym PWM stand for?
  3. What is analog-to-digital conversion? What goes in and what comes out?
  4. Who invented the subsumption architecture?
  5. Compare my diagram of the three-layer subsumption architecture to the Three Laws of Robotics postulated by Isaac Asimov. Is there a correlation? Why is there one, or why not?
  6. Do you think I should have given our robot project – TinMan – a name? Do you name your robots individually, or by model?
  7. What is the most important environment variable in ROS?

Further reading

Brooks, Rodney. Cambrian Intelligence: The Early History of the New AI. MIT Press, 1999. Boston, MA

Left arrow icon Right arrow icon
Download code icon Download Code

Key benefits

  • Leverage fundamentals of AI and robotics
  • Work through use cases to implement various machine learning algorithms
  • Explore Natural Language Processing (NLP) concepts for efficient decision making in robots

Description

Artificial Intelligence for Robotics starts with an introduction to Robot Operating Systems (ROS), Python, robotic fundamentals, and the software and tools that are required to start out with robotics. You will learn robotics concepts that will be useful for making decisions, along with basic navigation skills. As you make your way through the chapters, you will learn about object recognition and genetic algorithms, which will teach your robot to identify and pick up an irregular object. With plenty of use cases throughout, you will explore natural language processing (NLP) and machine learning techniques to further enhance your robot. In the concluding chapters, you will learn about path planning and goal-oriented programming, which will help your robot prioritize tasks. By the end of this book, you will have learned to give your robot an artificial personality using simulated intelligence.

Who is this book for?

If you have basic knowledge about robotics and want to build or enhance your existing robot’s intelligence, then Artificial Intelligence for Robotics is for you. This book is also for enthusiasts who want to gain knowledge of AI and robotics.

What you will learn

  • Get started with robotics and artificial intelligence
  • Apply simulation techniques to give your robot an artificial personality
  • Understand object recognition using neural networks and supervised learning techniques
  • Pick up objects using genetic algorithms for manipulation
  • Teach your robot to listen using NLP via an expert system
  • Use machine learning and computer vision to teach your robot how to avoid obstacles
  • Understand path planning, decision trees, and search algorithms in order to enhance your robot

Product Details

Country selected
Publication date, Length, Edition, Language, ISBN-13
Publication date : Aug 30, 2018
Length: 344 pages
Edition : 1st
Language : English
ISBN-13 : 9781788835442
Category :
Languages :
Tools :

What do you get with a Packt Subscription?

Free for first 7 days. $19.99 p/m after that. Cancel any time!
Product feature icon Unlimited ad-free access to the largest independent learning library in tech. Access this title and thousands more!
Product feature icon 50+ new titles added per month, including many first-to-market concepts and exclusive early access to books as they are being written.
Product feature icon Innovative learning tools, including AI book assistants, code context explainers, and text-to-speech.
Product feature icon Thousands of reference materials covering every tech concept you need to stay up to date.
Subscribe now
View plans & pricing

Product Details

Publication date : Aug 30, 2018
Length: 344 pages
Edition : 1st
Language : English
ISBN-13 : 9781788835442
Category :
Languages :
Tools :

Packt Subscriptions

See our plans and pricing
Modal Close icon
$19.99 billed monthly
Feature tick icon Unlimited access to Packt's library of 7,000+ practical books and videos
Feature tick icon Constantly refreshed with 50+ new titles a month
Feature tick icon Exclusive Early access to books as they're written
Feature tick icon Solve problems while you work with advanced search and reference features
Feature tick icon Offline reading on the mobile app
Feature tick icon Simple pricing, no contract
$199.99 billed annually
Feature tick icon Unlimited access to Packt's library of 7,000+ practical books and videos
Feature tick icon Constantly refreshed with 50+ new titles a month
Feature tick icon Exclusive Early access to books as they're written
Feature tick icon Solve problems while you work with advanced search and reference features
Feature tick icon Offline reading on the mobile app
Feature tick icon Choose a DRM-free eBook or Video every month to keep
Feature tick icon PLUS own as many other DRM-free eBooks or Videos as you like for just $5 each
Feature tick icon Exclusive print discounts
$279.99 billed in 18 months
Feature tick icon Unlimited access to Packt's library of 7,000+ practical books and videos
Feature tick icon Constantly refreshed with 50+ new titles a month
Feature tick icon Exclusive Early access to books as they're written
Feature tick icon Solve problems while you work with advanced search and reference features
Feature tick icon Offline reading on the mobile app
Feature tick icon Choose a DRM-free eBook or Video every month to keep
Feature tick icon PLUS own as many other DRM-free eBooks or Videos as you like for just $5 each
Feature tick icon Exclusive print discounts

Frequently bought together


Stars icon
Total $ 153.97
Learn Robotics Programming
$54.99
Learning Robotics using Python
$38.99
Artificial Intelligence for Robotics
$59.99
Total $ 153.97 Stars icon

Table of Contents

12 Chapters
Foundation for Advanced Robotics and AI Chevron down icon Chevron up icon
Setting Up Your Robot Chevron down icon Chevron up icon
A Concept for a Practical Robot Design Process Chevron down icon Chevron up icon
Object Recognition Using Neural Networks and Supervised Learning Chevron down icon Chevron up icon
Picking up the Toys Chevron down icon Chevron up icon
Teaching a Robot to Listen Chevron down icon Chevron up icon
Avoiding the Stairs Chevron down icon Chevron up icon
Putting Things Away Chevron down icon Chevron up icon
Giving the Robot an Artificial Personality Chevron down icon Chevron up icon
Conclusions and Reflections Chevron down icon Chevron up icon
Assessments Chevron down icon Chevron up icon
Other Books You May Enjoy Chevron down icon Chevron up icon

Customer reviews

Rating distribution
Full star icon Full star icon Full star icon Full star icon Half star icon 4.4
(5 Ratings)
5 star 60%
4 star 20%
3 star 20%
2 star 0%
1 star 0%
Robert Nov 03, 2018
Full star icon Full star icon Full star icon Full star icon Full star icon 5
Francis X. Govers has written a uniquely interesting and educational book concerning “Artificial Intelligence for Robotics.” The book is designed for those who know a bit about artificial intelligence (AI) and robotics, but nevertheless defines all of its key terms, like “robot”, so we can start from a common understanding. It is centered on the problem of how to design and build an autonomous robot sufficiently intelligent and dexterous to be able to interact with a human and pick up toys scattered in a known, but unstructured, environment – a children’s playroom. If you wish to actually build such a robot, the book assumes that you are already familiar with the Robot Operating System (ROS) software, the Python programming language, and the Linux operating system, all of which are available at little or no cost. You can use the book as a clear instruction manual that explains the technology being employed at every step.However, it is not necessary to engage in a robot building do-it-yourself project to gain valuable knowledge. You can learn about the current state of autonomous intelligent robot technology, as well as the hands-on practical implementation of the technology, needed to build a sophisticated autonomous robot. Technologies include: software, such as for operating systems, neural networks, image processing, navigation, and natural language; hardware, such as for sensing, mobility, arm, and end effector; and communications with humans. The book also addresses potential concerns and societal issues with AI and robotics (spoiler alert: we are far from having to worry about robots terminating and replacing us).The book would be ideal to serve as a text for a high school or college AI/robotics course in which a few student teams in the class could compete to build the best robot, to be decided by a final competition at the end of the semester.
Amazon Verified review Amazon
Peter Morgan Nov 19, 2018
Full star icon Full star icon Full star icon Full star icon Full star icon 5
This book focuses on the design and construction of a robot called Tinman. The robot’s main functions are to pick up toys in a room and place them in a box, and also to communicate, in a rudimentary way, with humans. The book covers everything from assembling the robot from its basic parts to programming it to perform various tasks. It covers the theory in a fairly non-rigorous and descriptive way, but that’s just fine as it is not meant to be a graduate level text.Having said that, the book covers a remarkable range of technologies including object recognition, image classification, CNNs, reinforcement learning, genetic algorithms, language processing, planning, navigation, speech, Q&A, joke telling, and artificial personality. It concludes with a recap, a useful discussion on a career in robotics and some salient comments regarding AI safety. The relevant code is included within chapters and answers to the questions are given at the end of the book. Videos to accompany the chapters and a GitHub site are a welcome bonus and icing on the cake.The software frameworks covered include ROS, Ubuntu, Python, Tensorflow, Keras, OpenCV, Mycroft and Scikit-learn. Hardware covered includes the Raspberry Pi 3, robotic arm, USB camera, microphone, motor, servos, an Arduino microcontroller, battery, sensors, along with the Google AIY Voice kit. The author has many years of experience in designing industry robots and has spent a life working at the leading edge of artificial intelligence, unmanned vehicles, and robotics. Accordingly, he is well-placed to write a practical and hands-on book such as this. My only criticisms are that the book lacks a little rigor in places, and it contains the odd distracting typo.In summary, if you are looking for a more theoretical book on robotics, you will need to look elsewhere. However, if you are looking for a down-to-earth, practical book on designing and building robotics you have come to the right place, and for that I give it four and a half rounded up to a well-earned five stars. I personally learned a lot from this book and came away feeling more confident that I had gained a lot of good practical knowledge on AI and robotics.
Amazon Verified review Amazon
Jay Blanchard Oct 08, 2018
Full star icon Full star icon Full star icon Full star icon Full star icon 5
As someone who has dabbled in almost all of the technology mentioned in the book I started reading, hoping to find clues about how to put things together in such a way as to take my dabbling to a higher level. Not only was I able to improve my efforts, but I was blown away by how clearly the concepts were explained and demonstrated throughout the entire book! I particularly like the problem to be solved, picking up toys and putting them away! It makes the process a lot of fun!Everything was explained expertly, but in a casual way which should be understandable by any of us who seek to create robotic projects which aren't merely procedural. The machine-learning aspect was of particular interest to me as it is something I use in my day-to-day work as a systems engineer.If I were teaching a class on advanced robotics I'd start with this book as the curriculum. It's a must for every robotics student, young or old.
Amazon Verified review Amazon
Paulkschan Aug 22, 2023
Full star icon Full star icon Full star icon Full star icon Empty star icon 4
I liked the book because it can be used for practical design of robot and met my expectation.
Amazon Verified review Amazon
Baranzelli Mar 22, 2023
Full star icon Full star icon Full star icon Empty star icon Empty star icon 3
The book is very thin.
Amazon Verified review Amazon
Get free access to Packt library with over 7500+ books and video courses for 7 days!
Start Free Trial

FAQs

What is included in a Packt subscription? Chevron down icon Chevron up icon

A subscription provides you with full access to view all Packt and licnesed content online, this includes exclusive access to Early Access titles. Depending on the tier chosen you can also earn credits and discounts to use for owning content

How can I cancel my subscription? Chevron down icon Chevron up icon

To cancel your subscription with us simply go to the account page - found in the top right of the page or at https://subscription.packtpub.com/my-account/subscription - From here you will see the ‘cancel subscription’ button in the grey box with your subscription information in.

What are credits? Chevron down icon Chevron up icon

Credits can be earned from reading 40 section of any title within the payment cycle - a month starting from the day of subscription payment. You also earn a Credit every month if you subscribe to our annual or 18 month plans. Credits can be used to buy books DRM free, the same way that you would pay for a book. Your credits can be found in the subscription homepage - subscription.packtpub.com - clicking on ‘the my’ library dropdown and selecting ‘credits’.

What happens if an Early Access Course is cancelled? Chevron down icon Chevron up icon

Projects are rarely cancelled, but sometimes it's unavoidable. If an Early Access course is cancelled or excessively delayed, you can exchange your purchase for another course. For further details, please contact us here.

Where can I send feedback about an Early Access title? Chevron down icon Chevron up icon

If you have any feedback about the product you're reading, or Early Access in general, then please fill out a contact form here and we'll make sure the feedback gets to the right team. 

Can I download the code files for Early Access titles? Chevron down icon Chevron up icon

We try to ensure that all books in Early Access have code available to use, download, and fork on GitHub. This helps us be more agile in the development of the book, and helps keep the often changing code base of new versions and new technologies as up to date as possible. Unfortunately, however, there will be rare cases when it is not possible for us to have downloadable code samples available until publication.

When we publish the book, the code files will also be available to download from the Packt website.

How accurate is the publication date? Chevron down icon Chevron up icon

The publication date is as accurate as we can be at any point in the project. Unfortunately, delays can happen. Often those delays are out of our control, such as changes to the technology code base or delays in the tech release. We do our best to give you an accurate estimate of the publication date at any given time, and as more chapters are delivered, the more accurate the delivery date will become.

How will I know when new chapters are ready? Chevron down icon Chevron up icon

We'll let you know every time there has been an update to a course that you've bought in Early Access. You'll get an email to let you know there has been a new chapter, or a change to a previous chapter. The new chapters are automatically added to your account, so you can also check back there any time you're ready and download or read them online.

I am a Packt subscriber, do I get Early Access? Chevron down icon Chevron up icon

Yes, all Early Access content is fully available through your subscription. You will need to have a paid for or active trial subscription in order to access all titles.

How is Early Access delivered? Chevron down icon Chevron up icon

Early Access is currently only available as a PDF or through our online reader. As we make changes or add new chapters, the files in your Packt account will be updated so you can download them again or view them online immediately.

How do I buy Early Access content? Chevron down icon Chevron up icon

Early Access is a way of us getting our content to you quicker, but the method of buying the Early Access course is still the same. Just find the course you want to buy, go through the check-out steps, and you’ll get a confirmation email from us with information and a link to the relevant Early Access courses.

What is Early Access? Chevron down icon Chevron up icon

Keeping up to date with the latest technology is difficult; new versions, new frameworks, new techniques. This feature gives you a head-start to our content, as it's being created. With Early Access you'll receive each chapter as it's written, and get regular updates throughout the product's development, as well as the final course as soon as it's ready.We created Early Access as a means of giving you the information you need, as soon as it's available. As we go through the process of developing a course, 99% of it can be ready but we can't publish until that last 1% falls in to place. Early Access helps to unlock the potential of our content early, to help you start your learning when you need it most. You not only get access to every chapter as it's delivered, edited, and updated, but you'll also get the finalized, DRM-free product to download in any format you want when it's published. As a member of Packt, you'll also be eligible for our exclusive offers, including a free course every day, and discounts on new and popular titles.