Multicriteria airport gate assignment and Pareto simulated annealing

Similar documents
Practical Tips for Modelling Lot-Sizing and Scheduling Problems. Waldemar Kaczmarczyk

A Brief Introduction to Multiobjective Optimization Techniques

5. Simulated Annealing 5.1 Basic Concepts. Fall 2010 Instructor: Dr. Masoud Yaghini

Zebo Peng Embedded Systems Laboratory IDA, Linköping University

PROBLEM SOLVING AND SEARCH IN ARTIFICIAL INTELLIGENCE

Hill climbing: Simulated annealing and Tabu search

Dynamic Call Center Routing Policies Using Call Waiting and Agent Idle Times Online Supplement

A Compact Linearisation of Euclidean Single Allocation Hub Location Problems

Single Solution-based Metaheuristics

The polynomial solvability of selected bicriteria scheduling problems on parallel machines with equal length jobs and release dates

Design and Analysis of Algorithms

A Mixed-Integer Linear Program for the Traveling Salesman Problem with Structured Time Windows

Computational statistics

Artificial Intelligence Heuristic Search Methods

Vehicle Routing and Scheduling. Martin Savelsbergh The Logistics Institute Georgia Institute of Technology

Dynamic Call Center Routing Policies Using Call Waiting and Agent Idle Times Online Supplement

A pruning pattern list approach to the permutation flowshop scheduling problem

Multi-Objective Scheduling Using Rule Based Approach

An artificial chemical reaction optimization algorithm for. multiple-choice; knapsack problem.

Set-based Min-max and Min-min Robustness for Multi-objective Robust Optimization

International Journal of Industrial Engineering Computations

New Reference-Neighbourhood Scalarization Problem for Multiobjective Integer Programming

Variable Objective Search

An Approximate Pareto Set for Minimizing the Maximum Lateness and Makespan on Parallel Machines

The Multiple Checkpoint Ordering Problem

Non-Work-Conserving Non-Preemptive Scheduling: Motivations, Challenges, and Potential Solutions

3.4 Relaxations and bounds

Characterization of Convex and Concave Resource Allocation Problems in Interference Coupled Wireless Systems

12. LOCAL SEARCH. gradient descent Metropolis algorithm Hopfield neural networks maximum cut Nash equilibria

Bi-objective Portfolio Optimization Using a Customized Hybrid NSGA-II Procedure

A comparison of sequencing formulations in a constraint generation procedure for avionics scheduling

Lin-Kernighan Heuristic. Simulated Annealing

Heuristics for airport operations

Motivation, Basic Concepts, Basic Methods, Travelling Salesperson Problem (TSP), Algorithms

Optimization Exercise Set n.5 :

Time. 3 p3 Time. (a) (b)

Minimizing total weighted tardiness on a single machine with release dates and equal-length jobs

Metaheuristics and Local Search

Bicriterial Delay Management

Multi-objective Quadratic Assignment Problem instances generator with a known optimum solution

14 Random Variables and Simulation

Informatik-Bericht Nr

A hybrid Marquardt-Simulated Annealing method for solving the groundwater inverse problem

Distributed Optimization. Song Chong EE, KAIST

Pengju

where X is the feasible region, i.e., the set of the feasible solutions.

Optimization under Ordinal Scales: When is a Greedy Solution Optimal?

CMSC 451: Lecture 7 Greedy Algorithms for Scheduling Tuesday, Sep 19, 2017

5. Simulated Annealing 5.2 Advanced Concepts. Fall 2010 Instructor: Dr. Masoud Yaghini

Part 4. Decomposition Algorithms

A 2-Approximation Algorithm for Scheduling Parallel and Time-Sensitive Applications to Maximize Total Accrued Utility Value

Assortment Optimization under the Multinomial Logit Model with Nested Consideration Sets

A parallel metaheuristics for the single machine total weighted tardiness problem with sequence-dependent setup times

Connectedness of Efficient Solutions in Multiple. Objective Combinatorial Optimization

Optimization Exercise Set n. 4 :

A new ILS algorithm for parallel machine scheduling problems

CS 781 Lecture 9 March 10, 2011 Topics: Local Search and Optimization Metropolis Algorithm Greedy Optimization Hopfield Networks Max Cut Problem Nash

Metaheuristics and Local Search. Discrete optimization problems. Solution approaches

Complexity Metrics. ICRAT Tutorial on Airborne self separation in air transportation Budapest, Hungary June 1, 2010.

Valid Inequalities and Restrictions for Stochastic Programming Problems with First Order Stochastic Dominance Constraints

A heuristic algorithm for the Aircraft Landing Problem

A GA Mechanism for Optimizing the Design of attribute-double-sampling-plan

Flow Shop and Job Shop Models

Worst case analysis for a general class of on-line lot-sizing heuristics

Local and Stochastic Search

Single Machine Scheduling: Comparison of MIP Formulations and Heuristics for. Interfering Job Sets. Ketan Khowala

Local Search & Optimization

A note on semi-online machine covering

Capacitor Placement for Economical Electrical Systems using Ant Colony Search Algorithm

The Simplex Method: An Example

University of Groningen. The binary knapsack problem Ghosh, Diptesh; Goldengorin, Boris

An improved method for solving micro-ferry scheduling problems

Scheduling Parallel Jobs with Linear Speedup

The Multiple Traveling Salesman Problem with Time Windows: Bounds for the Minimum Number of Vehicles

Knapsack and Scheduling Problems. The Greedy Method

Evolutionary Multiobjective. Optimization Methods for the Shape Design of Industrial Electromagnetic Devices. P. Di Barba, University of Pavia, Italy

Robust Multi-Objective Optimization in High Dimensional Spaces

A Column Generation Based Destructive Lower Bound for Resource Constrained Project Scheduling Problems.

Scalarizing Problems of Multiobjective Linear Integer Programming

On the Approximate Linear Programming Approach for Network Revenue Management Problems

An Effective Chromosome Representation for Evolving Flexible Job Shop Schedules

Supplementary lecture notes on linear programming. We will present an algorithm to solve linear programs of the form. maximize.

Application 1 - People Allocation in Line Balancing

On Two Class-Constrained Versions of the Multiple Knapsack Problem

Complexity of local search for the p-median problem

Mathematical foundations of the methods for multicriterial decision making

Batch delivery scheduling with simple linear deterioration on a single machine 1

A polynomial-time approximation scheme for the two-machine flow shop scheduling problem with an availability constraint

Real-Time Feasibility of Nonlinear Predictive Control for Semi-batch Reactors

Markov Chain Monte Carlo. Simulated Annealing.

On-Line Load Balancing

Intuitionistic Fuzzy Estimation of the Ant Methodology

A.I.: Beyond Classical Search

Stabilized Branch-and-cut-and-price for the Generalized Assignment Problem

Recognizing single-peaked preferences on aggregated choice data

Time-optimal scheduling for high throughput screening processes using cyclic discrete event models

Multiobjective Optimisation An Overview

Adaptive Dynamic Cost Updating Procedure for Solving Fixed Charge Network Flow Problems.

Evaluation and Validation

Stochastic programs with binary distributions: Structural properties of scenario trees and algorithms

Transcription:

IIE Transactions ISSN: 0740-817X (Print) 1545-880 (Online) Journal homepage: http://www.tandfonline.com/loi/uiie0 Multicriteria airport gate assignment and Pareto simulated annealing Andreas Drexl & Yury Nikulin To cite this article: Andreas Drexl & Yury Nikulin (008) Multicriteria airport gate assignment and Pareto simulated annealing IIE Transactions 40:4 85-97 DOI: 10.1080/0740817070141667 To link to this article: https://doi.org/10.1080/0740817070141667 Published online: 07 Feb 008. Submit your article to this journal Article views: 760 View related articles Citing articles: 6 View citing articles Full Terms & Conditions of access and use can be found at http://www.tandfonline.com/action/journalinformation?journalcode=uiie0 Download by: [46..06.0] Date: 6 November 017 At: 1:01

IIE Transactions (008) 40 85 97 Copyright C IIE ISSN: 0740-817X print / 1545-880 online DOI: 10.1080/0740817070141667 Multicriteria airport gate assignment and Pareto simulated annealing ANDREAS DREXL and YURY NIKULIN Christian Albrechts Universität zu Kiel Institut für Betriebswirtschaftslehre Olshausenstr 40 4118 Kiel Germany E-mail: andreas.drexl@bwl.uni-kiel.de Received April 006 and accepted February 007 Downloaded by [46..06.0] at 1:01 6 November 017 This paper addresses an airport gate assignment problem with multiple objectives. The objectives are to minimize the number of ungated flights and the total passenger walking distances or connection times as well as to maximize the total gate assignment preferences. The problem examined is an integer program with multiple objectives (one of them being quadratic) and quadratic constraints. Of course such a problem is inherently difficult to solve. We tackle the problem by Pareto simulated annealing in order to get a representative approximation for the Pareto front. Results of computational experiments are presented. To the best of our knowledge this is the first attempt to consider the airport gate assignment problem with multiple objectives. Keywords: Quadratic assignment problem multiple criteria optimization Pareto simulated annealing 1. Introduction Since the early 1970s a large number of papers have been written on the problems that have to be addressed by airport managers. We refer the reader to the recent survey by Dorndorf et al. (004) where a comprehensive description of the problems arising in gate scheduling a key activity in any airport is provided. The main purpose of classical airport gate scheduling is to find an assignment of flights to their stand positions at the terminal that satisfies a set of constraints. In addition the schedule should be suitable for airport services and convenient for passengers. The aircraft stand positions are commonly referred to as gates and they designate the terminal portal for passengers to enter and exit aircrafts. Traditionally a well-constructed flight gate schedule must satisfy the following two restrictions. 1. No two aircraft may be assigned to the same gate simultaneously i.e. one gate can process only one aircraft at a time.. Every flight must be assigned to exactly one gate that is an aircraft cannot be moved or reassigned to another position once it has been assigned to a terminal gate. Sometimes special constraints are introduced; this is mainly because of a particular airport configuration. The most commonly used constraint is that large aircraft cannot be Corresponding author assigned to neighboring gates. Models covering such restrictions can be resolved using branch and bound (Babic et al. 1984) or problem-oriented heuristics (Vanderstraetan and Bergeron 1988). At the same time a suitable flight gate schedule must also consider passenger comfort requirements and convenience for airport services that is it has to reflect several goals: 1. the number of ungated (open) flights has to be minimized;. the total passenger walking distances or connection times have to be minimized;. the total airport preference scores of assigning certain aircraft to particular gates have to be maximized. Let us describe each goal in more detail. 1. When an aircraft arrives at the airport it can be either assigned to a terminal gate or if no terminal stand position is available it can be assigned to the apron. All the terminal gates are usually equipped with passenger bridges whereas passengers from flights assigned to the apron are transferred to the terminal building by transfer buses. These bus transfer operations may increase the connection time and can hardly be regarded as desirable if we want to minimize the total passenger walking distance and the connection time. Thus our first goal is to minimize the number of flights assigned to the apron.. Passenger walking distance minimization is the most frequently used goal occuring not only in gate assignment but also in the design of airport terminals. We note that 0740-817X C 008 IIE

86 Drexl and Nikulin Downloaded by [46..06.0] at 1:01 6 November 017 the walking distance for arriving passengers is the distance between the gate and the baggage delivery area. The walking distance for departing passengers is the distance between the check-in desk and the departure gate. Finally the walking distance for a transferring passenger is equal to the distance between the two gates to which the two connecting flights are assigned. For the case where the number of aircraft exceeds the number of available terminal gates we also include the distance from the apron to the terminal for passengers from aircraft assigned to this area.. We attach a preference value to every flight gate combination as well as a priority value to every gate. The goal is to maximize the total flight gate assignment preference score in order to improve convenience for airport services as much as possible. It is evident that the preferences may have a substantial influence on the optimal gate schedule. The task of proper i.e. adequate to decision maker s wishes choosing suitable preference parameters is based on the detailed characteristics of flights and terminal gates. All these requirements make the Gate Assignment Problem (GAP) very complicated both from a theoretical and apractical point of view. In fact any practical GAP instance for a big international airport the terminal of which is commonly referred to as a hub usually has to deal with a large number of daily flights (around 800) which have to be assigned to a pretty large number (around 100) of different gates. This means that our model has around 80 000 binary variables and moreover both a quadratic objective and quadratic constraints make the problem computationally intractable for any mixed-integer programming solver (the number of variables obtained through standard linearization techniques is about 6400 000 000). This huge size means that the design of an efficient heuristic is of considerable interest. Additionally the multiple criteria and multiple constraints nature of the problem make it very unlikely that a so-called ideal optimal solution which simultaneously optimizes all objectives can found and verified. Therefore one has to determine a solution that provides an appropriate compromise between all the different objectives while ensuring a set of hard constraints. The basic input data for gate scheduling is a flight time table with arrival and departure times and additional specifications of flights: the origin and destination of a flight the type of aircraft the number of passengers the cargo volume the type of flight (domestic or international) as well as the gate preferences the required airport services and the inspection facilities. So-called single time slot models consider the assignment of a batch of flights that arrive within a single given time period (slot) at gates. In this case only one flight can be assigned to each gate. In multiple time slot models the entire time interval is divided into a fixed number of time slots. The width of the time slots must be carefully selected because it influences the problem size as well as possible gate utilization. The single-slot GAP can be modeled by analogy to the NP-hard Quadratic Assignment Problem (QAP) (Obata 1979) which is a facility location problem in which the cost of placing a flight at a gate depends on the placement of other facilities and the transport volume between the two facilities (see also Lawler (196). Babic et al. (1984) use a branch-and-bound approach with some enhancements to accelerate the computation in order to determine an optimal solution of the GAP. The objective is to reduce the number of passengers who have to walk maximum distances at the price that more passengers have to walk the minimum distances compared to a random aircraft position assignment. Contrary to Babic et al. (1984) Mangoubi and Mathaisel (1985) take into account transfer passengers. Moreover they use a linear programming relaxation and greedy heuristics to solve the GAP. Bihr (1990) uses zero one integer programming to solve the minimum walking distance GAP for fixed arrivals at a hub using a simplified formulation as an assignment problem. Xu and Bailey (001) propose a tabu search algorithm for a single-slot GAP with the objective function of minimizing the overall distances that passengers have to walk in order to get connecting flights. The problem is formulated as a QAP and reformulated as a mixed zero one integer linear program. A simple tabu search metaheuristic to solve the problem is developed. The algorithm exploits the special properties of different types of neighborhood moves and creates effective candidate list strategies. Some computational experiments are presented and analyzed. Generally speaking scheduling theory and multicriteria optimization are a topic of growing interest both in theory and in practice. Unfortunately until recently these areas were studied separately. Probably the first serious attempt to formulate real-life scheduling problems as multicriteria problems was done in T Kindt and Billaut (00). The topic of interest here that is the GAP has a multicriteria nature. This fact was expressed in Yan and Huo (001) where the GAP was stated as a zero one integer program with the two objectives of total passenger walking distance and total passenger waiting time minimization. To solve the problem practically the partial objectives are aggregated into one goal function. The scalarization method was adopted in Dorndorf (00) with the GAP being modeled as a special multimode project scheduling problem with generalized precedence constraints or time windows. Ding et al. (004a 004b 004c) present a GAP in which the number of flights exceeds the number of available gates. The primary goals are to minimize the number of open (non-assigned) flights and the total connection times. A greedy algorithm and tabu search metaheuristic improved by a new neighborhood search technique are proposed to solve the problem. The remainder of this paper is organized as follows. In Section we formulate the model initially proposed in Ding

Multicriteria gate assignment 87 Downloaded by [46..06.0] at 1:01 6 November 017 et al. (004a 004b) in a bicriteria framework while adding as an extra criterion the minimization of the total flight gate assignment preference score. In Section we describe a multicriteria simulated annealing metaheuristic in general terms. Section 4 details the multicriteria simulated annealing heuristic which has been implemented for solving the GAP. The results of computational experiments are provided in Section 5 and supported with graphical illustrations. A summary and proposals for future work are given in Section 6.. Mathematical model In this section we formulate a multiple criteria version of the model originally proposed by Ding et al. (004a 004b). Following their approach the airport GAP is modeled as QAP using the following parameters. N = set of flights arriving at and/or departing from the airport; M = set of available gates at the airport; n = total number of flights i.e. n = N ; m = total number of gates i.e. m = M ; a i = arrival time of flight i; d i = departure time of flight i (a i < d i ); w kl = walking distance for passengers from gate k to gate l; f ij = number of passengers transferring from flight i to flight j; u ik = normalized preference value of assigning flight i to gate k; v i = priority value for flight i. Additionally two dummy gates are introduced. Gate 0 represents the entrance/exit (check in/out) of the airport. Gate m + 1represents the apron where flights park when no terminal gates are available. If flights are assigned to the apron then passengers are usually transferred by bus to check in/out. The binary variable π ik = 1 denotes that flight i is assigned to gate k 0 < k m + 1 and π ik = 0 otherwise. Then the objectives can be expressed as follows: min z 1 = min z = max z = n π im+1 i=1 n i=1 + n m+1 m+1 f ij w kl π ik π jl j=1 k=1 l=1 n m+1 f 0i w 0k π ik + i=1 k=1 m+1 n v i u ik π ik. i=1 k=1 n m+1 f i0 w k0 π ik i=1 k=1 (1a) (1b) (1c) Objective (1a) addresses the number of flights that are not assigned to any terminal gate (i.e. to the apron). Objective (1b) represents the total passenger walking distance. It consists of three terms: the walking distance of transfer passengers originating departure passengers and disembarking arrival passengers. Objective (1c) represents the total flight gate assignment preference value. Note that the last objective can be converted into a minimization objective by simply changing its sign. The set of restrictions is defined by the following system of constraints. The first constraint: m+1 π ik = 1 1 i n () k=1 ensures that every flight must be assigned to exactly one gate including the apron. The second constraint: π ik π jk (d j a i )(d i a j ) 0 1 i j n k m + 1 () prohibits schedule overlapping of two flights if they are assigned to the same terminal gate. The last constraint: π ik {0 1} 1 i n 1 k m + 1 (4) defines the variables to be Boolean. The mathematical model can be supplemented with several observations. First it is natural to set f ii = 0. Second in practice for two distinct flights i and j f ij and f ji exclude each other that is f ij > 0 induces f ij = 0 and vice versa. Moreover the model does not take into account the buffer time between two consecutive assignments explicitly (which is usually required for airport services and in order to have schedule flexibility to cope with unexpected earliness or tardiness of flights). However this can be achieved easily by appropriately changing the arrival and departure times. It is well known that many diverse planning tasks of practical importance can be formulated as QAP instances (Pardalos et al. 1994; Cela 1998). The QAP is an NPhard combinatorial optimization problem that dates back to the early 1960s. Applications include among others back-board wiring of electronic circuits facility location problems and certain kinds of scheduling problems. Even the single-criterion QAP is a notoriously difficult problem that is small-sized instances can in general not be solved to optimality in a reasonable amount of time. As a consequence the QAP has been important in stimulating research in approximate methods among which simulated annealing is one of the prominent candidates. To the best of our knowledge the first simulated annealing algorithm for the single-criterion QAP was published by Burkard and Rendl (1984).. Pareto simulated annealing: general description Simulated Annealing (SA) is a generic probabilistic heuristic approach originally proposed in Kirkpatrick et al. (198)

88 Drexl and Nikulin Downloaded by [46..06.0] at 1:01 6 November 017 and Kirkpatrick (1984) for global optimization. Usually SA locates a good approximation of the global optimum of a given objective function z in a large search space. At each iteration SA considers some neighbors of the current solution π and probabilistically chooses either to accept a new solution π or keep π. The probabilities are chosen so that the problem ultimately tends to move to solutions with a better objective function value. Typically this process is repeated until a solution which is good enough has been determined or until a given time limit has been reached. SA uses several basic concepts. 1. Neighborhood concept. At each iteration q the neighborhood N(π) ofsolution π is specified (usually problem specific). N(π) represents the subset of solutions π which can be reached in one iteration emanating from π. Generally it is not possible to store the neighborhood structure because the set of feasible solutions has an exponential size. To overcome this difficulty a set AM of allowed modifications F or neighborhood search moves is introduced. In this case for a given solution π the neighborhood N(π) can be defined by N(π) ={F(π) F AM}.. Probabilistic acceptance of a new neighborhood solution. In each iteration q solution π is accepted with probability: { ( P(π π T q ) = min 1 exp z(π )} ) z(π). T q This probability is decreased during the course of the algorithm. In other words we can escape a local optimum but the probability for doing so is low after a large number of iterations. This guarantees that there is a high probability of locating a global optimum while avoiding becoming trapped in local optima.. Parameter (temperature) dependent acceptance probability. The probability of making the transition to the new solution depends on a global time-varying parameter T called the annealing temperature: (T q ) q=1 is a sequence of positive control parameters with lim q T q = 0. 4. Cooling schedule. Generally the sequence (T q ) q=1 is created by a function g i.e. T q+1 = g(t q )forall q. The initial annealing temperature T 0 has to be defined in advance. 5. Termination criterion. One has the freedom to introduce different stopping criteria. Typically SA is repeated until the system reaches a state which is good enough or until a given time limit has been reached. The annealing temperature decreases to (nearly) zero shortly before termination. In order to apply SA to a particular problem we must specify the search space the neighborhood search moves the acceptance probability function the cooling schedule and the termination criterion. These choices can significantly affect the method s effectiveness. Unfortunately there is no unique choice that will be good for all problems and there is no general way to find the best choice for a given problem (see e.g. Van Laarhoven and Aarts (1987) Johnson et al. (1989 1991)). Before giving the description of a multicriteria SA technique we start with necessary definitions of optimality in the multiple criteria case. In the multiobjective case we are interested in values for a set of variables which optimize the objective functions. Contrary to the single-criterion case where the structure associated with the set of feasible solutions is totally ordered (i.e. there is no incomparability between two solutions and the definition of optimality is straightforward) in the multicriteria case this definition is no longer trivial because partial criteria which have to be optimized simultaneously are often in conflict with each other (that is incomparable). Let R γ be the set of feasible solutions. Moreover let R δ Z ={z p } δ p=1 be the mapping of δ criteria in the space of. The concept of optimality is based on the dominance relation between two vectors in the criteria space. For the case of minimization: z(π) = (z 1 (π) z (π)...z δ (π)) min π we say that π dominates π if z p (π ) z p (π) forall p = 1...δ with at least one strict inequality and it is nondominating otherwise. A set of solutions is said to be Pareto optimal if in moving from solution π belonging to the set of Pareto optimal solutions (or briefly the Pareto set) P δ to another solution π in the feasible set an improvement of the value of one criterion would at least deteriorate the value of one other criterion. In terms of vector dominance the definition of Pareto optimality can be reformulated as follows: π is a Pareto optimal solution (Pareto optimum) if and only if there exists no solution π that dominates π. Anyπ which is not Pareto optimal cannot represent an optimal solution because π such that z p (π ) z p (π) forall p = 1...δ with a strict inequality in at least one case. Thus roughly speaking the Pareto set is the set of all non-dominated solutions. The method used most commonly for solving a multicriteria problem is called the weighting method. It takes each objective function z p and multiplies it by the corresponding weighting coefficient λ p. The modified functions are then added together to obtain a single cost function which can easily be solved using any single objective method. Mathematically the new function is written as z λ (π) = δ λ p z p (π) 0 λ p 1 p=1 λ = (λ 1...λ δ ). δ λ p = 1 p=1

Multicriteria gate assignment 89 Downloaded by [46..06.0] at 1:01 6 November 017 If the problem is convex i.e. the set of feasible solutions and the objective functions are convex then a complete set of proper Pareto optimal solutions (which is a subset of the entire Pareto set) can be found ( proper in the sense of Geoffrion (1968); also see e.g. T Kindt and Billaut (00) and Ehrgott 005). However if the problem is not convex then there is no guarantee that this method will yield the entire set of Pareto optimal solutions. Usually the weighting coefficients are initialized somehow and they are varied (using parametric analysis) afterwards. It is often the case that some of the criteria are in conflict i.e. an improvement in one of them can only be achieved at the expense of worsening another. Moreover some of the criteria may be incommensurable i.e. the units used to measure the compliance with each of the criteria are not at all comparable. The incommensurability of criteria adds to the difficulty of the problem because the aggregation or comparison of different objectives is not straightforward. For solving the multicriteria GAP one might suggest to proceed as follows: (i) somehow aggregate all objectives into one goal function; and (ii) use a standard SA to resolve the new problem with the aggregated objective function. Doing so is possible of course but it is inferior to a multicriteria SA heuristic because multiple runs of the algorithm with a global aggregated objective are needed and the way of choosing aggregating coefficients is not clear. As already said it is very difficult to establish preferences among the criteria before the search. Even if this is possible preferences may change and therefore having a set of solutions facilitates the decision-making process. Pareto Simulated Annealing (PSA) proposed in Czyzak and Jaszkiewicz (1997 1998) is a multiple criteria metaheuristic that uses the concepts sketched out above for single-objective SA. Additionally it has several specific characteristics which take into account the multiple criteria nature of the problem (see Jaszkiewicz (001). 1. Use of aggregation function-based probabilities for acceptance of new neighborhood solutions. PSA uses the concept of multiple objective acceptance rules proposed by Serafini (199 1994) who was able to show that the acceptance rules guarantee that the algorithm achieves one of the Pareto optimal solutions if the temperature is decreased sufficiently slowly. In the multiple criteria case while moving from solution π to some randomly generated solution π N(π) one of the following three mutually exclusive situations may arise: (i) π dominates or is equivalent to π; (ii) π is dominated by π; (iii) π is non-dominated with respect to π. Inthe first case the new solution may be considered to be not worse than the current one and hence accepted with probability one. In the second case the new solution may be considered to be worse than the current one (π is considered as potentially Pareto optimal) and accepted with a probability less than one in order to avoid getting trapped in local optima. In the third case π and π are incomparable (and initially non-dominated). It follows that we have to introduce a multicriteria probabilistic acceptance rule which can be defined in various ways interpreted as a local aggregation of all objectives with the weighted Tchebycheff scalarizing function or weighted linear scalarizing function with reference point z(π). Thus the probability of accepting the new solution π is defined by either of the following two expressions: P 1 (π π λ T q ) = min { 1 exp P (π π λ T q ) { ( = min 1 exp ( max p=1...δ δ p=1 λ p [z p (π )} ) z p (π)] T q )} λ p [z p (π ) z p (π)]. T q. The concept of generating solutions or agents. Generally speaking this concept is a means to control the shape of the Pareto front which will be computed. Initially a set (sample) G of generating solutions with fixed cardinality G =φis randomly produced to provide a sufficiently large search space for PSA. With each of the generating solutions a separate weight vector λ π = (λ π 1...λπ δ )isassociated. For each π G the weight vector can be generated easily by the following iterative procedure. Step 1. Let I ={1...δ} and = 1; Step. Randomly choose p I; Step. If I 1 then λ π p := Random(0 1) := λ π p else λπ p := and stop; Step 4. Set I := I \{p} and go to Step. Note that corresponds to the total sum of weights δ p=1 λπ p. Manipulating these weights provides good dispersion of the outcome Pareto front and makes the solutions of PSA more representative. Generating solutions may be treated as spy agents working almost independently but exchanging information about their positions. This allows us to control the distance between agents by predicting them to be too close to each other or too far away from each other. Apparently the more agents we have the more precise information about the shape of the Pareto front we get. The optimal number of agents depends on the expected bend and shape of the Pareto front. Nevertheless a large number of agents may increase the run time of the algorithm (some agents might even duplicate others). Therefore in practice the trade-off between the number of agents and the required computation time has to be evaluated experimentally.. Management of the population of generating solutions or repulsion. The degree of repulsion α is fixed and usually takes a very small positive value close to zero. The weight vector λ π associated with a given generating solution π is modified in order to increase the probability of moving π away from its closest neighbor π in the generating sample. This is obtained by increasing the weights of the objectives for which

90 Drexl and Nikulin Downloaded by [46..06.0] at 1:01 6 November 017 π is better than π and decreasing the weights of the objectives for which π is worse than π: λ π λ π p + α if z p(π) z p ( π) p := p = 1...δ λ π p α otherwise One of the following metric distances between solutions in the space of normalized objectives is used to determine the closest neighbor π of π: (MD1) δ p=1 p=1 z p (π) z p ( π) min π G\{π} (MD) max z p(π) z p ( π) p=1...δ δ (MD) (z p (π) z p ( π)) min π G\{π} min π G\{π} An additional requirement is that the closest neighbor π has to be non-dominated with respect to π. Ifthere is no generating solution that meets this requirement each weight is either increased or decreased with probability equal to a half: P ( λ π p := λπ p + α) = P ( λ π p := λπ p α) = 1. Note that this mechanism never repulses the generating solutions outside the non-dominated set. Moreover each repulsion iteration also requires normalization to satisfy δ p=1 λπ p = 1. 4. Normalization of objectives. In real-life problems the ranges of objectives usually are quite different. The idea of PSA is to work with normalized weight vectors. So the scalarization should be applied to normalized objective values. For each objective z p p = 1...δ we introduce the so-called range equalization factor (Steuer 1986): µ p = 1 r p where r p is the (approximate) range of objective p. Objective function values multiplied by range equalization factors are called normalized objective function values. This method is working properly if the objective range is large enough. Sometimes when the exact calculation of the objective range is too difficult one can set r p equal to the expected approximate maximum value of the objective. Another possibility to normalize objectives is to restrict criteria values to the interval [01]. This is guaranteed through the normalization: z p (π) = z p(π) zp min zp max zp min where the constant terms zp max and zp min are the optimal values obtained from scalar problems where each criterion p = 1...δ is both maximized and minimized in the feasible set. 5. Updating the set of potentially Pareto optimal solutions. The set of potentially Pareto optimal solutions Ppot δ is empty at the beginning of the method. It is updated after a new solution is generated. Updating the set of potentially Pareto optimal solutions with solution π consists of: (i) adding π to Ppot δ if no solution in Pδ pot dominates π; and (ii) removing from Ppot δ all solutions dominated by π. The process of updating Ppot δ may be very time consuming. Thus several simple additional techniques could be used in order to reduce the time required for updating (e.g. new potentially Pareto optimal solutions could be added only if they differ enough from all solutions contained already in this set for other details see Jaszkiewicz (001)). PSA can also be improved by the use of some general ideas from genetic algorithms. For example during the run of the method some of the agents may get stuck in regions of the search space far from the non-dominated set. If an agent is dominated by at least another agent for a certain number of iterations he is considered to be not promising and is replaced by a solution from the set of potentially Pareto optimal solutions with the maximum distance to the closest agent. In other words the idea is closely related to selection in genetic algorithms that is biased towards non-dominated agents. The characteristics of PSA may vary depending on particular characteristics of the problem under consideration and of course substantially influence the effectiveness of PSA. Initial values of the following parameters have to be defined in advance: the number of generating solutions φ; the initial annealing temperature T 0 ; the repulsion coefficient a > 0; the cooling schedule: and the termination criterion. A flowchart of PSA summarizing all stages is presented in Fig. 1. The choice of PSA for the particular problem considered in this paper is motivated by the general observation that it is probably one of the fastest and universal probabilistic local search procedures and its main ideas are fundamental for other approaches (tabu search genetic algorithms). Another reason for choosing PSA is that it can be generalized to take into account possible uncertainty in the problem parameters (e.g. fuzzyness) an area for future research. 4. PSA: application to the GAP From a practical point of view it is of utmost importance to minimize the number of flights assigned to the apron that is objective (1a) lexicographically dominates the other two objectives. Hence the overall design of the algorithm is as follows: First we minimize objective (1a). Then PSA is applied to objectives (1b) and (1c). Hence the algorithm optimizes both lexicographically and Pareto like.

Multicriteria gate assignment 91 Downloaded by [46..06.0] at 1:01 6 November 017 Fig. 1. Flowchart of PSA. Objective (1a) is solved in the best possible way (and hence the minimum objective value z1 is obtained) with the greedy method originally proposed by Xu and Bailey (001). The basic idea is to sort all the flights according to departure times and then assign flights one by one to the earliest available gate. If no terminal gates are available for assignment then the flight is assigned to dummy gate m + 1(representing the apron). In order to keep this paper self-contained we will present the greedy algorithm here (for the sake of shortness without proof of correctness; see Ding (004a) for details). Greedy strategy Step 1. Sort the flights in non-decreasing order of departure times d 1 d... d n. Let e k denote the earliest available time for gate k. Initially set e k = 1 for all k = 1...m. Step. For each flight i:.1. find gate k with maximum earliest available time e k such that e k < a i ;.. if such a k exists assign flight i to gate k and update e k := d i otherwise assign flight i to the apron. The output of the greedy strategy is both the number of flights that can be scheduled in terminal gates z 1 (π) = φ π and an initial feasible solution π 0 z(π 0 ) = (ϕ z (π 0 ) z (π 0 )) which will be further used in the second stage that addresses the other two objectives by applying PSA. Since the first objective is already optimized fixed and cannot be improved we will omit it for the sake of shortness and write z(π) = (z (π) z (π)) π. Akey ingredient of SA is to define a suitable neighborhood. In order to do so we have to define a set AM of allowed modifications F commonly referred to as neighborhood search moves or neighborhood selection methods. All solutions which can be selected from solution π via a single move form a neighborhood N(π). To the best of our knowledge Xu and Bailey (001) were the first to define various types of neighborhoods for the airport GAP. Specifically they defined three types of moves: Insert Move Exchange 1 Move and Exchange Move respectively. The attractiveness of each move can be expressed by calculating the cost improvement function. According to Ding et al. (004a) these moves are not very flexible and cannot easily determine a good solution when schedules are dense in time e.g. during peak hours. Therefore anew type of move the so-called Interval Exchange Move was proposed in Ding et al. (004a). In order to keep this paper self-contained we will describe all these methods in terms of our model (1) () with the objectives (1b) and (1c). 1. Insert Move. This is the simplest basic type of neighborhood search move. Suppose that we have a current solution π where a flight i 0 is assigned to gate k 0.Itisclear that flight i 0 can be reassigned to some other gate if no overlapping conflicts appear. Let (i 0 k 0 ) (i 0 l 0 ) denote the move from current solution π to another solution π which inserts flight i 0 currently assigned to k 0 toanew gatel 0. Let z(π) = (z (π) z (π)) and z(π ) = (z (π ) z (π )) be the normalized (see Section ) values of the objectives. Then the cost change induced by the Insert Move: (i 0k 0 ) (i 0 l 0 ) = ( (i 0k 0 ) (i 0 l 0 ) (i 0k 0 ) (i 0 l 0 )) can be calculated as follows: (i 0k 0 ) (i 0 l 0 ) = z (π ) z (π) = m+1 g(f i0 i + f ii0 )(w jl0 w jk0 ) i i 0 j=1 + f i0 0(w l0 0 w k0 0) + f 0i0 (w 0l0 w 0k0 ) (i 0k 0 ) (i 0 l 0 ) = z (π ) z (π) = v i0 (u i0 l 0 u i0 k 0 ). This evaluation can be done in linear time O(m n).

9 Drexl and Nikulin Downloaded by [46..06.0] at 1:01 6 November 017. Exchange 1 Move. This type of neighborhood search move exchanges two flights and their gate assignment. Suppose that we want to swap flight i 0 assigned to gate k 0 and flight j 0 assigned to gate l 0. Clearly the move (i 0 k 0 ) (j 0 l 0 ) can be viewed as a composition of two Insert Moves (i 0 k 0 ) (i 0 l 0 ) and (j 0 l 0 ) (j 0 k 0 ). At the same time the cost improvement of Exchange 1 Move: (i 0k 0 ) (j 0 l 0 ) = ( (i 0k 0 ) (j 0 l 0 ) (i 0k 0 ) (j 0 l 0 )) can be calculated as the sum of cost improvements of two Insert Moves: (i 0k 0 ) (j 0 l 0 ) = (i 0k 0 ) (i 0 l 0 ) + (j 0l 0 ) (j 0 k 0 ) (i 0k 0 ) (j 0 l 0 ) = (i 0k 0 ) (i 0 l 0 ) + (j 0l 0 ) (j 0 k 0 ).. Exchange move. The third type of neighborhood move exchanges two flight pairs in the current assignment. Suppose that we want to swap apair of flights i 1 and i assigned to gate k 0 and a pair of flights j 1 and j assigned to gate l 0. Clearly the move (i 1 i k 0 ) (j 1 j l 0 ) can be viewed as a composition of two Exchange 1 Moves (i 1 k 0 ) (j 1 l 0 ) and (i k 0 ) (j l 0 ) and in turn as a composition of four Insert Moves (i 1 k 0 ) (i 1 l 0 ) (i k 0 ) (i l 0 ) (j 1 l 0 ) (j 1 k 0 ) and (j l 0 ) (j k 0 ). At the same time the cost improvement of the Exchange Move: (i 1i k 0 ) (j 1 j l 0 ) = ( (i 1i k 0 ) (j 1 j l 0 ) (i 1i k 0 ) (j 1 j l 0 )) can be calculated as sum of cost improvements of two Exchange 1 Moves: (i 1i k 0 ) (j 1 j l 0 ) = (i 1k 0 ) (j 1 l 0 ) + (i k 0 ) (j l 0 ) (i 1i k 0 ) (j 1 j l 0 ) = (i 1k 0 ) (j 1 l 0 ) + (i k 0 ) (j l 0 ) or as sum of cost improvements of four Insert Moves: (i 1i k 0 ) (j 1 j l 0 ) = (i 1k 0 ) (i 1 l 0 ) + (i k 0 ) (i l 0 ) + (j 1l 0 ) (j 1 k 0 ) + (j l 0 ) (j k 0 ) (i 1i k 0 ) (j 1 j l 0 ) = (i 1k 0 ) (i 1 l 0 ) + (i k 0 ) (i l 0 ) + (j 1l 0 ) (j 1 k 0 ) + (j l 0 ) (j k 0 ). 4. Interval Exchange Move. This method is a natural generalization of the previous ones and can be applied in cases when all other neighborhood moves fail. It was proposed in Ding et al. (004a) and it is based on swapping parts of two sequences of flights assigned to different gates. Suppose that we have a current solution π where a chain of flights i = (i 1...i ζ )isassigned to gate k 0 and a chain of flights j = (j 1...j ξ )isassigned to gate l 0.Obviously these chains of flights can be exchanged if no overlap with another flight appears that is when the time intervals t(i ) and t(j ) generated by the chains i and j are comparable. Analogous to the Exchange Move the Interval Exchange Move can be interpreted as a composition Fig.. Illustration of the point of time concept. of ζ Insert Moves for flights from chain i :(i 1 k 0) (i 1 l 0)... (i ζ k 0) (i ζ l 0) and ξ Insert Moves for flights from chain j :(j 1 l 0) (j 1 k 0)...(j ξ l 0) (j ξ k 0). At the same time the cost improvement (i k 0 ) (j l 0 ) of Interval Exchange Move can be calculated as the sum of cost improvements of ζ + ξ Insert Moves. The comparability problem of two chains of flights can be easily resolved using the concept point of time (see Fig. ). With each chain of flights we associate four points of time t 1 t t t 4 as follows: t 1 : the earliest available time; t : the start time; t : the end time; t 4 : the latest available time. Using these points of time we can describe four situations when two chains i and j are not comparable and cannot be exchanged between two gates k 0 and l 0 i.e. when conflicts of overlap occur: t (i ) < t 1 (j ): i starts earlier than j is available; t (j ) < t 1 (i ): j starts earlier than i is available; t (j ) > t 4 (i ): i is not available before the end of j ; t (i ) > t 4 (j ): j is not available before the end of i. The Interval Exchange Move works as follows. We start with two flights assigned to different gates having an overlap. Then we initialize the intervals associated with these flights. If an exchange is impossible we extend the interval by adding the adjacent flight according to the following rules: t (i ) < t 1 (j ): j is extended by adding the adjacent left flight; t (j ) < t 1 (i ): i is extended by adding the adjacent left flight; t (j ) > t 4 (i ): j is extended by adding the adjacent right flight; t (i ) > t 4 (j ): i is extended by adding the adjacent right flight. Doing so we either find two comparable intervals and then i can be exchanged with j orthe exchange move fails.

Multicriteria gate assignment 9 Downloaded by [46..06.0] at 1:01 6 November 017 5. Apron Move. This method exchanges a flight that is assigned to the apron with a flight that is assigned to a terminal gate. As the minimum number of flights assigned to the apron cannot be improved anymore (because it was optimized by the greedy strategy) we can perform only Exchange 1 or Exchange Moves. This method applied to the initial feasible assignment constructed by the greedy strategy can be useful in generating a set of agents G for PSA. The algorithm is summarized as follows. Step 1. Construct an initial feasible solution π 0 by the greedy strategy. Set the annealing temperature T as a linear function of the input size T = T 0 n where T 0 is the starting temperature and n is the number of flights. Initialize the list of potential Pareto optimal solutions: Ppot ={π0 }. Define the number of agents φ. Initialize the repulsion coefficient α. Step. If φ = 1 then solution π 0 represents a single agent otherwise if the number of agents is greater than one generate set G G =φ of agents using π 0 and the Apron Move. Attach a normalized weight vector λ π = (λ π λπ )toeach of the generating solutions π G. Update Ppot by checking dominance relations between agents. Step. For each agent π G do:.1. Select agent π G which is nearest (Euclidian metric MD in normalized vector objective space is used) to π and non-dominated with respect to π. Ifthere is no such solution π then each objective is increased or decreased with probability equal to a half: else P ( λ π p := λπ p + α) = P ( λ π p := λπ p α) = 1 p = { λ π λ : = π + α if z (π) z ( π) λ π α otherwise { λ π λ : = π + α if z (π) z ( π) λ π α otherwise. Normalize the weights such that λ π + λπ = 1... Determine the type of neighborhood move used in the current iteration: Insert Move Interval Exchange Move or Apron Move (details are given below). Randomly generate a neighborhood π of this type and calculate the cost if the generated neighborhood move is performed... If π is non-dominated by π then update P pot..4. Accept π instead of π with probability: P(π π λ T) = min { ( λ p [ z p (π )} ) z p (π)] 1 exp a max p = b T where a and b are constants that define the acceptance rate. Step 4. If the condition for changing the annealing temperature is fulfilled decrease T. Step 5. If termination criterion is valid then stop; otherwise go to Step. 5. Computational experiments An experimental version of the PSA algorithm was coded using Java Development Kit version 5.0 update 1.0 and implemented on a Pentium machine with a 1.7 GHz clockpulse and a 51 Mb RAM. In order to evaluate the algorithm we use an instance which is constructed as follows: 1. Airport gates and walking distances. Basically we assume that the layout of a representative airport consists of two parallel terminals and symmetrically located gates. The total number of terminal gates m is set to 0 where each terminal has ten gates; gates 0 and 1 represent the airport entrance (exit) and the apron respectively (see Fig. ). The distance between gates is measured according to the Manhattan metric i.e. passengers are allowed to move only horizontally and vertically; the distance between two terminals is equal to two the distance between two neighboring gates belonging to the same terminal is equal to one. Accordingly the (0 0)-distance matrix W = (w ij ) is defined as 0 if i = j w ij = i j if (i) max{i j} 10 min{i j} + if (ii). where (i) :(i < 11) (j 10) (i > 10) (j 11) (ii) :(i < 11) (j 11) (i > 10) (j 10) Fig.. Airport terminal layout.

94 for i = 1... 0 and j = 1... 0. Additionally the walking distances between the gates and the airport entrance (exit) for embarking (disembarking) passengers are assumed to be symmetric and were fixed as follows: w0i = wi0 = w010+i = w10+i0 = i + i = 1... 10. The walking distances between the apron and the airport gates were fixed as follows: w1i = wi1 = w110+i = i + 1 i = 1... 10 i.e. an assignment to the apron is penalized with an extra walking distance equal to ten. Downloaded by [46..06.0] at 1:01 6 November 017. Time slot and flights. We consider a time horizon of about 4 hours and 0 minutes. The total number of flights n to be scheduled in this time period equals 100. The arrival time ai of flight i is randomly generated in the interval [10 i/5 10 i/5 + 0]. The departure time di of flight i is randomly generated in the interval [ai + 5 ai + 45] that is di formally depends on the arrival time ai. Thus the overall time interval measured in minutes is [0 65]. Fig. 4. Illustration of experiment A. Drexl and Nikulin. Passenger flow. For each pair of flights i and j such that ai < dj D the passenger flow fij is randomly generated from the interval: C. 0... (dj D ai )/10 + 1 Here C and D are constants defining the maximum passenger flow and the minimum buffer time required for transfer passengers respectively. We set C = 50 and D = 0. For the case where the condition ai < dj D is not satisfied fij is set to zero. The number of embarking/disembarking passengers is usually larger than the number of transfer passengers and hence fi0 and f0i were randomly generated from the interval [0100] for flight i. 4. Priorities and preferences. For flight i the priority value vi is randomly generated from the interval (0 1). Likewise for each flight gate combination (i k) the preference value uik of assigning flight i to gate k is randomly generated from the interval

Multicriteria gate assignment 95 Downloaded by [46..06.0] at 1:01 6 November 017 (0 1). Furthermore u im+1 is set to zero for every flight i. For the computations we use the following procedure parameters: initial annealing temperature T 0 = n; cooling schedule T q = 0.998 q T 0 ; termination criterion: we stop when the annealing temperature decreases below 10 4 ; the constants a and b which define the acceptance probability are set to one. After constructing an initial solution by the greedy strategy optimizing the first objective we subsequently apply the Apron Move toflights assigned to the apron until a set of agents has been created. This set contains nine new generating solutions. Hence including the initial solution the total number of agents equals ten if dominance does not apply. With each agent π a scalarization coefficient λ π = (λ π λπ ) is associated and the repulsion coefficient is set to 0.01. The normalization factor for the second and third objectives is equal to 1/z and 1/z where z and z are the objective values of the initial solution. In each iteration of PSA we randomly choose a flight number and a terminal gate number. If the flight is assigned to the apron we perform the Apron Move otherwise the Insert Move is applied and if the latter fails we perform the Interval Exchange Move. We proceed until the termination criteria are met. Based on the model parameters given above we generated an instance at random; due to space limitations we do not present it in this paper but the complete instance the PSA code and entire output of the algorithm can be obtained from the corresponding author upon request. Now we present the results of the computational experiments. The PSA was executed twice starting with different seed points for random number generation in order to compare the results obtained. Usually the algorithm terminates after at most q = 700 iterations which means that around 1500 Apron Moves 000 Insert Moves and 75 000 Interval Exchange Moves have been performed. Note that the Interval Exchange Move never fails because all flights arrive and depart inside the given time interval. The average amount of CPU time needed for one run of PSA is roughly 0 seconds. In what follows we briefly summarize the outcome of both runs (called experiments A and B). Experiment A terminates after 748 iterations (final annealing temperature T = 0.000 099); the output contains 9 potentially Pareto Fig. 5. Illustration of experiment B.

96 Drexl and Nikulin Downloaded by [46..06.0] at 1:01 6 November 017 optimum solutions. Experiment B with the same instance (and the same procedure parameters) also terminates after 748 iterations (with the same final annealing temperature T = 0.000 099); the output contains 44 potentially Pareto optimum solutions. Figure 4 provides a graphical illustration of experiment A while Fig. 5 illustrates experiment B. In both figures a black bold point represents an initial solution generated by the greedy strategy whereas small grayish points represent the various agents generated during the course of the algorithm. The output of PSA consists of crosses which are elements of P pot. The results are quite typical for PSA. The agents move permanently towards the mainstream optimization gradient (second objective minimization and third objective maximization). Moreover after a certain number of iterations the repulsion mechanism forces them to be far enough from each other such that a good cover of the whole search space is obtained. The SA and the genetic algorithm policies described above help to avoid agents getting lumpy and hence almost all agents are still active upon termination of the algorithm and contribute to the final shape of the Pareto front. Finally we would like to note that we have observed both the convergence properties and the results provided for this single instance for a variety of other instances as well. For the sake of shortness we do not reproduce these results in this paper. From a decision makers point of view the goal of multiple objective optimization is to find the single solution giving the best compromise between multiple objectives. Thus generating a sample of solutions approximating the whole or a part of the non-dominated set in general does not solve the original problem but is just a step in the search for the best compromise. Of course in some cases the decision maker may be able to select the best compromise from the approximation of the non-dominated set without any further support. This is easily possible in the biobjective case where graphical visualization is possible. In general however in order to get at least an idea of such an estimate we have to evaluate the best value of each particular objective by some exact procedure e.g. branch and bound and then introduce a metric distance between a reference point and an approximate point generated by PSA (see e.g. Jaszkiewicz (001)). Unfortunately it might be even too costly to evaluate the exact value of a single objective by a branch-and-bound technique for instances of reasonable size and hence this idea does not work in practice. Finally we want to emphasize that PSA does not compute the entire Pareto set but only a representative approximation of the Pareto front. After having obtained a reasonable approximation of the Pareto set one can apply different post-processing strategies in order to estimate the robustness or some other characteristics of the optimal solutions and to choose the one which is best suited (see e.g. Scholl (001) and T Kindt and Billaut (00)). 6. Summary and future work This paper deals with the airport GAP under multiple criteria. The objectives are to minimize the number of ungated flights and the total passenger walking distances (or connection times) as well as to maximize the total gate assignment preferences. We have proposed a PSA heuristic to solve the problem effectively and efficiently. The results of computational experiments are presented. The development of other metaheuristic methods which are well suited for flight gate scheduling under multiple objectives is an important area of future research. Here of course our testbed containing relatively small but welldesigned instances might be useful to stimulate competitive research. Another interesting direction is to consider the application of PSA to a flight gate scheduling problem modeled as a special multi-mode resource-constrained project scheduling problem with generalized precedence constraints or time windows; see Dorndorf et al. (004). The taking into account of possible uncertainty in problem parameters (such as e.g. fuzzyness of flight arrival and departure times) is mentioned above also an area for future research. Last but not least our algorithm should be implemented in C in order to get a really fast code for solving the large-scale instances that arise in practice. Acknowledgements The authors are indebted to Harm Brandt and Jan Spitzmann for their help in coding the algorithms. Furthermore we thank the two anonymous referees for their detailed comments which helped to position and clarify the paper. Finally financial support by the German Science Foundation (DFG) through the grant Planung der Bodenabfertigung an Flughäfen (Dr 170/9-1 9-) is gratefully acknowledged. References Babic O. Teodorovic D. and Tosic V. (1984) Aircraft stand assignment to minimize walking. Journal of Transportation Engineering 110 55 66. Bihr R. (1990) A conceptual solution to the aircraft gate assignment problem using 0 1 linear programming. Computers & Industrial Engineering 19 80 84. Burkard R. and Rendl F. (1984) A thermodynamically motivated simulation procedure for combinatorial optimization problems. European Journal of Operational Research 17 169 174. Cela E. (1998) The Quadratic Assignment Problem: Theory and Algorithms Kluwer Dordrecht The Netherlands. Czyzak P. and Jaszkiewicz A. (1997) Pareto simulated annealing in Proceedings of the 1th International Conference on Multiple Criteria Decision Making Fandel G. and Gal T. (eds) Springer Berlin Germany pp. 97 07. Czyzak P. and Jaszkiewicz A. (1998) Pareto simulated annealing a metaheuristic technique for multiple-objective combinatorial