ebook img

DTIC ADA438794: Real-Time Support for Mobile Robotics PDF

0.36 MB·English
Save to my drive
Quick download
Download
Most books are stored in the elastic cloud where traffic is expensive. For this reason, we have a limit on daily download.

Preview DTIC ADA438794: Real-Time Support for Mobile Robotics

Real-Time Support for Mobile Robotics (cid:0) HuanLi,JohnSweeney,KrithiRamamritham,Roderic Grupen,andPrashantShenoy Departmentof ComputerScience, UniversityofMassachusetts, Amherst,MA 01003 (cid:1) lihuan,sweeney,krithi,grupen,shenoy @cs.umass.edu (cid:2) Abstract createanetworktopreservequalityofservicebetweenthe operatorandthesearchrobot.Theleadrobotcanthuspene- Coordinated behavior of mobile robots is an important tratefurtherintotherubbleattheexpenseofcommunication emerging application area. Different coordinated behav- latencies and distributed control overhead. One instantia- iors can be achieved by assigning sets of control tasks, or tionofsuchastrategyconstructsaseries,kinematicchainof strategies,torobotsinateam. Thesecontroltasksmustbe mobilerobotswhereeachofthemactivelypreservesLine- scheduled either locally on the robot or distributed across Of-Sight (LOS) [27] and intra-network bandwidth. In the theteam. Anapplicationmayhavemanycontrolstrategies simplestcase,pairwisecoordinatedcontrollersweredevel- todynamicallychoosefrom,althoughsomemaynotbefea- opedforateamoftworobots. Onecontroller,denotedpull, sible, given limited resource and time availability. Thus, allowsaleaderrobottosearchanareawhile“pulling”afol- dynamic feasibilitycheckingbecomesimportant as theco- lowingrobotbehindit. Theothercontroller,push,allowsa ordinationbetweenrobotsandthetasksthatneedtobeper- follower to specify the search area of the leader, in effect, formedevolveswithtime. Thispaperpresentsanonlineal- “pushing” the leader along. The application constructs a gorithmforfindinga feasiblestrategygivena functionally strategy by assigning push or pull controllers to the entire equivalent set of strategies for achieving an application’s team. Thetaskmodelsforthesetwostrategies,namely,the goals. pushandpullcontrollersthemselves,areshowninFigure1. We present two heuristics for feasibility checking. Both Inthetwotaskgraphs,sensorandmotortasks , , (cid:4)(cid:6)(cid:5)(cid:8)(cid:7) (cid:9)(cid:11)(cid:10)(cid:8)(cid:12)(cid:13)(cid:7) considercommunicationcostandutilizationboundtomake and are preassigned to specific execution sites, while (cid:14) (cid:7) allocation (of tasks to execution sites) and scheduling de- three control tasks , , and may reside on either (cid:15)(cid:17)(cid:16) (cid:15)(cid:19)(cid:18) (cid:20)(cid:21)(cid:18) cisions. Extensive experimental results show the effective- team member, if necessary, to optimize processor utiliza- nessoftheapproaches,especiallyinresource-tightenviron- tionorcommunicationcosts.The and tasksareused (cid:15) (cid:16) (cid:15) (cid:18) ments.Wealsodemonstratetheapplicationofourapproach by the robots to determine current search and LOS areas, toreal-worldscenariosinvolvingteamsofrobotsandshow respectively, while is used for coordinating the desired (cid:20) (cid:18) how feasibility analysis also allows the prediction of the movementsoftherobotssothatLOSismaintainedandthe scalabilityofthesolutiontolargerobotteams. search can make progress. The functionality of the team is not affected by changing the allocations of the control Keywords: Distributed real-time systems, allocation, tasks. Thedifferencesbetweenpushandpullcanbeseenat schedulability,precedenceconstraint thetaskgraphlevel.Forexample,withpush,thecommuni- cation specifiestotheleaderwhichareasitmay (cid:15) (cid:16)(cid:11)(cid:22) (cid:20) (cid:18) search,whilewithpull, tellsthefollowerwhere 1 Introduction (cid:20) (cid:18)(cid:11)(cid:22) (cid:14) (cid:16) itmaymove. Apromisingapplicationforateamofmobilerobotsisto A discussion of how applications generate possible collaboratewitheachother toaccomplisha commongoal, strategiesisbeyondthescopeofthispaper. Usually,appli- forexample,searchingaburningbuildingfortrappedpeo- cationsdeterminetherequiredtypeofcoordinatedbehavior ple. Human operators may direct the search by teleopera- for a team of robots, and generate a set of functionally tion,butwirelesscommunicationsinthesesituationscanbe equivalentstra(cid:23)tegies. Sinceeachstrategyisconstructedby unreliable. Whenasearchrobotventuresoutsideareliable periodicreal-timetasks,astrategythatisvalidattheappli- communication range, a second robot can autonomously cationlevelmaynotalwaysbefeasibleatthesystemlevel. Howtofindfeasible,schedulable,strategiesfromaasetof (cid:3) ThisresearchwassupportedinpartbyDARPASDRDABT63-99-1- 0022andMARSDABT63-99-1-0004 functionallyequivalentstrategies,givenbytheapplication, Report Documentation Page Form Approved OMB No. 0704-0188 Public reporting burden for the collection of information is estimated to average 1 hour per response, including the time for reviewing instructions, searching existing data sources, gathering and maintaining the data needed, and completing and reviewing the collection of information. Send comments regarding this burden estimate or any other aspect of this collection of information, including suggestions for reducing this burden, to Washington Headquarters Services, Directorate for Information Operations and Reports, 1215 Jefferson Davis Highway, Suite 1204, Arlington VA 22202-4302. Respondents should be aware that notwithstanding any other provision of law, no person shall be subject to a penalty for failing to comply with a collection of information if it does not display a currently valid OMB control number. 1. REPORT DATE 3. DATES COVERED 2005 2. REPORT TYPE - 4. TITLE AND SUBTITLE 5a. CONTRACT NUMBER Real-Time Suport for Mobile Robotics 5b. GRANT NUMBER 5c. PROGRAM ELEMENT NUMBER 6. AUTHOR(S) 5d. PROJECT NUMBER 5e. TASK NUMBER 5f. WORK UNIT NUMBER 7. PERFORMING ORGANIZATION NAME(S) AND ADDRESS(ES) 8. PERFORMING ORGANIZATION Defense Advanced Research Projects Agency,3701 North Fairfax REPORT NUMBER Drive,Arlington,VA,22203-1714 9. SPONSORING/MONITORING AGENCY NAME(S) AND ADDRESS(ES) 10. SPONSOR/MONITOR’S ACRONYM(S) 11. SPONSOR/MONITOR’S REPORT NUMBER(S) 12. DISTRIBUTION/AVAILABILITY STATEMENT Approved for public release; distribution unlimited 13. SUPPLEMENTARY NOTES The original document contains color images. 14. ABSTRACT see report 15. SUBJECT TERMS 16. SECURITY CLASSIFICATION OF: 17. LIMITATION OF 18. NUMBER 19a. NAME OF ABSTRACT OF PAGES RESPONSIBLE PERSON a. REPORT b. ABSTRACT c. THIS PAGE 9 unclassified unclassified unclassified Standard Form 298 (Rev. 8-98) Prescribed by ANSI Std Z39-18 POS2 POS2 The rest of the paper is structured as follows. In Sec- H2 L2 M2 H2 L2 M2 tion2,thesystemmodelandgoalaredescribed.Thedetails IR2 IR2 oftheallocationandschedulingalgorithmsareprovidedin Section 3. Resultsofevaluationsfromsimulationarepro- POS1 POS1 videdinSection4. Section 5analyzesareal-wordrobotic H1 M1 H1 M1 application. Section 6 discusses related work. Section 7 IR1 IR1 concludesthepaperbysummarizingtheimportantcharac- strategy strategy (cid:0)(cid:2)(cid:1)(cid:4)(cid:3)(cid:6)(cid:5) (cid:0)(cid:7)(cid:1)(cid:9)(cid:8)(cid:10)(cid:8) teristicsofthealgorithmanddiscussesfuturework. Figure1.TasksinaLeader/Followerteam 2 SystemModeland OurGoal isonegoalofthiswork. 2.1 SystemandTaskModel Theteamsizeisnotfixed,so,asrobotsenterorleavethe team, the application must recompute the set of strategies thatcanbeused. Astheteamsizechanges,theapplication A coordinated team consists of a set of sites (robots), eachsitehavinganidenticalprocessor.Inthispaper,weuse maydeterminethatthegoalofthebehaviormustchangeas well, which, in turn, also changes the set of correct strate- siteandprocessorinterchangeably. Robotsinateamshare gies that can be used. Figure 2 shows a sequence from a acommunicationmedium,whichallowsbroadcastcommu- nicationbetweenrobots. Topreventcontention, communi- simulationwithfiverobotsusingpushandpullcontrollers, whererobot isthe leadersearchingfor thegoalwhichis cationisalsoprescheduled. the square in(cid:11) the lower left of the map. Each time a robot Astrategy,whichisspecifiedattheapplicationlevel,is joins the team and the set of possible strategies changes, denotedatthesystemlevelbyanacyclicTaskGraph(TG). the application must run the on-line scheduling algorithm Toachieveacommongoalfortheteam,asetoffunctionally equivalentstrategiesmayalsobesuppliedbyapplications. todeterminewhichstrategiesarefeasible;otherwise,asys- tem failure may occur. The control tasks that make up a In a TG, nodes represent tasks ( ), directed edges be- (cid:14) (cid:7) strategymay be distributedamong sites in a team, such as tweentasksrepresentprecedence(e.g.,producer/consumer) relationships. Theamountofcommunicationisdenotedas and inthepushandpullmodels. Agoalofour w(cid:15) o(cid:16)(cid:13)r(cid:12)k(cid:15) is(cid:18) todet(cid:20)e(cid:18)rminetheassignmentoftaskstositesinorder a communication cost attached to the edges. All tasks in tooptimizethecoordinatedbehaviorwhileminimizingthe ourmodelareperiodic. Eachtaskischaracterizedbyape- communicationoverheadandworkloadateachsite,thereby riod , Worst CaseExecutionTime(WCET) , andrela- (cid:9) (cid:7) (cid:15) (cid:7) improvingoverallschedulability. tive deadline , here, . Periods can be different (cid:16) (cid:7) (cid:16) (cid:7)(cid:18)(cid:17) (cid:9) (cid:7) fordifferenttasks.Butiftheproducerandtheconsumerrun Asshowninthetaskgraphsofpushandpull,communi- witharbitraryperiods,taskexecutionsmaygetoutofphase, cationbetweentasksisneededto achievecoordination. In whichresultsinlargelatenciesincommunication[21].Har- thispaper,weassumethateachrobotisequippedwithwire- monicityconstraintscansimplifythereading/writinglogic lessbroadcastcommunication. Becauseasharedmultiple- andreducethoselatencies[20]. Harmonicperiodsmayalso access medium is used in the system, contention for the increase the feasible processor utilization bound [25]. To communication medium can occur at run time. We avoid thisend, weassumetheperiodoftheconsumerisamulti- thiscontentionbyschedulingthecommunicationaswell. pleofthatoftherelatedproducer. Assigning tasks with precedence relationships in a dis- tributedenvironmentisingeneralanNP-hardproblem[17], 2.2 OurGoal andevensomeofthesimplestschedulingproblemsareNP- hardinthestrongsense[7]. Systematicallyderivedheuris- Given a set of sites and a set of functionally equivalent ticallocationandschedulingalgorithmsare,therefore,pro- strategies,ourgoalistofindafeasiblestrategy. Astrategy posedandevaluatedinthispaper. isfeasibleifandonlyif: The contributions of this paper are as follows. We de- velop an online algorithm for finding a feasible control withinthe (LeastCommonMultiple)oftaskpe- (cid:19) (cid:20)(cid:20)(cid:15) (cid:14) strategy given a functionally equivalent set of strategies riodsinthatstrategy,eachinstanceofataskissched- for achieving an application’s goals. Specifically, we pro- uled at its schedule start time and the completion of pose two simple but efficient heuristics for allocating con- thisinstancewillnotbelaterthanitsrelativedeadline; trol tasks to distributed processing entities, which aim to allconstraints,suchasprecedence,aresatisfied. improvethe overall schedulability by minimizing commu- (cid:19) nication costs and utilization of processors. We have per- Basedonthenatureoftheapplication,sometasks,e.g,sen- formedextensiveevaluationsofthealgorithmsandalsoex- sor and motor systems, are required to run on designated ercised it using a case study of a real world example from sites, e.g., a specificrobot platform. Othertasks, however, mobile roboticstoachieveasimple butefficientallocation can be assigned to any site in a team. To find a feasible andcommunicationschemeforateamofrobots. strategy,thesystemneedsto: (a) (b) (c) Figure2.Asequenceofactiverobotsinarobotteam 1. assignunallocatedtaskstoappropriatesites; tasks should be assigned to the same processor, thereby eliminating the communication cost. At each step, for all 2. determineascheduleforalltaskinstances. allocated tasks and related unallocated successors, the al- gorithm selects an unallocated task 21 that has the largest 3 Allocation andScheduling Algorithms 43*(cid:2)1 , where (cid:11)3 is located on si(cid:14)te 65 and (cid:11)3 (cid:11)1 . (cid:15) (cid:15) (cid:5) (cid:14) (cid:12) (cid:14) (cid:22) (cid:14) Thealgorithmthenattemptstoallocate 1 to 5 ,basedon (cid:14) (cid:12) Wenowgivethedetailsoftheallocationandscheduling whetherornottheutilizationof 5 becomeslargerthanthe algorithms. Thenotationusedinthispaperisexplainedin threshold (cid:14) . If the utilization is(cid:12)not largerthan (cid:14) , 1 is as- Table1,where (cid:1) isdefinedas: signed to 25 and (cid:14) needs not change; otherwise, t(cid:14)he algo- (cid:15) (cid:15) (cid:5) (cid:7) rithm tries(cid:12) to find a site (cid:11)7 that currently has the least uti- (cid:3)(cid:2)(cid:1) (cid:4)(cid:6)(cid:5)(cid:8)(cid:7)(cid:9)(cid:7) (cid:1) (cid:23)(cid:11)(cid:10) (cid:4)(cid:13)(cid:12)(cid:15)(cid:14) (cid:10) (cid:5) (cid:23) (cid:4)(cid:13)(cid:5) (cid:3)(cid:16)(cid:14)(cid:18)(cid:17) (cid:14)(cid:13)(cid:7) (cid:22) (cid:14) (cid:1)(cid:16)(cid:19) lization,andattemptstoa(cid:12)ssign(cid:14)21 to(cid:12)(cid:21)7. Inthiscase,(cid:14) may (cid:15) (cid:15) (cid:5) (cid:7) (cid:17) (cid:21)(cid:20) (cid:1) needtobeupdated. Ifaproperprocessorcanbefound,the (cid:15) (cid:7) (cid:15) algorithmcontinueswiththenextunallocatedtaskthathas the largest among the remaining unallocated tasks, (cid:15) (cid:15) (cid:5) Notation Meaning using the new threshold. If there is no task left to be as- (cid:22)(cid:24)(cid:23) TaskID signed and the workload of every processor is less than 8 , (cid:25) (cid:23) (cid:22) (cid:23) WorstCaseExecutionTime(WCET)oftask thealgorithmisdeemedsuccessful;ifthealgorithmchooses (cid:26)(cid:28)(cid:23)(cid:27) (cid:22)(cid:24)(cid:23) Deadlineofthe(cid:29)(cid:31)(cid:30)! instanceof atasktobeallocated,butnositecanbefound(becauseany " (cid:23)(cid:27) (cid:22) (cid:23) # (cid:23) Earlieststarttimeofthe(cid:29) (cid:30)! instanceof processor’sutilizationwillbelargerthan8 afterloadingthis $ (cid:23) SiteID # (cid:23) task), thealgorithmfails. Thepseudo-codeforthe Greedy Utilizationofthesite $&%(cid:23) # (cid:23) (cid:22) allocationalgorithmisshowninTable3. (cid:22) (cid:23)(’ (cid:22)*) Utilizationofthesite that %(cid:22)+i)son (cid:22) (cid:23) The basic idea of updating the threshold (cid:14) is to use an (cid:25),(cid:25).- (cid:23)0/) Precedenceconstraintbetween(cid:22) (cid:23)(cid:21)’and(cid:22)*) increasing limit on utilization. Initially, (cid:14) is the maximum CommunicationCostRatioof valueof theutilizations ofallprocessors to whichpreallo- catedtaskshavebeenassigned.Atthetimeswhenthealgo- Table1.Notationusedinthispaper rithmhastofindasite(cid:11)7 withtheleastutilization,soitcan (cid:12) assign 21 to (cid:21)7, several conditions need to be considered. 3.1 AllocationAlgorithm Suppos(cid:14)e (cid:14):9 is(cid:12)theutilizationif 21 isassignedto 65 , and (cid:1)(cid:21)79 is the utilization if (cid:11)1 is assig(cid:14)ned to (cid:11)7. First,(cid:12)if (cid:14):9<; 8 , cesOsoprtsimisalaanssinigtrnamcteanbtleofprreoabl-letimm.etTawskostroesdoiusrtrcieb-ubtoeudnpdreod- in thiscase, if site (cid:8)>(cid:14) @= ? and (cid:1)(cid:21)749 A 8 ,(cid:12)thenthetask canbe iterative heuristics are proposed in this section. Based on assigned to 7 and th(cid:17)e threshold is updated to (cid:7)B(cid:12)DCE(cid:17)(cid:3)(cid:14) (cid:1)(cid:11)79 (cid:19) ; (cid:12) (cid:12) utilizationofeachprocessorandtheamountofcommunica- otherwise, no processor can be found for loading 1 since tionbetweentasks,theheuristicsattempttominimizework- allutilizationswillbelargerthan 8 . Second,if(cid:14)F9 A(cid:14) 8 ,then loadofeachprocessor,aswellasthetotalcommunication. 1 is assigned to 7, but (cid:14) is updatedto (cid:14):G since this is the (cid:14) (cid:12) Adynamicutilizationthresholdisusedateachstepinboth expectedlowestvaluesincethelasttime. Thepseudo-code heuristics. The function of this threshold is to: 1) balance forthefunctionupdatingthethresholdisshowninTable4. andminimizetheworkloadofeachprocessor;2)avoidthe The returned value is either the new threshold if it finds a violationofutilizationboundforschedulabilitypurpose. location,or H(cid:28)8 ifitdoesnot. 3.1.1 GreedyHeuristic 3.1.2 AggressiveHeuristic Thisheuristicconsiderstheamountofcommunicationand Toaddressthemotivationbehindthisheuristic,letususea computation involved for each pair of producer and con- simple task graph depicted in Figure 3, for which WCETs sumer tasks. A decision is made as to whether these two and periods are given in Table 2. Consider the commu- Site(T1)=S1 Site(T2)=S1 Site(T3)=S2 GreedyAllocationAlgorithm C1 = 2 C2 = 2 C3 = 1 Input:ataskgraph(*),+.- (cid:2)0/21;354,674 foreachtask894; T1 T2 T3 communicationcosts;preallocatedtaskswithrelatedsites;thenumberofsites: Output:anassignmenttoallunallocatedtaskssuchthatutilizationofeach 1 1 4 1 1 processorislessthan1 Va;riables: :thesetoftasksthathavebeenallocated; T4 T5 <= ::tthheesseettooffctaosmkmstuhnaitchaativoenncootsbteraetnioaslalocated C4 = 2 C5 = 8 > :arrayofutilizations(workload) :thresholdofutilization Figure3.Asimpletaskgraphexample 626 = 4@?A :communicationcostratioof B"CEDFDHGJI 4BLK(cid:26)VM44LCEWI V B"AC0N"MPORQ 40S Q AUT Algorithm3.1: WPeCrTiEoaTdsk(((cid:15) (cid:7))) (cid:14)120(cid:16) 2(cid:14)20(cid:18) (cid:14)(cid:1)21(cid:0) 2(cid:14)(cid:3)20(cid:2) 4(cid:14)(cid:1)80(cid:4) 12/*..ZILne4iistti)t ahle)*iz(cid:15)teh:(cid:22)r>Aesih)YVa3oAA+gldX[Z9(cid:2)Z9f48o14UAcr(cid:2)\(cid:7)Z9wb )4or;ebk(cid:16)lod(cid:2)>a(cid:18)d_,(cid:2)(cid:26)c]R(cid:7)]Ro @]nf(cid:2)t+g:&r8olA^,,1ins)huitciah_lit4zhe;atthfoerthearecshhporldoc*e/s;sor_‘4: Table2.Pa(cid:9)ra(cid:7) metersfortasksinFigure3 5463.... IWInfeih+tx (cid:8)iiialtlejiwz(ei<(cid:16)th=1o,idsu)YotnsooXUtl62eumti6opnt=(cid:1)y;)k d?lmo\8 k b ; (cid:2) 8nl b < ^ (cid:2) 8 kpo 89l ; nications to task (cid:14)(cid:1)(cid:2) . (cid:14)(cid:3)(cid:2) is assigned to site (cid:12) (cid:18) in the 78.. FLientdZ s9quc),hta+gsZkqF8rl tVahallt1h;asthemaximumvalue6H6 = k ?l outof= ; Ganrdeedy algo(cid:2)(cid:2)r.ithHmowbeecvaeur,sew(cid:15)e(cid:15)no(cid:5)(cid:5)ti(cid:0)(cid:6)c(cid:2)e(cid:2) itshelaargcceurmthualnate(cid:15) d(cid:15) c(cid:5)om(cid:16) (cid:2)(cid:2)- /9*._ I(cid:7)f @f+@+g+8 k) 1 )h_ q ,ca7wlcvu>7laxtev tihen+geZw9q u(cid:2)t5(cid:16)il(cid:2)iz89altio1@1(cid:8)n,y{if8mz|1l,idsoa;llocatedtosite5 */ mt(cid:17)e(cid:15)ru(cid:15)ntoi(cid:15)(cid:5)caa(cid:15)(cid:16)sts(cid:2)i(cid:2)(cid:5)oign(cid:20)(cid:18)nc(cid:15)os(cid:15) tto(cid:5)fr(cid:18)o(cid:2)m(cid:2) (cid:19)in(cid:12);s(cid:16)te(cid:15)iasd(cid:15) lo(cid:5)afr(cid:0)(cid:13)g(cid:2)e(cid:2) r..tShoa,ninthtuaittifvreolmy,i(cid:12)t(cid:18)is, bi.eet.-, 111021...(cid:130)UU8ppkddeaa xbttieet;sswee "i(cid:2)ttt!n8mh;=s[o(cid:129),,uf[s<tt(cid:26)bus!nco<shuluutct+ghih8oatntkph;=ao/t*);c @89afn=(cid:127))ln1o~;etd XUfi}62n+g89d6X[la8n=Folak^p?(cid:2)p89l(cid:128)<r^(cid:129)op1})r.iaX[t<,e6Hs6i~te=X[*8lJ/l?(cid:129)J^^;, (cid:2) (cid:14) (cid:12) (cid:16) (cid:12)(cid:13)(cid:18) The second heuristic we propose takes into account the aWeusethesamenotation(cid:131) toexpressdifferentfunctionalitiesin total communication from the same site to see which un- twoheuristicsalgorithms allocated task has the largest accumulated , andthen (cid:15) (cid:15) (cid:5) selectsthistasktobeconsiderednext. Sincetheutilization Table3.Greedyallocationalgorithm bound is still needed to be considered, oncethe task is se- lected,theassignmentandthresholdupdatesarethesameas intheGreedyheuristic. Tothisend,line5inTable3needs FunctionofAssignmentandThresholdUpdate ti(cid:15)osc(cid:7)bh(cid:15)ean(cid:15)cgh(cid:5)eadn(cid:7) (cid:2)g1toe(cid:12) :d(cid:14) (cid:5)(cid:7)(cid:16)to(cid:9)(cid:18)(cid:17): (cid:17)I(cid:5)(cid:20)n(cid:12) i(cid:14)t(cid:19)i(cid:7)a(cid:6)l(cid:22)(cid:5)iz1e(cid:14)(cid:13)(cid:22)(cid:5)1(cid:21),S(cid:6)(cid:17)i(cid:5)(cid:24)te(cid:23)(cid:6)(cid:17) (cid:13)(cid:14)(cid:5) (cid:12)(cid:26)(cid:7)(cid:25)1(cid:8)3(cid:19) (cid:14)(cid:1)(cid:7)(cid:17)(cid:14) (cid:23)1(cid:10)(cid:12)(cid:9)(cid:27)(cid:9)(cid:12)3 (cid:11);a(cid:11)(cid:14)(cid:12)n(cid:14)(cid:11)d(cid:13)1 (cid:12)l(cid:5)(cid:22)in13e(cid:14)(cid:1)1(cid:17)(cid:23)2. /a(cid:132)*s7s1tui.giisn tiChnthegarts89ehesrlhe1s:toohldo59(cid:3)lUd*(cid:133)p;/d89al,tdea(onfldo/*aptro 9c9ei,ssislnoetsrs55t,hiTsaanssetklhee8cttlehd)re;s h9oilsdthe*/newworkloadif aFcctosuoosrmhlirlgioepgnnwlheitceildnyargttsheoctadhh(cid:12)seae(cid:16)tldh,Agueaoglnragliedbrtaheitslsmhitsteyiuinvstiein(cid:14)(cid:1)lsiah(cid:4)zSloageiwtsociortnaiinlotmsh,nomaotar4,es(cid:11)(cid:29).(cid:14)(cid:1)s(cid:28)ei(cid:30)(cid:2)gf.fniesTechfidtiirvtssoetslws(cid:12)ieg(cid:16)ilth,ehtsclirtyneecdgmeaaor(cid:12)ndrde(cid:16)s 5234.... CaFAUsleeispnts2ddiZ:agtt9(cid:134)n he 9e)*t>apj{srkZwo c(cid:134) 8i,tehrldssottohoVare/p*ll7nrte o; hw9caeitusshstlioaalsrirzgl5aee;tariostthnauZntiqltihz)eattiho rn9e;sZ‘h(cid:134)(cid:135)ol)*d :*/(cid:7)# +.Z 4 1 (cid:2) Z 4(cid:8)b > , 3.2 MakingSchedulingDecisions 678... CaIsfeA+277l.l1)(cid:136)o:ca 5(cid:137)t9e1 jtdas(cid:16)k+gZ,8d9(cid:134)lo(cid:133)t/o*(cid:16)pp1rr,oodcceoessssoorr75; cannotload89l */ 9. Update> withthenewZm(cid:134)5)*Z 9(cid:134); neeAdeftderfoarseuaccchesinsfsutalnacsesiogfnmtaesknst.isBfeofuonred,waesdcihsceudsuslethies 1101.. Els e)*ret:(cid:22)urni 3-1+ ;(cid:2) Z 9(cid:134) 1; algorithm,first,letusdefinesometerminology. 1123.. Ca/A*sel+l7o2c.)2a:te5J t91(cid:139)as(cid:138)(cid:133)k8+g(cid:16)Z,l9(cid:134)dtooj p/*r(cid:16)o1Zc,e9(cid:134)csas(cid:133)nonr o79;tfi(cid:133)nd(cid:16)a*p/rocessortoload8 l */ (cid:19) Earliest start time The earliest start time of an in- 14. Update> withthenewZ (cid:134) )*Z 9(cid:134); stance of a task is derived from the precedence con- 9 15. ) ; straints. Let be the of task periods. If task 16. Retu rn ; /*newthreshold*/ (cid:20) (cid:20)(cid:20)(cid:15) (cid:14) has no predecessors, the first instance is ready to e(cid:14) x(cid:7) ecute at time , denoted as (cid:31) (cid:16) ; and for the Table4.Assignmentandthresholdupdates (cid:1) "! instanceof th(cid:11) attask, (cid:31)$# (cid:17)(cid:7) (cid:17)H 8(cid:11)(cid:19)&% , where (cid:23)8 A A (cid:11) (cid:11) (cid:16)’ . (cid:7)If(cid:17) h(cid:23)as predece(cid:9) s(cid:7)sors, its firsti(cid:23)nstance(cid:7)b(cid:12) ec(cid:7)om(cid:17) es(cid:20) en(cid:9) a(cid:7)bled(cid:14)on(cid:7) lywhenallitsprede- (cid:25) ? 5(cid:140)(cid:9) (cid:5)(cid:141)m(cid:142)9(cid:143)(cid:135)(cid:142) (cid:4) (cid:142) (cid:3)(cid:13)(cid:3)(cid:16)(cid:5) (cid:141) (cid:3)+(cid:17) (cid:19) . Since we will model (cid:12) (cid:14) (cid:9) (cid:14) (cid:7) cessorshavecompletedexecution. Inordertoachieve communication as a task if the producer/consumer this condition, the tasks in the original task graph are tasks are on different sites, and we have harmonicity topologicallyordered.Whenatask isprocessed,the constraintsforallsuchpairs,initially,thelowerbound lowerboundof(cid:31) (cid:16) issetto(cid:7)B(cid:12)DCE(cid:17) (cid:31) (cid:16)(cid:14) (cid:7)(cid:31) 5(cid:16) (cid:20) .5 (cid:19) ,where of(cid:31)e# isassignedto (cid:17) (cid:9)H 8 (cid:19)(cid:16)% (cid:20) (cid:31) (cid:16) . (cid:7) (cid:7) (cid:12) (cid:15) (cid:7) (cid:23) (cid:9) (cid:7) (cid:7) Communication task If the producer and consumer time units, respectively. Thecommunicationcost lies (cid:19) are allocated on the same site, the communication intherange (cid:17) % % 3 (cid:19) , where costisavoided;otherwise,communicationneedstobe istheCommu(cid:15)ni(cid:5)catio(cid:15)n:R(cid:7)a#ti(cid:12)o(cid:15)u(cid:5)sedto(cid:15) a:(cid:22)sisigncommu(cid:15) n(cid:5)i- scheduled. We model this as a communication task. cation costs. Experiments were conducted with For (cid:1) , a communication task has fol- valuesbetween0.1and0.4. (cid:15) (cid:5) lowi(cid:14)ng(cid:7) f(cid:22)eatu(cid:14) res. (cid:14)(cid:1)(cid:0) u :(cid:22): To address harmonicity relationships, we set a period (cid:19) 1. (cid:9) (cid:1)(cid:0) un:(cid:22)e:eds(cid:17) to(cid:9) p(cid:1) r.ocTehsissdisatbaesceanutsferoemach inosntalyncoencoef rwaintgheo,ut(cid:17)(cid:3)(cid:7)in(cid:10)c(cid:23)o(cid:9)(cid:4)m(cid:7)(cid:3)in(cid:12) (cid:7)Bg (cid:12)(cid:15)edC g(cid:9)(cid:5)e(cid:7)(cid:3)s)(cid:19) ,,faonrdea(cid:17)c8 h(cid:7)in(cid:12)(cid:15)pCutt(cid:1)as(cid:19)kf(cid:14)or(cid:7) (etaacskh d(cid:14) uringoneperiodof (cid:1) ; (cid:14) (cid:7) output task (cid:1) (task without outg(cid:12)oing e(cid:9)(cid:5)d(cid:6)ges), where 2. l(cid:31)eow6# ue:(cid:22)r:bou(cid:17) nd(cid:17) (cid:23)beHcau8 s(cid:19)(cid:127)e(cid:14)% th(cid:9)e(cid:0) uin:(cid:16)s:tan(cid:20)ce(cid:31) s(cid:7)h(cid:16) .ouTldhibseigsina (cid:7) (cid:5)(cid:8)(cid:10)(cid:7)(cid:23) (cid:9)(cid:5)(cid:142)n(cid:141)(cid:7)(cid:3) (cid:17) (cid:20)8‘(cid:14)(cid:28)!(cid:5)(cid:8)8 (cid:7) a(cid:142)nn(cid:141)d% (cid:0)(cid:15) (cid:0)(cid:7) (cid:142)na(cid:141)nd (cid:7) (cid:30) (cid:12)(cid:15)(cid:28) C .(cid:9)(cid:4)(cid:7)T(cid:3) o(cid:17)(cid:10)en(cid:9)su(cid:0) r(cid:0)e(cid:142)nt(cid:141)ha% t (cid:15)(cid:21)th(cid:7)e, (cid:20) (cid:17) (cid:9) (cid:17) (cid:11) executionatleastafterthecompletionofthefirst periods ofoutputtasksarenoless thanthoseofinput instanceof ; tasks,aparameter,(cid:7) (cid:1) (cid:8)(cid:3)(cid:14) (cid:11)(cid:21)(cid:12)(cid:15)(cid:4)(cid:13)(cid:14) (cid:5) (cid:141) isusedtosettheup- (cid:14)(cid:13)(cid:7) perboundoftheperiodforoutputtask (cid:1) : (cid:7) (cid:12)(cid:15)C (cid:1) 3. b(cid:16)ho(cid:0)#uun:(cid:16)d: sin(cid:17) ce(cid:23) th%ec(cid:9) o(cid:0)mu :(cid:22)m: unHica(cid:15) ti(cid:1)o.nTshhiosuilsdafinniusphpietsr t(cid:7)as(cid:1)k(cid:8)(cid:3)s(cid:14) a(cid:11)(cid:21)n(cid:12)(cid:15)d(cid:4)(cid:13)(cid:7)(cid:14) (cid:5) (cid:141) (cid:3)(cid:14)% (cid:21)(cid:7)B(cid:12)(cid:15)(cid:4)(cid:13)(cid:12)D(cid:14) CE(cid:5) (cid:17) (cid:7)Bis(cid:12)(cid:15)rCa(cid:9)(cid:5)nd(cid:7)(cid:3)o(cid:19)m, lwyhcehro(cid:14)ese(cid:14)(cid:13)n(cid:7) baertew(cid:9)(cid:12)eine(cid:6) pnu(cid:17)1t executionnolaterthanthelateststarttimeof (cid:1) . (cid:1) (cid:8) (cid:11) (cid:141) (cid:14) and5.Inordertomakeperiodsharmonic,first,wepro- cessinputtasksandmaketheirperiodsharmonic;then Withinthe ,eachinstanceoftasksistreatedasan (cid:20) (cid:15) (cid:14) we tailor the techniques from [20] to process output individualentitytobescheduled. Wetakeintoaccountthe tasks;finally,weusetheGCDtechniqueforintermedi- deadline, laxity and earliest start time, which characterize atetaskstoachieveharmonicityconstraints. Theidea themostimportantpropertiesforreal-timetasksandprece- ofcomputingGCDistodoabackwardperiodassign- dence constraints, to activelydirect the searching to find a feasibleschedule. Thepotentiallyheuristicfunctionsof ment: atask25 getsperiod 5 fromallitssuccessors are: (1) Minimum deadline first: (cid:17) (cid:19) (cid:10) ; ((cid:15)2) so that (cid:9) 5 (cid:17)(cid:14)(cid:14) (cid:13) (cid:15) (cid:16) (cid:6) (cid:9)E7 (cid:7)(cid:9)67 (cid:9)(cid:9) (cid:3) (cid:1)(cid:21)(cid:4)(cid:13)(cid:4) (cid:17) (cid:14)25 (cid:19) (cid:13) . Because of Minimum earliest-start-time first: (cid:15) (cid:17)(cid:14) (cid:19) (cid:17) (cid:14) (cid:10)(cid:23) (cid:16)(cid:31) ; (3) precedenceconstraints,periodsofoutputtaskscannot Minimumlaxityfirst: (cid:17) (cid:19) (cid:10) (cid:15) (cid:14) (cid:7) (cid:17) (cid:10) (cid:14)(cid:17) +(cid:23) H (cid:17) (cid:31) (cid:20) beconsideredseparatelyfromthoseofinputtasks,so w(cid:14)(cid:15) h(cid:7) (cid:19)F(cid:10)e(cid:23)(cid:19)r;e(cid:16)((cid:2)4)(cid:20) (cid:15)i(cid:2)st(cid:17)h(cid:14)% e(cid:14)(cid:19)w(cid:17)e(cid:10) (cid:23)ig(cid:14)h(cid:20) t(cid:15);(cid:10)f(cid:23)(a6c(cid:14))(cid:16)to(cid:15) r(cid:20)(cid:17)t(cid:17)o(cid:14) (cid:2)(cid:14)a(cid:19) d(cid:17)j%u(cid:23) s(cid:14)t(cid:14)(cid:20) th(cid:10) (cid:10)(cid:17)(cid:23)e(cid:23) e(cid:31)f(cid:31)f(cid:20)e;(cid:23)c(cid:2)(t5(cid:16)o)%f(cid:7)(cid:15)d(cid:14) if(cid:17)f(cid:14)(cid:10)e(cid:23) r(cid:19)e(cid:7)(cid:20)n(cid:17) t; rc(cid:9)(cid:12)(cid:9)(cid:12)iuo(cid:16)(cid:16)(cid:6)(cid:6)lda,st(cid:17)(cid:17)ewadrhe(cid:16)ui(cid:7)ccpho(cid:12)(cid:15)omnCis(cid:9)(cid:12)pttuh(cid:16)(cid:6)hteee’ dl(cid:9)(cid:5)laeu:(cid:19)r(cid:3)agps(cid:18)eotsn%ptep(cid:9)(cid:5)rei:o(cid:3)rid.toodOoaftochohfeuirietnpvopueuutthpttauatratsmkstkaoss,snkii(scs(cid:9)(cid:15)’itc:py(cid:3)a.el)--, temporalcharacteristicsoftasks. (cid:9) (cid:16)(cid:6) Thesearchattemptstodetermineafeasibleschedulefor Parameter (cid:5) (cid:21)(cid:14) is used to set the precedence a setoftasksinthefollowingway. It startswithanempty (cid:19) (cid:13)(cid:1) (cid:143)(cid:139)(cid:142)(cid:21)(cid:20) (cid:141)m(cid:142)9(cid:142) relationships in terms of data processed by multiple partial schedule as the root, and tries to extend the sched- producers/consumers. For each task, except for out- ulewithonemoretaskbymovingtooneoftheverticesat put tasks, the (cid:5) ((cid:14) is randomly chosen be- the nextlevelin the searchtreeuntila feasible scheduleis (cid:13)(cid:1) (cid:143)(cid:139)(cid:142)(cid:22)(cid:20)(cid:139)(cid:141)m(cid:142)9(cid:142) tween 1 and 3. The total number of tasks in a trdaeesmrkivawiendiit.nhgTthhueensshmcehuaerldliesutslitecvdfautlaunsecktisisoanste(cid:15)leeaccitshedaleptvopeleilexodteftntohdeetahtcerehceuo.rfTrethhneet th(cid:14)a(cid:12)es(cid:3)rke? (cid:3)as(cid:142)ree(cid:14)t(cid:3) f(cid:10)(cid:24)ios(cid:23)(cid:135):r(cid:142) t(cid:11)(cid:21)a(cid:30)s(cid:12)(cid:15)k(cid:4)(cid:13)% (cid:14)s(cid:5)e(cid:14)(cid:141)t(cid:12)s(cid:3)A(cid:27)w? i(cid:3)t(cid:142)(cid:26)h(cid:14),(cid:3)fao(cid:10)(cid:24)(cid:23)(cid:135)nu(cid:142)dr i(cid:11)(cid:21)anl(cid:12)(cid:15)pl(cid:4)(cid:13)ut(cid:14)th(cid:5) ea(cid:141) n,rdewsfuholeutsrresohu(cid:25) otpwuAnt partialschedule.Because(cid:14) (cid:10) (cid:23) (cid:31) considerstheprecedence tasks,thoughwehaveconductedexperimentswithdif- constraints, it performs better than other simple heuristics ferentnumbers. in our experiments. The simulation studies also show that (cid:17) (cid:14) (cid:10) (cid:23) (cid:16) (cid:20) (cid:2) % (cid:14) (cid:10) (cid:23) (cid:31) (cid:19) hassuperiorperformance. All the simulation results shown in this section are ob- tained from the average value of 10 simulation runs. For 4 Simulated Results each run, we generate 100 test sets, each set satisfying Tostudythefeaturesoftheproposedalgorithms,wecon- (cid:7)(cid:15) #(cid:7)i)s(cid:16) t(cid:17)h(cid:15) e(cid:7)0’n(cid:9)u(cid:7)m(cid:19) bAer (cid:7)of,pwrohceerseso(cid:23) rsi.s tFheornaumgbiveernoftatsaksksseta,nidf ductedseveralexperimentstoevaluatetheallocationheuris- thisconditionis notheld, atleastoneprocessorutilization ticswithregardstoschedulability. Howtouseitforanac- will be larger than 1. The scheme used here is to remove tual robotics application is discussed in Section 5. Tasks the task sets that are definitely infeasible. Obviously, this generated in a directed acyclic graph have the following doesnoteliminateallinfeasibletasksetsbecausethepres- characteristics: enceofcommunicationcostsarenotconsidered. However, since feasibilitydetermination is intractable, if oneheuris- Thecomputationtime ofeachtask isuniformly tic scheme is able to determine a feasible schedule while (cid:19) (cid:15) (cid:7) (cid:14) (cid:7) distributedbetween and 3 set to 10 and60 anothercannot,wecanconcludethattheformerissuperior. (cid:15) : (cid:7)# (cid:15) :(cid:22)i Therefore,theperformanceofthealgorithmsandparameter maintaining minimal utilization for each processor. Since settingsarecomparedusingthe (cid:1)((cid:4)(cid:13)(cid:4) (cid:142) (cid:3)(cid:13)(cid:3) (cid:12)(cid:15)(cid:14) (cid:10) (cid:5) (cid:17) (cid:19) : Aggressivetakesintoaccounttheutilizationboundateach (cid:12) (cid:5) (cid:12) (cid:5) assignmentstep,andtriestoclusterasmanytasksaspossi- (cid:11) t Z (cid:0)(cid:24)(cid:0) ble,soastoeliminatethetotalcommunicationcost,itisnot (cid:12) (cid:5) (cid:17) (cid:11) surprisingthat itachievesbetterperformancethanGreedy, whichconsidersonlytheindividualcommunicationcostfor (cid:11) t Z (cid:0)(cid:24)(cid:0) is the total number of schedulable task sets found agivensite. by the algorithm, and is the total number of task sets (cid:11) The other observation is that the improvements in per- tested. Here is100foreachsimulationrun,andforeach (cid:11) result po(cid:11) inttZ (cid:0)(cid:24)i(cid:0)n’(cid:15)t8he .graphs, (cid:12) (cid:5) (cid:17) (cid:17) (cid:15) (cid:7)(cid:16))z (cid:16) (cid:12) (cid:5) (cid:7) (cid:19) ’(cid:15)8(cid:6)(cid:11) , where tfhoarmnathneceimopfrGorveeemdeynotrwAigthgr(cid:15)es(cid:5)siv(cid:17)ew(cid:11)(cid:29)(cid:28)!i8th,e(cid:15)sp(cid:5) ec(cid:17)ial(cid:11)(cid:29)ly(cid:28)(cid:30) wishelanrgtheer (cid:12) (cid:5) (cid:7) (cid:17) (cid:6)(cid:11) (cid:11) task set size is large, say, no less than . Table 5 shows Thetestsinvolvedasystemwith2to12processorscon- (cid:0) (cid:11) thedifferenceinimprovementofGreedytotherandom;Ta- nectedbyamultiple-accessnetwork. Resourcesotherthan ble 6 is for the improvementof Aggressive to the random. CPUsandthecommunicationnetworkwerenotconsidered. Whereas we study the algorithm under various parameter Both are with (cid:2) (cid:12) (cid:3) ? and (cid:2) (cid:12) (cid:3) ? , respec- (cid:14) (cid:17) (cid:0) (cid:11) (cid:14) (cid:17) (cid:25)(cid:4)(cid:0) tively.Aswecansee,inmostcases,theimprovementswith settings, due to space limitation, here we only show some of the salient results and conclusions. Details that are not (cid:28)(cid:30) are much largerthan those with (cid:29)(cid:28)!8 for (cid:15) (cid:5) (cid:17) (cid:11) (cid:15) (cid:5) (cid:17) (cid:11) either the Greedy or the Aggressive heuristic. The reason reportedherecanbefoundin[13]. is that when , the communication costs intro- (cid:29)(cid:28)(cid:30) (cid:15) (cid:5) (cid:17) (cid:11) ducemoreworkloadintothesystem,andhenceincreasethe 4.1 ChoosingaSchedulingHeuristic resource contention. So communication costs dictate the In order to eliminate bias from the scheduling search schedulability much more than the case when (cid:15) (cid:5) (cid:17) (cid:11)(cid:29)(cid:28)!8 . In contrast to random assignment, our approaches exploit heuristics,wefirstexaminewhichheuristicfunctionissuit- thisimportantpropertytodirecttheallocationassignment, able to evaluate the allocation algorithms in terms of Suc- hence,theyworkbetterinaresource-tightenvironment. cessRatio(SR)ofschedulabilityforafixedtasksetsize. Finally, we found that as the number of processors in- ForbothGreedyandAggressive,wefound(cid:14) (cid:10) (cid:23) (cid:31) isthe creases, theimprovementsforbothGreedyandAggressive bestsimpleheuristic. Thisisbecausetheearlieststarttime become less for a given task set. This observation shows ofeachinstanceofataskencodesthebasicprecedencein- that the tightertheresourceconstraint, thebetterour algo- formation.Forintegratedheuristics,(cid:14) (cid:10) (cid:23) (cid:16) (cid:20) (cid:2) (cid:0) (cid:14) (cid:10) (cid:23) (cid:31) rithmsperform. has substantially better performance than other heuristics including (cid:14) (cid:10) (cid:23) (cid:31) . The reason should be clear: besides Processor 4 6 8 10 12 precedenceconstraints, anotherimportantfactor, deadline, CR=0.1 19.2 15.6 9.7 3.7 2.4 isalsotakenintoaccount. CR=0.4 17.9 14.6 15.0 13.7 15 Since (cid:10) (cid:20) (cid:2) (cid:0) (cid:10) (cid:31) isaweightedcombination (cid:14) (cid:23) (cid:16) (cid:14) (cid:23) ofsimpleheuristics,weinvestigateitssensitivitytochanges ofweight((cid:2) )values.When(cid:2) ,theheuristicbecomes (a)(cid:2) (cid:14) (cid:12) (cid:3) ? (cid:17) (cid:0) (cid:11) (cid:17) (cid:11) the simple heuristic (cid:10) , and does not perform well. (cid:14) (cid:23) (cid:16) Processor 4 6 8 10 12 Whentheweightincreasesfrom to(cid:30) ,orfrom to8 when (cid:2) (cid:5) (cid:4) ,weseeasignifican(cid:11)tperformance(cid:11)incr(cid:1)e(cid:0)asefor CR=0.1 4.7 13 7 2.9 0.3 (cid:5)(cid:141) va(cid:9)rious(cid:2)(cid:17) (cid:0) (cid:5) (cid:4) values.Thealgorithmisrobustwithrespect CR=0.4 4.5 12.1 11.4 12.3 13.1 (cid:5)(cid:141) (cid:9) toheuristics,asperformanceisaffectedonlyslightlywhen theweightvariesfrom(cid:30) to (or 8 to if (cid:2) (cid:5)(cid:141) (cid:5) (cid:4) ). (b) (cid:2) (cid:14) (cid:12) (cid:3) ? (cid:17) (cid:25)(cid:5)(cid:0) (cid:25) (cid:11) (cid:1)(cid:0) (cid:25) (cid:11) (cid:9) (cid:17) (cid:0) Sowewillchoose(cid:2) forfollowingexperiments.Here- (cid:17) (cid:30) Table 5. Improvement of Greedy over random after, we denote “The Number of Processors” as “#Proc”, approach(Percentage) and“TheNumberofTasksWithinaSet”as“#Task”. 4.2 PerformanceoftheAllocationAlgorithm 4.3 EffectofCommunication Inthissection,weevaluatetheperformanceoftheallo- Duetospacelimit,weomitdetailsoftheeffectofcom- cation algorithms, Greedy and Aggressive, compared with munication costs that may be found in [13]. Our results anothermethod,randomallocation. Figure4illustratesthe show that when the number of processors is very limited, resultsfortasksetsizeof 8 , and ,respectively,when e.g., 2 or 3, the performance is almost the same. This is (cid:3)(cid:0) (cid:0) (cid:11) (cid:25)(cid:4)(cid:0) (cid:29)(cid:28)!8 . Asshowninthegraphs,foreachinstance,the because in such a situation, it is hard to find a feasible (cid:15) (cid:5) (cid:17) (cid:11) performance of Aggressive is better than that of Greedy, schedule for both cases. But as the number of processors which is in turn better than the random allocation. The increases,theperformancefor (cid:29)(cid:28)!8 isbetterthanthat (cid:15) (cid:5) (cid:17) (cid:11) gains come from the elimination of communication while for . Thisisbecauseeachcommunicationintro- (cid:29)(cid:28)(cid:30) (cid:15) (cid:5) (cid:17) (cid:11) Figure4.Effectofallocationalgorithms(CR=0.1) Processor 4 6 8 10 12 Task 8 (cid:17) (cid:19) (cid:5) (cid:3) 8 (cid:17) (cid:19) 8 (cid:17) (cid:19) (cid:4)(cid:6)(cid:5) (cid:0) (cid:9) (cid:0) (cid:15) (cid:16) (cid:15) (cid:18) (cid:20) (cid:18) (cid:14) (cid:0) CR=0.1 24.8 20.2 13.2 6.5 3.8 Push 20 120 35 25 5 20 CR=0.4 22.8 18.3 18.1 16.1 16.3 Pull 20 120 25 25 18 20 (cid:2) (cid:12) (cid:3) ? Table7.WCETs(ms)oftasksinFigure1 (cid:14) (cid:17) (cid:0) (cid:11) Processor 4 6 8 10 12 (cid:6) cation can use for a team of three robots: , (cid:1)(cid:9)(cid:8)(cid:10)(cid:8) (cid:1) (cid:8) (cid:8) (cid:13) CR=0.1 7.1 14.3 7.7 4.0 0.3 (cid:6) (cid:6) (cid:6) (cid:9) (cid:12) (cid:9) , , and . The (cid:1) (cid:8) (cid:8) (cid:1) (cid:3)(cid:13)(cid:5) (cid:13) (cid:1) (cid:3)(cid:13)(cid:5) (cid:1) (cid:8) (cid:8) (cid:13) (cid:1)(cid:4)(cid:3)(cid:13)(cid:5) (cid:1) (cid:3)(cid:13)(cid:5) (cid:13) CR=0.4 6.4 12.5 11.8 13.3 13.6 ta(cid:9)skgr(cid:12)a(cid:9)phsforthe(cid:9) sefou(cid:12)r(cid:9) strategiesare(cid:9) show(cid:12)n(cid:9) inFigures5. First, let us use the Aggressive heuristic to analyze the (cid:12) (cid:2) (cid:3) ? tasks’ locationsin eachstrategy. Thedetails ofthe alloca- (cid:14) (cid:17) (cid:25)(cid:4)(cid:0) tionstepsareomittedhereduetospacelimitations. Inthis Table 6. Improvement of Aggressive over ran- example,sincetheaccumulatedcommunicationcostiscon- domapproach(Percentage) sidered, the allocation is the same for all strategies: is (cid:15) (cid:16) assignedto , to , to , to and to . (cid:0) (cid:0) (cid:0) ducesadditionalprecedence constraintsthat willaffectthe (cid:12) (cid:16) (cid:15) (cid:18) (cid:12) (cid:18) (cid:15) (cid:25) (cid:12) (cid:20) (cid:18) (cid:12)(cid:13)(cid:18) (cid:20) (cid:12) Next,thealgorithmwillseewhichstrategiesareschedu- earlieststarttimeofconsumers. Thecommunicationcosts lableusingtheheuristic (cid:10) (cid:20) (cid:2) % (cid:10) (cid:31) . Tosim- alsoaffecttheoverallsystemworkload,therefore,lowering (cid:14) (cid:23) (cid:16) (cid:14) (cid:23) plifytheanalysis,here(cid:2) issetto 8 . Thecompletiontimes communicationleadstoimprovedschedulability. for tasksoneachsiteareshowninTable8. Thealgorithm (cid:6) (cid:6) finds that, except for , denoted as , (cid:1) (cid:3)(cid:13)(cid:5) (cid:1) (cid:8) (cid:8) (cid:13) (cid:0)(cid:9)(cid:5) (cid:0)(cid:9)(cid:8) (cid:13) 5 Application of Our Algorithms to Mobile all other strategies are f(cid:9)easibl(cid:12)e(cid:9), but with different com(cid:12) ple- Robotics tion times (including communication delay). Since multi- plestrategiesarefeasible,theapplicationcanusesomecri- teria to rank the strategies. In this case, if the total laxity In this section, we return to the robotic problem dis- isusedasthecriterion,thentheapplicationwillchoosethe cussed in Section 1, where two strategies, push and pull, (cid:6) strategy,whichhasthemaximalvalue. are givenfor a team oftwo robots. In Table 7, the WCET (cid:9) (cid:1) (cid:8) (cid:8) (cid:12) (cid:9) (cid:1) (cid:3)(cid:13)(cid:5) (cid:13) The application can then use the feasible results when oftasksaretakenfromanexperimentalimplementationon computing newsets of strategies. For example, if at some a StrongARM 206MHz CPU; in Table 9, communication timeafourthrobotjoinstheteam,theapplicationimmedi- costsarebasedonthebytestransmittedusing802.11bwire- (cid:6) ately knows that any strategy that contains less protocol with 11 Mbit/s transmission rate. Although (cid:9) (cid:1) (cid:3)(cid:13)(cid:5) (cid:12) (cid:9) (cid:1) (cid:8) (cid:8) (cid:13) will not be feasible, since that strategy was already deter- 802.11b does not allow for real-time transmission guaran- mined to be infeasible. Therefore, the application can use tees,bypreschedulingcommunications,mediumcontention is avoided. The periods are assigned with (cid:7) for all the feasibility analysis to prune infeasible strategies as the (cid:0)(cid:4)(cid:0) (cid:11) (cid:3) team’ssizescales. sensor tasks and motor drivers by the application. There- fore,theperiodsofcontrollertasksarealsodesignedtobe (cid:6) (cid:6) (cid:6) (cid:6) (cid:0)(cid:4)(cid:0) (cid:11) (cid:7) (cid:3) by the harmonic constraint. Though these figures stSriatteeg1y (cid:9) (cid:5)19(cid:12) 5(cid:9) (cid:5) (cid:13) 2(cid:9)05(cid:8) (cid:12).9(cid:9) 7(cid:8)9(cid:13) 2(cid:9)22(cid:5) .(cid:12)9(cid:9)79(cid:8) (cid:13) (cid:9) 1(cid:8) (cid:12)9(cid:9)5(cid:5) (cid:13) aregivenbasedontasksinFigure1,theyarecompatibleto Site2 202.979 208.958 220 205.979 tasks that occur with more robots; let us consider the sce- Site3 210.958 203 230.958 203 nario when a third robot wants to join the team. Since the pushandpullcontrollersarepairwise,therearefourstrate- Table8.Thecompletiontimeforallstrategies gies,composedofpushandpullcontrollers,thattheappli- POS3 POS3 POS3 POS3 H3 L3 M3 H3 L3 M3 H3 L3 M3 H3 L3 M3 IR3 IR3 IR3 IR3 POS2 POS2 POS2 POS2 H2 L2 M2 H2 L2 M2 H2 L2 M2 H2 L2 M2 IR2 IR2 IR2 IR2 POS1 POS1 POS1 POS1 H1 M1 H1 M1 H1 M1 H1 M1 IR1 IR1 IR1 IR1 (cid:6) (cid:6) (cid:6) (cid:6) (a) (b) (a) (b) (cid:1)(cid:4)(cid:3)(cid:6)(cid:5) (cid:1)(cid:4)(cid:3)(cid:13)(cid:5) (cid:13) (cid:1) (cid:8) (cid:8) (cid:1) (cid:8) (cid:8) (cid:13) (cid:1)(cid:4)(cid:3)(cid:6)(cid:5) (cid:1) (cid:8) (cid:8) (cid:13) (cid:1) (cid:8) (cid:8) (cid:1)(cid:4)(cid:3)(cid:6)(cid:5) (cid:13) (cid:9) (cid:12) (cid:9) (cid:9) (cid:12) (cid:9) (cid:9) (cid:12) (cid:9) (cid:9) (cid:12) (cid:9) Figure5.Fourpossiblestrategiesforateamofthreerobotsusingthepushandpullcontrollers Comm. (cid:5) (cid:5) (cid:4) (cid:5) (cid:16) +(cid:18) 1 (cid:22) (cid:15) (cid:16) +(cid:18) 1 (cid:9) (cid:3) (cid:16) +(cid:18) 1 (cid:22) (cid:15) (cid:16) +(cid:18) 1 (cid:15) (cid:16) (cid:22) (cid:20) (cid:18) (cid:15) (cid:16) (cid:22) (cid:14) (cid:16) (cid:15) (cid:18) (cid:22) (cid:20) (cid:18) (cid:9) (cid:3) (cid:16) (cid:22) (cid:20) (cid:18) (cid:20) (cid:18) (cid:22) (cid:14) (cid:18) +(cid:16) 1 Push 0.02327 0.01236 2.979 2.979 2.979 0 2.979(0) Pull 0.02327 0.01236 0 2.979 2.979 0.01236 2.979(2.979) Table9.CommunicationcostsofFigure1 6 Related Work the optimal solution in the sense of minimizing maximum normalized task response time is found to the problem of Numerous research results have demonstrated the com- allocating communicating periodic tasks to heterogeneous plexity of design for real-time system, especially with re- processing nodes. Though the heuristic guides the algo- spect to temporalconstraints [9, 19, 20, 21, 22]. Alsothe rithm efficiently towardan optimal solution, the algorithm schedulabilityanalysisfordistributedreal-timesystemsat- cannotbesimplyappliedandextendedtoourenvironment. tractedalotofattentioninrecentyears [12,15,16,28].For The major differences are: 1) applications require that the taskswithtemporalconstraints,researchershavefocusedon decisionbemadeon-line;2)weconsideranon-preemptive generatingtask attributes,e.g., period,deadlineandphase. schedule which is NP-hard in the strong sense even with- For example, Gerber et al. [9, 22] proposed the period outprecedenceconstraints[8],whilethealgorithm[3]used calibration technique to derive periods and related dead- in their method is to find a preemptive schedule; 3) the lines and release times from given end-to-end constraints. precedence constraints are predetermined among specific Techniques for deriving system-level constraintsfrom per- instancesoftasksintheiralgorithm,whileinourapproach, formancerequirementsareproposedbySetoetal. [23,24]. thisisaccomplishedbytheschedulingsubjecttotheprece- Whenend-to-endconstraintsaretransformedintointerme- denceconstraints.In[1],aperiod-basedmethodisproposed diate task constraints, most previous research results are totheproblemofloadpartitioningandassignmentforlarge basedontheassumptionthattaskallocationhasbeendone distributedreal-timeapplications.Scalabilityisachievedby apriori. However,schedulabilityisclearlyaffectedbyboth utilizingarecursivedivide-and-conquertechnique.[18]dis- thetemporalcharacteristicsandtheallocationoftasks. cussedastaticalgorithmforallocatingandschedulingcom- For a set of independent periodic tasks, Liu and Lay- ponentsofperiodictasksacrosssitesindistributedsystems. land[14]firstdevelopedthefeasibleworkloadconditionfor Howtoallocatingreplicatesisamajorissuecountedinthe schedulability analysis under uniprocessor environments. algorithm. Our task allocation and scheduling algorithm, Much later, Baruahetal. [5] presentednecessaryandsuf- however,focusesontheimprovementofschedulabilityby: ficient conditions, namely, ( is the number of 1) using a dynamic increasing threshold to bound the uti- A processors)basedonP-fairne(cid:9)sssche(cid:23)dul(cid:23)ingformultiproces- lization bound along each allocation step; 2) consider the sors. Also, theupperboundsofworkloadspecifiedforthe precedence constraints as early as possible by setting the given schedules, e.g., EDF and RMA, are derived for ho- earlieststarttimeintotheheuristicschedulingfunction. mogeneous or heterogeneousmultiprocessor environments [2,4,6,10,11,26].Allthesetechniquesareforpreemptive 7 ConclusionandFuture Direction tasksandtask orjobmigrationsareassumedtobepermit- tedwithoutanypenalty. Ifprecedenceandcommunication constraintsexist,theseresultscannotbedirectlyused. Allocating and scheduling of real-time tasks in a dis- Pengetal. [17],Abdelzaheretal. [1]andRamamritham tributedenvironmentisadifficultproblem. Thealgorithms [18]studiedthetaskallocationandschedulingproblemina discussed in this paper providea frameworkfor allocating distributedenvironment. Intheirmodels,subtasksormod- andschedulingperiodictaskswithprecedenceandcommu- ulesofataskcanhaveprecedenceandcommunicationcon- nication constraints in a distributed dynamic environment, straints. Fromthisperspective,theirworkcomesclosestto suchasmobileroboticsystem. ours. Byusinga branch-and-boundsearchalgorithm[17], Ouralgorithmwasappliedtoarealworldexamplefrom mobile roboticstoachieveasimple butefficientallocation [10] J.Goossens,S.Funk,andS.Baruah. Priority-drivenschedulingof and scheduling scheme for a team of robots. We believe periodictasksystemsonmultiprocessors. Real-Time Systems.Ac- ceptedforpublication. thatthisapproachcanenablesystemdeveloperstodesigna predictabledistributedembeddedsystem,eveniftherearea [11] J.Goossens,S.Funk,andS.Baruah.Edfschedulingonmultiproces- sorplatforms:some(perhaps)counterintuitiveobservations. InReal- varietyoftemporalandresourceconstraints. TimeComputingSystemsandApplicationsSymposium,March2002. Now we discuss some of the possible extensions to the [12] T.Kim, J.Lee, H. Shin, and N. Chang. Bestcase response time algorithm. First, if the system design does not have pre- analysisforimprovedschedulabilityanalysisofdistributedreal-time allocatedtasks,theheuristicisstillapplicable. Inthiscase, tasks.InProceedingsofICDCSworkshopsonDistributedReal-Time the initial threshold is . After selecting the first pair of systems,April2000. (cid:11) communicatingtasksandrandomlyassigningthemtoapro- [13] H.Li,J.Sweeney,K.Ramamritham,andR.Grupen. Pre-analyzed cessor, the algorithm can continue to work on remaining resourceandtimeprovisioningindistributedreal-timesystems: An applicationtomobilerobotics.InUniversityofMassachusetts,Tech- tasksasdiscussedintheoriginalalgorithms. nicalReport,March2003. Second,thealgorithmcanbetailoredtoapplytohetero- [14] C. L. Liu and J. W. Layland. Scheduling algorithms for multi- geneous systems. If processors are not identical, the exe- programminginahard-real-timeenvironment. ACM,20(1):46–61, cution timeofa task couldbe differentif itrunsondiffer- 1973. ent sites. To apply our approach in such an environment, [15] J.C.PalenciaandM.G.Harbour. Schedulabilityanalysisfortasks first,we cantaketheworstcasecommunicationcost ratio, withstaticanddynamicoffsets. InProceedingsofthe19thIEEE whichiscalculatedbytheslowestprocessorsforeachpair Real-TimeSystemsSymposium,December1998. ofcommunicatingtasks,andthenwecanusethesevaluesas [16] J.C.PalenciaandM.G.Harbour. Exploitingprecedingrelationsin theschedulabilityanalysisofdistributedreal-timesystems. InPro- estimatestochoosethetasktobeconsiderednext. Second, ceedingsofthe20thIEEEReal-TimeSystemsSymposium,December when we select the processor, if the task can be assigned 1999. to the processor that the producer is on, then we are done; [17] D.Peng,K.G.Shin,andT.F.Abdelzaher. Assignmentandschedul- otherwise,weneedtoconsidertheutilizationandthespeed ingcommunicatingperiodictasks indistributed real-timesystems. ofaprocessorthesametime,e.g.,comparetheutilizations IEEE Transactions on Software Engineering, 23(12), December fromthefastestprocessorstoseewhichprocessorwillhave 1997. the least utilization after loading the task, and choose the [18] K.Ramamritham. Allocationandschedulingofprecedence-related periodictasks. IEEETransactionsonParallelandDistributedSys- onewiththeminimumvalue.Afterassigningeachtask,the tems,6,November1995. thresholdwillchangeinawaysimilartotheoriginalalgo- [19] K.Ramamritham. Wheredotimeconstraintscomefromandwhere rithm. dotheygo?InternationalJournalofDatabaseManagement,7(2):4– 10,November1996. References [20] M.RyuandS.Hong. Aperiodassignmentalgorithmforreal-time system design. In Proceedings of 1999 Conference on Tools and AlgorithmsfortheConstructionandAnalysisofSystem,1999. [1] T.F.AbdelzaherandK.G.Shin. Period-basedloadpartitioningand [21] M.Saksena. Real-timesystemdesign: Atemporalperspective. In assignmentforlargereal-timeapplications. IEEETransactionson ProceedingsofIEEECanadianConferenceonElectricalandCom- Computers,49(1):81–87,January2000. puterEngineering,pages405–408,May1998. [2] B.Andersson,S.Baruah,andJ.Jonsson. Static-priorityscheduling [22] M.SaksenaandS.Hong. Resourceconsciousdesignofdistributed on multiprocessors. In IEEE real-time systemssymposium, pages real-timesystemsanend-to-endapproach. InProceedingsof1999 193–202,December2001. IEEE International Conference on Engineering of Complex Com- [3] K.R.Baker,E.L.Lawler,J.K.Lenstra,andA.H.G.R.Kan. Pre- puterSystems,pages306–313,October1996. emptiveschedulingofasinglemachinetominimizemaximumcost toreleasedatesandprecedenceconstraints. OperationsResearch, [23] D.Seto,J.P.Lehoczky,andL.Sha.Taskperiodselectionandschedu- labilityinreal-timesystems. InIEEEreal-timesystemssymposium, 31(2):381–386,March1983. pages188–198,December1998. [4] S.Baruah. Schedulingperiodictasksonuniformmultiprocessors. InformationProcessingLetters,80(2):97–104,2001. [24] D.Seto,J.P.Lehoczky,L.Sha,andK.G.Shin. Ontaskschedula- bilityinreal-timecontrolsystem. InIEEEreal-timesystemssympo- [5] S.K.Baruah,N.K.Cohen,C.G.Plaxton,andD.A.Varvel.Propor- sium,pages13–21,December1996. tionateprogress: Anotionoffairnessinresourceallocation. Algo- rithmica,15(2):600–625,June1996. [25] L.Sha,R.Rajkumar,andS.S.Sathaye.Generalizedratemonotonic schedulingtheory: Aframeworkfordevelopingreal-timesystems. [6] S.Funk,J.Goossens,andS.Baruah.On-lineschedulingonuniform ProceedingsoftheIEEE,82(1):68–82,January1994. multiprocessors. InIEEEreal-timesystemssymposium,pages183– 192,December2001. [26] A.SrinivasanandS.K.Baruah. Deadline-basedschedulingofperi- odictasksystemsonmultiprocessors. InformationProcessingLet- [7] M. R.Garey and D. S. Johnson. Strongnp-completeness results: ters.Acceptedforpublication. Motivation,examples,andimplications.JACM,25(3):499–508,July 1978. [27] J.Sweeney,T.Brunette,Y.Yang,andR.Grupen.Coordinatedteams ofreactivemobileplatforms.InProceedingsofthe2002IEEECon- [8] M. R. Garey and D. S. Johnson. Computers And Intractability. ferenceonRoboticsandAutomation,Washington,D.C.,May2002. W.H.FreemanAndCompany,NewYork,1979. [28] S.WangandG.Farber.Ontheschedulabilityanalysisfordistributed [9] R.Gerber,S.Hong,andM.Saksena.Guaranteeingreal-timerequire- real-time systems. In Joint IFAC—IFIP WRTP’99 & ARTDB-99, mentswithresource-basedcalibrationofperiodicprocesses. IEEE May1999. TransactionsonSoftwareEngineering,21(7):579–592,July1995.

See more

The list of books you might like

Most books are stored in the elastic cloud where traffic is expensive. For this reason, we have a limit on daily download.