a scheduling service oriented approach for workflow scheduling
DESCRIPTION
A Scheduling Service Oriented Approach for Workflow Scheduling. by Conan Fan Li. Supervisor: Dr . Wendy MacCaull Committee member:Dr. Man Lin Committee member:Dr. Iker Gondra. A SSO approach for workflow scheduling. Initiatives - PowerPoint PPT PresentationTRANSCRIPT
![Page 1: A Scheduling Service Oriented Approach for Workflow Scheduling](https://reader035.vdocuments.us/reader035/viewer/2022062308/568130ae550346895d96bded/html5/thumbnails/1.jpg)
A Scheduling Service Oriented Approach for Workflow Scheduling
byConan Fan Li
Supervisor: Dr. Wendy MacCaullCommittee member: Dr. Man LinCommittee member: Dr. Iker Gondra
![Page 2: A Scheduling Service Oriented Approach for Workflow Scheduling](https://reader035.vdocuments.us/reader035/viewer/2022062308/568130ae550346895d96bded/html5/thumbnails/2.jpg)
A SSO approach for workflow scheduling
• Initiatives• AIF project: building decision-support through dynamic
workflow systems.• Workflow engines are not naturally built for scheduling
problems
![Page 3: A Scheduling Service Oriented Approach for Workflow Scheduling](https://reader035.vdocuments.us/reader035/viewer/2022062308/568130ae550346895d96bded/html5/thumbnails/3.jpg)
What is a workflow?• A workflow or a workflow model is a depiction of a
business process composed of a sequence of operations (tasks).
• Tasks are connected in the form of a directed graph to provide an abstraction of the real work for further assessment.
![Page 4: A Scheduling Service Oriented Approach for Workflow Scheduling](https://reader035.vdocuments.us/reader035/viewer/2022062308/568130ae550346895d96bded/html5/thumbnails/4.jpg)
What is a workflow?
![Page 5: A Scheduling Service Oriented Approach for Workflow Scheduling](https://reader035.vdocuments.us/reader035/viewer/2022062308/568130ae550346895d96bded/html5/thumbnails/5.jpg)
What is a workflow?
![Page 6: A Scheduling Service Oriented Approach for Workflow Scheduling](https://reader035.vdocuments.us/reader035/viewer/2022062308/568130ae550346895d96bded/html5/thumbnails/6.jpg)
Why workflow?• Abstraction & visualization• Clarity & consistency• Automation
![Page 7: A Scheduling Service Oriented Approach for Workflow Scheduling](https://reader035.vdocuments.us/reader035/viewer/2022062308/568130ae550346895d96bded/html5/thumbnails/7.jpg)
What is scheduling?• The process of making decisions about the
allocation of resources for a number of tasks to achieve one or more objectives?
• Two main applications
![Page 8: A Scheduling Service Oriented Approach for Workflow Scheduling](https://reader035.vdocuments.us/reader035/viewer/2022062308/568130ae550346895d96bded/html5/thumbnails/8.jpg)
Application of schedulingManufacturing (e.g., a car factory)
![Page 9: A Scheduling Service Oriented Approach for Workflow Scheduling](https://reader035.vdocuments.us/reader035/viewer/2022062308/568130ae550346895d96bded/html5/thumbnails/9.jpg)
Application of schedulingService industry (e.g., Gate Assignments at an Airport)
![Page 10: A Scheduling Service Oriented Approach for Workflow Scheduling](https://reader035.vdocuments.us/reader035/viewer/2022062308/568130ae550346895d96bded/html5/thumbnails/10.jpg)
Basics of Scheduling• A scheduling problem can be described by a triplet
α | β | γ. • α describes the machine environment• β describes the processing characteristics and constraints• γ describes the objective
• The triplet Jm | prec | Cmax describes a job shop scheduling problem with precedence constraints and an objective to minimize the makespan
![Page 11: A Scheduling Service Oriented Approach for Workflow Scheduling](https://reader035.vdocuments.us/reader035/viewer/2022062308/568130ae550346895d96bded/html5/thumbnails/11.jpg)
A Job Shop Example
(0,7) (1,9) (2,21) (3,5) (4,15) (5,30)
M0
M1
-job, processing time, machine, precedence, requirement, schedule, makespan
![Page 12: A Scheduling Service Oriented Approach for Workflow Scheduling](https://reader035.vdocuments.us/reader035/viewer/2022062308/568130ae550346895d96bded/html5/thumbnails/12.jpg)
Workflow Scheduling
• Petri net based scheduling
job machine precedence constraint
![Page 13: A Scheduling Service Oriented Approach for Workflow Scheduling](https://reader035.vdocuments.us/reader035/viewer/2022062308/568130ae550346895d96bded/html5/thumbnails/13.jpg)
Workflow Scheduling
Petri net based scheduling
(0,7) (1,9) (2,21) (3,5) (4,15) (5,30)
M0
M1
job 0
job 2
job 4
M0
M1
job 5
job 3
job 1
![Page 14: A Scheduling Service Oriented Approach for Workflow Scheduling](https://reader035.vdocuments.us/reader035/viewer/2022062308/568130ae550346895d96bded/html5/thumbnails/14.jpg)
The SSO approach• An approach that maps a scheduling problem onto a
workflow model that consists of tasks that provide services for scheduling.
• Proposed scheduling services include:• selection• allocation• push• pop• process
![Page 15: A Scheduling Service Oriented Approach for Workflow Scheduling](https://reader035.vdocuments.us/reader035/viewer/2022062308/568130ae550346895d96bded/html5/thumbnails/15.jpg)
Selection
5 10 15 20 250
(0,7)
(1,9)
(4,15)M0
M1
(0,7) (1,9) (2,21) (3,5) (4,15) (5,30)
M0
M1
![Page 16: A Scheduling Service Oriented Approach for Workflow Scheduling](https://reader035.vdocuments.us/reader035/viewer/2022062308/568130ae550346895d96bded/html5/thumbnails/16.jpg)
Selection
• S'=select(S,c) returns a subset of S. Fore each element e in S', c(e) must be True.
• Eg. if we define o c1(j)= isNotScheduled(j) && isIndependent(j)
o then select(J,c1) returns {J0, J2, J4}
(0,7) (1,9) (2,21) (3,5) (4,15) (5,30)
M0
M1
![Page 17: A Scheduling Service Oriented Approach for Workflow Scheduling](https://reader035.vdocuments.us/reader035/viewer/2022062308/568130ae550346895d96bded/html5/thumbnails/17.jpg)
Allocation
• Given a partial schedule and a number of jobs ready to be scheduled, the allocation service produces the set of successors
• For example, let sch0 be the initial schedule where no job is scheduled. allocate(sch0,{J0,J2,J4}) will generate the following three schedules.
![Page 18: A Scheduling Service Oriented Approach for Workflow Scheduling](https://reader035.vdocuments.us/reader035/viewer/2022062308/568130ae550346895d96bded/html5/thumbnails/18.jpg)
Allocation
• allocate(sch0,{J0,J2,J4})
5 10 15 20 250
(4,15)M0
M1
510
15 20 250
(0,7)M0
M1
510
15 20 250
(2,21)M0
M1
![Page 19: A Scheduling Service Oriented Approach for Workflow Scheduling](https://reader035.vdocuments.us/reader035/viewer/2022062308/568130ae550346895d96bded/html5/thumbnails/19.jpg)
Push & Pop
5 10 15 20 250
(4,15)M0
M1
510
15 20 250
(0,7)M0
M1
510
15 20 250
(2,21)M0
M1
Push
Pop
![Page 20: A Scheduling Service Oriented Approach for Workflow Scheduling](https://reader035.vdocuments.us/reader035/viewer/2022062308/568130ae550346895d96bded/html5/thumbnails/20.jpg)
Process
5 10 15 20 250 30
(0,7)
(1,9)
(4,15)M0
M1
clock=7
futurepast now
slot=16
(0,7) (1,9)(2,21
)(3,5)
(4,15)
(5,30)
M0
M1
![Page 21: A Scheduling Service Oriented Approach for Workflow Scheduling](https://reader035.vdocuments.us/reader035/viewer/2022062308/568130ae550346895d96bded/html5/thumbnails/21.jpg)
Process
(0,7) (1,9)(2,21
)(3,5)
(4,15)
(5,30)
M0
M1
5 10 15 20 250 30
(0,7)
(1,9)
(4,15)M0
M1
clock=16
futurepast now
slot=22
![Page 22: A Scheduling Service Oriented Approach for Workflow Scheduling](https://reader035.vdocuments.us/reader035/viewer/2022062308/568130ae550346895d96bded/html5/thumbnails/22.jpg)
Schedule-flow
select
allocate
process
push
something is selected
nothing is selected
queue is not empty
endstart
pop
![Page 23: A Scheduling Service Oriented Approach for Workflow Scheduling](https://reader035.vdocuments.us/reader035/viewer/2022062308/568130ae550346895d96bded/html5/thumbnails/23.jpg)
Schedule-flow in YAWL
![Page 24: A Scheduling Service Oriented Approach for Workflow Scheduling](https://reader035.vdocuments.us/reader035/viewer/2022062308/568130ae550346895d96bded/html5/thumbnails/24.jpg)
![Page 25: A Scheduling Service Oriented Approach for Workflow Scheduling](https://reader035.vdocuments.us/reader035/viewer/2022062308/568130ae550346895d96bded/html5/thumbnails/25.jpg)
PYSF
![Page 26: A Scheduling Service Oriented Approach for Workflow Scheduling](https://reader035.vdocuments.us/reader035/viewer/2022062308/568130ae550346895d96bded/html5/thumbnails/26.jpg)
PYSF
![Page 27: A Scheduling Service Oriented Approach for Workflow Scheduling](https://reader035.vdocuments.us/reader035/viewer/2022062308/568130ae550346895d96bded/html5/thumbnails/27.jpg)
SSO vs. Classic
![Page 28: A Scheduling Service Oriented Approach for Workflow Scheduling](https://reader035.vdocuments.us/reader035/viewer/2022062308/568130ae550346895d96bded/html5/thumbnails/28.jpg)
SSO vs. Classic
• Size
![Page 29: A Scheduling Service Oriented Approach for Workflow Scheduling](https://reader035.vdocuments.us/reader035/viewer/2022062308/568130ae550346895d96bded/html5/thumbnails/29.jpg)
SSO vs. Classic
• Size
select
allocate
process
push
something is selected
nothing is selected
queue is not empty
endstart
pop
![Page 30: A Scheduling Service Oriented Approach for Workflow Scheduling](https://reader035.vdocuments.us/reader035/viewer/2022062308/568130ae550346895d96bded/html5/thumbnails/30.jpg)
SSO vs. Classic
1:0
![Page 31: A Scheduling Service Oriented Approach for Workflow Scheduling](https://reader035.vdocuments.us/reader035/viewer/2022062308/568130ae550346895d96bded/html5/thumbnails/31.jpg)
SSO vs. Classic
• Performance
![Page 32: A Scheduling Service Oriented Approach for Workflow Scheduling](https://reader035.vdocuments.us/reader035/viewer/2022062308/568130ae550346895d96bded/html5/thumbnails/32.jpg)
SSO vs. Classic
SSO Classic
Time/second 0.22 > 20
Makespan 1094 1100
![Page 33: A Scheduling Service Oriented Approach for Workflow Scheduling](https://reader035.vdocuments.us/reader035/viewer/2022062308/568130ae550346895d96bded/html5/thumbnails/33.jpg)
SSO vs. Classic
2:0