Skip to content

Latest commit

 

History

History
812 lines (507 loc) · 16.8 KB

File metadata and controls

812 lines (507 loc) · 16.8 KB
title Introduction
textbook #introduction

introduction

Design of Autonomous Systems

csci 6907/4907-Section 86

Prof. Sibin Mohan


autonomy


autonomy

what is "autonomy"?

autonomy

what is "autonomy"?

we see various examples of it...


what are the aspects of autonomy?


what are the aspects of autonomy?

perception how do you "see" the world around you?

what are the aspects of autonomy?

perception how do you "see" the world around you?
sensing various ways to perceive the world around you (e.g, camera, LiDar)

what are the aspects of autonomy?

perception how do you "see" the world around you?
sensing various ways to perceive the world around you (e.g, camera, LiDar)
compute what do you "do" with the information about the world?

what are the aspects of autonomy?

perception how do you "see" the world around you?
sensing various ways to perceive the world around you (e.g, camera, LiDar)
compute what do you "do" with the information about the world?
motion do your computations result in any "physical" changes?

what are the aspects of autonomy?

perception how do you "see" the world around you?
sensing various ways to perceive the world around you (e.g, camera, LiDar)
compute what do you "do" with the information about the world?
motion do your computations result in any "physical" changes?
actuation what "actions", if any, do you take for said physical changes?

what are the aspects of autonomy?

perception how do you "see" the world around you?
sensing various ways to perceive the world around you (e.g, camera, LiDar)
compute what do you "do" with the information about the world?
motion do your computations result in any "physical" changes?
actuation what "actions", if any, do you take for said physical changes?
planning can you do some "higher order" thinking
(i.e., not just your immediate next move)

let us define autonomy


let us define autonomy

Autonomy is the ability to

let us define autonomy

Autonomy is the ability to
perform given tasks

let us define autonomy

Autonomy is the ability to
perform given tasks
based on the system's perception

let us define autonomy

Autonomy is the ability to
perform given tasks
based on the system's perception
without human intervention

let us define autonomy

Autonomy is the ability to
perform given tasks
based on the system's perception
without human intervention

autonomous systems

cyber

autonomous systems

cyber

autonomous systems

cyber

autonomous systems

cyber

autonomous systems

cyber
physical

autonomous systems

cyber
physical

autonomous systems

cyber
physical

autonomous systems

cyber
physical

autonomous systems

cyber
physical

hence, they fall under the class of systems → cyber-physical systems


sensors and actuators...


sensors and actuators...

...are everywhere!


sensors and actuators...

...are everywhere!

the embedded components → interactions with the real world


sensing and actuation in the real world


sensing and actuation in the real world

consider the following example of two cars... Two cars, one behind the over, top view


sensing and actuation in the real world

the second car is approaching the first Two cars, one behind the over, top view, an arrow to the left on top of the car on the right


sensing and actuation in the real world

sensors → constantly gathering data/sensing


sensing and actuation in the real world

sensors → constantly gathering data/sensing

  1. periodic sensing

sensing and actuation in the real world

on detection (of other car) → quickly compute what to do


sensing and actuation in the real world

on detection (of other car) → quickly compute what to do

  1. periodic sensing
  2. computation

sensing and actuation in the real world

take physical action → say by braking in time


sensing and actuation in the real world

take physical action (actuation) → say by braking in time

  1. periodic sensing
  2. computation
  3. actuation

  1. periodic sensing
  2. computation
  3. actuation

  1. periodic sensing
  2. computation
  3. actuation

  1. periodic sensing
  2. computation
  3. actuation


"control"


remember this?

on detection (of other car) → quickly compute what to do


remember this?

on detection (of other car) → quickly compute what to do


"quickly" compute

complete computation/actuation → before a deadline


quickly compute

complete computation/actuation → before a deadline



real-time system


finally, we come back to sensing


finally, we come back to sensing


  • we see one sensor (maybe LiDAR)

finally, we come back to sensing


  • we see one sensor (maybe LiDAR)
  • reality → multiple sensors

finally, we come back to sensing


  • we see one sensor (maybe LiDAR)
  • reality → multiple sensors
  • cameras, radars, lidar, etc.


multiple sensors in an autonomous vehicle → need to combine them somehow


multiple sensors in an autonomous vehicle → need to combine them somehow

sensor fusion


once we have information from the sensors (fused or otherwise)...

state estimation (kalman filter, ekf)


so far, we've (briefly) talked about...

-v-

so far, we've (briefly) talked about...

sensing

-v-

so far, we've (briefly) talked about...

actuation

-v-

well, we haven't discussed it...

...but there is an operating system (OS) in there

-v-

well, we haven't discussed it...

...but there is an operating system (OS) in there

and it includes real-time mechanisms

-v-

we also (again, briefly) discussed...

ekf

note: ekf is versatile; can be used for sensor fusion, slam, etc.

-v-

all of it integrates with...

control

-v-

some real-time functions in there...

like braking, engine control


if we design such a system...


if we design such a system...

is it "autonomous"?


missing some "higher order" functions


missing some "higher order" functions

so, from the perspective of the autonomous system,


missing some "higher order" functions

so, from the perspective of the autonomous system,

  • where am I?

missing some "higher order" functions

so, from the perspective of the autonomous system,

  • where am I?
  • where do I need to go?

missing some "higher order" functions

so, from the perspective of the autonomous system,

  • where am I?
  • where do I need to go?
  • how do I get there?

missing some "higher order" functions

so, from the perspective of the autonomous system,

  • where am I?
  • where do I need to go?
  • how do I get there?
  • what obstacles may I face?

missing some "higher order" functions

so, from the perspective of the autonomous system,

  • where am I?
  • where do I need to go?
  • how do I get there?
  • what obstacles may I face?
  • how do I avoid them?

let's not forget the most important question of all...

why is gamora?


high-order functions

how do we tackle these issues:

  • where am I?
  • where do I need to go?
  • how do I get there?
  • what obstacles may I face?
  • how do I avoid them?

high-order functions


  • where am I?
  • where do I need to go?
  • how do I get there?
  • what obstacles may I face?
  • how do I avoid them?

let's look at additional functionality that is required

-v-

slam

simultaneous localization and mapping

figure out where we are

-v-

waypoint detection

how to move in the right direction at the micro level, i.e., find waypoints

-v-

yolo

"you only live once"

-v-

yolo

"you only look once"

-v-

yolo

"you only look once"

object detection model that uses convolutional neural networks (cnns)

-v-

object avoidance

avoid objects in immediate path

-v-

path planning

how to get to destination at the macro level → uses waypoints


compute platform

to run all of these functions

low power, embedded platforms


still some non-functional requirements remain

note: any guesses what they could be?


safety!

safety of → operator, other people, the vehicle, environment


safety!

safety of → operator, other people, the vehicle, environment

cross-cutting issue → affected by all parts of system


security

cross-cutting issue → can affect all components


a (loose) map of this course