Hello! In our last lesson, we delved into the world of exact optimization by formulating the permutation flow shop problem as a Mixed-Integer Linear Program (MILP). We saw how MILPs can guarantee optimal solutions, which is essential for establishing research benchmarks. However, their computational cost can be prohibitive for large-scale problems, which brings us back to the practical necessity of heuristics.
You've already encountered and applied two key heuristics: the NEH algorithm for building a schedule and a swap-based local search for improving one. Today, we'll formalize the distinction between these two fundamental approaches. Our learning outcome is to compare constructive vs. improvement heuristics for flow shop scheduling.
Understanding this distinction is crucial. Constructive heuristics provide a fast, reasonable starting point, while improvement heuristics refine that starting point. This "construct-then-improve" paradigm is a cornerstone of modern optimization and will be directly relevant as you design advanced metaheuristics for your thesis on Flexible Job Shop Problems.
This lesson will cover:
- The definition and mechanics of constructive heuristics, using NEH as our primary example.
- The definition and mechanics of improvement heuristics, building on the local search concepts we've discussed.
- A direct comparison of their strengths, weaknesses, and, most importantly, their synergistic relationship.
Heuristic Families: Builders and Refiners
Scheduling heuristics can be broadly categorized into two families. Think of it like building a structure: one family of methods focuses on laying a solid foundation and building it up brick by brick (constructive), while the other takes a finished structure and looks for ways to renovate and strengthen it (improvement).
To get a formal overview of this classification, let's turn to a key review paper in the field.
A review and classification of heuristics for permutation flow
The paper 'A review and classification of heuristics for permutation flow...' by Framinan, Gupta, and Leisten proposes a three-phase framework for classifying heuristics. This framework will provide the theoretical backbone for our lesson.
Please read the end of Section 2, 'Previous work and proposed framework'. Focus on the short section that introduces the three-phase framework: Phase I (Index development), Phase II (Solution construction), and Phase III (Solution improvement).
As you can see, the paper formalizes our "builder vs. refiner" analogy. Today, we'll focus on Phase II (Constructive) and Phase III (Improvement) heuristics.
Constructive Heuristics: Building a Solution from Scratch
A constructive heuristic (or "construction heuristic") generates a complete solution sequentially from an empty schedule. It follows a set of rules to add jobs one by one until a full sequence is formed. A key characteristic is that once a job is placed in the sequence, its position is typically fixed and not changed later in the construction process.
You are already familiar with the most famous and effective constructive heuristic for the flow shop makespan problem: the NEH algorithm. In a previous lesson, you applied its steps. Now, let's watch a detailed walkthrough to solidify our understanding of its mechanics as a constructive method.
Mod-07 Lec-27 Flow shop scheduling -- heuristics -- Palmer, Campbell Dudek Smith algorithm
This video from NPTEL provides a clear, step-by-step demonstration of several flow shop heuristics. We will focus on the section explaining the NEH algorithm.
Please watch the segment from 46:23 to 57:09. This part details the NEH algorithm. Observe how it builds the schedule iteratively: starting with the first two jobs, it 'constructs' the final sequence by inserting the remaining jobs one by one into the best possible position.
The NEH algorithm perfectly embodies the constructive approach:
- Initial Ordering: It starts with a sorted list of jobs (based on total processing time). This is an example of the paper's "Phase I: Index Development".
- Iterative Construction: It takes the first two jobs and finds the better of two possible sequences.
- Greedy Insertion: For every subsequent job, it tries all possible insertion slots in the current partial sequence and greedily picks the insertion that results in the best partial makespan.
- Finality: Once a job is inserted, the relative order of the other jobs remains unchanged. The process continues until all jobs are scheduled.
The video also discusses Palmer's heuristic and the CDS algorithm, which are other well-known constructive heuristics. They differ from NEH in their logic (Palmer's uses a "slope index" to sort jobs once, while CDS creates several two-machine problems as an extension of Johnson's rule), but they share the same core identity: they build a single, final sequence from scratch without later refinement.
Cost vs. Quality in Construction
Constructive heuristics are generally very fast. However, there's a trade-off between their computational cost and the quality of the solution they produce. Simpler methods like Palmer's are extremely fast, while the more sophisticated insertion logic of NEH requires more computation but generally yields much better results.

Improvement Heuristics: Refining an Existing Solution
An improvement heuristic starts with a complete, valid solution and tries to iteratively improve it. It does this by making small, local changes to the current solution and accepting a change if it leads to a better objective value (e.g., a lower makespan). This process is repeated until no more improvements can be found in the local "neighborhood".
The key components of an improvement heuristic are:
- An Initial Solution: It needs a starting point. This can be a randomly generated sequence or, more effectively, a sequence generated by a constructive heuristic like NEH.
- A Neighborhood Structure: This defines the set of "nearby" solutions that can be reached from the current one. A common neighborhood is the swap neighborhood, where you consider all possible pairwise swaps of jobs in the sequence. Another is the insertion neighborhood, where you take a job out of the sequence and try re-inserting it in all other positions.
- A Search Strategy: This is the rule for exploring the neighborhood. A steepest descent strategy evaluates all neighbors and moves to the best one. A first improvement strategy moves to the very first improving neighbor it finds.
To formalize this, let's return to the review paper.
A review and classification of heuristics for permutation flow
The paper by Framinan et al. also provides a formal definition for improvement heuristics.
Please read the first three paragraphs of Section 5, 'Phase III: Solution improvement'. This section introduces the concept, notes the requirement for an initial solution, and classifies improvement methods into 'descending local searches' and 'metaheuristics'. We will cover metaheuristics in depth in a later module.
The simplest form of an improvement heuristic is a local search, as you implemented in a previous lesson. It explores a neighborhood and stops when it reaches a local optimum—a solution where no immediate neighbor is better.
Constructive vs. Improvement: A Comparison
Now let's put them side-by-side.
| Feature | Constructive Heuristics (e.g., NEH, Palmer's) | Improvement Heuristics (e.g., Local Search) |
|---|---|---|
| Starting Point | Starts from an empty schedule. | Requires a complete initial solution. |
| Core Mechanism | Adds jobs to a partial schedule one by one. | Modifies a complete schedule through local moves (e.g., swap, insert). |
| Decision Scope | Myopic/Greedy: makes locally optimal choices at each step. | Explores the neighborhood of the current solution. |
| Solution Quality | Quality depends heavily on the construction rule. Can be quite good (NEH) but is "stuck" with early decisions. | Can improve upon a poor starting solution. Gets stuck at local optima. |
| Computational Speed | Generally very fast and deterministic. (Polynomial time) | Can be more time-consuming, depending on neighborhood size and number of iterations. |
Test your understanding!
You are given a poor-quality, but valid, job sequence for a flow shop problem. Which type of heuristic would you apply to make it better, and why?
Show answer
You would apply an improvement heuristic. By definition, improvement heuristics start with a complete, valid solution and aim to refine it. A constructive heuristic would not be suitable, as it is designed to build a new solution from scratch, ignoring the one you were already given.
The Power of Synergy: Construct then Improve
The most powerful takeaway is that these two types of heuristics are not mutually exclusive; they are highly complementary. A very common and effective strategy in optimization is to:
- Use a fast, high-quality constructive heuristic (like NEH) to generate a good initial solution.
- Use that solution as the starting point for an improvement heuristic to refine it and search for a better local optimum.
This hybrid approach leverages the strengths of both: the speed and "good sense" of the constructive method, and the refining power of the improvement method.

This construct-then-improve paradigm is fundamental. In fact, many advanced metaheuristics (which you will study in Module 8) are built on this principle. For instance, a Genetic Algorithm might use NEH to create high-quality individuals for its initial population.
Let's look at a modern research paper that does exactly this.
A computational efficient optimization of flow shop ...
This paper, 'A computational efficient optimization of flow shop ...', proposes a hybrid algorithm that combines NEH with a niche Genetic Algorithm (NGA). This demonstrates the modern application of the construct-then-improve paradigm.
Please read the 'Abstract' and the first paragraph of the 'Methods' section. Then, skim the subsection 'NEH optimizes the initial population'. You don't need to understand the genetic algorithm details yet, but focus on the high-level idea: why are they combining a constructive heuristic (NEH) with an improvement-based metaheuristic (GA)?
The paper explicitly states its motivation: heuristic algorithms are fast but solution quality isn't great, while evolutionary algorithms can get stuck or take a long time to converge if started randomly. By using NEH to generate a strong initial population, they give the evolutionary algorithm (an advanced improvement method) a significant head start, combining the speed of construction with the deep search of improvement. This is a powerful concept you can leverage in your own thesis work.
Conclusion
Today, you have solidified your understanding of the two primary families of heuristics used in scheduling. This classification is not just academic; it represents a practical design pattern for solving complex optimization problems.
Key Takeaways:
- Constructive heuristics (like NEH) build a solution from scratch, typically using a greedy, step-by-step process. They are fast but their quality is limited by early decisions.
- Improvement heuristics (like local search) start with a complete solution and refine it by exploring a neighborhood of similar solutions. They can find better solutions but get trapped in local optima.
- The most powerful approach is often a hybrid one: use a constructive heuristic to generate a high-quality initial solution, then apply an improvement heuristic to search for further gains.
Preview of the Next Lesson:
We have now built a strong foundation in classical flow shop scheduling, covering problem definition, complexity, exact models (MILP), and now a formal comparison of heuristic approaches. In the next lesson, we will begin to expand into more complex environments by exploring the hybrid flow shop, where stages may have multiple parallel machines. You will see how the same heuristic concepts of construction and improvement can be adapted to solve these more challenging problems.