• 沒有找到結果。

粒子群演算法於多目標排程問題之研究

N/A
N/A
Protected

Academic year: 2021

Share "粒子群演算法於多目標排程問題之研究"

Copied!
120
0
0

加載中.... (立即查看全文)

全文

(1)

國 立 交 通 大 學

工 業 工 程 與 管 理 學 系

博士論文

粒子群演算法於多目標排程問題之研究

A Study of Particle Swarm Optimization for

Multi-objective Production Scheduling Problems

研究生 : 林信宏

指導教授 : 沙永傑 教授

洪瑞雲 教授

(2)

粒子群演算法於多目標排程問題之研究

A Study on Particle Swarm Optimization for Multi-objective

Production Scheduling Problems

研 究 生: 林信宏

Student: Hsing-Hung Lin

指導教授: 沙永傑

Advisor: Dr. D. Y. Sha

洪瑞雲

Dr. R. Y. Horng

國 立 交 通 大 學

工 業 工 程 與 管 理 學 系

博 士 論 文

A Dissertation

Submitted to Department of Industrial Engineering and Management

College of Management

National Chiao Tung University

in Partial Fulfillment of the Requirements

for the Degree of

Doctor of Philosophy

in

Industrial Engineering and Managemen

June 2010

Hsinchu, Taiwan, Republic of China

(3)

I

粒子群演算法於多目標排程問題之研究

研究生:林信宏 指導教授: 沙永傑博士 洪瑞雲博士 國立交通大學工業工程與管理系

摘 要

以往學術上排程問題的研究主流是尋找單一目標的最佳解(如: 最小完工時 間) ,然而,實務上生產製造系統的排程需求是達成多目標最佳化。由於運算時 間與成本的考量,過去的許多研究已經發展出許多演算法則以搜尋最佳解或近似 最佳解。 在 本 篇 論 文 中 , 我 們 分 別 提 出 適 合 求 解 流 程 型 排 程 問 題 (Flow Shop Scheduling Problem, FSSP)、零工型排程問題(Job Shop Scheduling Problem, JSSP)

與開放型排程問題(Open Shop Scheduling Problem, OSSP)的粒子群最佳化演算法 (Particle Swarm Optimization, PSO)。本研究所提出的演算法針對三種典型排程問

題,以同時達到最小完工時間(Makespan)、總流程時間(Total flow time)與機器閒 置時間(Machine idle time)作為目標。

粒子群演算法是一種群體搜尋最佳化演算法,於 1995 年被提出。原始的 PSO 是應用於求解連續最佳化問題。因為排程問題為一離散最佳化問題,我們必須修 改粒子位置、粒子移動以及粒子速度的表達方式,讓 PSO 更適於求解排程問題。

對於 FSSP 與 JSSP,本研究比較 PSO 與文獻中的基因演算法(Genetic Algorithm, GA)搜尋三大目標的結果,顯示本文提出的 PSO 優於基因演算法。本

研究另行發展求解多目標 OSSP 的基因演算法並與 PSO 進行 Benchmark 問題的 比較,計算結果顯示,修改後的 PSO 所搜尋到的解,在品質與效率上優於基因 演算法。

(4)

A Study on Particle Swarm Optimization for Multi-objective

Production Scheduling Problems

Student:Hsing-Hung Lin Advisor: Dr. D. Y. Sha

Dr. R. Y. Horng Department of Industrial Engineering and Management

National Chiao Tung University

ABSTRACT

The academic approach of discovering the single optimal solution (ex. makespan) of

scheduling for production system is the mainstream although the empirical

requirement of production system is to achieve multi-objective optimization. Many

algorithms have been developed to search for optimal or near-optimal solutions due to

the computational cost of determining exact solutions.

This study provides a Particle Swarm Optimization (PSO) to elaborate

multi-objective flow shop scheduling problem (FSSP), job shop scheduling problem

(JSSP) and open shop scheduling problem (OSSP). The proposed evolutionary

algorithm searches the optimal solution for objectives by considering the makespan,

total flow time, and machine idle time simultaneously.

Particle Swarm Optimization (PSO) is a population-based optimization algorithm,

which was developed in 1995. The original PSO is used to solve continuous

optimization problems. Due to the discrete solution spaces of scheduling optimization

problems, the authors modified the particle position representation, particle movement,

and particle velocity in this study. The modified PSO could be applied for solving

various benchmark problems; moreover, the results demonstrated that the modified

PSO outperformed traditional evolutionary heuristics – Genetic Algorithm in

searching quality and efficiency.

Keywords: Particle swarm optimization, Multi-objective, Flow shop scheduling, Job shop scheduling problem, Open shop scheduling

(5)

III

致 謝

時光荏苒,一轉眼已經過了六年,終於我也可以寫下論文的致謝辭。在博士 求學過程間,首先要感謝的是指導教授沙永傑老師,除了在研究期間給我精神上 的支持外,也在出國參加研討會發表論文時,給予相當多的實質幫助。其次,必 須感謝的是共同指導教授洪瑞雲老師,協助處理校內相關的行政規定與作業,使 我得以順利取得學位。另外,感謝論文口試委員,系上老師彭德保教授、中華大 學謝玲芬教授、台灣科技大學王孔政教授、以及雲林科技大學駱景堯教授,在論 文計劃書及最後口試期間提供許多寶貴的建議,由於他們的意見,使本篇論文更 加豐富與完善。 感謝論文研究期間一直提供幫助的誠佑學長,還要感謝共同修課,一起打球 的同學們:新恩、家寧、國良、崑智、俊雄、彰孚、雅甄、惠誠、志偉、清章。 最後要感謝家人支持,父母親六年間不辭辛勞的協助照顧襁褓中的兒女,也 感謝儀鵑一路以來的陪伴,工作同時還要花費心思照料家庭,更付出許多心力叮 嚀剛開始學習成長的女兒,有了家人的協助,使我可以在無後顧之憂下,全力完 成學業。

(6)

CONTENTS

中文摘要 中文摘要 中文摘要 中文摘要 ... ⅠABSTRACT ... ⅡⅡ 致謝 致謝 致謝 致謝 ….………. ⅢⅢⅢ CONTENTS ... ⅣLIST OF FIGURES ... ⅥLIST OF TABLES ... ⅦCHAPTER 1 INTRODUCTION ... 1 1.1 Research Motivations ... 1 1.2 Research Objectives ... 2 1.3 Research Process ... 2 1.4 Organization ... 3

CHAPTER 2 LITERATURE REVIEW ... 4

2.1 Particle Swarm Optimization ... 4

2.2 Genetic Algorithm ... 6

2.3 Flow Shop Scheduling Problem ... 7

2.4 Job Shop Scheduling Problem ... 10

2.5 Open Shop Scheduling Problem ... 13

2.6 Multiple Objective Programming... 15

CHAPTER 3 PSO FOR MULTI-OBJECTIVE FSSP ... 19

3.1 Problem Formulation ... 19

(7)

V

3.3 Particle Velocity ... 23

3.4 Particle Movement ... 24

3.5 Pareto optimal set maintenance ... 26

3.6 Computational Results ... 28

CHAPTER 4 PSO FOR MULTI-OBJECTIVE JSSP ... 48

4.1 Problem Formulation ... 48

4.2 Particle Position Representation... 48

4.3 Particle Velocity ... 51

4.4 Particle Movement ... 52

4.5 Diversification strategy ... 54

4.6 Computational Results ... 55

CHAPTER 5 PSO FOR MULTI-OBJECTIVE OSSP ... 74

5.1 Problem Formulation ... 74

5.2 Particle Position Representation... 74

5.3 Particle Velocity ... 76

5.4 Particle Movement ... 77

5.5 Computational Results ... 79

CHAPTER 6 CONCLUSIONS AND FUTURE STUDIES ... 96

6.1 Conclusions ... 96

6.2 Future Studies ... 98

Appendix ……….……….100

(8)

LIST OF FIGURES

FIGURE 1.1THE FLOW CHART OF THIS DISSERTATION ... 3

FIGURE 3.1THE CONVERSION BETWEEN INTEGERS AND FLOAT-POINT NUMBERS ... 22

FIGURE 3.2THE PRIORITY LIST STORED IN THE ARRAY ... 22

FIGURE 3.3THE PRIORITY LIST CHANGED AS PARTICLE MOVEMENT ... 22

FIGURE 3.4A NEW PERMUTATION LIST ... 23

FIGURE 4.1EXAMPLE OF JSSP ... 54

FIGURE 4.2FINDING THE LOCATION TO EXCHANGE ... 54

FIGURE 4.3EXCHANGE OPERATION OF PSO ... 54

FIGURE 4.4THE FACTOR RESPONSE DIAGRAM OF S/N RATIO DIAGRAM OF 15×15 PROBLEM ... 57

FIGURE 4.5THE FACTOR RESPONSE DIAGRAM OF S/N RATIO DIAGRAM OF 20×15 PROBLEM ... 58

FIGURE 4.6THE FACTOR RESPONSE DIAGRAM OF S/N RATIO DIAGRAM OF 20×20 PROBLEM ... 59

FIGURE 4.7THE FACTOR RESPONSE DIAGRAM OF S/N RATIO DIAGRAM OF 30×15 PROBLEM ... 61

FIGURE 4.8THE FACTOR RESPONSE DIAGRAM OF S/N RATIO DIAGRAM OF 30×20 PROBLEM ... 62

FIGURE 4.9THE FACTOR RESPONSE DIAGRAM OF S/N RATIO DIAGRAM OF 50×15 PROBLEM ... 63

FIGURE 4.10THE FACTOR RESPONSE DIAGRAM OF S/N RATIO DIAGRAM OF 50×20 PROBLEM ... 65

FIGURE 5.1THE SCATTER DIAGRAMS OF GP8 ... 94

FIGURE 5.2THE SCATTER DIAGRAMS OF GP9 ... 95

(9)

VII

LIST OF TABLES

TABLE 3.1THE AVERAGE RELATIVE ERROR IN CMAX AND MFT OF PROBLEM RECXX .... 31

TABLE 3.2THE AVERAGE RELATIVE ERROR IN MIT AND AGGREGATE OF PROBLEM REC ... 32

TABLE 3.3THE AVERAGE RELATIVE ERROR IN CMAX ,MFT AND MIT OF PROBLEM TAI_20 ... 33

TABLE 3.4THE AVERAGE RELATIVE ERROR IN CMAX ,MFT AND MIT OF PROBLEM TAI_50 ... 34

TABLE 3.5THE AVERAGE RELATIVE ERROR IN CMAX ,MFT AND MIT OF PROBLEM TAI_100 ... 35

TABLE 3.6THE AVERAGE RELATIVE ERROR IN CMAX ,MFT AND MIT OF PROBLEM TAI_200 AND TAI_500 ... 36

TABLE 3.7THE AGGREGATE PERFORMANCE OF PROBLEM TAI20×5 TO TAI50×20 ... 37

TABLE 3.8THE NUMBER AND PERCENTAGE OF PROBLEMS FOR DIFFERENT OBJECTIVE WITH SUPERIOR RESULTS ... 39

TABLE 3.9THE NUMBER OF PROBLEMS FOR AGGREGATE OBJECTIVES WITH SUPERIOR RESULTS ... 39

TABLE 3.10COMPARISON OF MAKESPAN(MS) FOR DIFFERENT HEURISTICS. ... 42

TABLE 3.11COMPARISON OF TOTAL FLOW TIME (TFT) FOR DIFFERENT HEURISTICS ... 42

TABLE 3.12COMPARISON OF MACHINE IDLE TIME (MIT) FOR DIFFERENT HEURISTICS . 43 TABLE 3.13SUMMATION OF MS,TFT AND MIT FOR DIFFERENT HEURISTICS ... 43

TABLE 3.14AVERAGE CPU TIME (IN SECONDS) ... 44

TABLE 3.15COMPARISON OF TOTAL FLOW TIME (TFT) FOR HEURISTICS IN ARPD ... 44

TABLE 3.16COMPARISON OF TOTAL FLOW TIME (TFT) FOR HEURISTICS IN MPD ... 45

TABLE 3.17THE RESULTS OF TSP_GA ... 45

TABLE 3.18THE AVERAGE RELATIVE ERROR OF PSO AND TSP-GA ... 47

TABLE 4.1AN 2×2 EXAMPLE ... 50

TABLE 4.2THE PARAMETER OF PSO ... 56

TABLE 4.3THE L16 ORTHOGONAL ARRAY AND S/N RATION OF 15×15 PROBLEM ... 56

TABLE 4.4THE FACTORS RESPONSE OF 15×15 PROBLEM ... 56

TABLE 4.5THE BEST LEVEL OF FACTORS OF 15×15 PROBLEM ... 57

TABLE 4.6THE L16 ORTHOGONAL ARRAY AND S/N RATION OF 20×15 PROBLEM ... 57

TABLE 4.7THE FACTORS RESPONSE OF 20×15 PROBLEM ... 58

TABLE 4.8THE BEST LEVEL OF FACTORS OF 20×15 PROBLEM ... 58

TABLE 4.9THE L16 ORTHOGONAL ARRAY AND S/N RATION OF 20×20 PROBLEM ... 59

(10)

TABLE 4.11THE BEST LEVEL OF FACTORS OF 20×20 PROBLEM ... 59

TABLE 4.12THE L16 ORTHOGONAL ARRAY AND S/N RATION OF 30×15 PROBLEM ... 60

TABLE 4.13THE FACTORS RESPONSE OF 30×15 PROBLEM ... 60

TABLE 4.14THE BEST LEVEL OF FACTORS OF 30×15 PROBLEM ... 61

TABLE 4.15THE L16 ORTHOGONAL ARRAY AND S/N RATION OF 30×20 PROBLEM ... 61

TABLE 4.16THE FACTORS RESPONSE OF 30×20 PROBLEM ... 62

TABLE 4.17THE BEST LEVEL OF FACTORS OF 30×20 PROBLEM ... 62

TABLE 4.18THE L16 ORTHOGONAL ARRAY AND S/N RATION OF 50×15 PROBLEM ... 63

TABLE 4.19THE FACTORS RESPONSE OF 50×15 PROBLEM ... 63

TABLE 4.20THE BEST LEVEL OF FACTORS OF 50×15 PROBLEM ... 64

TABLE 4.21THE L16 ORTHOGONAL ARRAY AND S/N RATION OF 50×20 PROBLEM ... 64

TABLE 4.22THE FACTORS RESPONSE OF 50×20 PROBLEM ... 64

TABLE 4.23THE BEST LEVEL OF FACTORS OF 50×20 PROBLEM ... 65

TABLE 4.24COMPARISON OF MOGA AND MOPSO FOR MAKESPAN ... 67

TABLE 4.25COMPARISON OF MOGA AND MOPSO FOR TOTAL IDLE TIME ... 68

TABLE 4.26COMPARISON OF MOGA AND MOPSO FOR TOTAL TARDINESS ... 69

TABLE 4.27COMPARISON OF MOGA AND MOPSO WITH THREE OBJECTIVES ... 70

TABLE 4.28THE RESULTS OF SOLVING FT,ABZ,ORB AND YN WITH MOPSO ... 71

TABLE 4.29THE RESULTS OF SOLVING LA WITH MOPSO ... 72

TABLE 4.30THE RESULTS OF SOLVING SWV WITH MOPSO... 73

TABLE 5.1THE RESULTS OF THE FIRST EXPERIMENT CONSIDERING THREE OBJECTIVES AS PARETO SET ... 80

TABLE 5.2THE RESULTS OF THE FIRST EXPERIMENT CONSIDERING MAKESPAN AND TOTAL FLOW TIME AS PARETO SET ... 80

TABLE 5.3THE RESULTS OF THE FIRST EXPERIMENT CONSIDERING MAKESPAN AND MACHINE IDLE TIME AS PARETO SET ... 81

TABLE 5.4THE RESULTS OF THE FIRST EXPERIMENT CONSIDERING TOTAL FLOW TIME AND MACHINE IDLE TIME AS PARETO SET ... 81

TABLE 5.5SUMMARY OF THE RESULTS OF THE FIRST EXPERIMENT ... 82

TABLE 5.6THE RESULTS OF THE SECOND EXPERIMENT CONSIDERING THREE OBJECTIVES WITH THREE SUB-SWARMS ... 82

TABLE 5.7THE RESULTS OF THE SECOND EXPERIMENT CONSIDERING MAKESPAN WITH ONE SWARM ... 83

TABLE 5.8THE RESULTS OF THE SECOND EXPERIMENT CONSIDERING TOTAL FLOW TIME WITH ONE SWARM ... 83

TABLE 5.9THE RESULTS OF THE SECOND EXPERIMENT CONSIDERING MACHINE IDLE TIME WITH ONE SWARM ... 84

(11)

IX

TABLE 5.10THE RESULTS OF THE SECOND EXPERIMENT CONSIDERING MAKESPAN AND

TFT WITH TWO SUB-SWARMS ... 84

TABLE 5.11THE RESULTS OF THE SECOND EXPERIMENT CONSIDERING MAKESPAN AND MIT WITH TWO SUB-SWARMS ... 85

TABLE 5.12THE RESULTS OF THE SECOND EXPERIMENT CONSIDERING TFT AND MIT WITH TWO SUB-SWARMS ... 85

TABLE 5.13SUMMARY OF THE RESULTS OF THE SECOND EXPERIMENT ... 86

TABLE 5.14THE RESULTS OF MOPSO FOR BENCHMARK PROBLEMS GP03-GP10 ... 87

TABLE 5.15THE RESULTS OF MOGA FOR BENCHMARK PROBLEMS GP03-GP10 ... 90

TABLE 5.16THE COMPARISON OF MOPSO AND MOGA FOR MAKESPAN ... 93

TABLE 5.17THE COMPARISON OF MOPSO AND MOGA FOR MACHINE IDLE TIME ... 93

(12)

CHAPTER 1

INTRODUCTION

1.1 Research Motivations

Scheduling is an optimization process by which limited resources are allocated over

time among parallel and sequential activities. Such situations develop routinely in

factories, publishing houses, shipping universities, hospitals, airports, etc. Solving

such a problem amounts to making discrete choice such that an optimal solution is

found among a finite or a countable infinite number of alternatives. Such problems are

called combinational optimization problems. Typically, the task is complex, limiting

the practical utility of combinatorial, mathematical programming and other analytical

methods in solving scheduling problems effectively.

To find exact solutions of scheduling problems a branch-and-bound or dynamic

programming algorithm is often used. However, many shop scheduling problems are

NP-hard, which means that the problem cannot be exactly solved in a reasonable

computation time. Using problem-specific information sometimes reduces search

space, even though the problem is still difficult to solve exactly. Therefore, heuristic

algorithms and dispatching rules are developed to obtain the approximate optimal

solution. Meta-heuristic is one of the most popular and the most efficient method to

obtain the approximate optimal solution. Among the meta-heuristics, particle swarm

optimization (PSO) is new and extensively implemented in recent years. However, the

original intent of PSO is to solve continuous optimization problems, and PSO

(13)

1.2 Research Objectives

The objective of this work is to development PSOs for two shop scheduling problems:

the flow shop scheduling problem (FSSP) and the job shop scheduling problem

(JSSP). In the work of FSSP, the problem is to find a schedule to minimize the

makespan (Cmax), mean flow time and machine idle time. In the work of JSSP, we attempt to search a schedule to minimize the makespan (Cmax), machine idle time and

total tardiness.

Since the original intent of PSO is to solve continuous optimization problems,

we have to modify the original PSO when we implement PSO to a combinatorial

optimization problem. PSO can be separated several parts to discuss: position

representation, particle velocity, and particle movement. We will develop various PSO

designs in this work. On the other hand, the PSO developed in this work can be an

example of PSO design for other discrete optimization problems.

1.3 Research Process

The research of this dissertation begins with the determination of research topic. The

literature consists with flow shop scheduling, job shop scheduling, open shop

scheduling, particle swarm optimization and genetic algorithms. The programs of

particle swarm optimization and genetic algorithm are coded with programming

language C according to the types of scheduling problem. Then, the experiments are

compared to evaluate the performance of each algorithm to different problem types.

(14)

Figure 1. 1 The flow chart of this dissertation

1.4 Organization

The organization of the remaining chapters for this research is as follows. Chapter 2

reviews the literatures of the background of shop scheduling problems and PSO.

Chapter 3 describes the factors of PSO design and PSO for FSSP. PSO for JSP is

modified and illustrated in Chapter 4. We also proposed a novel PSO for OSSP in

Chapter 5. In chapter 6 we draw our conclusion and indicate the direction for further

research. Research Topic Literature Review PSO Algorithm Coding Experiment Comparison Conclusion

(15)

CHAPTER 2

LITERATURE REVIEW

2.1 Particle Swarm Optimization

Particle swarm optimization (PSO) is an evolutionary technique for unconstrained

continuous optimization problems proposed by Kennedy and Eberhart (1995). The

PSO concept is based on observations of the social behavior of animals such as birds

in flocks, fish in schools, and swarm theory. The advantages of the PSO method:

simple structure, immediate applicability to practical problems, ease of

implementation, quick solution, and robustness. Particle swarm optimization proposed

recently for unconstrained continuous optimization problems is one of the latest

evolutionary techniques. PSO has been successfully applied to different field of

applications due to the easy implementation and computational efficiency.

Nevertheless, the applications of the PSO on the combination optimization problem

are still scarce.

The major idea of PSO is based on observations of the social behaviors of

animals such as bird flocking, fish schooling, and swarm theory. The population is

initialized by random solutions. The population consists with individuals (i.e.

particles). Each particle is assigned with a randomized velocity according to its own

and populations’ movement experience. The relationship between swarm and particles

in PSO is similar to the relationship between population and chromosomes in GA.

In PSO, the problem solution space is formulated as a search space. Each

position of the particles in the search space is a correlated solution of the problem.

Particles cooperate to find out the best position (solution) in the search space (solution

(16)

Suppose that the searching space is D-dimensional and ρ particles comprise the

swarm. Each particle locates at the position say Xi={x1i, x2i, …, xDi} with the velocity

Vi={v1i, v2i, …, vDi}, where i=1, 2, …,ρ. Based on the PSO algorithm, each particle

move toward its own best position (pbest) denoted as Pbesti={pbest1i, pbest2i,…,

pbestni} and the best position of the whole swarm (gbest) denoted as Gbest={gbest1,

gbest2, …, gbestn}with each iteration. Each particle changes its position according to

its velocity which is randomly generated toward pbest and gbest positions. For each

particle r and dimension s, the new velocity vsr and position xsr of particles can be

calculated by the following equations:

) ( ) ( 2 2 1 1 kj kj j kj kj

kj w v c rand pbest x c rand gbest x

v ← × + × × − + × × − (2.1)

kj kj kj x v

x ← + (2.2)

In Eqs. (2.1) and (2.2), τ means the iteration number. The inertia weight w is

employed to control exploration and exploitation. A large w keeps particles with high

velocity and prevents particles from trapping in local optima. A small w maintains low

velocity of particles and urges particles to exploit the same search area. The constant

c1 and c2 are acceleration coefficients to determine whether particles prefer to move closer to pbest position or gbest position. The rand1 and rand2 are two independent

random numbers uniformly distributed between 0 and 1. The termination criterion of

the PSO algorithm includes the maximal number of generations, designated value of

pbest and no further improved pbest. The standard process of PSO is outlined as follows:

(1)Initialize a population of particles with random positions and velocities on d

dimensions in the search space.

(17)

(3)Update the position of each particle, according to Eq. (2.2).

(4)Map the position of each particle into solution space and evaluate its fitness

value according to the desired optimization fitness function. Meanwhile,

update pbest and gbest position if necessary.

(5)Loop to Step2 until a criterion is met, usually a sufficient good fitness or a

maximum number of iterations.

The original PSO is designed to suit continuous solution space. For better

applying to combinational optimization problems, we have to modify PSO position

representation, particle velocity, and particle movement.

2.2 Genetic Algorithm

The concept of genetic algorithms (GA) was introduced by Holland (1975) as a

general search technique which mimics biological evolution, with the survival of the

fittest individuals and a structured, yet randomized, information exchange like in

population genetics. GAs have been applied with a growing success to combinational

problems (Reeves, 1996). GAs works on a set (population) of solutions. Each solution

is encoded as a string of symbols called chromosome, and is associated with a

measure of adaptation, the fitness, often related to the objective function. Starting

from an initial population, new solutions are generated by selecting some parents

randomly, but with a probability growing with fitness, and by applying genetic

operators such as crossover (an exchange of substrings of the parent chromosomes)

and mutation (a random perturbation of a chromosome). Some existing solutions are

then selected at random and replaced by some of the offspring, to keep a constant

(18)

For solving optimization problems, genetic algorithms have been investigated

and shown to be effective at exploring a large and complex space in an adaptive way

guided by the equivalent biological evolution mechanism (Huang and Adeli, 1994).

Many conventional optimization methods start from one point in the search area and

then move sequentially to achieve the optimal solution, thereby operating rather

locally and highly prone to falling inside a coincidental local optimum.

GAs are known for their robustness: they can be applied to a wide range of

problems without special knowledge about the problem structure. The price to pay is

that they cannot compete with meta-heuristics which explore problem-specific

neighborhoods. However, more and more paper have showed that GAs can

outperform meta-heuristics on some problems, when they are enriched by some

problem-specific knowledge, or when they are hybridized with other improvement

techniques such as local search.

2.3 Flow Shop Scheduling Problem

Production scheduling in real environments has become a significant challenge in

enterprises maintaining their competitive positions in rapidly changing markets. Flow

shop scheduling problems have attracted much attention in academic circles in the last

five decades since Johnson’s initial research. Most of these studies have focused on

finding the exact optimal solution. A brief overview of the evolution of flow shop

scheduling problems and possible approaches to their solution over the last fifty years

has been provided by Gupta and Stafford (2006). That survey indicated that most

research on flow shop scheduling has focused on single-objective problems, such as

(19)

techniques have been developed for obtaining the approximate optimal solution to

NP-hard scheduling problems. A complete survey of flow shop scheduling problems

with makespan criterion and contributions, including exact methods, constructive

heuristics, improved heuristics, and evolutionary approaches from 1954 to 2004, was

offered by Hejazi and Saghafian (2005). Ruiz and Maroto (2004) also presented a

review and comparative evaluation of heuristics and meta-heuristics for permutation

flowshop problems with the makespan criterion. The NEH algorithm (Nawaz,

Enscore and Ham, 1983) has been shown to be the best constructive heuristic for

Taillard’s benchmarks (Taillard, 1993) while the iterated local search (Stützle, 1998)

method and the genetic algorithm (GA) (Reeves, 1995) are better than other

meta-heuristic algorithms.

Most studies of flow shop scheduling have focused on a single objective that

could be optimized independently. However, empirical scheduling decisions might not

only involve the consideration of more than one objective, but also require

minimizing the conflict between two or more objectives. In addition, finding the exact

solution to scheduling problems is computationally expensive because such problems

are NP-hard. Solving a scheduling problem with multiple objectives is even more

complicated than solving a single-objective problem. Approaches including

meta-heuristics and memetics have been developed to reduce the complexity and

improve the efficiency of solutions.

Hybrid heuristics combining the features of different methods in a

complementary fashion have been a hot issue in the fields of computer science and

operational research (Liu et al., 2007). Ponnambalam et al. (2004) considered a

weighted sum of multiple objectives, including minimizing the makespan, mean flow

(20)

multi-objective algorithm using a traveling salesman algorithm and the GA for the

flow shop scheduling problem. Rajendran and Ziegler (2004) approached the problem

of scheduling in permutation flow shop using two ant colony optimization (ACO)

approaches, first to minimize the makespan, and then to minimize the sum of the total

flow time. Yagmahan and Yenisey (2008) was the first to apply ACO meta-heuristics

to flow shop scheduling with the multiple objectives of makespan, total flow time, and

total machine idle time.

The literature on multi-objective flow shop scheduling problems can divided into

two groups: a priori approaches with assigned weights of each objective, and a

posteriori approaches involving a set of non-dominated solutions (Pasupathy et al.,

2006). There is also a multi-objective GA (MOGA) called PGA-ALS, designed to

search non-dominated sequences with the objectives of minimizing makespan and

total flow time. The multi-objective solutions are called non-dominated solutions (or

Pareto-optimal solutions in the case of Pareto-optimality). Eren and Güner (2007)

tackled a multi-criteria two-machine flow shop scheduling problem with minimization

of the weighted sum of total completion time, total tardiness, and makespan.

To minimize the objective of maximum completion time (i.e., the makespan), Liu

et al. (2007) invented an effective PSO-based memetic algorithm for the permutation

flow shop scheduling problem. Jarboui et al. (2008) developed a PSO algorithm for

solving the permutation flow shop scheduling problem; this was an improved

procedure based on simulated annealing. PSO was recommended by Tasgetiren et al.

(2007) to solve the permutation flow shop scheduling problem with the objectives of

minimizing makespan and the total flow time of jobs. Rahimi-Vahed and Mirghorbani

(2007) tackled a bi-criteria permutation flow shop scheduling problem where the

(21)

simultaneously. They exploited a new concept called the ideal point and a new

approach to specifying the superior particle’s position vector in the swarm that is

designed and used for finding the locally Pareto-optimal frontier of the problem. Due

to the discrete nature of the flow shop scheduling problem, Lian et al. (2008)

addressed permutation flow shop scheduling with a minimized makespan using a

novel PSO.

2.4 Job Shop Scheduling Problem

Job shop scheduling problem (JSSP) has been studied for more than 50 years in both

academic and practical fields. Jain and Meeran (1999) gave a concise overview of

JSSP over the last decades and highlighted the main techniques. JSSP is the toughest

class in the combinational optimization. Garey et al. (1976) demonstrated that JSSP is

NP-hard (NP stands for non-deterministic polynomial), hence we cannot find the

exact solution of it in reasonable computation time. The single objective JSSP has

attracted researching concentration widely. Most studies of single objective JSSP are

discovering a schedule to minimize the time required to complete all jobs, namely

makespan (Cmax). In order to conquer the limitation the exact enumeration

techniques, many approximate methods have been developed in the last decades.

These approximate approaches includes simulated annealing (Lourenco, 1995), tabu

search (Sun et al., 1995; Nowicki and Smutnicki 1996; Pezzella and Merelli 2000)

and genetic algorithm (Bean, 1995; Kobayashi et al., 1995; Wang and Zheng, 2001;

Goncalves et al., 2005). However, in real world, the multi-objectives requirements of

production system should be achieved at the same time. This makes the academic

concentration of objectives in JSSP has been extended from single to multiple.

(22)

below.

Ponnambalam et al. (2001) has offered a multi-objective genetic algorithm to

derive the optimal machine-wise priority dispatching rules to resolve the job shop

problems with the objective functions considered minimization of makespan,

minimization of total tardiness, and minimization of total idle time of machines.

Verified by the benchmark problem in the literatures, the proposed MOGA is capable

of providing optimal or near-optimal solutions. A Pareto front provides a set of best

solutions to determine the trade-offs between the various objects. Good parameter

settings and appropriate representations can enhance the behavior of an evolution

algorithm. Esquivel et al. (2002) conducted a study of the influence of distinct

parameter combinations as well as different chromosome representations. Initial result

shows that: (i)Larger numbers of generations favor the building of a Pareto front

because the search process (if rather slow) does not stagnate. (ii)Multi-recombination

helps to speed the search and to find a larger set size when seeking the Pareto optimal

set. (iii)Operation based representation is the best of the three representations selected

for contrast under both methods of recombination. A meta-heuristic procedure based

on the simulated annealing algorithm called Pareto archived simulated annealing

(PASA) is proposed by Suresh and Mohanasndaram (2006) to discover

non-dominated solution sets for the job shop scheduling problem with the objectives

of minimizing the makespan and the mean flow time of jobs. The superior

performance of the PASA can be attributed to its acceptance mechanism used to

accept the candidate solution. Candido et al. (1998) addressed job shop scheduling

problems with numbers of more realistic constraints such as job with several

subassembly levels, alternative processing plans for parts and alternative resources of

(23)

procedure worked well in all problem instances, showing to be a promising tool to

solve more realistic job shop scheduling problems. Lei and Wu (2006) firstly designed

a crowding-measure-based multi-objective evolutionary algorithm (CMOEA) which

makes use of the crowding measure to adjust the external population and assign

different fitness for individuals. The comparison between CMOEA and SPEA

demonstrates that CMOEA performs well in job shop scheduling with two objectives

including minimization of makespan and total tardiness.

Coello et al. (2004) provided an approach in which Pareto dominance is

incorporated into particle swarm optimization in order to allow the heuristic to handle

problems with several object functions. The algorithm used secondary repository of

particles to guide particle flight. The proposed approach is validated using several test

functions and metrics taken from the standard literature on evolutionary

multi-objective optimization. The results show that the approach is highly competitive.

Liang et al. (2005) have invented a novel PSO-based algorithm for job- shop

scheduling problems. The algorithm effectively exploits the capability of distributed

and parallel computing systems, with simulation result showing the possibility of high

quality solutions for typical benchmark problems. Lei (2008) presented a particle

swarm optimization for multi-objective job shop scheduling problem to

simultaneously minimize makespan and total tardiness of jobs. By constructing the

corresponding relation between real vector and the chromosome obtained by using

priority rule-based representation method, job shop scheduling is converted into a

continuous optimization problem. The global best position selection is combined with

the crowding measure-based archive maintenance to design a Pareto archive particle

swarm optimization. The proposed algorithm is capable of producing a number of

(24)

Incorporating different approaches to take the strength of them, some hybrid

algorithms have been proposed lately and lead to another research branch. Wang and

Zheng (2001) reasonably combined GA with SA to invent a hybrid framework, in

which GA was introduced to present a parallel search architecture, and SA was

introduced to increase escaping probability from local optimal at high temperatures.

Computer simulation results based on some b showed that the hybrid strategy was

very effective and robust, and could almost find optima for all benchmark instances.

Based on the hybridization of PSO and SA, Xia and Wu (2005) developed an easily

implemented approach for the multi-objective flexible job shop scheduling problem.

The results obtained from the computational study have shown that the proposed

algorithm is a viable and effective approach for the multi-objective FJSP, especially

for problems on a large scale. Ripon (2007) extends the idea called Jumping Genes

Genetic Algorithm (JGGA) to propose a hybrid approach which can search for the

near-optimal and non-dominated solutions with better convergence by optimizing

criteria simultaneously.

2.5 Open Shop Scheduling Problem

Shop scheduling problems, including flow-, job-, and open-shop problems, have

attracted the interest of many researchers. Shop scheduling has become a significant

factor used by shops to maintain their competitive position in a rapidly changing

marketplace. Most previous research into the open-shop scheduling problem has

concentrated on finding a single optimal solution (e.g., makespan). However, in the

real world, the multiple-objective requirements of shop scheduling must be achieved

simultaneously. Thus, the academic study of open-shop scheduling has been

(25)

Because the open-shop scheduling problem is non-deterministic polynomial-time

hard (NP hard) for more than two machines (m > 2) (Gonzalez and Sahni ,1976), we

cannot solve it exactly using a reasonable amount of computation time. Most

published research has concentrated on developing heuristic algorithms to search for

the optimal makespan of open-shop scheduling problems. A neighborhood search

algorithm based on the simulated annealing technique was proposed by Liaw (1999)

to addresses the problem of scheduling a non-preemptive open shop with the objective

of minimizing the makespan. An efficient local search algorithm based on the tabu

search technique was also proposed by Liaw (1999) to minimize the makespan.

Liaw (2000) developed and applied a hybrid genetic algorithm (HGA) to the

open-shop scheduling problem. The hybrid algorithm incorporated a local

improvement procedure based on the tabu search (TS) into the basic genetic algorithm

(GA). Blum (2005) proposed the Beam-ACO technique to tackle open-shop

scheduling; this technique consisted of a hybridized solution construction mechanism

for ant colony optimization (ACO) with a beam search. Several competitive GAs

have also been presented to detect global optimal values disseminated among many

quasi-optimal schedules of the open-shop problem (Prins, 2000). A heuristic

technique for the open-shop scheduling problem using the genetic algorithm to

minimize the makespan was developed by Senthilkumar and Shahbudeen (2006), and

Tang and Bai (2010) proposed a heuristic algorithm, known as the shortest processing

time block (SPTB), to solve the open-shop problem by minimizing the sum of the

completion time.

Liang (2005) considered the problem of scheduling preemptive open shops to

minimize the total tardiness. He developed an efficient constructive heuristic to

(26)

branch-and-bound algorithm that incorporated a lower bound scheme based on the

solution of an assignment problem as well as various dominance rules.

Blazewicz et al. (2004) applied a non-classical performance measure, the late

work criterion, to scheduling problems. They estimated the quality of the obtained

solution with regards to the duration of the late parts of the tasks, but did not take into

account the quality of these delays.

One of the latest evolutionary techniques, particle swarm optimization (PSO),

was recently proposed by Kennedy and Eberhart (1995) for unconstrained continuous

optimization problems. The idea behind PSO is based on observations of the social

behavior of animals such as flocks of birds or schools of fish, combined with swarm

theory. PSO has been successfully applied to different fields due to its easy

implementation and computational efficiency. Nevertheless, applications of PSO to

combinations of optimization problems are still scarce.

2.6 Multiple Objective Programming

There are several ways to classify the different approaches to multiobjective

optimization. Adulbhan and Tabucanon (1989) classified the techniques into three

main approaches based on the way the initial multiobjective problem is transformed

into a mathematically manageable format. These approaches are, respectively, (a)

conversion of secondary objectives into constraints, (b) development of a single

combined objective function, and (c) treatment of all objectives as constraints. Hwang,

Masud, Paidy and Yoon (1982), on the other hand, propose grouping of techniques

according to the stage at which the analyst needs information from the decision-maker.

The classification is divided into four approaches: (a) no articulation of decision

(27)

articulation of preference data, and (d) a posteriori articulation of preference data.

A recently proposed method for treating the analytical phase of the MCDM

process is called multiple criteria optimization or, in short, multiobjective

optimization (Seo and Sakawa, 1988). According to this viewpoint, multiple criteria

optimization contains two key concepts: (a) Pareto optimality and (b) the preferred

decision (or preferred solution). In general, the decisions with Pareto optimality are

not uniquely determined, unlike, for instance, what goal programming produces. In

multiobjective optimization problems, the usually exist many solutions that are

optimal in the Pareo sense, a concept put forth by economists. Owing to such plurality

of optimal decisions, the most desirable decision may be selected after one has

generated the Pareto optimal or nondominated solutions. The final solution thus

selected as the most desirable, or at least the best-compromised solution, is called

preferred solution.

Many approaches have been developed in the domain of multi-objective

meta-heuristic optimization. Hsu, Dupas, Jolly & Goncalves (2002) focus our

presentation on evolutionary approaches that can be classified into three types: (a)

The transformation towards a mono-objective problem consists of combining the

different objective into a weighted sum. (b) The non-Pareto approach utilizes

operators for processing the different objectives in a separated way. (c) The Pareto

approach is directly based on the Pareto optimization concept. It aims at satisfy two

goals: coverage to the Pareto front and obtain diversified solutions scattered all over

the Pareto front.

In real world, empirical scheduling decisions should not only involve the

deliberation of more than one objective at a time, but also need to prevent the conflict

(28)

with conflicting objective function consisted with the solutions that no other solution

is better than all other objective functions is called Pareto optimal. A multi-objective

minimization problem with m decision variables and n objectives is given below to

describe the concept of Pareto optimality.

n m n x F x where x f x f x f x F Minimize ℜ ∈ ℜ ∈ = ) ( , , )) ( ..., ), ( ), ( ( ) ( 1 2

A solution p is said to dominate solution q if and only if:

} ..., , 2 , 1 { ) ( ) ( } ..., , 2 , 1 { ) ( ) ( n k q f p f n k q f p f k k k k ∈ ∃ < ∈ ∀ ≤

The non-dominated solution is defined as solutions which dominate the others

but do not dominate themselves. Solution p is said a Pareto-optimal solution if there

exist no other solution q in the feasible space which could dominate p. The set

including all Pareto-optimal solutions is termed the Pareto-optimal Set, or the efficient

set. The graph plotted using collected Pareto-optimal solutions in feasible space is

designated as Pareto front.

The external Pareto optimal set is employed to deposit a limited size of

non-dominated solutions (Knowles et al., 2000; Zitzler et al. 2001). Maximum size of

archive set is specified in advance. This method is applied to forbid missing fragment

of non-dominated front during the searching process. The Pareto-optimal front is

getting formed as archive updated iteratively. While the archive set is empty enough

and a new non-dominated solution is detected, the new solution will enter the archive

set. As the new solution enters the archive set, any solution in the archive set

dominated by this solution will be withdrawn from the archive set. In case the

maximum archive size reaches its preset value, the archive set have to decide which

(29)

In this study, we propose a novel Pareto archive set updating process in order to

preclude from losing non-dominated solutions when the Pareto archive set is full.

When a new non-dominated solution is discovered, the archive set would be updated

when one of the following situation occurs: (a) number of solutions in the archive set

is less than the maximum value; (b) number of the solutions in the archive set is equal

to (greater than) the maximum value, then one of the solutions in the archive set that

is most dissimilar to the new solution will be replaced by the new solution. We

measure the dissimilarity by Euclidean distance. A longer distance implies a higher

dissimilarity is. The non-dominated solution in the Pareto archive set with the longest

(30)

CHAPTER 3

PSO for Multi-objective FSSP

In this chapter, we will discuss the probably success factors to develop a PSO design

for a discrete optimization problem. We will compare PSO with another

population-based meta-heuristic—genetic algorithm (GA). The principles of a GA

design may be also suitable to a PSO design.

There are two different representations of particle position associated with a

schedule. Zhang et al. (2005) demonstrated that permutation-based position

representation outperforms priority-based representation. While we have chosen to

implement permutation-based position representation, we must also adjust the particle

velocity and particle movement.

There are four types of feasible schedules in JSP, including inadmissible,

semi-active, active and non-delay. The optimal schedule is guaranteed to be an active

schedule. We can decode a particle position into an active schedule employing Giffler

and Thompson’s (1960) heuristic. There are two different representation of particle

position associated with a schedule. The results of Zhang (2005) demonstrated that

permutation-based position representation outperforms priority-based representation.

While choosing permutation-based position presentation to implement, we also have

to adjust the particle velocity and particle movement. In addition, the maintenance of

Pareto optima and diversification procedure are proposed finally for better

performance.

3.1 Problem Formulation

(31)

The primary elements of flow shop scheduling include a set of m machines and a

collection of n jobs to be scheduled on the set of machines. Each job follows the same

process of machines and passes through each machine only once. Each job can be

processed on one and only one machine at a time, whereas each machine can process

only one job at a time. The processing time of each job on each machine is fixed and

known in advance. We formulate the multi-objective flow shop scheduling problem

using the following notation:

n total number of jobs to be scheduled

m total number of machines in the process

t(i, j) processing time for job i on machine j (i=1,2,…n), (j=1,2,…m)

Li the lateness of job i

{π1, π2, …, πn} permutation of jobs

The objectives considered in this paper are formulated as follows:

Completion time (makespan) C(π, j)

) 1 , ( ) 1 , (π1 tπ1 C = (3.1) n i t C Ci,1)= (πi1,1)+ (πi,1) =2,..., (3.2) m j j t j C j C1, )= (π1, −1)+ (π, ) =2,..., (3.3) m j n i j t j C j C j Ci, )=max{ (πi1, ), (πi, −1)}+ (πi, ) =2,..., ; =2,..., (3.4) Makespan, fCmax =C(

π

n,m) (3.5)

(32)

Mean flow time, f C m n n i i MFT [ ( , )]/ 1

= = π (3.6) Machine idle time,

} ... 2 | }} 0 ), , ( ) 1 , ( {max{ ) 1 , ( { 2 1 1

= − = − − + − = n i i i MIT C j C j C j j m f π π π (3.7)

3.2 Particle Position Representation

In the study of flow shop scheduling, we randomly generated a group of particles

(solutions) represented by a permutation sequence that is an ordered list of operations.

The following example is a permutation sequence for a six-job permutation flow shop

scheduling problem, where jn is the operation of job n.

Index: 1 2 3 4 5 6 Permutation: j4 j3 j1 j6 j2 j5

An operation earlier in the list has a higher priority of being placed into the schedule.

We used a list with a length of n for an n-job problem in our algorithm to represent the

position of particle k, i.e.

. particle in of priority the is , ] ... [ 1 2 k j x x x x X i k i k n k k k =

Then, we convert the permutation list to a priority list. x is a value randomly ik initialized to some value between (p – 0.5) and (p + 0.5). This means x ←p + rand – ik 0.5, where p is the location (index) of ji in the permutation list, and rand is a random

number between 0 and 1. Consequently, the operation with smaller x has a higher ik priority for scheduling. The permutation list mentioned above can be converted to

k

(33)

We describe the conversion between integers and float-point numbers as follows.

The permutation list is represented in integer, while the priority list is presented in

floating-point number. At first, we generate integers randomly for permutation list.

The permutation list could convert to priority list via the equationxik = pi+rand()−0.5, where rand() is the random number between 0 and 1.

Figure 3.1 The conversion between integers and float-point numbers

The priority list contains real number is used in our PSO. The priority list stored in

the array is as follows.

3.9 6.3 0.6 1.8 5.2 2.7 Priority list 6 5 4 3 2 1 Index 3.9 6.3 0.6 1.8 5.2 2.7 Priority list 6 5 4 3 2 1 Index

Figure 3.2 The priority list stored in the array

As the particle move, the value of priority list may change. We assume that the

priority list change to be followed.

3.9 2.6 0.6 1.8 5.2 2.7 Priority list 6 5 4 3 2 1 Index 3.9 2.6 0.6 1.8 5.2 2.7 Priority list 6 5 4 3 2 1 Index

Figure 3.3 The priority list changed as particle movement

Finally, we sort the priority list and we can get a new permutation list. The new

(34)

3.9 2.6 0.6 1.8 5.2 2.7 Priority list 6 5 4 3 2 1 Index 3.9 2.6 0.6 1.8 5.2 2.7 Priority list 6 5 4 3 2 1 Index 2 6 1 5 3 4 Permutation list 4 3 5 1 6 2 Permutation list Sorting

Figure 3.4 A new permutation list

3.3 Particle Velocity

The original PSO velocity concept is that each particle moves according to the

velocity determined by the distance between the previous position of the particle and

the gbest (pbest) solution. The two major purposes of the particle velocity are to move

the particle toward the gbest and pbest solutions, and to maintain the inertia to prevent

particles from becoming trapped in local optima.

In the proposed PSO of flow shop scheduling, we concentrated on preventing

particles from becoming trapped in local optima rather than moving them toward the

gbest (pbest) solution. If the priority value increases or decreases with the present velocity in this iteration, we maintain the priority value increasing or decreasing at the

beginning of the next iteration with probability w, which is the PSO inertial weight.

The larger the value of w is, the greater the number of iterations over which the

priority value keeps increasing or decreasing, and the greater the difficulty the particle

has returning to the current position. For an n-job problem, the velocity of particle k

can be represented as . particle of of velocity the is where } 1 , 0 , 1 { ], ... [ 1 2 k j v v v v v V i k i k i k n k k k = ∈ −

The initial particle velocities are generated randomly. Instead of considering the

(35)

is larger or smaller than pbestik (gbesti) If x has decreased in the present ik iteration, this means that pbestik (gbesti) is smaller than x , and ik x is set moving ik toward pbestik (gbesti) by letting v ← –1. Therefore, in the next iteration, ik x is ik kept decreasing by one (i.e., x ← ik x –1) with probability w. Conversely, if ik x ik has increased in this iteration, this means that pbestik (gbesti) is larger than x , and ik

k i

x is set moving toward pbestik (gbesti) by letting v ←1. Therefore, in the next ik iteration, x is kept increasing by one (i.e. ik x ←ik x + 1) with probability w. ik

The inertial weight w influences the velocity of particles in PSO. We randomly

update velocities at the beginning of iterations. For each particle k and operation ji, if

k i

v is not equal to 0, v is set to 0 with probability (1–w). This ensures that ik x ik stops increasing or decreasing continuously in this iteration with probability (1–w).

3.4 Particle Movement

The particle movement of flow shop scheduling is based on the insertion operator

proposed by Sha and Hsu (2008). The insertion operator is introduced to the priority

list to reduce computational complexity. We illustrate the effect of the insertion

operator using the permutation list example described above. If we wish to insert j4

into the third location of the permutation list, we must move j6 to the sixth location,

move j1 to the fifth location, move j2 to the fourth location, and then insert j4 in the

third location. The insertion operation comprising these actions costs O(n/2) on

average. However, the insertion operator used in this study need only set

5 . 0 3+ −

rand

(36)

This requires only one step for each insertion. If the random number rand equals 0.1,

for example, after j4 is inserted into the third location, then

k

X becomes X = [ 2.7 k 5.2 1.8 0.6 2.6 3.9].

If we wish to insert ji into the pth location in the permutation list, we could set

5 . 0 − + ←p rand

xik . The location of operation ji in the permutation sequence of the kth

pbest and gbest solutions are k i

pbest andgbesti, respectively. As particle k moves, if k

i

v equals 0 for all ji, then xik is set to pbest +rand−0.5 k

i with probability c1 and set

to gbesti +rand−0.5 with probability c2, where rand is a random number between 0

and 1, c1 and c2 are constants between 0 and 1, and c1+c2 ≤1. We explain this

concept by assuming specific values for Vk, Xk, pbestk, gbest, c1, and c2.

. 1 . 0 , 8 . 0 c 2], 1 5 4 3 6 [ 2], 3 6 4 1 5 [ 3.9], 6.3 0.6 1.8 5.2 7 . 2 [ 0], 0 1 0 0 1 [ 2 1= = = = = − = c gbest pbest X V k k k For j1, since 1 ≠0 k v and k k k v x x1 ← 1 + 1, then 1 =1.7 k x . For j2, since 2 =0 k

v , the generated random number rand1 =0.6. Since rand1≤c1, then

the generated random number rand2 =0.3. Since

k k x pbest2 ≤ 2, set 2 ←−1 k v and 5 . 0 2 2 2 ←pbest +randxk k , i.e., 2 =0.8 k x . For j3, since 3 =0 k

v , the generated random number rand1=0.93. Since rand1>c1+c2, k

x3 and k

v3 do not need to be changed.

For j4, since 4 =1 k v , then k k k v x x4 ← 4 + 4, i.e., 4 =1.6 k x . For j5, since 5 =0 k

v , the generated random number rand1 =0.85. Since

2 1 1

1 rand c c

c < ≤ + , the generated random number rand2 =0.7. Since

k x gbest5≤ 5 , set 1 5 ←− k

v . Then x5 ←gbest5 +rand2 −0.5

k , i.e., 5 =1.2 k x . For j6, since 6 =0 k

v , the generated random number rand1=0.95. Since rand1 >c1+c2, k

x6 and k

(37)

Therefore, after particle k moves, the Vk and Xk are 3.9] 1.2 1.7 1.8 0.8 6 . 1 [ ] 0 1 1 0 1 1 [ = − − − = k k X V

In addition, we use a mutation operator in our PSO algorithm. After moving a

particle to a new position, we randomly choose an operation and then mutate its

priority value x in accordance with ik v . If ik xik(n/2), we randomly set

k i

x to a

value between (n/2) and n, and set k i

v ← 1. If xik >(n/2), we randomly set k i

x to a

value between 0 and (n/2), and set k i

v ← –1.

3.5 Pareto optimal set maintenance

Real empirical scheduling decisions often involve not only the consideration of more

than one objective at a time, but also must prevent the conflict of two or more

objectives. The solution set of the multi-objective optimization problem with

conflicting objective functions consistent with the solutions so that no other solution

is better than all other objective functions is called Pareto optimal. A multi-objective

minimization problem with m decision variables and n objectives is given below to

describe the concept of Pareto optimality.

n m n x F x where x f x f x f x F Minimize ℜ ∈ ℜ ∈ = ) ( , , )) ( ..., ), ( ), ( ( ) ( 1 2

A solution p is said to dominate solution q if and only if

} ..., , 2 , 1 { ) ( ) ( } ..., , 2 , 1 { ) ( ) ( n k q f p f n k q f p f k k k k ∈ ∃ < ∈ ∀ ≤

Non-dominated solutions are defined as solutions that dominate the others but do

not dominate themselves. Solution p is said to be a Pareto-optimal solution if there

(38)

including all Pareto-optimal solutions is referred to as the Pareto-optimal or efficient

set. A graph plotted using collected Pareto-optimal solutions in feasible space is

referred to as the Pareto front.

The external Pareto optimal set is used to produce a limited size of

non-dominated solutions (Knowles and Corne (1999); Zitzler et al. (2001)). The

maximum size of the archive set is specified in advance. This method is used to avoid

missing fragments of the non-dominated front during the search process. The

Pareto-optimal front is formed as the archive is updated iteratively. When the archive

set is sufficiently empty and a new non-dominated solution is detected, the new

solution enters the archive set. As the new solution enters the archive set, any solution

already there that is dominated by this solution will be removed. When the maximum

archive size reaches its preset value, the archive set must decide which solution

should be replaced. In this study, we propose a novel Pareto archive set update

process to preclude losing non-dominated solutions when the Pareto archive set is full.

When a new non-dominated solution is discovered, the archive set is updated when

one of the following situations occurs: either the number of solutions in the archive

set is less than the maximum value, or if the number of solutions in the archive set is

equal to or greater than the maximum value, then the one solution in the archive set

that is most dissimilar to the new solution is replaced by the new solution. We

measure the dissimilarity by the Euclidean distance. A longer distance implies a

higher dissimilarity. The non-dominated solution in the Pareto archive set with the

longest distance to the newly found solution is replaced. For example, the distance (dij)

(39)

91 . 6 ) 2 . 1 3 . 6 ( ) 7 . 1 6 . 0 ( ) 8 . 0 2 . 5 ( ) 6 . 1 7 . 2 ( 3.9] 1.2 1.7 1.8 0.8 6 . 1 [ 3.9] 6.3 0.6 1.8 5.2 7 . 2 [ 2 2 2 2 2 1 = − + − + − + − = = = ij d X X

The Pareto archive set is updated at the end of each iteration in the proposed

PSO.

3.6 Computational Results

The proposed PSO algorithm was verified by benchmark problems obtained from the

OR-Library that were contributed by Carlier (1978), Heller (1960), and Reeves (1995).

The test program was coded in Visual C++ and run 20 times on each problem using an

Intel Pentium 4 3.0-GHz processor with 1 GB of RAM running Windows XP. We

used four swarm sizes N (10, 20, 60, and 80) to test the algorithm during a pilot

experiment. A value of N = 80 was best, so it was used in all subsequent tests. The

algorithm parameters were set as follows: c1 and c2 were tested over the range 0.1–0.7

in increments of 0.2, and the inertial weight w was reduced from wmax to wmin during

the iterations. Parameter wmax was set to 0.5, 0.7, and 0.9 corresponding to wmin values

of 0.1, 0.3, and 0.5. Settings of c1 = 0.7, c2 = 0.1, wmax= 0.7, and wmin= 0.3 worked

best.

The presented PSO algorithm is compared with two heuristic algorithms: CDS

and NEH. We briefly describe these two methods here. CDS heuristic named by the

three authors was proposed by Campbell, et al. (1970). The CDS procedure is a

heuristic generalization of Johnson’s algorithm. The process generates a set of m-1

artificial two-machine problem, each of which is then solved by Johnson’s rule. In this

數據

Table 3. 2 The average relative error in MIT and Aggregate of problem Rec
Table 3. 3 The average relative error in C max ,  MFT and MIT of problem Tai_20
Table 3. 4 The average relative error in C max ,  MFT and MIT of problem Tai_50
Table 3. 6 The average relative error in C max ,  MFT and MIT of problem Tai_200 and Tai_500
+7

參考文獻

相關文件

Shih-Cheng Horng , Feng-Yi Yang, “Embedding particle swarm in ordinal optimization to solve stochastic simulation optimization problems”, International Journal of Intelligent

Tseng, Growth behavior of a class of merit functions for the nonlinear comple- mentarity problem, Journal of Optimization Theory and Applications, vol. Fukushima, A new

Chen, The semismooth-related properties of a merit function and a descent method for the nonlinear complementarity problem, Journal of Global Optimization, vol.. Soares, A new

The purpose of this talk is to analyze new hybrid proximal point algorithms and solve the constrained minimization problem involving a convex functional in a uni- formly convex

Chen, Conditions for error bounds and bounded level sets of some merit func- tions for the second-order cone complementarity problem, Journal of Optimization Theory and

Chen, Conditions for error bounds and bounded level sets of some merit func- tions for the second-order cone complementarity problem, Journal of Optimization Theory and

Moreover, this chapter also presents the basic of the Taguchi method, artificial neural network, genetic algorithm, particle swarm optimization, soft computing and

This project integrates class storage, order batching and routing to do the best planning, and try to compare the performance of routing policy of the Particle Swarm