770 likes | 895 Views
Advanced Scheduling Concepts Software can land an aircraft. Why can’t it plan a project ?. Session FRI35. Shane Archibald, Managing Principal Archibald Associates & Spider Project USA. Advanced Scheduling Concepts. In this session, we will
E N D
Advanced Scheduling ConceptsSoftware can land an aircraft. Why can’t it plan a project? • Session FRI35 Shane Archibald, Managing Principal Archibald Associates & Spider Project USA
Advanced Scheduling Concepts • In this session, we will • Review some significant advances in software and computing capabilities… and how they came about • Review what we think we know about scheduling… and maybe learn otherwise • Shift our way of thinking and take a giant step forward • Review some interesting and unique functionality in a very special Scheduling tool
The Evolution of Computers • Computers have never been good at finding answers to complex questions • The very best can only comprehend and answer simple, straightforward questions but still get them wrong nearly one third of the time • Search engines don’t answer a question–they deliver thousands of search results that match keywords • Are we satisfied? If so, then Why?
IBM’s R&D Challenge • The grand challenge driving IBM’s project was to win on the game show Jeopardy! • The broader goal was to create a new generation of technology that could find answers in unstructured data
IBM’s Answer Watson
A Significant Step in Computing Evolution – IBM’s Watson • Fed mountains of information, including text from • Commercial sources, such as the World Book Encyclopedia • Sources that allow open copying of their content, such as Wikipedia and books from Project Gutenberg
A Significant Step in Computing Evolution – IBM’s Watson • Programed it to respond based on rank of findings • Tested it in a mock game of Jeopardy! • Failed miserably!
Watson • They tried Again. And again. And failed each time. • Asked themselves how people learn and improve • The Paradigm Shift
Watson – Early Lessons Learned • Why was the Team successful? • Didn’t settle for existing “reality” • Stopped doing the same thing, expecting different results • Team asked themselves what the difference was between people and Watson • Understood a minor change in approach can lead to a significant change in outcome What does all this have to do with Scheduling?
IBM’s Watson – Relevant to Scheduling? • Traditional CPM Software • Uses a single predefined formula; no heuristics • Uses heavy human intervention; no automated adjustments or changes • Results require significant analysis, validation & manual adjustments; “I’ll take it from there…” • Process is cumbersome, inefficient and inaccurate
Cumbersome Process? • Collect information and estimates (duration, effort, resource, cost, risk, etc.) • Enter into scheduling system, calculate, validate; plan and schedule produced! • Work • Update for progress, recalculate, validate • Analyze results and identify issues • Meet with team to mitigate issues; make decisions and new plans • Enter decisions / changes to schedule, recalculate, validate • Repeat …For the life of the project!
Cumbersome Process? What if we are talking about aircraft autopilot? • Collect information • Enter into system • Fly (for a second) • Update information for flight progress, recalculate forecast, validate • Analyze results and identify issues • Meet with team to mitigate issues; make decisions and new plans • Enter decisions / changes to flight controls, recalculate, validate • Repeat …For the life of the flight!
Software Can Land an Aircraft! But it needs the variables, rules, and algorithms to do so
The Variables • Internal variables • Elevator (Pitch) • Rudder (Yaw) • Aileron (Roll) • Flaps (Lift) • Ground & Air speed • Thrust • Gross weight • Drag / Friction • External variables • Wind speed • Wind direction • Air pressure • Weather • Altitude • Destination (location, altitude, etc.) • Other aircraft • Other changes
The Rules • Gross weight –– Air Speed • Air speed –– Flaps • Pitch –– Thrust • Drag –– Thrust • Etc…
The Algorithm • If • Air Speed < X and Flaps < Y • Then • Increase Thrust until Air Speed => X • OR • Lower Flaps until Flaps => Y • Or… • Immediatelymeasure again and repeat
The Results • FAST response times • ACCURATE adjustments • REDUCED workload
Software Can Land an Aircraft! If a computer can land a 450 ton aircraft full of human life with zero intervention, then why can’t it correctly re-sequence a few thousand activities and resources? IT CAN! But it needs the variables, rules, and algorithms to do so
The Challenge How do we develop a “Self-Correcting” Schedule?
Existing “Reality” • Standard Schedule Input for an Activity • Duration • Logic • Resources • Cost • Baseline • *Timeframe (Calendar window)
Existing “Reality” • What are we trying to represent? • Duration – Amount of work (and resource capacity) • Logic – Relationship to other work • Resources – People, Equipment & Materials used to complete that work • Cost – Cost of the work (and overall Spending Plan) • Baseline – Target of the work; success criteria • *Timeframe (Calendar window) – When the work will take place
Existing “Reality” • What are the maintenance requirements? • Duration – Amount of work (and resource capacity) • Logic – Relationship to other work • Resources – People, Equipment & Materials used to complete that work • Cost – Cost of the work (and overall Spending Plan) • Baseline – Target of the work; success criteria • *Timeframe (Calendar window) – When the work will take place
A Sample Exercise Are there opportunities for improvement?? Absolutely!
Shifting The Paradigm • Didn’t settle for existing “reality” • Stopped doing the same thing, expecting different results • Asked themselves what the difference was between human-decision and software-output processes • Understood that a minor change in approach could lead to a significant change in outcome
Let’s Think About This… • What are the Variables? • What information do we, as a team and in a meeting, use when determining the best current plan or solution? • What are the Rules? • How do we, as a team, chose alternatives when tasked with changing our plan? • What should the Heuristic algorithm target? • The target is determined by the user • The algorithm is proprietary
A Sample Exercise Internal & External Variables
Variables • Internal Variables those that are completely self-contained within the subject, are directly related and work together to achieve some result • External Variables IMPACT the Internal Variables in some way, shape or form
Our Challenge… • …Is to develop the Internal Variables and related Rules such that they react to impacts from External Variables without human intervention • Assumption: The Schedule “Activity” is the basic building block of a Schedule and will be our focus
What are the Internal Variables of our Activity? • Unique characteristics • Timeframe • Effort (Hours) • Duration • Responsibility (Resources) • Cost to Complete the Work • *Scope of Work* (volume)
What are the External Variables? • Labor Availability • Equipment Availability • Availability of Supplies & Materials • Space limitations • True Predecessors • Special Events • Weather or Season • Site Conditions • Target or Baseline • Management “preference”
How do we Automate Internal Variables… …So they self-correct when something changes?
Primary Foundational Building Block Volume is an attribute of each activity, representing the amount of work to be done
Let’s Start SLOW, From The Top and Automate our Internal Variables • Unique characteristics • Timeframe • Effort (Hours) • Duration • Responsibility(Resources) • Cost to Complete the Work
Imagine… • What if we could wrap Rules around the activity, like… • You should delay the work until the last minute • You cannot pause the work; it must be fully completed in a single pass • If Site A has standing water, you must remove that water before digging the trench
We Will Have Automated… • Unique characteristics • Timeframe • Effort (Hours) • Duration • Responsibility (Resources) • Cost to Complete the Work
Imagine Complex Logic… • What if Logic could be used to represent complex relationships to other work, like… • You MUST do the work IMMEDIATELY following completion of predecessor Y • You can start the work as soon as predecessor X is 30 yards down the road but you cannot pass 50-yards until predecessor X is 10 yards from completion • If Z happens, then we need to doB, C, & D before A
We Will Have Automated… • Unique characteristics • Timeframe • Effort (Hours) • Duration • Responsibility (Resources) • Cost to Complete the Work