common tool for intelligent scheduling / critical chain ... · common tool for intelligent...
TRANSCRIPT
Common Tool for
Intelligent Scheduling /
Critical Chain Project Management
for US Navy & Contractor Shipyards
Rob Richards, Ph.D.
April 20, 2016
Planning, Production Processes &
Facilities Panel (PPP&F) Meeting
19-20 April, 2016
Portland, Oregon
Distribution. Approved for Public Release: Distribution Unlimited
Enhancements to Traditional Project
Management
Project Management
Critical Chain
Intelligent Scheduling
www.StottlerHenke.com
Benefits
Current Benefits
Execution driven by
global priorities
Greater throughput with same resources
4
US Navy Shipyards & Contractors
Utilize Many Scheduling / Project
Management Tools
Primavera P6
Artemis
PS8 (by Sciforma)
Open Plan (by Deltek)
Microsoft Project
PSS
Databases / Non-traditional PM tools: e.g. SQL
Server
Navy & Contractor Tools
Project Management: Primavera P6
ArtemisPSS
Open PlanMS Project
PS8Aurora
Critical Chain:PS8
Aurora
Intelligent Scheduling:Open Plan
Aurora
Aurora Functionality
Project Management
Critical Chain
Intelligent Scheduling
Aurora
Interfaces: Aurora can interface will
all others
Build in current tool: Benefit from
Intelligent Scheduling &/or Critical
Chain
PSS Case Study (1)
• PSS – Solution used by US Navy
– Single project only
• Developed Aurora import capability
• Successfully scheduled sample PSS
provided by the Navy
– Informed that PSS project models have
not been successfully scheduled in other
tools
PSS Case Study (2)
• Multi-project: Aurora successfully performs
multi-project scheduling from multiple PSS
models
– Over 70,000 total tasks
– Capability not currently available to the
Navy
Projects Completed by
• Synchronized effort of multiple resources
• Goal of Intelligent Scheduling: optimize the synchronization of resources and other constraints to minimize the duration of the project
Intelligent Scheduling: Expert
Knowledge & Experience Needed
• Mathematics is not enough (Problem is NP-Complete, takes exponential time for optimal solution)
• Encoding expert knowledge & experience in software can make this knowledge available to others
– Found domain specific heuristics many times beneficial in other domains.
13
Aurora Summary
World’s most intelligent scheduling engine and
standard project management features
• Multiple-pass intelligent resource-constrained
scheduling
• Mixed-mode scheduling providing both forward
and backward scheduling, available on a task-by-
task basis
• Schedule Rationale – Aurora includes the
rationale for each task on why it was schedule
where it was schedule
• Designed for customization
• Designed for integration
14
Aurora Customers (1)
15
Aurora Customers (2)
16
Value Proposition: Aurora
The EXACT same project can be completed
significantly faster by using the intelligent
scheduling engine in Aurora, versus ANY
other software available.
• That is, once the resource-loaded project model is
developed, using Aurora will determine a shorter
initial schedule, and then by using Aurora during
the execution of the project Aurora will make more
efficient decisions based on the reality on the
ground so the execution results in a shorter
project duration versus any other software
available.
Why order matters?
A
B
C
E
D
Schedule 1: B before C
A B C ED
Schedule 1: C before B
A BC ED
The example below involves jobs using two resources, purple and white
18
Aurora-CCPM Summary
Enterprise-Level Critical Chain Project
Management Software
Multi Project
Provide GLOBAL view of entire project –
prioritize execution to maximize overall project
benefit
19
Potential Workflow with P6:
Flowchart for Critical Chain
Build in
Primavera P6
PMs use updated Primavera
P6 model for EVM, etc.
Schedule in
Aurora
Enter status updates
Transfer to Aurora via XER
Transfer results to Primavera P6
PMs use updated Aurora
model for Task Priorities via
Critical Chain
20
Aurora Unique
Capabilities & Benefits (1)
Large project support• Supports 100,000+ tasks per project
Integrates with Enterprise Software• Oracle, SAP, proprietary systems
Multiple-pass intelligent resource-constrained
scheduling• Generates shorter project duration & shorter remaining
project durations during execution
Mixed-mode scheduling providing both ASAP & ALAP
scheduling, available on a task-by-task basis.• All other critical chain software only provides ALAP
scheduling
21
Aurora Unique
Capabilities & Benefits (2)
Primavera P6 Integration• Only Critical Chain software that is designed to work with
Primavera P6
Support beyond Finish-to-Start Constraints• Only software that understands and can perform Critical
Chain with S-S, F-F, etc., also supports Leads and Lags.
Schedule Rationale
• Aurora includes the rationale for each task on why it was
schedule where it was scheduled
Designed for Customization
• Can be extended to work with enterprise specific needs
Aurora Unique
Capabilities & Benefits (3)
Supports More Types of Constraints
• Resource constraints
• Resource Sets – job can be performed by 2 different
specialists or (1 generalist and 1 specialist) or 2 generalists.
• Spatial constraints – e.g.,
– job requires a certain location or type of space;
– two elements should (or should not) be next to each
other
• Ergonomic constraints – individual limitations on work
conditions
22
Aurora Unique
Capabilities & Benefits (4)
Supports More Types of Constraints
• Skills / Certifications in addition to Occupations
– E.g., Mechanic (occupation) with 4 additional skills or
certifications
• Constraints based on status/state
– E.g., no hot work when other conditions in effect
• Shift based constraints
– Task needs to be completed during single shift
– Do not start task unless x% of time left in shift
23
24
Explanation of Why each Task was Scheduled
Where it was
25
Schedule Results: Explanation
26
Resource Contention: Visual
Viewing resource contentions in Aurora
In this sample schedule, each task has a
resource requirement attached as follows
Resource-constrained
relationship
Note that there is a total amount of only 5
resources. Tasks 2, 4, and 5 are started at
the same time (5 resources used). Task 2
completes, but there are not enough
resources left to start Task 6, so Task 6
must wait until Task 5 is complete.
Task # Resources Needed
2 1
3 2
4 2
5 2
Aurora shows you this resource-constrained relationship with a blue-grey
line between the two Tasks.
27
Resource Contention: Task 6
Single Element Display
Overall schedule flow
Gantt Chart View
The Single Element Display in
Aurora helps the user visualize the
relationships between tasks:
•Blue-grey lines denote a resource-constrained
work flow
•Red lines denote temporally-constrained work
flow
Referring to the three diagrams to
the right:
•Task 6 can start any time after Task 2 is
completed (red line in Single Element Display),
but must wait for Task 5 to release resources
(blue-grey line).
•Tasks 3 and 8 must wait for 6 to release
resources before they can start, as shown in
the Gantt Chart View
•Task 7 starts after Task 6 completes (red line in
Single Element Display)
Constraints Add Complexity
• Technical constraints (E.g., F-S, F-F, S-F, lags)
• Resource constraints
– Labor constraints
– Equipment, Tools (e.g., cranes)
• Usage constraints – e.g., tool can only be used for
so many hours continuously &/or during a day.
• Spatial / physical space constraints – e.g.,– job requires a certain location or type of space;
– two elements should (or should not) be next to each other
• Ergonomic constraints – individual limitations on
work conditions
More Complexity:
Shipbuilding & Ship Maintenance
Concurrent & Non-Concurrent
• Complex operations requires concept of
concurrent & non-concurrent tasks
• Adds another layer of complexity
Turnaround Project Network 2,500+
Tasks
Results: 2,500+ Turnaround
• Primavera P6 65 days
– Performed by 3rd party
• Aurora 57 days
• Primavera P6 14% longer than Aurora
• Critical Path is 46 days
– P6 is 19 days longer than CP
– Aurora is 11 days longer than CP
– So % diff over CP is > 73%
Maybe Only for ‘Big’ Problems?
• Let’s look at a toy problem …
• ‘Simple’ problem with only 7 real tasks and 2
milestones.
‘Simple’ Network details• Number superscript of circle is duration in
days
• Number subscript of circle is resources
needed
• There is only 1 type of resource
Critical Path of Network
• Solution when infinite resources available
• Find longest path = 1 + 1 + 5 = 7
• So Critical Path is 7 days
Gantt Chart of Critical Path
• Note: Sat/Sun are not workdays
Set Resource Pool to 5
• Only one type of resource to make the
problem ‘simple’
Gantt Chart Showing the Critical
Path & Histogram
• Note: now some resources are overloaded
• Resource level to solve over allocation
Resource-Leveled in
MS Project = 9 days
3
1 5
4 7
2 6
Resource
Units
Resource
Units
Time Time
Simple Enough, Right?
• Another view of the solution
But there is a better solution …
P6 Model: Resource Leveled = 8
days
Simple?
• Critical Path =
1 + 1 + 5 =7
• 1 resource
5 total units
End of Story… Not quite
• There is an even better solution
• 7 days
• So this ‘simple’ problem could not even be solved
well by the world’s ‘premier’ project management
tools.
• Can you solve this ‘simple’ problem in 7 days?
Tetris
• Shapes similar to resource
profile of individual tasks
• Holes when playing Tetris
represent resource
allocation inefficiencies.
– E.g., black regions in
figure to the right
Primavera Resource Leveling flowchart
48
Long-Term Refinery-Related
Upgrade
MS Project 2007 = 1,627 days
Primavera P6 = 1,528 days
Intelligent scheduling
(Aurora) = 1,240 days
300 Task Example: Aerospace
Application
Multiple Resource Types Needed for most tasks
300 Task Example: Network in Aurora
Results: 300 Task Example
• MS Project 2003 145.6 days
• MS Project 2007 145.6 days
• Primavera P6 115 days
– Performed by 3rd party
• Deltek Open Plan 110 days
– Performed by Deltek
• Aurora 102.5 days
Take Aways
• Scheduling engine is critical
• Paying up to 100% penalty due to the scheduling engine
• Changing to an improved scheduling engine may be the greatest potential improvement available to your project
– Just press a different button
• Provide an unfair competitive advantage
Aurora: Intelligent Scheduling /
Critical Chain Project Management
Project Management
Critical Chain
Intelligent Scheduling
Aurora
5555
56
57
58
59
Requires resource 1 Requires resource 2 Requires resource 1 and 2
As scheduled:
Critical chain:
Critical Chain – Example 3
Why can’t you search for the best order?
• Ordering options scale as N!
Two tasks that can occur in either order (one at a time)
results in two options
Three tasks that can occur in any order (one at a time)
results in six options
Four tasks that can occur in any order (one at a time)
results in twenty-four options
65
Why Intelligent Scheduling?
Resource-loaded scheduling is difficult
• Whole field of Operations Research
Not leveraged in the Project Management
domains that Primavera serves
Usually demand is generated from
knowledgeable users
Not promoted by solution providers
65
66
Tasks,
Resources,
Constraints
Preprocessor
Task
Queue
Schedule
Objects
Task Ordering:
Pick a Task
Select/Assign
Resources Task
& Time Window
Handle
ProblemsProcess Task
Propagate
Constraints
Fix Problems &
Optimize
Schedule
Human
Directives
Criteria &
Instructions
Methods &
KnowledgeGuidance
Problem
Resolution
Knowledge
Knowledge
Editors
Aurora Architecture
Benefits of Sophisticated Underlying
Scheduler
• Results in a better initial schedule
• Execution: Schedule is more flexible and better able to accommodate change.
– Schedule is “self-aware” of what tasks can most easily be moved. I.e., tasks store information about why it was placed (where it is placed).
Scheduling is Fast
• 300 tasks ~ 3-6 seconds
• 2,000 tasks ~ 11 seconds
• 3,000 tasks ~ 15-20 seconds
• 4,000 tasks ~ 43 seconds
• 10,000 tasks ~ 125 seconds
• High degree of variation - it depends a lot on the
shape of the problem
Results
• Multiple sources reveal the effect of the Scheduling Engine
• For larger projects (>1,000): Aurora has been able to find project durations SIGNIFICANTLY shorter than other software for the same data set.
• Much of the potential improvement offered by modeling resources is being squandered.
• Resource leveled schedules are sub-optimal
Planning & Execution
• Initial Schedule benefits
• Execution benefits even MORE
– If scheduler is inefficient, every delay will be
magnified because re-allocation of resources
will be deficient
Benefits of Sophisticated Underlying
Scheduler: Planning & Execution
• Results in a better initial schedule
• Execution: Schedule is more flexible and better able to accommodate change.
– If scheduler is inefficient, every delay will be magnified because re-allocation of resources will be deficient
– Schedule is “self-aware” of what tasks can most easily be moved. I.e., tasks store information about what placed it where it is placed.
Critical
Resources
• Initial schedule usually has different critical
resources via different schedulers
• Execution mode updates will also usually
have different critical resources
– Picking less than optimal resources if
resource increases are used to make up
slippage.
• Better to find more efficient schedule with
intelligent scheduling, then increase critical
resources if necessary.
Analogy: Chess
• Chess mathematically is similar to resource
loaded scheduling.
– Easy: Create basic rules to play
– Hard: Win against other intelligent players
• Resource Leveling in most software is
analogous to 'Easy' chess solution
• Each move analogous to execution mode
update, challenge continues throughout
game/execution of schedule