an evolution-based tabu search approach to codebook design

16
Pattern Recognition 40 (2007) 476 – 491 www.elsevier.com/locate/patcog An evolution-based tabu search approach to codebook design Shih-Ming Pan a, b , Kuo-Sheng Cheng a , a Institute of Biomedical Engineering, National Cheng Kung University, Tainan, Taiwan 701, ROC b Department of Electrical Engineering, KaoYuan University, Kaohsiung County, Taiwan 821, ROC Received 15 October 2003; received in revised form 14 November 2005; accepted 14 November 2005 Abstract This paper presents an evolution-based tabu search approach (ETSA) to design codebooks with smaller distortion values in vector quantization. In the ETSA, there is no need for users to determine the size of a tabu memory and to specifically define a set of tabu restrictions and a set of aspiration criteria. During iterations, only the best solution visited is memorized as a tabu point in the search space and the distance from each trial solution to the tabu point is an important factor in the fitness evaluation. In population competition, the new fitness function plays the roles of the tabu restrictions and the aspiration criteria. Based on the new fitness function and a parallel evolutionary mechanism, the ETSA can prevent premature convergence and eventually find a good solution. Seven grayscale images are used to test the performance of the ETSA. Experimental results show that the ETSA performs better than several existing algorithms in terms of the distortion and robustness measures. 2006 Pattern Recognition Society. Published by Elsevier Ltd. All rights reserved. Keywords: Codebook design; Evolutionary algorithm; Evolution-based tabu search; Image coding; Vector quantization 1. Introduction Vector quantization (VQ) is the process of mapping an input data vector to one of a set of pre-designed codevectors stored in a codebook. In other words, in VQ the codevectors in the codebook are a set of reproduction vectors for all the data vectors to be quantized. This technique is widely applied in data compression and some image processing tasks such as enhancement, classification, halftoning, edge detection, histogram equalization, restoration, and denois- ing [1]. For a given set of training vectors, the problem of de- signing an optimal codebook is a real-valued optimization problem that aims to minimize the distortion between the training set and the codebook. After training, each codevec- tor has one corresponding vector cluster that consists of its inverse mapping training vectors. If the codevector does not have one corresponding vector cluster, it is referred to as a Corresponding author. Fax: +886 6 2343270. E-mail addresses: [email protected] (S.-M. Pan), [email protected] (K.-S. Cheng). 0031-3203/$30.00 2006 Pattern Recognition Society. Published by Elsevier Ltd. All rights reserved. doi:10.1016/j.patcog.2005.11.021 “useless codevector” in this paper. The mean square error (MSE) is the most commonly used distortion measure be- cause it is frequently associated with the energy or power of an error signal and is an analytically tractable measure [2]. This distortion function is usually multi-modal and the search of its globally optimal (minimum) solution is a NP- hard optimization problem [3]. The K-means algorithm (KMA; also known as the GLA [2,4]) is a well-known deterministic approach to codebook design due to its easy implementation and rapid conver- gence. The KMA is an iterative procedure used to improve the solution (codebook) by repeating the Lloyd iteration until the solution is unchanged. For a given training set and a given codebook, the Lloyd iteration consists of two steps [2]. First, it applies the nearest neighbor rule to cluster the training vectors and then a set of vector clusters (each vector cluster is a subset of the training set) can be obtained. Sec- ond, the Lloyd iteration uses the centroid condition to deter- mine an improved (or unchanged, at least) codebook from the vector clusters obtained in the first step. The KMA has the disadvantage, however, that for a given initial solution it always converges to the nearest local minimum of the MSE

Upload: shih-ming-pan

Post on 21-Jun-2016

213 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: An evolution-based tabu search approach to codebook design

Pattern Recognition 40 (2007) 476–491www.elsevier.com/locate/patcog

An evolution-based tabu search approach to codebook design

Shih-Ming Pana,b, Kuo-Sheng Chenga,∗aInstitute of Biomedical Engineering, National Cheng Kung University, Tainan, Taiwan 701, ROC

bDepartment of Electrical Engineering, Kao Yuan University, Kaohsiung County, Taiwan 821, ROC

Received 15 October 2003; received in revised form 14 November 2005; accepted 14 November 2005

Abstract

This paper presents an evolution-based tabu search approach (ETSA) to design codebooks with smaller distortion values in vectorquantization. In the ETSA, there is no need for users to determine the size of a tabu memory and to specifically define a set of taburestrictions and a set of aspiration criteria. During iterations, only the best solution visited is memorized as a tabu point in the searchspace and the distance from each trial solution to the tabu point is an important factor in the fitness evaluation. In population competition,the new fitness function plays the roles of the tabu restrictions and the aspiration criteria. Based on the new fitness function and a parallelevolutionary mechanism, the ETSA can prevent premature convergence and eventually find a good solution. Seven grayscale images areused to test the performance of the ETSA. Experimental results show that the ETSA performs better than several existing algorithms interms of the distortion and robustness measures.� 2006 Pattern Recognition Society. Published by Elsevier Ltd. All rights reserved.

Keywords: Codebook design; Evolutionary algorithm; Evolution-based tabu search; Image coding; Vector quantization

1. Introduction

Vector quantization (VQ) is the process of mapping aninput data vector to one of a set of pre-designed codevectorsstored in a codebook. In other words, in VQ the codevectorsin the codebook are a set of reproduction vectors for allthe data vectors to be quantized. This technique is widelyapplied in data compression and some image processingtasks such as enhancement, classification, halftoning, edgedetection, histogram equalization, restoration, and denois-ing [1].

For a given set of training vectors, the problem of de-signing an optimal codebook is a real-valued optimizationproblem that aims to minimize the distortion between thetraining set and the codebook. After training, each codevec-tor has one corresponding vector cluster that consists of itsinverse mapping training vectors. If the codevector does nothave one corresponding vector cluster, it is referred to as a

∗ Corresponding author. Fax: +886 6 2343270.E-mail addresses: [email protected] (S.-M. Pan),

[email protected] (K.-S. Cheng).

0031-3203/$30.00 � 2006 Pattern Recognition Society. Published by Elsevier Ltd. All rights reserved.doi:10.1016/j.patcog.2005.11.021

“useless codevector” in this paper. The mean square error(MSE) is the most commonly used distortion measure be-cause it is frequently associated with the energy or powerof an error signal and is an analytically tractable measure[2]. This distortion function is usually multi-modal and thesearch of its globally optimal (minimum) solution is a NP-hard optimization problem [3].

The K-means algorithm (KMA; also known as the GLA[2,4]) is a well-known deterministic approach to codebookdesign due to its easy implementation and rapid conver-gence. The KMA is an iterative procedure used to improvethe solution (codebook) by repeating the Lloyd iterationuntil the solution is unchanged. For a given training set anda given codebook, the Lloyd iteration consists of two steps[2]. First, it applies the nearest neighbor rule to cluster thetraining vectors and then a set of vector clusters (each vectorcluster is a subset of the training set) can be obtained. Sec-ond, the Lloyd iteration uses the centroid condition to deter-mine an improved (or unchanged, at least) codebook fromthe vector clusters obtained in the first step. The KMA hasthe disadvantage, however, that for a given initial solution italways converges to the nearest local minimum of the MSE

Page 2: An evolution-based tabu search approach to codebook design

S.-M. Pan, K.-S. Cheng / Pattern Recognition 40 (2007) 476–491 477

function due to its descending behavior [2]; in short, it isonly a local optimization procedure. Thus, the KMA does nothave the ability to locate the globally optimal solution, espe-cially for a distortion function with many local minima [2].

To effectively approximate the globally optimal solutionin finite iterations, stochastic approaches have been devel-oped, such as simulated annealing-based algorithms [5–7],genetic-based algorithms [8–12], and the tabu search-basedalgorithm [13]. In comparison with the KMA, these algo-rithms can design better codebooks, but at the expense ofmore computations. However, these methods have severalcommon disadvantages. First, in these algorithms the KMAis often included as a major improvement procedure for eachtrial solution; however, this strategy may lead to too manysimilar trail solutions and result in premature convergence.Second, because they do not deal with the problem of a trialsolution with one or more useless codevectors, in the caseof poor initialization these algorithms may generate one ormore useless codevectors in a final codebook. Finally, inthese algorithms only the distortion function is used to eval-uate the survival capability of each trial solution during iter-ations. This type of evaluation, however, is difficult to enablethe search to approximate the globally optimal solution infinite iterations, because during iterations (especially in theearly stage) a trial solution with a smallest distortion valuedoes not always evolve into the best one among a set of trialsolutions at the end of the iterations [14]. Therefore, in ad-dition to the distortion measure, one or more other factorsshould be included in the evaluation of the survival capabil-ity of each trial solution [14].

The tabu search (TS) proposed by Glover is a well-knownmeta-heuristic that guides a local heuristic search procedureto explore the solution space beyond local optimality [14].Its main components are a set of moves, a memory of acertain size (called a tabu list or a tabu memory), a set oftabu restrictions, and a set of aspiration criteria [15]. Themove is an operation for generating a trial solution. Thetabu restrictions, recorded in the tabu memory, are certainconditions imposed on moves, which make some of themforbidden. The aspiration criteria override the tabu restric-tions. The details of the TS will be introduced in the thirdsection. When using the TS to solve real-valued optimiza-tion problems, users always have the problems of determin-ing the size of the tabu memory and defining the tabu re-strictions and aspiration criteria. Although the determinationof the size of the tabu memory and the definitions of theaspiration criteria have been investigated in Refs. [16,17],the studies’ methods were developed for combinatorial op-timization problems and cannot be easily extended to real-valued optimization problems. For the definitions of the taburestrictions, a set of approximate tabu restrictions proposedin Refs. [13,18–21] seems to be reasonable, but these defini-tions are often problem-dependent and must be determinedexperimentally.

The objective of this study is to develop an improved TSapproach, called an evolution-based TS approach (ETSA), to

design codebooks with smaller distortion values. This algo-rithm incorporates the advantages of both the TS approachand evolutionary algorithms. We test its performance usinga typical problem of coding grayscale images.

In developing the ETSA, we tried to overcome the prob-lems in the traditional TS and the common disadvantagesof the stochastic algorithms mentioned above. To enable aglobal search, initialization with a set of trial solutions (apopulation of individuals) is better than that with only onetrial solution. To generate the offspring population with gooddiversity and small distortion values, incorporating both anadaptive asexual reproduction operation (based on one in-dividual) and a sexual reproduction operation (based on apair of individuals) is better than only one type of randomoperation based on one individual. To prevent each of thesereproduction operations from destroying the good attributesof the better individuals obtained from the other, it is betterfor these two reproduction operations to operate in parallelrather than sequentially. When seeking more regions withgood qualities in the solution space, the distance betweeneach individual and the best individual visited, called thetabu distance, is considered an important factor in the fit-ness evaluation of each individual. Because the possibilityof an exact solution cycling (i.e., generating the same solu-tions during iterations) in the continuous solution space isextremely small and the newly defined fitness function in-cludes the tabu distance as well as the distortion, only onetabu restriction (i.e., the best individual visited is memo-rized as a tabu point in the search space) instead of a set ofapproximate tabu restrictions is sufficient to implement thephilosophy of the TS. Thus, there is no need for the usersof the ETSA to determine the size of a tabu memory andto specifically define a set of approximate tabu restrictionsand a set of aspiration criteria. To increase the survival ca-pability of each individual without any useless codevector,the Lloyd iteration (called an“evolution operation” here) isused to appropriately improve each individual. Finally, toeliminate each individual with one or more useless codevec-tors, a simple degeneration operation is designed to forciblyreduce its survival capability.

In ETSA, each individual is evaluated using not only thedistortion function, but also a fitness function. Based on ourexperimental results, in terms of the distortion and robust-ness measures, the ETSA performs better than several ex-isting algorithms (a parallel version of KMA, genetic-basedalgorithm, simulated annealing-based algorithm, and TS-based algorithm). Furthermore, compared with the two de-generative versions of the ETSA, our tests demonstrate theuseful effects of the tabu-distance measure and the sexualreproduction operation in the ETSA.

2. Problem formulation

Let M be the number of given training vectors to be quan-tized, L be the dimensions of a training vector, and K be

Page 3: An evolution-based tabu search approach to codebook design

478 S.-M. Pan, K.-S. Cheng / Pattern Recognition 40 (2007) 476–491

the size of a codebook. Each training vector is representedby a row vector Xi = [xi1xi2 . . . xiL], and each codevectorin the codebook Cb is denoted as Cj = [cj1cj2 . . . cjL] forj = 1, 2, . . . , K . The optimization of Cb in terms of MSEcan be formulated by minimizing the distortion function D(the lower the value of D, the better the quality of Cb):

D(Cb) = 1

M

K∑j=1

M∑i=1

uij · ‖Xi − Cj‖2, (1)

subject to the following constraints:

K∑j=1

uij = 1 ∀i ∈ {1, 2, . . . , M}, (2)

uij ={

1 if Xi is in the j th cluster,0 otherwise

(3)

and

Lk �cjk �Uk, k = 1, 2, . . . , L, (4)

where Cb = [C1C2 . . . CK ]T (a K × L matrix), Lk is theminimum of the kth components in all training vectors, Uk isthe maximum of the kth components in all training vectors,and ‖X − C‖ is the Euclidean distance between the vectorsX and C.

3. Algorithm development

First, we introduce the concepts of a traditional TS anddiscuss its main advantages and disadvantages. We also re-view the evolutionary mechanisms of traditional evolution-ary algorithms and point out their main advantages and dis-advantages. In Section 3.2, we describe the ETSA in detail.

3.1. Concept descriptions

The TS provides a framework for a local search heuristicto avoid terminating a local optimum prematurely. The mostcommonly used implementation of the TS regards an allow-able solution as a reachable point in the search space anduses a tabu memory to record the recently accepted solutionsas the tabu points in the search space. During the search,any new trial solution identical to one of the solutions in thetabu memory is considered to be a tabu solution and will beeliminated; that is, in this type of implementation all solu-tions in the tabu memory are defined as a set of exact taburestrictions. This mechanism prevents solution cycling (i.e.,repeatedly visiting the same points in the search space). Theprevention of solution cycling forces the search in differentdirections instead of trapping it at a local optimum. Duringthe search, if a tabu solution satisfies the predefined aspira-tion criteria, it becomes a non-tabu solution.

Let Si be a given initial solution, Sc be the current so-lution, Sb be the best solution visited, Mt be a given tabu

memory recording Si , As be a given set of aspiration criteria,and fc be an evaluation function. The steps of the TS canbe described as follows [13,15]:

(1) Set Sc = Sb = Si .(2) Generate a set of Ns trial solutions by performing Ns

moves on Sc, Sset = {S1, S2, . . . , SNs}, and computethe fc value for each trial solution.

(3) Based on Mt and As , check the tabu status of each trialsolution in Sset .

(4) According to the obtained fc values, select the best onefrom all the non-tabu solutions in Sset .

(5) Replace Sc with the selected best trial solution.(6) If Mt is full, the oldest solution in it is removed.(7) Insert Sc to Mt .(8) If Sc is better than Sb, Sb is replaced with Sc.(9) Go to Step 2 until a stopping criterion is satisfied.

(10) Output Sb.

The performance of the TS mainly depends on the moveoperations, the size of a tabu memory, a set of tabu restric-tions, and a set of aspiration criteria [16,17]. If the mem-ory size is too small, the TS cannot force a wider search inthe solution space and may keep returning to the same lo-cal optimum. In contrast, if it is too large, the TS must takea longer time to check whether each trial solution is tabu.Furthermore, a large tabu memory also restricts the rangeof choices and may drive the search away from an optimalsolution. If the aspiration criteria are appropriately defined,better solutions may be generated from tabu solutions be-cause the tabu solutions have good attributes and these crite-ria give them multiple opportunities to be accepted again. Ina continuous solution space, it is almost impossible for themove operations to generate the same solutions; hence, thetabu memory and the operations used for it will be wastedunless the tabu restrictions are redefined appropriately. InRefs. [13,18–21], a tabu memory is used to define a setof approximate tabu restrictions (instead of a set of exacttabu restrictions) such that in the search space the tabu re-strictions are extended from tabu points (i.e., the solutionsrecorded in the tabu memory) to the tabu regions that sur-round them (i.e., the solutions recorded in the tabu memoryand their neighborhood). During the search, any trial solu-tion that approaches (or revisits) one of the tabu points willbe eliminated (i.e., any trial solution that is similar or iden-tical to one of the solutions in the memory will be elimi-nated) unless it satisfies the aspiration criteria. In practicalapplications, however, the range of extension cannot be eas-ily determined. Hence, when applying the TS to real-valuedoptimization problems, users face three main problems: de-termining the size of a tabu memory, defining a set of taburestrictions, and defining a set of aspiration criteria.

For the codebook design problem, Fränti et al. [13] pro-posed a TS-based approach that is a codebook-based vari-ant. This method uses a memory of a fixed size (the size isdetermined empirically) and thereby defines a set of approx-

Page 4: An evolution-based tabu search approach to codebook design

S.-M. Pan, K.-S. Cheng / Pattern Recognition 40 (2007) 476–491 479

imate tabu restrictions. It does not define the aspiration cri-teria, and its move operation is implemented by a swappingmethod that replaces (with a small probability) a codevec-tor with a randomly chosen training vector. In addition, thismethod only considers the distortion as the evaluation cri-terion for each trial solution and selects the next solution ina deterministic manner. According to Fränti et al.’s experi-mental results, the tabu memory is nearly useless in improv-ing codebook quality (perhaps due to the inappropriate taburestrictions), and the improvements are mainly provided bytwo KMA iterations.

The development of the ETSA is mainly based on theconcepts of the TS. The roles of tabu restrictions and the as-piration criteria are implemented by a new fitness functionthat introduces a tabu-distance measure as well as a distor-tion measure. The move operations in the ETSA are imple-mented by two types of evolutionary operations, inspired bythe advantages of evolutionary algorithms.

For real-valued optimization problems, real-valued ge-netic algorithms (GAs), evolutionary programming (EP),and evolution strategies (ESs) are three well-known evolu-tionary algorithms [22,23]. All these algorithms start witha set of trial solutions (a population of individuals) and thegeneration of new trial solutions is based on a set of trial so-lutions instead of only one trial solution. Hence, the diversityof the trial solutions may be better than that of the trial so-lutions in a traditional TS. In an evolutionary process, eachgeneration (iteration) consists of three stages: generating aparent population, reproducing an offspring population, andpopulation competition. The offspring (new trial solutions)can be generated by sexual reproduction and asexual repro-duction. The sexual reproduction operation acts on a pairof individuals to generate a pair of offspring. The asexualreproduction operation operates on one individual to gener-ate one offspring. In GAs and ESs, the sexual reproductionoperation usually precedes the asexual reproduction opera-tion; that is, these two operations act in a sequential manner.In EP, however, offspring are generated by the asexual re-production operation only. After the reproduction stage, thepopulation competition takes place naturally. In GAs, thecompetition population is usually the offspring populationgenerated by asexual reproduction. In ESs, each offspringcompetes with parents and other offspring ((�+�)−ES), orit only competes with other offspring ((�, �)− ES). Finally,these algorithms use a selection procedure to determine thenext parent population (i.e., survivors) from the competitionpopulation. In ESs, the selection procedure usually operatesin a deterministic manner, selecting the best individuals ac-cording to the fitness. In contrast, in GAs and EP the se-lection procedure operates in a stochastic manner that giveseach individual a survival chance proportional to its fitness(e.g., the roulette wheel selection and the tournament selec-tion [22]).

The performance of these evolutionary algorithms mainlydepends on the sexual reproduction operation, the asex-ual reproduction operation, and the selection procedure.

For complex real-valued optimization problems, EP mayperform worse than GA and ES because it only usesone type of reproduction operation to generate the off-spring population. However, GA and ES have one obviousdisadvantage: because the two reproduction operationsare sequential, one operation may destroy the good at-tributes of the better individuals obtained from the otheroperation.

For the codebook design problem, the methods in Refs.[9,10] are two GA-based algorithms. In both methods, thefitness of each individual is evaluated by its distortion valueonly. Although the algorithms use a stochastic selection pro-cedure to allow the survival of poor individuals (i.e., to en-able the search to escape from local minima), the result willbe unstable due to the random manner used.

While developing the ETSA, we tried to avoid the prob-lems of the traditional TS and improve upon the disadvan-tages in the traditional evolutionary algorithms. Instead ofonly one trial solution, a population of individuals is used toinitialize the ETSA. An adaptive asexual reproduction op-eration similar to the mutation operation used in EP [22]was designed to diversify the population, and a sexual re-production operation similar to the arithmetical crossoveroperation used in the real-valued GA [23] is used to inten-sify the generation of better trial solutions. These two repro-duction operations act in parallel rather than sequentially.Instead of a certain set of tabu points, only one tabu pointis adaptively set in the search space. A tabu-distance mea-sure is used to measure the similarity between each indi-vidual and the best individual visited (a tabu point). Ratherthan the KMA, an evolution operation (i.e., the Lloyd it-eration) is used as a deterministic improvement procedurefor each individual without any useless codevector. A de-generation operation is designed to handle the individu-als with one or more useless codevectors. Both the dis-tortion function and the new fitness function consisting ofthe distortion and the tabu-distance measures are used toevaluate each individual. Finally, to easily and stably findthe globally optimal solution, a deterministic selection pro-cedure based on the new fitness, rather than a stochasticselection procedure, is used to determine the next parentpopulation.

3.2. Evolution-based tabu search approach

According to Eq. (1), the solution (codebook) in theETSA is represented by a N-dimensional vector with K ×L

real variables (e.g., Cb =[c11c12 . . . c1L . . . cj1cj2 . . . cjL . . .

cK1cK2 . . . cKL]). Each trial solution is regarded as an indi-vidual I to be evolved and is associated with two functions,the distortion function D(I) and the fitness function f (I).The distortion function defined by Eq. (1) is used to measurethe individual’s quality, while the fitness function is de-signed to evaluate its survival capability in the competitionpopulation.

Page 5: An evolution-based tabu search approach to codebook design

480 S.-M. Pan, K.-S. Cheng / Pattern Recognition 40 (2007) 476–491

3.2.1. InitializationLet Pp ={I1, I2, . . . , IPS} be a parent population with PS

individuals and the vector Ii = [Ii(1)Ii(2) . . . Ii(N)] be theith individual in the Pp. For the initialization of each indi-vidual, the most commonly used method (called RSI) is torandomly choose training vectors. To test the robustness ofthe ETSA, two different initialization methods are also usedin this study. One method, RGI, randomly generates reason-able codevectors; the other method, PI, randomly generatescodevectors in the poor region around the worst codebookobtained from repeating the KMA with 50 different initialsolutions.

In the RGI, each individual is generated by

Ii(j) = I (j)L + Ur0 · (I (j)U − I (j)L),

i = 1, . . . , PS, j = 1, . . . , N , (5)

where Ur0 is a random variable uniformly distributed in[0, 1] and I (j)U and I (j)L are the maximum and minimumof the jth components in all training vectors, respectively. Inthe PI, individuals are forced to a specific poor zone by

Ii(j) = I (j)f wcb + Ur1 · |I (j)f wcb − I (j)iwcb|,i = 1, . . . , PS, j = 1, . . . , N , (6)

where Ur1 is a random variable uniformly distributed in[−1, 1], I (j)f wcb is the jth component of the worst code-book obtained from repeating the KMA, and I (j)iwcb is thejth component of the initial codebook corresponding to theobtained worst codebook.

For all individuals in Pp, the distortion values are com-puted. Then the individual with the least distortion is rec-orded as the best solution visited, Ibest , and is select-ed as a tabu point in the search space: Ptabu = {Ii; D(Ii ) <

D(Ij ), j = 1, 2, . . . , PS, j �= i}.

3.2.2. Offspring generationIn this stage, two offspring populations, called the asexual

offspring population, Par , and the sexual offspring popula-tion, Psr , are generated by the asexual reproduction oper-ation and sexual reproduction operation, respectively. Bothoperations act on the same parent population, Pp. For sim-plicity, the combination of these two offspring populations iscalled the offspring population Po; that is, Po ={Par ∪ Psr},where Par = {I′

1, I′2, . . . , I′

PS} and Psr = {I′′1, I′′

2, . . . , I′′PS}.

3.2.2.1. Asexual reproduction One asexual offspring, I′i , is

reproduced from one parent, Ii , by perturbing each compo-nent in Ii as follows:

I ′i (j) = Ii(j) + Nr(0, �), i = 1, . . . , PS, j = 1, . . . , N ,

(7)

�2 = sm · (I (j)U − I (j)L)D(Ii )

DPmax

, (8)

sm(g) ={

sm(g − 1), if Dmin(g − 1)

< Dmin(g − 2),

sm(g − 1) − �sm otherwise,(9)

where Nr(0, �) is the perturbation determined by a Gaus-sian random variable with zero mean and standard devia-tion �, DPmax is the maximum distortion value in D(Pp), g

is the generation number, Dmin(g) is the minimum distor-tion in the gth generation, and �sm is the step size of sm.In this operation, the perturbation depends on the distortionvalue of each individual, on sm, and on the number of gen-erations. The individual with a larger distortion value willbe greatly changed (with a larger probability); in contrast,the individual with a smaller distortion value will only beslightly changed (with a larger probability). The parametersm, a positive real number, controls the amount of maximumperturbation; its initial value, sm(0), is typically selected as1.0. To prevent the search from converging slowly, sm isprogressively decreased by Eq. (9). If the resulting elementI ′i (j) is larger than the upper limit I (j)U or is smaller than

the lower limit I (j)L, it will be replaced by that limit. Thisstep generates a set of PS asexual offspring, Par .

3.2.2.2. Sexual reproduction Two parents, Ii and Ik , arerandomly chosen to perform the sexual reproduction withprobability Psrp. When the reproduction condition is met,two sexual offspring are generated with certain qualities in-herited from their two parents by the following operation:

I ′′i (j) = Ii(j) + Ur0 · (Ik(j) − Ii(j)),

i, k ∈ {1, 2, . . . , PS}, k �= i, (10)

I ′′k (j) = Ik(j) − Ur0 · (Ik(j) − Ii(j)),

j = 1, 2, . . . , N . (11)

In addition, if the element I ′′i (j) has an unreasonable value,

it will be replaced by the upper (or lower) limit. After thisstep, a set of PS sexual offspring, Psr , is generated.

3.2.3. Evolution/degenerationIn the natural world, each individual in a population is

not only affected by other individuals (e.g., food competi-tion, predator, and mating) but also the environment (e.g.,food resource and climate) [24]. Normal individuals seekenvironments better for survival and then migrate to them,whereas defective individuals lack these survival skills. Inthe ETSA, an individual with one or more useless code-vectors is regarded as a defective individual; otherwise, itis considered normal. Compared with a normal individual,a defective individual usually has a larger distortion value.However, during the early stages of the evolutionary pro-cess, a defective individual occasionally has a lower distor-tion value than that of a normal individual, so that the formermay survive the population competition. Defective individ-uals do not easily evolve to an optimal solution unless anextra procedure is designed to repair their useless codevec-tors. The repair procedure, however, requires extra compu-tations. In the ETSA, to eliminate the defective individualsin the competition, they are exposed to a degeneration op-eration to forcibly decrease their fitness. For each normal

Page 6: An evolution-based tabu search approach to codebook design

S.-M. Pan, K.-S. Cheng / Pattern Recognition 40 (2007) 476–491 481

individual, migration to an area of better fitness is imple-mented by running its elements through the Lloyd iteration(an evolution operation).

Let Ioi(i = 1, 2, . . . , 2PS) be the ith offspring in the off-spring population Po and Nuc(Ioi) be the number of use-less codevectors in the individual Ioi . The evolution op-eration and the degeneration operation are parameterizedby a weight wed_i for the distortion function D(Ioi) asfollows:

wed_i (g) ={1 if Nuc(Ioi) = 0,

[(Nuc(Ioi) + 1) · (g + 1)] otherwise.(12)

In short, for individual Ioi with Nuc(Ioi) = 0 (i.e., a normalindividual), the evolution operation is applied by perform-ing the Lloyd iteration and setting wed_i = 1.0; in contrast,for the individual Ioi with Nuc(Ioi) �= 0 (i.e., a defectiveindividual), the degeneration operation is applied by settingwed_i as the value in Eq. (12). Thus, for each defective indi-vidual, the weighted-distortion value is larger than the orig-inal distortion value, and it is proportional to the numberof useless codevectors and the number of generations; inother words, each defective individual is forcibly associatedwith a larger distortion value (i.e., an undesired result) inthis stage.

If the smallest weighted-distortion is less than that of thebest solution visited, Ibest , the corresponding offspring Ioi

replaces the best solution visited and the tabu point Ptabu isupdated as well.

3.2.4. Fitness evaluationTo find the globally optimal solution, both the distortion

and the tabu-distance measures are included in the fitnessevaluation of each individual. For each offspring Ioi , thefitness f (Ioi) (or foi) is defined by summing a distortionterm and a tabu-distance term:

foi = Dw_min

wed_i · Doi

+ wtd · doi

dmax

, i = 1, 2, . . . , 2PS, (13)

where Doi is the distortion D(Ioi), Dw_min is the minimumvalue in {wed_1 ·Do1, wed_2 ·Do2, . . . , wed_2PS ·Do2PS}, doi

is the tabu distance of Ioi (i.e., the distance between Ioi andIbest ), dmax is the maximum value in {do1, do2, . . . , do2PS},and wtd is a weight for the tabu-distance ratio. To gradu-ally decrease the importance of the tabu-distance term, theweight wtd , a positive real number, decreases as the itera-tion number increases. Its initial value is typically set to bewithin [0.1, 1.0], and its final value is a very small valueapproaching zero.

From Eq. (13), it is clear that the individual with ashort (or zero) tabu distance (i.e., it is similar or iden-tical to the best solution visited) tends to have lower

Sexual Reproduction (I’i, I’j) = SR (Ii,Ij)

Asexual Reproduction I”i = AR(Ii)

Calculate Distortion Compute Tabu Distance

Evaluate Fitness

Competition Update Tabu Point

Parent Population

Next Parent Population

Evolution/Degeneration

Evolved Offspring

AR Offspring ParSR Offspring Psr

Fig. 1. Flowchart of the ETSA.

fitness and will be eliminated in the following competitionstage (i.e., the fitness function plays the role of the tabu re-strictions in the traditional TS) unless its distortion is smallenough to enable it to have higher fitness than half the indi-viduals in the competition population (i.e., the fitness func-tion plays the role of the aspiration criteria in the traditionalTS). An individual with a long tabu distance and a small dis-tortion value must have higher fitness. An individual with aslightly shorter tabu distance tends to have higher fitness ifits distortion value is small enough to compensate its tabudistance; otherwise, it tends to have lower fitness. An indi-vidual with a slightly larger distortion value tends to havehigher fitness if its tabu-distance is long enough to compen-sate its distortion value; otherwise, it tends to have lowerfitness.

During the iterations, the asexual reproduction operationtends to spread individuals over the whole search space,whereas the sexual reproduction operation tends to concen-trate the individuals in several good regions. For these twooperations, a deterministic selection procedure (i.e., the fol-lowing competition stage) tends to balance them accordingto the defined fitness so that the search can find the globallyoptimal solution more easily.

3.2.5. Competition and terminationAccording to the fitness values, this step selects the best PS

offspring from Po as the next parent population to evolve. Fi-nally, the evolutionary process terminates at a pre-specifiednumber of generations and outputs the final solution, Ibest .Fig. 1 outlines this evolutionary process.

Page 7: An evolution-based tabu search approach to codebook design

482 S.-M. Pan, K.-S. Cheng / Pattern Recognition 40 (2007) 476–491

4. Experimental results and discussion

The typical experiment for evaluating the methodsused for codebook design is the grayscale image coding[4,12,13,25–27]. In coding an image, the image is com-pletely divided into immediate and non-overlapping subim-age blocks with 4 × 4 pixels. Each block is treated as a pat-tern vector with 16 dimensions. Here, the experiments areconducted on six different codebook sizes for seven images.The seven test images with pixel amplitude resolution of 8

Fig. 2. Test images (1–7).

bits are shown in Fig. 2. The number of the pattern vectorsin each image and the codebook size (denoted as CBS) arelisted in Table 1. The total number of test cases is 80, in-cluding the RSI for CBS=8–256, the RGI for CBS=8–32,and the PI for CBS = 8–32. The number of variables in asolution ranges from 128 (CBS = 8) to 4096 (CBS = 256).In all the test cases, the search for the optimal variables inthe solution is very challenging in a limited, short duration.

We compare the ETSA with six algorithms, including aparallel KMA (PKMA), the simulated annealing (SA)-based

Page 8: An evolution-based tabu search approach to codebook design

S.-M. Pan, K.-S. Cheng / Pattern Recognition 40 (2007) 476–491 483

Table 1Number of vectors (Nv) and codebook size

Image Nv Codebook size

1 4096 8, 16, 32, 64, 128, 2562 3750 8, 16, 32, 643 4800 8, 16, 32, 644 1024 8, 16, 32, 64, 128, 2565 1024 8, 16, 32, 64, 128, 2566 4096 8, 16, 32, 64, 128, 2567 4096 8, 16, 32, 64, 128, 256

algorithm [6], the GA-based algorithm [10], the TS-basedalgorithm [13] (TSA), and two algorithms that are differ-ent degenerative versions of the ETSA, i.e., DETSA1 andDETSA2. The DETSA1 is the ETSA with Psrp =0 (i.e., thesexual reproduction operation is excluded). The DETSA2 isthe ETSA with wtd = 0 (i.e., the tabu-distance measure isnot considered in the fitness function). We test the effect ofthe sexual reproduction operation on generating good solu-tions by comparing the performance of the DETSA1 withthat of the ETSA, whereas the DETSA2 is designed to ex-amine the benefit of considering the tabu-distance measurein the ETSA.

The KMA, SA, and TSA all start with one solution. Tomake a fair comparison, the KMA is extended to start with aset of initial solutions, called the PKMA. In the PKMA, eachinitial solution is independently performed by the KMA.The same set of initial solutions is also used to initialize theGA-based algorithm and the ETSA. In the SA and TSA,the initial solution is the best one in the same set of initialsolutions. In the SA-based algorithm, at each temperature thecurrent solution is perturbed until it is successively rejected20 times and then is improved by the KMA to acceleratethe convergence speed [7]. In the GA-based algorithm, thepopulation size is 10 and the survival rate is 0.5. In the TSA,the size of a tabu memory is 20, the number of trial solutionsgenerated from the current solution is 20, the probabilitythreshold is 0.005, and two KMA iterations are applied foreach trial solution. For each test case, each algorithm wasrun 10 times with different sets of initial solutions (i.e., eachalgorithm was run 800 times for all the test cases). In eachrun each algorithm was initialized by 10 trial solutions andoperated in 100 iterations (or generations).

Generally, the performance of algorithms used for thecodebook design problem is evaluated by the convergencespeed and the average value of the distortions obtained fromsome runs with different initial codebooks created by onetype of initialization method (e.g., RSI). In this experiment,in addition to the distortion averaged from 10 runs and theaverage CPU (Pentium III 800 MHz) time taken in one iter-ation (TOI, in seconds), the robustness of all the algorithmsto different initializations was compared by the standard de-viation (SD) of the distortions obtained from 10 runs. Asmaller SD value is an indication of better robustness. Inaddition to the RSI, each of the two initialization methods

RGI and PI, which have not been used in other studies, isalso used in 21 test cases. It is possible for the RGI to gen-erate defective solutions, in particular when the codebooksize is larger. Furthermore, defective solutions may be gen-erated in any algorithm during the iterations. The KMA can-not repair defective solutions, unless it introduces an extrarepairing procedure; however, the repair may occur throughthe iterations of a stochastic algorithm. Thus, in additionto providing another type of initialization, the RGI is alsoused to test the abilities of the stochastic algorithms to in-directly repair (or to avoid constructing) any defective solu-tions. The PI is used to test the abilities of these stochasticalgorithms to escape from a poor (i.e., larger distortion) re-gion to a good region in the search space. Results are listedin Tables 2–7 (38 test cases using the RSI), Tables 8–10 (21test cases using the RGI), and Tables 11–13 (21 test casesusing the PI).

4.1. Performance in cases using the RSI

We made three observations when comparing the resultsof the DETSA1, DETSA2, and ETSA (Tables 2–7). First,the tabu distance is an important factor in searching for bet-ter solutions because all the MSE values of the ETSA arebetter than those of the DETSA2. Second, the tabu distanceis also useful in improving the robustness performance, asthe SD values of the ETSA are better than those of theDETSA2 in 37 cases. Third, the sexual reproduction opera-tion can intensify the generation of better solutions becauseall the MSE values of the ETSA are better than those of theDETSA1. In these 38 RSI cases, the PKMA has the fastestiteration speed (i.e., the smallest TOI), whereas all its MSEvalues are the worst. In addition, in 27 cases its SD valuesare the worst and in 8 cases its SD values are ranked num-ber 6. Thus, in comparison with the other stochastic algo-rithms, the great dependence of the KMA on the choice ofinitial solution has not been significantly alleviated by theparallel operation. All the stochastic algorithms operate ina random manner with a predefined probability threshold.Thus, their TOI values are slightly different in each run forthe same number of pattern vectors with the same codebooksize. The TOI values of the DETSA1 are ranked number 2 inall cases, but its MSE values are larger in most cases (rankedno. 3 in 3 cases, no. 4 in 5 cases, no. 5 in 15 cases, and no.6 in 5 cases). The TOI values of the TSA are the longestin 37 cases, but its MSE values have not been significantlyimproved by the longer iteration time. Its MSE values areworse than those of the DETSA2 in 22 cases. Although theDETSA2 does not compute the tabu-distance measure foreach individual, its TOI values are worse than those of theETSA in 36 cases. In comparison with the ETSA, in theDETSA2 the individuals are more similar to the best indi-vidual visited (i.e., the population diversity in the DETSA2is smaller than that in the ETSA), thus the total number ofnormal individuals is larger so that the DETSA2 must take

Page 9: An evolution-based tabu search approach to codebook design

484 S.-M. Pan, K.-S. Cheng / Pattern Recognition 40 (2007) 476–491

Table 2Performance comparison of algorithms with CBS = 8 (RSI)

Algorithm PKMA GA SA TSA DETSA1 DETSA2 ETSA

Image 1 MSE 6288.8 6044.7 6039.3 6028.1 6066.6 6023.8 5989.9SD 24.02 22.39 12.20 13.23 11.68 6.52 2.62TOI 2.94 7.19 7.57 8.38 6.55 7.92 7.24

Image 2 MSE 8934.8 8516.6 8556.7 8501.2 8573.9 8491.7 8402.9SD 178.3 92.46 50.32 36.99 80.52 16.92 15.52TOI 2.50 6.54 6.85 7.58 5.84 7.90 6.51

Image 3 MSE 4917.0 4775.6 4777.3 4740.6 4774.6 4736.9 4711.4SD 40.18 39.21 4.97 8.36 16.76 4.47 3.70TOI 3.68 8.52 8.68 9.92 7.71 9.36 8.56

Image 4 MSE 13 571.0 12 993.9 13 056.7 13 005.0 13 046.1 12 995.7 12 856.8SD 125.12 24.13 9.64 45.28 35.34 54.29 42.85TOI 0.78 1.82 1.94 2.10 1.66 1.98 1.83

Image 5 MSE 7872.2 7458.1 7447.7 7460.3 7457.8 7448.4 7404.6SD 218.25 19.42 1.99 19.76 11.04 9.79 0.26TOI 0.79 1.83 1.93 2.12 1.62 2.01 1.81

Image 6 MSE 5218.6 5056.6 5130.3 5066.1 5126.7 5076.1 4924.9SD 99.80 4.71 82.05 13.09 36.92 30.16 16.93TOI 2.93 7.17 7.52 8.45 6.41 7.35 7.21

Image 7 MSE 5827.7 5323.8 5373.8 5323.9 5368.9 5331.3 5289.4SD 340.74 55.22 61.77 41.81 65.83 48.39 43.81TOI 2.93 7.12 7.45 8.32 6.44 7.84 7.19

Table 3Performance comparison of algorithms with CBS = 16 (RSI)

Algorithm PKMA GA SA TSA DETSA1 DETSA2 ETSA

Image 1 MSE 5303.2 5056.6 5028.2 5021.2 5025.2 5015.1 4958.0SD 26.43 33.98 4.29 10.30 3.65 6.35 4.49TOI 5.40 14.48 14.61 16.76 12.65 13.97 13.93

Image 2 MSE 7398.3 6758.9 6863.8 6778.2 6880.5 6785.9 6718.3SD 112.76 42.92 58.11 73.95 53.72 49.98 32.57TOI 4.88 13.26 13.79 15.29 11.53 12.72 12.65

Image 3 MSE 3603.4 3408.3 3402.7 3379.2 3404.0 3387.6 3332.9SD 28.00 34.20 5.27 24.21 22.18 28.86 5.88TOI 6.20 16.50 17.06 19.92 15.02 16.51 16.52

Image 4 MSE 11 400.7 10 796.4 10 697.7 10 733.3 10 808.9 10 769.9 10 587.7SD 117.2 73.54 21.45 51.86 31.38 39.63 10.06TOI 1.43 3.67 3.77 4.26 3.25 3.51 3.50

Image 5 MSE 6352.2 5891.5 5922.2 5936.9 5968.8 5882.5 5858.2SD 75.46 16.96 47.44 38.03 15.09 47.22 22.75TOI 1.44 3.41 3.83 4.25 3.23 3.93 3.68

Image 6 MSE 3752.7 3412.3 3447.9 3386.9 3456.7 3380.7 3322.7SD 44.00 32.89 16.55 11.79 17.15 27.42 25.27TOI 5.39 14.52 14.70 16.96 12.72 14.03 14.02

Image 7 MSE 4144.9 3860.6 3902.4 3823.5 3895.1 3838.5 3791.9SD 76.51 13.27 32.19 17.39 52.58 30.53 19.32TOI 5.40 14.54 14.62 16.77 12.47 13.84 13.88

more time to perform additional evolution operations. Therobustness of the ETSA is the best in 15 cases (the winingfrequency is the largest among all the algorithms). None ofits TOI values are the best, but all of its MSE values arethe best. In most cases, the TOI performances of the ETSAare comparable to the SA and GA, but in 4 cases (images6 and 7 with CBS = 128 and 256) the ETSA is superiorto them.

4.2. Performance in cases using the RGI

For all the 21 PI cases (Tables 8–10), the MSE values ofthe ETSA are the best in most cases (ranked no. 1 in 19cases; no. 2 in 2 cases) and only the ETSA does not constructany defective solution. The TSA, DETSA1, SA, GA, andDETSA2 fail to avoid constructing defective solution in 10,6, 6, 2, and 1 case(s), respectively. In particular, the TSA

Page 10: An evolution-based tabu search approach to codebook design

S.-M. Pan, K.-S. Cheng / Pattern Recognition 40 (2007) 476–491 485

Table 4Performance comparison of algorithms with CBS = 32 (RSI)

Algorithm PKMA GA SA TSA DETSA1 DETSA2 ETSA

Image 1 MSE 4526.7 4282.6 4263.9 4276.7 4271.4 4257.6 4211.7SD 27.15 9.53 4.72 12.18 4.09 9.41 7.23TOI 10.40 27.93 28.92 34.56 26.06 28.78 28.60

Image 2 MSE 5975.5 5428.2 5474.2 5476.1 5489.8 5436.2 5347.7SD 120.71 59.66 12.67 23.96 32.13 41.93 13.06TOI 9.40 25.91 26.09 31.18 24.91 25.88 25.21

Image 3 MSE 2718.5 2585.0 2534.8 2533.7 2584.1 2530.5 2507.6SD 31.56 36.45 14.02 12.42 15.58 29.79 10.32TOI 12.40 32.96 33.48 40.54 32.03 33.69 33.20

Image 4 MSE 9651.0 8975.9 8971.9 9013.2 9059.9 9036.1 8880.1SD 126.69 62.75 31.25 30.22 36.79 65.53 30.98TOI 2.87 7.09 7.20 8.72 6.09 7.33 7.15

Image 5 MSE 5124.4 4651.8 4727.7 4619.9 4736.9 4623.6 4566.1SD 77.74 44.31 35.30 49.80 38.09 61.29 48.93TOI 2.86 7.08 7.17 8.66 6.08 7.30 7.07

Image 6 MSE 2859.4 2566.3 2609.4 2515.4 2658.1 2503.9 2486.8SD 35.43 19.96 13.81 5.71 29.72 12.79 5.59TOI 10.41 27.33 28.85 34.50 26.07 30.12 27.08

Image 7 MSE 3227.7 3111.2 3099.3 2930.8 3100.2 2931.7 2896.9SD 51.52 42.26 29.90 9.29 29.39 24.86 20.56TOI 10.40 27.94 28.83 34.32 25.58 28.06 26.75

Table 5Performance comparison of algorithms with CBS = 64 (RSI)

Algorithm PKMA GA SA TSA DETSA1 DETSA2 ETSA

Image 1 MSE 3876.5 3673.6 3614.6 3626.3 3656.6 3642.4 3602.3SD 23.67 21.61 3.48 6.66 5.04 8.34 5.69TOI 20.20 55.67 57.70 71.44 53.80 56.39 55.84

Image 2 MSE 4786.3 4239.4 4260.8 4171.6 4291.3 4206.9 4155.4SD 80.92 41.44 37.37 23.95 41.41 24.02 13.72TOI 18.79 50.66 52.34 64.80 46.08 50.20 49.25

Image 3 MSE 2133.8 2002.9 1963.7 1967.7 1980.8 1958.8 1924.2SD 30.27 18.02 3.57 8.92 13.26 6.41 8.14TOI 23.78 66.08 68.15 84.88 62.08 65.21 64.09

Image 4 MSE 7931.0 7271.5 7255.2 7293.7 7284.4 7245.9 7130.6SD 79.09 63.49 34.9 21.82 25.86 29.92 26.48TOI 5.36 13.72 14.30 17.98 13.08 14.21 13.67

Image 5 MSE 4013.8 3290.4 3300.4 3217.3 3379.6 3239.6 3149.1SD 124.99 113.66 42.75 131.2 63.97 86.83 60.57TOI 5.32 13.07 13.96 17.90 13.10 13.75 13.08

Image 6 MSE 2179.9 1870.7 1884.1 1864.9 1876.4 1866.1 1841.9SD 26.00 31.95 5.69 6.62 5.15 12.41 10.94TOI 20.22 54.06 55.81 71.32 53.86 55.80 54.93

Image 7 MSE 2529.2 2087.9 2099.6 2074.3 2093.3 2036.8 2005.1SD 66.90 47.42 30.49 29.44 26.34 26.37 24.73TOI 20.20 54.39 55.98 71.50 51.26 55.06 54.35

completely fails in all images with CBS = 32. In terms ofrobustness, the ETSA is the best in 14 cases (the winingfrequency is the largest). In addition, the useful effects of thesexual reproduction operation and the tabu-distance measureare again demonstrated by comparing the performance ofthe DETSA1, DETSA2, and ETSA.

To evaluate whether the initialization method RGI is betterthan RSI in terms of the MSE value, we define the changed

rate �GS% in one case as (MSERGI − MSERSI )/MSERSI .We can then calculate the average �GS% from more cases.In the 7 cases with CBS = 8 (Tables 2, 8), the average�GS% values of all the algorithms are smaller than 1%.In addition, all the average �GS% values computed fromTables 3 and 9 (i.e., the 7 cases with CBS = 16) are smallerthan 0.5%, except the TSA (the average �GS% value =4.73% due to its final defective solutions). This means that

Page 11: An evolution-based tabu search approach to codebook design

486 S.-M. Pan, K.-S. Cheng / Pattern Recognition 40 (2007) 476–491

Table 6Performance comparison of algorithms with CBS = 128 (RSI)

Algorithm PKMA GA SA TSA DETSA1 DETSA2 ETSA

Image 1 MSE 3291.7 2853.2 2808.4 2810.0 2856.2 2836.4 2796.5SD 23.01 27.36 5.33 4.83 3.28 5.01 2.86TOI 40.11 111.88 115.46 151.80 98.45 119.40 111.96

Image 4 MSE 6309.5 5354.9 5288.9 5323.9 5220.2 5164.5 5130.4SD 78.04 82.71 34.80 45.25 35.60 16.70 13.73TOI 10.92 28.88 29.39 38.00 25.56 31.15 28.69

Image 5 MSE 2936.1 2260.9 2256.7 2155.3 2261.3 2186.9 2091.8SD 122.48 107.92 87.13 61.31 104.5 78.08 56.57TOI 10.90 27.68 28.57 37.56 23.59 28.43 25.83

Image 6 MSE 1679.9 1429.1 1439.5 1417.8 1416.9 1401.7 1382.7SD 25.55 13.18 17.01 10.10 15.03 17.26 9.71TOI 40.09 112.64 116.24 152.83 92.00 116.50 102.75

Image 7 MSE 2024.9 1599.2 1586.5 1508.5 1591.3 1527.6 1478.9SD 47.24 85.93 80.60 4.03 52.96 68.70 26.24TOI 40.10 110.39 115.08 151.86 70.49 94.85 85.34

Table 7Performance comparison of algorithms with CBS = 256 (RSI)

Algorithm PKMA GA SA TSA DETSA1 DETSA2 ETSA

Image 1 MSE 2701.4 2360.9 2307.7 2338.1 2350.8 2335.9 2225.1SD 17.88 13.35 24.88 7.39 15.41 7.71 5.73TOI 80.00 212.42 219.37 325.69 153.69 223.74 212.99

Image 4 MSE 4500.2 3600.9 3618.2 3560.3 3469.9 3410.2 3355.9SD 75.47 73.13 28.34 15.05 22.98 34.99 32.89TOI 20.04 53.43 57.31 75.26 47.30 58.78 54.19

Image 5 MSE 1917.8 1230.9 1249.6 1211.9 1254.7 1225.5 1172.4SD 138.79 95.64 84.89 14.75 95.33 96.16 66.79TOI 20.06 53.02 57.22 74.49 37.73 46.70 41.82

Image 6 MSE 1309.7 1041.4 989.2 959.3 1005.6 999.0 937.8SD 21.83 18.67 21.39 8.2 12.32 30.35 14.57TOI 79.96 210.87 220.31 325.64 139.46 184.09 155.94

Image 7 MSE 1637.2 1190.7 1193.4 1161.9 1195.4 1207.9 1106.8SD 25.30 151.27 30.39 11.85 40.00 142.27 33.96TOI 79.98 209.74 217.50 315.61 98.26 152.87 141.09

Table 8Performance comparison of algorithms with CBS = 8 (RGI)

Algorithm GA SA TSA DETSA1 DETSA2 ETSA

Image 1 MSE 6028.4 6028.9 6023.2 6058.6 6023.6 5988.2SD 4.48 7.14 3.83 4.05 7.49 2.33

Image 2 MSE 8476.6 8603.8 8510.3 8551.9 8498.4 8384.4SD 20.48 84.6 22.62 69.79 20.11 18.81

Image 3 MSE 4781.0 4774.8 4701.0 4785.9 4748.3 4729.4SD 17.81 15.63 157.81 15.56 21.27 19.69

Image 4 MSE 12 985.1 13 006.4 13 005.5 13 047.6 12 986.8 12 840.6SD 17.88 31.98 34.32 30.96 55.18 18.48

Image 5 MSE 7518.0 7575.8 7485.6 7577.4 7448.3 7406.8SD 138.52 149.22 71.84 140.28 10.29 2.43

Image 6 MSE 5060.8 5157.9 5067.6 5119.7 5082.4 4923.6SD 10.36 37.44 11.16 51.75 25.06 21.65

Image 7 MSE 5298.5 5606.7 5319.9 5479.5 5296.8 5267.7SD 2.05 62.74 44.20 137.5 4.12 1.37

Page 12: An evolution-based tabu search approach to codebook design

S.-M. Pan, K.-S. Cheng / Pattern Recognition 40 (2007) 476–491 487

Table 9Performance comparison of algorithms with CBS = 16 (RGI)

Algorithm GA SA TSA DETSA1 DETSA2 ETSA

Image 1 MSE 5046.5 5027.0 5033.7 5027.3 5022.8 4965.3SD 11.99 5.03 32.52 5.98 13.19 5.87

Image 2 MSE 6816.1 6857.8 6759.6 6901.3 6793.4 6751.5SD 58.05 65.04 50.165 31.05 33.79 30.82

Image 3 MSE 3399.5 3400.8 3625.5 (0.2a) 3390.3 3408.3 3344.3SD 18.66 21.60 475.18 16.02 40.89 10.41

Image 4 MSE 10 736.3 10 720.9 11 518.9 (0.2a) 10 858.8 10 792.0 10 617.3SD 55.59 24.62 1454.6 35.84 24.22 22.39

Image 5 MSE 5841.4 5917.2 6812.3 (0.2a) 6092.4 5896.1 5823.9SD 48.44 19.50 1815.2 62.76 60.38 38.97

Image 6 MSE 3415.1 3456.2 3403.9 3467.2 3429.7 3345.0SD 15.00 12.33 30.81 17.04 57.86 13.25

Image 7 MSE 3867.7 3911.3 3948.1 3886.8 3861.2 3843.8SD 29.21 50.78 25.82 7.91 43.30 39.97

aThe defective rate, that is, the ratio of the number of final defective solutions to the number of trial runs.

Table 10Performance comparison of algorithms with CBS = 32 (RGI)

Algorithm GA SA TSA DETSA1 DETSA2 ETSA

Image 1 MSE 4525.5 (0.2a) 4266.5 4927.5 (0.6a) 4261.7 4266.6 4211.9SD 478.9 5.16 524.55 5.24 6.4 3.69

Image 2 MSE 5457.1 25 056.2 (0.2a) 6372.0 (0.4a) 25 063.8 (0.2a) 5546.7 5496.7SD 69.81 40 952.90 1066.13 40 948.90 41.55 36.23

Image 3 MSE 9743.0 (0.2a) 50 805.8 (1.0a) 3279.9 (0.8a) 51 892.9 (1.0a) 2584.6 2504.2SD 15 066.24 9541.55 378.80 9543.66 52.42 11.78

Image 4 MSE 9024.5 39 006.6 (0.6a) 11 484.6 (0.8a) 39 429.9 (0.6a) 9087.5 8849.8SD 124.50 26 121.08 1195.37 26 100.10 76.45 36.66

Image 5 MSE 29 205.7 (0.6a) 55 419.7 (1.0a) 6097.2(0.8a) 55 712.9 (1.0a) 4625.3 4503.4SD 21 250.5 7103.5 817.82 7193.7 80.36 66.98

Image 6 MSE 2623.7 51 576.4 (1.0a) 2697.9 (0.2a) 52 685.6 (1.0a) 12 769.2 (0.2a) 2516.9SD 42.96 8194.6 321.61 8206.6 22 793.8 13.81

Image 7 MSE 3135.9 55 380.3 (0.8a) 3797.9 (0.6a) 55 372.6 (0.8a) 3001.9 2938.9SD 39.91 26 496.70 698.08 26 512.27 39.61 39.17

aThe defective rate, that is, the ratio of the number of final defective solutions to the number of trial runs.

Table 11Performance comparison of algorithms with CBS = 8 (PI)

Algorithm PKMA GA SA TSA DETSA1 DETSA2 ETSA

Image 1 MSE 6333.0 6311.1 6290.8 6287.7 6287.5 6316.9 6162.2SD 14.25 11.53 8.28 14.76 12.58 14.80 10.46

Image 2 MSE 9273.2 9072.9 9189.3 8873.4 9215.6 9126.6 8710.9SD 193.9 193.96 123.01 36.14 94.89 183.32 22.04

Image 3 MSE 4996.8 4927.7 4917.2 4933.0 4921.0 4928.8 4791.7SD 39.04 10.07 15.03 26.31 9.07 11.27 7.10

Image 4 MSE 13 800.5 13 506.7 13 602.5 13 609.4 13 564.1 13 629.4 13 246.4SD 150.28 2.61 25.94 56.79 19.55 72.43 18.60

Image 5 MSE 8853.9 7754.2 7760.4 7755.1 8022.2 8359.9 7641.2SD 51.83 0.56 9.58 1.08 344.23 483.60 3.94

Image 6 MSE 5323.5 5141.4 5185.2 5154.2 5233.9 5165.9 5005.7SD 128.2 30.33 21.35 24.37 67.39 0.41 4.86

Image 7 MSE 6482.4 5721.9 5791.3 5566.6 6148.9 6057.4 5477.6SD 105.61 168.95 138.28 61.56 120.00 320.46 87.80

Page 13: An evolution-based tabu search approach to codebook design

488 S.-M. Pan, K.-S. Cheng / Pattern Recognition 40 (2007) 476–491

Table 12Performance comparison of algorithms with CBS = 16 (PI)

Algorithm PKMA GA SA TSA DETSA1 DETSA2 ETSA

Image 1 MSE 5307.5 5287.8 5289.0 5282.4 5286.8 5281.5 5159.6SD 43.55 7.35 8.20 14.31 2.23 4.47 2.29

Image 2 MSE 7601.1 7201.6 7234.0 7212.3 7214.9 7297.3 7063.1SD 61.67 17.81 29.47 46.16 59.21 78.94 29.73

Image 3 MSE 3632.9 3550.2 3562.0 3587.1 3567.5 3570.8 3482.1SD 17.74 14.73 12.64 37.80 10.87 34.31 7.74

Image 4 MSE 11 657.6 11 352.3 11 253.8 11 311.4 11 241.2 11 453.9 11 044.0SD 58.97 96.82 27.02 29.33 29.47 30.52 16.79

Image 5 MSE 6437.8 6146.9 6202.9 6196.9 6205.9 6187.9 6027.6SD 39.63 8.06 40.77 32.67 36.35 42.43 10.75

Image 6 MSE 3788.0 3728.7 3709.1 3711.8 3714.4 3749.5 3665.4SD 29.58 12.42 6.36 29.16 21.61 11.57 10.54

Image 7 MSE 4332.7 4060.3 4092.3 4104.5 4134.9 4075.2 3964.8SD 2.04 19.54 41.84 30.50 31.85 22.95 14.67

Table 13Performance comparison of algorithms with CBS = 32 (PI)

Algorithm PKMA GA SA TSA DETSA1 DETSA2 ETSA

Image 1 MSE 4571.3 4520.3 4492.7 4494.7 4479.8 4551.4 4397.7SD 17.45 12.99 4.77 20.26 5.91 9.61 4.50

Image 2 MSE 6412.3 6059.9 6059.8 5756.6 6071.6 6059.7 5704.9SD 75.11 39.01 85.90 40.99 79.33 56.00 53.31

Image 3 MSE 2747.3 2705.1 2652.9 2654.2 2657.9 2698.5 2576.9SD 14.98 32.33 12.90 4.72 9.52 22.22 2.84

Image 4 MSE 9947.9 9587.1 9419.1 9413.7 9452.5 9730.5 9244.0SD 59.69 77.56 47.22 29.46 78.55 64.94 64.80

Image 5 MSE 5302.1 4955.0 5026.4 4970.5 4930.5 5020.5 4888.7SD 18.44 43.17 57.55 51.56 51.60 52.45 43.07

Image 6 MSE 2923.9 2830.4 2801.9 2793.2 2794.5 2877.5 2724.6SD 8.59 31.82 7.34 8.76 11.21 34.60 8.27

Image 7 MSE 3285.2 3139.3 3114.1 3091.2 3144.4 3188.5 2967.9SD 30.56 22.25 20.46 12.18 18.46 27.41 16.37

for most algorithms the RGI does not have a significanteffect on the distortion performance in the cases with smallcodebook sizes.

4.3. Performance in cases using the PI

In each of the 21 PI test cases (Tables 11–13), the MSEvalue of the PKMA is the worst. In addition, compared withthe MSE values in Tables 2–4, it is clear that the PKMAusing the PI is more frequently trapped in poor local min-ima. For the ETSA, its robustness is the best in 7 cases(the wining frequency is the largest) and its MSE valuesare the best in all cases. Compared with the MSE valuesin Tables 2–4 (using RSI), we see that the PI weakens theabilities of all the stochastic algorithms to construct goodcodebooks. For all the PI cases, their average �PS% val-ues ([MSEPI − MSERSI ]/MSERSI ) are 4.41% (ETSA),5.26% (SA), 5.39% (DETSA1), 5.53% (TSA), 5.57% (GA),and 7.57% (DETSA2). The MSE values of the ETSA areless affected by the PI. To evaluate the abilities of all the

stochastic algorithms to escape from an initial poor regionto a good region, we define the improved rate in one caseas (MSEPKMA − MSEAlgorithm)/MSEPKMA. For all thePI cases, their average improved rates are 6.75% (ETSA),4.55% (TSA), 3.97% (SA), 3.92% (GA), 3.48% (DETSA1),and 2.76% (DETSA2); that is, the ETSA is the best at escap-ing from an initial poor region to a good region. In addition,both the sexual reproduction operation and the tabu-distancemeasure provide the same useful effects as in the RSI andRGI cases. In terms of the distortion and the robustness, inmost cases the DETSA2 is worse than the DETSA1. Becausethe DETSA2 does not consider the tabu-distance measure,it is difficult to enable the survival of individuals that havelonger tabu distances (i.e., they are far from the initial poorregion) to compensate their slightly larger distortion values.

4.4. Convergence behavior in cases using the RSI

To illustrate the convergence behavior of all the algo-rithms, Figs. 3–8 show the average MSE value versus the

Page 14: An evolution-based tabu search approach to codebook design

S.-M. Pan, K.-S. Cheng / Pattern Recognition 40 (2007) 476–491 489

20 40 60 80 100

8400

8600

8800

9000

9200

9400

Iteration

Ave

rage

MSE

PKMADETSA1SAGATSADETSA2ETSA

Fig. 3. MSE versus iteration for image 2 with CBS = 8.

Iteration20 40 60 80 100

3300

3350

3400

3450

3500

3550

3600

3650

Ave

rage

MSE

PKMAGADETSA1SADETSA2TSAETSA

Fig. 4. MSE versus iteration for image 3 with CBS = 16.

20 40 60 80 100

4600

4700

4800

4900

5000

5100

5200

5300

Iteration

Ave

rage

MSE

PKMADETSA1SAGADETSA2TSAETSA

Fig. 5. MSE versus iteration for image 5 with CBS = 32.

Iteration20 40 60 80 100

1850

1900

1950

2000

2050

2100

2150

2200

2250

Ave

rage

MSE PKMA

SADETSA1GADETSA2TSAETSA

Fig. 6. MSE versus iteration for image 6 with CBS = 64.

20 40 60 80 100

2800

2900

3000

3100

3200

3300

Iteration

Ave

rage

MSE

PKMADETSA1GADETSA2TSASAETSA

Fig. 7. MSE versus iteration for image 1 with CBS = 128.

20 40 60 80 1001100

1200

1300

1400

1500

1600

Iteration

Ave

rage

MSE

PKMADETSA2DETSA1

SAGATSAETSA

Fig. 8. MSE versus iteration for image 7 with CBS = 256.

Page 15: An evolution-based tabu search approach to codebook design

490 S.-M. Pan, K.-S. Cheng / Pattern Recognition 40 (2007) 476–491

number of iterations for the six RSI cases (CBS = 8, 16, 32,64, 128, and 256). In each of these figures, the black linerepresents the convergence curve of the ETSA. Althoughonly six RSI convergence curves are shown here, the con-vergence behaviors of the ETSA in the other 32 cases aresimilar. Several observations can be made from Figs. 3–8.First, the PKMA is always trapped in poor solutions. Fromthe first iteration to the 10th iteration at least, the TSA of-ten rapidly decreases the MSE values; however, it cannotsignificantly reduce the MSE values in the later iterations.During all the iterations, the SA never shows the best per-formance. Although, in some cases, the GA shows the bestperformance within the early iterative period, it also cannotimprove the MSE values in the later iterations. With the helpof the sexual reproduction operation, the ETSA is usuallybetter than the DETSA1 during the iterations. In comparisonwith the DETSA2, the tabu-distance factor of the ETSA im-proves the search performance from the early (or middle, atmost) stage. Finally, the ETSA is not usually the best in theearly iterative period, but ultimately it always becomes thebest. This remarkable behavior is mainly due to the ETSA’sability to allow survival for the trial solution whose tabudistance is long enough to compensate for its slightly largerdistortion.

5. Conclusion

Inspired by TS and evolutionary algorithms, we devel-oped the ETSA for the problem of codebook design. Theevolutionary mechanism is designed to be adaptive and thecompetition population is generated from the cooperation oftwo types of reproduction operations run in parallel. Insteadof a set of tabu points recorded in a tabu memory, only onetabu point is adaptively recorded. Both the distortion andtabu-distance measures are considered as important factorsin the fitness evaluation of each trial solution. This new fit-ness function implements the roles of the tabu restrictionsand the aspiration criteria in the traditional TS. Hence, it isnot necessary to determine the size of a tabu memory and tospecifically define a set of tabu restrictions and a set of as-piration criteria. Using the problem of coding grayscale im-ages, we demonstrate the useful effects of the tabu-distancemeasure and the sexual reproduction operation on the searchperformance of the ETSA, and we compared the ETSA withsome existing algorithms. Based on the experimental results,the ETSA is the best algorithm in terms of the distortionand robustness measures. Thus, the ETSA provides a moreeffective method for designing better codebooks in VQ.

Acknowledgements

Part of this research is supported by Excellent Project,Ministry of Education, Republic of China under Grant no.89-B-FA08-1-4.

References

[1] P.C. Cosman, K.L. Oehler, E.A. Riskin, R.M. Gray, Using vectorquantization for image processing, Proc. IEEE 81 (9) (1993)1326–1341.

[2] A. Gersho, R.M. Gray, Vector Quantization and Signal Compression,Kluwer, Boston, MA, 1992.

[3] J.-P. Braquelarire, L. Brun, Comparison and optimization of methodsof color image quantization, IEEE Trans. Image Process. 6 (7) (1997)1048–1052.

[4] D. Lee, S. Back, K. Sung, Modified K-means algorithm forvector quantizer design, IEEE Signal Process. Lett. 4 (1) (1997)2–4.

[5] A.A. El Gamal, L.A. Hemachandra, I. Shperling, V.K. Wei, Usingsimulated annealing to design good codes, IEEE Trans. Inf. TheoryIT-33 (1) (1987) 116–123.

[6] A. Enis Cetin, V. Weerackody, Design vector quantizers usingsimulated annealing, IEEE Trans. Circuit Syst. 35 (12) (1988)1550.

[7] K. Zeger, J. Vaisey, A. Gersho, Globally optimal vector quantizerdesign by stochastic relaxation, IEEE Trans. Signal Process. 40 (2)(1992) 310–322.

[8] J. Jiang, D. Butle, A genetic algorithm design for vector quantization,in: Proceedings of First International Conference on GeneticAlgorithm in Engineering Systems: Innovations and Applications,Sheffield, UK, 12–14 September 1995, pp. 331–336.

[9] V. Delport, M. Koschorreck, Genetic algorithm for codebook designin vector quantization, Electron. Lett. 31 (2) (1995) 84–85.

[10] J.S. Pan, F.R. McInnes, M.A. Jack, VQ codebook design usinggenetic algorithms, Electron. Lett. 31 (17) (1995) 1418–1419.

[11] X. Zheng, B.A. Julstrom, W. Cheng, Design of vector quantizationcodebooks using a genetic algorithm, in: IEEE InternationalConference on Evolutionary Computation, Indianapolis, IN, USA,13–16 April 1997, pp. 525–529.

[12] P. Fränti, Genetic algorithm with deterministic crossover for vectorquantization, Pattern Recogn. Lett. 21 (2000) 61–68.

[13] P. Fränti, J. Kivijärvi, O. Nevalainen, Tabu search algorithm forcodebook generation in vector quantization, Pattern Recognition 31(8) (1998) 1139–1148.

[14] F. Glover, M. Laguna, Tabu Search, Kluwer, Boston, MA, 1997.

[15] K.S. Al-Sultan, A tabu search approach to the clustering problem,Pattern Recognition 28 (9) (1995) 1443–1451.

[16] S. Tsubakitani, J.R. Evans, Optimizing tabu list size for the travelingsalesman problem, Comput. Oper. Res. 25 (2) (1998) 91–97.

[17] S. Salhi, Define tabu list size and aspiration criterion within tabusearch methods, Comput. Oper. Res. 29 (2002) 67–86.

[18] N. Hu, Tabu search method with random moves for globally optimaldesign, Int. J. Numer. Methods Eng. 35 (1992) 1055–1070.

[19] R. Chelouah, P. Siarry, Tabu search applied to global optimization,Eur. J. Oper. Res. 123 (2000) 256–270.

[20] J.M. Machado, Y. Shiyou, S.L. Ho, N. Peihong, A common tabusearch algorithm for the global optimization of engineering problems,Comput. Methods Appl. Mech. Eng. 190 (2001) 3501–3510.

[21] H.S. Kim, K.J. Mun, J.H. Park, G.H. Hwang, Application of real-type tabu search in function optimization problems, in: Proceedingsof IEEE International Symposium on Industrial Electronics, vol. 1,Pusan, South Korea, 12–16 June 2001, pp. 613–618.

[22] T. Bäck, Evolutionary Algorithms in Theory and Practice, OxfordUniversity Press, New York, 1995.

[23] Z. Michalewicz, Genetic Algorithms + Data Structures = EvolutionPrograms, Springer, New York, 1996.

[24] T. Bäck, U. Hammel, H. Schwefel, Evolutionary algorithms:Comments on the history and current state, IEEE Trans. Evol.Comput. 1 (1) (1997) 3–17.

Page 16: An evolution-based tabu search approach to codebook design

S.-M. Pan, K.-S. Cheng / Pattern Recognition 40 (2007) 476–491 491

[25] K.K. Paliwal, V. Ramasubramanian, Comments on “Modified K-means algorithm for vector quantizer design”, IEEE Trans. ImageProcess. 9 (3) (2000) 1964–1967.

[26] N.B. Karayiannis, P.I. Pai, Fuzzy vector quantization algorithms andtheir application in image compression, IEEE Trans. Image Process.4 (9) (1995) 1193–1201.

[27] Z.M. Lu, J.S. Pan, S.H. Sun, A tabu search based fuzzy c-meansalgorithm for vector quantization codebook design, in: Proceedings ofFifth International Conference on Signal Processing, vol. 2, Beijing,China, 21–25 August 2000, pp. 1049–1053.

About the Author—SHIH MING PAN was born in Pingtung, Taiwan, November 1962. He received a B.S. degree in 1988 from the Department ofElectrical Engineering, National Taiwan Institute of Technology, Taiwan, and a M.S. degree in 1990 from the Institute of Biomedical Engineering, NationalCheng Kung University, Taiwan. Currently he is a Ph.D. candidate at the Institute of Biomedical Engineering, National Cheng Kung University, Taiwan,and is a lecturer in the Department of Electrical Engineering, Kao Yuan University, Taiwan. His research interests are in evolutionary computation, patternrecognition, and medical image analysis.

About the Author—KUO SHENG CHENG was born in Taipei, Taiwan, on February 4, 1958. He received his B.S., M.S., and Ph.D. degrees fromthe Department of Electrical Engineering at National Cheng Kung University, in 1980, 1982, and 1990, respectively. In 1988, he also received a M.S.degree in Biomedical Engineering from Rensselaer Polytechnic Institute, Troy, NY, USA. He is a Professor with the Institute of Biomedical Engineering,National Cheng Kung University, Tainan, Taiwan. His research interests include medical imaging, bioimpedance, and medical image analysis.