• Aucun résultat trouvé

Proactive, dynamic and multi-criteria scheduling of maintenance activities.

N/A
N/A
Protected

Academic year: 2021

Partager "Proactive, dynamic and multi-criteria scheduling of maintenance activities."

Copied!
18
0
0

Texte intégral

(1)

HAL Id: hal-00378059

https://hal.archives-ouvertes.fr/hal-00378059

Submitted on 23 Apr 2009

HAL is a multi-disciplinary open access

archive for the deposit and dissemination of sci-entific research documents, whether they are pub-lished or not. The documents may come from teaching and research institutions in France or abroad, or from public or private research centers.

L’archive ouverte pluridisciplinaire HAL, est destinée au dépôt et à la diffusion de documents scientifiques de niveau recherche, publiés ou non, émanant des établissements d’enseignement et de recherche français ou étrangers, des laboratoires publics ou privés.

Proactive, dynamic and multi-criteria scheduling of

maintenance activities.

François Marmier, Christophe Varnier, Nourredine Zerhouni

To cite this version:

François Marmier, Christophe Varnier, Nourredine Zerhouni. Proactive, dynamic and multi-criteria scheduling of maintenance activities.. International Journal of Production Research, Taylor & Francis, 2009, 47 (8), pp.2185-2201. �10.1080/0020750802311106�. �hal-00378059�

(2)

International Journal of Production Research,

Vol. X, No. X, Month 200X, 000–000

Proactive, dynamic and multi-criteria scheduling of maintenance activities

F. Marmier*, C. Varnier, N Zerhouni

FEMTO-ST, Department AS2M, Besançon, France

In maintenance services skills management is directly linked to the performance of the service. A good human resource management will have an effect on the performance of the plant. Each task which has to be performed is characterized by the level of competence required. For each skill, human resources have different levels. The issue of making a decision about assignment and scheduling leads to finding the best resource and the correct time to perform the task. To solve this problem, managers have to take into account the different criteria such as the number of late tasks, the workload or the disturbance when inserting a new task into an existing planning. As there is a lot of estimated data, the managers also have to anticipate these uncertainties. To solve this multi-criteria problem, we propose a dynamic approach based on the kangaroo methodology. To deal with uncertainties, estimated data is modeled with fuzzy logic. This approach then offers the maintenance expert a choice between a set of the most robust possibilities.

Keywords: human resources, maintenance, scheduling, skill, tasks insertions, uncertainties.

_____________________

(3)

International Journal of Production Research,

Vol. X, No. X, Month 200X, 000–000

Proactive, dynamic and multi-criteria scheduling of maintenance activities

In maintenance services skills management is directly linked to the performance of the service. A good human resource management will have an effect on the performance of the plant. Each task which has to be performed is characterized by the level of competence required. For each skill, human resources have different levels. The issue of making a decision about assignment and scheduling leads to finding the best resource and the correct time to perform the task. To solve this problem, managers have to take into account the different criteria such as the number of late tasks, the workload or the disturbance when inserting a new task into an existing planning. As there is a lot of estimated data, the managers also have to anticipate these uncertainties. To solve this multi-criteria problem, we propose a dynamic approach based on the kangaroo methodology. To deal with uncertainties, estimated data is modeled with fuzzy logic. This approach then offers the maintenance expert a choice between a set of the most robust possibilities.

Keywords: human resources, maintenance, scheduling, skill, tasks insertions, uncertainties.

_____________________ *Corresponding author. Email:

(4)

1 Introduction

To remain competitive, companies must decrease their costs as much as possible and optimize their means of production. In order to maintain better availability of equipment, the maintenance service intervenes. It deals with problems before or after breakdowns. This improvement mainly requires better management of the workforce and its skills.

It is difficult to determine precisely the required number of human resources in a maintenance service (Mjema E. 2002). Indeed, the factors which enable capacity adaptation are prone to uncertainties. This is due to several parameters (variations of the intervention requests which are never similar, arrival dates of requests, the contents of the request, required treatment duration and availability of equipment as well as elements related to the real intervention treatments). Thus, the different tasks are well known when they occur. The reactivity and the organization of the maintenance service will depend on the importance of the required treatment.

There are mainly two types of maintenance activities: preventive maintenance, whose activities can be planned and corrective maintenance which is related to non-foreseeable breakdowns. Within the service of maintenance, employees have different skills and different level of qualifications. The duration of a task and thus the service reactivity will depend on the choice of the employees assigned to the task.

One of the specificities of the maintenance service is its ability to react and anticipate random events. In this context, the manager of maintenance has to plan the service activities using its own human resources. Depending on the characteristics of the tasks (preventive or corrective), the data considered will be either known and fixed or just estimated. As a consequence, the manager has to construct a robust schedule (by robust we mean schedules that are affected as little as possible by uncertainties – Davenport and Beck 2000, Herroelen and Leus 2005). He needs to anticipate data variations and potential new events (arrival of a new task due to a breakdown for example). His goal is to disturb as little as possible the current schedule when a new task has to be taken into account. We propose here a decision support approach to insert a new task into a current schedule. The main goal is to propose robust solutions to this scheduling problem.

In this article, we detail an approach which will allow us to assign tasks to resources by considering disturbances. The rest of the paper is organized as follows: In the second section, we will introduce how maintenance services can be managed. In the third part, we will present our scheduling problem. Then we develop our model and a resolution approach. Finally, we will discuss the different results obtained.

2 Maintenance management

In scheduling and planning, the time horizon is often split into periods (short, medium and long term). We can study events in each time interval. The context of this article takes place in the short term horizon. In this approach, we consider that maintenance tasks have to be scheduled when they occur (generally it is the case of corrective maintenance). The manpower is consequently the limiting factor in the scheduling realization. 2.1 Maintenance organization and maintenance objectives

There are various forms of management of maintenance. Indeed, if the company itself does not assume maintenance, it can be sub-contracted. The monitoring, the preventive and corrective maintenance can thus be entrusted directly to the manufacturer of the equipment (expert on this type of equipment) or with a company specialized in industrial maintenance (expert in monitoring and in remote maintenance field but general practitioner as for the monitored equipment). The equipment can also be rented, and if maintenance is not assumed by the user company, it can be sub-contracted too (Kaffel 2003).

(5)

Within each plant, the maintenance service has to maintain equipment under operation. The level of the results to reach by the maintenance services is generally predetermined. Either a contract is signed between two (or more) partners into order to fix their cooperation terms, or there is a moral agreement within the company between the production and the maintenance services, which fixes the efficiency of the equipment required. In both case, the objectives of the maintenance are defined by a level of availability (that can be different from one piece of equipment to another). The guaranteed availability is a percentage of the opening time. If, for a machine or a group of machines, the objective of availability is not achieved, penalties have to be paid in compensation by the service provider. Conditions concerning the penalties are defined while elaborating the contract and are function of the non availability duration. We will consider in our model the minimization of those penalties.

Availability becomes an important factor in the realization of a schedule. The ability to be in time for all tasks will have direct impact on the availability of equipment. In literature, availability is known as temporal constraints for the positioning of tasks at the time of the realization of a scheduling. This means that equipment is in fact occupied over certain periods by activities like maintenance (Schmidt 2000, Sheen and Liao 2005). Unavailability is also related to the resources in order to mean that operators cannot work between certain dates. To our knowledge, the concept of availability (or rather of equipment availability), is generally considered in the literature as a problem data. In our work, we considered it as an emergency indicator to assign priorities during the scheduling realization.

Equipment availability thus makes it possible to determine a temporal period, before the end of which the equipment must be operational. We obtain a completion date (a deadline) and also a period during which the treatment of the task must be carried out. A task with a very restricted treatment period will have priority on a task whose treatment can be delayed. The decision-maker will also take into account the cost, the importance of the equipment and other factors, such as the number of resources, to prioritize the work (Moore and Starr 2006). Among the different resources managed by the maintenance leader, human resources are of course the most important but also the most complex to manage.

2.2 Resources

If we focus on the tactical level of management (Crespo-Marquez and Gupta 2006), which corresponds to the management level where decisions are scheduled, we can see that skills are important to determine the role of the personnel in taking decisions. Grabot and Letouzey carried out a study on nineteen companies to obtain their opinions on the operators' assignment problem (Grabot and Letouzey 2000). It shows that the management of operators, according to their skills, is important for industry leaders and that there is still no software which takes this into account. 79% of the companies think that the management of operators is useful or essential in scheduling. While in current software the operational duration is fixed, for the leaders in industry, the consideration of the operators' qualification is a major element to be taken into account when setting up their assignments. For 47% of the companies studied, the qualification level sometimes has an influence on the length of time of the task's realization while for 27% it always bears an influence. The need for further development appears to link the abilities of human resources and the operational durations as in the determination of the potential of the company. However, if the competency levels of each one are known, another problem has to be solved: balancing the workload of resources and trying to reach a compromise between the reactivity and the perturbation due to the modification of the employees planning. In a maintenance service context, Le Quéré et al. (Le Quéré et al. 2003) show the difficulty of scheduling due to the different skills. The different skill types can be generic and used in various professional situations, or can be specific to the activity such as an habilitation or a special technic (due to the domain of activity, i.e. mechanics, electricity,...).

(6)

Maintenance service resources are mainly the qualified employees which will be able to solve the different interventions. To intervene they also need current or specific tools or equipment but also spare parts and consumable elements of maintenance. Maintenance is a technical function which requires a polyvalence of all the employees, at all level of responsibility. This polyvalence is mainly required for the technician because of the high complexity level of certain equipment. The competence complementarities will also help to solve real problems. The human resources could not be considered as identical, and then, the assignment decision has to take care of several parameters mainly competences.

Human resource being in limited number. Each operator can perform only one task at any time. The duration of a task will depend on the resource assigned to the task because of their skills. However, all the resources must be occupied. Then it will not necessarily be the most efficient human resource who will be assigned to the treatment of the task. The assignment of the tasks corresponds to a succession of tasks within working time of the human resources.

2.3 Tasks

The maintenance leader has to assign work orders to human resources. The term task usually used in scheduling aggregates the different maintenance elementary actions from the assumption of the task responsibility to the reloading of the equipment. Preventive and conditional maintenances are characterized by a known duration, a known starting date and a known due date. The corrective maintenance task generally occurs in the short-term horizon. They also have a duration, which is only evaluated since it depends on a correct diagnosis. Their earliest starting date is not necessarily immediate, since spare parts are not necessarily available (they can be expected from a supplier) or the availability level of the equipment is quite good and then the intervention can be made later depending on their priority.

These characteristics of maintenance tasks allow us to use the same model. The task is composed of a standard duration (minimal duration if the best resource is assigned to the task) and the type of skill required (for example, the skill could be mechanic, electric, automatic or an issue of certification). The effective duration of a task will be only known once a resource has been assigned to it.

The leader of the maintenance service is then face with the decision necessary to best resolve the issues of assignment and scheduling. To solve this problem the manager must find the correct resource and the best time to perform each task. Then, to make a schedule which could be representative of the reality, the maintenance manager has to use resource and task data which reflect the reality. However, most of the data concerning both resources and tasks is estimated. The maintenance manager is then confronted with a scheduling problem in an uncertain context.

3 Scheduling problems with uncertainties

As we saw earlier, one of the specificities in maintenance task scheduling is the use of estimated data. This leads us to use a proactive approach to deal with variations on several characteristics of the tasks (mainly for the duration, but also for due dates, skill levels, etc.).

3.1 Context and uncertainty

In classical scheduling problems, the data is generally supposed to be known and fixed. However, the reality does not prove this hypothesis, firstly due to variations, but also because a lot of data are only previsions or estimations. Optimal solutions to such scheduling problems which are based on fixed data and do not show the reality, will have only a few rare opportunities to be applicable and will be subject to modifications.

(7)

In the existing model which takes into account uncertainty, we find mainly the Davenport and Beck solution which presents three approaches: proactive, reactive and proactive-reactive approaches (Davenport 2000). Proactivity is the fact of anticipating disturbances before they actually occur. Reactive approaches work in real time, during the scheduling phases. Proactive-reactive methodologies, will try to combine both approaches in order to take into account uncertainties during the entire scheduling life cycle and ensure a maximum of performance (Herroelen and Leus 2005).

A schedule is robust if this performance is hardly sensitive to uncertainties and variations in data. Moreover a schedule has to be flexible to be adaptable to the possible disturbance. We can identify static flexibility as the temporal flexibility (concerning starting date of tasks), the sequential flexibility (which authorizes the permutation between tasks, and which supposes the temporal flexibility) or the assignment flexibility (which permits to change the resource after a first assignment). There is also dynamic flexibility which is the scheduling capacity to adapt itself to disturbances.

In this paper, we consider that, in a given schedule, task data is subject to more or less variations in order to be representative of the reality. The task data which is subject to variations will depend on the nature of the task. Preventive maintenance activity is well-known and well-documented, the face-value of the duration will be considered as determinist. However their release dates depend on the current production work order end. The due date of a preventive maintenance will depend on the potential breaking-down of the equipment due to a lack of repair. It cannot be known before it occurs. The release date and the due date, for a preventive task, can be considered as uncertain. As for, corrective maintenance tasks, the processing time can only be estimated, since their durations depend on the effectiveness of diagnosis. The release dates of this type of task are generally known because corrective maintenance is usually due to a breakdown and the equipment is stopped. Their due dates are also considered as known because from the breakdown, the equipment availability level goes down. Then corrective maintenance task duration can be considered as uncertain. The fact that treatment of the tasks requires human resources implicates knowledge on their level of competence. The latter being estimated, the real task duration, for all types of tasks, will also be uncertain. Finally, the main disturbance, that may happen, is the arrival of a new task which has to be inserted into the current schedule. Its parameters are of course subject to estimation, and their precision depends on the accuracy of the diagnosis.

We quickly introduce the different work in the literature, which deals with the scheduling insertion problem. Monostori et al. have made a state of the art of the proactive approaches and reactive approaches with disturbance (Monostori et al. 1998). Kis and Hertz, but also Gröflin and Klinkert treat the issue of inserting tasks in a job-shop. They tried to minimize the total duration of the schedule when a new task appears (Kis and Hertz 2003, Gröflin and Klinkert 2006). In the Resource Constrained Project scheduling Problem, known as RCPSP, Artigues et al. consider a dynamic approach which is based on a first and static schedule (Artigues

et al. 2003). A project scheduling bibliography under uncertainties has been published by Herroelen et al.

(Herroelen and Leus 2005). It considers reactive approaches, robust or proactive approaches and approaches with stochastic data. One way of taking into account uncertainties consists in using fuzzy logic.

3.2 Scheduling using fuzzy logic

Scheduling using deterministic data is useful in context where there is no source of uncertainties. However in an industrial context and especially in a maintenance environment, the data used is often estimated and has a degree of uncertainty. Solutions given by a deterministic scheduler will then not be feasible and far from the real optimum. That is why uncertainties have to be considered during the modelling phase. As in many scheduling contexts, the main source of uncertainty is the processing time of the different tasks. The nature of each maintenance process task is fuzzy. For example corrective maintenance tasks depend on a correct

(8)

diagnosis. The fuzzy theory is a generalization of the classical set notion where the membership of an element to a set is true or false. Fuzzy logic was introduced by Zadeh, to deal with problems where data is not deterministic (Zadeh 1965). Fuzzy set theory uses multi-valuated functions to represent the membership of an object in a set rather than true or false in the classical binary theory. It quantifies how an element is considered as being in a set. Guiffrida and Nagi published a survey on fuzzy set theory applications in production (Guiffrida and Nagi 1998). A great number of works uses fuzzification to represent due dates or processing time and makespan. The earliest/latest starting dates of a job in maintenance depending on a fuzzy release date are of course fuzzy. The completion time of tasks depend on the preceding tasks and are then also fuzzy. A lot of works has been done concerning job-shop and flow-shop problems in fuzzy environment (Dubois et

al. 1995). Multiobjective scheduling problems are source of research for fuzzy theory (Petrovic et al. 2007).

A lot of works has been successfully achieved using fuzzy logic to deal with uncertainties. We will now propose to model our scheduling problem and to use the fuzzy logic to model uncertain data.

4 Model

A maintenance service is an environment composed of m operators working in parallel. All of them can perform each task, but not with the same efficiency. Moreover, the resource which is the most effective for a task would not necessarily be effective for all tasks. Since the main resource is operators we are faced with a parallel machine problem, but with unrelated machines. In the classical scheduling problem typology, this problem is denoted R or Rm|ȕ|Ȗ, where ȕ represents the processing characteristics and constraints and the Ȗ

field contains the objective to be minimized (Pinedo 1995).

Estimated data is used to solve this scheduling problem, which then lead to schedules which have to be built in order to avoid any effects of these uncertainties on the succession of operations. Schedule modifications may improve results by decreasing lateness. However, the workload has to stay balanced between resources. Our problem is then characterized by a group of antagonist objectives. We propose in this study to look at a group of the best solutions. The choice will then be left to the manager. The obtained solutions being composed of results on different criteria, dominance relations are used in order to determine which solution will be conserved. Dominance relations traditionally met in literature, use the dominance term to show that one solution dominates a second one over all criteria. However, a solution which will completely dominate others has a low probability of existing. Consequently, we will use a relation of non dominance between two solutions. It means that there is at least one criterion on which a solution is not dominated.

1

2

[1, objectif] j j

j N f X f X

  Ÿ  (1)

The equation 1 implicates that X1 is not dominated by X2.

4.1 Tasks

All tasks j are characterized by a standard duration pj, a release date rj, a due date dj and a priority due to the

penalty which could be claimed if the treatment is not performed on time. If the task j is a preventive maintenance its release date and due date will be considered as fuzzy and the notation will be modelled by a fuzzy set ( ,r dj j)with a triangular membership function given by a triplet (rj

1

, rj2, rj3) and (dj1, dj2, dj3).

Inversely, if the task j is a corrective maintenance task that is the standard duration which is considered as fuzzy. Uncertain processing time of operation j is then modelled by a fuzzy set p with a 4 points shape j membership function given by a quadruplet (pj1, pj2, pj2’, pj3).

(9)

4.2 Human resources

The maintenance service is composed of m human resources (i=1...m), characterized by a competence profile.

Relative speeds do not depend only on the tasks. Each resource has a fuzzy corresponding qualification level for each task. Operators will perform them more or less quickly. The fuzzy duration of the job j, by the human

resource i is denoted by p With: ij

, , j

, ^1, , `

ij j i Cr

p f p Comp  i m

  !   (2)

WhereComp i Cr, j is the fuzzy competence rate set of resource i in the competence Cr which is required to j

achieve the task j. ,

j

i Cr

Comp has a triangular membership function given by a triplet ( ,

j i Cr Comp 1, , j i Cr Comp 2, , j i Cr Comp 3).

It can be represented with a matrix in which, for each different kind of job, where the corresponding rate to the required competence can be found.

1,1 1, ,1 , n n C r m m C r C o m p C o m p C o m p C o m p ª º « » « » « » ¬ ¼  "  # % #  " 

Fuzzy membership function of face duration, release date and competence rate are presented in figure 1.

Figure 1: Fuzzy membership functions

The treatment duration of two different tasks by two different resources permits the observation that for one kind of task, a resource can be more powerful than for another, whereas, for the second task, it is the second one which is the most efficient.

In our problem, we will consider a current schedule (already computerized) which integrates n tasks that had

already been assigned to m human resources. The current schedule can be modelled as a graph. The graph is a

unit of branches which each represents a human resource schedule. They are composed of nodes which represent tasks and arcs which are the potential constraint between two tasks (precedence constraint). The valuations of arcs are the duration of the source task. Tasks are placed between a fictive beginning task B and

fictive end task E. There is no link between branches, because resources work independently.

4.3 Variables

The variables of our problem are the following ones for each task j:

x tj j=1…n planning date of task j.

x xij j=1…n and i=1…m 0-1 value representing the tasks assignment. xij=1 if task j is assigned to resource i, else xij=0.

(10)

x Tj j=1…n  lateness of task j.

x Uj j=1…n  boolean representing the fact that task j is late. Uj =1 if the task is late, else Uj =0.

x PLj j=1…n  potential load of human resource i. It corresponds to totality of the duration of all tasks

assigned to i.

x modj j=1…n represents the number of modifications made to the employees timetable. modj is

incremented each time assignment j is modified, x R S robustness measure of a schedule S.

4.4 Constraints

Each task has to be assigned only once to only one resource:

^

`

1 1 1 n ij j x   i m

¦

(3)

A task j cannot be planned before the equipment i is available:

j i

j t r

  t (4)

4.5 Objectives

In order to consider corrective maintenance, we have to dynamically insert tasks into a current schedule. However it is difficult to insert tasks into a schedule which is subject to variations between the initially-proposed one and the reality. In order to find new task insertion solutions, we have to determine which place is the most flexible and consequently propose the most robust schedule (the least sensitive to variations). The fact of proposing solutions which take into account variations by anticipating them, signifies that our scheduling approach is proactive. Tasks which are finished late decrease the equipment availability ratio implying that we have to minimize the total weighted tardiness.

1 min n j j j w T

¦

(5)

The aim of our work being to schedule human resources activities, our methodology will take into account their individual performances to find the best resource for each task. But it will also consider the existing workload in order to distribute activities between employees. Other objectives will then be:

x To minimize the number of late tasks:

1 min n j j U

¦

(6)

x To balance and to minimize the workload, by minimizing the standard deviation between resources:

2 1 1 min min ( ) m i i i PL PL m V

¦

 (7)

x To minimize the number of task which could have a new assignment (assigned to a new resource):

1 m in m o d n j j

¦

(8)

(11)

5 Problem resolution

5.1 Tardiness penalties and robustness measure

In order to obtain the completion time of each job, fuzzy operations have to be used. The fuzzy task duration added to the fuzzy release date will allow the fuzzy set representing the completion time computation to be obtained. As opposed to (Song 1965) where there is precedence constraint, here the fuzzy completion time is obtained with:

,

max , ij j i pred j ij C  r C  p (9)

Where  is the fuzzy addition operator and max is the fuzzy maximum operator.

Robustness measure is used to show the difference between solutions which are subject to uncertainties. It evaluates the lateness potential of a solution. Task lateness is defined by the fact that its completion date is reached after its due-date. In other words, if the task is not finished at the due-date means that it will be late. In classic logic, the fact that task j is not finished, corresponds to the intervalº¼ f;Cjª¬. If the task is not

finished before the intervalª¬dj; f

, the task will be late. An intersection between these intervals means that

there is lateness. In fuzzy logic the completion date and due-date will be the fuzzy intervals C and j d . j

Intervals previously obtained will respectively have for membership functions ;

j

C Pºf ª

¼ ¬ and Pª¬dj;f (Dubois et

al. 1995).

A robust schedule is defined as being insensitive to disturbances. Leon and al. developed a methodology to

measure scheduling robustness and to realize robust schedule in case of disruption due to control (Leon et al.1994). A schedule robustness measure was also defined by Chen and Muraki for the scheduling in batch processes (Chen and Muraki 1997). An adaptation of this measure is defined as being the average degree of conflict on the individual constraint between a task and its due date constraint as observed in figure 2, where,

the fuzzy membership function Plateness

t shows the potential lateness and is obtained from the equation 10.

Figure 2: Lateness possibility in case of conflict

However, robustness represents the fact that its performance is not very sensitive to data uncertainties and variations. The fuzzy membership function Pin time_

t is then obtained from the equation 11. Since all constraints do not have the same importance we introduce the weightj penalty factor (described in the equation

12) to weight the different conflict in the equation 13. n denotes all the different conflict locations within the

schedule S and R(S) will then give its robustness level. A robust schedule will have an index R(S) = 1 contrary

to a schedule which is sensitive to variation which will obtain R(S) = 0.

min

,

j ij j lateness t C t d t P P P (10)

_ 1 j in time t lateness t P P (11)

(12)

max / j j j weight w w (12)

_

1 1 * j j in time j R S weight j

¦

P (13)

The maximisation of R(S) has to ensure both the minimisation of the

¦

w Tj jand to find solutions which are little affected by data uncertainties. The optimisation function max R(S) will then be used instead of

min

¦

w Tj j.

5.2 Dynamic insertion methodology

In this part of the paper we are interested in introducing a new task into a current scheduling. New tasks being mainly maintenance corrective tasks, their characteristics are stochastic as long as a diagnosis has not been made. When a new task has to be inserted and, when there is not any obvious solution, two ways are possible. The first one consists in generating a completely new static scheduling. This methodology does not take into account potential disturbance for employees which have a new planning. The second one consists in searching new scheduling by adding few modifications to the current schedule. This kind of approach ensures that the existing planning and the employee organization be disturbed as little as possible.

Begin

Initialization (ES) ;

While nb_search < nb_search_max do nb_search ++ ;

S Å Random_choice(ES) ;

Eval Å Evaluation(S) ; nb_descent Å 0 ;

While (nb_descent < nb_descent_max) or (find ==false) do

nb_descent++ ; S’ Å neighbough(S) ; If ES !E S’ then nb_descent Å 0 ; ES Å S’ ; If S’ E ES then S Å S’ ; End if Delete_dominated_solutions(ES) ; End if End while

While (nb_jump < nb_jump_max) or (find ==false) do

Nb_jump++ ; S’ Å Jump(S) ; If ES !E S’ then nb_jump Å 0 ; ES Å S’ ; If S’ E ES then S Å S’ ; Find Å true ; End if Delete_dominated_solutions(ES) ; End if End while End while Return (ES); End

(13)

The proposed method is based on a neighborhood search. This method uses mainly a local descent and the kangaroo methodology (Fleury et al. 1999) in order to avoid local locking. It enables solutions of better

quality regarding the criteria to be found. The multi-criteria scheduling method is described with the algorithm 1. which enables a set of efficient solutions regarding a set of criteria to be found. The algorithm is mainly composed of two blocks: the first one corresponds to the search of more efficient solutions inside a neighbourhood. It consists in switching two tasks stochastically chosen. If after a certain number of attempts, the solution is not improved the neighbourhood is enlarged with a jump. The second block then corresponds to searching a new solution in a larger neighbourhood in order to go out of local minima (as shown in the figure 3.). A jump consists in switching two tasks stochastically chosen three times. The number of searches has to be limited so as to limit the computing time.

Figure 3: Lateness possibility in case of conflict

The algorithm is composed of variables: x ES: Set of solutions that we try to improve. x S: Solution that we try to improve.

x S’: Solution on which we are working.

x nb_search: Number of phases in the algorithm. x nb_descent: Number of local searches.

x nb_jump: Number of jumps.

x boolean find: find==true means the current solution was improve during the last phase.

But also of data:

x nb_search_max: maximum number of phases in the algorithm. x nb_descent_max: maximum number of local searches.

x nb_jump_max: maximum number of jumps.

And of functions:

x Initialization(ES): Find the initial set of solutions. This one is found by trying all the insertion possibilities of the new task in the current scheduling. These solutions (or scheduling) are then compared and the best ones following the different criteria are kept.

x Evaluation(S): Give the evaluation of S following criteria used.

x Neighbough(S): Find a neighbour of S by exchanging two tasks randomly chosen. x Delete_dominated_solutions(ES): delete the dominated solutions of ES.

To proceed stochastically to task exchanges rather than to a stochastic displacement, allow a certain balancing of the load to be conserved. The balancing of the load is usually made with the total duration of tasks assigned to through the number of tasks.

(14)

As regard to the complexity of the problem, multi-objective optimization problems are very complex. The complexity plus the combinatorial aspect is a result of there being no single optimal solution for these problems, but rather a set of trade-offs called efficient solutions or Pareto-optimal solutions. The size of the space of research SR is obtained as follow:

1 ! ! ! ! m i i n n m SR n m 

u

–

with ni the number of tasks assigned to the machine i.

5.3 Data generation

We carried out a computational experiment on a Pentium IV 3.00GHz in which we considered tests obtained by randomly generating the pij values. pij values are principally obtained by the combination of a basic

duration of the task (in time unit) which is an integer of the uniform distribution [1, 7200]. This duration is multiplied by the competence level of the resource in the corresponding competence. For each task, a corresponding competence is determined by an integer from the uniform distribution [1, 3]. It refers for each resource to a level, which is a real from the uniform distribution [1.01, 2.00], in this competence. Penalties are determined as integers from the uniform distribution [1, 10]. They are assigned if the task treatment is finished after its due-date, which is also obtained following a uniform distribution. The parameter nb_search_max had

been fixed to 5, nb_descent_max to 5 and nb_jump_max also to 5.

5.4 Validation of the robust aspect

The maximisation of R(S) has to ensure both the minimisation of the

¦

w Tj jand to find solutions which are hardly sensitive by data uncertainties. In order to valid this aspect, the solutions obtained by two mono-criterions versions of this optimisation approach can be compared. The first approach has min

¦

w Tj jfor objective function and the second has max R(S). The table 1 presents results (average of teen simulations)

obtained by these two mono-criterions optimisation approaches. The last three column present the obtained solutions applied in uncertain context. Most of data being fuzzy, we obtain extreme values for the

j j

w T

¦

which are

¦

w Tj jmax and

¦

w Tj j

min

. The GAP is then obtained by the difference

¦

w Tj jmax -

¦

w Tj j

min

.

Table 1. Contribution of the robustness measure on the

¦

w Tj j.

m n Optimisation criterion Uncertain context j j w T

¦

min

¦

w Tj j max GAP 2 30

¦

w Tj j 268 2131 1863 R(S) 0 729 729 50

¦

w Tj j 1271 6972 5701 R(S) 0 2318 2318 5 50

¦

w Tj j 574 2115 1541 R(S) 0 299 299 100

¦

w Tj j 2963 11012 8049 R(S) 1118 7240 6122 8 70

¦

w Tj j 0 1412 1412 R(S) 0 293 293 150

¦

w Tj j 1547 9437 7890 R(S) 0 2502 2502

(15)

In the case of a schedule of 150 tasks assigned to 8 resources in which 1 new task is dynamically inserted. By maximizing R(S), the reduction obtained is about 60% of GAP where the effective total weighted tardiness can be located. Solutions are then less affected by data uncertainties. The maximal value is also reduced by 74% by maximizing R(S) then maximisation of R(S) allows minimizing

¦

w Tj j. Figure 3 shows the reduction of the GAP and of the effective total weighted tardiness maximal value.

Figure 4: Possible value of j j

w T

¦

for the m=5 and n=100 case

5.5 Multi-criteria example

We studied the dynamic insertion of tasks through three different existing scheduling cases. The first study allows the improvement obtained with the dynamic insertion methodology to be validated. In this first example, we treated the case of a schedule of 40 tasks assigned to 3 resources in which 1 new task had to be dynamically inserted.

Figure 5: Convergence of the evaluations

Figure 4 shows the best results, following each criterion, during the insertion of one task. That is not a solution but it shows the correct convergence of the set of solutions.

The figure 5 shows the best results, following each criterion, during the insertion of ten tasks. The selected solution in each set of solutions is the one which minimizes robustness. Despite the increase of the load, it shows that, the robustness level of the obtained solution is maintained.

(16)

Solutions obtained were compared with a static heuristic which was presented in Marmier and al. (2006). This

heuristic completely re-built the schedule. In certain cases it is interesting to note that the heuristic proposition is totally dominated by propositions obtained with the multi-criteria research. In all cases, the solutions proposed by multi-criteria research are best on almost all of criteria. In all cases too, this methodology allows to change the assignment of a smaller number of tasks than with a static rescheduling.

Figure 5: Best results during 10 tasks insertions

We treated the case of a schedule of 40 tasks assigned to 3 resources in which 10 new tasks had to be dynamically inserted. The 10 new tasks were then dynamically inserted into the existing schedule.

Figure 6: Comparative results diagram

Figure 6 shows the final simulation of the obtained solutions which presents results following all criteria. The results of this evaluation enable to show that the obtained solution with the multi-criteria research completely dominated the solution obtained with the heuristic.

5.6 Discussion

The results obtained were compared with those obtained by Marmier et al. (2006). This work presented a

mono-criteria heuristic allowing task assignment to human resources under competences constraint. The test results obtained from this heuristic, following criteria used in this study, allow comparison. We showed, of course that by privileging a criterion gives solutions with bad results following other criteria. The fact of changing task assignment is disturbing for employees. Solutions obtained with the presented method show that a good solution can be obtained by moving fewer tasks than with the heuristic.

(17)

6 Conclusion and perspectives

We presented here a multi-criteria methodology to dynamically insert new tasks into an existing schedule. This approach gives to the maintenance manager a set of solutions with their evaluations following different criteria. Fuzzy logic has been used to deal with uncertainties and to evaluate potential penalties. The originality of our methodology is to propose to the manager a set of non-dominated solutions. The manager, following his own perception of the criteria importance will have to choose one of them. We compared this methodology to results obtained with a static scheduling methodology. Sometime, heuristic solutions are totally dominated by our methodology. In all cases, multi-criteria method gives best solutions following at least one criterion. In all cases too, it allows to change fewer task assignment.

More and more companies sub-contract maintenance function; the organisation of the maintenance service has then to be changed. Thus, one finds more and more maintenance services which use e-maintenance center to ensure a follow-up of the maintained equipment. In this context, new data appear. Production sites are not necessarily all in the same geographical location; information which make it possible to diagnose breakdowns can be remotely obtained; etc. Thus, the scheduling approach may be modified. The principal prospective for this work is then the extension to the distributed context.

7 References

Artigues C., Michelon P., Reusser S., Insertion techniques for static and dynamic resource-constrained project scheduling, European Journal of Operational Research, 2003, 149, 249-267.

Chen W., Muraki M., A fuzzy evaluation of schedule robustness under processing time variations in batch plants, Journal of Chemical Engineering of Japan, 1997, 30(2) 260-267.

Crespo-Marquez A. and Gupta J. N., Contemporary maintenance management: process, framework and supporting pillars, Omega, 2006, 36, 313-326.

Davenport A.J., Beck J.C., A survey of techniques for scheduling with uncertainty, IBM and Ilog, 2000.

Dubois D., Fargier H., Prade H., Fuzzy constraints in job-shop scheduling, Journal of Intelligent Manufacturing, 1995, 6(4) 215-234.

Fleury G., Goujon J.Y., Gourgand M., Lacomme P., Multi-agent approach and stochastic optimization: random events in manufacturing systems, Journal of Intelligent Manufacturing, 1999, 10, (1), 81-101. Grabot B., Letouzey A., Short-term manpower management in manufacturing systems: new requirements and

DSS prototyping, Computers in Industry, 2000, 43, 1, 11-29.

Gröflin H., Klinkert A., Feasible insertions in job shop scheduling, short cycles and stable sets, European Journal of Operational Research, 2006.

Guiffrida A.L., Nagi R., Fuzzy set theory applications in production management research: a literature survey, E Journal of Intelligent Manufacturing, 1998, 9, 39-56.

Herroelen W., Leus R., Project scheduling under uncertainty: Survey and research potentials, European Journal of Operational Research, 2005, 165, 289-306.

Kaffel H., D’Amour S., Aït-Kadi D., The concept of distributed maintenance, Computer and Industrial Engineering, 2003

Kis, T., Hertz A., A lower bound for the job insertion problem, Discrete Applied Mathematics, 2003, 128, 395-419

Le Quéré Y., Sevaux M., Trentesaux D., Reactive scheduling of complex system maintenance in a cooperative environment with communication times, IEEE transactions on Systems, Man & Cybernetics, part C : applications & reviews, 2003, 33, 225-234.

Leon V.J., Wu S.D., Storer R.H., Robustness measures and robust scheduling for job shops, IIE Transactions, 1994, 26.

(18)

Marmier F., Varnier C., and Zerhouni N., Maintenance activities scheduling under skills constraints, Proc. of IEEE-ICSSSM, Troyes, France, 2006.

Mjema E., An analysis of personnel capacity requirement in the maintenance department by using a simulation method, Journal of Quality in Maintenance Engineering, 2002, 8(3), 253–273.

Monostori L., Szelke E., Kadar B., Management of changes and disturbances in manufacturing systems, Annual Reviews in Control, 1998, 22, 85-97.

Moore W.J., Starr A.G., An intelligent maintenance system for continuous cost-based prioritisation of maintenance activities, Computers in Industry, 2006, 57, 595–606.

Petrovic S., Fayad C., Petrovic D., Sensitivity analysis of a fuzzy multiobjective scheduling problem, accepted for publication in the International Journal of Production Research, 2007.

Pinedo M., Scheduling, Theory, Algorithms and Systems, Prentice, 1995.

Sheen G.J., Liao L.W, Scheduling machine-dependent jobs to minimize lateness on machines with identical speed under availability constraints, Computers and Operations Research, 2005.

Schmidt G., Scheduling with Limited Machine Availability, European J. Operational Research, 2000, 121, 1-15.

Song X., Handling fuzzy constraints in flow shop problem, Proc of EUROFUSE, 1965. Zadeh L.A., Fuzzy sets, Information and control, 1965, 8, 1265-1279.

Figure

Figure 1: Fuzzy membership functions
Figure 2: Lateness possibility in case of conflict
Figure 3: Lateness possibility in case of conflict
Table 1. Contribution of the robustness measure on the ¦ w T j j .
+3

Références

Documents relatifs

The Herschel Mass-loss of Evolved StarS guaranteed time key program MESS (Ref. 14) investigates the dust and gas chemistry and the properties of CSEs for a large, representative

Although Gaudry (1866) was one of the first to arrange tree phylogenies by linking fossil and current forms, it is the comparable approach by Haeckel (1866) that is the

Using the separator algebra inside a paver will allow us to get an inner and an outer approximation of the solution set in a much simpler way than using any other interval approach..

Finally, the HPRTWF algorithm, based on the PRTWF function, is also very efficient in solving the total weighted flow-time minimization problem on identical

In this seminar we try to answer the question whether data mining is cause or consequence of these re- cent developments through an integrated view of four key components of data

He’s visiting his aunt at the weekend The weather will be nice tomorrow We’re going to be famous one day.. Be a fortune

The approach presented in this work is intended to assign resources to tasks to reduce, on a H horizon, the costs of delays or deviations, proposes an algorithm to

“negative” (and associated colouring) to the cables ; thus for a “negative beamline” set up for negatively charged particles, the “negative cable” is attached to the