real-time support for mobile robotics k. ramamritham (+ li huan, prashant shenoy, rod grupen)

23
Real-Time Support for Mobile Robotics K. Ramamritham (+ Li Huan, Prashant Shenoy, Rod Grupen)

Upload: phillip-richardson

Post on 13-Dec-2015

216 views

Category:

Documents


0 download

TRANSCRIPT

Real-Time Support for Mobile Robotics

K. Ramamritham

(+ Li Huan, Prashant Shenoy, Rod Grupen)

Background

A team of mobile robots

Collaborate with each other to achieve a common goal Search for trapped

people in a burning building

Sensors

Processor

Wireless link

Motivation

To accomplish a search: Sensor tasks : acquire sensor data Processing tasks : process sensor data Motor tasks : drive the movement of

robots

Problem

Dynamic environment Robots move as a team Team may change in the size

Hardware constraints for some tasks Sensor tasks are pre-allocated to robots

Which robots run which tasks and when? Where to allocate processing tasks? When to run tasks?

Outline

Motivation System model Allocation and scheduling algorithms Experimental results Related work and conclusions

Problem Model

Leader

Follower

Pair-wise relationship to control the movement

Leader Follower

Two control strategies

Push:

follower specifies the search area of the leader Pull:

leader searches the area, pulls the follower behind him

Task Graph (Push)

POS Moto

r

Motor IR

P2

P1

P3

Leader

Follower

Push

Construct the

map of walls

Choose search area

Compute the next locationof the leader

Task Graph (Pull)

P2

POSMoto

r

P1

Motor

LeaderIR

P3

Follower

Pull

Construct the map of

wallsChoose search area

Compute the next location

of the follower

Task Model and Goal

Tasks are abstracted using task graphs Periodic tasks with constraints :

Deadline : each instance has a relative deadline Location : sensor tasks are pre-assigned to

robots Precedence : sensor tasks processing tasks motor tasks

Goal: Allocate and schedule tasks on robots

All constraints are satisfied

Why is this a Hard Problem?

Possible strategies dynamically change as the size changes Increase exponentially as

the team size scales Need to efficiently find a

feasible strategy onlineLeader

Follower

Push

Push

Follower

Leader

Pull

Pull

{Push, Push}, {Push, Pull}, {Pull, Push},

{Pull, Pull}

Overall Approach

Allocate tasks to appropriate robots Minimize

communication Balance

processor workload

Find a feasible schedule

Deadlines are met

Precedence constraints are satisfied

Can smart allocation improve

schedulability?

Task Allocation

Step 1 : Choose an unallocated task Tj

Step 2 : Choose an appropriate processor

Communication Cost Ratio (CCR):

CCRi, j

=

comm_cost(Ti Tj )

Ei + Ej

Ei: Execution time of Ti

Step 1: How to Choose a Task

Consider tasks such that all their preceding tasks have been allocated

Try to minimize communication cost Two techniques to choose Tj :

Greedy: consider individual cost

Aggressive: consider total cost from the same processor

, ,max , i j x j x jCCR CCR T T

, ,maxi j x jx

CCR CCR

Step2: How to Allocate a Task

If Tj is chosen, and TiTj Try to balance and minimize workload Assign Tj to the same processor as Ti

So long as the processor does not become the most heavily loaded processor

Network communication between Ti and Tj is eliminated

Otherwise, put Tj to the processor with the least utilization

Allocation Example

Step 1: Consider T4,T5

T T1 T2 T3 T4 T5

Ei 2 3 3 2 3

Pi 6 18 18 18 18

T1 T3T2

T4 T5

Robot 1 Robot 2

1/4

1/5

1/5 1/6 1/6

Greedy :CCR1,4 = 1/4

Choose T4

Aggressive:

CCR2,5+CCR3,5=1/3

Choose T5

Step 2: find the robot

Currently : U1 = U2 = 1/3

Greedy: Assign T4 to Robot 1

Aggressive: Assign T5 to Robot 2

1/3

Making Scheduling Decisions

Have allocated tasks to processors, need to find a feasible schedule

Possible heuristic functions EDF (Min_D) Minimum laxity first (Min_L) Earliest-start-time first (Min_S) Weighted combinations of {deadline, earliest-start-time, laxity}

Outline

Motivation Problem setting Allocation and scheduling algorithms Experimental results

Simulation results Application analysis

Related work and conclusions

Simulation Settings

Homogeneous system Number of processors and tasks are varying Task sets are randomly generated, each

Metric: SuccessRatio (SR):

N succ: number of successfully scheduled task setsN: total number of tested task sets

1( / )

ni i

iE P m

succSR N N

Scheduling Heuristic

Min_S is the best single heuristic Encode

precedence constraints

Min_D + W×Min_S is the best overall Both deadline and

precedence are taken into account

2 4 6 8 10 120.0

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1.0

SR (#

Task

= 1

2, W

= 4

)

Number of Processors

Min_D+W*Min_Lax Min_D+W*Min_S Min_L Min_S Min_D

Performance of Allocation Algorithms

Aggressive outperforms the other methods.

The improvement is larger when the resources are tight.

2 4 6 8 10 120.0

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1.0 Random Greedy Aggressive

SR(T

ask

= 20

, W

= 4

)Number of Processors

2 4 6 8 10 120.0

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1.0 Random Greedy Aggressive

SR(T

ask

= 12

, W

= 4

)

Number of Processors

Three Robots, period = 220 ms

{Push,Pull} is not feasible Metrics to choose the optimal one

Min max laxity : {Pull, Push} Prune the infeasible strategies as the team

size scales

Analysis With Mobile Robots

strategy {Push, Push}

{Pull, Pull} {Push, Pull}

{Pull, Push}

Robot 1 195 205 223 195

Robot 2 203 209 220 206

Robot 3 211 203 231 203

Completion time for tasks on each robot

Related Work

Task allocation and scheduling in distributed environment.

Branch-and-bound search [Peng 97] Period-based method of load partitioning and

assignment [Abdelzaher 00] Static allocation for tasks with duplication and

precedence constraints [Ramamritham 95] Utilization bound for schedulability

analysis Uniprocessor, independent tasks [Liu&Layland 73] Multiprocessor , P-fairness scheduling [Baruah 96] EDF, RMA [Andersson 01], [Baruah 01], [Funk 01],

[Goossens 02], [Srinivasan 02]

Conclusions and Future Work

A team of mobile robots to achieve a goal Allocate and schedule real-time tasks

with constraints for dynamic robotic teams

Smart allocation of tasks can improve the schedulability of the whole system

Future work : Heterogeneous systems

http://lass.cs.umass.edu/