SlideShare a Scribd company logo
Flow shop scheduling
By- Kunal Goswami
Mentor – Joy Chandra Mukherjee
1
Content :
Definition
Application
Methods
Algorithm
Conclusion
Reference
2
Definition
3
Definition
• Flow shop scheduling problems, are a class
of scheduling problems with a workshop in which the
flow control shall enable an appropriate sequencing for
each job and for processing on a set of machines or with
other resources 1,2,...,m in compliance with given
processing orders.
• For an operating system – we have many task to be done.
Especially the maintaining of a continuous flow of
processing tasks is desired with a minimum of idle
time and a minimum of waiting time.
4
Application
5
Example
Practical application :
As we have seen strict order of all operations to be
performed on all jobs. Flow shop scheduling may apply as
well to production facilities as to computing designs.
• It is used in processing industry where a strict order of
production should be done
• In can be used in construction work.
• In medical observation
In space technology, agricultural processing basically in
every (multiprograming + strict order job).
6
Application
It works in following case in steps :
i. we should have multiprogramming environment
ii. input and then executed
iii. Job queued for O/P
iv. O/P printed/used
• Suppose there are 1 to n job and there are m processor and we
have some more information like for task T3i for processor 3.
And it takes tj time.
Note - m >= n
• No more then 1 task for any processor at a time.
• N jobs requiring m tasks and each to be scheduled in m
processor. 7
Application
So in diagram view situation is like this.
Assume we have 4 jobs and each jobs can have 5 tasks.
Jobs J1 J2 J3 J4
Tasks
t1
t2
t3
t4
t5
3
1
4
2
2
2
0
3
2
2
0
1
4
2
1
1
1
3
2
1
8
Usefuldata:
The finish time of fi(S) of job i is the time at
which all task of job i has been completed in
schedule S.
• The finish time F(S) of a schedule S is :
F(S) = max {fi(S)}
• The mean flow time MFT(S) is :
MFT(S) = (1/n). ∑ fi(S)
We try to get optimal finish time i.e. minimal
finish time. 9
Methods
10
Above scheduling problem is done by two method
Two possible solution : i) pre-emptive
ii) non preemptive.
11
i) pre-emptive Job
In it we do permits preemption (halting) of
tasks, from a cooperative multitasking system
wherein processes/tasks must be explicitly
programmed to yield when they do not need
system resources.
Rules :
a) tji cannot start unit tj-1,i finishes.
b) Task ti of any job will go to processor i only.
12
Example
J1 J2
13
Example
First task T1 is coming from two jobs we have.
t11 = 2 and t12 = 0
Both will be processed sequentially ;
all task-1 will complete in 2 sec.
14
Example
Now Task-2 comes ;
T21 = 3 and T22 = 3
Task-2 of Job-1 cannot start as it’s first Task-1 needed to
be completed. So Task-2 of Job-2 starts.
15
Example
Now Task-3 comes ;
T31 = 5 and T32 = 2
Task-3 of Job-1 cannot start as it’s first Task-2 needed
to be completed.
So is Task-3 of Job-2 which require Task-2 to complete.
16
Example
Finish time = Max (F1 , F2) = max (5,11) = 11
5 and 11 are finish time of respective jobs.
Mean flow time = ½ .(5+11) = 8
17
Example
ii) pre-emptive Job
Preemptive Scheduling is a CPU scheduling technique
that works by dividing time slots of CPU to a given
process.
When the burst time of the process is greater than CPU
cycle, it is placed back into the ready queue and will
execute in the next chance. This scheduling is used when
the process switch to ready state.
Rules :
a) tji cannot start unit tj-1,i finishes.
b) Task ti of any job will go to processor i only.
18
Example
J1 J2
19
Example
First task T1 is coming from two jobs we have.
t11 = 2 and t12 = 0,
It donot have any conflict job in machine. So execute
normally.
20
Example
Task T2 comes.
t21 = 3 and t22 = 3,
• t21 , t22 comes. As t11 not complete. So t21 goes into
queue. And t22 starts.
• After t22 finishes t21 again complete it’s remaining cycle.
21
Example
Task-3 comes.
t31 = 5 and t32 = 2,
• t31 , t32 comes. As t21 not complete. So t31 goes into
queue. Also same with t32 .
• t31 starts after 5 unit time. Then t32 completes.
22
Example
Finish time = Max (F1 , F2) = max (10,12) = 12
10 and 12 are finish time of respective jobs.
Mean flow time = ½ .(10+12) = 11
23
Algorithm
24
Algorithms
• The machine sequence of all jobs is the same. The
problem is to find the job sequences on the machines
which minimize the makespan , i.e. the maximum of the
completion times of all tasks.
• It is similar to 2-machine problem with 2 machines to
solve different burst jobs. It is well known that in case of
real time situations - the problem is NP-hard.
• There are some optimized algorithms which uses
Dynamic algorithm, Branch and Bound and Heuristic
algorithm such as genetic algorithm.
25
Algorithms
 Popular algorithms are :
• Johnson algorithm – nlogn
• GS algorithm (Gonzalez and sahni)
• Genetic algorithm
 n.Logn is most optimized solution for finite no. of tasks.
 We will see Johnson algorithm.
26
Algorithms
Johnson's Algorithm for 2 machine
Step 1 : Form set1 containing all the jobs with p1j < p2j -- (nlogn)
Step 2 : Form set2 containing all the jobs with p1j > p2j, the jobs with
p1j=p2j may be put in either set. -- (n)
Step 3 :
Form the sequence as follows:
(i) The job in set1 go first in the sequence and they go in increasing
order of p1j(SPT) – shortest process time -- O.(c)
(ii) The jobs in set2 follow in decreasing order of p2j (LPT). Ties are
broken arbitrarily. – longest process time -- O.(c) 27
Example
Let’s try Johnson's algorithm in our example :
We remember it had took us 11 unit for non-preemptive
and 12 unit for pre-emptive scheduling using naive
process.
Our job sequence was :
28
J1 J2
Example
t1 t2 t3
J1 2 3 5
J2 0 3 2
step 1 – find least among all
• 0 is ans.
• cut that column and put in array from left or right
according to job1 or job2.
• 0 task is of J2. So choose from right
29
J1 J2
Example
t2 t3 (task-1 removed)
J1 3 5
J2 3 2
step 1 – find least among all now
• 2 is ans.
• cut that column and put in array from left or right
according to job1 or job2.
• 0 task is of J2. So choose from right
30
J1 J2
Example
t2 (task-3 removed)
J1 3
J2 3
step 1 – find least among all now
• 3 is ans.
• cut that column and put in array from left or right
according to job1 or job2.
• 0 task is of J2. So choose from right
31
J1 J2
Example
Above is job sequence for algorithm
Now make table including 2 machines
So, 10 is execution time of give sequence of task using
johnson algorithm which is better from earlier.
32
J1 J2
Conclusion &
future work
33
Conclusion
• We got to know about popular scheduling algorithm of
tasks in multiprogramming environment.
• A lot of work is being done in GS and genetic algorithm.
Also it is tried with many other field then scheduling.
34
Reference
35
Reference
• https://en.wikipedia.org/wiki/Flow_shop_scheduling
• https://www.youtube.com/watch?v=R08ql752oL0
• https://www.sciencedirect.com/science/article/abs/pii/S03608
35299000236
• https://www.sciencedirect.com/science/article/pii/S14746670
15357499#:~:text=Johnson'%20algorithm%20(JA)%20is,algorit
hms%20for%20more%20general%20cases.
36
THANKU
37

More Related Content

PPT
Product liability
PDF
Job shop scheduling
PPTX
Presentation on scheduling
PDF
Chapitre 3 la recherche tabou
PPTX
GP Chapitre 4 : La planification de production
PPT
المحاضرة الثامنه البيع الشخصي من دبلومة التسويق والمبيعات د السيد ناصر
PPT
Communication primitives
PPTX
Deadlock ppt
Product liability
Job shop scheduling
Presentation on scheduling
Chapitre 3 la recherche tabou
GP Chapitre 4 : La planification de production
المحاضرة الثامنه البيع الشخصي من دبلومة التسويق والمبيعات د السيد ناصر
Communication primitives
Deadlock ppt

What's hot (20)

PPTX
Greedy Algorithm - Knapsack Problem
PPTX
Traveling salesman problem
PPTX
Scheduling Definition, objectives and types
PDF
P, NP, NP-Complete, and NP-Hard
PPTX
Asymptotic Notation
PPTX
Concurrency Control in Database Management System
PPTX
Job sequencing with deadline
PPTX
Dynamic programming
PPTX
Lecture 14 run time environment
PPTX
Process scheduling
PDF
Code optimization in compiler design
PPTX
serializability in dbms
PPTX
Lexical analyzer generator lex
PDF
Daa notes 1
PPTX
Single source Shortest path algorithm with example
PPTX
Knowledge representation In Artificial Intelligence
PPTX
Problem solving agents
PPT
Time complexity
PPTX
Process synchronization in Operating Systems
PPTX
Realibity design
Greedy Algorithm - Knapsack Problem
Traveling salesman problem
Scheduling Definition, objectives and types
P, NP, NP-Complete, and NP-Hard
Asymptotic Notation
Concurrency Control in Database Management System
Job sequencing with deadline
Dynamic programming
Lecture 14 run time environment
Process scheduling
Code optimization in compiler design
serializability in dbms
Lexical analyzer generator lex
Daa notes 1
Single source Shortest path algorithm with example
Knowledge representation In Artificial Intelligence
Problem solving agents
Time complexity
Process synchronization in Operating Systems
Realibity design
Ad

Similar to Flowshop scheduling (20)

PPTX
Sequencing and shedulding problems for Operations management
PPTX
Multiprocessor Real-Time Scheduling.pptx
PPTX
MATERIAL MANAGEMENT Job Shop Scheduling.pptx
PPTX
Job Shop Scheduling.pptx
PPTX
Clock driven scheduling
PDF
R0260950100
PPT
multiprocessor real_ time scheduling.ppt
PPT
9Johnson's Rule.ppt
PDF
Operations Research_18ME735_module 5 sequencing notes.pdf
PDF
Exam110121
PPTX
Analysis of algorithms
PDF
Approximation Algorithms Part Two: More Constant factor approximations
PPTX
Multiprocessor scheduling 3
PDF
Programación de operaciones (GTO) Ingeniería civil industrial
PPTX
Task allocation and scheduling inmultiprocessors
PDF
A case study on Machine scheduling and sequencing using Meta heuristics
PDF
A case study on Machine scheduling and sequencing using Meta heuristics
PPTX
Job sequencing with Deadlines
PDF
6_RealTimeScheduling.pdf
PDF
11.optimal three stage flow shop scheduling in which processing time, set up ...
Sequencing and shedulding problems for Operations management
Multiprocessor Real-Time Scheduling.pptx
MATERIAL MANAGEMENT Job Shop Scheduling.pptx
Job Shop Scheduling.pptx
Clock driven scheduling
R0260950100
multiprocessor real_ time scheduling.ppt
9Johnson's Rule.ppt
Operations Research_18ME735_module 5 sequencing notes.pdf
Exam110121
Analysis of algorithms
Approximation Algorithms Part Two: More Constant factor approximations
Multiprocessor scheduling 3
Programación de operaciones (GTO) Ingeniería civil industrial
Task allocation and scheduling inmultiprocessors
A case study on Machine scheduling and sequencing using Meta heuristics
A case study on Machine scheduling and sequencing using Meta heuristics
Job sequencing with Deadlines
6_RealTimeScheduling.pdf
11.optimal three stage flow shop scheduling in which processing time, set up ...
Ad

Recently uploaded (20)

PPT
Mechanical Engineering MATERIALS Selection
PPTX
Recipes for Real Time Voice AI WebRTC, SLMs and Open Source Software.pptx
PPTX
IOT PPTs Week 10 Lecture Material.pptx of NPTEL Smart Cities contd
PDF
Mohammad Mahdi Farshadian CV - Prospective PhD Student 2026
PPTX
UNIT 4 Total Quality Management .pptx
DOCX
ASol_English-Language-Literature-Set-1-27-02-2023-converted.docx
PPTX
Lecture Notes Electrical Wiring System Components
PPTX
Construction Project Organization Group 2.pptx
PDF
Digital Logic Computer Design lecture notes
PDF
Arduino robotics embedded978-1-4302-3184-4.pdf
PPTX
Sustainable Sites - Green Building Construction
PDF
Well-logging-methods_new................
PPTX
MCN 401 KTU-2019-PPE KITS-MODULE 2.pptx
PPTX
CARTOGRAPHY AND GEOINFORMATION VISUALIZATION chapter1 NPTE (2).pptx
PPTX
Internet of Things (IOT) - A guide to understanding
PDF
Embodied AI: Ushering in the Next Era of Intelligent Systems
PPTX
FINAL REVIEW FOR COPD DIANOSIS FOR PULMONARY DISEASE.pptx
PDF
Model Code of Practice - Construction Work - 21102022 .pdf
PPTX
OOP with Java - Java Introduction (Basics)
PPTX
Lesson 3_Tessellation.pptx finite Mathematics
Mechanical Engineering MATERIALS Selection
Recipes for Real Time Voice AI WebRTC, SLMs and Open Source Software.pptx
IOT PPTs Week 10 Lecture Material.pptx of NPTEL Smart Cities contd
Mohammad Mahdi Farshadian CV - Prospective PhD Student 2026
UNIT 4 Total Quality Management .pptx
ASol_English-Language-Literature-Set-1-27-02-2023-converted.docx
Lecture Notes Electrical Wiring System Components
Construction Project Organization Group 2.pptx
Digital Logic Computer Design lecture notes
Arduino robotics embedded978-1-4302-3184-4.pdf
Sustainable Sites - Green Building Construction
Well-logging-methods_new................
MCN 401 KTU-2019-PPE KITS-MODULE 2.pptx
CARTOGRAPHY AND GEOINFORMATION VISUALIZATION chapter1 NPTE (2).pptx
Internet of Things (IOT) - A guide to understanding
Embodied AI: Ushering in the Next Era of Intelligent Systems
FINAL REVIEW FOR COPD DIANOSIS FOR PULMONARY DISEASE.pptx
Model Code of Practice - Construction Work - 21102022 .pdf
OOP with Java - Java Introduction (Basics)
Lesson 3_Tessellation.pptx finite Mathematics

Flowshop scheduling

  • 1. Flow shop scheduling By- Kunal Goswami Mentor – Joy Chandra Mukherjee 1
  • 4. Definition • Flow shop scheduling problems, are a class of scheduling problems with a workshop in which the flow control shall enable an appropriate sequencing for each job and for processing on a set of machines or with other resources 1,2,...,m in compliance with given processing orders. • For an operating system – we have many task to be done. Especially the maintaining of a continuous flow of processing tasks is desired with a minimum of idle time and a minimum of waiting time. 4
  • 6. Example Practical application : As we have seen strict order of all operations to be performed on all jobs. Flow shop scheduling may apply as well to production facilities as to computing designs. • It is used in processing industry where a strict order of production should be done • In can be used in construction work. • In medical observation In space technology, agricultural processing basically in every (multiprograming + strict order job). 6
  • 7. Application It works in following case in steps : i. we should have multiprogramming environment ii. input and then executed iii. Job queued for O/P iv. O/P printed/used • Suppose there are 1 to n job and there are m processor and we have some more information like for task T3i for processor 3. And it takes tj time. Note - m >= n • No more then 1 task for any processor at a time. • N jobs requiring m tasks and each to be scheduled in m processor. 7
  • 8. Application So in diagram view situation is like this. Assume we have 4 jobs and each jobs can have 5 tasks. Jobs J1 J2 J3 J4 Tasks t1 t2 t3 t4 t5 3 1 4 2 2 2 0 3 2 2 0 1 4 2 1 1 1 3 2 1 8
  • 9. Usefuldata: The finish time of fi(S) of job i is the time at which all task of job i has been completed in schedule S. • The finish time F(S) of a schedule S is : F(S) = max {fi(S)} • The mean flow time MFT(S) is : MFT(S) = (1/n). ∑ fi(S) We try to get optimal finish time i.e. minimal finish time. 9
  • 11. Above scheduling problem is done by two method Two possible solution : i) pre-emptive ii) non preemptive. 11
  • 12. i) pre-emptive Job In it we do permits preemption (halting) of tasks, from a cooperative multitasking system wherein processes/tasks must be explicitly programmed to yield when they do not need system resources. Rules : a) tji cannot start unit tj-1,i finishes. b) Task ti of any job will go to processor i only. 12
  • 14. Example First task T1 is coming from two jobs we have. t11 = 2 and t12 = 0 Both will be processed sequentially ; all task-1 will complete in 2 sec. 14
  • 15. Example Now Task-2 comes ; T21 = 3 and T22 = 3 Task-2 of Job-1 cannot start as it’s first Task-1 needed to be completed. So Task-2 of Job-2 starts. 15
  • 16. Example Now Task-3 comes ; T31 = 5 and T32 = 2 Task-3 of Job-1 cannot start as it’s first Task-2 needed to be completed. So is Task-3 of Job-2 which require Task-2 to complete. 16
  • 17. Example Finish time = Max (F1 , F2) = max (5,11) = 11 5 and 11 are finish time of respective jobs. Mean flow time = ½ .(5+11) = 8 17
  • 18. Example ii) pre-emptive Job Preemptive Scheduling is a CPU scheduling technique that works by dividing time slots of CPU to a given process. When the burst time of the process is greater than CPU cycle, it is placed back into the ready queue and will execute in the next chance. This scheduling is used when the process switch to ready state. Rules : a) tji cannot start unit tj-1,i finishes. b) Task ti of any job will go to processor i only. 18
  • 20. Example First task T1 is coming from two jobs we have. t11 = 2 and t12 = 0, It donot have any conflict job in machine. So execute normally. 20
  • 21. Example Task T2 comes. t21 = 3 and t22 = 3, • t21 , t22 comes. As t11 not complete. So t21 goes into queue. And t22 starts. • After t22 finishes t21 again complete it’s remaining cycle. 21
  • 22. Example Task-3 comes. t31 = 5 and t32 = 2, • t31 , t32 comes. As t21 not complete. So t31 goes into queue. Also same with t32 . • t31 starts after 5 unit time. Then t32 completes. 22
  • 23. Example Finish time = Max (F1 , F2) = max (10,12) = 12 10 and 12 are finish time of respective jobs. Mean flow time = ½ .(10+12) = 11 23
  • 25. Algorithms • The machine sequence of all jobs is the same. The problem is to find the job sequences on the machines which minimize the makespan , i.e. the maximum of the completion times of all tasks. • It is similar to 2-machine problem with 2 machines to solve different burst jobs. It is well known that in case of real time situations - the problem is NP-hard. • There are some optimized algorithms which uses Dynamic algorithm, Branch and Bound and Heuristic algorithm such as genetic algorithm. 25
  • 26. Algorithms  Popular algorithms are : • Johnson algorithm – nlogn • GS algorithm (Gonzalez and sahni) • Genetic algorithm  n.Logn is most optimized solution for finite no. of tasks.  We will see Johnson algorithm. 26
  • 27. Algorithms Johnson's Algorithm for 2 machine Step 1 : Form set1 containing all the jobs with p1j < p2j -- (nlogn) Step 2 : Form set2 containing all the jobs with p1j > p2j, the jobs with p1j=p2j may be put in either set. -- (n) Step 3 : Form the sequence as follows: (i) The job in set1 go first in the sequence and they go in increasing order of p1j(SPT) – shortest process time -- O.(c) (ii) The jobs in set2 follow in decreasing order of p2j (LPT). Ties are broken arbitrarily. – longest process time -- O.(c) 27
  • 28. Example Let’s try Johnson's algorithm in our example : We remember it had took us 11 unit for non-preemptive and 12 unit for pre-emptive scheduling using naive process. Our job sequence was : 28 J1 J2
  • 29. Example t1 t2 t3 J1 2 3 5 J2 0 3 2 step 1 – find least among all • 0 is ans. • cut that column and put in array from left or right according to job1 or job2. • 0 task is of J2. So choose from right 29 J1 J2
  • 30. Example t2 t3 (task-1 removed) J1 3 5 J2 3 2 step 1 – find least among all now • 2 is ans. • cut that column and put in array from left or right according to job1 or job2. • 0 task is of J2. So choose from right 30 J1 J2
  • 31. Example t2 (task-3 removed) J1 3 J2 3 step 1 – find least among all now • 3 is ans. • cut that column and put in array from left or right according to job1 or job2. • 0 task is of J2. So choose from right 31 J1 J2
  • 32. Example Above is job sequence for algorithm Now make table including 2 machines So, 10 is execution time of give sequence of task using johnson algorithm which is better from earlier. 32 J1 J2
  • 34. Conclusion • We got to know about popular scheduling algorithm of tasks in multiprogramming environment. • A lot of work is being done in GS and genetic algorithm. Also it is tried with many other field then scheduling. 34
  • 36. Reference • https://en.wikipedia.org/wiki/Flow_shop_scheduling • https://www.youtube.com/watch?v=R08ql752oL0 • https://www.sciencedirect.com/science/article/abs/pii/S03608 35299000236 • https://www.sciencedirect.com/science/article/pii/S14746670 15357499#:~:text=Johnson'%20algorithm%20(JA)%20is,algorit hms%20for%20more%20general%20cases. 36