Skip to main content

Welcome to a Grasp lesson

Create a free account to keep studying and create your own study path.

Lesson 10

Understanding the Permutation Flow Shop Problem

Recommended resources

Hello! Welcome to the first lesson of our module on Flow Shop Scheduling.

In our previous module, we built a foundation in single-machine scheduling and ended by exploring a critical concept in optimization: computational complexity. You learned that some scheduling problems are "easy" (in P) and can be solved with simple rules, while others are "NP-hard," demanding more powerful techniques like MILP. This distinction is fundamental as we move into more complex environments.

This lesson marks that transition. We are moving from a world with one machine to a production line with multiple machines in series. Our goal is to address the first learning outcome of this module: Define the permutation flow shop problem and its assumptions.

This topic is the first major building block on our path to your thesis goal of understanding the Flexible Job Shop Problem (FJSP). The flow shop is a more structured and simpler version of the job shop, making it the perfect place to start. A solid grasp of its definition and assumptions will be essential before we can tackle its complexities.

1. From a Single Machine to a Production Line

Imagine a simple factory or workshop. Instead of one machine handling all tasks, we now have a series of workstations, and every product or "job" must pass through them in the same order. This is the essence of a flow shop.

This short video provides a concrete example to set the stage.

Flow Shop Scheduling - n jobs & 2 machines - Johnson's Algorithm - English

The video 'Flow Shop Scheduling - n jobs & 2 machines' by Madhavan SV introduces the core concept of a flow shop using a simple two-machine scenario.

Please watch the first 1 minute and 16 seconds (00:00 - 01:16). Focus on how the problem is described: a set of jobs must all go through Machine A and then Machine B. This fixed routing is the defining characteristic of a flow shop.

As the video illustrates, the main question in flow shop scheduling is no longer just "in what order should we do the jobs?" but "in what order should we feed the jobs into the first machine to achieve the best overall outcome?" The primary objective is usually to minimize the makespan (), which is the time from the start of the first job on the first machine to the completion of the last job on the last machine.

The image below provides a great conceptual overview of the problem we are trying to solve.

Permutation Flow Shop Scheduling Overview and Gantt Charts
This diagram illustrates the core task in Permutation Flow Shop Scheduling (PFSS). A set of unordered jobs is sequenced into a specific permutation. The goal is to find the "optimal permutation" that results in the minimum possible makespan, as shown by comparing the Gantt charts for a feasible versus an optimal schedule.

2. General Flow Shop vs. Permutation Flow Shop

Now, let's add some formal structure to this concept. The term "flow shop" can refer to two slightly different problems. Understanding the distinction is crucial. The following reading from a thesis on the topic provides clear, academic definitions.

Permutation Flow Shop via Simulated Annealing and NEH

The document 'Permutation Flow Shop via Simulated Annealing and NEH' offers a detailed breakdown of scheduling problems. We will use it to distinguish between the general and permutation flow shop environments.

Please read the following two sections: Section 2.3, 'Flow Shop Problems': This section defines the general flow shop problem. Section 2.4, 'Permutation Flow Shop problem(PFSP)': This section defines the specific case we are interested in. As you read, focus on the difference in the number of possible schedules between the two types of problems.

Let's summarize the key distinction from the reading:

  • General Flow Shop: In this environment, the sequence of jobs can be different on each machine. For example, on Machine 1 the order might be J1-J2-J3, but on Machine 2 the order could be J1-J3-J2. This leads to an enormous search space of possible schedules, where is the number of jobs and is the number of machines.
  • Permutation Flow Shop (PFSP): This is a more constrained, and very common, version of the problem. Here, the sequence of jobs must be the same on every machine. If the sequence J1-J2-J3 is chosen for Machine 1, that same sequence must be maintained on Machine 2, Machine 3, and so on. This constraint reduces the search space to possible permutations.

Because the general flow shop problem is so complex, most research and practical applications focus on the Permutation Flow Shop. For the remainder of this course, unless stated otherwise, "flow shop" will refer to the permutation flow shop.

In the notation we learned earlier, the classic permutation flow shop problem with a makespan objective is denoted as .

  • denotes a flow shop with machines.
  • indicates the permutation constraint is active.
  • is the makespan objective function to be minimized.

Connecting back to our last lesson, it's worth noting that while the two-machine problem () can be solved optimally in polynomial time, the three-machine problem () is already NP-hard. This highlights how quickly complexity can increase in scheduling problems.


3. Core Assumptions of the PFSP Model

Every optimization model is a simplified representation of reality, built upon a set of assumptions. For your thesis work, being able to clearly state the assumptions of the models you use is critical. The classic PFSP model is defined by a standard set of assumptions.

The following paper provides a concise list of these foundational assumptions.

A Novel Hybrid Algorithm for Permutation Flow Shop ...

The paper 'A Novel Hybrid Algorithm for Permutation Flow Shop ...' clearly enumerates the assumptions underlying the flow shop problem.

Please read the two bulleted lists of assumptions. One is found in the paragraph under the 'Flowshop Scheduling' heading (starting with 'The operation processing times...'), and a similar list is under the heading 'III. JOB SHOP SCHEDULING PROBLEM' (starting with 'Each job i can be processed...').

Based on the reading and standard literature, here are the key assumptions of the basic problem:

  1. Job Availability: All jobs are ready to be processed at time zero. (There are no release dates).
  2. Machine Availability: All machines are available throughout the scheduling horizon. (There are no machine breakdowns).
  3. Known Processing Times: The processing time () for each job on each machine is known, constant, and non-negative.
  4. No Preemption: Once an operation starts on a machine, it must be completed without interruption.
  5. Single Resource Constraints: Each machine can handle at most one job at a time, and each job can be on at most one machine at a time.
  6. Included Setup Times: Any time required to set up a machine for a job is included in the processing time. This implicitly means the setup times are sequence-independent. (We will relax this in a later module).
  7. Fixed Routing: All jobs follow the same technological routing through the machines: M1 → M2 → ... → Mm.
  8. Permutation Constraint: The sequence of jobs is the same on all machines.
  9. Unlimited Buffers: There is unlimited storage space for jobs waiting between machines. (Relaxing this leads to "blocking" or "no-wait" flow shop problems).

These assumptions define the "vanilla" version of the problem. Much of the advanced research in this area, including what's relevant for your FJSP thesis, involves relaxing one or more of these assumptions to better model real-world complexity.

Test your understanding!

A small print shop has two machines: a high-speed printer (M1) and an automatic binder (M2). All jobs must be printed before they are bound. The shop manager insists that to keep things simple, whatever order the jobs are printed in, they must also be fed into the binder in that exact same order. However, there is no space between the printer and the binder; a job cannot leave the printer until the binder is free.

Which assumption of the classic PFSP model is violated in this scenario?

Show answer

The assumption of unlimited buffers is violated. The constraint that "a job cannot leave the printer until the binder is free" describes a "blocking" or "zero-buffer" environment, which is a specific and more complex variant of the standard flow shop problem.


Conclusion

In this lesson, we have formally defined the foundational multi-machine environment for our course. This is a critical step up in complexity from the single-machine world, and it lays the groundwork for everything that follows.

Key Takeaways:

  • A flow shop is a multi-machine environment where all jobs follow the same sequence of machines.
  • The Permutation Flow Shop Problem (PFSP) adds the constraint that the job processing order must be the same on all machines, reducing the search space from to .
  • The standard PFSP is denoted and is NP-hard for three or more machines.
  • The problem rests on several key assumptions, such as jobs being available at time zero, no preemption, and unlimited buffer space. Understanding these assumptions is crucial for knowing when the model applies and how it can be extended.

Preview of the Next Lesson:
Now that we understand what a permutation flow shop is, our next step is to learn how to work with it. The next lesson, "Represent flow shop schedules using Gantt charts," will teach you the essential skill of visualizing a schedule. This will allow you to see the flow of jobs, identify machine idle time, and, most importantly, calculate the makespan for any given job sequence.