resource leveling in fuzzy project scheduling - … · 1455 resource leveling in fuzzy project...

8

Click here to load reader

Upload: trandung

Post on 23-Aug-2018

212 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Resource Leveling in Fuzzy Project Scheduling - … · 1455 Resource Leveling in Fuzzy Project Scheduling . Mohsen Bagheri . Department of Industrial Engineering . Islamic Azad University,

1455

Resource Leveling in Fuzzy Project Scheduling

Mohsen Bagheri Department of Industrial Engineering

Islamic Azad University, Science and Research Branch Tehran, Iran

Sadjad Institute of Higher Education Mashhad, Iran

S.Hessam Mahmoudi

Sadjad Institute of Higher Education Mashhad, Iran

Abstract

In this paper a new method based on fuzzy theory is developed to solve the Project Resource Leveling Problem in fuzzy environment. Resource Leveling Problem attempts to minimize the resource usage fluctuations in project plan. Assuming that the duration of activities and resource requirements are fuzzy, in this method we compute several project characteristics such as earliest times, latest times, and, slack times in term of fuzzy numbers. In this paper, we introduce a new method to schedule tasks in order to obtain a leveled and smooth resource profile. We have also represent performance measures to evaluate a fuzzy resource profile. We have proposed a multi-pass and list-based backward algorithm using fuzzy earliest and latest finish (start) times. We have also illustrated the algorithm with an extensive numerical example. To the best of our knowledge the literature on fuzzy resource leveling is virtually void.

Keywords Project Scheduling, Fuzzy Resource Profile, Resource Leveling 1. Introduction

1.1 Resource Leveling Problem versus Resource Constrained Project Scheduling Problem

This paper considers a project scheduling problem where objective function consists of minimizing resource fluctuation costs by taking into account project deadline and precedence relations among the activities. The activity durations are fuzzy, and the resource requirement of each activity is also a fuzzy number.

The deterministic version of this problem known as Resource Levelling Problem (RLP) (problem m,1|δn,cpm|level in the notation of Herroelen et al. [1] differs from Resource Constrained Project Scheduling Problem (RCPSP) (problem m,1|cpm|Cmax) in which in the later one seeks to minimize the makespan regarding the limited resources.

In many project scheduling situations, the pattern of resource usage over project life might be much more important than the peak demand of the schedule. In such situations, it might be wise to shift from RCPSP to RLP. In the latter problem, we aim at completing the project within its deadline with a resource profile (resource usage) which is as levelled as possible over the entire project horizon.

It has been shown by Neumann et al. [2] that the resource levelling project scheduling problem is NP-hard even if only one resource is considered.

Exact algorithms based upon implicit enumeration, integer programming, or dynamic programming techniques, which are applicable to instances with up to 20 activities, have been proposed for the case of precedence constraints between activities by Ahuja [3], Easa [4], Bandelloni et al. [5], and Younis and Saad [6]. For general minimum and maximum time lags, Neumann et al. [2] present a tree-based branch-and-bound procedure. Heuristic procedures for the case of precedence constraints are given in Burgess and Killebrew [7], Harris [8] and Takamoto et al. [9]. These algorithms are simple shifting heuristics or priority-rule based methods. Some modifications of the so-called pack heuristic of Harris [8] can be found in Hiyassat [10, 11], and a genetic algorithm is described in Leu et al. [12]. However, for none of those heuristics an in-depth performance analysis

Proceedings of the 2012 International Conference on Industrial Engineering and Operations Management Istanbul, Turkey, July 3 – 6, 2012

Page 2: Resource Leveling in Fuzzy Project Scheduling - … · 1455 Resource Leveling in Fuzzy Project Scheduling . Mohsen Bagheri . Department of Industrial Engineering . Islamic Azad University,

1456

has been published. For resource levelling problems with different objective functions and general time lags, priority-rule based methods as well as a tabu search procedure are discussed in Brinkmann and Neumann [13], Neumann and Zimmermann [14, 15], and Neumann et al. [2]. For resource levelling in make-to-order productions, Ballestin et al. [16] have developed a population based iterated greedy method for approximately solving resource levelling problems up to 1000 activities.

1.2 Fuzziness in Project scheduling

For the projects, in which the activities may have been processed many times before and the historical data of the activity duration times are sufficient, the uncertainty of the activity duration times can be described by probability distributions via statistical techniques. However, for the projects, in which the activities may seldom or never be performed before and therefore are short of statistical data, the duration times can only be described by fuzzy variables via expert knowledge. Prade [17] first applied fuzzy set theory into the project scheduling problem in 1979. Furthermore, Chanas and Kamburowski [18], Dubios and Prade [19], Hapke and Slowinski [20], and Kaufmann and Gupta [21] discussed various types of project scheduling problems with fuzzy activity duration times. Nevertheless, it is notable that all papers studying project scheduling problem with stochastic or fuzzy activity duration times just resolved problems in optimizing the completion time under resource or cost limits.( Ke and Liu[22])

A method for solving the RCP problems with fuzzy time parameters has been proposed by Hapke and Slowinski [20] and Hapke et al. [23]. It is based, however, on an early transformation of the non-deterministic problem to a set of its deterministic associates which are then solved using known deterministic procedures. Bhaskar et al [24] propose a heuristic method for RCPSP with fuzzy activity times. This method is based on priority rule for parallel schedule generation scheme; they discuss some properties of the proposed method. Zareei et al [25] consider the project scheduling problem with fuzzy activity durations, they propose a linear programming formulation for calculating Earliest and Latest start times of activities.

In section 2 we give the basic necessary definitions in fuzzy set theory which is used in the rest of the paper. Section 3 gives our conceptual model for the Fuzzy Resource Levelling Problem. In section 4 we describe our heuristic approach to solve the RLP in fuzzy environment. In section 5 we give numerical example for our heuristic and compare it with a known heuristic in fuzzy environment.

2. Basic Concepts

Here we illustrate some required definitions and notations for our model and heuristic.

2.1 Fuzzy set: A fuzzy set �̃� is a function which measures the degree of membership to a set. If R be the space of real numbers then: �̃� = {(𝑥, 𝜇𝐴�(𝑥))|𝑥 ∈ 𝑅} 𝑤ℎ𝑒𝑟𝑒 𝜇𝐴�(𝑥):𝑅 → [0,1] in which 𝜇𝐴�(𝑥) is called the membership function of fuzzy set �̃�.

2.2 Convex fuzzy set: Fuzzy set �̃� is called convex when ∀𝑥,𝑦 ∈ 𝑅,∀𝛼 ∈ [0,1]: 𝜇𝐴�(𝛼𝑥 + (1 − 𝛼)𝑦) ≥ min[𝜇𝐴�(𝑥), 𝜇𝐴�(𝑦)].

Figure 1: Convex Fuzzy Set

2.3 Triangular Fuzzy Number (TFN): TFN is a convex fuzzy set with membership function as follows:

Page 3: Resource Leveling in Fuzzy Project Scheduling - … · 1455 Resource Leveling in Fuzzy Project Scheduling . Mohsen Bagheri . Department of Industrial Engineering . Islamic Azad University,

1457

𝜇𝐴�(𝑥) =

⎩⎪⎨

⎪⎧

(𝑥 − 𝑎)(𝑏 − 𝑎)

𝑎 ≤ 𝑥 < 𝑏

(𝑑 − 𝑥)(𝑑 − 𝑏)

𝑏 ≤ 𝑥 ≤ 𝑑

0 𝑥 > 𝑑, 𝑥 < 𝑎

Figure 2: A triangular fuzzy number

2.4 Operation on TFNs: According to Zadeh’s extension principle (Zadeh [x]) let �̃� = (𝑎1, 𝑎2, 𝑎3) and 𝐵� = (𝑏1, 𝑏2, 𝑏3) be two fuzzy numbers, then:

�̃� ⊕ 𝐵� = (𝑎1 + 𝑏1 �̃� ⊖ 𝐵� = (𝑎1 − 𝑏 𝑚𝑎𝑥��̃�,𝐵�� = (𝑚𝑎 𝑚𝑖𝑛��̃�,𝐵�� = (𝑚𝑖

2.5 𝛂 − 𝐜𝐮𝐭 of a fuzzy set: The 𝛼 − 𝑐𝑢𝑡 set is the set which contains all the domain values whose membership is at least the value of 𝛼. Let �̃� be a fuzzy set in X and 𝛼 ∈ [0,1], then the 𝛼 − 𝑐𝑢𝑡 is the set: �̃�𝛼 = {𝑥 ∈ 𝑋 ǀ 𝜇𝐴�(𝑥) ≥ 𝛼}. 2.6 Yager's ranking approach: Yager [26] proposes a procedure for ordering fuzzy sets in which a ranking index ℜ��̃�� is calculated for the fuzzy number �̃� = (𝑎1, 𝑎2, 𝑎3) from its 𝛼 − 𝑐𝑢𝑡 𝐴𝛼 = [𝑎1 + (𝑎2 − 𝑎1)𝛼, 𝑎3 − (𝑎3 − 𝑎2)𝛼] according to the following formula:

ℜ��̃�� =12

(� (𝑎1 + (𝑎2 − 𝑎1)𝛼)𝑑𝛼1

0+ � (𝑎3 − (𝑎3 − 𝑎2)𝛼)𝑑𝛼

1

0=𝑎1 + 2𝑎2 + 𝑎3

4

Let �̃� and 𝐵� be two fuzzy numbers, then:

�̃� > 𝐵� 𝑖𝑓 ℜ��̃�� > 𝑅�𝐵�� �̃� < 𝐵� 𝑖𝑓 ℜ��̃�� < 𝑅�𝐵�� 𝑖𝑓 ℜ��̃�� = ℜ�𝐵��: 𝑔𝑖𝑣𝑒𝑛 𝑚𝑜𝑑𝑒��̃�� = 𝑎2,𝑚𝑜𝑑𝑒�𝐵�� = 𝑏2 �̃� > 𝐵� 𝑖𝑓 𝑚𝑜𝑑𝑒��̃�� > 𝑚𝑜𝑑𝑒�𝐵�� �̃� < 𝐵� 𝑖𝑓 𝑚𝑜𝑑𝑒��̃�� < 𝑚𝑜𝑑𝑒�𝐵�� 𝑖𝑓 𝑚𝑜𝑑𝑒��̃�� = 𝑚𝑜𝑑𝑒�𝐵��: 𝑔𝑖𝑣𝑒𝑛 𝑑𝑖𝑣𝑒𝑟𝑔𝑒𝑛𝑐𝑒��̃�� = 𝑎3 − 𝑎1,𝑑𝑖𝑣𝑒𝑟𝑔𝑒𝑛𝑐𝑒�𝐵�� = 𝑏3 − 𝑏1 �̃� > 𝐵� 𝑖𝑓 𝑑𝑖𝑣𝑒𝑟𝑔𝑒𝑛𝑐𝑒��̃�� > 𝑑𝑖𝑣𝑒𝑟𝑔𝑒𝑛𝑐𝑒�𝐵�� �̃� < 𝐵� 𝑖𝑓𝑑𝑖𝑣𝑒𝑟𝑔𝑒𝑛𝑐𝑒�𝐵�� > 𝑑𝑖𝑣𝑒𝑟𝑔𝑒𝑛𝑐𝑒��̃�� �̃� = 𝐵� 𝑖𝑓 𝑑𝑖𝑣𝑒𝑟𝑔𝑒𝑛𝑐𝑒��̃�� = 𝑑𝑖𝑣𝑒𝑟𝑔𝑒𝑛𝑐𝑒�𝐵��

3. Problem Description

The Fuzzy RLP can be described as follows. We assume that the project is represented as an activity-on-the-node network (AON) 𝐺(𝑁,𝐴) with a set of nodes 𝑁 = {1,2, . . . ,𝑛} consisting of project activities and a set of arcs 𝐴 representing finish-start precedence relations between activities. Activities 1 and 𝑛 are dummy (zero duration) start and finish activities, respectively. The duration of activity 𝑖 is denoted by a triangular fuzzy number �̃�𝑖 and the resource requirement of activity 𝑖 for resource 𝑘 is represented by TFN �̃�𝑖𝑘 (𝑘 = 1,2, … ,𝑚).

Page 4: Resource Leveling in Fuzzy Project Scheduling - … · 1455 Resource Leveling in Fuzzy Project Scheduling . Mohsen Bagheri . Department of Industrial Engineering . Islamic Azad University,

1458

The number of renewable resources is 𝑚. The planned start time of activity 𝑖 is represented by 𝑠𝚤�, the sequence of planned activity start times is denoted by schedule 𝑆 = (𝑠1� , 𝑠2� , … , 𝑠𝑛� ), and we have project deadline 𝛿𝑛, i.e we have the constraint �̃�𝑛 ≤ 𝛿𝑛 . The amount of resource 𝑘 used at time 𝑡 is 𝑅�𝑘(𝑆, 𝑡) in which𝑅�𝑘(𝑆, 𝑡) =∑ �̃�𝑖𝑘𝑖∈𝑁

𝑠𝚤�≤𝑡< 𝑠𝚤�+𝑑�𝑖. The function 𝑅�𝑘(𝑆, . ) is referred to as fuzzy resource profile of resource 𝑘 corresponding to

schedule 𝑆, and 𝑐𝑘 is the weight (importance) of resource type 𝑘 in the levelling problem.

A conceptual model for fuzzy RLP can be written as:

min�𝑐𝑘 � �𝑅�𝑘(𝑆, 𝑡)�2

�̃�𝑛

𝑡=�̃�1

𝑚

𝑘=1

(1)

𝑠𝑡.

𝑠𝚥� ≥ 𝑠𝚤� + 𝑑𝚤� ; ∀ (𝑖, 𝑗) ∈ 𝐴 (2)

�̃�1 = (0,1,2) (3)

�̃�𝑛 ≤ 𝛿𝑛 (4)

The objective function (1) which we refer to as Performance Measure (PM) is the total weighted sum of squared resource utilization from project start to finish time. We can substitute the PM by many other forms like

∑(𝑑𝑒𝑣)2=∑ 𝑐𝑘 ∑ �𝑅�𝑘(𝑆, 𝑡) − 𝑅�𝑘(𝑆, 𝑡 − 1)�2�̃�𝑛

𝑡=�̃�1𝑚𝑘=1 or ∑[𝑑𝑒𝑣]+ etc.

4. Heuristic Algorithm for Fuzzy RLP

Here, each point of time has been shown as symmetric triangular fuzzy numbers with 1 deviation from left and right side and its concept is "approximately 𝑗𝑡ℎ time period". For example �̃�3 = (2,3,4) shows approximately third time period of project. We show the start time of the project with �̃�1 = (0,1,2).

Figure 3:Fuzzy time periods

For all possible feasible lists Do:

Calculate the earliest start (finish) and latest start (finish) time for activity i with Modified Backward Pass (MBP) introduced by Soltani and Haji [28]. 𝐸𝑆𝑖 = (𝑒𝑠𝑖1, 𝑒𝑠𝑖2, 𝑒𝑠𝑖3), 𝐸𝐹𝑖 = (𝑒𝑓𝑖1, 𝑒𝑓𝑖2, 𝑒𝑓𝑖3) 𝐿𝑆𝑖 = (𝑙𝑠𝑖1, 𝑙𝑠𝑖2, 𝑙𝑠𝑖3), 𝐿𝐹𝑖 = (𝑙𝑓𝑖1, 𝑙𝑓𝑖2, 𝑙𝑓𝑖3) From the last activity in priority list to the first one do:

Calculate all start (finish) possible times for activity i and corresponding performance measure 𝑃𝑀 �̃�𝑘(𝑖) �̃�𝑘(𝑖) = (𝑘 − 1, 𝑘, 𝑘 + 1), 𝑓𝑜𝑟 (𝑒𝑠𝑖1 + 1) ≤ 𝑘 ≤ (𝑙𝑠𝑖3 − 1) 𝑓�̃�𝑘 = �̃�𝑘 + �̃�𝑖 , �̃�𝑖 = (𝑑𝑖1,𝑑𝑖2,𝑑𝑖3) Find best start time of activity i 𝑏𝑠𝑡� (𝑖) in which 𝑃𝑀 �̃�𝑘(𝑖) is minimized for all k. Update the earliest start (finish) and latest start (finish) time for activity i

5. Numerical Example

In this section a numerical example is presented to clarify and illustrate the proposed heuristic for the problem. The AON network of the project is shown in Figure 4. Where the activities 1 and 7 are dummy start and finish activities. The activity duration and resource requirement of each activity are given in Table 1. We set project deadline to 𝛿𝑛 =(7, 10, 13).

Page 5: Resource Leveling in Fuzzy Project Scheduling - … · 1455 Resource Leveling in Fuzzy Project Scheduling . Mohsen Bagheri . Department of Industrial Engineering . Islamic Azad University,

1459

Figure 4: AON network of the project

Table 1: Duration and resource requirement

activity duration resource

2 (2,3,4) (1,2,3)

3 (1,2,3) (2,3,4)

4 (3,4,5) (4,5,6)

5 (2,3,4) (4,5,6)

6 (1,2,3) (1,2,3)

Table 2 shows the earliest (latest) start (finish) time of each activity.

Table 2: Earliest (Latest) Start(Finish) times.

Activities 𝐸𝑆𝑖 𝐸𝐹𝑖 𝐿𝑆𝑖 𝐿𝐹𝑖

2 (0,1,2) (2,4,6) (3,4,5) (5,7,9)

3 (0,1,2) (1,3,5) (4,5,6) (5,7,9)

4 (0,1,2) (3,5,7) (3,4,5) (6,8,10)

5 (2,4,6) (4,7,10) (5,7,9) (7,10,13)

6 (3,5,7) (4,7,10) (6,8,10) (7,10,13)

Figure 5 shows the Earliest Start schedule for our example. In this schedule the performance measure is PM=(619,1201,1966)

Figure 5: ES schedule

1

2

3

4

5

6

7

Page 6: Resource Leveling in Fuzzy Project Scheduling - … · 1455 Resource Leveling in Fuzzy Project Scheduling . Mohsen Bagheri . Department of Industrial Engineering . Islamic Azad University,

1460

In Figure 6 the resource profile related to ES schedule is demonstrated.

Figure 6: Resource profile for ES schedule.

With the described algorithm in the previous section we summarize the achieved best times in the table 3 and show the Schedule and Resource Profile in Figures 7 and 8 correspondingly.

Table 3: Start (Finish) time resulted from the Leveling procedure

activity Best start time Finish time

2 (0,1,2) (1,2,3)

3 (0,1,2) (2,3,4)

4 (0,1,2) (4,5,6)

5 (4,5,6) (4,5,6)

6 (8,9,10) (1,2,3)

With the Leveling procedure we achieve to PM=(459,764,1113) which obviously outperforms the ES schedule.

Page 7: Resource Leveling in Fuzzy Project Scheduling - … · 1455 Resource Leveling in Fuzzy Project Scheduling . Mohsen Bagheri . Department of Industrial Engineering . Islamic Azad University,

1461

Figure 7: Leveled schedule

Figure 8: Resource profile for Leveled schedule

6. Conclusions

In this paper we have introduced a new heuristic method for resource leveling problem in fuzzy environment. This algorithm has been described with an extensive numerical example. The contribution of this article is twofold, first the project resource leveling problem with fuzzy activity durations and fuzzy resource requirements has not been considered in the literature before and second we illustrate a list based multi-pass heuristic algorithm to solve this problem. The effect of the leveling algorithm is depicted with fuzzy resource profiles and the improvements in Performance Measure cam be seen via comparison with ES algorithm. We intend to develop our research to test the algorithm with several real size projects and to evaluate the effectiveness of the algorithm with some greedy neighborhood search algorithms.

References

[1] Herroelen, W., De Reyck, B., Demeulemeester, E. 2000. On the paper "Resource-constrained project scheduling: Notation, classification, models and methods" by Brucker et al.. European Journal of Operational Research, 128(3) : 221-230.

[2] Neumann, K., Schwindt, C., Zimmermann, J. 2003. Project Scheduling with Time Windows and Scarce Resources. Springer, Berlin.

[3] Ahuja, H. N. 1976. Construction Performance Control by Networks. John Wiley, New York. [4] Easa, S. M. 1989. Resource leveling in construction by optimization. Journal of Construction Engineering

and Management, 115: 302–316.

Page 8: Resource Leveling in Fuzzy Project Scheduling - … · 1455 Resource Leveling in Fuzzy Project Scheduling . Mohsen Bagheri . Department of Industrial Engineering . Islamic Azad University,

1462

[5] Bandelloni, M., Tucci, M., Rinaldi, R. 1994. Optimal resource leveling using non-serial dynamic programming. European Journal of Operational Research, 78: 162–177.

[6] Younis, M. A., Saad, B. 1996. Optimal resource leveling of multi-resource projects. Computers and Industrial Engineering, 31: 1–4.

[7] Burgess, A. R., Killebrew, J. B. 1962. Variation in activity level on a cyclic arrow diagram. The Journal of Industrial Engineering, 13: 76–83.

[8] Harris, R. B. 1990. Packing method for resource leveling (pack). Journal of Construction Engineering and Management, 116: 39–43.

[9] Takamoto, M., Yamada, N., Kobayashi, Y., Nonaka, H. 1995. Zero-one quadratic programming algorithm for resource leveling for manufacturing process schedules. Systems and Computers in Japan, 26: 68–76.

[10] Hiyassat, M. A. S. 2000. Modification of minimum moment approach in resource levelling. Journal of Construction Engineering and Management, 126: 278–284.

[11] Hiyassat, M. A. S. 2001. Applying modified minimum moment method to multiple resource levelling. Journal of Construction Engineering and Management, 127: 192–198.

[12] Leu, S.-S., Yang, C.-H., Huang, J.C. 2000. Resource leveling in construction by genetic algorithm based optimization and its decision support application. Automation in Construction, 10: 27–41.

[13] Brinkmann, K., Neumann, K. 1996. Heuristic procedures for resource-constrained project scheduling with minimal and maximal time lags: The resource-levelling and minimum project-duration problems. Journal of Decision Systems, 5: 129–156.

[14] Neumann, K. Zimmermann, J. 1999. Resource levelling for projects with schedule-dependent time windows. European Journal of Operational Research, 117: 591–605.

[15] Neumann, K. Zimmermann, J. 2000. Procedures for resource levelling and net present value problems in project scheduling with general temporal and resource constraints. European Journal of Operational Research, 127: 425–443.

[16] Ballestin, F., Schwindt, C., Zimmermann, J. 2007. Resource Leveling in Make-to-Order production: Modeling and Heuristic Solution Method, International Journal of Operations Research, 4(1): 1-13.

[17] Prade, H. 1979. Using fuzzy set theory in a scheduling problem: a case study, Fuzzy Sets and Systems 2 (2): 153–165.

[18] Chanas, S., Kamburowski, J.1981. The use of fuzzy variables in PERT, Fuzzy Sets and Systems 5 (1) : 11–19.

[19] Dubios, D., Prade, H. 1979. Decision-making under fuzziness, in: M.M. Gupta, R.K. Ragade, R.R. Yager (Eds.), Advances in Fuzzy Set Theory and Applications, North-Holland, Amsterdam: 279–302.

[20] Hapke, M., Slowinski, R. 1993. A DSS for resource-constrained project scheduling under uncertainty, Journal of Decision Systems 2 (2): 111–128.

[21] Kaufmann, A., Gupta, M.M. 1988. Fuzzy Mathematical Models in Engineering and Management Science, North-Holland, Amsterdam.

[22] Ke,H. ,Liu, B. 2010. Fuzzy project scheduling problem and its hybrid intelligent algorithm Applied Mathematical Modelling 34: 301–308.

[23] Hapke, M., Jaszkiewicz, A., Slowinski, R. 1994. Fuzzy project scheduling system for software development, Fuzzy Sets and Systems 21: 101-117.

[24] Bhaskar, T., Pal, M.N., Pal, A.K. 2011. A heuristic method for RCPSP with fuzzy activity times European Journal of Operational Research 208 : 57–66

[25] Zareei, A., Zaerpour, F., Bagherpour,M., Noora, A., Vencheh, A.H. 2011. A new approach for solving fuzzy critical path problem using analysis of events, Expert Systems with Applications 38: 87–93

[26] Zadeh, L.A. 1978. Fuzzy sets as a basis for a theory of possibility, Fuzzy sets and Systems, 1(1) [27] Yager, R.R. 1981. A procedure for ordering fuzzy subsets of the unit interval, Information Sciences, 24(2:)

143-161. [28] Soltani1, A., Haji, R. 2007. A Project Scheduling Method Based on Fuzzy Theory, Journal of Industrial

and Systems Engineering, 1(1): 70-80.