17
This article was downloaded by: [Van Pelt and Opie Library] On: 17 October 2014, At: 06:22 Publisher: Taylor & Francis Informa Ltd Registered in England and Wales Registered Number: 1072954 Registered office: Mortimer House, 37-41 Mortimer Street, London W1T 3JH, UK International Journal of Production Research Publication details, including instructions for authors and subscription information: http://www.tandfonline.com/loi/tprs20 The multi-resource agent bottleneck generalised assignment problem Özlem Karsu a & Meral Azizoğlu a a Department of Industrial Engineering , Middle East Technical University , Ankara 06531 , Turkey Published online: 03 Jun 2011. To cite this article: Özlem Karsu & Meral Azizoğlu (2012) The multi-resource agent bottleneck generalised assignment problem, International Journal of Production Research, 50:2, 309-324, DOI: 10.1080/00207543.2010.538745 To link to this article: http://dx.doi.org/10.1080/00207543.2010.538745 PLEASE SCROLL DOWN FOR ARTICLE Taylor & Francis makes every effort to ensure the accuracy of all the information (the “Content”) contained in the publications on our platform. However, Taylor & Francis, our agents, and our licensors make no representations or warranties whatsoever as to the accuracy, completeness, or suitability for any purpose of the Content. Any opinions and views expressed in this publication are the opinions and views of the authors, and are not the views of or endorsed by Taylor & Francis. The accuracy of the Content should not be relied upon and should be independently verified with primary sources of information. Taylor and Francis shall not be liable for any losses, actions, claims, proceedings, demands, costs, expenses, damages, and other liabilities whatsoever or howsoever caused arising directly or indirectly in connection with, in relation to or arising out of the use of the Content. This article may be used for research, teaching, and private study purposes. Any substantial or systematic reproduction, redistribution, reselling, loan, sub-licensing, systematic supply, or distribution in any form to anyone is expressly forbidden. Terms & Conditions of access and use can be found at http:// www.tandfonline.com/page/terms-and-conditions

The multi-resource agent bottleneck generalised assignment problem

  • Upload
    meral

  • View
    212

  • Download
    0

Embed Size (px)

Citation preview

Page 1: The multi-resource agent bottleneck generalised assignment problem

This article was downloaded by: [Van Pelt and Opie Library]On: 17 October 2014, At: 06:22Publisher: Taylor & FrancisInforma Ltd Registered in England and Wales Registered Number: 1072954 Registered office: Mortimer House,37-41 Mortimer Street, London W1T 3JH, UK

International Journal of Production ResearchPublication details, including instructions for authors and subscription information:http://www.tandfonline.com/loi/tprs20

The multi-resource agent bottleneck generalisedassignment problemÖzlem Karsu a & Meral Azizoğlu a

a Department of Industrial Engineering , Middle East Technical University , Ankara 06531 ,TurkeyPublished online: 03 Jun 2011.

To cite this article: Özlem Karsu & Meral Azizoğlu (2012) The multi-resource agent bottleneck generalised assignmentproblem, International Journal of Production Research, 50:2, 309-324, DOI: 10.1080/00207543.2010.538745

To link to this article: http://dx.doi.org/10.1080/00207543.2010.538745

PLEASE SCROLL DOWN FOR ARTICLE

Taylor & Francis makes every effort to ensure the accuracy of all the information (the “Content”) containedin the publications on our platform. However, Taylor & Francis, our agents, and our licensors make norepresentations or warranties whatsoever as to the accuracy, completeness, or suitability for any purpose of theContent. Any opinions and views expressed in this publication are the opinions and views of the authors, andare not the views of or endorsed by Taylor & Francis. The accuracy of the Content should not be relied upon andshould be independently verified with primary sources of information. Taylor and Francis shall not be liable forany losses, actions, claims, proceedings, demands, costs, expenses, damages, and other liabilities whatsoeveror howsoever caused arising directly or indirectly in connection with, in relation to or arising out of the use ofthe Content.

This article may be used for research, teaching, and private study purposes. Any substantial or systematicreproduction, redistribution, reselling, loan, sub-licensing, systematic supply, or distribution in anyform to anyone is expressly forbidden. Terms & Conditions of access and use can be found at http://www.tandfonline.com/page/terms-and-conditions

Page 2: The multi-resource agent bottleneck generalised assignment problem

International Journal of Production ResearchVol. 50, No. 2, 15 January 2012, 309–324

The multi-resource agent bottleneck generalised assignment problem

Ozlem Karsu and Meral Azizoglu*

Department of Industrial Engineering, Middle East Technical University, Ankara 06531, Turkey

(Received 24 June 2010; final version received 7 October 2010)

In this study, we consider the multi resource agent bottleneck generalised assignment problem. Our aim isto minimise the maximum load over all agents. We take our motivation from an assignment problem facedin heating, ventilating and air conditioning sector. We study the linear programming (LP) relaxation of theproblem. We use the optimal LP relaxation solutions in our branch and bound algorithm while definingbounding and branching schemes. We find that our branch and bound algorithm returns optimal solutions tothe problems with up to 60 jobs when the number of agents is 5, and up to 30 jobs when the number of agentsis 10, in less than 20 minutes. To find approximate solutions, we define a tabu search algorithm and �approximation algorithm. Our computational results have revealed that both algorithms can find high qualitysolutions to large sized instances very quickly. To the best of our knowledge our study is the first reportedattempt to solve the problem. We hope our study fills an important gap in the literature.

Keywords: bottleneck generalised assignment problem; multi periods; branch and bound algorithm; linearprogramming relaxation

1. Introduction

Assignment problems are stimulated by the situations where scarce resources are to be allocated to the tasks.The importance of the assignment problems stems from their direct applications and their roles as sub-problemsin several operation research problems.

The classical assignment problem (AP) assigns the tasks to the resources such that each resource, so called agent,handles at most one task and each task is assigned to exactly one agent, and the total cost over all assignmentsis minimised.

The generalised assignment problem (GAP) is an extension on the classical model which assumes that the agentshave limited availabilities, the tasks have defined resource consumptions and more than one task can be assignedto one agent. The GAP has many real-life applications including, but not limited to, fixed-charge plant locationproblems (Cattrysee and Van Wassenhove 1992), p-median location problems (Ross and Soland 1977), cellformation problem in cellular manufacturing systems (Shtub 1989), routing problems (Fisher and Jaikumar 1981),designing communications networks (Grigoriadis et al. 1974), allocating cross-trained workers to the multipledepartments (Campbell and Diaby 2002).

An extension to the GAP is the multi-resource GAP (MRGAP) where each agent consumes multiple resourcesin performing his/her tasks. Some cited practical applications of the MRGAP are allocating the processors anddatabases to the nodes of a distributed computer system (Pirkul 1986, Gavish and Pirkul 1986), truck routing(Murphy 1986), cargo loading on ships, warehouse designing and work load planning in job shops (Gavish andPirkul 1991). Mazzola et al. (1989) discuss the application of the MRGAP in a rough cut capacity planning modelfor flexible manufacturing systems in materials requirements planning.

The GAP has been studied for many decades and many algorithms have been developed for its solution(see Cattrysee and Van Wassenhove (1992) for an extensive review). However, the literature on the MRGAP is quitescarce. The most noteworthy MRGAP studies are due to Gavish and Pirkul (1991), Mazzola and Wilcox (2001),Yagiura et al. (2004) and Mitrovic-Minic and Punnen (2009).

The GAP and MRGAP minimise the total cost over all assignments; hence consider min-sum type objectives.The GAP and MRGAP that consider min-max type objectives are called the bottleneck GAP and bottleneckMRGAP, respectively. Martello and Toth (1995) mention that min-sum objectives fit better to the private sectors.

*Corresponding author. Email: [email protected]

ISSN 0020–7543 print/ISSN 1366–588X online

� 2012 Taylor & Francis

http://dx.doi.org/10.1080/00207543.2010.538745

http://www.tandfonline.com

Dow

nloa

ded

by [

Van

Pel

t and

Opi

e L

ibra

ry]

at 0

6:22

17

Oct

ober

201

4

Page 3: The multi-resource agent bottleneck generalised assignment problem

On the other hand, the min-max objectives fit better to the public sectors where the satisfaction of all customersis important. For example, while locating the emergency service facilities, minimising the longest distance betweenthe service facility and customer is an important concern.

The bottleneck generalised assignment problems (BGAPs) are categorised as task-based and agent-basedproblems. The task-based BGAP (TBGAP) minimises the maximum cost over all assignments whereas the agent-based BGAP (ABGAP) minimises the maximum cost over all agents. The TBGAP has been studied by Mazzolaand Neebe (1988), Mazzola and Neebe (1993) and Martello and Toth (1995), Chauvet et al. (2000). Francis andWhite (1974) model a facility layout problem involving the assignment of pallet loads to loading docks as a TBGAP.Mazzola and Neebe (1993) discuss the application of the TBGAP to the p-median location problem where theobjective is to minimise the maximum response time to any one of the demand points. However, to the best of ourknowledge, there is no reported work on the ABGAP. Recognising this fact and its wide range of practicalapplications, we consider the multi-resource agent bottleneck generalised assignment problem (MRABGAP).

One practical application that we take our motivation from is faced in a well recognised firm in the heating,ventilating and air conditioning sector in Turkey. The problem is to assign agents to the opportunities (tasks) suchthat the agent assigned to an opportunity will follow it for multiple periods. The agents have limited time for eachperiod, and the time requirement of an opportunity changes according to the agent it is assigned. It is essentialthat an opportunity is assigned to a single agent. This is because it would take time to co-ordinate the agents tofollow a single opportunity and the communication between the agents would slow down the process if multipleagents were responsible from a single opportunity. On the other hand, due to the capacity limitations, the agentsshould serve a limited number of opportunities. Moreover, the workload balance between the agents should beregarded from a managerial perspective. Even when the capacity of an agent permits to serve all opportunitiesand this agent serves at the fastest pace, the balanced solution would assign only a subset of the opportunities to thisagent and the rest to the other slower agents.

Our motivating case can be extended to the manufacturing environments where the agents are replaced bymachines (workers) of limited capacity and arbitrary pace. The opportunities are the operations that need to beprocessed for an arbitrary number of periods by the same machine (worker). The production manager who concernsa balanced workload among his machines (workers) would favour a solution with low maximum machine (worker)workload.

In this study we present solution algorithms to the MRABGAP with the hope of filling an important gap in theliterature. We design a branch and bound algorithm that is based on the linear programming relaxation solutions.Our branch and bound algorithm can handle the problems with up to 60 tasks for five agents and up to 30 tasksfor 10 agents and up to five periods in reasonable solution times. Our heuristic algorithms; namely tabu searchalgorithm and � approximation algorithm, provide near-optimal solutions for large sized instances, very quickly.

The rest of the paper is organised as follows. In Section 2, we present our problem and give its mathematicalprogramming model. In Section 3, we give the linear programming relaxation bounds. We present our branch andbound algorithm in Section 4 and heuristic procedures in Section 5. We report the results of our computationalexperience in Section 6. Section 7 concludes the study with our main findings and future research suggestions.

2. Problem definition

We consider n tasks to be assigned to m agents. The available capacity of agent i in period t is defined as bit; pijt isthe time required by task j in period t if performed by agent i.

We use a binary variable xij to explain our assignment decisions where

xij ¼1 if task j is assigned to agent i

0 otherwise

� �

Our constraints are as stated below.

Xnj¼1

pijtxij � bit 8i ¼ 1, . . . ,m, 8t ¼ 1, . . . , s ð1Þ

Xmi¼1

xij ¼ 1 8j ¼ 1, . . . , n ð2Þ

310 O. Karsu and M. Azizoglu

Dow

nloa

ded

by [

Van

Pel

t and

Opi

e L

ibra

ry]

at 0

6:22

17

Oct

ober

201

4

Page 4: The multi-resource agent bottleneck generalised assignment problem

Xnj¼1

Xst¼1

pijtxij � Z 8i ¼ 1, . . . ,m ð3Þ

xij ¼ 0 or 1 8i ¼ 1, . . . ,m, 8j ¼ 1, . . . , n ð4Þ

Constraint set (1) ensures that the capacities of the agents are not exceeded and constraint set (2) ensures that eachtask is assigned to one agent. Constraint set (3) defines Z, i.e. the maximum load over all agents. The assignmentrestrictions are given by constraint set (4). Our objective function is simply to minimise Z.

We illustrate feasible and optimal solutions on an example problem instance with m¼ 3 agents n¼ 6 tasks ands¼ 2 periods. The data are tabulated in Table 1.

One feasible solution sets x21¼ x12¼ x33¼x24¼x35¼ x16¼ 1 and other xijs are 0. An optimal solution setsx21¼ x32¼ x13¼ x24¼ x35¼x36¼ 1 and other xijs are 0. The loads of the agents in these solutions are demonstratedin Figure 1.

Note that agent 3 is the bottleneck agent in both solutions. In the feasible solution, its load is 45 units, whereasin the optimal solution its load is reduced to 30 units, i.e. Z¼ 30. The optimal solution has the smallest maximumload, hence a smoother workload distribution between the agents.

The feasibility version of the GAP is NP-complete in the strong sense (Martello and Toth 1990). This follows ourproblem – having the same feasible region with the GAP – is strongly NP-hard.

3. Lower bounds

We develop three lower bounds on the optimal value of the MRABGAP. These are namely Lower Bound 1, LowerBound 2 and Linear Programming (LP) Relaxation Based Lower Bound.

3.1 Lower Bound 1 (LB1)

Consider the following relaxations of our problem:

. The capacities of the agents are unlimited (hence remove constraint set (1)).

. The tasks can be split between the agents (hence relax the integrality of xijs).

. The total load of each task is underestimated by its minimum time over all agents.

. The optimal solution to our problem with the above relaxations is LB1, where

LB1 ¼

Pj Mini

Pt pijt

� �m

:

A feasible solution

3328

45

0102030405060

1 2 3

Agent

The optimal solution

25 28 30

0102030405060

1 2 3

Agent

Figure 1. The total loads of the agents.

Table 1. pijt and bit values of the example problem.

Agent/Task

pij1

bi1

pij2

bi21 2 3 4 5 6 1 2 3 4 5 6

1 6 10 7 7 11 7 18 7 10 5 4 12 6 182 6 9 11 8 8 11 16 5 11 10 9 9 12 163 6 5 12 12 11 13 23 6 4 12 14 10 13 30

International Journal of Production Research 311

Dow

nloa

ded

by [

Van

Pel

t and

Opi

e L

ibra

ry]

at 0

6:22

17

Oct

ober

201

4

Page 5: The multi-resource agent bottleneck generalised assignment problem

This follows, LB1 is a valid lower bound on the optimal objective function value, Z*. The theorem below states this

result formally.

Theorem: LB1 is a lower bound on Z*.

Proof: Let TATj denote the time task j takes at the optimal solution. The total load by all tasks isXj

TATj:

Note that

TATj �Mini

Xt

pijt

( ),

hence

Xj

TATj �Xj

Mini

Xt

pijt

( ):Xj

Mini

Xt

pijt

( )

is the total load if all the tasks are performed by their fastest agent, i.e. total load of the task is underestimated.

When the integrality constraints on xij values are relaxed and capacity constraints are removed, the optimal solution

divides the load

Xj

Mini

Xt

pijt

( )

evenly between all agents, and give an objective function value of

Xj

Mini

Xt

pijt

( ),m:

Hence LB1 is a valid lower bound on the optimal objective function value, as it is an optimal solution to a relaxed

problem where some parameters are underestimated and some constraints are relaxed.We extend LB1 to partial schedule S of assigned tasks where Zi is the load of agent i, hence BL¼MaxifZig

defines the bottleneck load. We calculate the minimum load over the unassigned tasks as

Xj =2 S

Mini

Xt

pijt

( )

and distribute it to the agents until all are full with BL units. The remaining load, if any,

Max 0,Xj =2 S

Mini

Xt

pijt

( )� BL �mð Þ �

Xi

Zi

" #( )

is distributed evenly among m agents. The lower bound, LB1(S) is available by the following expression:

LB1ðSÞ ¼ BL þMax 0,

Pj =2 S

Mini

Pt pijt

� �� ðBL �mÞ �

Pi Zi

� �m

8><>:

9>=>;:

We strengthen LB1(S) considering only the agents having enough capacity for a particular task. In doing so, for task

j, we select the minimum time over the agents such that pijt � capit where capit is the remaining capacity of agent i

in period t.We illustrate LB1(S) and its strengthened version on our example problem.

312 O. Karsu and M. Azizoglu

Dow

nloa

ded

by [

Van

Pel

t and

Opi

e L

ibra

ry]

at 0

6:22

17

Oct

ober

201

4

Page 6: The multi-resource agent bottleneck generalised assignment problem

When S is empty, i.e. LB1(S)¼LB1

LB1 ¼

P6j¼1 Mini

P2t¼1 pijt

n om

¼Min 6þ 7, 6þ 5, 6þ 6f g þMin 10þ 10, 9þ 11, 5þ 4f g þMin 7þ 5, 11þ 10, 12þ 12f gþ

Min 7þ 4, 8þ 9, 12þ 14f g þMin 11þ 12, 8þ 9, 11þ 10f g þMin 7þ 6, 11þ 12, 13þ 13f g

� ,3

¼ ð11þ 9þ 12þ 11þ 17þ 13Þ=3 ¼ 24:33

Now assume S ¼ f2, 3, 5g where tasks 2, 3 and 5 are assigned to agents 1, 2 and 3, respectively. This follows Z1¼ 23,Z2¼ 21, Z3¼ 9 hence BL ¼Maxf23, 21, 9g ¼ 23.

LB1ðSÞ ¼ 23þMax 0, 11þ 11þ 13� 23 � 3� 23þ 21þ 9ð Þð Þ½ �=3� �

For strengthened LB1ðSÞ we compute the remaining capacities of the agents, i.e. capit and they are shown in Table 2.Note that task 1 requires 6 units in period 1. However, agent 2 is available for 5 units; hence agent 2 cannot

define the minimum time of task 1. The minimum time is defined among agents 1 and 3, which is 12 units. Hence westrengthen LB1(S) as

LB1ðSÞ ¼ 23þMax 0, 12þ 11þ 13� ð23 � 3� ð23þ 21þ 9ÞÞ½ �=3� �

¼ 29:6

We hereafter use LB1(S) to refer to strengthened LB1(S).

3.2 Lower Bound 2 (LB2)

LB1 assigns all tasks to their minimum time agents. The minimum time agent for many tasks may correspond to thesame agent and the capacity of that agent may not suffice to its assigned tasks. LB2 recognises this fact and definesan upper bound on the number of tasks to be assigned to each agent in any feasible solution. We let this upperbound be ni for agent i and in defining the total load we select a maximum of ni tasks from agent i. We find ni usingthe following procedure:

(i) Find an upper bound on the objective function value, ZUB.(ii) Sort the

Pt pijt values from minimum to maximum for an agent i, such that

Pt pijt �

Pt pijþ1t for all j.

(iii) Find ni from

Xnij¼1

Xt

pijt �Min ZUB,Xt

bit

( )and

Xniþ1j¼1

Xt

pijt 4Min ZUB,Xt

bit

( ):

As the minimum times are considered, ni is an upper bound on the number of tasks that agent i can process.Having found the ni values, we find the number of tasks that are assigned to agent i in LB1(S) computations.

We let this number be ri.Formally ri¼ number of js such that

Minij pijt�capit

Xt

pijt

( )¼Xt

pijt:

Table 2. The available capacities of the agentsfor the example problem.

Agent

capit

Period 1 Agent

1 7 12 5 23 18 3

International Journal of Production Research 313

Dow

nloa

ded

by [

Van

Pel

t and

Opi

e L

ibra

ry]

at 0

6:22

17

Oct

ober

201

4

Page 7: The multi-resource agent bottleneck generalised assignment problem

Hence at least Maxf0, ri � nig tasks are assigned to agent i by violating its capacity. We aim to reassignXi

Maxf0, ri � nig

tasks to their second minimum agents. To ensure the validity of the lower bound the selected second minimumagents are the ones that cause minimum increase in the total load value. The total remaining workload is calculatedas in LB1.

We illustrate LB2 computations on our previous example instance. The ordered processing times of theunassigned tasks by agent 1 are 11, 13, 13. We assume ZUB¼ 13; n1 is 1 as 11� 13 and 11þ 134 13. The other nivalues are calculated similarly and tabulated below together with the ri values.

One task will be reassigned as Xi

Maxf0, ri � nig ¼ 1:

To find the task and its new agent, we calculate the minimum and second minimum loads and tabulate them below:Task 1 can be processed only by its minimum task agent. The minimum difference occurs when task 6 is

reassigned to its second minimum agent. We select task 6 and calculate LB2 as follows:

LB2 ¼ 23þ ½ð12þ 11þ 26Þ � ðð23 � 3Þ � ð23þ 21þ 9ÞÞ�=3 ¼ 34

Note that LB1 is improved by about 4 units.

3.3 Linear programming relaxation based lower bound (LB3)

LB3 is found by simply relaxing the integrality constraints on xij values and letting 0 � xij � 1 for all i and j. LB3

dominates LB1 as it considers the capacity constraints and exact time values.We propose a strengthened version of LB3 using an upper bound on the number of tasks that can be assigned

to an agent (ni as found for LB2). We add the following constraint set to the LP relaxation:Xj

xij � ni 8i

We hereafter refer to this strengthened LP relaxation as LB3.

4. Branch and bound algorithm

Our branch and bound (B&B) algorithm takes its motivation from the satisfactory behaviour of linear programming(LP) relaxation. We use the optimal solution of the LP relaxation to guide the search and the associated objectivefunction value as a lower bound. We select the highest fractional variable of the LP relaxation solution and branchon this task for each of the m agents. The associated tree is shown in Figure 2.

To find an initial upper bound, ZBEST, we modify the LP relaxation solution as follows: we assign eachfractional task to its highest fractional agent. We then improve the solution by two move types. The first move takesone task from the bottleneck agent and reassigns it to another agent. The second move interchanges two tasksbetween the bottleneck agent and a non bottleneck agent. The change that leads to maximum improvement in theobjective function value is performed. We terminate if the number of non improving moves reaches 250 or 1000iterations are performed.

We update ZBEST whenever a complete solution with smaller objective function value is found.

Table 3. The ni and ri values of theexample problem.

Agent i ni ri

1 1 22 1 03 2 1

Table 4. The difference between minimum and second minimum loads.

Task Minimum total load Second minimum total load Difference

1 12 – –4 11 26 156 13 26 13

314 O. Karsu and M. Azizoglu

Dow

nloa

ded

by [

Van

Pel

t and

Opi

e L

ibra

ry]

at 0

6:22

17

Oct

ober

201

4

Page 8: The multi-resource agent bottleneck generalised assignment problem

We fathom a node representing the assignment of task j to agent i if one of the following conditions holds:

(1) If the available capacity of agent i is not sufficient for task j in any period, the node cannot lead to a feasiblesolution, hence it is fathomed.

(2) Let �ni be an upper bound on the number of unassigned tasks that agent i can process by its remainingcapacity and �n is the number of unassigned tasks. IfX

i

�ni 5 �n

then the remaining tasks cannot be processed and the node is fathomed.(3) We fathom the node if the total load of the agent after the assignment, i.e.

ZiðSÞ þXt

pijt,

is not below ZBEST.(4) If Si includes all unassigned tasks that can be feasibly performed by agent i, however increase the load

of agent i, say Zi(S), above Z(S) then we update ZBEST if Zi(S) is smaller. If all tasks in Si can be feasiblyassigned to agent i and this does not increase its load above Z(S) then we assign all tasks in Si to agent i andreduce the problem size. If moreover Si includes all unassigned tasks then we fathom the node and updateZBEST.

We remove agent i from all future considerations if it cannot process any unassigned task due to its availablecapacity, i.e.

bitðSÞ5 Minj

Xt

pijt

( )

for any period t or the optimal assignment to agent i is available.For each unfathomed node, we first calculate LB1. If LB1 cannot eliminate the node we calculate LB2. If LB2

cannot eliminate as well, we calculate the LP relaxation bound, LB3. We select the node having the smallest LB3

value for further branching. If any lower bound gives a feasible solution then we fathom the node and update ZBEST

if the lower bound value is smaller. If all nodes are fathomed at any level then we backtrack to the previous level.

5. Heuristic procedures

In this section we discuss the heuristics we propose for the multi resource agent bottleneck generalised assignmentproblem (MRABGAP). First we study a tabu search algorithm and then we discuss a B&B-based heuristic that usesan � approximation scheme.

5.1 Tabu search algorithm

Our tabu search (TS) algorithm starts with a feasible solution that is found by modifying the optimal LP relaxationsolution by assigning each fractional task to its highest fractional agent.

X1j = 1 X2j = 1Xmj = 1

Figure 2. The branching scheme.

International Journal of Production Research 315

Dow

nloa

ded

by [

Van

Pel

t and

Opi

e L

ibra

ry]

at 0

6:22

17

Oct

ober

201

4

Page 9: The multi-resource agent bottleneck generalised assignment problem

The algorithm constructs the neighbourhood of a solution around its bottleneck agent(s). It uses twoneighbourhoods, N1 and N2 en route minimising its load. N1 assigns each task of the bottleneck agent to all otheragents as long as the assignment is feasible, i.e. the newly assigned agent has available capacity. N2 exchangesall task pairs between bottleneck and non bottleneck agents, as long as the exchange leads to a feasible solution.N2 retains the number of tasks; hence some solutions may not be reached from the current solution which bringsdependency on the initial solution. N1 avoids this dependency. On the other hand, if N1 cannot lead to a feasiblemove, we use N2 with the hope of improving the current solution.

The solution attributes that have changed recently are recorded in the recency based memory. The recency basedmemory requirements are O (m*n) and O (n*n) for N1 and N2, respectively.

We set tabu tenure to 50 based on the results of our initial experiments. The aspiration criterion is chosen as thebest solution. Tabu status of the moves that improve the best solution is overridden.

We terminate when the number of non-improving moves equals to a predetermined limit called nonimplimitor the total number of iterations equals to the limit maxiter. We use a nonimplimit value of 250 as in our initialexperiments it returned high quality solutions without causing a significant increase in the solution times. Thelimit on the total number of iterations, maxiter, is set to 1000.

For detailed information on TS techniques, one may refer to Glover and Laguna (1997).

5.2 Branch and bound based heuristics – a approximation scheme

We develop an �% approximation scheme that executes like our B&B algorithm, it however uses the condition(1þ �) *ZLB4ZUB to check the promise of the node (inflates lower bound).

Our � approximation scheme guarantees that its solution is within 100* �% of the optimal solution.The algorithm runs in exponential time, however the solution times are likely to be smaller than those of the B&Balgorithm.

6. Computational results

In this section we aim to test the performance of our algorithms together with bounding and reduction mechanisms.We generate the processing times for each agent for the first period from the following three discrete uniform

distributions:

Set S1. pij1�U [5, 25]Set S2. pij1�U [15, 25]Set S3. pij1�U [25, 35]

Set S1 represents cases where the variance (range) of the distribution is relatively high. Set S2 is used to see theeffect of a decrease in the range of the distribution while keeping the expected value nearly the same. Set S3 standsfor the instances where the range of the distribution is low while the expected value is high.

For each set, we generate pijt and bit values using the procedure reported in the OR library for the GAP. Thestepwise description of the procedure is given below.

Step 0: Generate pij1�U [a, b].

Step 1: Set bi1 ¼ cP

j2J pij1=m, where c is a predefined factor.

Step 2: Set pijt ¼ 3pij1=4þ �ijtpijt=2 for t � 2, where �ijt is from U[0, 1].

Step 3: Set bi1 ¼ cP

j2J pijt=m for each t � 2.

In steps 2 and 4, we use the following two sets for c values.

Set C1. c¼ 1.0Set C2. c¼ 1.2

Sets C1 and C2 represent low and high capacity instances, respectively.We generate instances starting with n¼ 10 and m¼ 5 and increasing in increments of 10 and 5, respectively.

We use two s values: 2 and 5. For each processing time and capacity set combination, and m, n, and s values wegenerate 10 problem instances.

316 O. Karsu and M. Azizoglu

Dow

nloa

ded

by [

Van

Pel

t and

Opi

e L

ibra

ry]

at 0

6:22

17

Oct

ober

201

4

Page 10: The multi-resource agent bottleneck generalised assignment problem

The optimal solutions are found by CPLEX 10.1. CPLEX is run for 1200 seconds. The same termination limitis put to our B&B algorithm as well. All experimentations are done in Pentium IV 2.8GHz, 1GB RAM.All algorithms are coded with Microsoft Visual Cþþ 2005.

We first study the performance of the linear programming (LP) relaxation lower bound, LB3. In Table 5we report the average and maximum deviations of the lower bounds from the optimal solutions as a percentageof optimal solutions and the number of fractional variables in the optimal LP relaxation solution.

As can be observed from the table, the lower bounds behave consistently well for almost all problem instances.Almost all average deviations are below 10% and almost all maximum deviations are below 12%. This satisfactoryperformance of the lower bounds can be explained by very few fractional variables produced by the optimal LPrelaxation. We observe that, for fixed m as the number of tasks, n, increases the quality of LB3 improves.

Table 5. Lower bound 3 deviations.

C1 C2

No. of fractional variables Dev. (%) No. of fractional variables Dev. (%)

m n Avg. Max. Avg. Max. Avg. Max. Avg. Max.

s¼ 2S1 5 20 7.50 8 6.66 9.00 7.5 8 6.66 9.00

30 7.50 8 4.16 4.96 7.5 8 4.16 4.9640 7.80 8 2.41 2.85 7.8 8 2.41 2.8550 7.80 8 1.64 2.95 7.8 8 1.64 2.9560 8.00 8 1.51 2.20 8 8 1.51 2.20

10 20 16.4 17 17.34 19.43 16.4 17 17.34 19.4330 17.2 18 9.50 11.61 17.2 18 9.50 11.61

S2 5 20 7.80 8 3.17 4.66 7.80 8 3.17 4.6630 7.44 8 2.39 4.91 7.44 8 2.39 4.9140 7.70 8 1.45 2.38 7.70 8 1.45 2.3850 8.00 8 1.10 1.70 8.00 8 1.03 1.7060 7.90 8 0.97 1.76 7.90 8 0.97 1.76

10 20 17.00 18 7.06 11.78 17.00 18 7.06 11.7830 17.00 18 5.40 11.98 17.00 18 5.40 11.98

S3 5 20 7.70 8 2.58 4.88 7.70 8 2.58 4.8830 7.70 8 1.95 4.33 7.70 8 1.95 4.3340 7.90 8 1.17 2.03 7.90 8 1.17 2.0350 7.90 8 0.97 2.17 7.90 8 0.97 2.1760 8.00 8 0.71 1.28 8.00 8 0.71 1.28

10 20 16.60 18 4.85 7.54 16.60 18 4.85 7.5430 16.80 17 3.89 7.03 16.80 17 3.89 7.03

s¼ 5S1 5 20 7.50 8 7.09 8.45 7.50 8 7.09 8.45

30 7.40 8 4.01 6.50 7.40 8 4.01 6.5040 7.90 8 2.34 3.24 7.90 8 2.34 3.2450 7.90 8 1.82 2.44 7.90 8 1.82 2.44

10 20 16.40 18 16.09 20.95 16.40 18 16.09 20.9530 16.60 18 10.05 12.09 16.60 18 10.05 12.09

S2 5 20 8.00 8 3.33 6.53 8.00 8 3.33 6.5330 7.90 8 2.33 4.34 7.90 8 2.33 4.3440 7.90 8 1.38 2.70 7.90 8 1.38 2.7050 8.00 8 1.13 1.71 8.00 8 1.13 1.71

10 20 16.90 18 6.18 9.01 16.80 18 6.18 9.0130 17.50 18 5.32 8.47 17.50 18 5.32 8.47

S3 5 20 8.20 10 2.62 4.93 7.80 8 2.51 4.9330 8.00 8 1.89 4.00 8.00 8 1.88 4.0040 8.00 8 1.09 2.19 8.00 8 1.09 2.1950 7.80 8 0.97 1.39 7.80 8 0.95 1.39

10 20 17.70 20 5.00 7.97 16.60 18 4.72 7.9730 17.20 18 4.02 5.79 17.20 18 4.02 5.79

International Journal of Production Research 317

Dow

nloa

ded

by [

Van

Pel

t and

Opi

e L

ibra

ry]

at 0

6:22

17

Oct

ober

201

4

Page 11: The multi-resource agent bottleneck generalised assignment problem

On the other hand, increasing m adversely affects the performance of the lower bound. This is expected since

as m gets bigger, a task is split between more agents, hence the number of fractional variables increases which in

turn deteriorates the quality of the lower bounds. We can conclude that the higher the n/m ratio, the better is the

performance of LB3. We could not observe any notable influence of the s values on the lower bound performances.

Table 6. The B&B and CPLEX results for s¼ 2.

s¼ 2

Number of nodesin B&B Tree

B&B solution time(CPU seconds)

BB*

CPLEX solution time(CPU seconds)

CPX** B***m N Avg. Max. Avg. Max. Avg. Max.

C1S1 5 20 2328 9215 1.34 5.09 10 0.59 4.03 10 10

30 12088 38860 9.83 36.34 10 0.77 1.41 10 1040 26241 57200 28.08 65.55 10 1.30 4.25 10 1050 104524 334110 123.68 323.81 9 1.63 4.17 10 960 45342 175675 58.51 245.31 9 2.12 4.92 10 9

10 20 38053 101274 26.38 67.13 10 3.76 24.05 10 1030 107890 255160 241.09 750.98 7 31.50 64.30 10 7

S2 5 20 752 4007 0.48 2.44 10 0.17 0.66 10 1030 801 5003 0.97 6.17 10 40.88 296.78 8 840 1207 3660 2.02 5.76 10 7.57 24.02 10 1050 22272 74170 56.00 176.38 9 156.11 829.88 9 860 9886 38185 19.14 68.17 7 121.15 533.92 6 5

10 20 42545 389596 43.42 403.11 10 0.34 2.00 10 1030 25091 145227 60.30 351.52 6 23.22 73.00 10 5

S3 5 20 374 1578 0.24 0.92 10 0.12 0.38 10 1030 112 421 0.18 0.53 10 0.22 0.70 10 1040 2143 7850 3.57 12.52 10 3.55 11.91 9 950 4784 15199 9.57 36.72 10 36.25 303.42 9 960 12545 37365 26.09 72.33 9 58.86 177.45 7 6

10 20 945 6044 0.96 5.92 10 0.27 1.33 10 1030 37150 243203 66.84 451.20 9 1.02 4.14 9 9

C2S1 5 20 2333 9250 1.77 5.03 10 0.55 3.67 10 10

30 12099 38855 10.03 35.14 10 1.10 3.70 10 1040 26249 57185 27.70 66.80 10 1.47 4.19 10 1050 120666 335270 159.22 587.66 10 3.00 9.86 10 1060 45191 175800 56.92 234.89 9 3.23 13.27 10 9

10 20 38180 100573 26.53 65.03 10 3.44 19.75 10 1030 107883 254360 232.58 779.91 7 48.18 114.63 10 7

S2 5 20 819 4275 0.64 2.69 10 0.31 1.00 10 1030 716 5035 0.97 6.86 10 54.62 364.45 9 940 1186 3615 2.07 6.11 10 51.36 346.50 10 1050 61560 376195 122.55 755.19 10 93.93 351.48 7 760 9866 38145 19.15 67.26 7 90.13 389.72 6 5

10 20 5068 31267 3.78 22.13 9 2.31 14.48 10 930 49548 211919 73.30 318.13 7 221.68 983.64 5 5

S3 5 20 405 1695 0.24 0.91 10 2.58 23.33 10 1030 134 425 0.20 0.51 10 28.80 229.17 9 940 2286 7875 3.66 11.88 10 9.05 42.14 8 850 4771 15265 9.17 34.26 10 79.65 655.06 9 960 12688 37295 26.22 70.89 8 132.76 436.11 7 6

10 20 637 3122 2.54 17.09 10 0.20 0.50 10 1030 17405 38608 41.91 118.69 9 21.19 66.25 6 6

*The number of instances solved to optimality by B&B algorithm in 1200 seconds.**The number of instances solved to optimality by CPLEX in 1200 seconds.***The number of instances solved to optimality by both CPLEX and B&B algorithms in 1200 seconds.

318 O. Karsu and M. Azizoglu

Dow

nloa

ded

by [

Van

Pel

t and

Opi

e L

ibra

ry]

at 0

6:22

17

Oct

ober

201

4

Page 12: The multi-resource agent bottleneck generalised assignment problem

It is observed from the table that the quality of the lower bound is affected by the processing times. The lowerbound is weaker for set S1 where the variance of the processing times is relatively high and mean is low. The bestperformances are observed for set S3 where the variance is low and mean is high.

We now discuss the performance of our B&B algorithm. Tables 6 and 7 show the results for s¼ 2 and s¼ 5,respectively. In the tables we report the average and maximum number of nodes, CPU times and the number ofinstances solved to optimality in our termination limit of 1200 seconds. The average and maximum CPU timesof CPLEX and the number of instances solved to optimality by CPLEX within 1200 seconds are also reported.While computing the CPU times, we only consider the instances that can be solved by both CPLEX and B&Balgorithms. The number of such instances is also reported.

Table 7. The B&B and CPLEX results for s¼ 5.

s¼ 5

Number of nodesin B&B tree

B&B solution time(CPU seconds)

BB*

CPLEX solution time(CPU seconds)

CPX** B***m n Avg. Max. Avg. Max. Avg. Max.

C1S1 5 20 1495 4435 0.82 2.19 10 0.28 0.64 10 10

30 15946 62640 14.79 56.74 10 1.51 4.58 10 1040 86122 323210 89.68 370.77 10 2.69 9.30 10 1050 108594 344820 120.06 362.11 9 2.83 7.36 10 9

10 20 26848 81051 19.96 61.08 9 1.77 5.11 10 930 175324 336179 210.64 413.95 5 219.08 473.08 10 5

S2 5 20 394 1414 0.33 1.19 10 0.17 0.48 10 1030 3987 13171 4.65 15.83 10 72.22 554.38 8 840 43625 363214 66.97 556.72 10 7.72 25.03 9 950 32238 108345 61.47 200 8 32.36 104.09 7 6

10 20 16795 82062 15.56 72.88 10 0.27 0.89 10 1030 41102 153948 67.53 255.09 8 3.93 17.92 10 8

S3 5 20 621 3876 0.59 3.78 10 0.14 0.27 10 1030 8925 73083 11.85 100.75 10 9.66 84.63 10 1040 8040 42452 12.65 63.42 10 7.09 53.02 9 950 62025 352777 153.30 902.30 10 62.98 217.55 7 7

10 20 29080 212432 32.22 239.17 9 0.55 1.14 10 930 35649 208492 73.05 462.48 9 1.14 4.33 10 9

C2S1 5 20 1496 4455 0.82 2.28 10 0.31 0.66 10 10

30 15951 62660 15.25 57.95 10 1.89 6.92 10 1040 86135 323275 92.67 385.94 10 4.67 23.05 10 1050 108591 344750 117.02 354.16 9 5.18 17.31 10 9

10 20 26900 79099 18.61 57.59 9 2.64 7.91 10 930 166348 304100 204.06 364.73 5 260.62 452.83 10 5

S2 5 20 558 2130 0.41 1.31 10 0.96 7.02 10 1030 4206 14140 4.52 16.13 10 71.80 551.06 8 840 46179 386295 69.20 577.83 10 21.97 79.45 9 950 32156 107680 59.50 194.39 8 52.83 141.98 7 6

10 20 41440 243933 40.51 261.44 10 7.71 44.97 10 1030 15293 39341 20.90 51.44 9 185.77 490.41 4 4

S3 5 20 212 1330 0.18 0.94 10 0.25 0.78 10 1030 12389 82035 13.16 87.88 10 40.74 315.72 8 840 7386 43045 11.44 64.67 10 41.90 353.49 10 1050 12241 33015 26.18 72.17 9 25.88 62.88 6 6

10 20 18204 123897 18.24 121.00 10 0.42 1.36 10 1030 22888 100974 40.71 149.58 8 309.30 1,045.06 7 7

*The number of instances solved to optimality by B&B algorithm in 1200 seconds.**The number of instances solved to optimality by CPLEX in 1200 seconds.***The number of instances solved to optimality by both CPLEX and B&B algorithms in 1200 seconds.

International Journal of Production Research 319

Dow

nloa

ded

by [

Van

Pel

t and

Opi

e L

ibra

ry]

at 0

6:22

17

Oct

ober

201

4

Page 13: The multi-resource agent bottleneck generalised assignment problem

As can be observed from Tables 6 and 7, when the number of tasks increases the CPU times and in turn thenumbers of nodes increase.

There are a few exceptions, one of which is due to S1C2, s¼ 2, m¼ 5. For n¼ 50 the average CPU time is 150.22seconds whereas it is 56.92 seconds for n¼ 60. However, note here that, one out of 10 instances could not be solvedwhen n¼ 60, hence the average is calculated over nine instances while it is calculated over 10 instances when n¼ 50.This increase in the number of nodes and CPU time is mainly due to the fact that the B&B tree becomes deeper asn increases. The effect of n on the problem difficulty can also be observed from the increase in CPU times of CPLEXwith an increase in n for fixed m and s.

Table 8. The tabu search results for s¼ 2 and s¼ 5.

C1 C2

Tabu time Dev. (%) Tabu time Dev. (%)

m n Avg. Max. Avg. Max. Avg. Max. Avg. Max.

s¼ 2S1 5 20 0.03 0.03 0.00 0.00(10) 0.03 0.03 0.00 0.00 (10)

30 0.06 0.08 0.52 2.06 (6) 0.06 0.06 0.52 2.06 (6)40 0.11 0.13 0.39 0.81(5) 0.12 0.13 0.39 0.81 (5)50 0.19 0.20 0.24 0.63 (6) 0.19 0.20 0.24 0.63 (6)60 0.28 0.30 0.41 1.00 (4) 0.28 0.30 0.41 1.00 (4)

10 20 0.05 0.06 1.60 6.45 (6) 0.05 0.06 1.90 6.45 (6)30 0.10 0.11 1.60 4.35 (4) 0.11 0.11 1.60 4.35 (4)

S2 5 20 0.03 0.03 0.08 0.76 (9) 0.03 0.03 0.00 0.00 (10)30 0.06 0.08 0.00 0.00 (10) 0.07 0.08 0.00 0.00 (10)40 0.09 0.13 0.15 1.15 (8) 0.09 0.13 0.15 1.15 (8)50 0.13 0.19 0.40 1.55 (4) 0.13 0.19 0.40 1.55 (4)60 0.25 0.31 0.47 1.32 (4) 0.25 0.31 0.47 1.32 (4)

10 20 0.05 0.06 0.16 1.59 (9) 0.05 0.06 0.16 1.59 (9)30 0.10 0.11 0.22 1.08 (8) 0.10 0.11 0.22 1.08 (8)

S3 5 20 0.03 0.03 0.00 0.00 (10) 0.02 0.03 0.00 0.00 (10)30 0.06 0.06 0.06 0.32 (8) 0.06 0.06 0.06 0.32 (8)40 0.10 0.13 0.10 0.73 (8) 0.11 0.13 0.10 0.73 (8)50 0.17 0.22 0.06 0.20 (7) 0.17 0.20 0.06 0.20 (7)60 0.25 0.33 0.15 0.81 (5) 0.24 0.28 0.15 0.81 (5)

10 20 0.05 0.05 0.10 0.96 (9) 0.05 0.05 0.19 0.97 (9)30 0.10 0.11 0.00 0.00 (10) 0.11 0.11 0.00 0.00 (10)

s¼ 5S1 5 20 0.04 0.05 0.00 0.00 (10) 0.05 0.05 0.00 0.00 (10)

30 0.09 0.09 0.49 1.26 (5) 0.09 0.09 0.49 1.26 (5)40 0.16 0.17 0.42 1.13 (5) 0.16 0.17 0.42 1.13 (5)50 0.25 0.27 0.22 1.18 (6) 0.25 0.27 0.22 1.18 (6)

10 20 0.07 0.08 0.93 5.48 (6) 0.07 0.08 0.38 1.43 (7)30 0.14 0.16 1.05 3.92 (5) 0.14 0.16 1.05 3.92 (5)

S2 5 20 0.04 0.05 0.00 0.00 (10) 0.05 0.05 0.00 0.00 (10)30 0.09 0.09 0.62 3.14 (6) 0.09 0.09 0.62 3.14 (6)40 0.15 0.17 0.35 3.46 (9) 0.16 0.17 0.35 3.46 (9)50 0.25 0.28 0.60 1.89 (4) 0.25 0.27 0.60 1.89 (4)

10 20 0.05 0.06 0.19 0.64 (7) 0.07 0.08 0.00 0.00 (10)30 0.14 0.16 0.04 0.43 (9) 0.14 0.16 0.13 0.43 (7)

S3 5 20 0.05 0.05 0.00 0.00 (10) 0.05 0.05 0.00 0.00 (10)30 0.09 0.09 0.03 0.25 (9) 0.09 0.09 0.00 0.00 (10)40 0.16 0.17 0.00 0.00 (10) 0.16 0.17 0.00 0.00 (10)50 0.26 0.27 0.04 0.61 (8) 0.26 0.27 0.05 0.61 (8)

10 20 0.04 0.06 2.31 6.92 (3) 0.07 0.08 0.08 0.38 (8)30 0.14 0.16 0.13 0.77 (7) 0.14 0.16 0.03 0.27 (9)

Note: The figures in parentheses indicate the number of times the optimal solution is found.

320 O. Karsu and M. Azizoglu

Dow

nloa

ded

by [

Van

Pel

t and

Opi

e L

ibra

ry]

at 0

6:22

17

Oct

ober

201

4

Page 14: The multi-resource agent bottleneck generalised assignment problem

The effect of the number of agents, m, is more notable on the CPU times and the number of nodes. As mincreases, the number of nodes and in turn the CPU times increase. This is true for all the problem combinations.For example, for S1C1, n¼ 30 and s¼ 2 when m is increased from 5 to 10; the average CPU time increases from10.03 to 232.58 seconds, i.e. increases more than 20 times. This is an expected behaviour due to our branchingstrategy. As the number of agents increases, the number of branches increases at each level, resulting in a bigger treesize, hence higher CPU time.

In our experiments when s is increased from 2 to 5, the number of nodes and CPU times increase. When theother parameters are fixed, increasing s increases the total load of the agents. An increase in total loads may increasethe number of alternative optimal solutions, thereby the number of promising nodes, which makes the verificationof optimality more difficult.

Table 9. The � approximation scheme results for �¼ 0.1, set C1.

Solution time (CPU seconds) Number of nodes in B&B tree Dev. (%)

m n Avg. Max. Avg. Max. Avg. Max.

s¼ 2S1 5 20 0.05 0.11 9 85 0.97 2.78 (5)

30 0.05 0.09 1 1 1.33 3.19 (2)40 0.07 0.09 1 1 0.99 3.88 (2)50 0.10 0.27 1 1 1.40 2.52 (0)60 0.15 0.19 1 1 0.77 2.14 (3)

10 20 1.94 5.72 1956 5720 0.30 3.03 (9)30 6.72 49.15 3651 25230 2.04 4.55 (3)

S2 5 20 0.02 0.03 1 1 0.75 2.96 (5)30 0.05 0.08 1 5 0.25 1.02 (6)40 0.07 0.09 1 1 1.07 3.44 (2)50 0.10 0.13 1 1 1.42 3.41 (1)60 0.12 0.16 1 1 0.96 1.82 (2)

10 20 0.04 0.06 2 10 0.92 4.62 (6)30 0.07 0.11 2 10 0.74 2.15 (5)

S3 5 20 0.02 0.05 1 1 0.57 1.44 (4)30 0.04 0.05 1 5 0.16 0.65 (7)40 0.06 0.08 1 1 0.63 1.23 (2)50 0.10 0.13 1 1 0.17 0.58 (4)60 0.13 0.19 1 1 0.53 2.60 (1)

10 20 0.03 0.06 1 1 0.87 5.77 (7)30 0.06 0.08 1 1 0.79 2.65 (5)

s¼ 5S1 5 20 0.04 0.09 19 160 0.54 3.66 (7)

30 0.05 0.06 1 1 1.68 3.45 (1)40 0.08 0.11 1 1 1.82 3.46 (2)50 0.11 0.17 1 1 0.96 1.90 (1)

10 20 4.93 33.41 4525 29677 0.82 4.11 (6)30 12.28 77.38 6891 45520 1.31 3.64 (4)

S2 5 20 0.03 0.05 2 10 0.70 2.42 (4)30 0.06 0.08 1 1 1.06 3.14 (2)40 0.08 0.09 1 1 1.01 4.09 (1)50 0.15 0.22 1 1 1.04 1.89 (0)

10 20 0.06 0.13 5 20 0.82 3.18 (6)30 0.08 0.14 4 10 1.18 2.92 (1)

S3 5 20 0.03 0.05 4 15 0.41 2.42 (5)30 0.05 0.06 1 5 0.20 0.63 (3)40 0.08 0.11 1 5 0.29 1.18 (2)50 0.14 0.23 1 5 0.41 0.99 (0)

10 20 0.48 2.03 243 1149 1.31 5.02 (1)30 0.08 0.09 5 10 0.57 2.61 (5)

Note: The figures in parentheses indicate the number of times the optimal solution is found.

International Journal of Production Research 321

Dow

nloa

ded

by [

Van

Pel

t and

Opi

e L

ibra

ry]

at 0

6:22

17

Oct

ober

201

4

Page 15: The multi-resource agent bottleneck generalised assignment problem

We could not observe any considerable effect of c on the performance of the algorithm. However, theprocessing times highly affect the performance which can be attributed to the processing time effect on thelower bound performances. For set S1, CPLEX seems to be more effective. On the other hand for sets S2 and S3 ourB&B algorithm is compatible with or better than CPLEX. For example for set S2C2, m¼ 10, n¼ 30 and s¼ 5,the average CPU time is 20.9 seconds and nine instances are solved by the B&B algorithm whereas the averageCPU time is 185.77 seconds and four instances are solved by CPLEX. The B&B algorithm finds the optimalsolution about nine times faster than CPLEX and solves more instances to optimality within the same timelimit. There are some exceptions to this situation. However, in most of these instances although the averagesolution time of the B&B algorithm is higher than CPLEX, the number of instances it could solve to optimalityis bigger.

Table 10. The � approximation scheme results for �¼ 0.05, set C1.

Solution time (CPU seconds) Number of nodes in B&B tree Dev. (%)

m n Avg. Max. Avg. Max. Avg. Max.

s¼ 2S1 5 20 0.15 0.50 231.3 780 0.13 1.32 (9)

30 0.08 0.41 68.0 555 1.13 3.19 (3)40 0.07 0.16 3.9 30 0.60 1.43 (3)50 0.08 0.13 1.0 1 1.40 2.52 (0)60 0.13 0.17 1.0 1 0.77 2.14 (3)

10 20 9.57 30.02 12069.5 40638 0.30 3.03 (9)30 70.31 374.55 37927.0 194510 0.92 2.38 (6)

S2 5 20 0.03 0.03 1.4 5 0.75 2.96 (5)30 0.04 0.05 1.4 5 0.25 1.02 (6)40 0.07 0.16 4.9 40 0.73 2.24 (3)50 0.09 0.14 1.0 1 1.42 3.41 (1)60 0.12 0.16 1.0 1 0.96 1.82 (2)

10 20 0.06 0.11 11.1 30 0.47 1.59 (7)30 0.09 0.09 5.5 10 0.74 2.15 (5)

S3 5 20 0.02 0.03 1.0 1 0.57 1.44 (4)30 0.03 0.05 1.4 5 0.16 0.65 (7)40 0.06 0.08 1.0 1 0.63 1.23 (2)50 0.09 0.13 1.0 1 0.17 0.58 (4)60 0.13 0.20 1.0 1 0.53 2.60 (1)

10 20 0.04 0.06 4.6 10 0.49 1.98 (7)30 0.06 0.11 2.8 10 0.79 2.65 (5)

s¼ 5S1 5 20 0.09 0.26 97.6 360 0.00 0.00 (10)

30 0.14 0.36 101.0 320 1.24 2.30 (1)40 0.10 0.17 7.3 50 1.35 3.29 (3)50 0.12 0.17 1.0 1 0.96 1.90 (1)

10 20 20.21 122.97 24207.9 145089 0.55 4.11 (8)30 127.19 788.5 49217.0 253140 0.47 1.00 (5)

S2 5 20 0.06 0.09 3.1 10 0.55 2.15 (4)30 0.08 0.11 2.9 20 0.90 3.14 (2)40 0.10 0.23 1.4 5 0.65 1.37 (1)50 0.22 0.52 1.0 1 1.04 1.89 (0)

10 20 0.08 0.22 19.2 110 0.63 3.14 (6)30 0.12 0.17 8.3 20 1.14 2.92 (2)

S3 5 20 0.04 0.08 3.6 15 0.21 0.58 (5)30 0.05 0.06 1.4 5 0.20 0.63 (3)40 0.10 0.14 1.4 5 0.29 1.18 (2)50 0.16 0.27 1.4 5 0.41 0.99 (0)

10 20 0.76 4.45 395.6 2652 0.69 1.93 (2)30 0.10 0.17 7.3 10 0.21 0.79 (7)

Note: The figures in parentheses indicate the number of times the optimal solution is found.

322 O. Karsu and M. Azizoglu

Dow

nloa

ded

by [

Van

Pel

t and

Opi

e L

ibra

ry]

at 0

6:22

17

Oct

ober

201

4

Page 16: The multi-resource agent bottleneck generalised assignment problem

We next discuss the performance of our heuristic procedures. Table 8 reports the results of our tabu search (TS)algorithm.

Note from the table that the TS algorithm returns solutions in consistent CPU times over all processing time andcapacity sets. All average deviations are below 2.5% and the worst maximum deviation is 6.92%. This indicates thatour TS algorithm performs consistently well over all instances. We observe a slight increase in deviations when m (n)values increase for the fixed n (m) for most settings. This can be attributed to the increasing size of theneighbourhood with increasing n or m. We could not observe a notable effect of s on the performance.

In 567 out of 780 instances (about 34%), the TS algorithm finds the optimal solution. Based on these resultswe can say that our TS algorithm is quite successful in finding good quality and quick solutions.

We next study the performance of our � approximation algorithm. We use two � values: 0.1, 0.05 and reportthe results in Tables 9 and 10, respectively for set C1.

As � approximation algorithm is based on a B&B idea the effects of the parameters on the CPU times are similarto those of the B&B algorithm.

It can be observed from the tables that as � gets closer to zero, the behaviour of the algorithm becomes closerto the B&B algorithm, hence decreasing � increases the CPU time and number of nodes while providing solutionscloser to optimal.

When �¼ 0.1 the average and maximum deviations are below 1.8% and 5.77% for almost all instances,respectively. In 265 out of 780 instances (about 34%), the heuristic finds the optimal solution. The average andmaximum CPU times of all combinations, except for S1 when m¼ 10 are below 0.5 and 2.03 seconds, respectively.When � becomes 0.05 the average and maximum deviations reduce to 1.5% and 4.11%, respectively. As solutionquality increases more instances are solved to optimality, in 309 out of 780 instances (about 39%), the optimalsolution is found.

The average and maximum CPU times of all combinations, except for set S1 when m¼ 10 are below 0.8 and4.45 seconds, respectively.

7. Conclusions and further research directions

In this study, we consider the multi resource agent bottleneck generalised assignment problem. Our aim is tominimise the maximum load over all agents. We take our motivation from a practical problem arising in the heatventilation and air conditioning (HVAC) industry.

We develop a B&B algorithm for optimal solutions and heuristic algorithms for approximate solutions.Our B&B algorithm uses the optimal solutions of the linear programming relaxations in finding lower and upperbounds and defining our branching scheme. We could find optimal solutions for the problems with up to 60 taskswhen the number of agents is five and up to 30 tasks when the number of agents is 10 in our plausible limit of 20minutes. We find that the number of tasks and the number of agents are dominant factors in defining the complexityof the solutions. However, the number of periods does not have a significant effect on the performance. Moreover,we observe that the distribution of the processing time affects the complexity and the hardest to solve instances areobserved when the processing time distribution has low mean and high variance.

Our heuristic procedures are of two types. One is tabu search and the other is branch and bound based �approximation algorithm. We find that tabu search algorithm produces very quick, high quality solutions, hence canbe used to solve large sized problem instances. On the other hand � approximation algorithm runs in exponentialtime, with guaranteed performance. Our experiments have revealed that � approximation algorithm runsconsiderably faster than branch and bound algorithm, hence can be used when guaranteed performance with smallsolution times is important.

To the best of our knowledge our study is the first attempt to solve the agent based bottleneck generalisedassignment problem with multiple periods. We hope our results stimulate further research in generalised assignmentproblem literature. Some noteworthy extensions of our work can be listed as:

. Defining polynomially solvable special cases of the problem.

. Developing branch and bound based heuristic procedures – such as beam search, filtered beam search – thatbenefit from our branching and bounding schemes.

. In tabu search, defining a neighbourhood that allows infeasibility. This will help to search the feasibleregion better and increase the solution quality; however, at the expense of increased computational timebrought by repair mechanisms.

International Journal of Production Research 323

Dow

nloa

ded

by [

Van

Pel

t and

Opi

e L

ibra

ry]

at 0

6:22

17

Oct

ober

201

4

Page 17: The multi-resource agent bottleneck generalised assignment problem

. Incorporating the cost aspects. In addition or as an alternative to the maximum load objective, minimisingtotal cost objective can be studied.

. Incorporating stochastic aspects of the parameters. For example, the processing times of the tasks may varyas time progresses.

References

Campbell, G.M. and Diaby, M., 2002. Development and evaluation of an assignment heuristic for allocating cross-trainedworkers. European Journal of Operational Research, 138 (1), 9–20.

Cattrysse, D.G. and Van Wassenhove, L.N., 1992. A survey of algorithms for the generalized assignment problem. EuropeanJournal of Operational Research, 60, 260–272.

Chauvet, F., Proth, J.M., and Soumare, A., 2000. The simple and multiple job assignment problems. International Journal of

Production Research, 38, 3165–3179.Fisher, M.L. and Jaikumar, R., 1981. A generalized assignment heuristic for vehicle routing. Networks, 11, 109–124.Francis, R.L. and White, J.M., 1974. Facility layout and location. Englewood Cliffs, New Jersey: Prentice Hall.Gavish, B. and Pirkul, H., 1986. Computer and database location in distributed computer systems. IEEE Transactions on

Computers, 35 (7), 583–590.Gavish, B. and Pirkul, H., 1991. Algorithms for the multi-resource generalized assignment problem. Management Science, 37,

695–713.

Glover, F. and Laguna, M., 1997. Tabu search. Norwell, MA: Kluwer Academic Publishers.Martello, S. and Toth, P., 1995. The bottleneck generalized assignment problem. European Journal of Operational Research, 83,

621–638.

Mazzola, J.B. and Neebe, A.W., 1988. Bottleneck generalized assignment problems. Engineering Cost and Production Economics,14, 61–65.

Mazzola, J.B. and Neebe, A.W., 1993. An algorithm for the bottleneck generalized assignment problem. Computers & OperationsResearch, 20, 366–362.

Mazzola, J.B., Neebe, A.W., and Dunn, C.V.R., 1989. Production planning of a flexible manufacturing system in materialrequirements planning environment. International Journal of Flexible Manufacturing Systems, 1 (2), 115–142.

Mazzola, J.B. and Wilcox, S.P., 2001. Heuristics for the multi-resource generalized assignment problem. Naval Research

Logistics, 48, 468–483.Mitrovic-Minic, S. and Punnen, A., 2009. Local search intensified: Very large scale variable neighborhood search for the

multi-resource generalized assignment problem. Discrete Optimisation, 6, 370–377.

Murph, R.A., 1986. A private fleet model with multi-stop backhaul. Working Paper 103. Optimal Decision Systems, GreenBay, WI.

Pirkul, H., 1986. An integer programming model for the allocation of databases in a distributed computer system. European

Journal of Operational Research, 26 (3), 401–411.Ross, G.T. and Soland, R.M., 1977. Modeling facility location problems as generalized assignment problems. Management

Science, 24 (3), 345–357.Shtub, A., 1989. Modelling group technology cell formation as a generalized assignment problem. International Journal of

Production Research, 27, 775–778.Yagiura, M., et al., 2004. A very large-scale neighborhood search algorithm for the multi-resource generalized assignment

problem. Discrete Optimisation, 1, 87–98.

324 O. Karsu and M. Azizoglu

Dow

nloa

ded

by [

Van

Pel

t and

Opi

e L

ibra

ry]

at 0

6:22

17

Oct

ober

201

4