MICANTS Gabor Karsai Benoit Dawant Greg Nordstrom Chris vanBuskirk Karlkim Suwanmongkol Patrick...
-
Upload
tyrone-webb -
Category
Documents
-
view
218 -
download
0
Transcript of MICANTS Gabor Karsai Benoit Dawant Greg Nordstrom Chris vanBuskirk Karlkim Suwanmongkol Patrick...
MICANTSGabor KarsaiBenoit DawantGreg NordstromChris vanBuskirkKarlkim SuwanmongkolPatrick NorrisJonathan Sprinkle(Vanderbilt/ISIS)
Jon DoyleRobert Laddaga Vera Ketelboeter(MIT)
George Bloor (Boeing)
Russ Currer (Idea Services)
MICANTS Research Goals
•How to useHow to use1.1. Model-Integrated Computing,Model-Integrated Computing, and and 2.2. Agent/Negotiation technologyAgent/Negotiation technology
to solve complex resource to solve complex resource management problems in (Autonomic) management problems in (Autonomic) LogisticsLogistics
•To demonstrate the feasibility of the To demonstrate the feasibility of the technology through technology through real-lifereal-life example(s) example(s)
Roles Vanderbilt/ISIS MIC, implementation, and demonstration
MIT Concepts, algorithms
Boeing Modeling, domain knowledge
Idea Services Domain expertise and scenarios, customer
interface
http://www.isis.vanderbilt.edu/Projects/micants/micants.htm
MIC for ANTSSupport for negotiation protocols
Source of complexity:Coordinating agent behavior
with the negotiation protocol(s)
The problem:
Complex agents that participate in multiple,
simultaneous negotiations are hard to write
The MIC solution:
Model and analyze negotiation protocols
GeneratorGeneratorSynthesize code for negotiation engine
CoordinationEngine
NegotiatingAgent
Status: working prototype is in use on the project
MIC for ANTSSupport for legacy system integration
The problem:
Negotiating agents have to access legacy
databases,writing access code is tedious and error-
prone.
The MIC solution:
Model legacy database schema and agent ontology
GeneratorGeneratorSynthesize code for agent database interface
DatabaseInterface
NegotiatingAgentSource of complexity:
Coordination of the agent’s data modelWith legacy database’s schema
LegacyDBase Legacy
DBase
Status: modeling environment prototype has been built.Note: This approach is beneficial for systems without a data warehouse.
Agents/Negotiation Technology
Constraints
manages
Constraints
manages
CONFLICT
negotiation
Mutually acceptable,Negotiated solution
satisfiessatisfies
Objective: “Good enough solutions/soon enough”
Demonstration domainMaintenance logistics (simplified): Unscheduled aircraft repair
discrepancy report
MMCO
Flight Schedule
Shop Maintenance
Schedule
Assign mechanicnegotiate
negotiate
negotiate
W/C OIC
Current practice:Manual process
MMCO(sister squadron)
Negotiate/barter
Vision: Vision: Agent-supported Maintenance Agent-supported Maintenance ProcessProcess
discrepancy report
MMCO
Flight Schedule
Shop Maintenance
Schedule
Assign mechanic
negotiate
negotiate
W/C OIC
Goal:Assistance through offering negotiated options
optio
ns
appro
ve
repo
rt
optio
ns
appro
ve
negotiate
optio
ns
appro
ve
Autonomic response
MMCO(sister
squadron)
Agents:•“Helpers” for the users•Implement CO’s intent, business rules, and user guidance•Negotiate solutions autonomically•Offer options for approval
Commander’s
Commander’sIntentIntent
CAUTION: Simplified CAUTION: Simplified picturepicture
MAPLANTMAintenancePLanningAgeNTs
MAPLANT PrototypeAgents to support usersSchedule generated: mechanics + timeCreate schedules based on constraints Task: starts after, ends before, requires
resource (mechanic) Number of resources + qualifications Planning window size
Incrementally schedule new tasks and assign mechanics to them based on constraints
Agents for the users
Maintenance Control Chief’s AgentReceives and logs gripesNegotiates with MALS and W/C-sBarters with sister squadronShows canni optionsEvent status display
Event/AC assignmentsAC status over time“What-if”s
Maintenance Control Chief’s AgentReceives and logs gripesNegotiates with MALS and W/C-sBarters with sister squadronShows canni optionsEvent status display
Event/AC assignmentsAC status over time“What-if”s
Work Center Supervisor’s Agent Schedules calendar-based MAsProposes schedule(s)Schedule displays (with options)
Work Center Supervisor’s Agent Schedules calendar-based MAsProposes schedule(s)Schedule displays (with options)
Helper “agents”Aircraft (health status)Mission (events, flight schedule)Jobs (maintenance actions)Workers (maintainers)MALS
Helper “agents”Aircraft (health status)Mission (events, flight schedule)Jobs (maintenance actions)Workers (maintainers)MALS
Current prototypeCurrent prototype
Agent operations
M/C StartupEvent Status Board (M/C)
Event times EVT/AC assignmentA/C status (OK, down, repair)
M/C StartupEvent Status Board (M/C)
Event times EVT/AC assignmentA/C status (OK, down, repair)
Current prototypeCurrent prototype
W/C StartupSchedules calendar-based MAs
Input: Job list with time and MOS requirementsWorker pool with qualifications
Output:Jobs scheduled and assigned to workers
W/C StartupSchedules calendar-based MAs
Input: Job list with time and MOS requirementsWorker pool with qualifications
Output:Jobs scheduled and assigned to workers
Constraint-based scheduling:Task “start-after”s, “ends-before”-s, and durationsTask precedenceResource constraintsAlternatives/flex assignments
Helper startupAircraft (health status)Mission (events, flight schedule)Jobs (maintenance actions)Workers (maintainers)
Helper startupAircraft (health status)Mission (events, flight schedule)Jobs (maintenance actions)Workers (maintainers)
Agent operationsM/C receives gripe/diagnosis
Status Board: shows conflictsSelection: A/C + GripeOptions:
Standard procedure (MALS) Barter (with other M/C) Canni (if possible)
Evaluation: Comparison of options Check effects on flight
schedule
Changes: Accept/refuse proposed MA AC to event assignment
M/C receives gripe/diagnosisStatus Board: shows conflictsSelection: A/C + GripeOptions:
Standard procedure (MALS) Barter (with other M/C) Canni (if possible)
Evaluation: Comparison of options Check effects on flight
schedule
Changes: Accept/refuse proposed MA AC to event assignment
Current prototypeCurrent prototype
W/C operation:Reactive (re-)scheduling
Input: New job with time and MOS requirementsAll “old” jobs
Output: (for approval)Multiple schedule options for new job
W/C operation:Reactive (re-)scheduling
Input: New job with time and MOS requirementsAll “old” jobs
Output: (for approval)Multiple schedule options for new job
MALS:Reply with time for part availability
MALS:Reply with time for part availability
Sister squadron M/C:Reply with time for part availability
Sister squadron M/C:Reply with time for part availability
A/C in maintenance:Reply with time parameters
A/C in maintenance:Reply with time parameters
Agent operationsM/C “smarts”
Shows/warns about conflicts with flight scheduleKeeps track of current/pending MAsDisplays available options when “repairing” AC/EVT allocationsDetects A/C in repair that can be utilized in canni Can arrange barter with other M/C’s agent“What-if”
Effect of the selected MA on the flight schedule
Suggests possible optimizations Swaps (possibly with other
squadron) “Milking”
M/C “smarts” Shows/warns about conflicts with flight scheduleKeeps track of current/pending MAsDisplays available options when “repairing” AC/EVT allocationsDetects A/C in repair that can be utilized in canni Can arrange barter with other M/C’s agent“What-if”
Effect of the selected MA on the flight schedule
Suggests possible optimizations Swaps (possibly with other
squadron) “Milking”
Current prototypeCurrent prototype
W/C “smarts”Rapid schedule generationMultiple schedule optionsOptions are evaluated/ranked
Flexible schedule choicesTentative scheduling choice, confirmed later
W/C “smarts”Rapid schedule generationMultiple schedule optionsOptions are evaluated/ranked
Flexible schedule choicesTentative scheduling choice, confirmed later
Initial data from warehouse:Aircraft (health status)Mission (events, flight schedule) Jobs (maintenance actions)Workers (maintainers)
Initial data from warehouse:Aircraft (health status)Mission (events, flight schedule) Jobs (maintenance actions)Workers (maintainers)
ApproachScheduling and negotiation as CSP
Negotiating agent
Messa
gin
g
CoordinationEngine
Data structures representing
domain constraints
ConstraintSAT
mapper (encoding)
Standard SATProblem Solver
(Tableau,WSAT,ISAMP)
Standard SATProblem Solver
(Tableau,WSAT,ISAMP)
Explicit management of
constraints during negotiation/scheduli
ng
“High-performance”encoding techniques
Domain-independent
SAT techniques
Standard SAT Interface (CNF, etc.)
Schedule
Domain-specific API to the scheduler
Complexity management:Encoding strategySAT
ApproachEncoding a scheduling as binary SAT
Precedence: pr(i,j)Starts after: sa(i,r_i)Ends before: eb(i,d_i)Coherence: sa(i,t) -> sa(i,t-1) : starts at or after t-1 eb(i,t) -> eb(i,t+1): ends at or before t+1 sa(i,t) -> NOT eb(i,t+P-1): requires time P sa(I,t) AND pr(i,j) -> sa(j,t+P): conflicting task
cannot start until first task finishes
Resource constraints: # {c(i,j)} < Cap
SCALINGSCALING: Polynomial in #Tasks, #Resources, #Slots
Based on Crawford/Blake 1993
ApproachAddressing timeliness issues
REAL-TIME RESPONSE:REAL-TIME RESPONSE:•Monitor situation and progress •If needed, modify process
Negotiating agent
Messa
gin
g
CoordinationEngine
MonitoringEvaluation
Reconfigurator
Reco
nfi
gu
rati
on
Technology for achieving time-bounded results•Flexible negotiation with monitored execution and reconfiguration (MIT)
•Schedule generation via constraint-satisfaction:•Explicitly represent current tasks as constraints
•Monitor SAT engine execution for timeout•Relax constraints when SAT does not converge
•Utilize SAT engine solutions
SATEngine
DYNAMICS/DYNAMICS/STABILITY:STABILITY:•SAT Engine (TBD)
Scalability of the SchedulerFirst and second approach10hrs window, 1hr/task, M:mechanics, T:tasks, T = 2M
Memory usage
WSAT engine
Scalability of the SchedulerFirst and second approach10hrs window, 1hr/task, M:mechanics, T:tasks, T = 2M
Run time
WSAT engine
Scalability of the SchedulerImproved approach10hrs window, 1hr/task, M:mechanics, T:tasks
Memory usage
WSAT engine
Scalability of the SchedulerImproved approach10hrs window, 1hr/task, M:mechanics, T:tasks
Run time
WSAT engine
Resource management through automated negotiationKey concept:
Resolving resource conflicts through negotiationDynamic Negotiation Strategies: “Scripts” for negotiation
Plans specify structure of complex negotiationsComposing complex strategies from elemental methods
Dynamic Negotiation Goals: Changing the objectives on-the-flyStrategic progression changes goalsChanging situation changes goals, then strategy
Dynamic Negotiation Preferences: Changing priorities “Invention” of preferences to cover new situations Toughening or liberalizing negotiation position
Dynamic Negotiation Organization: Changing partnersRelation of agent to others depends on strategy, situation, and historyConstruct “proximity groups” along different relational dimensionsStructure strategies to exploit these proximity groups
Resource management through automated negotiation
Addressing timeliness issues: Real-time performance
Monitor situation and progress
If needed, modify negotiation process
Negotiating agent
Messa
gin
g
CoordinationEngine
MonitoringEvaluation
Reconfigurator
Reco
nfi
gu
rati
on
Technology for achieving time-bounded results
•Flexible negotiation plans with monitored execution and reconfiguration
Fast methods for evaluating complex decision functions
Anytime strategies -- incremental, reactive Problem decomposition/solving/ and solution integration
Negotiation complexity
Complexity-aware negotiation monitors expected difficulty of solution construction Estimates of negotiation time and result
quality build on estimates from base CSP, preference management subsystem, and negotiation strategy structure
Agent adjusts or renegotiates constraints to speed solution construction or failure determination using preferences about constraints
Negotiation for options
Negotiation outcomes represent options to MMCO in decision-support activity Alternative deals using same
preferences or making different modifications of preferences
Simultaneous and serial options from concurrent and sequential negotiation stages
The Maintenance Action Form “Life Cycle”
•At the Marine Corp Base, in Yuma Arizona, a maintenance action form (MAF) is opened when any repair or equipment modification is made to a Harrier.
•The MAF can be used to trace many of the intricate details of the maintenance related decisions.
Open MAF Closed MAF
The Maintenance Action Form “Life Cycle”
Open MAF
Balance average Life Usage Across Fleet w/ Immediate Mission Goals
Minimize Down Time by Overlapping Maintenance Schedules
Balance Current Mission Aircraft Count against Aircraft Degradation History
Balance Night Crew Maintenance w/ Greater Daytime Parts Availability
Balance Scheduled Maintenance w/ Reactive Maintenance
Balance Throughput Across Maintenance Shops
Balance Pilot Skills
-Resource Allocation -
Allocate: Space, Time, Material, Equipment, People
Explicit Business Process Models
- Strategies, Decision Making -
Shift Change MAF Triage
Implicit Business Process Models
Next Step
PlansFramework refinements
Time management Optimization engine Sophisticated constraint management in scheduler
Complexity experiments/discussions Interface with complexity contractors
Demonstrations Interaction with MAG-13 personnel Initial Assessment Milestone (next Summer)
Integration with ISI’s CAMERA Plan: staged approach Leading towards negotiation between the flight and
maintenance schedulers