From: AAAI Technical Report SS-92-01. Compilation copyright © 1992, AAAI (www.aaai.org). All rights reserved. Scheduling Lessons Learned from Autonomous Power System the MarkJ. Ringer Sverdrup Technology Inc. NASALewis Research Center Group Cleveland, Ohio 44135 Ringer@mars.lerc.nasa.gov Abstract Space Station Freedom,a Lunar base, or Martian base represents a critical portion of such a system. TheAPS project explores intelligent hardwareand soft’ware architectures for efficient systemoperationandscheduling of an electrical powersystem[Ringer 1991]. The Autonomous PowerSystem(APS)project the NASALewis Research Center is designed to demonstratethe applications of integrated intelligent diagnosis, control and sebeduling techniques to space powerdistribution systems.Theproject consists of three elements: the Autonomous PowerExpert System(APEX) for Fault Diagnosis,Isolation, and Recovery(FDIR);the AutonomousIntelligent Power Scheduler (AIPS) efficiently assignactivities start timesandresources;and powerhardware(Brassboard) to emulate a space-based powersystem. TheAIPSsebeduler has been tested within the APSsystem. This sebeduleris able to efficiently assign availablepowerto the requestingactivities andshare this information with other software agents within tile APS systemin order to implementthe generatedschedule. The /tIPS sebeduleris also able to cooperativelyrecoverfrom fault situations by resehedulingthe affected loads on the Brassboard in conjunction with the APEX FDIRsystem. /kIPS served as a learning tool and an initial scheduling testbed for the integration of FDIRand automated scheduling systems. Manylessons were learned from the /kIPS sebeduler and are nowbeing integrated into a newscheduler called SCRAP (Scheduler for ContinuousResourceAllocation and Plamdng).This paper will serve three purposes:an overviewof the AIPS implementation,lessons learned fromthe AIPSscheduler, anda brief section on howthese lessons are beingapplied to the newSCRAP scheduler. 1.1 The Need For (Automated) Scheduling Onboarda complexspacecraft manyactivities must be performed, each competingfor a multitude of temporal positions and limited resources. Ascheduler mustassign start times to eachactivity withoutviolating any resource or temporal constraints. The resources onboardsuch a spacecraft will be vastly oversubscribed, havingmanytimes moreresource requests than available resources. This makes it a paramount objective to efficiently utilize the available resources in order to completeas manyactivities as possible. Current NASAspace-based systems rely on ground-based human-intensive scheduling methods. Humansprovide the main scheduling intelligence for constructing schedules. These schedules are then transmitted to the spacecraft to be executed. If the scheduling expertise and computersare ground-based, every anomalythat occurs onboardthe spacecraft that incurs a schedule modification wouldeanse significant time delays and efficiency losses. With the advent of more complexspace-based systems such as the Space Station Freedomand beyond,a moreefficient automated schedulingparadigmis necessary[Britt 1988]. 1.2 The APS Project Scheduling 1. Introduction and Motivation Goals The goal of the APSproject is automated scheduling for space systems with proof-of-concept demonstrationson a powersystemtestbed. In this process only the high level goals of the systemare stated by the humanoperators, that is, whichactivities should be performed. This information is taken and the scheduler attains the goal of activities executed.Thesebedulermust Future NASA spacecraft and planetary surface installations will require larger and moresophisticated infrastructure systems and living enviromnents. Such systemswill consist of dozensof resources andhtmdreds of attached loads. The electrical powersystem on the 52 not only knowhowto generatethe schedule, but mustalso knowhowto implementthe schedule, and howto recover fromsystemor load induceddeviations in the schedule. 2. AIPS Implementation Since schedulingcannottake place in a vacuum, the schedulermustbe able to interact with other agentsas well as cope with many operational concerns. The schedulermustbe able to generatean initial schedule,it must have domain specific knowledge of how to implementthe schedule, it must be able to reactively modify the schedule in the ease that the assumed informationof the state of the systemchanges,andit must be able to do this withinmetric time constraints. 2.1 Whatis being scheduled The APSBrassboard is a powersystem testbed that contains a set of powersupplies, switchgear, and loads that emulate a space-based power system. This hardwareis controlled by a set of embedded controllers capableof configuringthe state of the Brassboard.These controllers are then used to configurethe Brassboardto supply powerto the loads designated by the scheduler. Figure 1 shows the current configuration of the APS Brassboard. RBrs and RPC’s are remote controlled switchesandan L representsa load attachedto the system. Theloads attachedto the Brassboardare resistive load banks. In order to moreclosely emulate a spacebasedpowersystemeachload is given a set of attributes resemblingthose of a space-basedsystem. Eachactivity (load) has a time varyingprofile of powerdemand, earliest start timeandlatest completiontimeconstraints, priority, and temporalplacementpreference. 2.2 Cooperation Between AIPS and APEX AIPSis responsible for assi£ning the power requestingactivities attached to the Brassboardtemporal positions and resources without overalloeating the available power. APEXis responsible for the implementationof the schedule generated by AIPS. In order to adequately modelthe interaction betweenAPEX and AIPS, a set of protocols was developed to communicatedifferent scheduling and rescheduling procedures. Protocols were developed to generate an initial schedule and modifyexecutingschedules. Figure 2 showsa graphicalrepresentationof a schedulegenerated by AIPS. A chart showingthe interaction betweenthe three portions of the APSproject is given in Figure3. 2.3 Scheduling Methods Used Twomodesof schedule generationare neededfor any integrated schedulingsystem.Theability to generate an initial scheduleandthe ability to modify(resehedule) an already executingschedulein the ease of an anomaly. In the formercase, a metricamountof time is allocatedto the schedulerafter whicha solution mustbe returned. In the latter case, the reschedulingresults are usuallyneeded as soonas possible. n I ~.w/,,~-I ~’~;:’.~,~.._, .-~...!........... , C: ~ !: 0O ounter ~st ur r/,nt O, 895392 Source1 ,,,o,~t~,..:~ ~.,.,,,,..~ 2: 0~ loiinlsi betland 3:r’0 4~ 00 5:O0 HJg Figure 2 Representative Schedule Generated by AIPS The AIPSscheduler has two modesof schedule generation used for scheduling and rescheduling. The schedulingengineis all incrementalschedulerthat uses a set of activity selection andplacementheuristics [Sadeh 1989]. Theseheuristics are used to construct a schedule by taking each activity one by one, anddeterminingwhere to place the activity on the timeline.Theseheuristics also formthe basis of the reschedulingengine. Whenthe scheduler is given moretime, it will use the samebasic heuristics along with a Monte-Carlo type optimization methodto generate multiple schedules Figure 1 Brassboard PowerSystemConfiguration 53 basedon the heuristics. Since the heuristics use local goodnessinformation, they do not produceglobally good schedules.Smallperturbationsto these heuristic decisions will often improve the efficiency of the generated schedule. Eachschedule is rated based on a goodness rating and whentime to generate a schedulehas run out, the best schedule (that has been saved in memory) returned. Witha relatively hugestate space of solutions this methodworksquite well probingmanyportions of the state space that look promisingbasedon the heuristics. between the relative value of activities. Timewas partitioned at a granularity of five minutes. This wasa reasonablesimplification since the time for APEX and the Brassboard to be configured was on the order of one minute. The ability to schedule within metric time constraints wasincorporated. A graphical interface was available for both scheduledisplay and human-scheduler interaction. The largest assumption made about the environment wasthat all temporaldurations and resource requestsare exact. In a real-life situation, if an activity requests 100 watts for one hour the probability of the activity using a constant100 watts or lasting exactlyone hour is quite small. The problemsincurred mayinclude undervoltage/overcurrent conditionscausedby higher than expected demandsas well as propagation of temporal constraints amongactivities causedby an extensionof an activity’s duration. Theneedfor sometype of temporalor resource padding is necessary. This paddingdecreases schedule efficiency although it mayimprove overall implementedscheduleefficiency since the schedule will not haveto be modifiedas often with the paddingadded. , .., l ~hedu~mshfo [ A~ xr~ ~’~ =" I /~tivity Start T~n~l ......... / ~IFDI~R-les ~aeaumg L~aowleagq~ [Sah~lule !Schedule Generation ---i"~AztivP" itmI~ementation tttues and UserInterface ’~ State Resource Data Bras’~boa~d Switch st ~kSwiteh atesand ControlI l Messages I lPower ~ llnformation BRASSBOARD Power ~qouro,m Swit~hgear ISca~sors 3.2 Perspective [Loads Figure 3 APSComponentFunctionality Muchwas learned about scheduling, but even morewas learned about implementinga schedule in an automateddomain.Thewholeobject of scheduling is to producethe best overall systemefficiency. In order to increase the efficiency of the implemented schedule, most newideas point to the needfor the ability for real-time reaction in the scheduler[Johnston1989]. Hereare three examples, Conventionalschedulers use temporalpaddingto increase the probability of executing a schedule. Temporaluncertainties cause the forwardpropagationof predecessor/successorconstraintsandresource availability. If activities are padded,andthis paddingis not used,it is wasted. It maybe possible, however, to assign this temporalposition/resourceto anotheractivity. This would entail moving anotheractivity forwardin time to fill the temporalposition/resource left unusedby the previous activity. This demonstratesa need for reaction in the scheduler. Supposea 500 watt cooling fan operates only whenthe experimenttemperature rises above a certain threshold. This mayonly operate 10%of the time (10% duty cycle). Howcan the resources be allocated to preventoversubscriptions?If 500 watts are continuously allocated 90%of this energywill be wasted(of course, conflict free schedule is guaranteed). Energybalancing betweenmultiple duty cycle activities can be used, but problemsarise if all these activities turn on at the same time. Reactionis neededto delay someof these events if they desire to consumepowerwhenit is not immediately available. In addition, there is the possibility of Reschedulingmust also be accomplished"nonnervously",that is, withas little deviationto the original schedule as possible [Biefeld 1990, Zweben1990]. In systems with humaninteraction the original schedule shouldbe followedas closely as possible in order to not disturb the humansinteracting with the system. To accomplishnon-nervousreseheduling, AIPSuses a set of heuristics that judgethe amountof perturbationcausedby a schedulemodificationversus the changeof goodnessof the newschedule. 3. Lessons Learned Lessons were learned from the desiga~ of the scheduler,implementing a schedulerin a real system,and integrating schedulingwith an FDIRsystem. Someof the lessonslearnedrepresentedshortfalls in the original AIPS scheduler while others represented ideas for the improvement of the overall efficiency of the scheduling system. 3.1 Retrospective Manyof the concepts implementedin the AIPS scheduler workedquite well. Timewasbroken downinto smaller schedulinghorizonsin order to makethe problem solution feasible. Priorities were used to delineate 54 performingenergybalancingin the powersystemdomain. Withenergybalancinghowever,it is necessaryto use a storage type resourcesuchas a battery. When using reaction, think about the "moveability"of an activity. In a SpaceStation domain, a dishwashingactivity is muchmore moveablethan a medical experimentusing two crew membersand various ground-basedexperts. The dishwashingactivity has very few attached dependencieswhile the medicalexperiment wouldrequire the movement of manyhumaninteraetors. Thedishwashingactivity is easier to moveand a small temporalposition changewill not affect it as long as the dishes are washedbefore the next meal. This information can be used to makereactive modificationsto the schedule without impactingthe humanswhowill haveto interact with the system. Theideas of temporalpaddingusage, duty cycle balancing, and activity moveabilitywill allow for more efficient use of limited resources. Of course, a scheduler (and testbed architecture) that allowsthese ideas to implementedremains to be built and tested. The next section will briefly describe this newscheduler. 4. resource level tlmt providesan allowancefor deviations from that level. This would point to the use of a combinationof reaction and prediction. All schedulers that operate in a real domainactually combinethe two, but the idea of SCRAP is to provide a frameworkthat allowsthese ideas to be implemented efficiently. 4.2 How to Combine Prediction Even though building an initial schedule is computationallyintense, the needto continuouslymodify the schedule during execution is even more difficult becauseof the tighter time constraints in the reseheduling domain.Whenreseheduling, all temporal and resource constraints propagateforwardcausingevenmoreconflicts in the schedule, also knownas the ripple effect. Propagatingtemporaland resource eoustraints during a reschedule clobbers previously computedfuture portions of the schedule. If reschedulingoccursoften, the entire precomputed schedule may be reeomputed by the reschedulingengine. This is an extremecase but proves the point that it maynot be necessaryto construct the initial schedulewith a great level of detail. Thereforeit maybe wiseto schedulefar termactivities withless effort or detail than near term activities. In the SCRAP schedulerthis is accomplished by using multiplelevels of abstraction whenschedulingactivities. Further into the future the scheduleis constructedabstractly, whilenearer to the executiontime moreprecision is used. Also, more in-depth schedulingmethodsare used for times nearer to the executiontime than for timesfurther into the future. Implementing the Lessons Learned The SCRAPscheduler is currently under development.Generalimprovements in the representation of the SCRAP scheduler include multiple resources, multiple resource types (capacity, consumable, and storage), onesecondtime granularity, activities broken into tasks, andmultiple levels of scheduleabstraction. Since the previoussection showeda needfor reaction, a schedulingparadigmthat makesreaction easier wouldbe beneficial. 4.1 and Reaction I Prediction vs. Reaction .......... : ...... Twogeneral categories can be delineated in scheduling:predictive and reactive systems. Predictive schedulingallows the efficient allocation of available resources to activities by generatingschedulesbased on predicted knowledge of the activity andresource states. This type of schedulingworkswell in static domainsbut is often hard to implement andless efficient in complex, uncertain, anddynamicdomains.Reactionprovideseasier implementation in dynamicdomains, but sacrifices resourceusageefficiency causedby the lack of knowledge used to generate schedules. In most real world problemsa combinationof static and dynamic domains exist. For exeanple, a completelyreactive scheduler mighthave no information on predicted resource demandsof an activity, while a completely predictive scheduler would assume exact temporal durations and resource requests. Usually, a combinationof these methodsare used with a predicted 55 ,~ I i. I ~_Z’1--3------7--t ..... "t ~L---.-it’"" Figure 4 The SCRAP View of Scheduling Multipleabstractions basedon temporaldistance from the execution time will allow for moreefficient forward temporal propagation of constraints in the schedule since less information is used for the future portions of the schedule. The future portions of the abstractly generatedscheduleserve as apartially computed schedule whenit comestime to actually schedule at a moreprecise level. Theschedulingtimeline can be looked at as a rolling horizon, with the future comingcloser to the present as time ticks duringexecution. Figure 4 graphically showsthe general idea of SCRAP.The timeline movesin conjunction with the movementof "real" time. Time "now"is the current executiontime of the sebedule. Time"infinity" is some time very far in the future. Thegantt chart showsI-beams at different levels of schedulingabstraction. Thesolid lines are precisely scheduled, the dashed lines are scheduledat a medium abstraction, whilethe dotted lines are abstractly scheduled.Resourceoversubscriptionsare allowedin the future since the schedulein those areas has not beencomputedmoreabstractly. Nearerto the time of execution, moreschedulingeffort and precision is used and these resourceconflicts will be eliminated. Manyof the reactive situations stated in the lessons learned section can be moreeasily implemented using the SCRAP paradigm. In an automateddomainthe scheduler has muchmore control over the executing schedule.Thiscontrolalongwith the ability to efficiently modifythe sebedule during executionwill allow for all overall implemented scheduleefficiency increase. Intersociety EnergyConversionEngineeringConference, 1988. 5. [Zweben1990] Zweben,M., Deale, M., and Eskey M., "Anytime Rescheduling", NASAAmes Artificial Intelligence BranchTechnical Report, February1990. Conclusion The AutonomousPower System project at the NASA Lewis Research Center is an ongoing effort to demonstratethe use of knowledge-baseddiagnosis and scheduling software in advancedspace-basedelectrical power systems. The APSproject has completed one development iteration. A scheduling system was developedfor the APSproject and integrated with an FDIRsystem and hardware.The original AIPSscheduler was successful as a learning tool and a newimproved scheduler is being developed. Manynew ideas for increasing the implementedschedule efficiency will be realized using the SCRAPparadigm. The SCRAP schedulingparadigmwill allow for moreefficient use of the availableresources. Acknowledgements This workswas performedunder NASA contract NAS3-25266 with Jim Kish as Technical Coordinator. References [Biefeld 1990] Biefeld, E., Cooper, L., "Operations MissionPlanner: Final Report", JPLPublication 90-16, March,1990. [Britt 1988] Britt, D.L., Gohring, J.R., Geoffrey, A.L., "TheImpactof the Utility PowerSystem Concepton Spacecratt Activity Scheduling",Proe. 23rd 56 [Johnston 1989] Johnston, M., "Knowledge-Based Telescope Scheduling", In Knowledge-Based Systemsin Astronomy,Springer-Verlag, 1989. [Ringer 1991a] Ringer, M.J., Quinn, T.M., and Merolla, T., "Autonomous PowerSystem:Intelligent Diagnosisand Control", Proceedings of the NASAGoddardConference on SpaceApplicationsof Artificial Intelligence, 1991. [Ringer 1991b] Ringer, M.J., "Autonomous Power System: Integrated Scheduling", Proceedings Space Operations, Applications, and Research Symposium, NASA JohnsonSpace Flight Center, Houston,Texas, July 1991. [Sadeh 1989] Sadeh, N., and Fox, M.S., "Foens of Attention in an Activity-BasedScheduler",In Proc. NASA Conferenceon SpaceTeleroboties, Pasadena,California, 1989.