480 likes | 591 Views
Resource Optimization of Workflow Problems. Diploma Thesis Martin Homik. Tutors: Christian Schulte Tobias Müller. Overview. Motivation Problem specification Model and heuristic Implementation Results Summary Demo. Object A. Object B. Motivation: Bulk Production.
E N D
Resource Optimization of Workflow Problems Diploma Thesis Martin Homik Tutors: Christian Schulte Tobias Müller
Overview • Motivation • Problem specification • Model and heuristic • Implementation • Results • Summary • Demo
Object A Object B Motivation: Bulk Production • Goals of assembly lines: • high output capacity • low investment (machine types, number) • Goals of flexible production systems: • one assembly line for all variants!
Object A+B Motivation: Bulk Production • Goals of assembly lines: • high output capacity • low investment (machine types, number) • Goals of flexible production systems: • one assembly line for all variants!
Abstraction as a workflow problem! Motivation Bulk production problem is transferable: • Industry (computer integrated manufacturing) • Building trade (house-building) • Business life (customer service) • Computer science (distributed programming)
Workflow Abstraction • Standardization by the Workflow Management Coalition: • Terms • Workflow definitions • Workflow systems
Workflow Abstraction Levels • Process logic • At what time is which activity to be executed? • Organisation • Who executes which activity? • Infrastructur • What resources are in what number requiered? Process definition: is a data structure which contains informations about process logic, organisation and infrastructure.
Terms • Attributed resources • Flexible processes • Continuous supply and directed flow • Balance, cycle time • Organisation, infrastructur • Partitioning
Overlap Overlap C: 150 € Sut: 200 St: 90% C: 250 € Sut: 200 St: 95% C: 400 € Sut: 200 St: 95% Attributed Resources(Workflow Participant Types) 11, 12, 15 12, 13, 16, 19 17, 18, 19 Skills overlap arbitrarily! C = Cost Sut = set-up time St = Stability
11 13 17 18 0 12 16 19 100 15 Start End Precedence relation Activity Partially Ordered Plan (POP) Each activity has to be executet!
11 13 17 18 20 21 22 0 12 16 19 100 11 13 17 11 13 17 18 15 0 12 16 19 100 0 12 19 100 15 15 Flexible Processes
Continuous Supply There is always work to do at each station! Object are passed only in one direction!
Scheduling: • min. running time • cycle time running time • Continuous supply: • running time • min. cycle time Balance
11 13 17 18 20 21 22 0 12 16 19 100 11 13 17 11 13 17 18 15 0 12 16 19 100 0 12 19 100 15 15 Problem Specification (Given) maximal cycle time
Aj Blocki Problem Specification (2) Organisation? Infrastructure?
Aj Blocki Problem Specification (2) Organisation? Process logic? Infrastructure?
11 13 17 18 0 12 16 19 100 11 13 17 18 15 0 12 16 19 100 15 Partitioning (Example) Partitioning guarantees a directed data flow!
11 13 17 18 0 12 16 19 100 15 1. Rule: 15 16: 15 in 16 in different blocks 11, 12, 15 12, 13, 16, 19 17, 18, 19 Partitioning
11 13 17 18 0 12 16 19 100 15 2. Rule: 12 15: 12 in and 15 in the same block 11, 12, 15 12, 13, 16, 19 17, 18, 19 Partitioning (2)
11 13 17 18 0 12 16 19 100 15 11, 12, 15 3. Rule: 16 19: 16 in 19 in and a) different blocks b) the same block 12, 13, 16, 19 17, 18, 19 Partitioning (3)
Basic Model • Data structures • Block running time • Infrastructure • Effective cycle time
Set of all activities: Set of all dates: Set of percentage: Model: Data Structures Number blocks: Set of all costs: General loss: Maximum cycle time:
Model: Resource Projections:
Model: Data Structures Participant type tuple: Number participant types tuple: Costs:
Nodes Edges Projections: Model: POP A POP is a directed, acyclic and compound graph: We denote the set of all POPs by:
Model: POP Union: Let Then
Model: Partition Let and Partition of Au in: And ...next slide
Model: Partition(2) Properties of a directed flow: Otherwise:
Model: Partition(3) General Assignment:
U U A1 A2 A3 Su1 Su2 t Total Running Time per Block transit time running times set-up time total running time / block
Rtb Infrastructure Number of resources in a block Si (where WPT Wi) Number resources
Process 1 5 6 4 8 Process 2 1 0 7 8 Sum 5 6 7 8 26 Infrastructur (2) • How many resources are required for flexible processes? • Compute the number per block and per POP. • Choose the block with maximum number. • Sum all maxima.
Cycle Time cycle time number resources
Cycle Time (2) • What is the (effective) solution cycle time? • Compute per block and POP the cycle time. • The highest cycle time ist the effective cycle time.
number blocks Number of blocks is increasing Choose the block with the least resource type assignment possibilities. Assign the cheapest resource type. resources Choose the longest activity. Assign it to the block with the cheapest resource. activities Heuristic (Design)
400€ 150€ 250€ Goal-oriented Heuristic 1. Filter: nondetermined activity 2. Order/Select: choose longest activity 3. Value: assign to the block with the cheapest WPT.
400€ 150€ 250€ Problem: Goal-oriented Heuristic Bad!
400€ 150€ 250€ Problem: Goal-oriented Heuristic Better!
Implementation (Woop) • Mozart/Oz: constraint programming • C. 15 000 lines of code • Direct translation of the mathematical model • Dynamic script generation • Dynamic choice of heuristic • Interface to standard search machines • User-defined constraints
Implementation (Woop) • Administration of solutions/problems • Export of solutions • Record function: Email/File • Editor for designing of POPs • Verification of POPs • Internationalization/Localization
Results Example: • Two POPs • Each 50 activities • 9 WPT • First solution: • c. 60 choice points • 1Sec. • Best solution: • 13:40 hours • 22.084.534 cp • 4.74% better
Reduced tool magazines More blocks Increase in complexity Costs: Resources, Blocks, Tools Precise Model Tools:
More exact results No improvement in runtime! Precise Model (2) Mixed data flow: Local duration times: • Concurrent processing of different POPs
Identification of a new class of problems Contribution (Summary) Practice: Successful application of Woop in practice Abstraction: of a manufacturing problem as a ... Workflow Problem: definition und analysis Woop: implementation of a software for finding generic solutions; Mozart/Oz ; Technique: CP
Related Work Total concept: • Workflow Management Coalition (WfMC) www.wfmc.org • S. Bussmann, K. Schild: An agent-based approach to the control of flexible production systems Simulation und Verifikation: • Andreas Oberweis: Zeit- und Kostenanalyse von Geschäftsprozessen mit höheren Petrinetzen • Scheer: ARIS Toolset
Related Work(2) Generic Approximation: • M. Gillmann: Konfiguration verteilter Workflow Management Systeme mit Leistungsgarantien • No directed data flow • Involves a control flow • Resources are given • Approximation of the maximal cycle time • Pessimistic Approximation by Markov-Chains
Scheduling (Bridge) • WPTs: • 10 types • No overlap! • Activities: • 44 activities • crane work is time • expensive
Scheduling (Bridge) worker excavator carpentry crane 35 2 11 17 23 29 36 42 3 12 18 24 30 37 4 8 13 19 25 31 1 38 44 5 9 14 20 26 32 39 6 15 21 27 33 40 43 7 16 22 28 34 10 Pile driver caterpillar 41 concrete mixer bricklaying