Robotics - Computer Science and...

25
Artificial Intelligence Robotics

Transcript of Robotics - Computer Science and...

Page 1: Robotics - Computer Science and Engineeringweb.cse.ohio-state.edu/~barker.348/cse3521_su19/Robotics.pdf · Robotics – Mars Rovers • Allow human beings to go where might not otherwise

Artificial Intelligence

Robotics

Page 2: Robotics - Computer Science and Engineeringweb.cse.ohio-state.edu/~barker.348/cse3521_su19/Robotics.pdf · Robotics – Mars Rovers • Allow human beings to go where might not otherwise

Outline

• What is a robot?• Uses for robots

– Application domains• Hardware• Algorithms

– Perception– Planning– Moving

Page 3: Robotics - Computer Science and Engineeringweb.cse.ohio-state.edu/~barker.348/cse3521_su19/Robotics.pdf · Robotics – Mars Rovers • Allow human beings to go where might not otherwise

What is a robot?• Our textbook (R&N) says:

– “Robots are physical agents that perform tasks by manipulating the physical world”

• “Agent”, perceiving and acting– A very broad definition, and covers a lot of things

we might not consider “robots” (e.g., animals)– More typically, we expect robots to be artificial

constructs rather than living ones• Generally expect them to be powered by an artificial

intelligence …• … but not always. Remotely operated vehicles (such

as “drones”) are often considered to be robots

Page 4: Robotics - Computer Science and Engineeringweb.cse.ohio-state.edu/~barker.348/cse3521_su19/Robotics.pdf · Robotics – Mars Rovers • Allow human beings to go where might not otherwise

Uses for robots• Replacements/Supplements for human labor

– Industrial robots• First use of robots was in the auto industry

– Assembling cars, welding

• Such robots have now become standard in many industries

– Mining robots– “Self-driving” cars– Domestic assistants

• Roomba vacuum cleaner• Honda’s Asimo

Page 5: Robotics - Computer Science and Engineeringweb.cse.ohio-state.edu/~barker.348/cse3521_su19/Robotics.pdf · Robotics – Mars Rovers • Allow human beings to go where might not otherwise

Uses for robots (continued)

• Enhancements for human capabilities– Surgical assistant for microsurgery or remote surgery– Underwater salvage recovery– Unmanned Aerial Vehicles (UAVs aka “drones”)– Remote bomb defusing by police bomb squads

• Going where people can’t go– Space/Deep sea exploration

• Mars rover missions

– Hazardous environments/activities• Cleanup of Three Mile Island

Page 6: Robotics - Computer Science and Engineeringweb.cse.ohio-state.edu/~barker.348/cse3521_su19/Robotics.pdf · Robotics – Mars Rovers • Allow human beings to go where might not otherwise

Hardware• Being physical agents, robots need some

kind of hardware to interact with the real world– Sensors and Effectors– Give the robot a way to perceive and act with

its environment– Remember:

• Input from the sensors are used by the agent controlling the robot to make decisions

• Effectors are used to produce the results of those decisions on the environment

Page 7: Robotics - Computer Science and Engineeringweb.cse.ohio-state.edu/~barker.348/cse3521_su19/Robotics.pdf · Robotics – Mars Rovers • Allow human beings to go where might not otherwise

Hardware - Sensors

• Robots can make use of active sensors and passive sensors– Passive sensors

• Capture signals generated by elements of the environment

• Cameras, microphones

– Active sensors• Send energy into the environment and observe the result• Sonar, radar

– Provide more information than passive sensors, but use more energy

Page 8: Robotics - Computer Science and Engineeringweb.cse.ohio-state.edu/~barker.348/cse3521_su19/Robotics.pdf · Robotics – Mars Rovers • Allow human beings to go where might not otherwise

Hardware - Sensors• Three common types of sensors

– Range finders• Measure distance to other objects in the environment• Sonar, optical range finders (active), stereo vision (passive)

– Location sensors• Determine where the robot is in its environment• GPS, cameras

– Proprioceptive sensors• Provide information about the robot’s own motion• Inertial sensors – measure real changes in velocity• Force sensors – measures how much real force manipulators are applying• Odometers – measure how many revolutions per second wheels are turning• Etc.

Page 9: Robotics - Computer Science and Engineeringweb.cse.ohio-state.edu/~barker.348/cse3521_su19/Robotics.pdf · Robotics – Mars Rovers • Allow human beings to go where might not otherwise

Hardware - Effectors

• Effectors will vary from robot to robot– Depend upon the task the robot was built– Robot arms for industrial robots– Wheels/legs for mobile robots– Effectors also require some kind of power source

• Most use electric motors powered by battery power• Solar panels on the Mars rovers

– Regardless of the type of effector, current status is kept track of in the robot’s state

• Need to know current configuration to plan next action

Page 10: Robotics - Computer Science and Engineeringweb.cse.ohio-state.edu/~barker.348/cse3521_su19/Robotics.pdf · Robotics – Mars Rovers • Allow human beings to go where might not otherwise

Localization And Mapping

• A core problem for autonomous mobile robots– Mapping – gathering information from a robot’s sensors into a model

of its environment • What does the world look like?

– Localization – estimating where the robot is and what position it has relative to its map

• Where am I?

– Which do we do first?• Can’t perform decent mapping without knowing where you are and what position

your sensors are in• Can’t perform decent localization without having a good map

Page 11: Robotics - Computer Science and Engineeringweb.cse.ohio-state.edu/~barker.348/cse3521_su19/Robotics.pdf · Robotics – Mars Rovers • Allow human beings to go where might not otherwise

Localization and Mapping

• Consider just the problem of “localization” in a 2D world– Assume we have a decent map, how do we find our position?– We need to construct a state that describes our position and

heading in the map– What is our prediction of where we will be at time t+1?

• Expressed as a function of current state (position & heading) and velocities

– But also have sensors!• Use our sensors to detect landmarks whose positions we know from our map

– Using our motion model and our sensor data we can come up with a belief state for the position of our robot:

• P(Xt | z1:t, a1:t-1)– a1:t-1 are all of the actions the robot has taken– z1:t is all of the sensor readings the robot has taken– Xt is the current position and heading state

Page 12: Robotics - Computer Science and Engineeringweb.cse.ohio-state.edu/~barker.348/cse3521_su19/Robotics.pdf · Robotics – Mars Rovers • Allow human beings to go where might not otherwise

Localization and Mapping

• What kind of model do we use to track this belief state over time?– Model the uncertainty of the robot’s location relative to its

surroundings – As it moves, the uncertainty of its position increases– As it finds landmarks and can adjust its belief state, its uncertainty

decreases– (Kalman Filtering is one such approach)

Page 13: Robotics - Computer Science and Engineeringweb.cse.ohio-state.edu/~barker.348/cse3521_su19/Robotics.pdf · Robotics – Mars Rovers • Allow human beings to go where might not otherwise

Simultaneous Localization and Mapping (SLAM)

• What about when you don’t have a map???– Expand the idea of localization beyond just the robot– Extend the state vector to include not just the robot’s location, but

also the location of the landmarks• As the robot moves through its environment, it updates the position of found

landmarks in its state vector• This information is used to constantly build and revise its internal map• Internal map used to constantly improve its localization – both of itself and of

the landmarks it is tracking

• SLAM demo:– 2d: http://www.youtube.com/watch?v=m3L8OfbTXH0

Page 14: Robotics - Computer Science and Engineeringweb.cse.ohio-state.edu/~barker.348/cse3521_su19/Robotics.pdf · Robotics – Mars Rovers • Allow human beings to go where might not otherwise

Robotics – Mars Rovers

• Allow human beings to go where might not otherwise go– “To boldly go…”

• Since 1996, four rovers have been sent to Mars– Spirit landed in 2004 and explored the surface until 2009– Opportunity landed in 2004– Curiosity landed in 2012 with updated technology

• Provide a way for humans to interact with Mars from Earth– But not just big “remote control cars”– Lag in communication from Earth to Mars means rovers must largely plan their own

movements

Page 15: Robotics - Computer Science and Engineeringweb.cse.ohio-state.edu/~barker.348/cse3521_su19/Robotics.pdf · Robotics – Mars Rovers • Allow human beings to go where might not otherwise

Robotics – Mars Curiosity

• The Curiosity Rover’s programming represents a “major improvement” in the AI of the Mars rovers (NASA JPL)– Earlier rovers could “plan one or two moves on their own”– Curiosity can plan a route up to 50 meters ahead, including

evading rocks, crevasses, and other surface features without human intervention

– Navigation system integrates percepts from a variety of sensors and cameras to plan and execute travel plans

• System hardware of the Curiosity’s “brains”:– 200MHz RAD750 processor, 2 Gb of Flash Memory for storage– All built to operate in extreme radiation environments

Page 16: Robotics - Computer Science and Engineeringweb.cse.ohio-state.edu/~barker.348/cse3521_su19/Robotics.pdf · Robotics – Mars Rovers • Allow human beings to go where might not otherwise

Robotics – Mars Curiosity• Sensors

– Four pairs of “Hazard Avoidance Cameras”• Black and white cameras, mounted on front and rear• Provide 120 degree field of view• Use pairs of cameras to get stereo map of terrain out to 3 meters away from

the rover• Data from these cameras used by navigation system to plan navigation

choices– Two pairs of “Navigation Cameras”

• Two black and white cameras, mounted on the mast• Each provide a 45 degree field of view• Provide a complementary view of terrain for the navigation system

– Four “Science Cameras”• Used for data collection purposes to execute the actual mission of the probe• Not used by the navigation system

Page 17: Robotics - Computer Science and Engineeringweb.cse.ohio-state.edu/~barker.348/cse3521_su19/Robotics.pdf · Robotics – Mars Rovers • Allow human beings to go where might not otherwise

Robotics – Mars Curiousity

• Sensors (cont)– Inertial Measurement Unit (IMU)

• Provides 3-axis information on rover’s position• Fed into navigation system to support travels and keep

rover upright• Effectors

– Wheels• Six all-terrain wheels – each with an independent motor• Front and rear wheels have independent steering

– 360 turns!• Top speed of 4 cm (1.5”) per second (450 ft. per hour!)

Page 18: Robotics - Computer Science and Engineeringweb.cse.ohio-state.edu/~barker.348/cse3521_su19/Robotics.pdf · Robotics – Mars Rovers • Allow human beings to go where might not otherwise

Robotics – Mars Curiosity

Page 19: Robotics - Computer Science and Engineeringweb.cse.ohio-state.edu/~barker.348/cse3521_su19/Robotics.pdf · Robotics – Mars Rovers • Allow human beings to go where might not otherwise

Robotics – Mars Curiosity• Effectors (cont)

– Arm• Three joints – “shoulder”, “elbow”, and “wrist”• Enables enough flexibility to work the way a human

geologist would– Hand

• Contain five different data collection probes• Can spin through a 350 degree turning range

– Antennas• Ultra High Frequency (UHF) antennas to communicate

with the NASA Odyssey base station on Mars– Relays communications to Earth

Page 20: Robotics - Computer Science and Engineeringweb.cse.ohio-state.edu/~barker.348/cse3521_su19/Robotics.pdf · Robotics – Mars Rovers • Allow human beings to go where might not otherwise

Robotics – Mars Rovers• Mars Rovers require autonomy for:

– Landing• The round-trip communication lag means by the time the rover hits the

atmosphere there’s no time to give it commands before it hits the surface• Descent Image Motion Estimation System (DIMES)

– Makes use of radar, attitude measurements, and camera images to estimate horizontal velocity for a safe landing

– Crucial for getting the horizontal velocity low enough to get Spirit to safely land on its airbags

– Interesting note – this software gets overwritten from Earth on the rover’s onboard computers once landing is complete and replaced with mission software

– Terrain Assessment• Using stereo images from the cameras, the rovers identify hazards and

obstacles in 3D• This information can be used by remote drivers on Earth to plan routes or for

the rover’s own local path selection AI

Rover autonomy information courtesy of NASA JPL: http://www-robotics.jpl.nasa.gov/publications/Mark_Maimone/mer_autonomy_icra_2007.pdf

Page 21: Robotics - Computer Science and Engineeringweb.cse.ohio-state.edu/~barker.348/cse3521_su19/Robotics.pdf · Robotics – Mars Rovers • Allow human beings to go where might not otherwise

Robotics – Mars Rovers• Mars Rovers require autonomy for (con’t):

– Local Path Selection• The rover corrects its path as it drives to a pre-determined goal• Combined with Terrain Assessment, the rover can detect obstacles and

steer around them without human intervention– Allows rovers to drive safely into terrain that has only been

previously seen at poor resolution

– Placement of Scientific Instruments• The scientific instruments on the rovers were originally designed to be

used via remote control– Human confirmation was required to make sure that devices were not

accidentally destroyed by smashing them into rocks• Autonomous instrument placement was added to the rovers in 2005

– Computes trajectories, makes sure that collisions do not occur and keeps the instruments safe

Page 22: Robotics - Computer Science and Engineeringweb.cse.ohio-state.edu/~barker.348/cse3521_su19/Robotics.pdf · Robotics – Mars Rovers • Allow human beings to go where might not otherwise

Robotics – Mars Rovers• Mars Rovers require autonomy for (con’t):

– Global Path Selection• Also added in 2005 was the capability for Global Path Selection• Local path selection could only plan one or two steps ahead

– Greedy path selection algorithm• The global path selection algorithm maintains a larger world map

– Provides the ability to plan paths through a 50x50 meter space at a time

Page 23: Robotics - Computer Science and Engineeringweb.cse.ohio-state.edu/~barker.348/cse3521_su19/Robotics.pdf · Robotics – Mars Rovers • Allow human beings to go where might not otherwise

Robotics – Mars AEGIS• Another example of AI in the Mars Rover is the AEGIS

experimental AI– Autonomous Exploration for Gathering Increased Science

• Making the project name fit the acronym is a time-honored technique :)– Observation: Improvements in Rover navigation software have led to

the Rovers moving faster autonomously• This has led to less capability for scientists on Earth to direct the Rover’s

data acquisition during travels– Idea: Let the Rover autonomously determine what looks like an

interesting sample to measure without waiting to be told what to do• AEGIS capabilities added to Opportunity rover in 2009

Page 24: Robotics - Computer Science and Engineeringweb.cse.ohio-state.edu/~barker.348/cse3521_su19/Robotics.pdf · Robotics – Mars Rovers • Allow human beings to go where might not otherwise

Image and AEGIS info courtesy NASA JPL: http://aegis.jpl.nasa.gov/publications/estlin_isairas2010_aegis.pdf

Robotics – Mars AEGIS• When AEGIS runs, a series of steps are used to

evaluate potential targets– Images are taken from the navigation system– Targets (rocks) are found in the images using edge

detection and the “Rockster” algorithm to identify which of these belong to rocks

– Features are extracted from the rock images:• Albedo (reflectance properties of the rock)• Size• Shape• Location

– Targets are prioritized based on location and attributes of the features

• Features of interest are defined by scientists before AEGIS starts looking

– Data collected from highest priority targets• Multiple images from multiple angles to be transmitted back

to Earth

Page 25: Robotics - Computer Science and Engineeringweb.cse.ohio-state.edu/~barker.348/cse3521_su19/Robotics.pdf · Robotics – Mars Rovers • Allow human beings to go where might not otherwise

Summary

• What is a robot?• Hardware sensors and effectors• Localization and mapping• Mars Rovers specifics