Improving Quality of Decision-Making in Android Robots Anshuman - - PowerPoint PPT Presentation

improving quality of decision making in android robots
SMART_READER_LITE
LIVE PREVIEW

Improving Quality of Decision-Making in Android Robots Anshuman - - PowerPoint PPT Presentation

Improving Quality of Decision-Making in Android Robots Anshuman Radhakrishnan, Nikhil Murthy, Jennie Wang Our Team - Batteries in Black: FIRST Tech Challenge team since 2007 - Attended the World Championships multiple times - Received the


slide-1
SLIDE 1

Improving Quality of Decision-Making in Android Robots

Anshuman Radhakrishnan, Nikhil Murthy, Jennie Wang

slide-2
SLIDE 2

Our Team

  • Batteries in Black: FIRST Tech Challenge team since

2007

  • Attended the World Championships multiple times
  • Received the “Sensor Savant”Judge’s Award at the 2015

World Championship

slide-3
SLIDE 3

FIRST and FIRST Tech Challenge

  • FIRST: For Inspiration and Recognition of Science and Technology
  • FTC (FIRST Tech Challenge): FIRST program for high schoolers that

provides an opportunity for “real world engineering”

  • Students design and build a robot and program it using Java-based software
slide-4
SLIDE 4

Components of an FTC Robot

slide-5
SLIDE 5
  • Over the course of the game, there is an Autonomous portion where

the robot needs to operate without human input

  • In this portion, more points can be scored if the robot can sense its

environment and make decisions

  • Examples of Decisions to be made:
  • Choosing between two different paths if one path is blocked
  • Stopping the robot before it tips
  • Determining the position of a randomly placed object

Decision Making

slide-6
SLIDE 6

Challenges in Decision Making and Motivation

  • Dynamic environment
  • Variations in positions and conditions of game elements
  • Motion of other robots
  • Decision must be made based off of external factors
  • Must be thoroughly tested
slide-7
SLIDE 7

Machine Learning

  • Used widely in computer science and other fields
  • “Gives computers the ability to learn without being

explicitly programmed” through data

  • Allows robots to learn from past scenarios and adapt to

new situations

  • Data is provided in terms of values for “features” or

variables which are suited to the task

slide-8
SLIDE 8

Machine Learning: Context of Robotics

slide-9
SLIDE 9

Testing of Algorithms

  • When collecting data, we partitioned our data into training and testing

sets- one set is used to develop the model, and the other is used to evaluate the model

  • After performing an evaluation of the test set accuracy, the model is

implemented into the main Autonomous routine

  • There may also be a cross-validation set used to tune

hyperparameters for an algorithm, but that was not needed here

slide-10
SLIDE 10

Classification vs Regression

  • Classification involves identifying to which category

something belongs to

  • Regression involves estimating the value of some

response variable

  • In robotics, we are more concerned with Classification
slide-11
SLIDE 11

Survey of Classification Methods

  • Logistic Regression
  • Fits a Sigmoid Function to Data and returns a Probability
  • Support Vector Machines
  • Finds the optimal separator between classes
  • Naive Bayes
  • Assumes feature independence to return a Probability
  • Decision Tree Classifiers
  • Use Decision Trees to map feature values to classes
  • Neural Networks
  • Used in Deep Learning
slide-12
SLIDE 12

Why Logistic Regression is preferred (for Robotics)

  • Easy to interpret (returns a Probability)
  • Overfitting can be reduced with Regularization
  • Easy to update the model (Online Learning)
  • Works better for data that is not cleanly separable

(probability threshold can be adjusted)

slide-13
SLIDE 13

Implementation

  • scikit-learn (Python)
  • caret (R)
  • Octave/Matlab
slide-14
SLIDE 14

Case Studies

  • Case Study 1: Use an IR seeker sensor to determine the

position of an IR beacon from a set of possible positions

  • Case Study 2: Use a Color Sensor to determine the color of a

Beacon (Red or Blue)

  • Case Study 3: Use internal sensors in an Android Phone to

determine the robot’s orientation, allowing the robot to detect tipping

slide-15
SLIDE 15
  • Determine which position an IR beacon is placed
  • Ambient Lighting Conditions can make detecting the IR

Beacon difficult

  • Machine learning allows the robot to determine this position

in different environments

  • Collected data of the possible orientations of the beacon
  • Using a One vs. All method with three logistic regressions,

the position of the IR beacon can be determined

Case Study 1: IR Seeker

slide-16
SLIDE 16
  • Determine whether a color is either red or blue

(randomly assigned)

  • A machine learning algorithm allows the robot

to classify the color under variable lighting conditions

  • Use an RGB sensor that outputs many values
  • These are inputs into the machine learning

algorithm

Case Study 2: Color Sensor

slide-17
SLIDE 17

Case Study 2: Machine Learning Program

  • Four datasets were used for training, four for testing
  • Data was averaged over time for each training dataset
  • Tested under four different lighting conditions
  • Algorithm performed with 100% accuracy on predicting

the right color

  • These parameters correspond to each feature (column

vector shown to the left)

slide-18
SLIDE 18

Case Study 3: Orientation Determination

  • Use internal sensors within the phone
  • Collected data from five phones in five different
  • rientations
  • 60% of the data was used for training
  • 40% was used for testing
  • Used to detect when the robot is tipping and in what

direction (Multiclass Classification)

slide-19
SLIDE 19

Case Study 3: Data

  • Sensor data gathered from the internal sensors in each position (1 through 5)
slide-20
SLIDE 20

Case Study 3: Confusion Matrix

  • Confusion Matrix above shows that the algorithm performed with 100%

accuracy

slide-21
SLIDE 21

Future Work

  • Using Neural Networks to tune PID controllers for moving

straight and turning

  • Reinforcement Learning such that the robot can learn to

perform an Autonomous Program with less explicit programming

  • Object Recognition with Deep Learning
slide-22
SLIDE 22

Conclusion

  • We investigated utilizing machine learning to improve decision-making

in the context of robotics

  • The key contributions of this presentation are:
  • Developed a process to determine when Machine Learning is

applicable in Robotics

  • Identified key algorithms to use and determined a good algorithm

for decision-making in robotics

  • Performed several Case Studies in the context of the FIRST Tech

Challenge