driving tabu search with case-based reasoning

13
ELSEVIER European Journal of Operational Research 103 (1997) 326-338 EUROPEAN JOURNAL OF OPERATIONAL RESEARCH Driving Tabu Search with case-based reasoning Stephan Grolimund *, Jean-Gabriel Ganascia Universit£ Pierre et Marie Curie, LIP6-CNRS, P.O. Box 169, F-75252 Paris Cedex 5, France Abstract When it is important to solve hard optimisation problems efficiently, e.g. as in Decision Support Systems, meta-heuristics like Tabu Search often propose valuable alternatives in case exact optimisation is not available. Further, such techniques are in general flexible enough to adapt problem modelling according to end user feed-back. However, met,a-heuristics need to be tailored to each particular modelling of the optimisation problem for that they really produce high-quality solutions. This non-trivial task is most commonly left to the competent user. In this paper, we investigate the use of an AI technique for configuring a basic meta-heuristic without any user interaction. In this aim, we introduce a Case-Based Reasoning approach to automatically perform intensification-like control of operator selection in Tabu Search. Cases capture search experience concerning operator selection related to the particular state description. They are reused to improve the selection of operators that apply in similar states. The proposed method is domain independent; it integrates a first-order representation language for problem modelling. Experimental evaluation on uncapacitated and capacitated facility location benchmark problems is provided. © 1997 Published by Elsevier Science B.V. Keywords: Tabu search; Artificial intelligence; Case-based reasoning; Facility location 1. Introduction The ability of efficiently solving hard optimisa- tion problems is crucial for many Decision Support Systems (DSS). However, in problem domains where exact optimisation is either not available or would be computationally too expensive, one often has to re- cur to iterative improvement techniques such as sim- ulated annealing, genetic algorithms or tabu search [39]. These three meta-heuristics enlarge the basic local search scheme by adding improved operator selection techniques, enabling adaptive guidance of search space exploration in order to cope with the local minima problem. Such search control is influ- • Corresponding author. E-mail: [email protected] 0377-2217/97/S17.00 (c) 1997 Published by Elsevier Science B.V. All PII $0377-2217(97)00123-9 enced by artificial intelligence work on search, espe- cially what concerns tabu search [18]. The tabu search concepts of tabu-list, intensification and di- versification, respectively, are assimilated with terms like short-, mid- and long-term memory for their general illustration [15]. Meta-heuristics have two main advantages. First, they are often able to produce high quality solutions (optimal or near-optimal ones) in a short amount of time. And second, it is possible to model a wide range of different optimisation problems in a way that such heuristics apply. This point is important for Decision Support Systems, as it enables such heuris- tics to adapt to changes in problem formulation due to end user feedback. However, meta-heuristics have to be tailored each time a new optimisation problem at hand in order to rights reserved.

Upload: stephan-grolimund

Post on 04-Jul-2016

217 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Driving Tabu Search with case-based reasoning

ELSEVIER European Journal of Operational Research 103 (1997) 326-338

EUROPEAN JOURNAL

OF OPERATIONAL RESEARCH

Driving Tabu Search with case-based reasoning

Stephan Grolimund *, Jean-Gabriel Ganascia Universit£ Pierre et Marie Curie, LIP6-CNRS, P.O. Box 169, F-75252 Paris Cedex 5, France

Abstract

When it is important to solve hard optimisation problems efficiently, e.g. as in Decision Support Systems, meta-heuristics like Tabu Search often propose valuable alternatives in case exact optimisation is not available. Further, such techniques are in general flexible enough to adapt problem modelling according to end user feed-back. However, met,a-heuristics need to be tailored to each particular modelling of the optimisation problem for that they really produce high-quality solutions. This non-trivial task is most commonly left to the competent user. In this paper, we investigate the use of an AI technique for configuring a basic meta-heuristic without any user interaction. In this aim, we introduce a Case-Based Reasoning approach to automatically perform intensification-like control of operator selection in Tabu Search. Cases capture search experience concerning operator selection related to the particular state description. They are reused to improve the selection of operators that apply in similar states. The proposed method is domain independent; it integrates a first-order representation language for problem modelling. Experimental evaluation on uncapacitated and capacitated facility location benchmark problems is provided. © 1997 Published by Elsevier Science B.V.

Keywords: Tabu search; Artificial intelligence; Case-based reasoning; Facility location

1. Introduction

The ability of efficiently solving hard optimisa- tion problems is crucial for many Decision Support Systems (DSS). However, in problem domains where exact optimisation is either not available or would be computationally too expensive, one often has to re- cur to iterative improvement techniques such as sim- ulated annealing, genetic algorithms or tabu search [39]. These three meta-heuristics enlarge the basic local search scheme by adding improved operator selection techniques, enabling adaptive guidance of search space exploration in order to cope with the local minima problem. Such search control is influ-

• Corresponding author. E-mail: [email protected]

0377-2217/97/S17.00 (c) 1997 Published by Elsevier Science B.V. All PII $0377-2217(97)00123-9

enced by artificial intelligence work on search, espe- cially what concerns tabu search [18]. The tabu search concepts of tabu-list, intensification and di- versification, respectively, are assimilated with terms like short-, mid- and long-term memory for their general illustration [15].

Meta-heuristics have two main advantages. First, they are often able to produce high quality solutions (optimal or near-optimal ones) in a short amount of time. And second, it is possible to model a wide range of different optimisation problems in a way that such heuristics apply. This point is important for Decision Support Systems, as it enables such heuris- tics to adapt to changes in problem formulation due to end user feedback.

However, meta-heuristics have to be tailored each time a new optimisation problem at hand in order to

rights reserved.

Page 2: Driving Tabu Search with case-based reasoning

S. Grolirnund, J.-G. Ganascia / European Journal of Operational Research 103 (1997) 326-338 327

produce high quality solutions. Concerning tabu search, this adaptation involves the specification of search space exploration heuristics by means of for- mulating the three concepts mentioned above. In its original definition very general, this kind of search control is responsible for the success of tabu search. While today, most of this crucial adaptation process is done by the competent user, research focuses on identifying characteristics that successful tabu search designs have in common [17].

In this paper, we explore the use of an artificial intelligence technique, namely case-based reasoning, for automatically designing intensification-like search control in Tabu Search in a problem independent way. Its aim is to provide a general means for discharging the user of configuring Tabu Search based optirnisation each time the optimisation prob- lem model changes. The approach either performs stand-alone intensification on a basic tabu search design without any user involvement, or is comple- mentary to user-refined tabu search implementations. Fig. 1 illustrates this approach from a DSS point of view. A DSS that frequently has to solve optimisa- tion problems, passes the optimisation model to the Tabu Search optimiser for optimisation. The opti- miser uses a Case-Based Reasoning technique to produce reliably good solutions on various optimisa- tion problems in a way that remains transparent for the user.

The paper is structured as follows. Sections 2 and 3 concisely present tabu search and case-based rea- soning, Section 4 introduces the motivation for com- bining tabu search and case-based reasoning, Section 5 introduces ALOIS, the system in which the pre- sented work is implemented, and Section 6 gives an

Case-Based Reasoner

ModelOp:irmsa:i°n

Decision • - Support System

Solutioa

~limisation = pcficnce Intensification-like

Search Control

~1 Tabu Search Optimiser

[

Fig. 1. Integrating case-based reasoning into tabu search for improving optimisation for a DSS.

experimental evaluation on archetypal facility loca- tion problems.

2. Tabu search

Local search heuristics explore a search space by stepwise moving from one solution state S to another one, applying operators o, in order to improve the objective function f (S) iteratively. Operator selec- tion is guided by the operator evaluation function p(o), reflecting the change of f ( - ) before and after applying the operator, i.e. p ( o ) = f ( S ) - f ( o ( S ) ) . The tabu search metaheuristic [15,16] adds a three- level control structure to this deepest descent opera- tor selection criteria. The aim is to bias greedy operator selection with additional parameters in or- der to improve search space exploration, and thus identifying better solutions earlier. These parameters are themselves modified according to an analysis of past search on the same problem instance. In this sense, tabu search introduces a form of learning from experience that captures the 'how to optimise a particular problem instance' once optimisation is in progress. In addition, it provides means to reuse this experience to improve future search.

The main problem of basic local search is that the search space exploration often gets trapped in solu- tion states to which no improving operator apply. These states, called local minima, are often of poor quality. The base level control tactic of tabu search copes with this local minima problem. During search, each visited solution S is put in a tabu list L, which is managed by a first-in first-out strategy. As long as S ~ L , operators that would lead back to S are declared tabu and, for this reason, are forbidden to apply. The idea is to force the search to move away from S and, in case S is a local minimum, to push it as far away as necessary for that it will not get attracted by S again. Tabu lists may either be of fixed size or, often a better alternative, of variable size [3,45].

Tabu search has two higher level control strate- gies, intensification and diversification. Intensifica- tion aims to focus the search on promising areas of the search space, while diversification directs the search to yet unexplored, but promising, regions. However, in the general framework, 'promising' and

Page 3: Driving Tabu Search with case-based reasoning

328 S. Grolimund, J.-G. Ganascia / European Journal of Operational Research 103 (1997) 326-338

'unexplored' are only intuitively defined. Each tabu search implementation requires to design them origi- nally, a task which is non-trivial. For example, for solving the quadratic assignment problem, a first implementation [43] performs diversification by favouring operators that have been used rarely, while another design [45] advocates to prefer operators leading to new solution configurations.

Intensification and diversification are learning techniques. From raw search episodes, they extract and reuse selective, relevant and concise experience. The employed techniques essentially have fre- quency-based nature [15,48]. They typically evaluate the frequency with which solutions have certain at- tributes, or the frequencies with which these at- tributes change [17]. Intensification thus may favour solutions containing attributes that previously oc- curred in high quality solutions, while diversification may force the search to change attributes that were invariant for a too long time.

Nevertheless, no general formal model is yet available for constructing effective search control strategies. Research focuses on establishing concep- tual design guidelines to perform reliably good inten- sification or diversification [17]. The advice for using tabu lists of about size 7 [25,45] was an early result in this direction. More recently, reactive tabu search [3] illustrated that sophisticated tabu list size man- agement may improve solution quality in a variety of independent problem domains. Furthermore, target analysis [18,29] is a general methodology for com- posing a master decision rule for operator selection, valid over a particular problem class, by analysing several high-quality solutions. Other work consists in recognising and analysing patterns that good solu- tions have in common [48].

3. Case-based reasoning

Case-Based Rcasoning (CBR) [27,47], a recently emergcd discipline in artificial intelligence, solves problems primarily by reusing experiences, opposed to expert system technology which uses model-based reasoning. In particular it aims to solve new prob- lems by (re-)applying old solutions which already solved similar problems before. Cases hold these problem-solution couples. They are stored in a case

memory as an extensional representation of available experience.

For domains where no, or only a weak, formal model is available, relying on previous experience may be a valuable way, if it is not the only one, for producing solutions of satisfying quality for newly arriving problems. The adaptation process that may be needed to make old solutions fit new problems may itself be well understood and can be given to a system. This supposes for the problem to be solved that, in fact, case adaptation is simpler that solution generation from scratch. An example of a typical domain for which Case-Based reasoning suits is lawcourt sentencing in Common Law countries like the USA or the United Kingdom. There, court deci- sions are most often motivated by former, relevant judgements, using the doctrine of precedent. While it would be almost impossible to formalise the knowl- edge involved in deriving new decisions from scratch, adapting precedent ones is wide practise. CBR sys- tems like HYPO [2] have shown competence in interpreting and adapting old cases to new problems in this domain.

The major interest of Case-Based Reasoning thus relies in its ability to solve problems in domains where formal descriptions are either difficult to ac- quire, or arc not available at all. Basically, the CBR cycle is composed of four steps (Table 1). For a new problem to be solved, a case describing a similar problem is retrieved from case memory (1). The solution contained in the retrieved case is reused to solve the problem (2), adapting it if necessary (3). Once the problem is solved, the newly produced solution, together with the initial problem descrip- tion, can be stored in case memory (4), allowing the system to enrich its experience.

Case-Based Reasoning has main applications in AI plan generation [22,23], classification [36], diag- nosis [28] and design [26], while some approaches for solving optimisation problems have been investi- gated too. For example, EASe [40], demonstrated in the domain of logic synthesis, learns on simple problem instances how it can improve them. This knowledge, in form of cases, is later reused during the optimisation of more complex problems. The system CABINS [35] is designed for the schedule repair problem in job shop scheduling. It maintains the case library as an extensional definition of the

Page 4: Driving Tabu Search with case-based reasoning

S. Grolimund, J.-G. Ganascia / European Journal of Operational Research 103 (1997) 326-338 329

Table 1 The case-based reasoning cycle [1]

1 Retrieve the most s imilar case, 2 Reuse the case to at tempt to solve the problem,

3 Revise the proposed solution if necessary, and 4 Retain the new solution as a part of a new case.

optimisation criteria, providing the basis for selecting or refuting schedule repair actions. Cases can be acquired in interaction with the user, revealing thus her preferences concerning the repairing of particular schedule deficiencies. While both systems are per- forming informed, but nevertheless greedy local search, they do however not cope with the local minima problem. Further, both systems have been proposed for one single problem domain, applying them to other optimisation problems has not been considered.

4. Learning control knowledge for optimisation

Case-based reasoning has shown to be well adapted to problem domains where domain knowl- edge is extensively represented by experience. Its ability to capture and reuse this experience is not much hindered by the absence of a consistent formal model for the problem. In this sense, it fits a priori well to the intensification task in tabu search, which itself is primarily experience-based and for which no formal model is known. The question raised now concerns the way these two techniques can be com- bined in a way that leads to solution quality im- provement and that is independent of any particular optimisation problem.

Intensification is an operator selection strategy, and as such, its aim is to furnish improved search control. It may thus be considered in the context of AI plan generation, where a problem solver has to produce a sequence of operator applications that leads from an initial state to a goal state, and where control knowledge is integrated to guide search space exploration [32]. Machine Learning has largely in- vestigated learning of search control knowledge for planning in a domain independent way. Major exam- ples of such techniques are Explanation-Based

Learning [30,33], where new operators, that resume and generalise observed planing activity, are ac- quired; Derivational Analogy [46], where control decisions, taken during a planning episode, are anno- tated, memorised and replayed using a CBR tech- nique; and Case-Based Planning [22,23], where cases represent (fragments of) anterior plans. All these methods focus on improving planning speed as well as plan quality with regard to previous planning activity.

However, optimisation differs from plan genera- tion in nature: First, AI-planning focuses on the construction of plans reporting how to achieve feasi- ble solutions. In local search based optimisation, solution states are usually easy to construct, the task consists in finding the good ones. AS consequence, memorising receipts for constructing solutions effi- ciently, e.g. generalised operator chainings or control decisions, is not necessary an interesting choice [20,48]. Second, there is no evidence that good solutions for one problem instance share any charac- teristics with good solutions for another problem instance [48], unless the two problem instances be- long to the same problem class [29]. In conclusion, the above control knowledge learning techniques do not directly apply to intensification.

Nevertheless, the basic search space exploration is the same within local search and plan generation, as both explore a state space by iteratively applying operators to move from one state to the next. And both use control knowledge in order to improve search efficiency. In plan generation, control knowl- edge links operator selection to the descriptions of both the goal state and the state the search is in [33]. The employed learning techniques further are do- main-independent [30,33]. Opposed to intensification in Tabu Search, this type of control knowledge does not reference frequency-based criteria at all. But in intensification, too, it might be attractive to couple operator selection to the search state description, as the longer term interest of an applied operator clearly depends on a larger part of the state the operator was applied in [17]. We thus adopt this type of search control knowledge for our intensification process .in tabu search, and deliberately abandon frequency- based criteria for operator selection. As a side effect, our method becomes complementary to most actual tabu search implementations.

Page 5: Driving Tabu Search with case-based reasoning

330 S. Grolimund, J.-G. Ganascia / European Journal of Operational Research 103 (1997) 326-338

5. The ALOIS optimiser

The remaining part of this paper introduces ALOIS ('Analogical Learning for Optimisation to Improve operator Selection'), the system implementing our design of intensification using a base-based reason- ing technique. Its local search technique is sum- marised in Table 2. The optimisation model given to ALOIS consists of a problem description, the prob- lem instance and a basic tabu search control struc- ture. The latter may be composed only of the tabu list, but randomly complex control structures are allowed.

ALOIS relies on a straightforward case-based learning technique: cases capture experimental, and approximate, qualifications, called reward, of opera- tor firing outcomes. Then, the hypothesis for case reuse is that firing the operator in a similar state will again result in similar qualifications. If the previous outcome was positive, then there is thus a reason to rise the priority of applying this operator. Cases are relevant to the operator schema they have been created from. They arc composed of a description of the state the operator was fired in, together with the reward attributed to this firing. Case retrieval occurs for each operator becoming applicable again. The state's description is used to identify the most similar case between the relevant available cases, and the retrieved case's reward modifies the operator's firing priority.

As the ALOIS optimiser is domain-independent, problems have to be described in a formal represen-

Table 2 Local search in ALOIS

Given: • a problem description composed of: the domain theory (a set of operator .schemata), an evaluation function p(.) for each operator schema and a numeric objective function/( . ) to opti- mise,

• a problem instance description with an initial solution, and • a basic tabu search control schema (which additionally may be revised by the user).

Do: • iteratively explore the march space by applying the operator with the highest evaluation, • modify the operator's evaluation function base on p~tst search experience manipulated by case-based reasoning.

]'he goal is to construct near optimal solutions.

Table 3

Main loop of optimisation in ALOIS

function Optimise(domain, datalnstance, stopCondi- tion): the best solution

! initialise the engine with domain and d a t a I n s t a n c e

2 C u r r e n t := generate initial solution state 3 B e s t := C u r r e n t 4 C a s e l i b r a r y : = empty

5 while s t o p C o n d i t i o n not satisfied

6 N e x t : = Next_Solu t ion(Curren t , C a s e l i b r a r y ) 7 O'-= the set of applied operators to achieve N e x t

8 if N e x t is better than B e s t then B e s t := N e x t 9 for each operator o i in O do

10 c a s e ~ := Generate_case(oi, C u r r e n t , Nex t , B e s t ) II Inser~ca sel, Caselibrary) 12 current := Next 13 re turn Best

tation language. The optimisation model has thus to bc expressed in this language. Below, we will pre- sent problem representation, just after having de- tailed the main optimisation algorithm.

5.1. The optimisation algorithm

An optimisation problem is defined by a domain theory, a problem instance d a t a I n s t a n c e and a stop condition s t o p C o n d i t i o n (Table 3). The domain theory holds general operator schemata. Each applicable operator is an instantiation of such an operator schema [13]. As prior to optimisation, no experience for the particular problem instance is available, optimisation starts with an empty case library only. This is similar to classic tabu search, with the exception of target analysis [29]. Starting in an initial feasible solution, new solutions are gener- ated iteratively, as long as the stop condition is not satisfied. Typically stop conditions are combinations of limits on: CPU-time, iterations or number of iterations without improving the best solution. For each operator, applied to achieve the new solution Next, a case is created and passed to the case memory.

A feasible state is build by iteratively applying operators to the C u r r e n t state (Table 4). The Agenda contains the set of applicable operators, without those that fall under the tabu conditions imposed by the tabu control structure (tabu list, etc.). During conflict resolution, the agenda is sorted with respect to the operator evaluation function p(o),

Page 6: Driving Tabu Search with case-based reasoning

S. Grolimund, J.-G. Ganascia / European Journal of Operational Research 103 (1997) 326-338 331

Table 4 Solution generation, reusing experience in ALOIS

function Next_Solut ion(current , Caselibrary~. a feasible solution

1 o := empty 2 repeat 3 Agenda := set of non-tabu, applicable operators in c u r -

r e n t 4 for each operator o~ in Agenda do

5 P0 := priority of applying p (O i) 6 Pl := Re~ieve_Reuse(Caselibrary, o i, P0)

7 set Px as new priority of o i 8 reorder Agenda 9 o := select the operator with highest priority in Agenda

10 C u r r e n t : = o fired in current 11 append o to O, update tabu search 12 until C u r r e n t is feasible 13 return Current

which is modified according to relevant experience retrieved from case memory. In case the construction of a feasible solution requires passing by one or several infeasible states, a hand-coded control struc- ture must be provided by the user in order to guaran- tee that a feasible state may be constructed without any special planning effort (like backtracking).

5.2. Problem representation and case generation

ALOIS incorporates a formal problem representa- tion language, in which the optimisation model IYom Fig. 1 has to be expressed. In order to allow problem modelling for a variety of domains, this language is a subset of first order logic (without negation and function symbols) [31]. The problem instance is a set of positive literals that only have constants as argu- ments, while the literals inside the domain theory operators usually contain variables. In the next sec- tion, we give the problem description that was used for experimental evaluation.

Cases hold descriptions of the state in which the operator, who lead to the case generation, has been applied in. Similarity computation evaluates the re- semblance between an applicable operator, called target, and a case, called source, by comparing the two state descriptions, the one of the state the opera- tor applies in, and the one contained in the case. As state descriptions are represented in a first order language, similarity computation requires partial

matching. Construction of these source-target map- pings is a subgraph isomorphism problem [9], and therefore is NP-complete. As a consequence, worst case matching complexity grows exponentially with the number of descriptors to be mapped. In case the number of descriptors is proportional to the problem instance size, source-target matching can become as complex as the optimisation problem itself. This is clearly undesirable.

A first means for reducing matching complexity is the introduction of additional knowledge via an ex- tension of the problem description language. One classic approach for this is predicate typing. Combi- natorial optimisation problems have in general both, symbolic and numeric characteristics. Predicate typ- ing can take them into account. We adopt the repre- sentation from KBG [7], a system that copes with symbolic and numeric features in first order induc- tive learning. Literals have the form ( p r e d i - cateName [attribute]" ), starting with the pred- icate name and followed by a variable number of attributes. Attributes have to belong to one of the two classes: object or value, and have to be typed. We consider the object attributes to represent the entities of the domain, while value attributes charac- terise both, these entities and the relations between them. Extending the representation language by al- lowing the distinction of these features reduces matching complexity, as only mappings between at- tributes of the same type have to be considered. However, predicate typing alone may not reduce matching complexity in case there is only one object type, as may happen in uniform domains like the single machine job shop scheduling [20].

A second means concerns case situation assess- ment, i.e. the process of extracting the case descrip- tion during case generation. Instead of retaining the whole state description, wc may remove literals that are irrelevant to the event represented by the case. Eliminating such literals may help for two reasons: on the one hand it focuses matching on the character- istic parts of the state description, and on the other hand it reduces the number of descriptors to be mapped. One common technique for identifying rele- vant literals in the context of plan generation is footprinting [46]. It retains from the original state dcscripti_on only the literals that served for satisfying operator preconditions during the observed planning

Page 7: Driving Tabu Search with case-based reasoning

332 S. Grolimund, J.-G. Ganascia / European Journal of Operational Research 103 (1997) 326-338

Table 5 lnstantiation context construction

function lnstantiation_context(operator): the instantiation con- text

1 p r e c o n d := the set of facts that are instantiated preconditions of operator in State

2 objects := extract the ob~ct attributes of precond 3 return I_context:= the subset of facts of State where

objects occur

activity. As in ALOIS, a case focuses on only one single operator, footprinting alone reproduces the operator's instantiated precondition. This is a some- what restrictive description of the situation the opera- tor was applied in. Better, the case description should ideally apprehend the context, as complete as possi- ble, of the local configuration the operator has been applied in. For this task, we define the ins tan t ia t ion

con tex t as the set of literals, being preseni in the state the operator applied, and describing the do- main's entities which were concerned by the opera- tor firing (Table 5) [19]. A similar technique for situation assessment is employed in RIBL [l 1] in the context of classification.

As example, Fig. 2 gives the operator schema closeWarehouse from the facility location do- main we introduce in Section 6. The left side shows

the (simplified) definition of the closeWarehouse operator with its evaluation function, the precondi- tion and the action part. The right shows an instantia- tion of c l o s e W a r e h o u s e where w a r e h o u s e l 7 has been closed when the clients c l i e n t l l , c l i e n t l 3 and c l i e n t s 4 5 were allocated. Its in- stantiated precondition contains the entities w a r e - housel7, clientll, clientl3, and clients45. The lower box contains all facts where these object attributes occur and which lay outside the instantiated precondition. They compose, to- gether with the instantiated preconditions, the instan- tiation context (grey underlined).

While these two refinements of the case descrip- tion may reduce real matching complexity, they do not reduce worst case complexity which remains prohibitive, forbidding the use of an exact matching algorithm. For this, ALOIS relies on a greedy partial matching heuristic. Source-target matching between two instantiation contexts is done on a literal by literal base, with a one-to-one match between at- tributes of the same type as well as between literals of the same name. Similarity evaluation uses hit counts for mapped entities, and ratios in [0 . . . 1] for mappings between the two numeric attributes. The final evaluation of a partial mapping is normalised into [0 . . . 1]. The detailed algorithm for matching and similarity evaluation is described in [20].

Operator schema C ~ OS oWa_-oi]o',~s o

(definc operator closeWarehouse (priority (divide ?Cost ?Flow)) precondition

?fl <- (warehol/sc ?W '?Flow ?Cost) ?f2 <- (clientl.ist ?W ?$ListOfClients) (test (not-tabu ?W))

action (retract ?fl ?t2) (a.,;gert

(warchousc ?W 0 0) (clientList ?W 0) (justClosed ?W))

)

mstaociated precondition with objcct attributes: wa;'.e':~cuse]7, ci %entll, client.].3, cJ. ient43

: : ; ; ) . . . . . . .

l(C~ieritList wa_rehcusc~7 c] ~enTll.

+

(clientArc warehousel7 clientll

99 135)

(clientArc warehousel7 clientl3

32 351)

(clientArc warehousel7 client45

103 279)

|nstfln-

ciation col/text

Fig. 2. lnstantiation context for an application of closeWa rehouse.

Page 8: Driving Tabu Search with case-based reasoning

S. Groliraund, J.-G. Ganascia / European Journal of Operational Research 103 (1997) 326-338 333

5.3. Case reuse

The second component of a case, going with the instantiation context, is the reward attributed to the operator fLring. It qualifies the experience of apply- ing one particular operator in one particular context. However, only shallow knowledge, resumed by 'promising' in the general tabu search framework, is available to qualify experience. Consider any solu- tion S. For S being of 'high quality', f (S ) has to be close to f (S* ), S ° the optimal solution. Of course, neither S ° nor f ( S ' ) are known during optimisa- tion. In practice, unless some bounding procedures are applied, 'high quality' and 'promising' may not refer to S*, but to the best solution(s) found during past search. In ALOIS, we opt for a simple qualita- tive and heuristic reward attribution, assigning a fixed, positive amount, or bonus, to an operator that contributed to an improvement of solution quality. Otherwise a fixed, negative reward, or malus, is assigned. Reward is constructed for each operator applied, each time a feasible solution is obtained. Table 6 summarises case generation and reward attri- bution.

Case reuse adapts an operator's priority according to the reward stored in the retrieved case. The bonus-malus reward attribution scheme leads to pri- ority raising in case of b o n u s reward (Table 7, line 6), and priority diminishing'else. Priority adaptation is weighted by the similarity value between the case and the operator in order to take into account the closeness of the case ad the operator.

5.4. Case memory organisation

Case memory is a crucial part of a case-based reasoning system, as it holds the extensional experi- ence the system disposes of. Beyond this stocking function, its main task is to provide retrieval capabil-

Table 6 Case generat ion and reward atWibution

function G e n e r a t e _ c a s e ( o p e r a t o r , Current, Next, Best):

the new case 1 i f Current is better than Next then reward := bonus

2 else r e w a r d := malus 3 I c o n t e x t := lnstant ia t ion c o n t e x t ( o p e r a t o r )

4 r e t u r n c a s e := { l _ c o r ~ t e x t , r e w a r d }

Table 7 Case retrieval and priori ty adap ta t ion

function Retl/eve_Reuse(Caselibrary, operator, oldPri-

ority): new prior i ty

l I_context := Instantiafion e0ntex~opera tor)

2 Bestcase := RellSeveClosestCase(caselibrary, I_con-

text)

3 sim:= similari~I context, Bestcase. context)

4 reward:= the reward of Bestcase

5 c* := I +sim

6 if reward is bonus then p:= ~ "oldPriority

7 else p:= oldPriority/~

8 r e t u r n p

ities to support the identification of the most similar experience t o solve the new problem. Two other important jobs of case memory are: avoid redun- dancy between the cases and maintain speed of interaction while the case base is growing [42].

Different case memory organisations are possible. The most simple one is based on nearest neighbour techniques, where cases simply are appended to a flat list. There advantage is the incorporation of an explicit similarity measure to evaluate the resem- blance of cases [44]. However, the cost for the simple insertion scheme has to be paid during re- trieval. In fact, as during retrieval the whole list needs to be examined in order to find the closest matching case, the time consumed by retrieval is proportional to the size of the case memory [11,27]. One proposed way to overcome this problem is the use of massively parallel computer hardware [44].

More elaborated memory organisations group cases with high resemblance together. By guiding retrieval to these groups, only a small subset of the whole case memory has to be examined. However, the memory organisation has make sure that the really similar cases are included in that subset. Some approaches hierarchical cluster cases according to shared (surface) features of the case descriptions. They are based on the hypothesis that the presence of one (or several) features is sufficient to identify a relevant cluster. Examples of such techniques are: decision tree induction [37], discrimination networks [12,46], dynamic memory [41] or k-d trees [6].

An other approach for grouping similar cases together is based on template trees [38]. Here, clus- tering does not depend on the surface feature hypoth-

Page 9: Driving Tabu Search with case-based reasoning

334 S. Grolimund, J.-G. Ganascia / European Journal of Operational Research 103 (1997) 326-338

esis, but allows a general similarity measure as clustering criteria. Template tree memories have shown excellent performance in various domains for storing and retrieving high quantities of complex objects [8]. As described in [21], a simple algorithm for case insertion starts at the root node and passes recursively through the, at the beginning empty, template tree. For each visited node, if its degree is less than maxDegree, the case is inserted as a son and insertion stops, else insertion resumes with the node that is the closest to the case. Retrieval is even simpler. Starting at the root, search goes down the tree until reaching a leaf, choosing at each step the node's son that is the closest to the target.

The basic template trees can be extended to im- prove performance of the case memory, especially concerning retrieval accuracy [21]. Called Dynamic Template Trees, three auxiliary parameters are added to the insertion and retrieval algorithms. First, a new case is added to memory only if during insertion, no very similar case has been found. Second, retrieval is stopped as soon as a case is found that is very close to the target. And third, if one of a node's sons, say c,, is very similar to the new case c N to be inserted, c N becomes a son of c 1 even if the father's degree is less than maxDegree. By this means, one assures that a father's sons are dissimilar enough, which allows for a better guidance of retrieval. See [21] for details.

Dynamic Template Trees thus combine the advan- tages of flat list memories and of hierarchical ones, as they allow explicit similarity measures, and pro- vide efficient access to memory elements. For these characteristics, a Dynamic Template Tree memory is adopted in ALOIS.

6. Experimental evaluation

The goal of the experimentation is to verify whether intensification as defincd in ALOIS may improve solution quality of tabu search optimisation. The underlying tabu search control structure is cho- sen to be very simple in order to clearly emphasise the impact of the proposed method. Especially, no user-refined intensification or diversification is inte- grated. Experimentation is conducted on benchmark instances of two classical facility location problems. In order to assess the usefulness of the approach for

DSS, four different problem models are defined for each of the two problems.

6.1. Uncapacitated and capacitated facility location

Facility location [34] deals with the optimal plac- ing of facilities (e.g. plants or warehouses) within a finite set of possible locations in order to minimise the cost of delivering fixed demand to a given set of clients. More precisely, for m possible facility loca- tions, the binary variables y; design the opening of a facility at location i by Yi = 1. For n clients with demand D/, the real variables xi~ hold the flow from facility i to client j. Each opened facility i charges a fixed cost Fi. Further, unitary variable costs cii are charged for each flow xq. They are typically related to the distance between facility and client. The opti- misation goal, expressed by the objective function f ( - ) , is to find the facility configuration that min- imises the total cost. Archetypal variants of facility location are the Uncapacitated Facility Location Problem (UFLP) and the Capacitated Facility Loca- tion Problem (CFLP). A mathematical programming formulation is:

minimise f=~-'~ ~ c i j x i ) . + - ~ F i y i i = 1 j = l i=,1

subject to ~ xi j= Dj, j = 1 . . . . . n; i = 1

x q _ < Q ~ . ~ ' y i , i = 1 . . . . . m;

x i i ~ + , i= 1 . . . . . m; j = 1 . . . . . n;

y ~ • ( 0 , 1 ) , i = l . . . . . m;

UFLP only i Q m a x > __ Dj i = l . . . . . m. j = l

Both, UFLP and CFLP are NP-hard. Even though, their mathematical properties provide a mean to find

Table 8

The attr ibutes o f the facility location domains

Attributes Class Type Example

Warehouses Object Warehouse wa rehousel7

Clients Object Client clientl3

Cost Value Cost 234

Flow Value F1 ow 7 6 5

Page 10: Driving Tabu Search with case-based reasoning

S. Grolimund. J.-G. Ganascia / European Journal of Operational Research 103 (1997) 326-338 335

global optimal solutions efficiently, even for large problem instances [5]. Nevertheless, as additional constraints are introduced, exact optimisation is not available any more and heuristic techniques have to be used. There are tabu search implementations that provide excellent results on such difficult location problems [10,24].

6.2. Problem modelling

6 . . . 10 (T-var), with transition probabilities of 20% for increasing or decreasing the list size after each main iteration. Further, two different tabu conditions are imposed on the operators. The first one forbids the closing of a warehouse as long as it is inscribed in the tabu list (CLOSE), while the other one pre- vents a warehouse that was closed to be re-opened immediately (OPEN). ALOIS has been added to all these 8 combined methods.

For one and the same optimisation problem, there are usually several model formulations possible. Table 8 gives the attributes used during experimenta- tion defined for modelling both UFLP an CFLP. In quite a natural way, warehouses and clients are considered to be object attributes as they are the entities of the domain, while costs and flows are taken for values. The literals are given in Table 9. A typical literal in this domain might be ( c l i e n t A r c warehousel9 client23 27 450), stating that

warehousel9 delivers 27 units for a cost of 450

to client23.

The domain theory holds three operator schemata: c l o s e W a r e h o u s e closes one (open) facility and adds it to the tabu list (Fig. 2, left), s e p a r a - t e O n e C l i e n t severs one client from the facility that had just been closed, and a f f e c t O n e C l i e n t allocates one client with unsatisfied demand to a facility, opening it if necessary. The hand-coded control strategy imposes that, first, a facility is closed, second, all its clients are separated, and third, each of these clients is allocated to any facility except the one that just has been closed. In the initial solution, each client is allocated to its closest facility.

Only a basic tabu search technique containing one tabu list is implemented. However, for each of the two problems, four different tabu search designs are tested. Two different tabu list implementations are tested, one with a tabu list of fixed size 7 (T-fix), the other with a list of variable size in the range of

Table 9 The literals of the facility location domains

Predicate Attributes

(warehouse Warehouse Cost Flow) (clientArc Warehouse Client Cost Flow) (clientList Warehouse Client Client ... )

6.3. Experimentation

ALOIS is fully implemented in C + + , built on an industrial forward chaining inference engine with Rete-like [14] pattern matching. Experimentation is conducted on a Sun Sparc workstation. Twelve mid- size benchmark problem instances, the same for UFLP and CFLP, with known optimal solutions from the OR-library [4], have been optimised. Each one has 50 clients to be affected. Four instances (cap71- cap74) have 16 possible facility location, four (capl01-capl04) have 25, and the other four (cap131-capI34) have 50. For each problem in- stance and for each problem, all the four defined configurations of tabu lists and tabu conditions are evaluated. Over all 96 different optimisations have been conducted. During each run, optimisation stopped after visiting 30 solutions without finding a new best solution. In practice, no run required more than 150 iterations (i.e. generated solutions). Thus case memory never holds more than these 150 cases. The three auxiliary parameters of the Dynamic Tem- plate Tree case memory were configured as in [21].

The results are given in Table 10. The best solu- tions produced by each method for each problem instance has been normalised such that, for the global optimal solution S ° of each problem instance, f ( S ' ) = 1. The first two columns give the nor- malised mean gap to the optimal solution, on the left for the simple tabu search design alone, on the right after adding ALOIS. The 'improvement' column gives the absolute solution improvement, i.e. the total cost reduction, due to ALOIS, scaled such that 100% corresponds to the average error produced by tabu search without ALOIS. Not very surprising, the simple tabu search design alone often performs poorly. However, adding the case-based reasoning intensification improves solution quality on all the

Page 11: Driving Tabu Search with case-based reasoning

336 S. Grolimund, J.-G. Ganascia / European Journal of Operational Research 103 (1997) 326-338

Table 10 Results for UFLP and CFLP on 12 problem instances, 4 different tabu search methods each

Uncapacitated facility location

Configuration mean gap to optimum improvement

Without With ALOIS

Capacitated facility location

Configuration mean gap to optimum improvement

Without With ALO1S

T-f ix/CLOSE 1.34 1.27 20.6% T-f ix /CLOSE 1.34 1.22 35.3% T-f ix/OPEN 1.27 1.16 40.7% T-f ix /OPEN 1.26 1.15 42.3% T-var /CLOSE 1.30 1.23 23.3% T-var /CLOSE 1.33 1.20 39.4% T-var /OPEN 1.28 I. 14 50.0% T-var /OPEN 1.27 1.14 48.1%

Best solution 5 43 Best solution 3 45 Mean improvement 33.7% Mean improvement 41.3%

eight configuration, reducing the absolute error by up to 50%, i.e. dividing it by 2. Further, ALOIS identi- fied the best solution on 88 runs out of 96, the simple tabu search performed better on 8 optimisa- tions only.

Concerning execution time, the use of a more elaborated operator selection criteria obviously leads to an time penalty. CPU-time per iteration is shown in Fig. 3. As can be seen, execution time penalty is not very important. Cumulative execution time for the 100 iterations is about 60% when using Case- Based Reasoning. For comparison, the dashed line gives the CPU-time required by a case memory organised in form of a flat list, i.e. in which cases are stored sequentially. As during retrieval the whole list has to be examined in order to identify the closest case, time penalty grows linearly with the number of cases in memory.

There is a second comment appropriate concern- ing execution time. In fact, Tabu Search in ALOIS is very slow, needing 1 to 2 seconds per iteration even without Case-Based Reasoning. This has to be at- tributed to the first-order logic problem representa- tion language, which leads to expensive pattern matching during the determination of applicable op- erators in each state. While this phenomena is ac- ceptable for the study of our prototype, a real appli- cation inside a DSS might need a more efficient implementation.

7. Conclusion

This paper introduces an approach to use Case- Based Reasoning inside Tabu Search in order to carry out intensification-like search control. Intensifi-

4

3.5

3

2.5

2

Tabu Search in ALOrS

. . . . . . . ALOIS with flat list memory

ALOIS with Dynamic Memory ; "o

. p ,

• , o ~ ,

0.5

0 0 I 0 20 30 40 50 60 70 80 90

I t e ra t ion

Fig. 3. CPU-time per iteration for UFLP caplOI with T-fix/CLOSE.

Page 12: Driving Tabu Search with case-based reasoning

S. Grolimund, J.-G. Ganascia /European Journal of Operational Research 103 (1997) 326-338 337

ca t ion is p e r f o r m e d wi th r e spec t to the con tex t in

w h i c h ope ra to r s are appl ied , and not , as usual in

T a b u Sea rch , by c o n s i d e r i n g s o m e f r e q u e n c y or re-

c e n c y b a s e d cr i ter ia . As o p t i m i s a t i o n p r o b l e m s are

spec i f i ed in a f o r m a l l anguage , and in t ens i f i ca t ion

d i rec t ly d e p e n d s on this spec i f i ca t ion wi th n o need

fo r add i t iona l user imp l i ca t i on , i n t eg ra t ion in to a

D e c i s i o n S u p p o r t S y s t e m is s t rong ly faci l i ta ted.

E x p e r i m e n t a l eva lua t i on , c o n d u c t e d on the unca -

pac i t a t ed and capac i t a t ed faci l i ty loca t ion p r o b l e m

s h o w s tha t a d d i n g A L O I S to bas ic tabu sea rch

f r a m e w o r k s i m p r o v e s so lu t ion qual i ty . T he addi-

t iona l t ime c o n s u m p t i o n due to c a s e - b a s e d r e a s o n i n g

is c lear ly a c c e p t a b l e i f c o m p a r e d to the so lu t ion

qua l i ty i m p r o v e m e n t . Fu r t he r eva l ua t i ons on o ther

p r o b l e m d o m a i n s as wel l as c o m b i n i n g the s y s t e m

wi th m o r e s o p h i s t i c a t e d tabu sea rch i m p l e m e n t a t i o n s

m i g h t c o m f o r t the genera l in te res t o f the approach .

Acknowledgements

W e wish to t h a n k A l a i n Dav id and G e b e r Ra-

m a l h o for f rui t ful d i s cus s i ons on this work. W e

fu r the r t h a n k the two a n o n y m o u s r e v i e w e r s for the i r

he lp fu l c o m m e n t s .

R e f e r e n c e s

[1] A. Aamodt, E. Plaza, Case-based reasoning: Foundational issues, methodological variations, and system approaches, AI Communications 7 (i) (1994) 39-59.

[2] K. Ashley, Arguing by analogy in law: A case-based model, in: Helman (Ed.), Analogical Reasoning: Perspectives of Artificial Intelligence, Cognitive Science, and Philosophy, Kluwer Academic, 1988, pp. 205-24.

[3] R. Battiti, G. Tecchiolli, The reactive tabu search, ORSA Journal on Computing 6 (1994) 126-140.

[4] J.E. Beasley, OR-library: Distributing test problems by elec- tronic mail, Journal of the Operations Research Societ2~ 41 (1990) 1069-1072.

[5] J.E. Beasley, Lagrangien heuristics for location problems, European Journal of Operational Research 65 (1993) 383-- 399.

[6} J. Bentley, Multidimensional binary search trees used for associative searching, Communications of the ACM 18 (9) (1975) 509-517.

[7] G. Bisson, [.earning in FOL with a similarity measure, in: Proceedings of the National Conference on Artificial Intelli- gence (AAAI) 127 (1992) 82-87.

[8] R. Brown, Accelerated template matching using template trees grown by condensation, IEEE Transactions on Systems, Man, and Cybernetics 25 (3) (1995) 523-528.

[9] H. Bunke, B. Messmer, Similarity measures for structured representations, European Workshop on Case-Based Reason- ing, Lecture Notes in Artificial Intelligence, Springer Verlag, 1993, pp. 106-18.

[10] T. Crainic, M. Gendreau, P. Soriano, M. Toulouse, A tabu search procedure for multicommodity location/allocation with balancing requirements, Annals of Operations Research 42 (1-4) (1993) 359-383.

[11] W. Emde, D. Wettschereck, Relational instance-based learn- ing, International Conference on Machine Learning, 1996, pp. 122-30.

[12] A. Feigenbaum, The simulation of natural learning behavior, in: A. Feigenbaum, J. Feldman (Eds.), Computers and Thought, McGraw-Hill, New York, 1963.

[13] R. Fikes, P. Hart, N. Nilsson, Learning and executing gener- alized robot plans, Artificial Intelligence 3 (4) (1972).

[14] C. Forgy, Rete: A fast algorithm for the many pattern/many object pattern matching problem, Artificial Intelligence 19 (1) (1982) 17-37.

[15] F. Glover, Tabu search - Part l, ORSA Journal on Comput- ing I (3)(1989) 190-206.

[16] F. Glover, Tabu Search - Part 2, ORSA Journal on Comput- ing 2 (1) (1990) 4-32.

[17] F. Glover, Tabu search fundamentals and uses, University of Colorado, Boulder, April 1995.

[18] F. (;lover, H. Greenberg, New approaches for heuristic search: A bilateral linkage with artificial intelligence, Euro- pean Journal of Operational Research 39 (2) (1989) 119-130.

[19] S. Grolimund, J.G. Ganascia, Integrating case-based reason- ing and tabu search for solving optimisation problems, in: Proceedings of the International Conference on Case-Based Reasoning, Lecture Notes in Computer Science 1010, Springer-Verlag, Berlin, 1995, pp. 451-60.

[20] S. Grolimund, J.G. Ganascia, Case-based reasoning and tabu search for the single machine scheduling problem: First results, Technical Report, Universite Paris 6, Laforia, Paris, France, 1995.

[21] S. Grolimund, J.G. Ganascia, Speeding-up nearest neighbor memories: The template tree case memory organization, in: L. Saitta (Ed.), International Conference on Machine Learn- ing, Morgan Kaufrnann Pub., 1996.

[22] K. Hammond, CHEF: A model of case-based planning, in: Proceedings of the National Conference on Artificial Intelli- gence (AAAI), 1986.

[23] S. Hanks, D. Weld, A domain-independent algorithm for plan adaptation, Journal of Artificial Intelligence Research 2 (1995) 319-360.

[24] P. Hansen, E. Pedrosa, C. Ribeiro, Location and sizing of offshore platforms for oil exploration, European Journal of Operational Research 58 (1992) 202-214.

[25] A. Hertz, D. de Wen-a, Using tabu search techniques for graph coloring, Computing 39 (1987) 345--351.

[26] T. Hindrichs, Towards an architecture for open world prob- lem solving, in: J. Kolodner (Ed.), Proceedings of a Work-

Page 13: Driving Tabu Search with case-based reasoning

338 S. Grolimund, J.-G. Ganascia / European Journal of Operational Research 103 (1997) 326-338

shop in Case Based Reasoning, Morgan Kaufmann, San Mateo, CA, 1988, pp. 182-189.

[27] J. Kolodner, Case-Based Reasoning, Morgan Kaufmann, 1993.

[28] P. Koton, Reasoning about evidence in causal explanations, in: Proceedings of the National Conference on Artificial Intelligence (AAAI), 1988.

[29] M. Laguna, F. Glover, Integrating target analysis and tabu search for improved scheduling systems, Expert Systems with Applications 6 (1993) 287-297.

[30] J. Laird, P. Rosenbloom, A. Newell, Chunking in SOAR: The anatomy of a general learning mechanism, Machine Learning 1 (1986) 11-46.

[31] J. Lloyd, Foundations of Logic Programming, Springer- Verlag, 1987.

[32] J. McDermott, C. Forgy, Production system conflict resolu- tion strategies, in: D. Waterman, F. Hayes-Roth (Eds.), Pat- tern-Directed Inference Systems, Academic Press, NY, 1978.

[33] S. Minton, Learning Search Control Knowledge: An Expla- nation-Based Approach, Kluwer Academic Press, Boston, 1989.

[34] P. Mirchandani, R. Francis (Eds.), Discrete Location Theory, Wiley, 1990.

[35] K. Miyashita, K. Sycara, CABINS: A framework of knowl- edge acquisition and iterative revision for schedule improve- ment and reactive repair, Artificial Intelligence 76 (1995).

[36] B. Porter, R. Bareiss, R. Holte, Concept learning and heuris- tic classification in weak-theory domains, Artificial Intelli- gence 45 (1990) 229-263.

[37] J. Quinlan, Induction of decision trees, Machine l.earning 1 (1) (1986) 81-106.

[38] H. Ramapriyan, A multilevel approach to the detection o

pictorial features, IEEE Transactions on Computers 25 (1) (1976) 66-78.

[39] C. Reeves, Modern Heuristic Techniques for Combinatorial Problems, Blackwell Scientific Pub., London, 1993.

[40] D. Ruby, D. Kibler, Learning episodes for optimization, in: Proceedings of the International Conference on Machine Learning, 1992, pp. 279-84.

[41] R. Schank, Dynamic Memory: A Theory of Learning in Computers and People, Cambridge University Press, New York, 1982.

[42] B. Smyth, M. Keane, Remembering to forget: A competence-preserving case deletion policy for case-based reasoning systems, in: Proceedings of the International Joint Conference o11 Artificial Intelligence (IJCAI), 1995, pp. 377-82.

[43] J. Skorin-Kapov, Tabu search applied to file quadratic assign- ment problem, ORSA Journal on Computing 2 (1) (1990) 33-45.

[44] C. Stanfill, D. Waltz, The memory-based reasoning paradigm, in: J. Kolodner (Ed.), Proceedings of a Workshop in Case Based Reasoning, Morgan Kaufmann, San Mateo, CA, 1988, pp. 414--24.

[45] E. Taillard, Robust taboo search tbr the quadratic assignment problem, Parallel Computing 17 (1991) 443-455.

[46] M. Veloso, Planning and learning by analogical reasoning, Lecture Notes in Computer Science 886, Springer-Verlag, Berlin, 1994.

[47] I. Watson, F. Marir, Case-based reasoning: A review, The Knowledge Engineering Review 9 (4) (1994).

[48] D. Woodruff, Proposal for chunking and tabu search, Techni- cal Report, University of California Davis, Dec. 1994.