Page de garde - univ-annaba.dzbiblio.univ-annaba.dz/wp-content/uploads/2014/09/... · Pr....

117
ﺍﻟــــﻌـــﻠﻤﻲ ﻭ ﺍﻟـﺒـﺤــﺚ ﻭﺯﺍﺭﺓ ﺍﻟـﺘـﻌـﻠـﻴـﻢ ﺍﻟـــﻌــﺎﻟﻲ ﺟﺎﻣﻌﺔ ﺑﺎﺟــﻲ ﻣـﺨـﺘﺎر ﻋـﻨـﺎﺑـﺔAnnée 2004/2005 FACULTE DES SCIENCES DE L’INGENIEUR DEPARTEMENT D’INFORMATIQUE MEMOIRE Présenté en vue de l’obtention du diplôme de MAGISTER Option Intelligence Artificielle Distribuée Par ZEDAIRIA Abdallah Directeur de mémoire : Dr. M. BABES Maître de conférence Université de Annaba Devant le jury : Président : Pr. Mohamed-Chaouki Batouche Professeur Université de Constantine Examinateur : Dr. Mohamed-Tarek Khadir Maître de conférence Université de Annaba BADJI MOKHTAR- ANNABA UNIVERSITY UNIVERSITE BADJI MOKHTAR- ANNABA Définition d’une heuristique hybride pour résoudre un problème de planification de personnel dans un milieu hospitalier.

Transcript of Page de garde - univ-annaba.dzbiblio.univ-annaba.dz/wp-content/uploads/2014/09/... · Pr....

Page 1: Page de garde - univ-annaba.dzbiblio.univ-annaba.dz/wp-content/uploads/2014/09/... · Pr. Mohamed-Chaouki Batouche de l’université de Constantine qui m’a considérablement honoré

وزارة الـتـعـلـيـم الـــعــالي و الـبـحــث الــــعـــلمي

جامعة باجــي مـخـتار عـنـابـة

Année 2004/2005

FACULTE DES SCIENCES DE L’INGENIEUR DEPARTEMENT D’INFORMATIQUE

MEMOIRE

Présenté en vue de l’obtention du diplôme de MAGISTER

Option Intelligence Artificielle Distribuée

Par ZEDAIRIA Abdallah

Directeur de mémoire : Dr. M. BABES Maître de conférence Université de Annaba

Devant le jury :

Président : Pr. Mohamed-Chaouki Batouche Professeur Université de Constantine Examinateur : Dr. Mohamed-Tarek Khadir Maître de conférence Université de Annaba

BADJI MOKHTAR- ANNABA UNIVERSITY

UNIVERSITE BADJI MOKHTAR- ANNABA

Définition d’une heuristique hybride pour

résoudre un problème de planification de

personnel dans un milieu hospitalier.

Page 2: Page de garde - univ-annaba.dzbiblio.univ-annaba.dz/wp-content/uploads/2014/09/... · Pr. Mohamed-Chaouki Batouche de l’université de Constantine qui m’a considérablement honoré

I

مـــلـــخــص

إن جـل األعمال اإلنسانية تستوجب تخطيطا مجمال للوسائل عبر الزمن، حيث أن نظرية التخطيط تعالج نماذج

رياضية، ولكنها كذلك تحلل حاالت واقعية جد معقدة.

نالحظ بأن تعيين األشخاص، و خاصة عمال القطاع الصحي؛ الذين يخضعون لقيود متعددة - وأحيانا متعارضة

- تعتبر مسألة جد صعبة و معقدة، و لهذا تستوجب طرقا استكشافية لحلها.

يعتبر هدفنا األساسي في هذا البحث هو إيجاد حل لمسألة واقعية، وهي إنشاء استعمال زمن أسبوعي لمجموعة

من األطباء، الذين يعملون في مصلحة أشعة بمستشفى. هذه المسألة لها عدة قيود ومن أنواع جد◌◌◌◌◌ مختلفة.

لقد استعملنا خوارزمية جينية من أجل تحسين و تقليل تكلفة تعيين األطباء في المناصب. والمتغيرات التي تخص

معيار التقليل هي مجموع حسابات خرق القيود.

، (IA) والذكاء اإلصطناعي (RO)نظرا ألهمية الموضوع، تم تطوير عدة طرق في مجالي البحث التطبيقي

هذه الطرق يمكن تصنيفها عموما إلى قسمين كبيرين : الطرق الدقيقة (الكاملة) التي تضمن كمال الحل، والطرق

التقريبية (غير الكاملة) التي تخسر من كمال الحل لتربح في الفعالية.

المبدأ األساسي للطرق الدقيقة يتمثل عموما في عد -وبطريقة ضمنية- مجموعة الحلول في مجال البحث. و

بالرغم من النتائج المحققة، فنظرا لتزايد مدة حساب الحل تزايدا أسيـا مع حجم المسألة، فالطرق الدقيقة تالقي

صعوبات كبيرة في مواجهة التطبيقات ذات الجحم الكبير.

الطرق التقريبية تشكل بديال جد هام لدراسة مسائل التحسين ذات الحجم الكبير، إذا كانت األفضلية ليست

رئيسية أو جوهرية. والدليل على ذلك أن هذه الطرق مستعملة و من زمن طويل من كثير من الباحثين و التطبقيين.

Page 3: Page de garde - univ-annaba.dzbiblio.univ-annaba.dz/wp-content/uploads/2014/09/... · Pr. Mohamed-Chaouki Batouche de l’université de Constantine qui m’a considérablement honoré

II

في ضوء هذه المعطيات، تبين لنا أنه من المعقول اإلعتماد على الطرق العرضية للتحسين - التي هي عبارة عن

طرق تقريبية -، إال أننا لم نرد أن نقتصر على بحث عشوائي بحت. مما جعلنا نستلهم بعض خصائص اإلنتقاء

الطبيعي.

في هذا البحث نقترح تطبيق خوارزمية جينية لحل المسألة سالفة الذكر، هذه الخوارزمية نوع من الخوارزميات

. ولقد اقترحنا في هذه الدراسة طرق تقاطع و تبديل (طفرة)، (AI)التطورية التي تنتمي إلى حقل الذكاء اإلصطناعي

كما عرفنا نموذج مناسب النتقاء اآلباء من أجل إيجاد أحسن األبناء المرشحين إلنشاء فصيلة جديدة.

إن اقتراحات التحسين التي قمنا بها، سمحت لنا بضمان اتجاه الخوارزمية إلى حلول مناسبة. و نظرا لكون

المسألة المدروسة، جد صعبة، فإن كل طريقة استكشافية تعتبر مساهمة في حلها.

كما هو معلوم، فإن دراسة الحاالت الطارئة و عالجها في إنشاء مخطط زمني، ال يقل أهمية من إيجاد الحل

األمثل االبتدائي. فاألخذ بعين االعتبار لهذه الحاالت يؤدي إلى إيجاد حل أكثر مرونة و مالئمة للواقع. لذلك

خصصنا الجزء من بحثنا لدراسة الحاالت الطارئة الناتجة عن تغيب األشخاص أو توقف الوسائل المادية. واقترحنا

حلول مناسبة لمعالجتها، رغم قلة المراجع في هذا المجال.

وحسب النتائج المشجعة المتحصل عليها يمكننا القول بأن طريقة الحل المقترحة أداة ذات فعالية كبيرة لحل

كل مسألة تصاغ على منوال مسألتنا.

Page 4: Page de garde - univ-annaba.dzbiblio.univ-annaba.dz/wp-content/uploads/2014/09/... · Pr. Mohamed-Chaouki Batouche de l’université de Constantine qui m’a considérablement honoré

III

ABSTRACT

For all their activities, the human beings need to plan their acquisition of certain

resources. The scheduling theory deals mathematical models but also analyze complex real

situations. Although the state of the art is rather rich, the existing contributions stay far from

being complete and optimal.

Let us notice that the planning of the staff, and in particular the hospital staff planning,

which is subjected to a variety of constraints -sometimes contradictory-, is a problem NP-

Hard in the strong sense. Consequently, heuristic methods must be used to resolve it.

In this study, our main objective is the resolution of a concrete problem of weekly

generation of doctors' timetables in a service of radiology. This problem possesses

constraints of very varied types. We implemented a genetic algorithm for the optimization

of affectation cost related to the doctors in the post offices. The criterion of optimality is

the minimization of the sum of the violation measures related to the constraints in order to

make it equal to zero.

Many methods were developed in operational research (OR) and in artificial

intelligence (IA) domains to solve this problem. These methods can be briefly classified in

two big categories: the (complete) exact methods which guarantee the completion of the

solution and the (incomplete) approached methods which lose the completion in search of

efficacy.

The essential principle of an exact method consists generally in enumerating, often in an

implicit way, all the solutions of the research space. In spite of the realized progress, the

necessary calculation time to find a solution risk to increase exponentially with the size of

the problem. The exact methods meet generally difficulties in front of applications of

important sizes.

The approached methods constitute a very interesting alternative to treat optimization

problems of big sizes if the optimality is not essential. These methods were used for a long

time ago by numerous practitioners.

Page 5: Page de garde - univ-annaba.dzbiblio.univ-annaba.dz/wp-content/uploads/2014/09/... · Pr. Mohamed-Chaouki Batouche de l’université de Constantine qui m’a considérablement honoré

IV

In this optics, it seemed to us reasonable to envisage stochastic methods of optimization

which are approached methods. Nevertheless, we did not want to content ourselves with an

arbitrarily unpredictable search. In that sense, it is interesting to be inspired by the process

of natural selection.

We thus propose the application of the genetic algorithms to resolve the above-

mentioned problem. They represent a type of evolutionary algorithms that belongs to the

artificial intelligence field. We proposed, in this study, methods of crossing, mutation and

an appropriate mode of selecting parents to supply good candidates’ sons for every new

generation. This made effective our proposed algorithm. Let us notice that the consideration

of the inconvenient conditions within a schedule is neither is not less important nor easier to

resolve. In fact, in this last case, the solution is endowed with a more realistic and dynamic

character. For this reason, we dedicated the second part of this thesis to the study of the

inconvenient conditions which can be due to the failing of the resources (human and\or

material). In spite of the few realized programs in the field considering this phenomenon

due to its difficulty in term of formalization and complexity of the resolution method, if it

exists, we try to establish an heuristic that conjugates the user interactive.

According to the attained and encouraged results, we consider that the proposed method

is a very effective means used to resolve all problems which are similar to our proper one.

Page 6: Page de garde - univ-annaba.dzbiblio.univ-annaba.dz/wp-content/uploads/2014/09/... · Pr. Mohamed-Chaouki Batouche de l’université de Constantine qui m’a considérablement honoré

V

RESUME

Pour toutes leurs activités, les êtres humains ont besoin de planifier dans le temps leur

acquisition de certaines ressources. La théorie de la planification traite des modèles

mathématiques mais analyse également des situations réelles forts complexes. Quoique l'état

de l'art est assez riche, les contributions existantes restent loin d'être complètes et optimales.

Remarquons que la planification du personnel, et en particulier le personnel hospitalier,

qui est soumise à une variété de contraintes -parfois contradictoires-, est un problème NP-

difficile au sens fort. Par conséquent, des méthodes heuristiques doivent être utilisées pour

le résoudre.

Dans cette étude, nous nous sommes donnés comme objectif principal la résolution d’un

problème concret de génération hebdomadaire d'emplois du temps de médecins dans un

service de radiologie. Ce problème possède des contraintes de types très variés. Nous avons

mis en œuvre un algorithme génétique pour l’optimisation de coût d’affectation des

médecins aux postes. Le critère d'optimalité est la minimisation de la somme des mesures de

violation des contraintes pour la rendre nulle.

Étant donnée l'importance de ces problèmes, de nombreuses méthodes de résolution ont

été développées en recherche opérationnelle (RO) et en intelligence artificielle (IA). Ces

méthodes peuvent être classées sommairement en deux grandes catégories : les méthodes

exactes (complètes) qui garantissent la complétude de la solution et les méthodes

approchées (incomplètes) qui perdent en complétude pour gagner en efficacité.

Le principe essentiel d'une méthode exacte consiste généralement à énumérer, souvent

de manière implicite, l'ensemble des solutions de l'espace de recherche. Malgré les progrès

réalisés, le temps de calcul nécessaire pour trouver une solution risque d'augmenter

exponentiellement avec la taille du problème. Les méthodes exactes rencontrent

généralement des difficultés face aux applications de tailles importantes.

Page 7: Page de garde - univ-annaba.dzbiblio.univ-annaba.dz/wp-content/uploads/2014/09/... · Pr. Mohamed-Chaouki Batouche de l’université de Constantine qui m’a considérablement honoré

VI

Les méthodes approchées constituent une alternative très intéressante pour traiter les

problèmes d'optimisation de grandes tailles si l'optimalité n'est pas primordiale. Ces

méthodes sont utilisées depuis longtemps par de nombreux praticiens.

Dans cette optique, il nous a paru raisonnable d’envisager des méthodes stochastiques

d’optimisation qui sont des méthodes approchées. Néanmoins, nous n’avons pas voulu nous

restreindre à une recherche arbitrairement aléatoire. En ce sens, il est intéressant de

s’inspirer du processus de sélection naturelle.

Nous proposons donc l’application des algorithmes génétiques pour résoudre le

problème susmentionné. Ce sont un type d’algorithmes évolutionnaires qui font partie du

champ de l’intelligence artificielle (IA). Nous avons proposé, dans cette étude, des

méthodes de croisement, de mutation et un mode adéquat de sélection des parents afin de

fournir de bons fils candidats à chaque nouvelle génération. Ceci a rendu efficace notre

algorithme proposé.

Constatons que prendre en considération les conditions intempestives au sein d'un

planning n'est pas moins important ni plus facile à résoudre. En effet, dans ce dernier cas, la

solution est dotée d'un caractère dynamique et plus réaliste. Dans ce but, nous avons

consacré la deuxième partie de cette thèse à l'étude des conditions intempestives qui peuvent

être dues à la défaillance des ressources (humaines et/ou matérielles). Malgré le peu de

plannings réalisés dans la littérature prenant en considération ce phénomène vu sa difficulté

en terme de formalisation et la complexité de la méthode de résolution si celle-ci existe,

nous avons tenté d'établir une heuristique conjuguant l'interactif de l'utilisateur.

D’après les résultats obtenus, qui ont été encourageantes, nous jugeons que la méthode

proposée est un outil d’une grande efficacité pour la résolution de tout problème qui peut se

formuler de la même manière que le notre.

Page 8: Page de garde - univ-annaba.dzbiblio.univ-annaba.dz/wp-content/uploads/2014/09/... · Pr. Mohamed-Chaouki Batouche de l’université de Constantine qui m’a considérablement honoré

VII

DEDICACE

A mes parents,

A mes frères et sœurs,

A tous ceux qui m’ont aidé,

Je dédie ce travail.

Page 9: Page de garde - univ-annaba.dzbiblio.univ-annaba.dz/wp-content/uploads/2014/09/... · Pr. Mohamed-Chaouki Batouche de l’université de Constantine qui m’a considérablement honoré

VIII

REMERCIEMENTS

Tous mes remerciements à :

Dr. M. Babes qui, en qualité de directrice de ce mémoire, m’a guidé par ses remarques, son

savoir faire scientifique et ses suggestions. Je luis suis reconnaissant, qu’elle trouve, ici, ma

profonde gratitude.

Pr. Mohamed-Chaouki Batouche de l’université de Constantine qui m’a considérablement

honoré en acceptant de présider ce jury.

Dr. Mohamed Tarek Khadir de l’université de Annaba, pour l’effort qu’il s’est donné en

acceptant de critiquer ce travail.

ZEDAIRIA Abdallah

Page 10: Page de garde - univ-annaba.dzbiblio.univ-annaba.dz/wp-content/uploads/2014/09/... · Pr. Mohamed-Chaouki Batouche de l’université de Constantine qui m’a considérablement honoré

IX

LISTE DES TABLEAUX

0BPAGE 1BTITRE 2BN° TABLEAU

48 Exemple de population. 1

49 Résultats obtenus par notre algorithme génétique sur quelques instanciations du problème. 2

Page 11: Page de garde - univ-annaba.dzbiblio.univ-annaba.dz/wp-content/uploads/2014/09/... · Pr. Mohamed-Chaouki Batouche de l’université de Constantine qui m’a considérablement honoré

X

LISTE DES FIGURES

0BPAGE 1BTITRE 2BN° Fig. 3BN° Ch.

33 Le codage choisi pour la représentation des solutions. 1

CH

API

TR

E II

I

40 Exemple de croisement à « un point ». 2

42 Etapes de l'algorithme génétique proposé. 3

43 Processus de notre Algorithme génétique. 4

44 Exemple de planning hebdomadaire généré par notre algorithme. 5

45 Interface principale de l’application. 6

46 Pré-affectations d’un membre du personnel. 7

46 Ouverture d’un service. 8

50 Convergence de notre algorithme. 9

57 Défaillance d’une resource humaine. 10

CH

API

TR

E IV

59 Défaillance d’une ressource humaine (cas non déterministe). 11

61 Défaillance d’une ressource matérielle. 12

63 Défaillance d’une ressource matérielle (cas non déterministe). 13

65 Comparaison entre les solutions prévues et les solutions réelles. 14

73 Modèle de la roulette ; représentation d’une population de 6 individus. A.1

AN

NE

XE

A

76 Exemple de croisement à « un point » ; (cas du codage binaire). A.2

77 Exemple de croisement «à 2 points» ; (cas du codage binaire). A.3

78 Opération de mutation. A.4

Page 12: Page de garde - univ-annaba.dzbiblio.univ-annaba.dz/wp-content/uploads/2014/09/... · Pr. Mohamed-Chaouki Batouche de l’université de Constantine qui m’a considérablement honoré

XI

82 Structure de données (Fichier personnel). B.1 A

NN

EX

E B

84 Structure de données (fichier services). B.2

85 Ouvertures d'un service pour une semaine et propagation de ces ouvertures pour d'autres semaines. B.3

86 Interface Gestion des médecins. B.4

86 Interface Disponibilités d'un médecin. B.5

86 Interface Pré-affectaions d'un médecin. B.6

87 Interface Gestion des compétences. B.7

87 Iinterface Gestion des postes. B.8

88 Interface Gestion des Ouvertures d'un poste. B.9

88 Interface Gestion des Préférences. B.10

89 Interface principale. B.11

Page 13: Page de garde - univ-annaba.dzbiblio.univ-annaba.dz/wp-content/uploads/2014/09/... · Pr. Mohamed-Chaouki Batouche de l’université de Constantine qui m’a considérablement honoré

XII

TABLE DES MATIERES

01 Introduction ............................................................................................................

Chapitre I : La planification d'horaires de travail 05 1. Enjeux de la planification d'horaires .................................................................... 06 2. Problématique de la planification d'horaires ........................................................ 06 2.1 Un processus complexe ................................................................................... 07 2.2 Qu’est-ce que la planification ? ....................................................................... 07 2.3 Qu’est-ce qu’un bon planning ? ...................................................................... 08 2.4 Le contexte de la planification ........................................................................ 10 2.5 Le facteur humain dans les plannings ............................................................. 11 3. Types de plannings ............................................................................................... 11 3.1 Plannings sportifs ............................................................................................ 12 3.2 Plannings pédagogiques .................................................................................. 13 3.3 Plannings aériens ............................................................................................. 14 4. La planification hospitalière ................................................................................. 15 5. Types de plannings hospitaliers ........................................................................... 19 6. Conclusion ............................................................................................................

Chapitre II : Choix de la méthode utilisée 21 1. Introduction .......................................................................................................... 23 2. Analyse des approches utilisées pour résoudre les problèmes de planification ... 23 2.1. Exploitation et exploration ............................................................................. 26 2.2. Quelle métaheuristique utiliser ?.................................................................... 26 2.3. Notre choix .....................................................................................................

Page 14: Page de garde - univ-annaba.dzbiblio.univ-annaba.dz/wp-content/uploads/2014/09/... · Pr. Mohamed-Chaouki Batouche de l’université de Constantine qui m’a considérablement honoré

XIII

Chapitre III : Proposition d’un algorithme génétique pour la résolution de notre problème de planning hospitalier.

30 I. PRESENTATION DU PROBLEME ETUDIE ............................................................... 32 II. PRESENTATION DE L'ALGORITHME GENETIQUE CONÇUE ............................... 32 II.1 Alphabet de codage et fonction d’adaptation .................................................... 32 a. L’alphabet de codage ....................................................................................... 34 b. La fonction d’évaluation .................................................................................. 35 c. Modélisation des contraintes ............................................................................ 37 d. Structure de données ........................................................................................ 38 II.2 Initialisation de la population ............................................................................ 38 II.3 Les opérateurs utilisés ....................................................................................... 38 a. La sélection ...................................................................................................... 40 b. Le croisement ................................................................................................... 41 c. La mutation ...................................................................................................... 41 II.4 Condition d’arrêt ...............................................................................................

42 II.5 Les étapes de notre algorithme génétique .........................................................

44 III. IMPLEMENTATION ET EXPERIMENTATION ......................................................

47 Quelques résultats ..................................................................................................... 49 Convergence de l'algorithme ....................................................................................

50 Conclusion ................................................................................................................

Chapitre IV : Gestion des conditions intempestives 53 1. Introduction .......................................................................................................... 53 2. Les défaillances au sein d'un planning ................................................................. 53 2.1 Défaillances humaines……………………………………………………... 54 2.1.1. Absences volontaires………………………………………………….. 54 2.1.2. Absences involontaires……………………………………………….. 54 2.1.2.a. Cas déterministe…………………………………………………..

Page 15: Page de garde - univ-annaba.dzbiblio.univ-annaba.dz/wp-content/uploads/2014/09/... · Pr. Mohamed-Chaouki Batouche de l’université de Constantine qui m’a considérablement honoré

XIV

58 2.1.2.b. Cas non déterministe…………………………………………… 60 2.2. Défaillances matérielles…………………………………………………… 60 2.2.a. Cas déterministe………………………………………………………. 62 2.2.b. Cas non déterministe…………………………………………………. 64 3. Implémentation et critiques des résultats obtenus…………………………….. 66 4. Conclusion…………………………………………………………………….. 67 Conclusion générale et perspectives .....................................................................

ANNEXE A : ALGORITHMES GÉNÉTIQUES.

ANNEXE B : PRESENTATION DE QUELQUES STRUCTURES DE DONNEES ET

D'INTERFACES COMPLEMENTAIRES. 94 Bibliographie ...........................................................................................................

Page 16: Page de garde - univ-annaba.dzbiblio.univ-annaba.dz/wp-content/uploads/2014/09/... · Pr. Mohamed-Chaouki Batouche de l’université de Constantine qui m’a considérablement honoré

INTRODUCTION GENERALE

1

Introduction générale

L'évolution des sociétés est marquée par une reconnaissance accrue des enjeux

économiques et sociaux liés à une utilisation efficace de la ressource travail. Cette tendance

est particulièrement sensible dans le secteur des services où le travail n'est pas ou peu

stockable et où il s'agit de répondre, dans des délais extrêmement courts, à une demande

souvent très fluctuante. Dés lors que la charge de travail varie au sein de la journée et de la

semaine ou excède en durée les plages de travail individuelles, se posent des problèmes

d'adéquation de l'effectif à la charge et d'aménagement des horaires de travail et de repos

dans le respect de la réglementation.

Les problèmes de planification d'horaires concernent typiquement les sociétés et

services exerçant une activité continue ou quasi-continue. Il en va ainsi par exemple des

compagnies aériennes, services portuaires, entreprises de transport, hôpitaux,… etc.

La planification d'horaires vise à dimensionner la force de travail et à programmer

l'utilisation de ressources sur un horizon allant de la journée à quelques mois, de manière à

atteindre le meilleur équilibre entre qualité de service, coût et satisfaction sociale.

L’objectif de cette thèse consiste alors à définir et à mettre en œuvre une méthode

permettant de résoudre le problème de planification dans un cas concret : planning d’un

service de radiologie dans un grand hôpital.

Les problèmes de planification d'horaires, de nature fortement combinatoire,

appartiennent à la classe des problèmes dits NP-Complets, dont la résolution requière

l'utilisation de techniques appropriées. Depuis Dantzig [DAN 1954], de nombreuses

méthodes de résolution ont été développées en recherche opérationnelle (RO). Récemment,

quelques méthodes ont vu le jour en intelligence artificielle (IA). Ces méthodes peuvent être

classées sommairement en deux grandes catégories : la première; les méthodes exactes

(complètes) qui garantissent la complétude de la résolution, parmi ces méthodes on trouve :

la programmation linéaire en nombres entiers [PAR 1998], relaxation lagrangienne [TRI

1980], …etc. La deuxième catégorie; les méthodes approchées (incomplètes) qui perdent la

complétude pour gagner en efficacité, parmi ces méthodes on trouve : la recherche tabou

[HAM 2000], le recuit simulé [BRU 1993, THO 1996], les algorithmes génétiques [COL

1996, CAI 2000],…etc.

Page 17: Page de garde - univ-annaba.dzbiblio.univ-annaba.dz/wp-content/uploads/2014/09/... · Pr. Mohamed-Chaouki Batouche de l’université de Constantine qui m’a considérablement honoré

INTRODUCTION GENERALE

2

Le principe essentiel d'une méthode exacte consiste généralement à énumérer, souvent

de manière implicite, l'ensemble des solutions de l'espace de recherche. Ce type de

méthodes rencontre généralement des difficultés dans les applications de tailles importantes.

En effet, le temps de calcul nécessaire pour trouver une solution risque d'augmenter

exponentiellement en fonction de la taille du problème.

Les méthodes approchées constituent une alternative très intéressante pour traiter les

problèmes d'optimisation de grande taille, si l'optimalité n'est pas primordiale. En effet, ces

méthodes sont utilisées depuis longtemps par de nombreux praticiens.

Parmi les méthodes incomplètes, encore appelées méthodes stochastiques, existe la

famille des algorithmes évolutionnaires qui sont des heuristiques inspirées par l’évolution

des systèmes biologiques. Ils explorent simultanément différentes régions de l’espace de

recherche et sont peu sensibles à l’attraction d’un optimum local; de plus, ils conviennent

bien pour la résolution de problèmes d’optimisation combinatoire et d’affectation sous

contraintes (ces notions seront définies plus loin). Leurs bases théoriques ont été proposées

par J. Holland [HOL 1975].

Les algorithmes évolutionnaires, et en particulier les algorithmes génétiques, constituent

une voie prometteuse pour la résolution des problèmes de planification de personnel. Cette

thèse, se rapportent à ce thème. Nous proposons des méthodes de sélection, croisement et de

mutation afin de rendre plus efficace l'algorithme de base initialement proposé.

Notre travail est organisé comme suit :

Le premier chapitre comporte un exposé sur les problèmes de planification d’horaires. Il

présente le cadre général dans lequel s'inscrit la planification

d'horaires. Nous mettons l'accent ensuite sur les différents types

de plannings (pédagogiques, aériens, sportifs,…) et plus

particulièrement les plannings hospitaliers.

Le deuxième chapitre est une présentation succincte des principales méthodes de

résolution des problèmes d’optimisation. Nous ferons une

analyse de ces différentes méthodes, et nous nous justifions notre

choix des algorithmes génétiques comme approche de résolution.

Page 18: Page de garde - univ-annaba.dzbiblio.univ-annaba.dz/wp-content/uploads/2014/09/... · Pr. Mohamed-Chaouki Batouche de l’université de Constantine qui m’a considérablement honoré

INTRODUCTION GENERALE

3

Au troisième chapitre, nous présentons la mise en œuvre de l’algorithme génétique et

l’implémentation de notre application pour résoudre le problème

posé. Nous proposons des améliorations de l'algorithme en jouant

sur les différentes variations possibles de ses paramètres.

Le quatrième chapitre, est consacré à la présentation des conditions intempestives au

sein d'un planning (la défaillance d'une ou de plusieurs

ressources à un moment de la réalisation de ce planning). Ce que

l'on se propose, de réaliser dans cette partie, est d'essayer

d'apporter des éléments de solutions à un tel problème.

Nous terminons notre thèse, en énonçant un ensemble de remarques et de suggestions

concernant l’application de ce type d’algorithmes et la résolution d'un problème de

planification, ce qui permettra d’orienter nos futurs recherches.

Page 19: Page de garde - univ-annaba.dzbiblio.univ-annaba.dz/wp-content/uploads/2014/09/... · Pr. Mohamed-Chaouki Batouche de l’université de Constantine qui m’a considérablement honoré

CHAPITRE I : LA PLANIFICATION DES HORAIRES DE TRAVAIL

4

I CHAPITRE

LA PLANIFICATION D'HORAIRES DE TRAVAIL

Résumé : Les problèmes de planification d'horaires sont au cœur des préoccupations de toute société active. Ils ont suscité ces dernières années l'intérêt de diverses disciplines. En effet, économistes, gestionnaires, juristes et sociologues se sont interrogés sur la question de l'aménagement du temps de travail et de ses enjeux, incitant ainsi les chercheurs à proposer méthodes et techniques pour aider à gérer « au mieux » une nouvelle diversité des horaires.

Dans ce chapitre, nous introduisons et caractérisons ces problèmes. Nous présentons d'abord les différents acteurs économiques et sociaux concernés par la planification des horaires, leurs rôles et leurs enjeux pouvant être conflictuels. Nous définissons ensuite la problématique de la planification d'horaires dans un contexte général. Celle-ci consiste à élaborer les horaires de travail d'un personnel, afin de couvrir une charge représentant des tâches et tout en respectant un ensemble de contraintes.

Ensuite, nous passerons en revue les différents types de plannings pédagogiques, aériens, sportifs,…et plus particulièrement les plannings hospitaliers.

Page 20: Page de garde - univ-annaba.dzbiblio.univ-annaba.dz/wp-content/uploads/2014/09/... · Pr. Mohamed-Chaouki Batouche de l’université de Constantine qui m’a considérablement honoré

CHAPITRE I : LA PLANIFICATION DES HORAIRES DE TRAVAIL

5

1. Enjeux de la planification d'horaires

Depuis le début des années 80, dans le monde occidental la flexibilité du travail, et plus

particulièrement la flexibilité du temps de travail, constitue aux yeux de tous une solution au

moins partielle à de nombreux problèmes économiques et sociaux : chômage, compétitivité

des entreprises, animation des cités, développement de pratiques culturelles et sportives,...

[PAR 1998].

Des enjeux économiques

L'utilisation efficace de la force de travail est reconnue comme un facteur primordial de

productivité aussi bien dans le secteur industriel que dans celui des services. Le problème

est toutefois plus crucial dans les services. En effet, si les industries manufacturières sont

capables de gains de productivité en substituant des équipements au travail, le recours à

l'automatisation pour délivrer un service reste limité. D'où l'enjeu est encore plus important

pour les sociétés de services dans la mesure où leur activité opérationnelle est directement

liée à la demande. En effet, dans les services :

(a) le travail n'étant pas (ou peu) stockable, il est impossible de constituer des stocks de

sécurité qui permettraient de lisser la demande en personnel ;

(b) le service doit être rendu dans une fenêtre de temps plus ou moins réduite selon

l'urgence de la tâche ;

(c) production et consommation de services étant indissociables, les activités

productives ne peuvent être effectuées qu'après l'apparition de la demande. Aussi,

une capacité de services non exploitée est perdue ;

(d) la demande peut être extrêmement variable selon la saison, la semaine, le jour,

l'heure et même sur des intervalles très courts.

De ce fait, les besoins en personnel dans certains services peuvent s'exprimer sur des

périodes aussi courtes que cinq ou dix minutes. Ces caractéristiques typiques des services

imposent des techniques de planification d'horaires adaptées et souvent plus sophistiquées

que pour les industries manufacturières.

Page 21: Page de garde - univ-annaba.dzbiblio.univ-annaba.dz/wp-content/uploads/2014/09/... · Pr. Mohamed-Chaouki Batouche de l’université de Constantine qui m’a considérablement honoré

CHAPITRE I : LA PLANIFICATION DES HORAIRES DE TRAVAIL

6

Ainsi, la ressource travail est une composante essentielle de la productivité des

entreprises et tout particulièrement dans le secteur des services.

Des enjeux sociaux

Les salariés trouvent un grand intérêt aux formes plus souples d'aménagement du temps

de travail, mais cet intérêt ne coïncide pas toujours avec celui des entreprises. De plus, la

flexibilité du temps de travail, parce qu'elle améliore la qualité de vie, favorise un meilleur

« moral » des salariés avec un impact certain sur la motivation du capital humain en

entreprise [PAR 1998] : moins d'absentéisme ou de retards, amélioration des

performances,...

La planification des horaires présente donc des enjeux à la fois sur un plan économique

et un plan social. Toutefois, sa complexité, en particulier dans le secteur des services, impose

de s'appuyer sur une démarche scientifique pour apporter des réponses pragmatiques à une

catégorie générale de problèmes.

Il s'agit donc de développer des outils de planification d'horaires, basés sur des

techniques efficaces d'optimisation de ressources qui permettent de construire des

programmes de travail individuels, respectant la réglementation du travail et autres accords

avec les salariés et garantissant une bonne couverture de charge tout en limitant les coûts.

Notons que ces outils pourront être utilisés à la fois dans un contexte opérationnel, c'est-

à-dire pour effectivement établir des programmes de travail ou dans une démarche plus

stratégique, pour évaluer les conséquences en termes de coût ou de qualité de service de

modifications de la charge ou des contraintes de planification.

2. Problématique de la planification d'horaires

Pour mieux cerner ce qui est la planification ainsi que la complexité inhérente à sa

réalisation, nous commençons par donner les différentes définitions de la planification sous

plusieurs formes.

2.1 Un processus complexe

La planification d'horaires de travail vise, pour un horizon de planification d'un jour à

quelques mois, à dimensionner une force de travail et à optimiser l'utilisation des ressources,

Page 22: Page de garde - univ-annaba.dzbiblio.univ-annaba.dz/wp-content/uploads/2014/09/... · Pr. Mohamed-Chaouki Batouche de l’université de Constantine qui m’a considérablement honoré

CHAPITRE I : LA PLANIFICATION DES HORAIRES DE TRAVAIL

7

de façon à couvrir un besoin exprimé par une charge de travail prévisionnelle, tout en

respectant un ensemble de contraintes précises. Elle aboutit à des programmes définissant

les horaires de travail et de repos de la force de travail [CHA 2002].

Les contraintes évoquées ci-dessus sont relatives à la législation du travail ou à des

accords spécifiques c'est-à-dire un ensemble de règles de planification liées aux habitudes

de fonctionnement de l'entreprise ou à des conventions collectives et qui contribuent à la

satisfaction du personnel (par exemple le nombre minimum de jours de travail successifs,

l'absence de jours de repos isolés ou l'absence de journées de travail avec une coupure, ...).

2.2 Qu’est-ce que la planification ?

Afin de rester dans l’économie globale moderne, toute entreprise doit organiser et

planifier le travail de ses salariés. Ceci passe par la détermination des capacités des

employés par le recensement des activités futures et des besoins en personnel. L’entreprise

doit satisfaire ces derniers en affectant la bonne personne, à la bonne place au bon moment.

Définition opérationnelle de la planification

La planification vise à affecter les ressources humaines pour chaque intervalle de temps

sur un horizon donné, de telle sorte que les besoins par intervalle soient couverts et que les

différentes contraintes soient satisfaites [CHA 2002].

Définition mathématique de la planification

La planification peut être définie sous la forme de fonction mathématique qui associe un

salarié et un intervalle de temps à une affectation [CHA 2002]. Exemple :

fj(Salarié, Période) = Activité / Compétence.

Sur la journée, cette fonction permet de déterminer les heurs de présences du salarié (ce

qui définit sa vacation) et ses activités de la journée.

2.3 Qu’est-ce qu’un bon planning ?

Si un planning n'est pas toujours facile à obtenir, un bon planning l’est beaucoup moins.

S’agissant des personnes, le coût d’un planning n’est pas la somme des coûts horaires des

employés. En effet, la planification est rendue beaucoup plus complexe avec les contraintes

Page 23: Page de garde - univ-annaba.dzbiblio.univ-annaba.dz/wp-content/uploads/2014/09/... · Pr. Mohamed-Chaouki Batouche de l’université de Constantine qui m’a considérablement honoré

CHAPITRE I : LA PLANIFICATION DES HORAIRES DE TRAVAIL

8

et souhaits individuels. La satisfaction des salariés est un facteur important sur leur

motivation et leur productivité.

Compte tenu des différents points de vue au sein d’une même entreprise, des contraintes

complexes et parfois contradictoires, créer un bon planning implique à la fois une

négociation entre le planificateur et les différents employés concernés, et un calcul

d’optimisation combinatoire.

2.4 Le contexte de la planification

Où faut-il planifier ?

Le problème du planning est central dans toutes les entreprises disposant de ressources

humaines. En fait, le problème de planning apparaît systématiquement dans les situations

suivantes :

1. Si le travail doit être assuré pendant plus d’une journée, il faut prévoir la

succession de plusieurs personnes sur le même poste dans la journée. Un outil d’aide est

nécessaire lorsque le nombre de postes dépasse la quinzaine.

2. Si le travail doit être assuré pendant plus de 35 h par semaine, un outil

automatique devient indispensable lorsque le nombre de postes dépasse la trentaine pour

gérer la succession de plusieurs personnes dans la semaine, ainsi que les absences

imprévues.

Planifier quoi ?

En se limitant à la planification des ressources humaines (sans prendre en considération

les ressources matérielles), il faut décider si l’on planifie les horaires de présence du

personnel ou les tâches effectuées par le personnel.

La planification des horaires de présence

Un planning peut être utilisé pour prévoir les horaires de présence du personnel sans

préciser les tâches journalières à effectuer. Dans certains services, on ne peut affecter

qu’un certain nombre de personnes pour chaque heure quel que soit le besoin réel pour

des raisons de postes disponibles ou de budget fixe.

Page 24: Page de garde - univ-annaba.dzbiblio.univ-annaba.dz/wp-content/uploads/2014/09/... · Pr. Mohamed-Chaouki Batouche de l’université de Constantine qui m’a considérablement honoré

CHAPITRE I : LA PLANIFICATION DES HORAIRES DE TRAVAIL

9

La planification des tâches

Dans les entreprises à haute technicité, comportant de nombreux métiers et

compétences distincts, lorsqu’un besoin non satisfait se traduit en perte d’affaires, il est

souhaitable d’affecter le personnel en fonction des tâches. Cela exige d’une part une

décomposition fine des opérations ou des tâches en gammes opératoires et d’autre part, le

repérage des tâches que chaque personne est capable d’accomplir.

Planifier qui ?

La planification anonyme raisonne au niveau du nombre de salariés dans des groupes

homogènes identifiés par les modèles appropriés. Ainsi, il est possible que le découpage en

groupes prenne en compte les différences en matière de compétences ou de contrats temps.

Cette approche permet de prendre en compte un grand nombre de salariés et de profiter au

maximum de la synergie entre les salariés. Cependant, elle ne tient compte ni des

préférences individuelles ni des plannings antérieurs.

La planification individuelle raisonne au niveau de chaque salarié, en s’appuyant sur :

• Les compétences individuelles,

• Les contrats temps par exemple plein temps, mi-temps ou autres,

• Les préférences individuelles pour les horaires et les durées de travail et/ou de

pauses,

• L’historique du planning afin d’assurer l’équité entre personnes au niveau des

horaires désagréables telles que les affectations tôt le matin, les affectations un jour

férié, etc.

Cela exige un calcul plus lourd et limite le nombre de personnes traitées par rapport à la

planification anonyme.

L’horizon de planification

Le planning journalier convient à l’affectation des tâches lorsque le planning est

discontinu et lorsque les tâches sont connues de façon précise. A ce niveau, on peut gérer les

pauses et déterminer qui va être affecté et quand il sera affecté.

Page 25: Page de garde - univ-annaba.dzbiblio.univ-annaba.dz/wp-content/uploads/2014/09/... · Pr. Mohamed-Chaouki Batouche de l’université de Constantine qui m’a considérablement honoré

CHAPITRE I : LA PLANIFICATION DES HORAIRES DE TRAVAIL

10

Le planning hebdomadaire est utilisé dans certains pays pour une paie hebdomadaire.

On gère le repos hebdomadaire et la durée de travail hebdomadaire.

Le planning mensuel est utile pour le calcul des coûts pour les besoins de paie.

Le planning annuel est utile pour l’annualisation des heures de travail et permet de gérer

les congés annuels ou la formation continue.

Il y a deux types de plannings : acyclique et cyclique :

Un planning est acyclique s’il est différent chaque semaine. Pour construire un planning

mensuel automatiquement, on dispose de règles qui permettent d’enchaîner les vacations

pour la même personne.

Le planning acyclique correspond à une pratique de gestion nécessitée par la demande

de service rendu. Il est typiquement utilisé dans le cas d’un besoin non satisfait, ce serait

une perte, le client pourrait se diriger vers un concurrent.

Un planning est cyclique si au bout d’une durée P, le salarié retrouve son planning de

départ. La période P est généralement mesurée en termes de semaines par exemple 4, 6, 12,

13 ou 17 semaines. Ces cycles hebdomadaires permettent de tenir compte des week-ends.

Les cycles à 13 ou à 17 semaines sont qualifiés d’annuel car ils s’effectuent un nombre fixe

de fois par an : 4 fois 13 étant 52 et 3 fois 17 donnant 51.

La planification des horaires peut être cyclique, car on ne distingue que les heures

effectuées et on confond les tâches spécifiques devant avoir lieu. Par contre, la planification

des tâches ne peut être qu’acyclique, sauf cas exceptionnel où les tâches sont répétitives

d’une semaine à l’autre.

2.5 Le facteur humain dans les plannings

Malgré les progrès de la modélisation de plannings, le planificateur a toujours un rôle à

jouer parce qu’il détient des connaissances sur le fonctionnement de l’entreprise ou de

l’équipe. Ces connaissances sont difficiles à mettre en évidence car elles peuvent résulter

des négociations ou du contexte spécifique à l’entreprise. En général, les fonctionnements

spécifiques ne sont pas pris en compte par les logiciels standards et le planificateur doit

contrôler le planning manuellement pour en assurer la conformité.

Page 26: Page de garde - univ-annaba.dzbiblio.univ-annaba.dz/wp-content/uploads/2014/09/... · Pr. Mohamed-Chaouki Batouche de l’université de Constantine qui m’a considérablement honoré

CHAPITRE I : LA PLANIFICATION DES HORAIRES DE TRAVAIL

11

Une collaboration réussie avec le logiciel de planification, doit permettre au

planificateur de participer efficacement à l’élaboration des plannings. L’interface homme-

machine joue un rôle primordial : il est indispensable pour le planificateur de comprendre

la situation planifiée dans sa globalité et ses détails. Dans la pratique le planificateur

cherche un outil qui peut rendre service dès le début, et ce, sans une formation approfondie.

Un générateur automatique de plannings doit donc admettre des pré-affectations faites

manuellement, pour que l’utilisateur puisse réagir avec les plannings automatiques. Très

souvent les diverses contraintes applicables sont contradictoires : le planificateur doit

choisir les contraintes à assouplir afin de produire des plannings.

3. Types de plannings

3.1 Plannings sportifs

L'établissement de l'horaire pour une association sportive est un travail qui doit être

repris avant le début de chaque championnat en raison des changements qui apparaissent

d'une année à l'autre.

De nombreuses fédérations sportives sont confrontées à des problèmes de planification

de matchs lors de tournois. Les règles qui régissent ces tournois sont autant de contraintes à

prendre en compte avec les exigences des équipes, les souhaits des sponsors, etc. :

minimisation des distances de déplacement, un seul match par équipe et par jour,

indisponibilité de certains stades à certaines dates, nombre minimal de jours entre le match

aller et le match retour correspondant, etc. La création de calendrier respectant ces

conditions est donc un problème très difficile.

Les approches utilisées pour résoudre certains de ces problèmes sont nombreuses, avec

des performances variables : la programmation linéaire en nombres entiers [FLE 1993,

NEM 1998], programmation par contraintes [HEN 1998], recherche locale (recuit simulé

[TER 1994], tabou [WRI 1994], recherches hybrides [COS 1995]).

J. Hamiez et J. Hao [HAM 2000] ont utilisé une approche de recherche locale avancée

fondée sur la méthode tabou. Ils ont effectué une étude expérimentale pour un problème

précis de la planification de rencontres sportives qu'ils ont modélisé sous forme de CSP

(Constraint Satisfaction Problem). Les résultats empiriques des expérimentations ont montré

Page 27: Page de garde - univ-annaba.dzbiblio.univ-annaba.dz/wp-content/uploads/2014/09/... · Pr. Mohamed-Chaouki Batouche de l’université de Constantine qui m’a considérablement honoré

CHAPITRE I : LA PLANIFICATION DES HORAIRES DE TRAVAIL

12

que la méthode tabou est plus robuste que la programmation linéaire en nombre entiers qui

se limite à un nombre d'équipes inférieur à 12 alors que la méthode tabou proposée va

jusqu'à 22 équipes.

J. C. Régin [REG 1998, REG 1999] propose deux approches basées sur la

programmation par contraintes. La première utilisant des algorithmes de filtrage puissants,

fournit déjà de meilleurs résultats aussi bien en terme de rapidité d'exécution que de

robustesse puisqu'il résout des problèmes de tailles importantes. Dans la seconde approche,

il transforme le problème en un problème équivalant en ajoutant une contrainte

d'implication, avec une nouvelle heuristique et des algorithmes de filtrages spécifiques à

chaque type de contraintes. Ses résultats sont encore meilleurs et très impressionnants.

3.2 Plannings pédagogiques

La confection d'horaires dans les établissements scolaires est un travail difficile à

réaliser qui requiert généralement un investissement de temps considérable de la part d'une

ou de plusieurs personnes. La diversification des plans d'études, l'interdépendance des

programmes d'enseignement, l'apparition des cours à option, les exigences toujours plus

nombreuses du corps enseignant, la disponibilité limitée des salles sont telles que les

plannings scolaires deviennent avec le temps de plus en plus complexes à réaliser. Etant

donné le volume d'information à traiter, les risques d'erreurs sont importants malgré toute la

compétence et l'application des personnes impliquées. Il en résulte que des systèmes

toujours plus performants sont développés pour concevoir des horaires qui tiennent compte

de tous les éléments souhaités.

Il existe deux types de problèmes différents dans le domaine de la planification des

horaires scolaires : les horaires de cours hebdomadaires et les horaires d'examens.

De nombreux modèles et algorithmes ont été proposés dans la littérature spécialisée

pour confectionner de tels plannings. Parmi les techniques qui ont rencontré un certain

succès, citons les méthodes constructives [OST 1982], séquentielles [ABR 1991], évolutives

[COL 1996], ou d'autres méthodes plus spécifiques faisant appel à des modèles de flots

[CHA 1989], de coloration de graphes [WER 1985], de relaxation lagrangienne [TRI 1980],

et de réseaux de neurones [CAO 1991]. Schaerf [SCH 1995a] a utilisé une méthode tabou

Page 28: Page de garde - univ-annaba.dzbiblio.univ-annaba.dz/wp-content/uploads/2014/09/... · Pr. Mohamed-Chaouki Batouche de l’université de Constantine qui m’a considérablement honoré

CHAPITRE I : LA PLANIFICATION DES HORAIRES DE TRAVAIL

13

pour résoudre ce problème. Il emploi le codage matriciel Mj,k qui contient le nom de la

classe du professeur j à la période k. Les voisinages proposés sont :

• Echanger deux cours pour un même professeur.

• Déplacer un cours à une autre période.

Pour des instances de tailles moyennes, les résultats obtenus ont été encourageants.

3.3 Plannings aériens

L’activité du transport aérien est un processus complexe qui fait intervenir des

investissements lourds, du personnel hautement qualifié et une informatique temps réel très

coûteuse.

La première richesse d’une compagnie aérienne est constituée par sa flotte. Le

problème que l’on rencontre consiste à planifier cette flotte en construisant un programme

de vol optimisé.

La planification des équipages se décompose en 2 phases : la construction de rotations

des équipages et la construction des plannings.

Bien entendu, les rotations d'équipages ne peuvent être indépendantes des rotations

des avions puisqu’un équipage qui se retrouve hors base doit bien finir par rentrer à sa base,

même si son vol retour ne s’effectue pas sur le même appareil que le vol aller. D’autres

contraintes, comme les limitations en heures de vol par exemple, régissent la construction

de rotations d'équipages. Quant aux plannings des équipages, ils sont constitués

d’enchaînements de rotations et de périodes de repos qui respectent une multitude de règles

issues du droit du travail, de conventions collectives et de normes de sécurité.

A cette intention il faut développer des outils d’aide à la décision permettant par

exemple de « croiser des vols » (échanger des avions sur des vols donnés) pour améliorer la

ponctualité, revenir rapidement à une situation normale (retour au programme) lors d’un

évènement très pénalisant (comme une fermeture de piste), ré-ordonnancer la maintenance

des avions (re-matriculation), etc.

Plusieurs méthodes ont été proposées dans la littérature spécialisée pour confectionner

de tels plannings. Parmi les techniques qui ont rencontré un certain succès, citons les

Page 29: Page de garde - univ-annaba.dzbiblio.univ-annaba.dz/wp-content/uploads/2014/09/... · Pr. Mohamed-Chaouki Batouche de l’université de Constantine qui m’a considérablement honoré

CHAPITRE I : LA PLANIFICATION DES HORAIRES DE TRAVAIL

14

méthodes basés sur les algorithmes génétiques [DEL 1995], les réseaux de neurones [LEF

1996] ou d’autres approches [DIA 1998], [DES 2000].

4. La planification hospitalière

Les plannings hospitaliers sont des calendriers de travail où figurent à la fois le temps,

et l'affectation des personnels, - jours et horaires de travail, congés et repos -. Établis au

niveau de chaque équipe, ils sont à la fois une tâche, un document d'organisation du travail,

et un élément contribuant à la gestion administrative du personnel, prenant en compte le

droit du travail, et retentissant sur la paye. Cette tâche est parmi les plus difficiles et les plus

délicates; difficile parce que reposant fondamentalement sur la recherche de solutions à

caractère combinatoire, répondant à des contraintes multiples, remises en cause de manière

fréquente par l'absentéisme; délicate car imposant toujours une négociation avec les acteurs

(médecins, infirmiers) de l'équipe, mais aussi parfois avec la direction du service de soins et

l'administration, lorsqu'il faut trouver des remplaçants ou rémunérer des heures

supplémentaires. Le document établi est un calendrier sur lequel on inscrit les affectations

de médecins ou encore un tableau à double entrée avec en ligne le personnel et en colonne le

temps. Dans tous les cas, cela revient à représenter le temps sur une ou deux dimensions

(jours × heures), et le personnel sur une dimension.

Problème ancien, et non nécessairement propre au secteur de la santé, ces plannings ont

fait l'objet depuis longtemps, de nombreux travaux, tantôt non spécifiques, tantôt

spécifiques au secteur de la santé. Ils ont pour caractéristiques communes de relever d'une

approche faisant appel aux techniques de la recherche opérationnelle, et de n'avoir, en dépit

de leur nombre et leur ancienneté, pas conduit à des logiciels permettant l'établissement de

plannings à la fois souples et optimisés.

Aujourd'hui, l'apparition de nouvelles techniques issues principalement de l’intelligence

artificielle IA, et l'accroissement considérable de la puissance de calcul des ordinateurs,

associée aux qualités de leurs interfaces graphiques, permettent d'espérer trouver de

nouvelles solutions à ces problèmes anciens, et par conséquent de développer une

application de gestion des plannings, ayant un niveau de performance appréciable.

Page 30: Page de garde - univ-annaba.dzbiblio.univ-annaba.dz/wp-content/uploads/2014/09/... · Pr. Mohamed-Chaouki Batouche de l’université de Constantine qui m’a considérablement honoré

CHAPITRE I : LA PLANIFICATION DES HORAIRES DE TRAVAIL

15

La confection d’horaires en milieu hospitalier s’effectue aujourd’hui encore très souvent

de façon manuelle. Ces horaires doivent obéir à de nombreuses règles, d’une part les règles

des conventions collectives, mais également des règles ayant pour but de maximiser la

qualité des soins. Dépendant des établissements, l’objectif est une combinaison variable de

considérations en termes de coûts, de qualité des soins et de satisfaction du personnel. Très

souvent, les gestionnaires font face à la difficulté d’obtenir des horaires réalisables : dans un

contexte de pénurie de personnel : par exemple, pour les médecins et les infirmières, le défi

est souvent de trouver un horaire réalisable qui satisfait les contraintes de quotas pour tous

les quarts de travail de l’horizon considéré.

Le but des travaux sur la planification hospitalière concerne :

• l’amélioration des diverses techniques d’optimisation pour la confection d’horaires,

• la comparaison de ces techniques,

• la validation de modèles et de méthodes d’optimisation pour la confection

d’horaires avec différents partenaires hospitaliers.

Les approches utilisées dans la littérature spécialisée pour gérer de tels plannings sont

nombreuses avec des performances variables. Parmi ces techniques, on peut citer : la

programmation linéaire en nombres entiers PLNE, la programmation par contraintes PPC, la

recherche locale (recuit simulé, tabou, recherches hybrides), algorithmes évolutifs, …etc.

5. Types de plannings hospitaliers

a. Elaboration des roulements infirmiers

Les roulements infirmiers sont des plannings de travail qui consistent à affecter des

vacations (exemple : matin, soir, nuit) aux personnels infirmiers, pour répondre à des

exigences bien déterminées. Cette tâche est parmi les plus difficiles et les plus délicates;

difficile parce que reposant fondamentalement sur la recherche de solutions à caractère

combinatoire, répondant à des contraintes multiples, remises en cause de manière fréquente

par l'absentéisme; délicate car imposant toujours une négociation avec les infirmiers de

l'équipe. De nouvelles techniques de recherche permettent d'espérer trouver de nouvelles

solutions à ces problèmes anciens.

Page 31: Page de garde - univ-annaba.dzbiblio.univ-annaba.dz/wp-content/uploads/2014/09/... · Pr. Mohamed-Chaouki Batouche de l’université de Constantine qui m’a considérablement honoré

CHAPITRE I : LA PLANIFICATION DES HORAIRES DE TRAVAIL

16

a.1. Méthodes heuristiques de type recherche tabou [JAU 2000]

L’idée est de développer une classe d’heuristiques pouvant s’adapter facilement aux

différentes caractéristiques des unités de soins pour lesquels des horaires sont développés

(unités de soins dans un hôpital avec des tailles variables, par exemple de 10 à parfois 100

infirmières, équipe d’infirmières dans une clinique, fonctionnement journalier d’un centre

de prélèvements, fonctionnement 24h d’une urgence). Dans cette optique, l’idée est de

regarder des mouvements très locaux du type échange de quarts de travail jusqu’à des

mouvements du type changement de l’horaire d’une infirmière pour les grosses unités de

soins. Dans une première étape, les différentes variantes ou heuristiques seront développées

de façon indépendante, mais avec le souci de pouvoir les intégrer dans une même

heuristique avec des stratégies variables dans une seconde étape.

Malheureusement, la recherche tabou est une technique d'optimisation sans contraintes.

Effectivement, les transitions d'un état à un autre peuvent engendrer des violations de

contraintes, sauf si elles ont été conçues spécifiquement.

a.3. Programmation par contraintes [PES 2000]

Cette méthode permet de modéliser rapidement des contraintes complexes. Elle produit

rapidement de bonnes solutions pour les problèmes peu contraints. Elle pourrait présenter

des avantages par rapport aux approches de plus courts chemins avec contraintes de

ressources pour modéliser certaines conventions collectives.

Les auteurs de [WEI 1994] ont développé un outil de gestion de roulements infirmiers

"Gymnaste" basé sur la programmation par contraintes. L'approche proposée dans le cadre

de ce projet consiste à considérer ce problème comme relevant d'une collaboration

homme/machine intelligente: à l'utilisateur d'apprécier les facteurs humains nécessaires à la

planification et à la machine de résoudre de façon optimale le casse-tête proposé. La

véritable difficulté réside dans la nécessité de bien dissocier ce qui relève de la négociation

de ce qui relève du calcul combinatoire. L'objectif déclaré de ce projet est de développer un

outil d'aide à la décision et non pas un outil de planification rigide.

Page 32: Page de garde - univ-annaba.dzbiblio.univ-annaba.dz/wp-content/uploads/2014/09/... · Pr. Mohamed-Chaouki Batouche de l’université de Constantine qui m’a considérablement honoré

CHAPITRE I : LA PLANIFICATION DES HORAIRES DE TRAVAIL

17

b. Confection d’horaires de médecins

Dans la vie quotidienne des unités médicales hospitalières, l'organisation du service des

médecins tient à bien des égards une place critique. En effet, de sa qualité dépend

l'adéquation des compétences des médecins aux besoins et donc l'efficacité des soins, le

confort des médecins et par là même leur motivation et bien sûr également la capacité

d'optimiser les ressources humaines. Organiser le travail des médecins d'une ou de plusieurs

unités médicales, c'est mettre en regard des besoins précis (période concerné, compétences

requises, types d'horaires attendus, nombre de personnes,...) les ressources humaines

adéquates (les médecins) de façon que les contraintes réglementaires de service soient

respectées (droit aux congés, modalités d'enchaînement des horaires, indisponibilités), et

que les vœux des médecins soient satisfaits au mieux.

L'établissement du planning des médecins est une tâche complexe, longue, qui

comprend une importante dimension de négociation, mais aussi une dimension relevant du

calcul combinatoire. Le récent développement de techniques logicielles particulièrement

adaptées à la résolution de problèmes de ce type pose donc la question de l'automatisation

de ce travail. L'idée d'automatiser tout ou partie de la planification des emplois du temps des

médecins n'est pourtant pas d'aujourd'hui. Mais jusqu'à maintenant elle n'a pas débouché sur

un produit efficace et exploitable en raison de la complexité du problème traité.

b.1. Méthodes de génération de colonnes [GEN 2001]

Ces méthodes reposent sur un modèle de génération de colonnes qui consiste à

reformuler le problème de confection d’horaires comme un problème se décomposant en un

problème maître et des problèmes auxiliaires. Le problème maître contient les contraintes

relatives à l’ensemble des horaires (par exemple les contraintes de quotas) tandis que chaque

problème auxiliaire contient les contraintes relatives à l’horaire d’un médecin ou d’un

groupe de médecin avec un profil semblable. Le problème auxiliaire correspond à un

problème de plus courts chemins avec contraintes de ressources, soit avec un certain nombre

d’étiquettes associées à chacun des sommets du graphe représentant les quarts de travail de

l’horizon de planification (6 semaines par exemple). Le compromis efficacité-temps de

calcul doit faire en sorte de minimiser ce nombre d’étiquettes, et le défi consiste donc à

Page 33: Page de garde - univ-annaba.dzbiblio.univ-annaba.dz/wp-content/uploads/2014/09/... · Pr. Mohamed-Chaouki Batouche de l’université de Constantine qui m’a considérablement honoré

CHAPITRE I : LA PLANIFICATION DES HORAIRES DE TRAVAIL

18

intégrer toutes les contraintes particulières des unités de soins avec un nombre minimum de

telles étiquettes par sommet du graphe.

Cette méthode résout alternativement le problème maître et les sous-problèmes

(problèmes auxiliaires) jusqu'à l'obtention de la solution optimale. Le problème maître peut

être résolu par l'algorithme du simplexe, qui consiste à couvrir les tâches avec un ensemble

restreint de colonnes. Les sous-problèmes génèrent des chemins à ajouter au problème

maître pour améliorer la solution courante.

La difficulté est de calculer les coûts réduits et les bornes dans le contexte de la

génération de colonnes où il faut travailler à la fois sur le problème maître et le sous-

problème.

b.2. Algorithme hybride (programmation par contraintes / recherche tabou) [GAN 2002]

L'objectif est l’application d’une méthode générique combinant programmation par

contraintes et recherche tabou à la confection d’horaires de médecins. Ce type d'algorithmes

consiste à étudier les différentes structures de voisinage, afin d’améliorer leur efficacité dans

le contexte particulier d’exploration de voisinage par énumération implicite au moyen de la

programmation par contraintes.

c. La planification sanitaire

La planification sanitaire régionale est un problème de décision multi-objectif qui

concerne l’allocation spatiale de ressources présentes en quantités finies et en majorité non

sécables (lits, scanners, postes d'hémodialyse et postes d’IRM par exemple). Il s’agit de

déterminer le nombre de sites hospitaliers entre lesquels les ressources seront distribuées, de

les localiser et de déterminer leur taille en terme de volume de ressources allouées à chacun

de ces sites. L’objectif poursuivi lors de ces choix de localisation et d’allocation est

multiple. Il concerne l’amélioration de la qualité des soins produits ainsi que de leur

accessibilité pour la population. La complexité des relations entre les différentes

composantes du système de soins, sa nature dynamique, ainsi que l'importance du caractère

politique de la décision ne permettent pas de définir de façon précise le contexte

décisionnel.

Page 34: Page de garde - univ-annaba.dzbiblio.univ-annaba.dz/wp-content/uploads/2014/09/... · Pr. Mohamed-Chaouki Batouche de l’université de Constantine qui m’a considérablement honoré

CHAPITRE I : LA PLANIFICATION DES HORAIRES DE TRAVAIL

19

Une étude des différentes méthodes, disponibles et présentées dans la littérature [JOU

1995], montre que les obstacles principaux à l'application des méthodes de planification

sanitaire proposées sont d'ordres conceptuel et technique. En effet, leur échec dans leur

application est principalement dû à trois raisons : - un manque de données structurées

concernant l’offre, la demande et la consommation des soins dans une région - un manque

d’interactivité entre le système et le planificateur - une grande rigidité du système face à

l’évolution de l’environnement.

La répartition spatiale des ressources ne peut donc s'obtenir à l'issue de l'application

d'une théorie. Ainsi, le choix d'un schéma de répartition de ressources sanitaires ne peut se

justifier qu'à partir du système de valeurs sur lequel les décideurs se sont fondés pour

l'évaluer, soit les critères, les contraintes et les préférences.

Dans [PEL 1999] l'auteur a élaboré un outil HERO (HEalthcare Resource

Optimization), interactif, évolutif et qui aide le planificateur à structurer les données. HERO

est un système interactif d’aide à la planification qui allie un Système d’Information

Géographique (SIG) et un outil de résolution. Son rôle est d’assister le planificateur dans la

phase de diagnostic de la situation sanitaire et la phase de conception de la solution.

6. Conclusion

D'après ce qu'on a vu des paragraphes précédents, on peut constater que la planification

de personnel est un processus complexe qui présente des enjeux à la fois sur le plan

économique et sur le plan social. Cette complexité s'accroît considérablement dans le

secteur des services.

Parmi tous les types de plannings cités, c'est sur les plannings hospitaliers que nous

allons porter notre intérêt, et tout particulièrement sur les plannings des médecins. Nous

nous sommes donnés comme objectif la résolution d'un problème concret de génération

d'emploi du temps hebdomadaire de médecin dans un service de radiologie dans un grand

hôpital.

Les problèmes de planification en général sont des problèmes NP-Complets; donc, tout

apport en terme d'approche de résolution ne peut qu'être bénéfique.

Page 35: Page de garde - univ-annaba.dzbiblio.univ-annaba.dz/wp-content/uploads/2014/09/... · Pr. Mohamed-Chaouki Batouche de l’université de Constantine qui m’a considérablement honoré

CHAPITRE II : CHOIX DE LA METHODE UTILSEE

20

II

CHAPITRE

Choix de la méthode utilisée

Dans ce chapitre nous commençons par présenter en bref les principales méthodes de résolution des problèmes d’optimisation (en particulier les problèmes de planification de personnel). Nous ferons une analyse de ces méthodes pour justifier le choix de l'approche utilisée.

Page 36: Page de garde - univ-annaba.dzbiblio.univ-annaba.dz/wp-content/uploads/2014/09/... · Pr. Mohamed-Chaouki Batouche de l’université de Constantine qui m’a considérablement honoré

CHAPITRE II : CHOIX DE LA METHODE UTILSEE

21

1. Introduction

Étant donnée l'importance des problèmes de planification, de nombreuses méthodes de

résolution ont été développées en recherche opérationnelle (RO) et en intelligence

artificielle (IA) pour les résoudre. Ces méthodes peuvent être classées sommairement en

deux grandes catégories : les méthodes exactes (complètes) qui garantissent la complétude

de la résolution et les méthodes approchées (incomplètes) qui perdent en complétude pour

gagner en efficacité.

Le principe essentiel d'une méthode exacte consiste généralement à énumérer, souvent

de manière implicite, l'ensemble des solutions de l'espace de recherche. Pour améliorer

l'énumération des solutions, cette méthode dispose de techniques pour détecter le plus tôt

que possible les échecs (calculs de bornes) et d'heuristiques spécifiques pour orienter les

différents choix [TAL 1999]. Parmi les méthodes exactes, on peut citer la plupart des

méthodes traditionnelles telles les techniques de séparation et évaluation progressive (SEP)

ou les algorithmes avec retour arrière. Les méthodes exactes ont permis de trouver des

solutions optimales pour des problèmes de tailles raisonnables. Malgré les progrès réalisés,

les méthodes exactes rencontrent généralement des difficultés face aux applications de

tailles importantes.

Les méthodes approchées constituent une alternative très intéressante pour traiter les

problèmes d'optimisation de grande taille si l'optimalité n'est pas primordiale. En effet, ces

méthodes sont utilisées depuis longtemps par de nombreux praticiens.

Depuis une dizaine d'années, des progrès importants ont été réalisés avec l’apparition

d’une nouvelle génération de méthodes approchées puissantes et générales, souvent

appelées métaheuristiques. Une métaheuristique est constituée d’un ensemble de concepts

fondamentaux (par exemple, la liste tabou et les mécanismes d’intensification et de

diversification pour la métaheuristique tabou), qui permettent d'aider à la conception de

méthodes heuristiques pour un problème d'optimisation. Ainsi les métaheuristiques sont

adaptables et applicables à une large classe de problèmes.

Page 37: Page de garde - univ-annaba.dzbiblio.univ-annaba.dz/wp-content/uploads/2014/09/... · Pr. Mohamed-Chaouki Batouche de l’université de Constantine qui m’a considérablement honoré

CHAPITRE II : CHOIX DE LA METHODE UTILSEE

22

Grâce aux métaheuristiques on peut aujourd'hui proposer des solutions approchées pour

des problèmes d'optimisation classiques de plus grande taille et pour de très nombreuses

applications qu'il était impossible de traiter auparavant. On constate, depuis ces dernières

années, que l'intérêt porté aux métaheuristiques augmente continuellement dans la

résolution des problèmes non polynomiaux.

Parmi les métaheuristiques on peut citer les deux grandes familles de méthodes : les

méthodes de voisinage et les algorithmes évolutifs.

Les méthodes de voisinage sont fondées sur la notion de voisinage (l'ensemble des

configurations admissibles d'un problème). Une méthode typique de voisinage débute avec

une configuration initiale, et réalise ensuite un processus itératif qui consiste à remplacer la

configuration courante par l'un de ses voisins en tenant compte de la fonction de coût. Ce

processus s'arrête et retourne la meilleure configuration trouvée quand une condition d'arrêt

est réalisée. Cette condition d'arrêt concerne généralement une limite pour le nombre

d'itérations ou un objectif à réaliser. Plusieurs méthodes de voisinage ont été développées

pour résoudre des problèmes d'optimisation; la recherche tabou et le recuit simulé sont les

plus intéressants.

Les algorithmes évolutifs (AE) doivent leur nom à l'analogie avec les mécanismes

d'évolution des espèces vivantes.

Les AE sont une classe d’algorithmes d’optimisation par recherche probabiliste basés

sur le modèle de l’évolution naturelle (voir Annexe A). Ils ont montré leur capacité à éviter

la convergence des solutions d'un problème donné vers des optima locaux, aussi bien

lorsqu’ils sont combinés avec des méthodes de recherche locale comme la rétro-propagation

du gradient [QUA 1997] que lorsqu’ils sont seuls [GOL 1989].

Quel que soit le type de problème à résoudre, les AE opèrent selon les principes

suivants : la population est initialisée de façon dépendante du problème à résoudre

(l’environnement), puis évolue de génération en génération à l’aide d’opérateurs de

sélection, de croisement et de mutation. L’environnement a pour charge d’évaluer les

individus en leur attribuant une performance (ou fitness). Cette valeur favorise la sélection

Page 38: Page de garde - univ-annaba.dzbiblio.univ-annaba.dz/wp-content/uploads/2014/09/... · Pr. Mohamed-Chaouki Batouche de l’université de Constantine qui m’a considérablement honoré

CHAPITRE II : CHOIX DE LA METHODE UTILSEE

23

des meilleurs individus, en vue, après reproduction (opérée par la mutation et/ou le

croisement), d’améliorer les performances globales de la population.

2. Analyse des approches utilisées pour résoudre les problèmes de planification

Malgré les progrès réalisés au niveau des méthodes exactes; PLNE, PPC, …, le temps

de calcul nécessaire pour trouver une solution à l'aide de ces méthodes risque d'augmenter

exponentiellement avec la taille du problème. Ces méthodes rencontrent généralement des

difficultés face aux applications de tailles importantes.

Les méthodes approchées (heuristique) constituent une alternative intéressante pour

résoudre les problèmes de planification. C'est pour cette raison qu'on a opté pour les

méthodes heuristiques, mais quelle heuristique faut-il utiliser?

2.1. Exploitation et exploration

Les inventeurs des algorithmes génétiques ont introduit les notions de l'exploitation et

de l'exploration. L’exploitation insiste sur la capacité d’examiner en profondeur des zones

de recherche particulières, alors que l’exploration met en avant la capacité de découvrir des

zones de recherche prometteuses. Ces deux notions complémentaires concernent au fait la

plupart des méthodes de recherche. Il est donc pertinent d'analyser l'ensemble des

heuristiques en fonction de ces deux notions.

Les méthodes de voisinage (recuit simulé, recherche tabou, …) entendent exploiter les

bonnes propriétés de la fonction de voisinage pour découvrir rapidement des configurations

de bonne qualité. Elles reposent sur l'hypothèse que les zones les plus prometteuses sont

situées à proximité des configurations (déjà visitées) qui sont les plus performantes. Le

principe d'exploitation consiste à examiner en priorité ces zones.

Dans les algorithmes génétiques, la sélection a pour effet de concentrer la recherche

autour des configurations de meilleures performances. Dans les méthodes de voisinage,

l'exploitation est principalement assurée par la préférence accordée à une configuration de

bonne performance dans la procédure de réparation. Plusieurs méthodes introduisent des

Page 39: Page de garde - univ-annaba.dzbiblio.univ-annaba.dz/wp-content/uploads/2014/09/... · Pr. Mohamed-Chaouki Batouche de l’université de Constantine qui m’a considérablement honoré

CHAPITRE II : CHOIX DE LA METHODE UTILSEE

24

mécanismes spécifiques supplémentaires d'exploitation : c'est le cas de l'intensification dans

la méthode tabou.

Cependant, l'application systématique du seul principe d'exploitation ne permet pas une

recherche efficace. En effet, l'exploitation conduit à confiner la recherche dans une zone

limitée qui finit par s'épuiser. Le cas de l'amélioration itérative rapidement piégée dans un

optimum local illustre cruellement ce phénomène. Une autre illustration souvent évoquée

est fournie par le problème de convergence prématurée des algorithmes génétiques

classiques: du fait de la sélection, la population finit par n'être constituée que d'individus

tous similaires. L'une des préoccupations majeures dans les algorithmes génétiques consiste

d'ailleurs à préserver le plus longtemps possible une diversité suffisante dans la population.

Face à ces difficultés, la solution consiste à diriger la poursuite de la recherche vers de

nouvelles zones, i.e., à recourir à l'exploration.

En plus de la relance, les heuristiques emploient principalement deux autres stratégies

dans le but d'explorer : la première consiste à perturber aléatoirement et la seconde à

caractériser les régions visitées pour pouvoir ensuite s'en éloigner.

La première stratégie qui est aussi la plus simple consiste à introduire des perturbations

aléatoires : c'est le cas pour les mutations aléatoires dans les algorithmes génétiques ainsi

que pour la génération aléatoire d'un voisin dans le recuit simulé. Dans les deux cas, la

configuration courante est altérée de manière aléatoire et un mécanisme d'acceptation est

appliqué a posteriori. Ces deux méthodes admettent donc en permanence des perturbations

aléatoires.

La deuxième stratégie pour explorer consiste à mémoriser au cours de la recherche des

caractéristiques des régions visitées et à introduire un mécanisme permettant de s'éloigner

de ces zones. C'est ce que fait la méthode tabou avec la liste tabou (court terme) et avec la

diversification (long terme). La recherche locale guidée reprend cette même idée. Nous

pouvons remarquer que cette seconde stratégie nécessite l'utilisation d'une mémoire.

Notons enfin que la recombinaison est parfois présentée comme une manière

supplémentaire de contribuer à l'exploration.

Page 40: Page de garde - univ-annaba.dzbiblio.univ-annaba.dz/wp-content/uploads/2014/09/... · Pr. Mohamed-Chaouki Batouche de l’université de Constantine qui m’a considérablement honoré

CHAPITRE II : CHOIX DE LA METHODE UTILSEE

25

Nous venons de voir qu'il existe différents modes d'exploration. Les heuristiques se

différencient également selon la manière dont elles font varier l'intensité de l'exploration au

cours de la recherche. Le recuit simulé présente une manière spécifique de procéder : le

niveau des perturbations aléatoires (responsables de l'exploration), est initialement fixé à un

niveau élevé et abaissé progressivement au cours de la recherche. La méthode tabou illustre

une manière très différente de doser l'exploration : un mécanisme particulier d'exploration

(la diversification) succède régulièrement à de longues phases de recherche.

La recombinaison constitue un autre principe général qui complète l'exploitation et

l'exploration. Elle consiste à construire de nouvelles configurations en combinant la

structure de deux ou plusieurs configurations déjà trouvées, c'est l'idée des algorithmes

génétiques. Des travaux récents ont montré qu'une recombinaison appropriée de solutions

peut améliorer sensiblement l'efficacité de la recherche.

La puissance d'une heuristique est d'abord liée à son aptitude à intégrer des

connaissances spécifiques du problème. La connaissance du problème la plus fondamentale

réside dans le codage du problème et dans le choix des paramètres. En général, il n'existe

pas de codage universellement efficace. Un « bon » codage doit permettre de restreindre

l'espace de recherche et d'intégrer des connaissances du problème.

Les heuristiques tentent également d'améliorer leur efficacité en incorporant des

connaissances supplémentaires dans leurs opérateurs. Plus les opérateurs d'une méthode

utilisent des connaissances spécifiques, plus la méthode dispose de moyens potentiels pour

conduire efficacement la recherche. En contrepartie, l'intégration de ces connaissances

spécifiques (en supposant que ces connaissances soient disponibles) nécessite un effort pour

spécialiser ou adapter la méthode. La méthode tabou vise à incorporer le plus possible de

connaissances du problème pour atteindre le maximum d'efficacité : l'utilisateur doit définir

de façon pertinente le type de caractéristique figurant dans la liste tabou. De leur coté, les

algorithmes génétiques se sont éloignés du modèle standard pour intégrer également des

connaissances du problème : codage non binaire, opérateurs spécifiques. Au contraire, le

recuit simulé est parfois présenté comme une méthode facile à adapter à un problème et qui

ne tente pas d'exploiter de connaissances spécifiques.

Page 41: Page de garde - univ-annaba.dzbiblio.univ-annaba.dz/wp-content/uploads/2014/09/... · Pr. Mohamed-Chaouki Batouche de l’université de Constantine qui m’a considérablement honoré

CHAPITRE II : CHOIX DE LA METHODE UTILSEE

26

En général, une méthode offrant des possibilités d'intégrer des connaissances du

problème a plus de chance de produire de bons résultats, mais demande un effort

d'adaptation et de spécialisation. Au contraire, une méthode très générale qui prétend

n'intégrer aucune connaissance propre ne peut être compétitive.

2.2. Quelle métaheuristique utiliser ?

Le premier problème pratique qui se pose à un utilisateur confronté à une application

concrète est d'effectuer un choix parmi les différentes heuristiques disponibles. Ce choix est

d’autant plus difficile qu'il n'existe pas de comparaison générale et fiable des différentes

heuristiques. Cependant, il est possible de caractériser les heuristiques selon quelques

critères généraux, ce qui pourrait faciliter ce choix. Parmi les critères les plus

représentatives citons :

• simplicité de l'heuristique, i.e. simplicité de la méthode elle-même,

• facilité d'adaptation au problème,

• possibilité d'intégrer des connaissances spécifiques du problème,

• qualité des meilleures solutions trouvées,

• rapidité, i.e., le temps de calcul nécessaire pour trouver une telle solution (sur une

machine séquentielle).

2.3. Notre Choix

Parmi toutes les approches citées, c'est sur l'approche génétique que nous avons porté

notre intérêt, ceci revient aux nombreux avantages des algorithmes génétiques. Nous

résumons ci-dessous les principaux avantages de cette approche:

• généralité et application possible à une large classe de problèmes,

• efficacité pour de nombreux problèmes,

Page 42: Page de garde - univ-annaba.dzbiblio.univ-annaba.dz/wp-content/uploads/2014/09/... · Pr. Mohamed-Chaouki Batouche de l’université de Constantine qui m’a considérablement honoré

CHAPITRE II : CHOIX DE LA METHODE UTILSEE

27

• leurs grandes robustesses; ils permettent de fournir une ou plusieurs solutions de «bonne»

qualité (pas nécessairement optimales, mais satisfaisantes en pratique) à des problèmes très

variés, en sollicitant un investissement (temps et puissance de calcul) assez faible,

• optimisation rapide de fonctions objectives quelconques sur des espaces de recherche

de grande taille,

• l’exploration parallèle de l’espace de recherche (Les algorithmes génétiques recherchent

une solution à partir d’une population de points et non pas à partir d’un seul point),

• Les algorithmes génétiques n’imposent aucune régularité sur la fonction étudiée (continuité,

dérivabilité, convexité…). C’est un des atouts des algorithmes génétiques.

• leur facilité de mise en œuvre,

• possibilité de compromis entre qualité des solutions et temps de calcul,

• existence de preuves de convergence asymptotique (Raphaël Cerf [CER 1994]

montre que l’algorithme génétique converge asymptotiquement vers tous les optima

quand la population dépasse une taille critique dépendant fortement du problème

d’optimisation),

• L’application réussite des algorithmes génétiques aux certains problèmes de

planification de personnel :

Les algorithmes génétiques pour la résolution de problèmes d’emploi du temps

des cours aux universités [BUR 1994a, BUR 1994c].

Les algorithmes génétiques pour la résolution de problèmes d’emploi du temps

des examens aux universités [FAN 1992, BUR 1995c, BUR 2000, PAQ 2001,

MER 2003, BUR 2001a].

Résolution des problèmes d’emploi du temps des employées en utilisant des

algorithmes génétiques basés sur une heuristique de réduction de conflit [KAN

2001].

Gestion des plannings aériens (planification du personnel navigant) [DEL

1995].

Un algorithme génétique parallèle pour résoudre le problème d’emploi du

temps d’une école [ABR 1992].

Page 43: Page de garde - univ-annaba.dzbiblio.univ-annaba.dz/wp-content/uploads/2014/09/... · Pr. Mohamed-Chaouki Batouche de l’université de Constantine qui m’a considérablement honoré

CHAPITRE II : CHOIX DE LA METHODE UTILSEE

28

Rappelons qu'il s'agit d'une méthode heuristique dont l'objectif n'est pas le même que

celui des méthodes exactes. En particulier, ces algorithmes ne garantissent pas de trouver

une solution optimale ni de prouver l'optimalité de la solution trouvée. Néanmoins ils ont

prouvé leur grande efficacité pour fournir des solutions approchées de bonne qualité pour un

grand nombre de problèmes de planification et d'applications réelles de grande taille. C'est

pourquoi l'étude de ces méthodes est actuellement en plein développement. En outre les

problèmes de planification étant des problèmes NP-Complets, tout apport en terme

d'approches ou de solutions ne peut que leur être bénéfique.

Page 44: Page de garde - univ-annaba.dzbiblio.univ-annaba.dz/wp-content/uploads/2014/09/... · Pr. Mohamed-Chaouki Batouche de l’université de Constantine qui m’a considérablement honoré

CHAPITRE III : PROPOSITION D’UN AG POUR RESOUDRE LE PROBLEME ETUDIE

29

III

CHAPITRE

Proposition d’un Algorithme génétique pour résoudre le problème étudié.

Ce chapitre est divisé en trois parties :

Dans la première on présente notre problème étudié, et les différents types de contraintes qui le caractérisent.

Dans la deuxième partie nous présentons notre algorithme génétique conçu, en donnant les choix utilisés pour définir le codage des données, l’initialisation de la population, l’évaluation des chromosomes et la procédure de sélection. Nous étudierons également, les incidences de certains paramètres comme : la probabilité de croisement, la probabilité de mutation, la taille de la population et le nombre de générations (itérations).

Dans la troisième partie, nous présentons notre application, et nous discutons les résultats obtenus en tirant les conclusions et perspectives d’une telle étude.

Page 45: Page de garde - univ-annaba.dzbiblio.univ-annaba.dz/wp-content/uploads/2014/09/... · Pr. Mohamed-Chaouki Batouche de l’université de Constantine qui m’a considérablement honoré

CHAPITRE III : PROPOSITION D’UN AG POUR RESOUDRE LE PROBLEME ETUDIE

30

I. PRESENTATION DU PROBLEME ETUDIE

Dans le cadre de notre étude, nous considérons un problème concret de génération

d'emplois du temps hebdomadaires de médecins dans un service au sein d'un hôpital de

taille considérable. La personne chargée de la planification dans ce service dispose d'un

certain nombre de postes et d'une équipe de médecins avec des compétences diverses à

affecter aux postes par demi-journées (matin et après-midi). Elle doit, de plus, prendre en

compte de nombreuses contraintes de différents types. Par exemple, elle dispose d'un

planning d'ouvertures des postes et de disponibilités des médecins. Dans une journée, sur

certains postes, le médecin affecté le matin doit être différent de celui affecté l'après-midi.

Chaque médecin exprime des préférences et il est graduellement compétent pour travailler

sur les différents postes. A noter également que certains médecins ne peuvent être seuls sur

certains postes tant qu'ils n'ont pas été assez formés. De plus, un médecin ne peut être

affecté plus de trois fois dans la semaine au même poste.

Ce balayage succinct montre que le problème possède des contraintes très variées. De

plus, les différentes contraintes sont classées par niveau : certaines contraintes peuvent être

relâchées (on parle alors de contraints molles) alors que d'autres doivent être maintenues

dans touts les cas de figures (elles sont dites dures).

Il est claire que la méthode de formalisation et de résolution proposée doit permettre une

gestion dynamique des contraintes : les contraintes et les types de contraintes sont

susceptibles de changer d'une semaine à l'autre.

Pour notre cas d’étude nous prenons en compte les considérations suivantes :

• Les postes sont dynamiques : ouverts, fermés, supprimés ;

ouvert : le poste fonctionne normalement.

fermé : le poste est considéré pour une période donnée -plage de fonctionnement-

comme étant fermé s'il n'y a pas suffisamment de ressources pour l'ouvrir.

supprimé : un poste est supprimé s’il n’y a pas suffisamment de ressources pour

l’ouvrir (suffisamment de médecins ou de moyens).

Page 46: Page de garde - univ-annaba.dzbiblio.univ-annaba.dz/wp-content/uploads/2014/09/... · Pr. Mohamed-Chaouki Batouche de l’université de Constantine qui m’a considérablement honoré

CHAPITRE III : PROPOSITION D’UN AG POUR RESOUDRE LE PROBLEME ETUDIE

31

Un poste est considéré fermé pour un hôpital donné si ce poste a été affecté à d’autres

hôpitaux (autres que celui qui nous intéresse).

• Les plages de fonctionnement de notre système sont : le matin et l’après midi, donc

lorsqu’on affecte un médecin à un poste on l’affecte soit le matin soit l’après midi.

• Les médecins sont affectés pendant leurs périodes de disponibilité. Un médecin

peut enseigner, faire de la recherche, faire des consultations, …etc. A la fin d’une

semaine donnée, on sait quelles sont les disponibilités de chaque médecin pour la

semaine à suivre. D’où, si un médecin est toujours occupé le mercredi matin, par

exemple, il est inutile de l’affecter le mercredi matin.

• Les affectations préalables sont des affectations réalisées manuellement : par

exemple, on voudrait que pendant les deux prochaines semaines Dr. X assure le

poste scanner le samedi matin.

• Au couple (médecin, poste) on associe la compatibilité et la compétence. Un

médecin ne peut être affecté à un poste si celui-ci n’entre pas dans sa spécialité.

Pour le même poste, on a deux médecins qui peuvent l’assurer mais l’un est plus

compétent que l’autre.

• Un médecin ne peut être affecté plus de 3 fois au même poste pendant la semaine,

et pas au même poste le matin et l’après-midi dans la même journée sauf les

urgences.

• On a des préférences d’affectations de certains médecins à certain postes : si le

poste X est ouvert et si A, B, et C sont qualifiés pour ce poste, alors affecter de

préférence A sinon B et si les deux ne peuvent l’être, alors affecter C.

• Les postes sont : Urgences, Echographie1, Echographie2, Scanner, Vasculaire,

Mammographie.

Page 47: Page de garde - univ-annaba.dzbiblio.univ-annaba.dz/wp-content/uploads/2014/09/... · Pr. Mohamed-Chaouki Batouche de l’université de Constantine qui m’a considérablement honoré

CHAPITRE III : PROPOSITION D’UN AG POUR RESOUDRE LE PROBLEME ETUDIE

32

II. PRESENTATION DE L'ALGORITHME GENETIQUE CONÇU

D’une manière générale, on peut très bien transformer un problème d’optimisation avec

contraintes en un problème de minimisation en associant un poids ou une pénalité à chaque

violation de contrainte. Cette violation est incluse dans l’évaluation de la fonction

d’adaptation.

Avec cette méthode, quand une contrainte est violée, la valeur de la fonction

d’adaptation est pénalisée d’un montant en fonction de la violation de cette contrainte.

Lorsque toutes les contraintes sont satisfaites, le phénotype de l’individu correspondant est

dit solution du problème posé.

Pour appliquer la méthode génétique à notre problème, on présentera les choix utilisés

pour définir le codage des données, l’initialisation de la population, l’évaluation, les

opérateurs génétiques et la procédure de sélection.

II.1 Alphabet de codage et fonction d’adaptation

Le codage des solutions potentielles sous forme de chromosomes et le calcul de leurs

adaptations (fitness) sont les deux parties essentielles pour la réussite de tout algorithme

génétique.

a. L’alphabet de codage

Le codage dépend étroitement du problème à résoudre. En effet, sa définition permet de

cerner l’espace des solutions possibles. Ce codage doit, de plus, être aussi compact que

possible pour permettre une évolution rapide.

Principalement, le codage binaire est le plus commun, car les premiers travaux,

appliquant les algorithmes génétiques, ont utilisé ce type de codage. Pour notre problème,

l’utilisation du codage binaire est d’une difficulté qui complique le décodage des solutions.

Dans cette optique, nous avons opté pour un codage direct des solutions ; chaque gène

correspond à l’affectation d’un médecin à un poste dans une période de travail (voir figure

1).

Page 48: Page de garde - univ-annaba.dzbiblio.univ-annaba.dz/wp-content/uploads/2014/09/... · Pr. Mohamed-Chaouki Batouche de l’université de Constantine qui m’a considérablement honoré

CHAPITRE III : PROPOSITION D’UN AG POUR RESOUDRE LE PROBLEME ETUDIE

33

Poste: Echographie1

Poste: Mammographie

Samedi Dimanche Lundi Mardi Mercredi Samedi Dimanche Lundi Mardi Mercredi

M A.M M A.M M A.M M A.M M A.M M A.M M A.M M A.M M A.M M A.M

C A B # A # D C # B # D C # F B E # A #

Figure 1 : Le codage choisi pour la représentation des solutions.

Dans l’exemple de la figure 1, les lettres A, B, C, … correspondent aux noms réels des

médecins. Le docteur C est affecté au poste Echographie1 le samedi matin, et le mardi

après-midi, et il est affecté au poste Mammographie le dimanche matin. La valeur # pour un

gène signifie que le poste est fermé pendant cette période; par exemple, le poste

Echographie1 est fermé le dimanche après-midi.

Dans cette représentation, la taille N du chromosome, sera calculée comme suit :

N = nombre de jours de travail par semaine

× nombre de périodes de travail par jour

× nombre de postes (services)

Dans notre cas :

Nombre de jours de travail par semaine = 5 (du samedi au mercredi)

Nombre de périodes de travail par jour = 2 (le matin et l’après-midi)

Nombre de postes (services) = 6.

Donc la taille du chromosome est 60.

Les chromosomes des individus qui vont constituer la population à chaque génération

sont des tableaux de 60 éléments. Ce codage a été très bien adapté à notre problème,

puisqu’il nous a permis d’éviter le réajustement dans la procédure du décodage des

solutions obtenues, tant que le chromosome solution sera lu directement comme une

affectation des médecins à des postes.

Page 49: Page de garde - univ-annaba.dzbiblio.univ-annaba.dz/wp-content/uploads/2014/09/... · Pr. Mohamed-Chaouki Batouche de l’université de Constantine qui m’a considérablement honoré

CHAPITRE III : PROPOSITION D’UN AG POUR RESOUDRE LE PROBLEME ETUDIE

34

b. La fonction d’évaluation

Il est clair que la fonction d’évaluation ne peut être universelle à tous les problèmes

d’optimisation avec contraintes; car, c’est à ce niveau que sont gérées les contraintes.

Celles-ci étant diverses, l’efficacité de l’algorithme dépendra donc du problème à traiter. En

effet, même si l’approche stochastique des algorithmes génétiques permet de trouver des

solutions pour des problèmes très contraints en un temps raisonnable, les tests associés à la

vérification de ces contraintes affectera à coup sûr le temps imparti à tout l’algorithme.

Rappelons qu’il faut impérativement minimiser le nombre de contraintes violées, et dans le

meilleur des cas rendre cette violation nulle.

Pour notre algorithme, nous avons opté pour la fonction d’évaluation pénalisante, où le

poids de chaque contrainte change dynamiquement suivant le nombre de violations de cette

contrainte par une instanciation I donnée du problème.

∑=

=m

iii )I,C(Fwff

1

Où m est le nombre total de contraintes, et

= sinon1

Csatisfait I si0 ii )I,C(F

wi est le poids associé à la contrainte Ci. Il est calculé comme suit :

wi = pi × NbVi où Pi est un poids constant associé à chaque contrainte suivant son

importance (on associe un poids élevé aux contraintes dures et un poids conséquent aux

contraintes molles), et NbVi est le nombre de violations de la contrainte Ci par

l’instanciation I (voir paragraphe suivant).

Le but principal de l’algorithme est de minimiser la fonction d’évaluation. On ne

parlera de solution du problème que si cette fonction est égale à zéro.

Page 50: Page de garde - univ-annaba.dzbiblio.univ-annaba.dz/wp-content/uploads/2014/09/... · Pr. Mohamed-Chaouki Batouche de l’université de Constantine qui m’a considérablement honoré

CHAPITRE III : PROPOSITION D’UN AG POUR RESOUDRE LE PROBLEME ETUDIE

35

c. Modélisation des contraintes

Comme nous l'avons vu au début de ce chapitre, notre problème est doté de plusieurs

contraintes. On peut les diviser en deux catégories, les contraintes qui doivent être

accomplies sous toutes les circonstances (contraintes dures) et les contraintes qui devraient

être accomplies si possible (les contraintes molles) ;

Les contraintes dures

1. Un médecin ne peut être affecté à 2 postes différents à la même période.

2. Ne pas affecter un médecin à un poste qui n’entre pas dans sa compétence.

3. Ne pas affecter un médecin dans une période où il n’est pas disponible.

Les contraintes molles

4. Un médecin ne peut être affecté plus de 3 fois au même poste pendant la semaine.

5. Un médecin ne peut être affecté au même poste le matin et l’après-midi dans la

même journée sauf les urgences.

6. Contrainte de préférence d’affectation de certains médecins à certains postes : si le

poste X est ouvert et si A, B, et C sont qualifiés pour ce poste, alors affecter de

préférence A, sinon B, et si les deux ne peuvent l’être, alors affecter C.

7. Un médecin débutant (junior) ne peut être seul dans un poste; il faut qu’il soit

accompagné d’un senior (médecin confirmé).

Calcul du nombre de violations NbVi de chaque contrainte

Soit NbVi (i=1..6) le nombre de violations de chaque contrainte pour une instanciation

donnée I :

1. NbV1(I) = ∑=

NbMédecins

1jj,I)NbConflit( où NbMédecins est le nombre de médecins total, et

Page 51: Page de garde - univ-annaba.dzbiblio.univ-annaba.dz/wp-content/uploads/2014/09/... · Pr. Mohamed-Chaouki Batouche de l’université de Constantine qui m’a considérablement honoré

CHAPITRE III : PROPOSITION D’UN AG POUR RESOUDRE LE PROBLEME ETUDIE

36

>

=

période) même la à différents postesk à affectéest Jmédecin (le conflitsk ay ils' 0)(kk

donnée. période une dans fois seule une affectéest jmédecin le d-à-cconflit de pas ay n ils' 0

I)j,NbConflit(

Par exemple si le médecin D est affecté 2 fois le samedi matin, alors NbConflit(D,I)=2,

et s’il est affecté aussi 2 fois le lundi l’après-midi, alors NbConflit(D,I)=4.

2. NbV2(I) = ∑=

N

1jI),Poste(j),Médecin(j) Apte( où N est la taille du chromosome

Médecin(j) retourne le médecin travaillant la période j, dans l’exemple de la figure 1,

Médecin(7) = D (le médecin travaillant au poste échographie1 le mardi matin). Poste(j)

retourne le poste correspondant à la période j dans le chromosome représentant

l’instanciation I, donc pour j=1..10 Poste(j)=Echographie1, …, pour j=51..60

Poste(j)=Mammographie, dans l’exemple de la figure 1, Poste(7)=Echographie1.

=sinon 1

Iion instanciatl'pour médecin x du scompétence les dans entrey poste le si 0 I)y, Apte(x,

Par exemple Apte(D,Echo1,I) = 0 si le médecin D est compétant pour travailler au poste

Echographie1.

Pour une instanciation donnée I, NbV2(I) représente le nombre de médecins affectés à des

postes qui n’entrent pas dans leurs compétences.

3. NbV3(I) = ∑=

N

1j),I),Période(jMédecin(j) (Disponible

Période(j) retourne la période correspondant dans le chromosome, par exemple

Période(7) = le mardi matin.

=sinon 1

Iion instanciatl'pour p période la à disponibleest médecin x le si 0 I)p, (x,Disponible

Page 52: Page de garde - univ-annaba.dzbiblio.univ-annaba.dz/wp-content/uploads/2014/09/... · Pr. Mohamed-Chaouki Batouche de l’université de Constantine qui m’a considérablement honoré

CHAPITRE III : PROPOSITION D’UN AG POUR RESOUDRE LE PROBLEME ETUDIE

37

Pour une instanciation donnée I, NbV3(I) représente le nombre de médecins affectés à des

périodes où ils ne sont pas disponibles.

4. NbV4(I) = ∑∑==

NbMédecins

1k

NbPostes

1jI),Médecin(k)Poste(j), s(PlusDeTroi où

NbPoste est le nombre de postes considérés dans l'étude,

=fois) troisde (plussinon 1

Iion instanciatl' dans x,posteau moinsou fois troisaffectéest y médecin le si 0 I) y,s(x,PlusDeTroi

Pour une instanciation donnée I, NbV4(I) représente le nombre de médecins affectés plus de

trois fois à un même poste.

5. NbV5(I) = ∑∑==

NbJours

1k

NbPostes

2I)Jour(k),(j),Midi(PosteMatinAprès

joù

NbPoste est le nombre de postes considérés, et j commence de 2 pour exclure le poste des

urgences.

= sinon 1

Iion instanciatl'pour x posteau y jour du midi-aprèsl'et matin le affectémédecin un ay ils' 0

I)y,Midi(x,MatinAprès

6. NbV6(I) = ∑=

N

1jI),Poste(j),Médecin(j) (Préférence où N est la taille du chromosome, et

+

=

poste lepour compétant 1)(k le comme classéest médecin x le sik ...

poste lepour compétant 3 le comme classéest médecin x le si 2poste lepour compétant 2 le comme classéest médecin x le si 1

y poste lepour compétant plus leest médecin x le si 0

I)y,s(x,Préférence

ème

ème

ème

d. Structure de données

L’individu sera représenté par un tableau de N éléments représentant les gènes

(médecins).

Page 53: Page de garde - univ-annaba.dzbiblio.univ-annaba.dz/wp-content/uploads/2014/09/... · Pr. Mohamed-Chaouki Batouche de l’université de Constantine qui m’a considérablement honoré

CHAPITRE III : PROPOSITION D’UN AG POUR RESOUDRE LE PROBLEME ETUDIE

38

La population sera un tableau d’individus. Nous aboutissons donc à une structure de

matrice POP :[1..taille, 1..N], où taille sera la taille de la population et N la taille du

chromosome.

II.2 Initialisation de la population

La genèse de la population initiale se fera de manière totalement aléatoire, ce qui

convient parfaitement aux problèmes de plannings ; car, rappelons-le, il s’agit de problèmes

dont on ne connaît souvent aucune solution préalable à améliorer, et pour lesquelles il est

difficile d’imaginer une solution admissible.

Nous avons donc choisi de générer des solutions qui satisfont le plus possible de

contraintes. Notre démarche consiste à intégrer une méthode de propagation de contraintes

avant l'étape de génération de la population initiale, afin de réaliser un filtrage pour réduire

l’espace de recherche. Les domaines des variables sont déjà substantiellement réduits par la

propagation des contraintes posées qui assure l’arc-consistance1

• Choisir aléatoirement deux individus dans la population (procédure coupler),

du problème, ce qui évite à

l’algorithme de prospecter des zones de recherche où il n’y a pas de solutions.

II.3 Les opérateurs utilisés

a. La sélection

Dans une première phase, nous avons opté pour la sélection par tournoi (voir Annexe

A). Ce type de sélection permet de maintenir une certaine diversité dans la population. Une

technique simple consiste à :

• Comparer leur fonction d’évaluation,

• Prendre le meilleur et l’ajouter à la population intermédiaire.

Comme il a été déjà établi, la variance de cette méthode est malheureusement assez

élevée. Il est possible qu’un individu, de mauvaise qualité, soit sélectionné pour la 1 Le filtrage par consistance d'arc consiste à éliminer les éléments qui ne peuvent trivialement figurer deux à deux dans aucune solution.

Page 54: Page de garde - univ-annaba.dzbiblio.univ-annaba.dz/wp-content/uploads/2014/09/... · Pr. Mohamed-Chaouki Batouche de l’université de Constantine qui m’a considérablement honoré

CHAPITRE III : PROPOSITION D’UN AG POUR RESOUDRE LE PROBLEME ETUDIE

39

reproduction autant de fois qu’il y ait d’individus à remplacer. Il est possible également

qu’un individu ayant une bonne valeur d’adaptation, ne soit jamais sélectionné. Par

exemple, si les deux individus choisis par le tournoi sont très bons (très faible valeur de la

fonction d’évaluation), le moins bon des deux est rejeté. Ce même individu qui a été rejeté

peut être meilleur que tous les autres individus sélectionnés, mis à part celui contre qui il a

combattu. Ce phénomène est responsable de la dérive génétique qui permet à certains

individus de survivre au déterminant d’individus meilleurs.

Pour limiter ce risque, concernant le meilleur individu, la formation des couples qui

entrent en compétition est améliorée de façon à donner la même chance à chaque individu

pour être sélectionné. De cette manière, on est assuré que le meilleur individu sera

sélectionné pour la génération intermédiaire. La procédure coupler est changée, de façon à

ce que tous les individus soient concernés par la formation des couples d’individus.

Concernant la déperdition des bons éléments, nous avons opté pour une opération de

marquage des individus de façon à pouvoir inclure systématiquement les n meilleurs

individus dans la population intermédiaire (dans le cas où ils ne l’ont pas été) et on en retire

aléatoirement n autres (ou moins, s'il y a déjà des individus parmi les n meilleurs qui ont été

déjà choisis par la sélection) parmi les moins bons. n est un paramètre qui dépend de la taille

de la population et qui est suffisamment petit pour éviter une forte pression de sélection

(trop de bons éléments) ; ce qui mènerait inévitablement à une convergence prématuré de

l’algorithme, autrement dit, on se retrouve bloqué dans un optimum local. Après plusieurs

essais (n= de 5% à 20%), n est pris égale à 10% de la taille de la population. Ce quota étant

significatif sans pour être trop élevé.

Justification du choix

Nous avons essayé, à ce niveau, de combiner les avantages de la technique élitiste

(garder les meilleurs individus dans la population intermédiaire) et celle de la sélection par

tournoi (qui garantit une certaine diversité dans la population) tout en évitant les

inconvénients de l’une et de l’autre.

Page 55: Page de garde - univ-annaba.dzbiblio.univ-annaba.dz/wp-content/uploads/2014/09/... · Pr. Mohamed-Chaouki Batouche de l’université de Constantine qui m’a considérablement honoré

CHAPITRE III : PROPOSITION D’UN AG POUR RESOUDRE LE PROBLEME ETUDIE

40

• On évite la trop pression de sélection (élitisme) : une sélection se basant uniquement sur

le choix des meilleurs individus augmente la probabilité que l’algorithme soit bloqué

dans un optimum local.

• On évite que le ou les meilleurs individus ne soient pas sélectionnés, ce qui minimise

les chances de l’algorithme de converger vers l’optimum global.

b. Le croisement

Il consiste en l’obtention de deux nouveaux individus en combinant deux individus

parents. Nous avons procédé à un croisement simple en un point. Le point de croisement est

choisi aléatoirement. Malheureusement au cours de l’implémentation de notre algorithme,

nous avons constaté que la contrainte N°5 (Un médecin ne peut être affecté au même poste

le matin et l’après-midi dans la même journée) est presque tout le temps violée. D’où, afin

d’éviter de générer des solutions qui ne satisfont pas cette contrainte, nous avons choisi une

valeur paire pour le point de croisement, afin que les éléments échangés entre les deux

individus parents soit des bloques de journées et non des demi-journées (voir figure 2).

Scanner Scanner

Samedi Dimanche Lundi Mardi Mercredi Samedi Dimanche Lundi Mardi Mercredi

M A.M M A.M M A.M M A.M M A.M M A.M M A.M M A.M M A.M M A.M

Parent 1 : B A D # # B E # C E B A D # # A C D C # Enfant 1

Parent 2 : A F # D B A C D C # A F # D B B E # C E Enfant 2

Figure 2.a : Exemple d'un point de coupure qui entraîne la violation de la contrainte N°5,

(le médecin b est affecté au poste scanner le matin et l’après-midi la même journée : le lundi)

Parent 1 : B A D # # B E # C E B A D # # B C D C # Enfant 1

Parent 2 : A F # D B A C D C # A F # D B A E # C E Enfant 2

Figure 2.b : Point de coupure qu'assure la satisfaction de la contrainte N°5,

Figure 2 : Exemple de croisement à « un point ».

violation de contrainte Point de croisement = 15

Point de croisement = 16

Page 56: Page de garde - univ-annaba.dzbiblio.univ-annaba.dz/wp-content/uploads/2014/09/... · Pr. Mohamed-Chaouki Batouche de l’université de Constantine qui m’a considérablement honoré

CHAPITRE III : PROPOSITION D’UN AG POUR RESOUDRE LE PROBLEME ETUDIE

41

Après plusieurs essais, la probabilité de croisement Pc a été choisie égale à 0.8. Nous

sommes partis de la valeur 0.5, la population avait tendance à s’uniformiser trop tôt,

aboutissant souvent à l’arrêt de l’algorithme sans trouver de solutions, le nombre de

générations prévues étant atteint. Plus on augmentait Pc, et meilleurs étaient les résultats,

jusqu’à 0.85, valeur au bout de laquelle une légère détérioration de la solution a été

observée. Les meilleurs résultats ont été observés pour des valeurs entre 0.75 et 0.85 et nous

avons donc choisi la valeur 0.8 comme probabilité de croisement.

c. La mutation

Pour une première phase, nous avons opté pour une mutation de ce type :

• Choisir aléatoirement une position dans le chromosome,

• Changer la valeur du gène correspondant à la position. Ce changement se fera en

tirant au hasard une valeur du domaine de la variable considérée (le domaine est

l’ensemble des médecins qualifiés pour ce poste et disponibles à cette période), la

nouvelle valeur doit être différente de l’ancienne.

Ensuite, nous avons essayé d’améliorer essentiellement le choix du point de mutation.

Ce choix qui était purement aléatoire, nous avons choisi, dans le chromosome, le gène ayant

comptabilisé le maximum de violation de contraintes (surtout les contraintes dures) et de le

muter, avec une probabilité Pm, à une autre valeur choisie parmi les valeurs restantes dans

son domaine (médecins disponibles à cette période et qualifiés pour ce poste). En tenant

compte des préférences d’affectation des médecins, et pour maintenir la contrainte N°5, il

faut que le médecin choisi n'ait pas été affecté à ce poste le période complémentaire de la

journée.

Là aussi, nous avons essayé plusieurs probabilités Pm , la valeur qui à donné les meilleurs

résultats est 0.2.

II.4 Condition d’arrêt

L’algorithme génétique, suivant un processus stochastique, il n’y a aucune certitude à

ce qu’il trouve une solution et encore moins une solution optimale. Pour palier à ces

éventualités, notre algorithme s’arrête si :

Page 57: Page de garde - univ-annaba.dzbiblio.univ-annaba.dz/wp-content/uploads/2014/09/... · Pr. Mohamed-Chaouki Batouche de l’université de Constantine qui m’a considérablement honoré

CHAPITRE III : PROPOSITION D’UN AG POUR RESOUDRE LE PROBLEME ETUDIE

42

• La somme des violations des contraintes est nulle, ou que la fonction d’évaluation

n’évolue plus sur plusieurs générations.

• On arrive au nombre de générations maximum, le nombre de génération NbGenMax

étant arrêté à l’avance (en fonction de la taille du problème).

II.5 Les étapes de notre algorithme génétique

Le principe de base de notre algorithme génétique est de simuler l’évolution d’une

population de solutions en suivant les règles citées ci-dessus, en vue d’obtenir une solution

optimale (violations nulles), ou un ensemble de solutions les plus adaptées au problème à

résoudre.

Figure 3 : Etapes de l'algorithme génétique proposé.

A chaque génération, un nouvel ensemble de solutions est créé en utilisant les phases :

évaluation, sélection, croisement et mutation de manière itérative sur P(t) (la figure 4

schématise un tel fonctionnement) jusqu’à satisfaction de la condition de fin (fonction

d’adaptation atteint sa meilleure valeur ou le nombre de génération dépasse NbGenMax).

P(t) étant la population à la génération t.

GENERER_POP {génération de la population initiale}

t :=0 ;

EVALUER (P(t)) ; {évaluation des individus}

Tant que (condition de fin non vérifiée) faire {fadaptation=0 ou t=NbGenMax}

Début

t :=t+1 ;

SELECTIONNER P(t) parmi P(t-1) ; {sélection des individus}

RECOMBINER (P(t)) ; {croisement et mutation}

EVALUER (P(t)) ; {évaluation des nouveaux individus}

Fin ;

Page 58: Page de garde - univ-annaba.dzbiblio.univ-annaba.dz/wp-content/uploads/2014/09/... · Pr. Mohamed-Chaouki Batouche de l’université de Constantine qui m’a considérablement honoré

CHAPITRE III : PROPOSITION D’UN AG POUR RESOUDRE LE PROBLEME ETUDIE

43

Une nouvelle population est ainsi produite. Le processus sera répété jusqu'à ce qu'une solution admissible soit trouvée.

ff = x

×

Initialisation

Évaluation

Sélection

Opérateurs (croisement & mutation)

Une population initiale des plannings est créée aléatoirement.

Chaque planning est évalué selon un ensemble de critères (nombre de violation de contraintes, …)

Des plannings sont aléatoirement sélectionnés pour être la base de la prochaine génération. Les meilleurs plannings sont favorisés.

L'opérateur de mutation change aléatoirement un médecin dans une période…

L'opérateur de croisement prend des paires de plannings, les recombine pour produire un nouveau planning.

Figure 4 : Les différentes étapes de l'Algorithme proposé.

Page 59: Page de garde - univ-annaba.dzbiblio.univ-annaba.dz/wp-content/uploads/2014/09/... · Pr. Mohamed-Chaouki Batouche de l’université de Constantine qui m’a considérablement honoré

CHAPITRE III : PROPOSITION D’UN AG POUR RESOUDRE LE PROBLEME ETUDIE

44

III. IMPLEMENTATION ET EXPERIMENTATION

Ce travail vise à mettre au point et à expérimenter un logiciel d'aide à la planification

hospitalière et donc d'aide à la décision. Pour les utilisateurs, ce logiciel a comme objectifs :

• Aide à l'élaboration des plannings,

• Gain de temps,

• Transmission des éléments destinés à la gestion du personnel.

Notre but est de créer un emploi du temps cyclique dont la période de base est la

semaine et est destiné à un personnel intervenant dans un service d’un hôpital. La figure 5

suivante schématise un exemple d'un tel planning.

Jour Poste Samedi Dimanche Lundi Mardi Mercredi

Matin

Urgences Keldasni Seguir Djaba Bouasla Djaba Echo1 Rahim Rahim Mahdi Fraga Echo2 Seguir Mahdi Abaidia Seguir Benseguir

Vasculaire Fraga Aksa Fraga Keldasni Zaimen Scanner Zaimen Ouaness Seguir Batouri Seguir Mammo Boutéraa Keldasni Rahim Rahim

Après-midi

Urgences Rahim Keldasni Keldasni Seguir Seguir Echo1 Nasri Ouaness Nasri Benseguir Echo2 Abaidia Ouaness Fraga Mahdi Nasri

Vasculaire Keldasni Aksa Keldasni Scanner Ouaness Zaimen Abaidia Abaidia Batouri Mammo Fraga Djaba Djaba Boutéraa

Figure 5 : Exemple de planning hebdomadaire généré par notre algorithme.

Pour réaliser un tel emploi du temps, nous disposons de données associées à chaque

intervenant et à chaque service. Ces données par leur structure engendrent des contraintes.

Page 60: Page de garde - univ-annaba.dzbiblio.univ-annaba.dz/wp-content/uploads/2014/09/... · Pr. Mohamed-Chaouki Batouche de l’université de Constantine qui m’a considérablement honoré

CHAPITRE III : PROPOSITION D’UN AG POUR RESOUDRE LE PROBLEME ETUDIE

45

Ces contraintes sont formalisées puis résolues par le moteur existant (l’algorithme

génétique). Nous obtenons alors un planning qui s’affiche via une interface graphique.

Figure 6 : Interface principale.

Notre démarche a été découpée en deux grandes parties :

1. Implémentation de l’algorithme génétique (le moteur).

2. Les interfaces utilisateurs : interface d’entrée et interface de sortie. L’interface

d’entrée permet à un utilisateur d’injecter des informations concernant le personnel

et les services.

Pour chaque médecin, il lui est associé un nom et une fonction et ces compétences (il

peut intervenir dans certains postes et pas dans d’autres). Une fois ces éléments précisés, la

fenêtre suivante (figure 7) permet d’indiquer les disponibilités et les pré-affectations des

médecins (par exemple, pour des vacations fixes). Ces pré-affectations peuvent être

Page 61: Page de garde - univ-annaba.dzbiblio.univ-annaba.dz/wp-content/uploads/2014/09/... · Pr. Mohamed-Chaouki Batouche de l’université de Constantine qui m’a considérablement honoré

CHAPITRE III : PROPOSITION D’UN AG POUR RESOUDRE LE PROBLEME ETUDIE

46

propagées sur un certain nombre de semaines : par exemple si un médecin intervient dans le

poste «Scanner» tous les mercredis après-midi, nous le générons automatiquement.

Figure 7 : Pré-affectations d’un membre du personnel.

Pour les postes, il est possible de définir des ouvertures et de les propager sur plusieurs

semaines consécutives (par exemple un poste sera considéré comme fermé s’il est

systématiquement «prêté» à un autre hôpital tous les Lundis après-midi). La fenêtre suivante

(figure 8) indique par exemple que pendant la semaine 20, le poste Vasculaire est ouvert

toute la semaine sauf le lundi après-midi.

Figure 8 : Ouverture d’un service.

Page 62: Page de garde - univ-annaba.dzbiblio.univ-annaba.dz/wp-content/uploads/2014/09/... · Pr. Mohamed-Chaouki Batouche de l’université de Constantine qui m’a considérablement honoré

CHAPITRE III : PROPOSITION D’UN AG POUR RESOUDRE LE PROBLEME ETUDIE

47

Quelques résultats

Nous avons exécuté notre programme sur un micro-ordinateur Pentium IV dont la

vitesse d’horloge est de l’ordre de 1700 MHz. Le tableau N° 2 montre le temps d’exécution

de notre algorithme pour quelques instanciations de notre problème.

Les 60 premières colonnes de notre tableau synthétique suivant représentent les gènes

(des emplois du temps hebdomadaires); chaque numéro correspond à un nom réel d'un

médecin. D'où, un gène représente l'affectation d’un médecin à un poste dans une période

donnée. La dernière colonne indique la valeur d’adaptation de chaque individu. La valeur #

pour un gène signifie que le poste est fermé pendant cette période.

Page 63: Page de garde - univ-annaba.dzbiblio.univ-annaba.dz/wp-content/uploads/2014/09/... · Pr. Mohamed-Chaouki Batouche de l’université de Constantine qui m’a considérablement honoré

CHAPITRE III : PROPOSITION D’UN AG POUR LA RESOLUTION D’UN PROBLEME DE PLANNING

48

Chromosome Fitness

4 9 12 # # 7 4 6 3 13 1 13 4 10 14 1 10 13 7 15 7 1 7 1 7 6 1 10 # 11 5 5 10 15 15 3 3 9 9 10 13 3 9 5 13 11 5 5 13 4 10 4 5 4 2 5 9 4 2 # 17

4 2 6 # # 4 9 7 2 7 13 13 1 14 4 10 15 13 13 1 7 10 10 6 6 14 14 14 # 5 15 3 5 5 9 3 3 15 5 11 6 5 11 8 13 11 13 9 8 10 9 4 15 4 5 2 5 5 9 # 37.4

6 6 3 # # 8 8 2 2 1 7 1 14 4 7 15 1 4 14 15 10 10 1 7 15 14 6 7 # 11 9 15 5 15 9 11 5 9 3 8 13 5 11 13 6 5 10 13 13 10 2 4 10 10 2 2 2 15 10 # 15.3

8 8 4 # # 3 4 3 12 7 10 10 7 7 10 7 7 14 13 14 6 13 15 14 6 10 10 10 # 5 11 11 3 11 11 5 9 9 11 9 9 5 8 10 8 8 6 13 3 10 4 9 9 15 9 15 5 15 4 # 45.9

3 8 6 # # 7 7 8 12 15 10 7 13 4 1 10 4 10 10 13 6 15 1 6 7 15 14 14 # 5 15 9 11 3 9 5 15 15 9 11 8 6 9 9 3 13 11 6 11 10 5 5 4 2 5 4 9 9 4 # 28.9

9 6 7 # # 7 3 6 7 14 4 15 15 10 14 4 7 1 14 15 15 10 10 7 13 15 14 15 # 11 3 11 11 3 15 3 9 9 9 8 5 3 8 11 9 10 13 11 3 9 10 9 9 5 4 9 15 4 5 # 42.5

6 8 7 # # 12 6 3 4 4 10 10 4 14 15 13 7 10 1 14 13 14 6 6 1 1 14 1 # 9 3 3 11 9 9 10 15 9 10 6 8 5 8 5 6 11 8 5 6 10 15 15 2 10 2 9 10 15 9 # 17

4 7 12 # # 12 9 9 3 15 13 14 15 7 1 14 1 7 7 13 6 1 7 1 14 13 6 10 # 10 5 3 9 10 5 5 10 11 5 5 11 5 8 9 6 6 8 6 11 4 2 4 4 4 10 2 4 15 9 # 17

12 4 6 # # 7 6 7 6 10 7 1 15 15 1 4 13 13 10 13 1 10 10 7 13 1 10 15 # 11 3 11 5 9 9 9 5 9 15 5 9 5 3 11 10 3 9 3 3 9 10 2 2 4 4 15 4 4 5 # 23.8

8 12 7 # # 7 4 7 4 10 7 1 13 4 13 13 10 4 1 7 14 10 14 7 14 14 1 1 # 15 3 5 5 11 15 10 9 11 11 11 10 3 6 5 6 3 8 13 5 5 15 9 9 2 2 4 15 5 10 # 27.2

12 8 9 # # 8 9 6 2 1 13 4 13 15 4 7 13 7 1 7 6 14 7 10 14 6 14 10 # 11 3 11 10 11 5 15 11 11 15 5 9 5 11 8 11 11 3 13 5 9 5 2 2 2 15 5 15 15 4 # 28.9

12 12 2 # # 3 7 2 7 13 1 14 10 14 14 13 13 10 14 10 14 10 7 13 13 7 15 7 # 15 11 11 15 9 9 15 5 15 15 5 8 5 5 10 5 9 9 5 8 9 5 15 4 2 10 4 4 4 2 # 49.3

8 2 9 # # 8 2 4 3 13 15 4 15 13 14 13 15 1 7 15 1 15 14 1 15 15 13 7 # 3 3 11 10 9 3 5 9 5 9 10 9 13 3 8 11 10 6 13 5 2 2 9 5 4 5 4 10 10 15 # 27.2

7 12 8 # # 4 9 9 12 14 4 7 13 13 10 15 14 13 1 13 6 15 1 1 15 13 13 14 # 9 10 11 15 5 5 5 11 5 9 11 13 13 10 11 6 10 8 6 8 2 15 10 2 4 4 9 5 15 5 # 30.6

8 12 8 # # 12 3 7 8 14 4 1 4 15 15 10 4 1 7 10 13 13 6 10 14 7 1 13 # 5 9 10 15 5 11 9 9 3 3 3 6 11 3 3 8 5 6 11 10 15 15 2 5 2 5 2 15 15 2 # 30.6

4 12 7 # # 12 7 3 12 14 1 14 14 10 7 1 1 4 13 13 15 13 15 1 1 15 14 15 # 10 9 9 5 11 5 9 3 9 5 9 11 3 3 8 11 3 9 11 6 4 5 10 2 9 4 2 15 5 4 # 18.7

4 8 7 # # 9 9 12 7 1 10 10 1 4 10 4 14 4 1 15 13 7 6 7 6 7 13 1 # 11 3 11 11 11 9 5 15 9 10 10 9 9 10 8 3 10 5 8 5 4 5 2 5 9 5 15 2 2 9 # 13.6

8 12 7 # # 9 4 2 9 13 13 14 1 4 4 13 13 13 7 10 6 7 13 13 15 14 6 1 # 9 5 10 11 9 9 11 15 11 15 6 3 11 3 5 8 5 5 8 6 15 9 4 10 15 10 4 10 15 4 # 37.4

4 9 4 # # 9 12 6 4 10 10 7 7 13 14 15 1 1 15 1 13 1 10 15 6 1 6 14 # 15 3 5 9 9 11 5 9 3 9 11 5 13 8 11 5 3 11 5 5 2 9 10 15 10 4 4 15 10 2 # 18.7

2 12 2 # # 3 12 6 12 10 7 7 1 14 14 13 10 15 10 1 6 10 10 15 6 1 7 14 # 3 10 5 5 9 11 15 3 9 9 5 11 11 11 3 5 9 9 8 13 9 15 15 15 2 9 10 4 2 4 # 35.7

Tableau N°1 : Exemple de population.

Page 64: Page de garde - univ-annaba.dzbiblio.univ-annaba.dz/wp-content/uploads/2014/09/... · Pr. Mohamed-Chaouki Batouche de l’université de Constantine qui m’a considérablement honoré

CHAPITRE III : PROPOSITION D’UN AG POUR LA RESOLUTION D’UN PROBLEME DE PLANNING

49

Nombre de médecins

Taille de la population

Nombre de générations

Valeur d’adaptation

(Fitness)

Temps de calcul (S)

100 500 20 80 2

120 700 50 75 3

140 800 80 60 5

160 900 100 40 7

180 1000 2000 28 24

200 1100 2700 20 26

220 1200 2900 20 28

240 1500 3000 12 31

Tableau 2 : Résultats obtenus par notre algorithme génétique sur quelques instanciations du problème.

Dans ce tableau, la colonne N°3 indique le nombre de générations (NbGen) au bout

duquel on a atteint la meilleure solution possible. Ce nombre est au plus égal au nombre

maximum de génération (NbMaxGen).

Convergence de l’algorithme

Afin de valider notre approche, nous avons expérimenté notre algorithme génétique sur

un cas réel possédant un vaste espace de recherche (au niveau de deux grands hôpitaux

publiques à la wilaya de Annaba : Ibn Rochd et Ibn Sina).

Le comportement de notre algorithme est visualisé en figure 9, où la courbe continue

indique la valeur d'adaptation du meilleur individu (le plus adapté) et la courbe en pointillé

représente la moyenne des fonctions d'adaptation de l'ensemble d'individus.

On peut constater de la figure 9 que l’amélioration de la population est très rapide au

début (recherche globale) et devient de plus en plus lente à mesure que le temps passe

(recherche locale). Le bruit dans la moyenne est essentiellement dû aux mutations. On voit

Page 65: Page de garde - univ-annaba.dzbiblio.univ-annaba.dz/wp-content/uploads/2014/09/... · Pr. Mohamed-Chaouki Batouche de l’université de Constantine qui m’a considérablement honoré

CHAPITRE III : PROPOSITION D’UN AG POUR LA RESOLUTION D’UN PROBLEME DE PLANNING

50

que la valeur moyenne de la fonction d’adaptation a tendance à se rapprocher de celle de

l’individu le plus adapté. Cela correspond à une uniformisation croissante de la population.

0

10

20

30

40

50

60

70

80

90

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30

moyennemeilleur individu

Figure 9 : Convergence de notre algorithme.

D’après De-Jong [DEJ 1975], quand la solution fournie par un algorithme génétique est

optimale, la population a tendance à s’uniformiser; c’est à dire que la majeure partie des

individus devient identique. C'est le cas dans notre algorithme, où nous remarquons une

tendance à la minimisation de la valeur d’adaptation (Fitness). De plus, les deux courbes se

rapprochent ce qui s’interprète par l’uniformisation de la population et constitue une preuve

de convergence.

Conclusion

Nous avons présenté une méthode d’optimisation où la résolution d’un problème de

planification de personnel hospitalier est réalisée par un algorithme génétique. Nous avons

constaté que l’algorithme défini initialement ne conduit pas à une convergence assurée et ne

donne pas les résultats attendus. Cependant, l’efficacité de l’algorithme à été

considérablement améliorée en utilisant des opérateurs plus appropriés au problème étudié.

Cette efficacité repose sur les éléments suivants :

Génération

Fonction d'adaptation

Page 66: Page de garde - univ-annaba.dzbiblio.univ-annaba.dz/wp-content/uploads/2014/09/... · Pr. Mohamed-Chaouki Batouche de l’université de Constantine qui m’a considérablement honoré

CHAPITRE III : PROPOSITION D’UN AG POUR LA RESOLUTION D’UN PROBLEME DE PLANNING

51

Une meilleure sélection qui combine les avantages de la technique élitiste (garder les

meilleurs individus dans la population intermédiaire) et celle de la sélection par

tournoi (qui garantit une certaine diversité dans la population) tout en évitant les

inconvénients de l’une et de l’autre.

Un croisement approprié un point. Ce point est choisi de manière à éviter de générer

des solutions qui ne satisfont pas certaines contraintes.

Une mutation adoptée, où le choix du point de mutation consiste à chercher le gène

ayant comptabilisé le maximum de violation de contraintes, et de le muter à une

autre valeur choisie parmi les valeurs restantes dans son domaine.

Les propositions d’amélioration, sur l’algorithme de base, que nous avons formulées

nous ont permis de garantir la convergence de l’algorithme amélioré vers des solutions de

bonnes qualités.

Nous pouvons donc conclue que l'expérience que nous venons de mener avec un

planning hospitalier est assez enrichissante, nous pensons même qu'elle est très bien

adaptable à beaucoup d'autres plannings et sans prétention aucune à certains problèmes Np-

Complets dont l'énoncé est essentiellement basé sur les contraintes.

Page 67: Page de garde - univ-annaba.dzbiblio.univ-annaba.dz/wp-content/uploads/2014/09/... · Pr. Mohamed-Chaouki Batouche de l’université de Constantine qui m’a considérablement honoré

CHAPITRE IV : GESTION DES CONDITIONS INTEMPESTIVES

52

IV

CHAPITRE

Gestion des conditions intempestives

Ce que l'on entend par conditions intempestives au sein d'un planning est la défaillance d'une ou de plusieurs ressources à un moment de la réalisation de ce planning.

La question légitime qui se pose alors, est faut-il rejeter totalement le planning réalisé? Un bon concepteur, ne doit en aucun cas permettre une telle fatalité.

Ce que l'on se propose dans ce chapitre, est d'essayer justement d'apporter des éléments de réponses à de tels questionnements.

Page 68: Page de garde - univ-annaba.dzbiblio.univ-annaba.dz/wp-content/uploads/2014/09/... · Pr. Mohamed-Chaouki Batouche de l’université de Constantine qui m’a considérablement honoré

CHAPITRE IV : GESTION DES CONDITIONS INTEMPESTIVES

53

1. Introduction

Comme nous l'avons précisé dans l'introduction générale, élaborer un planning dans

n'importe quel milieu est un gros problème ; prendre en considération les conditions

intempestives qui peuvent subvenir en est un autre !

Très peu de plannings réalisés dans la littérature prennent en considération ce phénomène

vu sa difficulté en terme de formalisation et la complexité de la méthode de résolution si

celle-ci existe.

Ce que l'on entend par conditions intempestives au sein d'un planning est la défaillance

d'une ou de plusieurs ressources à un moment de la réalisation de ce planning.

La question légitime qui se pose alors, est faut-il rejeter totalement le planning réalisé ? Un

bon concepteur, ne doit en aucun cas permettre une telle fatalité.

Ce que l'on se propose, justement, de réaliser dans cette partie, est d'essayer d'apporter des

éléments de réponses à de tels questionnements.

2. Les défaillances au sein d'un planning

Celles-ci peuvent être de deux types : matériels et humaines. Tandis que la tombé en

panne d'un matériel peut être plus au moins maîtrisée, l'absence subite d'un médecin est

généralement plus difficile à gérer.

Nous allons dégager tous les cas de figures qui peuvent subvenir et proposer des

"réparations locales" que nous propagerons sur le reste des périodes du planning établi.

2.1 Défaillances humaines

Il y a deux genres d'absences :

Absences involontaires pour des motifs indépendants de la volonté du médecin (maladie

ou accident par exemple).

Absences volontaires : Le médecin se déclare indisponible puisqu'il est appelé à d'autres

occupations.

Page 69: Page de garde - univ-annaba.dzbiblio.univ-annaba.dz/wp-content/uploads/2014/09/... · Pr. Mohamed-Chaouki Batouche de l’université de Constantine qui m’a considérablement honoré

CHAPITRE IV : GESTION DES CONDITIONS INTEMPESTIVES

54

Tandis qu'habituellement la majorité des absences sont involontaires, différentes études

montrent que l’absentéisme volontaire pourrait représenter entre 20 % et 40 % de toutes les

absences. Les conséquences de l’absentéisme sont considérables. L’absentéisme entraîne :

• Une diminution de la productivité des employés;

• Une baisse du moral des employés;

• Une hausse des frais généraux.

De plus, des études montrent que l’efficacité du personnel de remplacement n’est que

d’environ 75%. Nous avons voulu examiner la gestion de l’absentéisme, parce que nous

estimons qu’il s’agit d’un aspect important de l’optimisation des ressources dans le domaine

de la prestation de services.

2.1.1. Absences volontaires

Pour ce type d'absence, le médecin indique à l'avance la plage des périodes pendant

laquelle il sera absent, afin que le planificateur tienne compte de ces informations en

déclarant ce médecin indisponible pendant ces périodes, et s'il a été pré-affecté à certains

postes ces pré-affectations seront supprimées.

2.1.2. Absences involontaires

Si après la génération d’un planning Pl pour une semaine donnée S, un médecin X est

involontairement absent, on distingue alors deux cas : le nombre de périodes NbPer où le

médecin X sera absent est connu à l'avance, c'est le cas déterministe, le cas où NbPer n'est

pas connu à l'avance, c'est le cas non déterministe. Rappelons qu'une période est une demi

journée de travail : le matin ou l'après-midi.

2.1.2.a. Cas déterministe

Soit E l’ensemble des périodes où le médecin X est affecté pendant le reste de la semaine en

cours S. Pour chaque période Pi (i=1..Card(E)) de l’ensemble E, on procède comme suit :

Page 70: Page de garde - univ-annaba.dzbiblio.univ-annaba.dz/wp-content/uploads/2014/09/... · Pr. Mohamed-Chaouki Batouche de l’université de Constantine qui m’a considérablement honoré

CHAPITRE IV : GESTION DES CONDITIONS INTEMPESTIVES

55

1. Déterminer la période Pi.

2. Déterminer le poste Y où le médecin X a été affecté pendant cette période Pi.

3. Soit A=Aptes(Y) l’ensemble des médecins aptes à occuper le poste Y, (à l’exception

du médecin X).

4. Trier l’ensemble A selon l’ordre décroissant des compétences des médecins pour

occuper le poste Y.

5. Pour chaque médecin Mj (j=1..Card(A)) de l’ensemble A, on procéde comme suit :

a. Si le médecin Mj est disponible à la période Pi essayer de l’affecter au poste Y.

b. Calculer le nombre de violations des contraintes NbViolj produites par

l’affectation du médecin Mj au poste Y.

Les contraintes auxquelles nous faisons référence ici sont les contraintes molles

(contraintes N°4,5,6, voir chapitre X page Y); car les contraintes dures sont déjà vérifiées

(le médecin Mj est choisi parmi les médecins aptes et disponibles).

Soit w4, w5, w6 les poids respectifs associés aux contraintes 4, 5, 6 alors :

NbViolj(Mj ,Pi ,Y) = w4 .TroisFois(Mj ,Y) + w5 .MatinAprèsMidi(Mj ,Y) +

w6 . Préférences(Mj ,Y) où :

0 si Mj est affecté au maximum trois fois au poste Y pendant la

semaine S.

1 sinon

0 si Mj n’est pas affecté au poste Y à la période q.

1 sinon

Matin si Pi=Après-midi

Après-midi si Pi=Matin

TroisFois(Mj ,Y)=

MatinAprèsMidi(Mj ,Y)=

Où q=

Page 71: Page de garde - univ-annaba.dzbiblio.univ-annaba.dz/wp-content/uploads/2014/09/... · Pr. Mohamed-Chaouki Batouche de l’université de Constantine qui m’a considérablement honoré

CHAPITRE IV : GESTION DES CONDITIONS INTEMPESTIVES

56

0 si Mj est le 1er médecin compétant pour le poste Y

1 si Mj est le 2eme médecin compétant pour le poste Y

k si Mj est le (k+1)eme médecin compétant pour le poste Y

6. Si aucun médecin de l’ensemble A n’est disponible à la période Pi alors déclarer le

poste Y comme fermé à cette période.

Sinon choisir le médecin qui a produit le plus petit nombre de violations NbViol et

l’affecter au poste Y.

7. Si le nombre de périodes NbPer où le médecin X sera absent se prolonge aux

semaines suivantes, et pour que le programme de génération du planning tienne

compte de ce fait, il faut maître à jour les informations concernant le médecin X en le

déclarant comme non disponible pendant ces périodes, et si le médecin X a été pré-

affecté à des postes, ces pré-affectations seront supprimées.

Toutes les défaillances volontaires et involontaires d'une ressource humaine et les

dispositions mises en œuvre pour faire face sont résumées dans l'algorithme de la figure 10

qui suit.

Préférences (Mj ,Y)=

Page 72: Page de garde - univ-annaba.dzbiblio.univ-annaba.dz/wp-content/uploads/2014/09/... · Pr. Mohamed-Chaouki Batouche de l’université de Constantine qui m’a considérablement honoré

CHAPITRE IV : GESTION DES CONDITIONS INTEMPESTIVES

57

Un planning Pl est généré pour une semaine S

Un médecin X est absent

absent pendant un nombre NbPer déterminé de

périodes

X sera

Estimer le nombre de périodes où X va être absent soit NbPerEstim

NbPer NbPerEstim

NbPer dépasse la semaine S

EEnsemble de périodes où X a été affecté pendant le reste de S

N Card(E) ; i1 ;

i ≤ N FIN

• Pila période i de l’ensemble E • Yle poste occupé par X pendant Pi • AAptes(Y) • Trier A selon l’ordre décroissant des

compétences.

• Déclarer X indisponible pendant les périodes de semaines suivantes.

• Supprimer ses pré-affectationsdans ces semaines

L Card(A) ; j1 ;

j ≤ L

est disponible à Pi

Mj

méd. de A n’est disponible à Pi

aucun

Déclarer le poste Y fermé à

la période Pi

• Affecter Mj au poste Y. • Calculer le nombre de

violations : NbViol(Mj , Pi , Y)

jj+1;{médecin suivant}

Choisir le médecin qui à provoquer le moins de

violations et l’affecter au poste Y.

ii+1;{période suivante}

oui non

oui

non

non

oui

non

oui

oui

non

oui

non

Figure 10 : Défaillance d’une ressource humaine

Page 73: Page de garde - univ-annaba.dzbiblio.univ-annaba.dz/wp-content/uploads/2014/09/... · Pr. Mohamed-Chaouki Batouche de l’université de Constantine qui m’a considérablement honoré

CHAPITRE IV : GESTION DES CONDITIONS INTEMPESTIVES

58

2.1.2.b. Cas non déterministe

Dans le cas où on ne connaît pas la durée pendant laquelle le médecin X sera absent, en

fonction de la cause d’absence de celui-ci, on essayera de générer un nombre approché des

périodes durant lesquelles il sera absent. Par exemple, si la cause d'absence, d'après

l'expérience acquise des cas pareils, nécessite au minimum NbMIN périodes d'indisponibilité

et au maximum NbMAX périodes, alors on génère un nombre aléatoire NbPerApp compris

entre NbMIN et NbMAX. On applique, par la suite, la même procédure vue dans le cas

déterministe.

• Si le médecin X reprend son travail au bout d'un temps inférieur à NbPerApp, on a

deux possibilités :

Cas 1 : le planning de la semaine actuelle a été généré avant l’absence du médecin X.

Ceci revient à dire que X a été affecté à des postes pendant cette semaine, puis il a été

involontairement absent, et il a repris son travail avant la fin de la semaine; dans ce

cas, on va restaurer le planning initial.

Cas 2 : le planning de la semaine actuelle est généré après l’absence du médecin X,

c'est-à-dire X a été considéré comme indisponible. Dans ce cas, pendant les périodes

restantes de la semaine en cours, on essaye d’affecter le médecin X aux postes qui entre

dans ses compétences afin d’améliorer la solution.

Dans les deux cas, restaurer les disponibilités et les pré-affectations du médecin X pour

les périodes restantes de NbPerApp.

• Si le nombre de périodes pendant lesquelles X sera absent dépasse le nombre

approché NbPerApp, on génère de nouveau le nombre de périodes approchées, et la

procédure est répétée.

Tous ces réarrangements sont résumés dans la figure 11.

Page 74: Page de garde - univ-annaba.dzbiblio.univ-annaba.dz/wp-content/uploads/2014/09/... · Pr. Mohamed-Chaouki Batouche de l’université de Constantine qui m’a considérablement honoré

CHAPITRE IV : GESTION DES CONDITIONS INTEMPESTIVES

59

Un médecin X est absent pendant un nombre

indéterminé de périodes

Estimer ce nombre de périodes NbPerApp

a repris son travail avant la fin des

périodes NbPerEstim

X

Cas 1

FIN

Restaurer l’ancien planning Pl

oui non

oui non

Figure 11 : Défaillance d’une ressource humaine, (cas indéterministe)

Pendant le reste de la semaine S affecter le médecin X aux postes Aptes(X) afin d’améliorer le planning

Un planning Pl est généré pour une semaine S

Cas 2

Page 75: Page de garde - univ-annaba.dzbiblio.univ-annaba.dz/wp-content/uploads/2014/09/... · Pr. Mohamed-Chaouki Batouche de l’université de Constantine qui m’a considérablement honoré

CHAPITRE IV : GESTION DES CONDITIONS INTEMPESTIVES

60

2.2. Défaillances matérielles

Après la génération d’un planning Pl pour une semaine donnée S, et pendant la semaine,

une ressource matérielle R peut tomber en panne; soit Y le poste où le matériel R est tombé

en panne. S’il y a un autre matériel pour remplacer R, le poste Y restera ouvert; sinon, le

poste Y sera déclaré fermé jusqu’à ce que R soit réparé. Dans le dernier cas, on a deux

possibilités : soit NbPer le temps (en périodes) de réparation de R, NbPer peut être connu

(cas déterministe) ou inconnu (cas non déterministe).

2.2.a. Cas déterministe

Dans le cas où le poste est fermé, soit E l’ensemble des périodes où le matériel R est

considéré en panne. Pendant le reste de la semaine en cours S, pour chaque période Pi

(i=1..Card(E)) de l’ensemble E, on procède comme suit :

1. Déterminer le médecin M qui assure le poste Y (à la période Pi).

2. Soit C=Compétences(M) l’ensemble des postes qui entre dans les compétences du

médecin M (à l’exception du poste Y).

3. Pour chaque poste Ci (i=1..Card(C)) de l’ensemble C, on procède comme suit :

a. Affecter le médecin M au poste Ci.

b. Calculer la valeur de la solution.

4. S’il y a une affectation qui améliore la solution (en terme de satisfaction de

contraintes), alors changer le planning actuel par la nouvelle solution, et en procédant

de la même façon, essayer de réaffecté le médecin remplacé pour améliorer la

solution.

Sinon le planning Pl est conservé.

La figure 12 prend en considération toutes les "réparations" possibles d'un tel cas.

Page 76: Page de garde - univ-annaba.dzbiblio.univ-annaba.dz/wp-content/uploads/2014/09/... · Pr. Mohamed-Chaouki Batouche de l’université de Constantine qui m’a considérablement honoré

CHAPITRE IV : GESTION DES CONDITIONS INTEMPESTIVES

61

Un planning Pl est généré pour une semaine S

Une ressource matérielle R (pour un poste Y) est tombé en panne.

réparée dans un nombre NbPer déterminé de

périodes

R sera

Estimer le nombre de périodes nécessaire pour la réparation de R

soit NbPerEstim

NbPer NbPerEstim

EEnsemble de périodes restantes de la semaine S

N Card(E) ; i1 ;

i ≤ N FIN

• Pila période i de l’ensemble E • Mle médecin qui assure le

poste Y à la période Pi • CompCompétences(M)

Déclarer le poste Y fermé pendant NbPer périodes

C Card(Comp); j1 ;

j ≤ C

une amélioration

Il y a

Appliquer cette solution

(planning amélioré)

• CJ poste j de l’ensemble Comp

• Affecter M au poste CJ. • Calculer la valeur de la

nouvelle solution

jj+1;{poste suivant}

Restaurer l’ancien planning Pl

ii+1;{période suivante}

oui non

non

oui

non

oui oui

non

Figure 12 : Défaillance d’une ressource matérielle

Il y a une ressource de secours R’

Remplacer R par R’ (le planning déjà établi est conservé tel quel)

FIN

oui

non

Page 77: Page de garde - univ-annaba.dzbiblio.univ-annaba.dz/wp-content/uploads/2014/09/... · Pr. Mohamed-Chaouki Batouche de l’université de Constantine qui m’a considérablement honoré

CHAPITRE IV : GESTION DES CONDITIONS INTEMPESTIVES

62

2.2.b. Cas non déterministe

Dans le cas où on ne connaît pas le temps nécessaire de réparation du matériel R, en

fonction de la cause de la panne, on génère un nombre approché des périodes durant

lesquelles ce matériel restera inactif. Par exemple, si la cause de la panne nécessite – d'après

l'expérience acquise des cas pareils – au minimum NbMIN périodes et au maximum NbMAX

périodes de réparation, alors on générera un nombre aléatoire NbPerApp compris entre

NbMIN et NbMAX. Par la suite, on applique la même procédure vue dans le cas déterministe.

• Si le matériel R est réparé au bout d'un temps inférieur à NbPerApp, on a deux

possibilités :

Cas 1 : le planning de la semaine actuelle est généré avant la panne du matériel R,

c'est-à-dire Y (poste associé au matériel R) a été déclaré ouvert pendant cette semaine,

puis il a été involontairement fermé à cause de la panne de R. Ce matériel a été réparé

avant la fin de la semaine; dans ce cas, on restaure le planning initial.

Cas 2 : le planning de la semaine actuelle est généré après la panne du matériel R,

c'est-à-dire Y (poste associé au matériel R) a été considéré comme fermé. Dans ce cas,

pendant les périodes restantes de la semaine en cours, essayer d’ouvrir le poste Y, et

chercher, parmi les médecins aptes et disponibles, le meilleur qui puisse l’occuper, s'il

n'y en a aucun, le poste restera fermé.

• Si le nombre de périodes pendant lesquelles R sera en panne dépasse le nombre

approché NbPerApp, on génère de nouveau un nombre approché de périodes, et la

procédure est répétée (voir figure 13).

Page 78: Page de garde - univ-annaba.dzbiblio.univ-annaba.dz/wp-content/uploads/2014/09/... · Pr. Mohamed-Chaouki Batouche de l’université de Constantine qui m’a considérablement honoré

CHAPITRE IV : GESTION DES CONDITIONS INTEMPESTIVES

63

Une ressource matérielle R (pour un poste Y) est tombé en panne pendant un

nombre indéterminé de périodes

Estimer ce nombre de périodes NbPerApp

est réparée avant la fin des périodes

NbPerApp

R

Cas 1

FIN

Restaurer l’ancien planning Pl

oui non

oui non

Figure 13 : Défaillance d’une ressource matérielle, (cas non déterministe)

Un planning Pl est généré pour une semaine S

Cas 2

Ouvrir le poste Y pendant le reste de NbPerApp

EEnsemble des périodes restantes de la semaine S

N Card(E) ; i1 ;

i ≤ N

• Pila période i de l’ensemble E • AAptes(Y) • Essayer d’affecter un médecin

de A (meilleure solution) au poste Y à la période Pi

une solution

Il y a

Appliquer cette solution

ii+1;{période suivante} non

oui

non oui

Ouvrir le poste Y à la période Pi

Le poste Y reste fermé à la période Pi

Page 79: Page de garde - univ-annaba.dzbiblio.univ-annaba.dz/wp-content/uploads/2014/09/... · Pr. Mohamed-Chaouki Batouche de l’université de Constantine qui m’a considérablement honoré

CHAPITRE IV : GESTION DES CONDITIONS INTEMPESTIVES

64

80

82

84

86

88

90

92

94

96

98

100

Sam Dim Lun Mar MerJours

Vale

ur d

e la

sol

utio

n

Solution prévue

Solution réelle

3. Implémentation et critiques des résultats obtenus

Notre but consiste à créer un emploi du temps, pour une semaine, des personnes

travaillant sur les différents postes d’un service d’un hôpital que nous propageons sur le

reste des semaines de l’année pour obtenir un planning annuel. Après la mise en œuvre de

ce planning [ZED 2004], notre intention est portée sur la gestion des conditions

intempestives dûes à la défaillance des ressources humaines et/ou matérielles. Pour cela,

nous avons expérimenté notre logiciel en considérant plusieurs situations : absences

volontaires ou involontaires d'un ou de plusieurs médecins, ainsi que la tombée en panne

des équipements nécessaires pour le fonctionnement des postes.

La figure 14 illustre une comparaison entre la valeur de la solution (planning) prévue;

c'est-à-dire la solution générée par notre A.G, tout au début de la semaine en supposant que

toute chose va bien, ainsi que la valeur de la solution réelle; c'est-à-dire la solution calculée

après la défaillance d'une ou de plusieurs ressources humaines ou matériels. La solution

réelle ou concrète consiste à modifier ou à mettre à jour la solution prévue (planning initial)

pour tenir compte de l'état actuel des ressources, tel que le remplacement d'un médecin

absent, la réaffectation d'un médecin dont le poste a été fermé suite à une défaillance du

matériel,…

La figure 14.a représente l'état du planning durant une semaine. Pendant les deux

premiers jours (samedi, dimanche), il n'y a pas de défaillance de ressources; ce qui explique

le fait que les courbes représentant les deux solutions : prévue (discontinue) et réelle

(continue) soient superposées. Au troisième jour, on enregistre une défaillance; ce qui a

mené à une diminution de la valeur de la solution et donc un abaissement de la qualité du

service.

La figure 14.b représente l'état du planning pendent plusieurs semaines. On remarque

que la valeur de la solution réelle est toujours inférieure à celle de la solution prévue ce qui

révèle une des conséquences de l'absentéisme : la diminution de la qualité de service. On

constate aussi que la différence entre la solution prévue et réelle diffère d'une semaine à une

autre, selon le type et le nombre des ressources défaillantes. A chaque fois que le nombre de

ressources défaillantes augmente, la différence entre la solution prévue et réelle augmente

Page 80: Page de garde - univ-annaba.dzbiblio.univ-annaba.dz/wp-content/uploads/2014/09/... · Pr. Mohamed-Chaouki Batouche de l’université de Constantine qui m’a considérablement honoré

CHAPITRE IV : GESTION DES CONDITIONS INTEMPESTIVES

65

80

82

84

86

88

90

92

94

96

98

100

1 2 3 4 5 6 7 8 9 10 11 12 13 14Semaines

Vale

ur d

e la

sol

utio

n

Solution prévueSolution réelle

aussi (cas de la semaine N°11), et à chaque fois que le nombre de ressources défaillantes

diminue la différence diminue (cas des semaines 2, 3 et 7). Cependant, pour les semaines 4

et 8, il n'existe pas de différence ce qui revient à dire qu'il n'y a pas de défaillance de

ressources.

80

82

84

86

88

90

92

94

96

98

100

Sam Dim Lun Mar MerJours

Vale

ur d

e la

sol

utio

n

Solution prévue

Solution réelle

Figure 14.a : Une semaine

Figure 14.b : Plusieurs semaines

Figure 14 : Comparaison entre les solutions prévues et les solutions réelles.

Page 81: Page de garde - univ-annaba.dzbiblio.univ-annaba.dz/wp-content/uploads/2014/09/... · Pr. Mohamed-Chaouki Batouche de l’université de Constantine qui m’a considérablement honoré

CHAPITRE IV : GESTION DES CONDITIONS INTEMPESTIVES

66

4. Conclusion

Dans ce chapitre, nous avons projeté la lumière sur le phénomène de défaillance de

ressources aussi bien humaines que matérielles. Nous avons présenté une méthode de

gestion des conditions intempestives au sein de notre planning. La méthode proposée peut

être appliquée à une large gamme de plannings ayant une structure analogue à celle du

notre. Nous avons essayé de traiter les différents cas de figure, défaillance des ressources

humaines et matérielles; dans le cas où on connaît d'avance la durée d'absence du personnel

ou la panne du matériel et dans le cas où celle-ci ne peut être connue à l'avance.

Vu la complexité et la difficulté du problème traité et le manque de travaux ayant abordé

ce sujet, tout apport en terme d'approche ou solution ne peut qu'être louable. Nous jugeons

les résultats obtenus comme utiles et nécessaires en terme de prise de décision.

Enfin, il faut remarquer que plusieurs améliorations peuvent être apportées tant au

niveau de la détermination de la durée de défaillance qu'au niveau de la mise à jour du

planning après la défaillance. Parmi ces améliorations on peut envisager :

• L'amélioration du module de génération de la durée d'absence du personnel ou la

panne du matériel dans le cas non déterministe, pour qu'elle ne soit pas totalement

aléatoire. Une solution possible est d'associer une base de cas au système, cette base

mémorise tous les cas de défaillances précédentes. A chaque nouvel cas on interroge

la base, pour chercher le cas le plus proche du cas actuel et se servir des informations

de ce cas.

• Essayer de diminuer la différence entre la solution réelle et prévue, pour maintenir un

bon niveau de qualité de service.

Page 82: Page de garde - univ-annaba.dzbiblio.univ-annaba.dz/wp-content/uploads/2014/09/... · Pr. Mohamed-Chaouki Batouche de l’université de Constantine qui m’a considérablement honoré

CONCLUSION GENERALE ET PERSPECTIVES

67

Conclusion générale et perspectives

Dans ce mémoire, nous nous sommes donnés comme objectif principal la résolution

d’un problème de planification d’un ensemble de médecins - dans un service de radiologie -

soumis à une variété de contraintes.

Vu que le problème, par sa nature fortement combinatoire, ne peut admettre une

procédure déterministe de résolution, nous avons orienté notre recherche vers les

algorithmes génétiques qui, par leur mode aléatoire de balayage du domaine des solutions,

permettent d’aboutir à une solution, même si elle n’est pas toujours optimale, elle est

admissible selon un critère donné.

Nous avons orienté notre recherche vers l’étude des paramètres de l’algorithme

génétique, d’où nous avons intégré une méthode de propagation de contraintes avant l'étape

de génération de la population initiale, afin de réaliser un filtrage pour réduire l’espace de

recherche. Nous avons aussi défini un mode adéquat de sélection des parents afin de fournir

de bons fils candidats à une nouvelle population. Le mode de croisement a été également

étudié afin d’éviter la violation de certaines contraintes.

Nous jugeons que l’algorithme génétique obtenu est un outil d’une grande efficacité

pour la résolution de tout problème qui peut se formuler de la même manière que le notre.

Rappelons que le problème étudié est NP-difficile, donc, toute heuristique bien fondée ne

peut que contribuer à sa résolution.

Par ailleurs ce travail nous a permis de constater la capacité des algorithmes génétiques

à résoudre des problèmes NP-Complets avec une facilité remarquable. Leur efficacité,

longtemps remise en cause par bon nombre de chercheurs, n’est plus à prouver. Les

Page 83: Page de garde - univ-annaba.dzbiblio.univ-annaba.dz/wp-content/uploads/2014/09/... · Pr. Mohamed-Chaouki Batouche de l’université de Constantine qui m’a considérablement honoré

CONCLUSION GENERALE ET PERSPECTIVES

68

performances de l’algorithme génétique ne sont altérées que par le fait que le même genre

de calcul se répète avec chaque individu de chaque population La parallélisation de

l'algorithme peut être une solution à ce problème.

Les algorithmes génétiques ne garantissent pas de trouver l’optimum global, bien que,

théoriquement, il a été démontré qu’ils convergent vers cet optimum. En pratique, ils restent

souvent inefficaces lorsqu’il s’agit de trouver la valeur exacte de cet optimum. Or c’est

précisément ce que les algorithmes de recherche locale tel que tabou, réalisent le mieux. Il

serait donc naturel de penser à un moyen d’hybridation en associant un algorithme local à

l’algorithme génétique de façon à trouver la valeur exacte de l’optimum. On peut aisément

le faire en appliquent à la fin de l'exécution de l’algorithme génétique un algorithme local

afin que le meilleur individu soit trouvé, et s’assurer que la solution fournie sera optimale.

Dans la dernière partie de cette thèse, nous avons projeté la lumière sur le phénomène de

défaillance des ressources aussi bien humaines que matérielles. Nous avons présenté une

méthode de gestion des conditions intempestives au sein de notre planning. La méthode

proposée peut être appliqué à une large gamme de problèmes ayant une structure analogue à

celle du notre.

Vu la complexité et la difficulté du problème traité et le manque de travaux ayant abordé

ce sujet, tout apport en terme d'approche ou solution ne peut qu'être louable. Nous jugeons

les résultats obtenus comme encourageants.

Page 84: Page de garde - univ-annaba.dzbiblio.univ-annaba.dz/wp-content/uploads/2014/09/... · Pr. Mohamed-Chaouki Batouche de l’université de Constantine qui m’a considérablement honoré

ANNEXE A LES ALGORITHMES GENETIQUES

69

ANNEXE A :

ALGORITHMES GENETIQUES

1. Principes généraux

Développés dans les années 70 avec le travail de Holland [Hol 1975] puis approfondis

par Goldberg [Gol 1989], les algorithmes génétiques sont certainement la branche des

algorithmes évolutionnaires la plus connue et la plus utilisée. La particularité de ces

algorithmes est le fait qu’ils font évoluer des populations d’individus codés par une chaîne.

Ils utilisent les opérateurs de mutation et de croisement de différents types.

2. Structure d’un Algorithme Génétique

Pour appliquer adéquatement un algorithme génétique, il est impératif d’identifier

clairement les différentes étapes préalables à la programmation.

1. Un principe de codage de l’élément de population (individu). Cette étape associe à

chaque point de l’espace considéré par le problème, une structure de donnée. Elle se

place après la phase de modélisation mathématique du problème traité. Les codages

binaires ont été les premiers à être utilisés. Actuellement, on se sert plus souvent de

codages directs (réels et entiers,…).

2. Un mécanisme capable de générer une population initiale qui servira de base pour la

génération suivante. Ce choix conditionne la rapidité de la convergence vers l’optimum

cherché. Dans le cas où l’on ne connaît rien du problème à résoudre, il est essentiel que

la population initiale soit répartie sur tout l’espace de recherche. En pratique, on a

souvent recours à la génération aléatoire de la population initiale.

Page 85: Page de garde - univ-annaba.dzbiblio.univ-annaba.dz/wp-content/uploads/2014/09/... · Pr. Mohamed-Chaouki Batouche de l’université de Constantine qui m’a considérablement honoré

ANNEXE A LES ALGORITHMES GENETIQUES

70

3. Une fonction d’évaluation : afin de mesurer les performances de chaque individu, on

introduit une fonction d’évaluation, celle-ci correspond à l’utilité de la solution par

rapport au problème. Elle constitue alors le critère à base duquel l’individu sera ou non

sélectionné pour être reproduit dans la génération suivante. La qualité de cette fonction

conditionne, pour une grande part, l’efficacité de l'algorithme génétique. Il est, par

conséquent, important de tenir compte de sa complexité. En effet, dans le cas où la

fonction d’adaptation apparaît excessivement complexe, consommant une importante

puissance de calcul, il est souhaitable de lui rechercher une approximation plus simple.

4. Un mécanisme de sélection des individus candidats à l’évolution.

5. Des opérateurs permettant de diversifier la population au cours des générations et

d’explorer l’espace de recherche. L’opérateur de croisement recompose les gênes

d’individus existants, l’opérateur de mutation diversifie les individus dans la

population.

6. Des paramètres de dimensionnement : taille de la population, critère d’arrêt,

probabilités d’application des opérateurs génétiques. Le problème de quantification

considéré par ce dernier point ne dispose pas de paramétrage universel. Cependant,

certaines valeurs largement utilisées pour résoudre concrètement des problèmes

méritent d’être retenus [SCH 95a] :

• Taille de la population : en fonction de la taille du problème,

• Taux de croisement : entre 70% et 90%,

• Taux de mutation : entre 0.5% et 1%.

Voyons, de manière plus détaillée, l'ensemble de ces points.

2.1. Le codage

La principale caractéristique des algorithmes génétiques est de travailler sur des codages

et non sur des solutions réelles. Ces codes sont appelés chromosomes. Il s’agit donc de

définir et de coder convenablement le problème. A chaque variable d’optimisation, il faut

Page 86: Page de garde - univ-annaba.dzbiblio.univ-annaba.dz/wp-content/uploads/2014/09/... · Pr. Mohamed-Chaouki Batouche de l’université de Constantine qui m’a considérablement honoré

ANNEXE A LES ALGORITHMES GENETIQUES

71

faire correspondre un gêne. Le codage dépend étroitement du problème à résoudre. En effet,

sa définition permet de cerner l’espace des solutions possibles. Ce codage doit, de plus, être

aussi compact que possible pour permettre une évolution rapide.

Principalement, le codage binaire est le plus commun, car les premiers travaux,

appliquant les algorithmes génétiques, ont utilisé ce type de codage. D’autres types de

codage existent, le codage entier, et le codage réel…etc.

2.2. Genèse de la population

Contrairement aux méthodes de voisinages telles que le recuit simulé et tabou, qui

demandent une solution initiale, les algorithmes génétiques nécessitent un ensemble de

solutions admissibles -ce qui n’est pas toujours possible à établir- l’ensemble de ces

solutions constituera la population initiale. La construction de cette solution initiale se fera

généralement aléatoirement ou en dupliquant la ou les solutions admissibles dont on dispose

afin de satisfaire la taille de la population [GOL 89]. Un autre problème à résoudre est la

taille N de la population: si le nombre d'individus est trop faible, les solutions possibles ne

seront évaluées que partiellement; si le nombre d’individus est trop grand, on prendra en

compte des individus de faible qualité lors des croisements et on allongera le temps de

traitement sans améliorer le résultat. Généralement, la taille de la population est choisie en

faisant un compromis entre le temps de calcul et la qualité de la solution.

2.3. Sélection

La sélection proposée par [Gol 1989] consiste à sélectionner les individus

proportionnellement à leur performance. Un individu ayant une forte valeur d’adaptation a

alors plus de chances d’être sélectionné qu’un individu mal adapté à l’environnement (pour

favoriser la reproduction des « bons » individus).

La figure 4 représente sur un disque l’ensemble des individus et leur répartition selon

leur performance. Si l’on considère la somme des performances de la population (le disque

entier), la performance de l’individu 1 représente 9% de la somme, l’individu 2, 40%, etc.

Ce qui équivaut à dire que l’individu 1 a 9% de chance d’être sélectionné, l’individu 2, 40%,

etc.

Page 87: Page de garde - univ-annaba.dzbiblio.univ-annaba.dz/wp-content/uploads/2014/09/... · Pr. Mohamed-Chaouki Batouche de l’université de Constantine qui m’a considérablement honoré

ANNEXE A LES ALGORITHMES GENETIQUES

72

L’opérateur de sélection joue un rôle capital dans le bon déroulement de l’algorithme

génétique. En effet, il détermine les chromosomes d’une population mère ayant le droit de

participer à l’élaboration de la population fille. La sélection ne crée aucune nouveauté, elle

se contente de choisir quelles seront ou ne seront pas en mesure de contribuer à la création

de la population fille, suivant une stratégie particulière.

La sélection est cependant relativement délicate à manipuler. Effectivement, un excès

de sélection entraîne une perte de la diversité au sein de la population, bloquant ainsi la

résolution de certains problèmes, en convergeant par exemple vers des optima locaux. Une

sélection trop faible pose la difficulté inverse : la non-convergence de l’algorithme. Il est

donc nécessaire de porter une attention particulière au type de sélection utilisée. Une étude

plus détaillée de ces modes de sélection est présentée dans [KAL 1990]. Nous présentons

dans ce qui suit un aperçu des principales techniques de sélection citées dans la littérature.

On distingue deux catégories de procédures de sélection : les procédures déterministes

et les procédures stochastiques.

2.3.1. Sélection stochastique

Il s’agit de favoriser les meilleurs individus, mais de manière stochastique ; ce qui laisse

une chance aux individus mois performants d’être eux aussi sélectionnés. Par contre, il peut

arriver que le meilleur individu ne soit pas sélectionné. Parmi ce type de stratégies de

sélection on distingue :

a) La sélection proportionnelle

Ce mode de sélection se base sur le principe de « chacun a une chance d’être

sélectionné, en fonction de son efficacité ».

La méthode roulette wheel selection (RWS), ou loterie, est la plus classique des modes

stochastiques de sélection. La première étape consiste à attribuer à chaque individu une

probabilité de sélection proportionnelle à son fitness et à la somme des fitness de tous les

individus de la population.

Page 88: Page de garde - univ-annaba.dzbiblio.univ-annaba.dz/wp-content/uploads/2014/09/... · Pr. Mohamed-Chaouki Batouche de l’université de Constantine qui m’a considérablement honoré

ANNEXE A LES ALGORITHMES GENETIQUES

73

Si N est le nombre d’individus de la population et si fi est le fitness de l’individu i, alors

la fonction Pi, décrite dans l’équation suivante, représente la probabilité de sélectionner cet

individu pour le retrouver dans la population suivante :

Pi= ∑=

N

iii f/f

1

19%

240%

323%

45%

516%

67%

Figure A.1 : Modèle de la roulette.

Représentation d’une population de 6 individus.

La seconde étape détermine les N individus de la population fille tirés au hasard en

fonction de ces probabilités. Le tirage s’effectue généralement avec remise offrant la

possibilité à un excellent individu de se retrouver plusieurs fois dans la population finale.

Cette sélection permet donc à chacun des individus de la population d’avoir une chance,

aussi minime soit-elle, d’être sélectionné.

b) La sélection proportionnelle avec Reste Stochastique

Ce mode de sélection est basé sur le précédent auquel est ajouté un aspect plus

déterministe. L’ensemble des Pi, défini précédemment, est conservé et intervient dans

l’équation qui détermine le nombre d’occurrences de la chaîne i reproduite dans la

population fille. Le reste stochastique Ri est alors défini en fonction de Ni.

Ni =E(N*Pi) Ri =(N*Pi) - Ni

S = ∑ =

N

1iiN-N Si = Ri / S

Page 89: Page de garde - univ-annaba.dzbiblio.univ-annaba.dz/wp-content/uploads/2014/09/... · Pr. Mohamed-Chaouki Batouche de l’université de Constantine qui m’a considérablement honoré

ANNEXE A LES ALGORITHMES GENETIQUES

74

Les Ni représente l’ensemble des chromosomes reproduits de manière déterministe.

Généralement la somme des Ni est inférieure à N. Il reste donc un certain nombre de chaînes

à sélectionner défini par S. A partir des restes, Ri, et du nombre de chaînes, Si restant à

pourvoir, les probabilités Si (pour chaque individu, d’être sélectionné par le reste

stochastique) sont calculées.

Pour obtenir les dernières chaînes sélectionnées, une sélection proportionnelle est

effectuée S fois en fonction des probabilités Si.

Cette sélection offre, comme la précédente, une chance à toutes les chaînes, mais

impose, tout de même, la présence des meilleurs individus parmi la population fille. Elle

évite donc une disparition prématurée des bonnes chaînes due à un tirage aléatoire

défavorable, surtout lorsque les populations de chromosomes sont de faibles tailles.

Le bruit de sélection étant plus faible, la dérive génétique se manifeste moins qu’avec la

méthode RWS.

c) La sélection par tournois

La sélection par tournois est une alternative aux techniques de sélection proportionnelle.

Le tournoi le plus simple consiste à choisir aléatoirement un certain nombre d’individus

dans la population, et à sélectionner pour la reproduction celui qui a la plus grande

adaptation. Au cours d’une génération, il y a autant de tournois que d’individus à remplacer.

Les individus qui participent à un tournoi restent dans la population et sont de nouveau

disponibles pour les tournois ultérieurs. La variance de ce processus est également élevée.

La pression de sélection est ajustée par le nombre de participants à un tournoi. Choisir

de nombreux participants conduit à une forte pression de sélection car un individu moyen ou

faible aura mois de chance d’être sélectionné.

Une méthode dérivée fait intervenir un tournoi après l’évaluation des chaînes déjà

recombinées. Chaque couple d’enfants entre alors dans un tournoi avec ses parents

respectifs afin de conserver les deux meilleurs individus des quatre en combinaison.

Page 90: Page de garde - univ-annaba.dzbiblio.univ-annaba.dz/wp-content/uploads/2014/09/... · Pr. Mohamed-Chaouki Batouche de l’université de Constantine qui m’a considérablement honoré

ANNEXE A LES ALGORITHMES GENETIQUES

75

2.3.2. Sélection déterministe

On sélectionne les meilleurs individus (au sens de la fonction d’adaptation) ; cela

suppose un tri de l’ensemble de la population.

Les individus les moins performants sont éliminés de la population, et le meilleur

individu est toujours sélectionné, on parle alors d’élitisme.

La sélection élitiste

Une stratégie élitiste est utilisée en plus des méthodes précédentes et non pas

séparément. Elle consiste à conserver dans la population, d’une génération à l’autre, au

moins l’individu ayant la meilleure adaptation. Les individus reproduits remplacent les

individus les moins bons de la génération courante pour obtenir la nouvelle génération,

préservant ainsi les meilleurs.

Une des variantes, de la stratégie élitiste, impose la présence des X% meilleurs individus

de la population initiale dans la population finale. Ainsi, ces chaînes sont tout simplement

protégées d’un quelconque dérapage du hasard, elles sont automatiquement sélectionnées.

Ce type de variante provoque donc une amélioration constante des performances de la

population puisque le ou les meilleurs individus sont toujours conservés d’une population à

l’autre.

2.4. Le croisement

Traditionnellement, le croisement (appelé aussi recombinaison) est vu comme

l’opérateur de recherche essentiel d’un algorithme génétique. Après la sélection, un

croisement peut éventuellement avoir lieu, dans ce cas deux individus de la nouvelle

génération échangent une ou plusieurs partie(s) de leurs génotypes pour former deux

individus différents de ceux d’origine.

Le premier problème à régler consiste à choisir deux individus parmi ceux qui ont été

sélectionnés pour en créent deux autres. Ce choix s’appelle l’appariement. Hollstien [HOL

1971] a expérimenté diverses méthodes d’appariement parmi lesquelles :

Page 91: Page de garde - univ-annaba.dzbiblio.univ-annaba.dz/wp-content/uploads/2014/09/... · Pr. Mohamed-Chaouki Batouche de l’université de Constantine qui m’a considérablement honoré

ANNEXE A LES ALGORITHMES GENETIQUES

76

1. l’appariement aléatoire (random mating) : on choisit aléatoirement deux individus dans

la population sélectionnée ;

2. la consanguinité (inbreeding) : deux parents proches sont appariés. De cette manière,

on crée des lignées ;

3. le croisement entre lignées ou inter-fécondation (outbreeding) : deux individus

phénotypiquement très différents sont appariés.

De Jong [DEJ 1975] propose la technique dite du Crowding Factor (CF). Pour chaque

individus sélectionné, CF individus sont tirés au hasard dans la population. On apparie alors

l’individu sélectionné et celui qui lui ressemble le plus parmi les CF tirés. Dans la plupart

des cas, CF est choisi 2 ou 3.

L’opérateur de croisement est essentiel, car il permet d’obtenir de nouveaux individus

distincts de ceux déjà existants, et donc d’explorer tout l’espace de recherche. Il existe

différentes méthodes pour croiser deux chromosomes :

a) Le croisement « à un point »

Ce type de croisement est standard dans les AGs. Il consiste à choisir un emplacement

aléatoirement sur une chaîne, et d’intervertir tous les gènes d’un coté de point entre les deux

chaînes, comme le montre la figure 5 :

Parent 1 : 1 0 0 1 1 0 1 1 0 1 1 0 0 1 1 0 0 1 1 0 Enfant 1

Parent 2 : 0 1 0 1 1 1 0 1 1 0 0 1 0 1 1 1 1 1 0 1 Enfant 2

Figure A.2 : Exemple de croisement à « un point »

(cas du codage binaire)

b) Croisement « à n point »

Le croisement à n points est une généralisation du croisement à un point avec n points

de coupure sur les chaînes. Il s’agit alors de déterminer n points sur ces chaînes, puis

Page 92: Page de garde - univ-annaba.dzbiblio.univ-annaba.dz/wp-content/uploads/2014/09/... · Pr. Mohamed-Chaouki Batouche de l’université de Constantine qui m’a considérablement honoré

ANNEXE A LES ALGORITHMES GENETIQUES

77

d’échanger sur les chaînes les blocs entre ces points afin d’obtenir les enfants. La figure 6

montre un exemple de croisement « à deux points » de deux parents codés en binaire.

Parent 1 : 1 0 0 1 1 0 1 1 0 1 1 0 0 1 1 0 0 1 1 0 Enfant 1

Parent 2 : 0 1 0 1 1 1 0 1 1 0 0 1 0 1 1 1 1 1 0 1 Enfant 2

Figure A.3 : exemple de croisement « à 2 points » (cas du codage binaire)

D’autres types de croisement ont été proposés comme le croisement :

• discrète, qui consiste à permuter en moyenne une fois sur deux les éléments du

génotype,

• intermédiaire qui propose de remplacer le gène de l’individu enfant par une

combinaison linéaire des gènes des deux parents,

• géométrique qui prend la racine carrée de la multiplication des deux gènes parents.

Cette liste n’est cependant pas exhaustive et il est possible de trouver des travaux sur

l’élaboration d’autres recombinaisons.

2.5. Mutation

Elle constitue une exploration totalement au hasard de l’espace de recherche et permet

également d’éviter la perte du matériel génétique potentiellement utile. Mais, par rapport au

croisement, son rôle reste secondaire. En général, on lui attribue une probabilité faible, de

l’ordre de 0.01.

Cet opérateur consiste à apporter de l’innovation dans la population en modifiant un

seul gène aléatoirement, comme le montre l’exemple de la figure A-4. Si toutes les chaînes

possèdent une valeur identique sur le même gène, alors ni la sélection, ni le croisement ne

pourront créer un individu pourvu d’une différence au niveau de ce gène. La mutation

permet des variations de cet ordre, rendant possible la sortie d’un optimum local. Bien que

Page 93: Page de garde - univ-annaba.dzbiblio.univ-annaba.dz/wp-content/uploads/2014/09/... · Pr. Mohamed-Chaouki Batouche de l’université de Constantine qui m’a considérablement honoré

ANNEXE A LES ALGORITHMES GENETIQUES

78

sa part dans les algorithmes génétiques soit moindre par rapport au croisement, son emploi

est cependant indispensable.

Figure A.4 : Opération de mutation.

2.6. Les paramètres de contrôle d’un algorithme génétique

Les algorithmes génétiques peuvent être contrôlés à travers différents

paramètres dont les plus importants sont :

• la taille de la population,

• le taux de remplacement ; le nombre d’enfants substituant les anciennes solutions dans chaque génération,

• le mécanisme de sélection,

• le taux de croisement,

• le taux de mutation,

• le nombre de générations (itérations).

Comme dans la nature, les opérations de croisement et de mutation s’appliquent de

manière aléatoire. Nous faisons une sélection depuis une population P(t) -la population à la

génération t- de deux chromosomes qui ont une chance d’être croisés, égale à Pc. S’ils ne

sont pas croisés, ils passent directement à l’étape de mutation. S’ils sont croisés, ils seront

remplacés par leurs enfants obtenus de leur échange de gênes ; ensuite ces enfants passeront

à la procédure de mutation. Une fois la procédure de mutation finie, les enfants résultants

seront incorporés comme membres de la nouvelle population P(t+1). Le processus est répété

jusqu’à compléter la taille de la population.

Si la probabilité du croisement est 100%, alors tout descendant est issu par un

croisement. Si elle est de l’ordre de 0%, toute nouvelle génération est une copie exacte des

chromosomes de l’ancienne population.

Page 94: Page de garde - univ-annaba.dzbiblio.univ-annaba.dz/wp-content/uploads/2014/09/... · Pr. Mohamed-Chaouki Batouche de l’université de Constantine qui m’a considérablement honoré

ANNEXE A LES ALGORITHMES GENETIQUES

79

S’il n’y a aucune mutation, les descendants sont gardés après le croisement sans aucun

changement. Si la probabilité de mutation est 100%, tout chromosome est changé. La

mutation est utilisée pour prévenir le piège de tomber dans des optimaux locaux, mais elle

ne doit pas apparaître souvent, sinon l’algorithme génétique change au fait en une recherche

aléatoire pure.

La taille de la population exprime le nombre de chromosomes dans la population (dans

une génération). S’il y a peu de chromosomes, l’algorithme génétique a peu de possibilités

d’accomplir le croisement et une petite partie de l’espace de recherche est explorée.

Un autre paramètre, la stratégie de remplacement qui consiste à spécifier la manière par

laquelle les descendants générés (par sélection, appariement et croisement) remplacent les

parents pour former une nouvelle génération.

Le réglage des paramètres est un point très délicat dans les algorithmes génétiques ;

celui-ci doit être optimisé pour chaque type de problème traité.

L’AG simple accomplit une génération lorsque les opérateurs définis ci-dessus ont été

appliqués aux individus de la population selon la séquence suivante :

• codage des solutions,

• évaluation des solutions,

• sélection des individus,

• croisement et mutation.

De génération en génération, la taille de la population reste constante. Lors d’une

génération, la totalité d’une population peut être remplacée par ses descendants, l’AG est

alors dit « générationnel ». Ou au contraire, un petit nombre d’individus, un ou deux, sont

remplacés, on se trouve alors en présence d’un algorithme « stationnaire ».

Page 95: Page de garde - univ-annaba.dzbiblio.univ-annaba.dz/wp-content/uploads/2014/09/... · Pr. Mohamed-Chaouki Batouche de l’université de Constantine qui m’a considérablement honoré

ANNEXE A LES ALGORITHMES GENETIQUES

80

3. Résumé de l’algorithme génétique de base

[Début]: générer aléatoirement une population de n chromosomes.

[Évaluation] : évaluer l’adaptabilité (fitness) f(i) de chaque chromosome

dans la population.

[Nouvelle génération] : créer une nouvelle population en répétant les étapes

suivantes jusqu’à ce que la nouvelle population est

complétée.

1. [Sélection] : Sélectionner des chromosomes parents de la population

relativement à leurs fitness(meilleurs fitness, une grande

chance d’être sélectionné,…).

2. [Croisement] : avec la probabilité du croisement fixée, croiser les parents

pour former les nouveaux descendants. Si aucun

croisement n’a eu lieu les descendants sont des copies

exactes des parents.

3. [Mutation] : Avec la probabilité de mutation fixée, muter le nouveau

descendant à chaque locus (position dans le chromosome).

4. [Acceptation] : placer les nouveaux descendants dans la nouvelle

population.

[Remplacer] : Utiliser la nouvelle population générée pour l’exécution

de l’algorithme de nouveau.

[Test] : Si la condition fin est satisfaite stop et retourner la

meilleure solution dans la population courante.

[Boucler] : Aller à l’étape 2.

Ce résumé de l’algorithme génétique de base est général, il y a plusieurs choses qui

peuvent être implémentées différemment dans des problèmes variés.

Page 96: Page de garde - univ-annaba.dzbiblio.univ-annaba.dz/wp-content/uploads/2014/09/... · Pr. Mohamed-Chaouki Batouche de l’université de Constantine qui m’a considérablement honoré

Annexe B PRESENTATION DE QUELQUES STRUCTURES DE DONNEES ET D'INTERFACES

81

ANNEXE B :

PRESENTATION DE QUELQUES STRUCTURES DE DONNEES ET D'INTERFACES COMPLEMENTAIRES.

Dans le chapitre IV nous n'avons détaillé que les structures de données et les interfaces

que nous avons jugées primordiales pour l'application. Néanmoins quelques autres

structures de données ainsi que certaines interfaces ont un rôle non moindre dans notre

application; c'est pourquoi, nous nous apprêtons à présent à détailler ces informations.

1. Informations nécessaires sur le personnel

Un utilisateur peut enregistrer les informations suivantes pour une personne :

• Le nom d’une personne,

• Les compétences d’une personne,

• La fonction d’une personne,

• Les disponibilités d’une personne,

• Les pré-affectations d’une personne.

Le fichier de données du personnel

Ce fichier contient les informations concernant tous les médecins, un médecin est

représenté par un enregistrement qu'on peut décrire comme suit:

Médecin = Enregistrement Nom : string; Fonction : string; Compétences : TypeCompétences;

Disponibilités : Tableau[1..53] de « TypeDispoPersonnel», Pré-affectations : Tableau[1..53] de « PreAffectationSemanie»,

Fin Enregistrement;

Page 97: Page de garde - univ-annaba.dzbiblio.univ-annaba.dz/wp-content/uploads/2014/09/... · Pr. Mohamed-Chaouki Batouche de l’université de Constantine qui m’a considérablement honoré

Annexe B PRESENTATION DE QUELQUES STRUCTURES DE DONNEES ET D'INTERFACES

82

Où TypeCompétence est un tableau dynamique de string, sa taille dépend du médecin et

du nombre de postes que celui-ci est apte à occuper. Par exemple, si le médecin X est

qualifié pour travailler dans les postes Echo1, Scanner, Urgences, alors son champ

compétences sera représenté par un tableau de taille 3, voir la figure B.1.a.

TypeDispoPersonnel est un tableau de booléens, de 5 lignes par 2 colonnes (true

signifie que le médecin est disponible à cette période, false autrement), les 5 lignes

représentent les jours de la semaine. Les 2 colonnes représentent les périodes : le matin et

l’après-midi (voir figure B.1.b).

Les disponibilités d’une personne sont donc représentées par un tableau de 53 cases

permettant d’enregistrer les disponibilités sur une année (une année contient au plus 53

semaine).

Le type PreAffectationSemaine est aussi un tableau de string, de 5 lignes par 2

colonnes, initialisé à « aucune », par exemple si un médecin est pré-affecté pendant une

semaine donnée le lundi matin à un poste X, alors le nom de ce poste sera enregistré dans la

case [3,1] de cette semaine (voir la figure B.1.c).

Echo1 Scanner Urgences

Figure B.1.a : Compétences du médecin X, (TypeCompétences)

Matin Après-midi Matin Après-midi

Samedi False True Samedi Echo1 aucune Dimanche False True Dimanche Aucune Scanner

Lundi True False Lundi Aucune aucune Mardi False False Mardi Aucune aucune

Mercredi True False Mercredi Aucune aucune

Figure B.1.b : disponibilités du médecin X dans une semaine donnée,

TypeDispoPersonnel

Figure B.1.c : pré-affectations du médecin X dans une semaine donnée,

PreAffectationSemaine

Figure B.1 : Structure de données (Fichier personnel).

Page 98: Page de garde - univ-annaba.dzbiblio.univ-annaba.dz/wp-content/uploads/2014/09/... · Pr. Mohamed-Chaouki Batouche de l’université de Constantine qui m’a considérablement honoré

Annexe B PRESENTATION DE QUELQUES STRUCTURES DE DONNEES ET D'INTERFACES

83

2. Informations nécessaires sur les postes

Un utilisateur peut enregistrer les informations suivantes pour un poste :

• Le nom du poste,

• Les ouvertures du poste.

• Les préférences d’affectation des médecins à ce poste (contrainte N°6).

Un utilisateur peut aussi effectuer les opérations suivantes :

• Ajouter une personne,

• Modifier les renseignements d’une personne,

• Supprimer une personne,

• Remplir les disponibilités d’une personne,

• Remplir les pré-affectations d’une personne,

• Ajouter un poste,

• Modifier les renseignements d’un poste,

• Supprimer un poste,

• Remplir les ouvertures d’un poste,

• Remplir les préférences d’affectation d’un poste.

Le fichier de données des postes

Ce fichier contient les informations concernant tous les postes, un poste est représenté

par un enregistrement comme suit:

Poste = Enregistrement

Nom : string; Ouvertures : Tableau[1..53] de TypeOuverturePoste; MédecinsPréférés : TypeMédecinsPréférés; Fin Enregistrement;

Page 99: Page de garde - univ-annaba.dzbiblio.univ-annaba.dz/wp-content/uploads/2014/09/... · Pr. Mohamed-Chaouki Batouche de l’université de Constantine qui m’a considérablement honoré

Annexe B PRESENTATION DE QUELQUES STRUCTURES DE DONNEES ET D'INTERFACES

84

Figure B.2.b : ouvertures du poste X dans une semaine donnée, (TypeOuverturePoste)

Où TypeOuverturePoste est un tableau de booléens, de 5 lignes par 2 colonnes (true

signifie que le poste est ouvert pendant cette semaine), les 5 lignes représentent les jours de

la semaine. Les 2 colonnes représentent les périodes : le matin et l’après-midi (voir figure

B.2.b).

Les ouvertures d’un poste sont donc représentées par un tableau de 53 cases permettant

d’enregistrer les ouvertures sur une année. Chaque case contient un tableau semblable à

celui de la figure B.2.a.

MédecinsPréférés est un tableau dynamique de string. Sa taille dépend du poste et du

nombre de médecins qualifiés pour ce poste. Par exemple, si le poste X est ouvert et si A, B,

et C sont qualifiés pour ce poste (sachant qu’on préfère A puis B puis C), alors le champ

MédecinPréférés du poste X sera représenté par un tableau de taille 3, où la case 1 pour le

1er médecin (A), la case 2 pour le 2eme médecin (B), et la case 3 pour le 3eme médecin (C)

(voir la figure B.2.b).

Donc le champ MédecinsPréférés contient la liste des médecins compétant pour ce

poste, l’ordre de ses éléments correspond aux préférences d’affectation des médecins à ce

poste.

A B C

Figure B.2.a : Préférences des médecins pour le poste X, (MédecinsPréférés)

Matin Après-midi

Samedi true true Dimanche false true

Lundi true false Mardi false false

Mercredi true false

Figure B.2 : Structure de données (fichier postes).

Page 100: Page de garde - univ-annaba.dzbiblio.univ-annaba.dz/wp-content/uploads/2014/09/... · Pr. Mohamed-Chaouki Batouche de l’université de Constantine qui m’a considérablement honoré

Annexe B PRESENTATION DE QUELQUES STRUCTURES DE DONNEES ET D'INTERFACES

85

3. Fonctionnement général de l’application

L’application travaille sur une année complète. C’est-à-dire, qu’un utilisateur fait entrer

des informations pour une semaine précise, et il peut également fait entrer des informations

correspondantes aux semaines suivantes (figure B.3).

Figure B.3 : ouvertures d'un service pour une semaine et propagation de ces ouvertures

pour d'autres semaines.

La figure B.4 permet de visualiser l’interface d’entrée qui permet de rentrer les

informations sur le personnel. Parallèlement, la figure B.8 se rapporte à une interface

destiné aux postes, et la figure B.12 représente une interface de sortie qui permet d’afficher

un planning (planning qui a été calculé par l’algorithme génétique).

Page 101: Page de garde - univ-annaba.dzbiblio.univ-annaba.dz/wp-content/uploads/2014/09/... · Pr. Mohamed-Chaouki Batouche de l’université de Constantine qui m’a considérablement honoré

Annexe B PRESENTATION DE QUELQUES STRUCTURES DE DONNEES ET D'INTERFACES

86

Figure B.4 : Interface Gestion des médecins.

Le bouton Disponibilités affiche la fenêtre suivante :

Figure B.5 : Interface Disponibilités d'un médecin.

Le bouton Disponibilités affiche la fenêtre suivante :

Figure B.6 : Interface Pré-affectaions d'un médecin.

Page 102: Page de garde - univ-annaba.dzbiblio.univ-annaba.dz/wp-content/uploads/2014/09/... · Pr. Mohamed-Chaouki Batouche de l’université de Constantine qui m’a considérablement honoré

Annexe B PRESENTATION DE QUELQUES STRUCTURES DE DONNEES ET D'INTERFACES

87

Le bouton Compétences affiche la fenêtre suivante :

Figure B.7 : Interface Gestion des compétences.

Gestion des postes :

Figure B.8 : Interface Gestion des postes.

Page 103: Page de garde - univ-annaba.dzbiblio.univ-annaba.dz/wp-content/uploads/2014/09/... · Pr. Mohamed-Chaouki Batouche de l’université de Constantine qui m’a considérablement honoré

Annexe B PRESENTATION DE QUELQUES STRUCTURES DE DONNEES ET D'INTERFACES

88

Le bouton Ouvertures affiche la fenêtre suivante :

Figure B.9 : Interface Gestion des Ouvertures d'un poste.

Le bouton Médecins préférés affiche la fenêtre suivante :

Figure B.10 : Interface Gestion des Préférences.

Page 104: Page de garde - univ-annaba.dzbiblio.univ-annaba.dz/wp-content/uploads/2014/09/... · Pr. Mohamed-Chaouki Batouche de l’université de Constantine qui m’a considérablement honoré

Annexe B PRESENTATION DE QUELQUES STRUCTURES DE DONNEES ET D'INTERFACES

89

Figure B.11 : Interface principale.

Conditions intempestives

Comme nous l'avons précisé auparavant, ce que l'on entend par conditions intempestives

au sein d'un planning est la défaillance d'une ou de plusieurs ressources (humaines ou

matériels) à un moment de la réalisation de ce planning. Dans ce qui suit nous allons

présenter les étapes exécutés par notre logiciel pour la gestion de ces conditions.

Définition de types de défaillance

A partir du menu suivant, l'utilisateur détermine le type de défaillance de ressources :

humaine ou matériel.

Page 105: Page de garde - univ-annaba.dzbiblio.univ-annaba.dz/wp-content/uploads/2014/09/... · Pr. Mohamed-Chaouki Batouche de l’université de Constantine qui m’a considérablement honoré

Annexe B PRESENTATION DE QUELQUES STRUCTURES DE DONNEES ET D'INTERFACES

90

Défaillance de ressources humaines :

L'utilisateur doit indiquer le nom du médecin absent.

Type d'absence

A partir de la fenêtre suivante, l'utilisateur doit indiquer le cas d'absence :

Cas déterministe : Dans ce cas connaît la durée pendant laquelle le médecin X sera absent,

Cas non déterministe : Où on ne connaît pas une telle durée.

Page 106: Page de garde - univ-annaba.dzbiblio.univ-annaba.dz/wp-content/uploads/2014/09/... · Pr. Mohamed-Chaouki Batouche de l’université de Constantine qui m’a considérablement honoré

Annexe B PRESENTATION DE QUELQUES STRUCTURES DE DONNEES ET D'INTERFACES

91

Cas déterministe

Si on est dans le cas déterministe, l'utilisateur indique le nombre de période où le

médecin sera absent, et aussi la plage .

Dans le cas non déterministe l'utilisateur fait entrer le nombre estimé de périodes

correspondant à l'absence du médecin.

L'utilisateur clique ensuite sur le bouton Terminer pour valider l'opération et effectuer la

mise à jour du planning.

Exemple de validation

Dans cet exemple le médecin Seghir est déclaré absent, après l'exécution des étapes

précédentes, le médecin Seghir est remplacé par le médecin Aksa.

Page 107: Page de garde - univ-annaba.dzbiblio.univ-annaba.dz/wp-content/uploads/2014/09/... · Pr. Mohamed-Chaouki Batouche de l’université de Constantine qui m’a considérablement honoré

Annexe B PRESENTATION DE QUELQUES STRUCTURES DE DONNEES ET D'INTERFACES

92

Défaillance de ressources matérielles :

L'utilisateur doit indiquer le service où le matériel est tombé en panne.

.

Page 108: Page de garde - univ-annaba.dzbiblio.univ-annaba.dz/wp-content/uploads/2014/09/... · Pr. Mohamed-Chaouki Batouche de l’université de Constantine qui m’a considérablement honoré

Annexe B PRESENTATION DE QUELQUES STRUCTURES DE DONNEES ET D'INTERFACES

93

Type de panne

A partir de la fenêtre suivante, l'utilisateur doit indiquer le type de panne :

Cas déterministe : Dans ce cas on connaît la durée pendant laquelle le matériel restera en

panne avant réparation.

Cas non déterministe : on ne connaît pas la durée exacte pour réparer un tel matériel.

Cas déterministe

Si on est dans le cas déterministe, l'utilisateur indique le nombre de périodes nécessaires

pour réparer le matériel.

Dans le cas non déterministe l'utilisateur va entrer le nombre de périodes estimé pour

réparer le matériel.

Après cette dernière étape l'utilisateur clique sur le bouton Terminer pour valider l'opération

et effectuer la mise à jour du planning.

Page 109: Page de garde - univ-annaba.dzbiblio.univ-annaba.dz/wp-content/uploads/2014/09/... · Pr. Mohamed-Chaouki Batouche de l’université de Constantine qui m’a considérablement honoré

BIBLIOGRAPHIE

94

BIBLIOGRAPHIE

[ABR 1991] : D. Abramson, «Constructing School Timetables using Simulated Annealing: Sequential and Parallel Algorithms», Management Science 37, pp. 98-113. 1991.

[ABR 1992] : D. Abramson, J. Abela, « A parallel genetic algorithm for solving the school timetabling problem », Appeared in 15 Australian Computer Science Conference, Hobart, pp 1-11, Feb 1992.

[AIK 2001]: Aiken Linda et al., «Nurses Report on Hospital Care in Five Countries », Health Affairs, Vol 20, No. 3 (2001), pp. 43-53.

[ASA 2000] : «Automated Scheduling, Optimisation and Planning», (ASAP) Research Group. Report 1999-2000. URL: http://www.asap.cs.nott.ac.uk.

[BAB 1995] : M. BABES, « Conception d’un logiciel en traitement interactif de problèmes d’emploi du temps et d’ordonnancement », Thèse d’état, Institut d’informatique, Université de Annaba, 1995.

[BAU 1999] : P. Baudet, C. Azzaro-Pantel, S. Domenech et L. Pibouleau, « Algorithme génétique et modèle de simulation pour l'ordonnancement d'un atelier discontinu de chimie », RAIRO Recherche Opérationnelle Vol. 33, Num. 3, pp 299-234 July-September 1999.

[BGU 2000] : Research Group - Computer Science (BGU) « Solving Employee Timetabling Problems - Modelling and Algorithms» 2000. URL : http://www. cs.bgu.ac.il/~am/ETP_Home/.

[BLU 2002] : Christian Blum, Sebastiao Correia, Marco Dorigo, « A GA evolving instructions for a timetable builder ». Proceedings of the 4th International Conference on the Practice And Theory of Automated Timetabling (PATAT 2002).

[BOG 1996] : Julian Eugene Boggess, « Using Genetic Algorithms For Scheduling Engineering Missions », Proceedings of TAITS : TECOM Artificial Intelligence Technology Symposium '96.

[BRU 1993]: M. J. Brusco and L. W. Jacobs, « A simulated annealing approach to the cyclic staff-scheduling problem », Naval Research Logistics, 40:69–84, 1993.

[BUR 1991] : E.K.Burke, D.G.Elliman, R.Weare, « A University Timetabling System based on Graph Colouring and Constraint Manipulation ». Journal of Research on Computing in Education Vol. 27, Iss. 1, pp. 145-153. 1991.

Page 110: Page de garde - univ-annaba.dzbiblio.univ-annaba.dz/wp-content/uploads/2014/09/... · Pr. Mohamed-Chaouki Batouche de l’université de Constantine qui m’a considérablement honoré

BIBLIOGRAPHIE

95

[BUR 1994a] : Edmund Burke, David Elliman and Rupert Weare, « A Genetic Algorithm for University Timetabling » Proceedings of the “AISB” workshop on Evolutionary Computing (University of Leeds, UK, 11th-13th April 1994).

[BUR 1994b] : Edmund K. Burke and Alistair J. Smith, « A Memetic Algorithm for the Maintenance Scheduling Problem » In Proceedings of the International Conference on Neural Information Processing and Intelligent Information Systems Vol 1, pp469–473, Springer Eds. 1994.

[BUR 1994c]: Edmund Burke, David Elliman and Rupert Weare, « A Genetic Algorithm Based University Timetabling System », Proceedings of the 2nd East-West International Conference on Computer Technologies in Education (Crimea, Ukraine, 19th-23rd Sept 1994), vol 1, pp 35-40, 1994.

[BUR 1995a]: Edmund Burke, David Elliman and Rupert Weare, « Specialised Recombinative Operators for Timetabling Problems ». Proceedings of the AISB Workshop in Evolutionary Computing, Springer-Verlag Lecture Notes in Computer Science Series No 993, Heidleberg, 1995.

[BUR 1995b] : E.K.Burke D.B. Varley, « A Genetic Algorithms Tutorial Tool for Numerical Function Optimisation » Proceedings of ITiCSE Conference on Integrating Technology into Computer Science Education Uppsala University, Uppsala, Sweden June 1-5, 1995.

[BUR 1995c] : E. K. Burke, J. P. Newall and R. F.Weare, « A Memetic Algorithm for University Exam Timetabling » Proceedings of the First International Conference on the Practice and Theory of Automated Timetabling (ICPTAT-95), 496-503.

[BUR 1995d]: Edmund K. Burke Dave G. Elliman Rupert F. Weare, « A Hybrid Genetic Algorithm for Highly Constrained Timetabling Problems » Proceedings of the 6th International Conference on Genetic Algorithms (ICGA'95, Pittsburgh, USA, 15th-19th July 1995), pp 605-610, Morgan Kaufmann, San Francisco, CA, USA.

[BUR 1998] : E.K. Burke, J.P. Newall, R.F. Weare, « A Simple Heuristically Guided Search for the Timetable Problem » Proceedings of the International ICSC Symposium on Engineering of Intelligent Systems, pp.~574--579, 1998.

[BUR 2000] : Edmund Burke, Yuri Bykov, Sanja Petrovic, « A Multicriteria Approach to Examination Timetabling » In: Burke E.; Erben W.\ (eds.): Practice and Theory of Automated Timetabling III Third International Conference, PATAT 2000, Konstanz, Germany, August 16-18, 2000.

[BUR 2001a] : Edmund Burke, Yuri Bykov, James Newall and Sanja Petrovic, «A Time-Predefined Local Search Approach to Exam Timetabling Problems», Computer Science Technical Report No. NOTTCS-TR-2001-6.

Page 111: Page de garde - univ-annaba.dzbiblio.univ-annaba.dz/wp-content/uploads/2014/09/... · Pr. Mohamed-Chaouki Batouche de l’université de Constantine qui m’a considérablement honoré

BIBLIOGRAPHIE

96

[BUR 2001b] : E.K. Burke, P. Cowling, J.D. Landa Silva, S. Petrovic, « Combining Hybrid Metaheuristics and Populations for the Multiobjective Optimisation of Space Allocation Problems » Proceedings of the 2001 Genetic and Evolutionary Computation Conference (GECCO 2001), San Francisco, USA, pp. 1252-1259, July 7-11, 2001.

[BUR 2002] : Edmund Kieran Burke, and Sanja Petrovic « Recent Research Directions in Automated Timetabling » European Journal of Operational Research – EJOR, 2002.

[CAI 2000] : Cai X. et Li K.N., «A Genetic Algorithm for scheduling staff of mixed skills under multi-criteria», European Journal of Operational Research, 125: 359-369, 2000.

[CAO 1991] : V. Cao, O. du Merle, J.P. Vial «Un système de Confection automatisée des Horaires d'examens à la faculté des SES de l'université de Genève», Cahier de recherches N° 91.4, Dép. d'économie commerciale, Université de Genève, 1991.

[CHA 1989] : N. Chahal, D. de Werra «An interactive System for constructing Timetabling on a PC», European Journal of OR 40, 32-37. 1989.

[CHA 2002] : CHAN Yew Cheong, Peter, « La planification du personnel : acteurs, actions et termes multiples pour une planification opérationnelle des personnes », Thèse de doctorat, Institut IMAG, Université JOSEPH FOURIER-Greonoble 1. Octobre 2002.

[COL 1996] : Alberto Colorni, Marco Dorigo, Vittorio Maniezzo, « A genetic algorithm to solve the timetable problem. » Computational Optimization And Applications Journal 1996.

[COR 1994] : Dave Corne, Peter Ross, Hsiao-Lan Fang, « Evolutionary Timetabling : Practice, Prospects and Work in Progress », In Proceedings of UK Planning and Scheduling SIG Workshop, ed Patrick Prosser, Strathclyde, September '94.

[COS 1995] : D. Costa, «An evolutionary tabu search algorithm and the NHL scheduling problem», INFOR 33 (3), pp. 15-25, 1995.

[COW 2001]: Peter Cowling, Graham Kendall, Eric Soubeiga, « A Parameter-Free Hyperheuristic for Scheduling a Sales Summit » MIC’2001 - 4th Metaheuristics International Conference, 2001.

[DAN 1954] : Dantzig G.B., «A Comment on Edie's Traffic Delays at Toll Booths», Operational Research, 2(3) : 339-341, 1954.

[DEJ 1975] : K. De-Jong, «An analysis of the bihavious of a class of genetic adaptative systems», PhD thesis, University of Michigan, USA, 1975.

Page 112: Page de garde - univ-annaba.dzbiblio.univ-annaba.dz/wp-content/uploads/2014/09/... · Pr. Mohamed-Chaouki Batouche de l’université de Constantine qui m’a considérablement honoré

BIBLIOGRAPHIE

97

[DEL 1995] : D. Delahaye «Optimisation de la sectorisation de l’espace aérien par algorithmes génétiques ». PhD thesis, 1995.

[DEN 2001] : Cassio Dener N VINHAL, Wanderley de S ALENCAR « School/ College Timetabling Problem : A Hierarchical Constraint Logic Programming Approach Using Mozart Oz », In proceding of SCI 2001/ISAS 2001 VOLUME VIII (International Conference on Information Systems, Analysis and Synthesis), 2001.

[DES 2000] : K. Deschinkel, J.L. Farges and D. Delahaye «Optimisation of prices for air traffic control». In : 9th IFAC Symposium Control in Transportation Systems, 2000.

[DIA 1998] : R.B. Dial «A probabilistic multipath traffic assignment model which obviates path enumeration» Transportation Research, 5(2), 1998.

[FAN 1992] : Hsiao-Lan Fang, « Investigating Genetic Algorithm for Scheduling » MSc Thesis, Department of Artificial Intelligence, University of Edinburgh, 1992.

[FLE 1993]: C. Fleurent et J. A. Ferland, «Allocating game for the NHL using integer programming ». Operations Research 41 pp. 649-654, 1993.

[GAN 2002] : G. Cangini, «Une méthode hybride pour la confection d’horaires de médecins pour l’hôpital Côte-des-Neiges». Mémoire de maîtrise, CRT, GERAD & Ecole Polytechnique de Montréal, Département de Génie Électrique et de Génie Informatique. 2002.

[GAU 1995] : Gervais Gaudière, «Résolution de conflits aériens par réseaux de neurones » Rapport DEA IFP 1995.

[GEN 2001] : B. Gendron, «Adaptation d'un modèle mathématique de génération de colonnes pour les horaires de médecins», MIC’2001 - 4th Metaheuristics International Conference, 2001.

[GIL 1997] : Jaime Gil-Aluja, « The Interactive Management of Human Resources in Uncertainty », University of Barcelona, Hardbound, 1997.

[GLA 2001] : W. David Glasspool & John Fox, « REACT - A decision-support system for medical planning » presented at American Medical Informatics Association symposium, Philadelphia, US, 2001.

[GOL 1989]: D.E. Goldberg, «Genetic Algorithms in Search, Optimisation and Machine Learning», Addison-Wesley Publishing Co. Pub. 1989.

[GOL 2000] : Hans-Joachim Goltz, «Combined Automatic and Interactive Timetabling Using Constraint Logic Programming » PATAT 2000, Proceedings Int. Conf. on the Practice and Theory of Automated Timetabling, E. Burke and W. Erben (eds.) 2000.

Page 113: Page de garde - univ-annaba.dzbiblio.univ-annaba.dz/wp-content/uploads/2014/09/... · Pr. Mohamed-Chaouki Batouche de l’université de Constantine qui m’a considérablement honoré

BIBLIOGRAPHIE

98

[GRO 2001]: Matthias Grobner and Peter Wilke, « Optimizing Employee Schedules by a Hybrid Genetic Algorithm » In E.J.W. Boers et al., Applications of Evolutionary Computing, p.463-472, 2001.

[HAM 2000]: Jean-Philippe Hamiez et Jin-Kao Hao, « Recherche tabou et planification de rencontres sportives Tabu Search and sports league scheduling»12ème Congrès on Reconnaissance des Formes et de l'Intelligence Artificielle – RFIA’2000, Paris, Janvier 2000.

[HEN 1998] : M. Henz, «Scheduling a major college basketball conference – revisited», à paraître dans Operations Research, 1998.

[HEN 2000a]: C. Henrik Westerberg, John Levine «"GenPlan": Combining Genetic Programming and Planning » In Proc. of the 19th Workshop of the UK Planning and Scheduling Special Interest Group (PLANSIG 2000), Open University, Milton Keynes, UK, 2000.

[HEN 2000b]: C. Henrik Westerberg, John Levine « Optimising Plans using Genetic Programminig» 2000. URL : http://www. citeseer.ist.psu.edu/506374.html.

[HEN 2001]: C. Henrik Westerberg, John Levine « Investigation of Different Seeding strategies in a Genetic Planner » Proceedings of the 2nd European Workshop on Scheduling and Timetabling (EvoSTIM 2001) held at the 4th European Conference on Genetic Programming (EuroGP 2001), April 2001, Springer.

[HEN 1996] : Martin Hentz and Jorg Wurtz, « Contraint-Based Timetabling - a Case Study » Applied Artificial Intelligence,10:439-453,1996.

[HER 1992]: A. Hertz «Finding a Feasible Course Schedule Using Tabu Search» - Discrete Applied Mathematics 35, pp. 255-270. 1992.

[HOL 1971]: R. B. Hollstien, «Artificial genetic adaptation in computer control systems» , Phd thesis, university of Michigan, 1510B, 1971.

[HOL 1975] : J.H. Holland, «Adaptation in natural and artificial systems». University of Michigan Press, 1975.

[ION 1997] : Ion Muslea, « A general-purpose ai planning system based on the genetic programming paradigm », in Late Breaking Papers at the Genetic Programming 1997 Conference, J.R. Koza, Ed. CA, USA: Stanford University, pp. 157-164. 1997.

[JAU 2000] : B. Jaumard, P. Galinier «Méthode tabou pour l'organisation des soins à domicile», CRT, GERAD & Ecole Polytechnique de Montréal, Département de Génie Électrique et de Génie Informatique 2000.

Page 114: Page de garde - univ-annaba.dzbiblio.univ-annaba.dz/wp-content/uploads/2014/09/... · Pr. Mohamed-Chaouki Batouche de l’université de Constantine qui m’a considérablement honoré

BIBLIOGRAPHIE

99

[JEA 2000] : Jean-Philippe Rennard, « Genetic Algorithm Viewer : Démonstration d'un algorithme génétique », Avril 2000. URL: http://www. www.rennard.org/alife/french/gav.pdf

[JIN 1999] : Jin-Kao Hao, Philippe Galinier, Michel Habib, « Méthaheuristiques pour l’optimisation combinatoire et l’affectation sous contraintes », Revue d’Intelligence Artificielle, 1999.

[JOU 1995] : Jourdain A. et M. Frossard, «Les nouveaux outils de planification sanitaire», Actualité et Dossier en santé Publique Dossier N°. 11, pp. II-III (1995).

[KAL 1990]: D. Kalyanmoy and D. E. Goldberg, « A comparative analysis of selection schemes used in genetic algorithms », Technical report 90007, the clearinghouse for genetic algorithm, Department of engineering mechanics, the university of Alabama, Tuscaloosa, AL35487-2908, July 1990.

[KAM 1994]: Maria Kambi, David Gilbert, « Timetabling in Constraint Logic Programming », Proceedings of the 2nd World Congress on Expert Systems, Estoril (P), January 1994.

[KAN 2001] : Hitoshi Kanoh, Tsukuba, Ibaraki, « Solving timetabling problems using genetic algorithms based on minimizing conflict heuristics », Proceedings of the EUROGEN2001 Conference publisher: International Center for Numerical Methods in Engineering (Cmine), 2001.

[KER 1997] : Keramat Mansour, « Optimisation globale avec les algorithmes génétiques », Rapport N° SUP-0497-20 Avril 1997.

[KIN 2001] : Jeffrey H. Kingston, « Modelling timetabling problems with STTL ». In Proceedings of The Practice and Theory of Automated Timetabling, LNCS 2079, Springer Verlag, pp. 309-321, 2001.

[LAB 1998] : François Laburthe, « Contraintes et Algorithmes en Optimisation Combinatoire » Thèse d'état université PARIS VII, 1998.

[LEF 1996] : Yann Le Fablec, «Prévision de trajectoires d’avions par réseaux de neurones» Thèse en informatique Ecole Nationale de l’Aviation Civille Toulouse France. 1996.

[LEL 2001] : Alexandru Lelutiu, Mihaela Horea, Peter Olah, « About the Computer-Aided Time-Table Generation in an Education Information System » 2001. URL : http://www.citeseer.nj.nec.com.

[MAR 1999]: Marco D., Paolo Trverso, and Moshe Y. Vardi, « Strong Cyclic Planning Revisited ». Proceedings of the 5th European Conference on Planning: Recent Advances in AI Planning, p.35-48, September 08-10, 1999.

Page 115: Page de garde - univ-annaba.dzbiblio.univ-annaba.dz/wp-content/uploads/2014/09/... · Pr. Mohamed-Chaouki Batouche de l’université de Constantine qui m’a considérablement honoré

BIBLIOGRAPHIE

100

[MED 1994]: Frédéric Médioni, Nicolas Durand, Jean-Marc Alliot, « Algorithmes Génétiques et Programmation Linéaire appliqués à la résolution de conflits ATC », journal: Evolution Artificielle 94 (Toulouse).

[MEI 1997] : Amnon Meisels, Ehud Gudes and Gadi Solotorevsky, « Combining Rules and Constraints for Employee Timetabling » International Journal on Intelligence Systems 12, pp. 419-439, (1997).

[MEI 1999] : Amnon Meisels and Andrea Schaerf « Models and Representations of Employee timetabling Problems » 1999. URL: http://www.citeseer.ist.psu.edu/meisels99model.html.

[MER 2003]: Liam T.G. Merlot, Natashia Boland, Barry D. Hughes, and Peter J. Stuckey, « A Hybrid Algorithm for the Examination Timetabling Problem ». In Practice and Theory of Automated Timetabling IV Lecture Notes in Computer Science Volume 2740 pp.207-231 Gent, Belgium, August 2003.

[MIR 2001] : Mireille Palpant, Christian Artigues and Philippe Michelon « A heuristic for solving the frequency assignment problem ». LIA technical report, 255. 2001.

[NEM 1998]: G.L. Nemhauser et M. A. Trick, «Scheduling a major college basketball conference», Operations Research 46 (1), 1998.

[NIG 2000] : Romeo Sanchez Nigenda, XuanLong Nguyen & Subbarao Kambhampati, « AltAlt : Combining the Advantages of Graphplan and Heuristic State Search », In Proceedings of the International Conference on Knowledge-Based Computer Systems, pp. 409-421. Mumbai, India: NCST. 2000.

[NOR 1996] : Norman I. Badler, « MediSim : simulated medical corpsmen and casulties for medical forces planning and trainning » In Proceedings of the National Forum: Military Telemedicine On-Line Today Research, Practice, and Opportunities, 21-28. Los Alamitos, CA: IEEE Computer Society Press. 1996.

[ODI 1994] : A. Odijk Michiel, « Construction of periodic timetables Part II: An application ». Report 1994.

[OST 1982] : R. Ostermann, D. de Werra «Somme Experiments with a Timetabling System», OR Sepektrum 3, 1982.

[PAQ 2001] : F. Paquete, Carlos M. Fonseca, « A Study of Examination Timetabling with Multiobjective Evolutionary Algorithms », 2001. MIC'2001 - 4th Metaheuristics International Conference.

[PAR 1998] : Ariane Partouche, « Planification d'horaires de travail : Méthodologie, modélisation et résolution à l'aide de la Programmation Linéaire en Nombres Entiers et de la Programmation Par Contraintes », Thèse d'état université PARIS-DAUPHINE, 1998.

Page 116: Page de garde - univ-annaba.dzbiblio.univ-annaba.dz/wp-content/uploads/2014/09/... · Pr. Mohamed-Chaouki Batouche de l’université de Constantine qui m’a considérablement honoré

BIBLIOGRAPHIE

101

[PAU 2000] : Luis Paulo Reis, Eugénio Oliveira, « A Language for Specifying Complete Timetabling Problems » The 3rd International Conference on the Practice and Theory of Automated Timetabling (PATAT2000), Konstanze, Germany, August 2000.

[PEL 1999]: Christine Pelletier «Application des techniques d’aide à la décision à la planification sanitaire régionale». Doctorat thesis, JOSEPH FOURIER-Greonoble 1 University. October 1999.

[PES 2000] : Pesant, P. Galinier «Un modèle de programmation par contraintes pour la confection d’horaires d’infirmières» European Journal of Operational Research, 234: 156-167, 2000.

[QUA 1997] : D. Quagliarella and A. Vicini «Genetic algorithms and evoluation stratigies in design», Chapter Coupling genetic algorithms and gradient based optimization techniques, pp. 289-309, John Wiley and Sons, Sussex, England, 1997.

[REG 1998] : J. C. Régin, «Modeling and solving sports league scheduling with constraint programming» 1er Congrès de la société Française de Recherche Opérationnelle et Aide à la Décision (ROADEF) Paris, France, 1998.

[REG 1999] : J. C. Régin, «Sports scheduling and constraint programming», INFORMS, Cincinnati, mai 1999.

[ROS 1994] : Peter Ross, Dave Corne, Hsiao-Lan Fang, « Successful lecture Timetabling with Evolutioary Algorithms » in Applied Genetic and other Evolutionary Algorithms: Proceedings of the ECAI'94 Workshop, eds A.E.Eiben.

[SCH 1995a] : Schaerf A. et Schaerf M. «Local search techniques for high school timetabling». In Proceeding of the 1st international conference on the Practice and Theory of Automated Timetabling, pp. 313-323, 1995.

[SCH 1995b] : Schaerf A, « A survey of automated timetabling » Computer Science/ Department of Software Technology, Technical Report CS-R9567, 1995.

[SOC 2002] : Krzysztof Socha, Joshua Knowles, and Michael Sampels « A MAX-MIN Ant System for the University Course Timetabling Problem » Proceedings of 3rd International Workshop on Ant Algorithms (ANTS'2002), Brussels, Belgium, September 12-14, 2002.

[STA 1998] : Panagiotis Stamatopoulos, Efstratios Viglas, and Serafeim Karaboyas « Nearly optimum Timetable construction through CLP and intelligent search International Journal on Artificiel Intelligence Tools », Vol. 7, No. 4 (1998) 415-442, World Scientific Publishing Company. 1998.

[TAL 2001] : El-gazali Talbi, « Métaheuristiques pour l'optimisation combinatoire multi-objectif : état de l'art ». Lille : LIFL, 2001.

Page 117: Page de garde - univ-annaba.dzbiblio.univ-annaba.dz/wp-content/uploads/2014/09/... · Pr. Mohamed-Chaouki Batouche de l’université de Constantine qui m’a considérablement honoré

BIBLIOGRAPHIE

102

[TEL 1994] : Grant Telfar, « Generally Applicable Heuristics for Global Optimisation: An Investigation of Algorithm Performance for the Euclidean Traveling Salesman Problem » Master Theseis Victoria University of Wellington October 23, 1994.

[TER 1994] : B. J. Terril et R. J. Willis, «Scheduling the Australian state cricket season using simulated annealing», Journal of the Operational Research Society 45, pp. 276-280, 1994.

[THO 1996]: G. M. Thompson. «A simulated-annealing heuristic for shift scheduling using non-continuously available employees» Computers and Operations Research, 23(3):275–288, 1996.

[TRI 1980] : Tripathy A. «A Lagrangian Relaxation Approach to Course Scheduling», Journal of the Operational Research Society 31, 1980.

[VAL 2004] : Thomas Vallée et Murat Yildizoglu, « Présentation des algorithmes génétiques et de leurs applications en économie », Revue d'économie politique, vol 114(6), p.711-745, 2004.

[VIP 1992] : Vipin Kumar, « Algorithm for Contraint Satisfaction Problems : A survey » Appeared in AI Magazine 13(1) : 32-44, 1992.

[WEI 1994] : Georges Weil, Kamel Heus, Patrice François «Gymnaste : Aide à l'élaboration des roulements infirmiers. Du traitement des absences au management participatif» Informatique et Santé. Paris, Springer-Verlag France 1994.

[WER 1985]: De Werra D. «An Introduction to Timetabling», European Journal of Operational Research 40, 151-162. 1985.

[WHI 2001] : George M. White and Bill S. Xie, « Examination Timetables and Tabu Search with Longer-Term Memory » E. Burke and W. Erben (Eds.): PATAT 2000, LNCS 2079, pp. 85–103, 2001. Springer-Verlag Berlin Heidelberg, 2001.

[WRI 1994] : M. Wright, «Timetabling county cricket fixtures using a form of tabu search», Journal of the Operational Research Society 45, pp. 758-770, 1994.

[ZED 2004] : Abdallah ZEDAIRIA, Malika BABES « Une heuristique hybride pour résoudre un problème de planification dans un milieu hospitalier » Cisc'04 The International Conference on Complex Systems, September 6-8, 2004 Jijel, Algeria.