micants gabor karsai benoit dawant greg nordstrom chris vanbuskirk karlkim suwanmongkol patrick...

33
MICANTS Gabor Karsai Benoit Dawant Greg Nordstrom Chris vanBuskirk Karlkim Suwanmongkol Patrick Norris Jonathan Sprinkle (Vanderbilt/ ISIS) Jon Doyle Robert Laddaga Vera Ketelboeter (MIT) George Bloor (Boeing) Russ Currer (Idea Services)

Upload: tyrone-webb

Post on 02-Jan-2016

218 views

Category:

Documents


0 download

TRANSCRIPT

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)

MAPLANT:MAPLANT: MAintenance PLanning AgeNTs

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

Negotiation Algorithms

MIT

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

Domain modeling

Boeing

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

Modeling the Decision Support Environment

The Maintenance Action Form “Life Cycle”

Modeling the Decision Support Environment

The Maintenance Action Form “Life Cycle”

-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