• Aucun résultat trouvé

Approche et cadre de modélisation pour l'évaluation de l'impact de perturbations sur un ordonnancement

N/A
N/A
Protected

Academic year: 2021

Partager "Approche et cadre de modélisation pour l'évaluation de l'impact de perturbations sur un ordonnancement"

Copied!
15
0
0

Texte intégral

(1)

HAL Id: hal-02415927

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

Submitted on 17 Dec 2019

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

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

Approche et cadre de modélisation pour l’évaluation de l’impact de perturbations sur un ordonnancement

Sara Himmiche, Pascale Marangé, Alexis Aubry, Jean-François Pétin

To cite this version:

Sara Himmiche, Pascale Marangé, Alexis Aubry, Jean-François Pétin. Approche et cadre de modéli-

sation pour l’évaluation de l’impact de perturbations sur un ordonnancement. 12ème Colloque sur la

Modélisation des Systèmes Réactifs, MSR’19, Nov 2019, Angers, France. �hal-02415927�

(2)

Approche et cadre de mod´elisation pour l’´evaluation de l’impact de perturbations sur un ordonnancement

Sara Himmiche 12 , Pascale Marang´ e 12 , Alexis Aubry 12 , and Jean-Fran¸cois P´ etin 12

1

Universit´ e de Lorraine, CRAN, UMR 7039, F-54506 Vandœuvre-l` es-Nancy

2

CNRS, CRAN, UMR 7039, France

{sara.himmiche, pascale.marange, alexis.aubry, jean-francois.petin}@univ-lorraine.fr

Abstract

L’ordonnancement de la production est un probl` eme majeur aussi bien dans le monde industriel que celui de la recherche th´ eorique. Ce probl` eme est g´ en´ eralement trait´ e dans le but de proposer des ordonnancements optimaux. Dans le cadre d’un environnement de production dynamique, la g´ en´ eration classique d’ordonnancements n’est plus suffisante.

La question importante qui se pose aujourd’hui est: Comment prendre en compte les contraintes de flexibilit´ e et d’agilit´ e qui caract´ erisent ces syst` emes et leurs perturbations, dans le choix de l’ordonnancement ` a ex´ ecuter ?

Cet article r´ epond ` a cette question en proposant une approche g´ en´ erique pour ´ evaluer la robustesse d’un ordonnancement face aux perturbations. L’approche propos´ ee est bas´ ee sur des mod` eles de syst` emes ` a ´ ev´ enements discrets stochastiques et une m´ ethode d’´ evaluation par model-checking, dans le but de d´ efinir une approche et un cadre de mod´ elisation modulaire. Plus pr´ ecis´ ement, les automates temporis´ es stochastiques sont utilis´ es dans le but de mod´ eliser le probl` eme d’ordonnancement sous perturbations et le model-checking statistique est utilis´ e pour ´ evaluer ces mod` eles et ainsi permettre le calcul d’un indicateur de robustesse qui sera transmis au d´ ecideur.

1 Introduction

La question de l’ordonnancement de la production est un probl` eme de d´ ecision important dans le secteur industriel. En effet, pour garantir les meilleures performances de production, le d´ ecideur doit trouver un ordonnancement adapt´ e ` a son syst` eme de production et aux contraintes associ´ ees. Un probl` eme d’ordonnancement de la production consiste g´ en´ eralement ` a (i) affecter les ressources de l’atelier aux op´ erations, n´ ecessaires ` a la fabrication de jobs , (ii) d´ efinir l’ordre de r´ ealisation des op´ erations sur les ressources et (iii) ´ eventuellement d´ efinir la date de d´ ebut et de fin de chaque op´ eration. L’ordonnancement obtenu doit r´ epondre aux contraintes de la gamme logique du produit et de l’atelier (contraintes de pr´ ec´ edence, non pr´ eemption des op´ erations, etc.) et aux objectifs de production.

Ce probl` eme est g´ en´ eralement trait´ e dans le but d’obtenir des solutions d’ordonnancement optimales notamment dans le domaine de la Recherche Op´ erationnelle. Cependant, la plupart de ces travaux consid` erent que l’environnement de production est stable et que les donn´ ees de production sont connues et certaines. Ce qui peut ˆ etre consid´ er´ e comme une hypoth` ese forte dans le cas des syst` emes de production, car en pratique, un syst` eme de production ´ evolue dans un environnement dynamique et doit faire face ` a de nombreuses perturbations qui peuvent survenir pendant la production.

Dans le milieu de la Recherche Op´ erationnelle, la question de l’ordonnancement sous per-

turbations a ´ et´ e abord´ ee en profondeur [5] [13]. L’objectif de ces travaux consiste ` a construire

des ordonnancements robustes qui garantissent certaines performances malgr´ e la pr´ esence des

(3)

perturbations. L’inconv´ enient de ces approches est qu’elles sont d´ edi´ ees ` a un type de probl` eme d’ordonnancement donn´ e. Au cours des derni` eres ann´ ees, des approches alternatives, dans le domaine des Syst` emes ` a ´ Ev` enements Discrets (SED), ont ´ emerg´ e pour mod´ eliser et r´ esoudre des probl` emes d’ordonnancement d´ eterministes. Les premiers r´ esultats montrent que les approches sont adaptables aux probl` emes d’atelier consid´ er´ es. De plus leurs caract´ eristiques en font des candidats prometteurs afin de prendre en compte des perturbations [21, 7, 12, 9, 18].

L’objectif de ce papier est de proposer une approche d’´ evaluation de la robustesse d’ordon- nancements soumis ` a des perturbations. Cette approche repose sur i) une mod´ elisation par automates temporis´ es stochastiques (ATS) ` a partir de patrons instanciables, ii) une v´ erification par model-checking d’une propri´ et´ e de robustesse.

Deux questions de recherche sont abord´ ees dans ce papier : Comment d´ evelopper des mod` eles adaptables et agiles bas´ es sur des (ATS) pour les probl` emes d’ordonnancement sous perturbations ? Comment utiliser ces mod` eles et les outils associ´ es afin d’´ evaluer le niveau de robustesse d’un ordonnancement dans un contexte perturb´ e ?

Ce papier est structur´ e comme suit. La section 2 pr´ esente le contexte du probl` eme. La section 3 est consacr´ ee ` a la pr´ esentation g´ en´ erale de l’approche propos´ ee et des hypoth` eses connexes. La section 4 se concentre sur la mod´ elisation bas´ ee sur les automates temporis´ es stochastiques. La section 5 se concentre sur la formalisation et l’´ evaluation de la robustesse ` a l’aide du model checking. La section 6 pr´ esente une application de l’approche sur une ´ etude de cas. Quelques conclusions et perspectives sont pr´ esent´ ees ` a la fin de ce papier.

2 Contexte: Ordonnancement sous perturbations et ro- bustesse

Un atelier est g´ en´ eralement d´ efini par un ensemble J de jobs j (N bJ) qui doivent ˆ etre trait´ es par un ensemble R de ressources r (N bR). Chaque job j est d´ efini par une gamme, regroupant les op´ erations o jk ` a r´ ealiser dans un ensemble O J j (o jk est la k i` eme op´ eration dans la gamme de j). Une dur´ ee d’ex´ ecution d jkr est associ´ ee ` a l’ex´ ecution de l’op´ eration o jk sur la ressource r. Dans ce papier, les ressources peuvent subir des d´ efaillances (mais ˆ etre r´ epar´ ees avec une dur´ ee d rep ). Les ateliers de production sont de natures diff´ erentes et peuvent engendrer des contraintes sur l’ordre d’ex´ ecution des op´ erations. Par exemple, le Flow Shop et le Job Shop ont des contraintes de pr´ ec´ edence sur les op´ erations d’un job (d´ efinies par sa gamme). Alors que pour l’Open Shop, les op´ erations d’un job peuvent ˆ etre ex´ ecut´ ees dans n’importe quel ordre.

Dans un ordonnancement d´ eterministe S i , les param` etres et les informations sont consid´ er´ es comme certains. A partir de l’ordonnancement d´ eterministe, le s´ equencement des op´ erations sur la ressource g´ en` ere des contraintes suppl´ ementaires ` a prendre en compte lors de l’´ evaluation, ainsi que le temps d’ex´ ecution (appel´ e ´ egalement Makespan) C max ref (S i ).

En pratique, des perturbations peuvent remettre en cause cet ordonnancement. En effet,

deux types de perturbations sont recens´ ees : i) Incertitudes et ii) Al´ eas. Les incertitudes sont

d´ efinies comme ´ etant la diff´ erence entre les informations pr´ evues et les informations r´ eelles

disponibles (incertitudes sur le volume de la demande, dur´ ee de l’op´ eration, etc.). Les al´ eas

sont d´ efinis par l’occurrence d’´ ev´ enements incontrˆ olables (panne de machine, commande ur-

gente, etc.). Pour int´ egrer les perturbations dans le probl` eme d’ordonnancement, diff´ erents

mod` eles existent dans la litt´ erature [17] : description born´ ees ou par sc´ enario, description prob-

abiliste ou mod´ elisation stochastique et description floue. Dans cet article, nous utiliserons la

description probabiliste en consid´ erant les perturbations comme des variables al´ eatoires suivant

une distribution de probabilit´ e. En effet, dans le cadre de l’industrie 4.0, les donn´ ees historiques

(4)

recueillies ` a partir de composants de l’atelier peuvent ˆ etre utilis´ ees pour identifier la distribution de probabilit´ e d’un param` etre perturb´ e. Cette identification n’entre pas dans le cadre de cet article et les distributions de probabilit´ es seront consid´ er´ ees parfaitement connues.

Face ` a ces perturbations, une approche consiste ` a construire des solutions d’ordonnancement robustes ce qui pose la question de l’´ evaluation de cette robustesse. Afin d’´ evaluer l’impact des perturbations, la notion de robustesse a ´ et´ e d´ efinie comme suit: un ordonnancement robuste doit maintenir certaines performances malgr´ e les perturbations et variations g´ en´ er´ ees par le syst` eme de production ou son environnement [5]. Pour ´ evaluer la robustesse, une m´ etrique doit ˆ etre d´ efinie. Dans ce cadre, nous utilisons la m´ etrique d´ efinie dans [6] qui permet d’´ evaluer le niveau de robustesse (ou niveau de service) comme : “la probabilit´ e qu’un crit` ere soit inf´ erieur (resp.

sup´ erieur) ou ´ egal ` a une valeur donn´ ee ”. Par exemple, si dans le probl` eme d’ordonnancement, le crit` ere consid´ er´ e est le Makespan, le niveau de robustesse est la probabilit´ e que le celui-ci soit inf´ erieur ou ´ egal ` a une deadline donn´ ee d´ efinie par le d´ ecideur. Formellement, cette m´ etrique est donn´ ee par l’´ equation (1), avec P r la probabilit´ e que le makespan C max de l’ordonnancement S i soumis ` a un ensemble de perturbations P ert soit inf´ erieur ou ´ egal ` a une deadline donn´ ee ˜ d..

RL S i , P ert, ˜ d

= P r C max (S i , P ert)d ˜

(1) Dans la communaut´ e de la Recherche Op´ erationnelle, [13] et [5] pr´ esentent des approches pour g´ en´ erer des ordonnancements robustes sous perturbations (incertitude sur la dur´ ee ou la demande, panne machine). Mˆ eme si les techniques bas´ ees sur la recherche op´ erationnelle s’av` erent performantes et efficaces pour l’ordonnancement sous perturbations, l’inconv´ enient principal est que ces approches et leurs mod` eles sont d´ edi´ ees ` a des probl` emes d’ordonnancement donn´ es (li´ es ` a l’atelier et ` a la perturbation consid´ er´ ee) ce qui les rends peu ´ evolutifs et non r´ eutilisables pour d’autres probl` emes.

Dans le domaine de la sˆ uret´ e et de la s´ ecurit´ e, les SED sont g´ en´ eralement utilis´ es pour ´ evaluer la fiabilit´ e, la disponibilit´ e, la maintenabilit´ e et le diagnostique. Ainsi, ils ont prouv´ e leur efficacit´ e dans la mod´ elisation des syst` emes stochastiques et dynamiques. Grˆ ace ` a ces atouts, les SED peuvent ˆ etre consid´ er´ es comme de bons candidats pour r´ esoudre le probl` eme d’ordonnancement en g´ en´ eral, comme dans [20], [18]. De plus, il existe plusieurs travaux qui explorent l’utilisation des SED stochastiques pour l’ordonnancement sous perturbations [1]. A ce titre,[15] proposent une mod´ elisation stochastique bas´ ee sur un langage de file d’attente pour ´ evaluer l’impact d’une perturbation sur les temps d’attente des op´ erations. Dans [16], les r´ eseaux de p´ etri temporis´ es sont utilis´ es afin de tenir compte du risque de d´ eviation d’un ordonnancement en pr´ esence d’´ ev´ enements incontrˆ olables. Dans nos pr´ ec´ edents travaux [10] [11], nous proposons une ap- proche d’´ evaluation de la robustesse sp´ ecifi´ ee pour les incertitudes sur les dur´ ees d’ex´ ecution des op´ erations ainsi que pour les prise en compte des pannes machines en utilisant les automates temporis´ es stochastiques et avons d´ emontr´ e la faisabilit´ e de l’approche. L’objectif est ici d’aller plus loin et de g´ en´ eraliser l’approche ` a tout type de perturbations.

L’hypoth` ese de recherche de cet article est que les mod` eles et outils des SED stochastiques peuvent ˆ etre utilis´ es pour ´ evaluer la robustesse d’une solution d’ordonnancements sous plusieurs perturbations et ind´ ependamment du type de l’atelier. En effet, nous proposons une approche g´ en´ erique qui permettra i) de prendre en compte des perturbations de diff´ erents types et ii) d’´ evaluer la robustesse d’un ensemble d’ordonnancements soumis ` a ces perturbations.

3 Processus d’´ evaluation de la robustesse - vue d’ensemble

L’objectif principal du processus d’´ evaluation est d’aider le d´ ecideur ` a choisir l’ordonnancement

“robuste” qui r´ epond aux contraintes de son atelier ainsi que la deadline ` a satisfaire. Les

(5)

donn´ ees d’entr´ ee fournies par le d´ ecideur sont, un ensemble d’ordonnancements d´ eterministes S i ` a ´ evaluer ainsi que le makespan de chaque ordonnancement C max ref (S i ), l’ensemble de pertur- bations P ert ` a consid´ erer et la deadline ˜ d ` a satisfaire.

Le processus d’´ evaluation propos´ e est bas´ e sur deux ´ etapes essentielles. La premi` ere consiste

`

a mod´ eliser le comportement des ordonnancements et celui des perturbations. Cette ´ etape est importante pour repr´ esenter les caract´ eristiques du probl` eme ainsi que les diff´ erentes interac- tions qui existent entre ces ´ el´ ements.

La deuxi` eme ´ etape est l’´ evaluation de la robustesse. L’objectif de cette ´ etape est la formulation de la mesure de robustesse donn´ ee dans l’´ equation (1). La sortie du processus d’´ evaluation est alors l’ensemble des niveaux de robustesse RL i S i , P ert, ˜ d

qui sont associ´ es ` a chaque ordon- nancement et aux perturbations consid´ er´ ees. ces niveaux de robustesse sont remis au d´ ecideur afin qu’il puisse choisir l’ordonnancement ` a ex´ ecuter dans l’atelier.

Approche d’évaluation Décideur

Step1:

Modélisation des ordonnancements

et des perturbations

Step2:

Evaluation de la robustesse des ordonnancements

Ordonnancements

𝑆

"

, 𝐶

%&'()*

(𝑆

"

)

Perturbations (𝑃𝑒𝑟𝑡)

Niveau de robustesse

𝑅𝐿

"

(𝑆

"

, 𝑃𝑒𝑟𝑡, 𝑑4)

Deadline 𝑑4

Patron (𝑃𝑒𝑟𝑡) Patron (𝑆

"

, 𝑜

67

) Patron (𝑆

"

, 𝑟)

Figure 1: Processus d’´ evaluation de la robustesse

4 Etape 1 : mod´ ´ elisation du probl` eme

Pour mod´ eliser le comportement des ordonnancements et des perturbations, les mod` eles doivent tenir compte des caract´ eristiques dynamiques telles que la communication entre les ´ el´ ements de l’atelier, le temps d’ex´ ecution et le comportement probabiliste des perturbations. Le langage choisi dans cet article est celui des automates temporis´ es stochastiques (ATS) (1). En effet, il s’agit d’une extension des automates temporis´ es bien connus [2] qui s’enrichit par le partage de variables, les ´ ev´ enements synchronisant et les caract´ eristiques probabilistes [14].

efinition 1. Formellement, un automate stochastique temporis´ e est pr´ esent´ e comme le n- uplet A = (L, V , E, C, Inv, P , T , L m , l 0 , v 0 ) avec :

L est un ensemble fini de localit´ es (not´ ees par des sommets).

V est un ensemble fini de variables.

E est un ensemble fini d’´ ev´ enements synchronisant avec E = E

u

E

u¯

.

E

u

est un ensemble fini d’´ ev´ enements urgents. Pour ´ eviter que l’automate reste dans une localit´ e, alors qu’une transition peut ˆ etre franchie, un ´ ev´ enement est d´ eclar´ e urgent.

E

u¯

est un ensemble fini d’´ ev´ enements non urgents.

C est un ensemble fini d’horloges.

Inv est un ensemble d’invariants (not´ es dans les localit´ es).

(6)

P est un ensemble de probabilit´ es: i) discr` ete sur l’ensemble des transitions (` a partir d’une localit´ e, une transition peut conduire dans diff´ erentes localit´ es l

i

avec des probabilit´ es p

i

o` u P

p

i

= 1 (not´ e par des arcs en pointill´ es). ii) continue sur des variables d’automates (la condition de franchissement d’une transition est d´ efinie de fa¸ con al´ eatoire par une distribution de probabilit´ es).

T est un ensemble fini de transitions (not´ ees par des arcs) (l, e, g, m, l

0

) ∈ (L × E × G × M × L) o` u l et l

0

sont respectivement les deux localit´ es d´ ebut et arriv´ ee. Sur une transition trois ´ el´ ements sont d´ efinis: i) Une garde (condition sur les variables, not´ ees entre crochets [] ) gG, ii) Une mise ` a jour (sur les variables ou les horloges, not´ ee sous la transition) mM , iii) L’´ ev´ enement de synchronisation eE (not´ e en dessous des gardes).

L

m

L est l’ensemble des localit´ es marqu´ ees (not´ ees par un double sommet).

l

0

L est la localit´ e initial de l’automate.

v

0

est le vecteur d’initialisation des variables.

Pour mod´ eliser ` a la fois les ordonnancements et les perturbations, nous proposons une ap- proche modulaire bas´ ee sur plusieurs patrons. D’une part, l’ordonnancement est mod´ elis´ e avec deux patrons, le premier pr´ esentant le comportement de l’op´ eration ` a ex´ ecuter et le deuxi` eme, le comportement de la ressource qui ex´ ecute l’op´ eration. D’autre part, les perturbations sont repr´ esent´ ees par deux patrons qui mod´ elisent soit le comportement d’une incertitude soit d’un al´ ea. Chaque mod` ele doit ˆ etre instanci´ e en fonction des caract´ eristiques de l’atelier, du nombre d’op´ erations et de ressources, des caract´ eristiques et du nombre de perturbations.

4.1 Mod´ elisation de d’ordonnancement

L’ex´ ecution d’un ordonnancement est mod´ elis´ ee par deux patrons (op´ eration, ressource)

´ echangeant des informations.

Le patron d’op´ eration (fig.2a) mod´ elise le comportement d’une op´ eration o jk . A partir de la localit´ e Idle, lorsque la garde prenant en compte les contraintes de pr´ ec´ edence de la gamme du job, les contraintes de la s´ equence sur la ressource et la disponibilit´ e du job ( [P reOpJ is completed && P reOpR is completed && Job j is available]) est satisfaite, la transition est franchie vers la localit´ e Execution. La v´ erification de la disponibilit´ e du job permet de garantir le non chevauchement de plusieurs op´ erations d’un mˆ eme job et une ex´ ecution sˆ ure de l’ordonnancement d´ eterministe donn´ e. De plus lorsque la garde est satisfaite, l’op´ eration o jk se synchronise avec la ressource r qui lui est allou´ ee en utilisant l’´ ev´ enement de requˆ ete (Req(r)). La disponibilit´ e du job est alors mise ` a jour et l’identifiant de l’op´ eration est sauve- gard´ e (op´ eration:= o jk ), pour garder en m´ emoire l’op´ eration en cours d’ex´ ecution. Dans la localit´ e Execution, le mod` ele op´ eration attend l’occurrence de l’´ ev´ enement de synchronisa- tion (Comp(o jk )), indiquant la fin de l’ex´ ecution de l’op´ eration et franchit la transition vers sa localit´ e marqu´ ee Completed en mettant ` a jour l’´ etat de fin d’ex´ ecution de l’op´ eration (OpComp:=true) et de la disponibilit´ e du job de celle-ci.

Le patron de ressource (fig.2b) mod´ elise le comportement d’une ressource r. Dans la lo- calit´ e Idle initiale, le mod` ele Ressource r attend une requˆ ete d’ex´ ecution (Req(r)). Lors du franchissement de la transition, l’horloge locale est initialis´ ee ` a z´ ero (x r := 0) et l’identifiant de l’op´ eration est enregistr´ ee dans la variable o jk . Dans la localit´ e Executing Op, la ressource lance l’ex´ ecution de l’op´ eration. L’invariant (x rd jkr ) assure que la dur´ ee ne d´ epassera pas d jkr et lorsque la valeur de la dur´ ee est atteinte, la garde [x r == d jkr ] est alors satisfaite et l’´ ev´ enement de synchronisation Comp(o jk ) se d´ eclenche permettant ` a la ressource de retourner

`

a sa localit´ e initiale Idle.

(7)

Idle Execution Completed [P reOpJ is completed &&

P reOpR is completed &&

Job j is available]

Req(r) Job j is unavailable;

operation:= o

jk

;

Comp(o

jk

) Job j is available;

OpComp:=True;

(a) Patron d’une op´ eration

Idle

x

r

d

jkr

Executing Op Req(r)

clock x

r

:= 0; o

jkr

:= operation;

[ x

r

== d

jkr

] Comp(o

jk

)

(b) Patron d’une ressource

Figure 2: Patrons de mod´ elisation d’un ordonnancement

Les patrons pr´ esent´ es (fig.2) partagent les informations en utilisant des ´ ev´ enements de syn- chronisation (Req, Comp) urgents, et des variables partag´ ees (operation). La prochaine partie d´ etaille la mod´ elisation des perturbations et leur int´ egration avec les patrons d’ordonnancement.

4.2 Mod´ elisation des perturbations

Nous faisons l’hypoth` ese que les perturbations consid´ er´ ees sont ind´ ependantes. Toute pertur- bation g´ en` ere une variation sur la dur´ ee d’ex´ ecution des op´ erations et donc sur le Makespan. La dur´ ee d’ex´ ecution d’une op´ eration affect´ ee par des perturbations, est exprim´ ee par (2). Chaque dur´ ee d’ex´ ecution de l’op´ eration d jkr est d´ efinie par une dur´ ee d’ex´ ecution de r´ ef´ erence d ref jkr donn´ ee par les donn´ ees d´ eterministes et une somme de fluctuations li´ ees ` a l’ensemble de per- turbations (P ert) consid´ er´ ees comme des incertitudes (U ) ou des al´ eas (H).

De plus on distinguera les incertitudes li´ ees ` a la dur´ ee d’ex´ ecution (U ex ) et les incertitudes li´ ees ` a l’occurrence des al´ eas (U H ). Les incertitudes li´ ees aux dur´ ees d’ex´ ecution sont la somme des diff´ erentes fluctuations g´ en´ er´ ees par chaque incertitude u appartenant ` a l’ensemble U ex ( P N bU

ex

u=1 δd U jkr

uex

). Pour les al´ eas, nous faisons l’hypoth` ese que chaque op´ eration peut ˆ etre af- fect´ ee par un ou plusieurs al´ eas. Chaque al´ ea hH est li´ e ` a: une dur´ ee dH jkr h qui refl` ete le retard g´ en´ er´ e et une probabilit´ e p (h, o jk ) qui repr´ esente la probabilit´ e que l’al´ ea h impacte l’op´ eration o jk . ` A partir de cette probabilit´ e, une variable bool´ eenne H jk h peut ˆ etre construite avec H jk h = 1 si l’op´ eration o jk est effectivement impact´ ee par l’al´ ea h. Les retards dus aux al´ eas de H peuvent donc ˆ etre ´ ecrits comme P N bH

h=1 H jk h dH jkr h .

Le fait que chaque al´ ea soit li´ e ` a une dur´ ee permet de prendre en compte ´ egalement des incertitudes sur cette dur´ ee repr´ esent´ ees par l’ensemble U h (avec U H = S

h∈H

U h ). En effet, nous consid´ erons que la dur´ ee dH jkr h g´ en´ er´ ee par l’al´ ea est d’abord une dur´ ee de r´ ef´ erence connue dH jkr ref ,h et une somme de fluctuations P N bU

h

u=1 δd U jkr

uh

dues aux incertitudes sur cette dur´ ee comme

pour les incertitudes d’ex´ ecution. Au final, la dur´ ee d’ex´ ecution d jkr permettant de prendre en

(8)

compte les perturbations peut s’´ ecrire comme dans l’´ equation (2).

d jkr = d ref jkr +

N bU

ex

X

u=1

δd U

ex u

jkr +

N bH

X

h=1

H jk h ×

dH jkr ref,h +

N bU

h

X

u=1

δd U

h u

jkr

 (2)

Les variables de l’expression (2) sont des variables al´ eatoires qui suivent des distributions de probabilit´ e connues (seule d ref jkr est consid´ er´ ee comme d´ eterministe et statique). Toutes les fluctuations exprim´ ees par la variable δd sont consid´ er´ ees comme appartenant ` a des intervalles [δd , δd + ]. Suite ` a la description donn´ ee des perturbations (2), nous pr´ esentons dans les sous- sections suivantes une approche de mod´ elisation adapt´ ee.

4.2.1 Patron de mod´ elisation d’une incertitude

Les patrons pr´ esent´ es dans (fig. 3a) proposent une mod´ elisation du comportement des pertur- bations qui vient s’ins´ erer dans le mod` ele d’initialisation (fig. 4).

Le patron pr´ esent´ e (fig.3a) permet de mod´ eliser le comportement des incertitudes que ce soit U ex ou U H . Il permet la repr´ esentation de la distribution de probabilit´ e discr´ etis´ ee suivie.

Suivant les notations donn´ ees dans l’expression 2, on note δd le param` etre de la dur´ ee associ´ e

`

a une variable al´ eatoire discr` ete X d . Le pas de discr´ etisation de la distribution de probabilit´ e est t et l repr´ esente le compteur d’it´ eration ex´ ecut´ ee. L’id´ ee de ce mod` ele est d’augmenter it´ erativement, la valeur de δd dans l’intervalle [δd , δd ].

Depuis la premi` ere localit´ e de (fig.3a), δd est initialis´ e ` a δd et l est initialis´ ee ` a z´ ero (l := 0).

En arrivant ` a la localit´ e Prob, deux transitions sont possibles en fonction de la satisfaction de leurs gardes. La premi` ere garde mod´ elise le cas o` u δd est inf´ erieur ` a δd + ([δd < δd + ]). Lorsque cette garde est vraie, deux ´ evolutions probabilistes sont possibles. Avec la probabilit´ e p(l) la localit´ e finale EndProb est atteinte et δd garde sa derni` ere la valeur. Sinon, avec la probabilit´ e 1 − p(l), l’automate retourne ` a la localit´ e Prob avec mise ` a jour du param` etre d’it´ eration l ` a l + 1 ainsi que la mise ` a jour en δd = δd + t de sorte ` a augmenter la valeur de δd d’un pas t de discr´ etisation. De l` a, un autre pas de discr´ etisation est ex´ ecut´ ee. La probabilit´ e que X d = δd est la probabilit´ e de boucler dans le patron l − 1 fois et de sortir de la boucle lors de la l-i` eme it´ eration.

Si la fluctuation maximale est atteinte ([δd == δd + ]), l’automate ´ evolue directement vers la localit´ e EndProb et la valeur du δd devient δd + .

Idle Prob

EndProb δd := δd

;

l := 0

[δd < δd

+

]

[δd == δd

+

] 1 − p(l) l := l + 1;

δd := δd + t

p(l)

(a) Patron d’une incertitude

Idle

NotImpacted

Impacted

1 − p(h, o

jk

) H

hjk

:= 0 p(h, o

jk

) H

jkh

:= 1

(b) Patron d’un al´ ea

Figure 3: Patrons stochastiques de perturbations

(9)

Les caract´ eristiques recueillies aupr` es du d´ ecideur permettent de d´ efinir les perturbations comme des variables al´ eatoires. Une variable al´ eatoire est li´ ee ` a une distribution de probabilit´ e connue ayant une fonction de r´ epartition d´ efinie (F X (x)). Nous pouvons d´ emontrer que p(l) peut ˆ etre calcul´ ee en fonction de F X (x) comme dans la proposition (1).

Proposition 1. la valeur p(l) est exprim´ ee en fonction d’une distribution de probabilit´ e tronqu´ ee dans l’intervalle [x min , x max + 1[.

 

 

p(0) = F F

X

(x

min

+1)−F

X

(x

min

)

X

(x

max

)−F

X

(x

min

) f or l = 0 p(l) = F F

X

(x

min

+l+1)−F

X

(x

min

+l)

X

(x

min

+l)−F

X

(x

min

+l−1) . 1−p(l−1) p(l−1) f or l ≥ 1

(3)

4.2.2 Patron de mod´ elisation d’un al´ ea

Le patron (fig. 3b) repr´ esente le comportement d’un al´ ea. Pour rappel, chaque op´ eration o jk

peut ˆ etre impact´ ee par un al´ ea h de H avec une probabilit´ e connue p(h, o jk ). Depuis la localit´ e Idle, (i) soit l’op´ eration est affect´ ee avec la probabilit´ e p(h, o jk ) et le patron passe ` a la localit´ e Impacted apr` es que la variable d’al´ ea (H jk h ) soit mise ` a 1; (ii) soit l’op´ eration n’est pas impact´ ee par l’al´ ea avec la probabilit´ e 1 − p(h, o jk ) et le patron passe dans la localit´ e NotImpacted apr` es que la variable H jk h ait ´ et´ e mise ` a 0.

4.3 Initialisation des perturbations

Le mod` ele d’initialisation permet l’int´ egration des diff´ erentes perturbations (fig.3a) et (fig.3b) dans l’approche de mod´ elisation sans affecter les autres mod` eles. A partir de la localit´ e initiale Begin Init, deux ´ evolutions sont possibles. Si la perturbation est consid´ er´ ee, la valeur du bool´ een P ert i est ` a 1 ([P ert i == 1]). Le patron de perturbation est ensuite associ´ e au mod` ele, qu’il s’agisse d’une incertitude (fig.3a) ou d’un al´ ea (fig.3b). Lorsque le patron de perturbation termine son ex´ ecution, le mod` ele ´ evolue vers la localit´ e End Init en mettant ` a jour le nombre de perturbations consid´ er´ ees au moyen du compteur c (c := c + 1). Si la perturbation n’est pas prise en compte, la valeur de P ert i est ` a 0 ([P ert i == 0]) et le mod` ele passe directement ` a la localit´ e End Init.

Begin Init

Patrons de perturbations (fig.3)

End Init

[P ert

i

== 1]

[P ert

i

== 0]

c := c + 1

Figure 4: Mod` ele d’initialisation des perturbations

A partir des donn´ ees fournies par le d´ ecideur au processus d’´ evaluation (fig.1), une proc´ edure

de prise en compte des perturbations est d´ efinie :

(10)

• La premi` ere ´ etape permet de d´ efinir les perturbations consid´ er´ ees P ert (P ert = {U , H }).

Le nombre de chaque type de perturbations N bU ex , N bH et N bU H = P

h∈H

N bU h peut ˆ

etre calcul´ e.

• La deuxi` eme ´ etape consiste ` a instancier les mod` eles de perturbations. Dans le cas d’incertitudes, le param` etre δd et ses bornes δd et δd + sont instanci´ es selon le type de dur´ ee impact´ ee par l’incertitude (dur´ ee d’ex´ ecution, dur´ ee de r´ eparation, etc.). La probabilit´ e du mod` ele p(l) est ´ egalement calcul´ ee en fonction des donn´ ees probabilistes fournies par le d´ ecideur et des donn´ ees de l’atelier. Dans le cas des al´ eas, la probabilit´ e p(h, o jk ) est ´ egalement d´ etermin´ ee en fonction des donn´ ees d’entr´ ee.

• La derni` ere ´ etape consiste ` a instancier les mod` eles en fonction des donn´ ees de l’ordon- nancement (nombre d’op´ erations et de ressources) ainsi que le nombre de perturbations consid´ er´ ees.

Le nombre de mod` eles de perturbation ` a instancier, d´ epend du nombre d’op´ erations N bOp, et du nombre de perturbations. Le nombre de mod` eles (N bM) n´ ecessaires pour traiter le probl` eme de perturbations peut ˆ etre d´ eduit de (2) et est exprim´ e par (4).

N bM = N bOp × N bU ex + N bH + N bU H

(4)

4.4 Int´ egration des perturbations ` a l’ordonnancement

L’initialisation des mod` eles de perturbations permet l’initiation des diff´ erentes fluctuations g´ en´ er´ ees par les perturbations. Le lien entre les mod` eles de perturbations et ceux d’ordon- nancement se fait en ajoutant une transition au mod` ele d’op´ eration (fig.2a). En effet, la localit´ e initiale devient la localit´ e nomm´ ee Waiting o` u le mod` ele op´ eration attend que toutes les perturbations soient initialis´ ees, c’est-` a-dire que la garde [c == N bM] soit v´ erifi´ ee. Ensuite, la dur´ ee est mise ` a jour en tenant compte de l’expression (2). Apr` es avoir franchi la transition, le patron d’op´ eration est ex´ ecut´ e comme expliqu´ e dans la figure ( 2a).

Waiting

Operation Pattern (fig.2a) [c == N bM]

d

jkr

= d

refjkr

+ P

N bU ex

u=1

δd

U exjkru

+ P

N bH h=1

H

jkh

×

dH

jkrref,h

+ P

N bU h u=1

δd

U hjkru

Figure 5: Consid´ eration des perturbations dans le mod` ele d’op´ eration

Cette section d´ ecrit la phase de mod´ elisation du processus d’´ evaluation. La phase suivante du processus d’´ evaluation consiste ` a v´ erifier la propri´ et´ e qui permettra de mesurer les niveaux de robustesse.

5 Etape d’´ ´ evaluation de la robustesse

L’´ evaluation du niveau de robustesse d´ efini dans l’expression (1) est v´ erifi´ e en utilisant un

model-checker. Dans le domaine SED, un model-checker est g´ en´ eralement utilis´ ee pour v´ erifier

si un mod` ele satisfait ou non certaines propri´ et´ es. Ces propri´ et´ es peuvent ˆ etre exprim´ ees dans

(11)

plusieurs langages logiques (CTL, PCTL, etc.). Pour ´ evaluer la robustesse, nous utilisons une extension du model-checking pour les mod` eles STA qui sont exprim´ ees en logique PCTL (Probabilistic Computation Tree Logic). Ce langage est une extension probabiliste de CTL (Computation Tree Logic) [3]. Ce type de logique permet d’exprimer des propri´ et´ es telle que

“Quelle est la probabilit´ e que le mod` ele soit ` a l’´ etat A, dans l’intervalle pr´ ecis[0,T]? ”. Cette question peut ˆ etre transcrite en PCTL comme dans l’expression: P =?[F ≤ T “A”]. L’op´ erateur P =? exprime l’´ evaluation de probabilit´ e P r, l’op´ erateur F signifie qu’il existe ´ eventuellement un chemin o` u l’automate est ` a l’´ etat ”A”.

Pour ´ evaluer le niveau de robustesse d’un ordonnancement, la question pos´ ee ci-dessus devient:

”Quelle est la probabilit´ e que tous les chemins m` enent ` a un ´ etat global o` u tous les mod` eles d’op´ erations sont dans leur localit´ e marqu´ ee Completed avec une dur´ ee qui est inf´ erieure ou

´ egale ` a une deadline donn´ ee d”. En utilisant la logique PCTL, la formule (1) peut ˆ ˜ etre exprim´ ee comme la propri´ et´ e (5) o` u le Makespan C max (S i , P ert) est donn´ e par la valeur de l’horloge globale (clk).

P =?[F ≤ d ˜ “All operations o jk are Completed”] (5) Plusieurs m´ ethodes et outils existent pour v´ erifier les mod` eles stochastiques. Deux familles peuvent ˆ etre distingu´ ees : le Model Checking num´ erique (NMC) et le Model Checking statistique (SMC). D’une part, les NMC utilisent des m´ ethodes d’´ evaluation exactes afin de d´ eterminer la valeur de probabilit´ e d’une propri´ et´ e. Ce type de v´ erification garantit la pr´ ecision de la solution donn´ ee, mais il n’est pas adapt´ e aux probl` emes de grande taille. En r´ ealit´ e, lorsque la taille du syst` eme ` a v´ erifier est relativement grande, le NMC fait face ` a un probl` eme d’explosion combinatoire.

D’autre part, le SMC g´ en` ere diff´ erents chemins d’ex´ ecution et v´ erifie, apr` es chaque ex´ ecution, la satisfaction d’une propri´ et´ e ainsi que les r´ esultats statistiques associ´ es (comme pour la sim- ulation Monte Carlo). Ceci ´ evite l’explosion combinatoire [4]. Dans cette optique, nous avons choisi de l’utiliser pour ´ evaluer les niveaux de robustesse des ordonnancements. L’approche par solution SMC utilise la m´ ethode de l’intervalle de confiance afin de se rapprocher de la valeur de la probabilit´ e. Un intervalle de confiance (IC) est un intervalle estim´ e ayant une pr´ ecision sp´ ecifi´ ee et un niveau de confiance α tel que, la probabilit´ e RL i appartient ` a l’intervalle [RL i; RL i + ] avec une chance de 100 × (1 − α)% [19].

Dans la section suivante, nous combinons les mod` eles STA pr´ esent´ es dans la section pr´ ec´ edente avec la m´ ethode SMC pour ´ evaluer les niveaux de robustesse dans un intervalle pr´ ecis avec un niveau de confiance de α = 2 et une pr´ ecision = 0.01. Le Model-Checker SMC

´ evaluera la formule PCTL (5) en ex´ ecutant les N it´ erations.

6 Etude de cas

L’approche pr´ esent´ ee dans cet article est exp´ eriment´ ee sur une ´ etude de cas acad´ emique

pr´ esent´ ee dans [8]. Le but de l’exp´ erimentation est de d´ emontrer la faisabilit´ e de l’approche

et de mettre en œuvre le processus d’´ evaluation (fig. 1). Le syst` eme de production ´ etudi´ e

est un Job-Shop Flexible avec 8 jobs et 7 ressources. L’atelier comprend un tour CNC (M1),

une rectifieuse (M2), trois fraiseuses (M3 ` a M5) et deux fours (M6 et M7). Le d´ ecideur a

le choix entre trois ordonnancements S i = {S 1 , S 2 , S 3 }. Les donn´ ees d´ eterministes sont ex-

traites des diagrammes de Gantt (fig.6) : i) Makespans d´ eterministes (C max ref ) et ii) les dur´ ees

de r´ ef´ erence (dur´ ees d’ex´ ecution(d ref jkr ) et de r´ eparation ((d ref rep = 7)). Les perturbations prises

en compte par le d´ ecideur sont : i) une incertitude sur les dur´ ees d’ex´ ecution et de r´ eparation

(12)

S2 1 2 3 4 5 6 7 8 9101112131415161718192021222324252627282930313233343536373839

R1 O11 o62 o82 o42 o65 o24 o67

R2 O41 o52 o72 o44 o66

R3 o21 o12 o83 o33 o85

R4 o61 o51 o23 o43

R5 o71 o81 o31 o64 o74

R6 o63 o13 o53 o84 o75

R7 o22 o32 o73 o25

S1 1 2 3 4 5 6 7 8 91011121314151617181920212223242526272829303132333435363738

R1 o11 o62 o82 o42 o24 o65 o67

R2 o41 o72 o52 o66 o44

R3 o61 o81 o23 o85

R4 o21 o12 o74 o64 o33

R5 o71 o31 o51 o83 O43

R6 o22 o13 o73 o53 o25

R7 o32 o63 o84 o75

S3 1 2 3 4 5 6 7 8 910 11 1213 14 15 1617 18 1920 21 22 2324 25 2627 28 29 3031 32 3334 35 36 3738 39 4041 42

R1 o11 o82 o42 o62 o24 o65 o67

R2 o41 o52 o72 o44 o66

R3 o21 o61 o23

R4 o81 o12 o83 o33 o85

R5 o51 o31 o71 o43 o64 o74

R6 o22 o13 o53 o63 o73

R7 o32 o84 o25 o75

Figure 6: Ordonnancements d´ eterministes ` a ´ evaluer

( δd = −25%d ref et δd + = +25%d ref ). ii) un al´ eas de pannes machines. Le d´ ecideur fixe la deadline souhait´ ee ` a ˜ d = 110%C max ref (S i ).

6.1 Mod´ elisation de l’´ etude de cas

Les perturbations qui sont habituellement trait´ ees, dans la litt´ erature, sont des incertitudes sur les dur´ ees (notamment sur les dur´ ees d’ex´ ecution des op´ erations) et les pannes ressources.

Pour d´ emontrer l’applicabilit´ e de notre approche et de notre proc´ edure, nous consid´ erons que l’ensemble de perturbations est P ert = {u 1 , u 2 , h}, avec u 1 l’incertitude sur la dur´ ee d’ex´ ecution des op´ erations, u 2 l’incertitude sur la dur´ ee des r´ eparations et h l’occurrence de pannes sur les ressources. L’application de l’expression (2) d´ efinit la dur´ ee d jkr dans (6).

d jkr = d ref jkr + δd u jkr

1

+ H hjk [dH jkr ref ,h + δd U

h u2

jkr ] (6)

Les mod` eles de perturbations (fig.3a) sont instanci´ es en fonction des param` etres des perturba- tions. Dans un premier temps, pour l’incertitude sur la dur´ ee d’ex´ ecution u 1 , on consid` ere que la fluctuation est not´ ee δd jkr . Cette fluctuation suit une loi de probabilit´ e exponentielle tronqu´ ee dans l’intervalle donn´ e [δd jkr , δd + jkr ] et ainsi les bornes de la dur´ ee d’ex´ ecution qui d´ efinies par d min jkr = d ref jkrδd jkr and d max jkr = d ref jkr + δd + jkr . Dans un deuxi` eme temps, l’incertitude sur la dur´ ee de r´ eparation u 2 est trait´ ee de la mˆ eme mani` ere que celle des dur´ ees d’ex´ ecution.

Nous notons la fluctuation de la dur´ ee de la r´ eparation δd rep donn´ ee dans un intervalle connu [δd rep , δd + rep ]. Pour les deux incertitudes, les valeurs de p(l) sont obtenues en consid´ erant la fonction de r´ epartition de la distribution exponentielle dans (3). Le mod` ele des al´ eas (fig.3b) est instanci´ e pour h. Chaque op´ eration a une probabilit´ e p(h, o jk ) d’ˆ etre affect´ ee par la d´ efaillance de la ressource. Cette probabilit´ e est connue et donn´ ee par le d´ ecideur. Dans notre cas, p(h, o jk ) est ´ egale ` a 3%. Cette valeur est choisie pour exprimer le fait, qu’en moyenne, une op´ eration est affect´ ee par une d´ efaillance dans l’horizon de l’ordonnancement. Dans ce cas, le nombre de mod` eles n´ ecessaires pour traiter toutes les perturbations est N bM = 35 × (1 + 1 + 1 × 1) = 105 mod` eles, sachant que N bU ex = 1, N bH = 1 et N bU H = 1.

6.2 Evaluation de la robustesse ´

La deuxi` eme ´ etape du processus d’´ evaluation est l’´ evaluation de la robustesse des ordonnance-

ments, ` a partir de la section (5) on obtient la formule PCTL qui permet d’´ evaluer la ro-

(13)

bustesse d’un ordonnancement (expression. 5). L’impl´ ementation de cette formule dans le Model-Checker UppAal SMC (7) permet l’´ evaluation des mod` eles STA impl´ ement´ es.

P r[<= ˜ d](<> f orall(i : int[1, N bOp])Operation(i).Completed) (7) La formule permet d’´ evaluer la probabilit´ e que toutes les op´ erations soient dans leur localit´ e marqu´ ee Completed dans une dur´ ee totale d’ex´ ecution inf´ erieure ou ´ egale ` a la deadline ˜ d = 110%C max ref (S i ) (respectivement 42, 43 et 46 pour S 1 , S 2 et S 3 .

6.3 Impl´ ementation des sc´ enarios

Dans cet article, nous ´ etudions cinq sc´ enarios avec diff´ erentes perturbations. Chaque sc´ enario traite une ou plusieurs perturbations. Pour chaque sc´ enario, les seuls changements dans les mod` eles sont les valeurs des bool´ eens P ert i qui d´ ecident si la perturbation est consid´ er´ ee (P ert i = 1) ou non (P ert i = 0).

• Sc´ enario 1 : incertitude sur la dur´ ee d’ex´ ecution (u 1 = 1, h = 0, u 2 = 0),

• Sc´ enario 2 : al´ ea dˆ u ` a la panne de ressources (u 1 = 0, h = 1, u 2 = 0),

• Sc´ enario 3 : al´ ea dˆ u ` a la panne de ressources et incertitudes sur la dur´ ee des r´ eparations(u 1 = 0, h = 1, u 2 = 1),

• Sc´ enario 4 : incertitudes sur la dur´ ee d’ex´ ecution des op´ erations et al´ ea li´ e ` a la panne de ressources (u 1 = 1, h = 1, u 2 = 0).

• Sc´ enario 5 : Incertitudes sur la dur´ ee d’ex´ ecution, avec al´ ea dˆ u ` a la panne de ressources et incertitudes sur la dur´ ee de la r´ eparation (u 1 = 1, h = 1, u 2 = 1).

Les mod` eles et propri´ et´ es pr´ esent´ es dans les sections ci-dessus (4, 5) sont impl´ ement´ es dans l’outil UppAal SMC. Les param` etres du Model-Checker de mod` ele sont un niveau de confiance de α = 2 et une pr´ ecision = 0.01.

6.4 Exp´ erimentation et discussion

Pour les cinq sc´ enarios, nous rassemblons les diff´ erents niveaux de robustesse obtenus dans le tableau 1. Grˆ ace ` a ces informations, le d´ ecideur peut interpr´ eter les r´ esultats et choisir un ordonnancement ` a ex´ ecuter dans l’atelier. A titre d’exemple, pour le troisi` eme sc´ enario, l’ordonnancement S 2 peut ˆ etre choisi car il pr´ esente le niveau de robustesse le plus grand. Mais il a surtout l’avantage de pr´ esenter un bon compromis robustesse/Makespan. Le mˆ eme constat peut ˆ etre fait sur l’ensemble des sc´ enarios.

Dans cette application, le d´ ecideur avait trois ordonnancements d´ eterministes avec des

makespans d´ eterministes proches C max ref (S i ) mais des s´ equences diff´ erentes. Notre approche

a permis d’´ evaluer les diff´ erentes perturbations qui peuvent se produire dans ces ordonnance-

ments et de d´ eterminer celui qui les absorbe le mieux. Cela donne ´ egalement des informa-

tions sur la r´ esistance des ordonnancements ` a une combinaison de perturbations. Ce type

d’information est important dans le processus de prise de d´ ecision, elle permet une prise en

compte pr´ eventive d’´ eventuelles perturbations. L’adaptabilit´ e de l’approche est d´ emontr´ ee par

les diff´ erents sc´ enarios ´ etudi´ es ` a partir d’un seul et mˆ eme probl` eme, ce qui donne au d´ ecideur

la libert´ e de combiner et d’´ evaluer diff´ erentes perturbations avec des deadline diff´ erentes . En

ajoutant d’autres perturbations qui ont un impact sur la dur´ ee d’ex´ ecution des op´ erations, il

n’est pas n´ ecessaire de faire un effort important de mod´ elisation.

(14)

Table 1: R´ esultats d’´ evaluation de la robustesse

Sc´ enarios Ordonnancement RL

i

Sc´ enario 1

S

1

[0.94, 0.96]

S

2

[0.97, 0.99]

S

3

[0.96, 0.98]

Sc´ enario 2

S

1

[0.58, 0.60]

S

2

[0.64, 0.66]

S

3

[0.61, 0, 63]

Sc´ enario 3

S

1

[0.70, 0.72]

S

2

[0.73, 0.75]

S

3

[0.71, 0.73]

Sc´ enario 4

S

1

[0.65, 0.67]

S

2

[0.71, 0.73]

S

3

[0.68, 0.70]

Sc´ enario 5

S

1

[0.69, 0.71]

S

2

[0.75, 0.77]

S

3

[0.71, 0.73]

7 Conclusions et perspectives

Dans cet article, nous proposons une approche g´ en´ erique pour ´ evaluer la robustesse d’ordon- nancements soumis ` a des perturbations. Nous avons r´ epondu ` a deux questions de recherche importantes : comment mod´ eliser le probl` eme de l’ordonnancement sous perturbations et com- ment mesurer la robustesse des ordonnancements devant ˆ etre ´ evalu´ es. Cette approche peut ˆ etre utilis´ ee pour faire face ` a des perturbations qui ont un impact sur la dur´ ee d’ex´ ecution des op´ erations et choisir l’ordonnancement qui est robuste devant une ou plusieurs des perturba- tions d´ efinies. Les sections 3 et 4 proposent une approche bas´ ee sur les automates temporis´ es stochastiques pour la mod´ elisation des ordonnancements et perturbations. La g´ en´ ericit´ e et l’adaptabilit´ e de l’approche sont ses principaux atouts. En effet, le cadre de mod´ elisation pro- pos´ e est g´ en´ erique face aux types d’ateliers (Job Shop, Flow Shop, Open Shop, etc.). Il permet

´ egalement une adaptabilit´ e ais´ ee lors du traitement de nouvelles perturbations. Ce qui est une caract´ eristique importante face aux perturbations dans le contexte de l’Industrie 4.0 et aussi dans le contexte de la prise de d´ ecision. La section 5 propose une approche pour aider le d´ ecideur ` a ´ evaluer diff´ erents ordonnancements devant diff´ erentes perturbations. Cette ap- proche utilise le Model Checking statistique pour ´ evaluer formellement les niveaux de robustesse des ordonnancements. L’application pr´ esent´ ee dans cet article dans la section (6), a d’abord d´ emontr´ e la faisabilit´ e de l’approche propos´ ee. Elle montre ´ egalement l’importance du proces- sus d’´ evaluation dans la prise de d´ ecision au sein d’un atelier et permet une analyse diff´ erente du comportement d’un ordonnancement devant les perturbations qui ´ emanent du syst` eme et de la production. Les perturbations trait´ ees dans cet article sont les incertitudes sur les dur´ ees d’exploitation et de r´ eparation et les al´ eas li´ es ` a la pannes de ressources, qui sont typiquement des perturbations li´ ees au syst` eme de production. Dans les futurs travaux, l’approche devra ˆ etre

´ etendue ` a l’autre type de perturbations g´ en´ er´ ees par l’environnement de production (demande

client, rupture d’approvisionnement, etc.). En effet, l’une des caract´ eristiques de la production

dans l’industrie 4.0 ` a consid´ erer est la personnalisation des produits et la flexibilit´ e en fonction

de la demande du client. De plus, le passage ` a l’´ echelle de notre approche devra ˆ etre test´ e

pour des syst` emes de production de taille r´ eelle et l’am´ elioration de l’accessibilit´ e du processus

d’´ evaluation ` a int´ egrer dans un processus d’aide ` a la d´ ecision devra ˆ etre ´ evalu´ ee avec un panel

d’utilisateurs.

(15)

References

[1] Yasmina Abdedda¨ım, Eugene Asarin, and Oded Maler. Scheduling with timed automata. Theo- retical Computer Science, 354(2):272–300, 2006.

[2] Rajeev Alur and David L Dill. A theory of timed automata. Theoretical computer science, 126(2):183–235, 1994.

[3] C. Baier and M. Kwiatkowska. Model checking for a probabilistic branching time logic with fairness. Distributed Computing, 11(3):125–155, 1998.

[4] P. Ballarini, H. Djafri, M. Duflot, S. Haddad, and N. Pekergin. Petri nets compositional modelling and verification of flexible manufacturing systems. Proceeding of the 7th Conference on Automation Science and Engineering, 2011.

[5] Jean-Charles Billaut, Aziz Moukrim, and Eric Sanlaville. Flexibility and robustness in scheduling.

John Wiley & Sons, 2013.

[6] St´ ephane Dauz` eres-P´ er` es, Philippe Castagliola, and Chams Lahlou. Service Level in Scheduling.

Flexibility and Robustness in Scheduling, pages 99–121, 2010.

[7] Stephanie Geist, Dmitry Gromov, and J¨ org Raisch. Timed discrete event control of parallel production lines with continuous outputs. Discrete Event Dynamic Systems, 18(2):241–262, 2008.

[8] Vincent Giard. Gestion de la production et des flux. Economica, 2003.

[9] Davide Giglio, Riccardo Minciardi, Simona Sacone, and Silvia Siri. Optimal control of production processes with variable execution times. Discrete Event Dynamic Systems, 19(3):423–448, 2009.

[10] Sara Himmiche, Pascale Marang´ e, Alexis Aubry, Marie Duflot, and Jean-Fran¸ cois P´ etin. Eval- uation de la robustesse d’un ordonnancement par Automates Temporis´ es Stochastiques. 11` eme Colloque sur la Mod´ elisation des Syst` emes R´ eactifs, MSR 2017, November 2017.

[11] Sara Himmiche, Pascale Marang´ e, Alexis Aubry, and Jean-Fran¸ cois P´ etin. Robust produc- tion scheduling under machine failures-a des based evaluation approach. IFAC-PapersOnLine, 51(7):271–276, 2018.

[12] Avenir Kobetski and Martin Fabian. Time-optimal coordination of flexible manufacturing sys- tems using deterministic finite automata and mixed integer linear programming. Discrete Event Dynamic Systems, 19(3):287–315, Sep 2009.

[13] Panos Kouvelis and Gang Yu. Robut Discrete Optimization and its Applications. Springer, 1997.

[14] Kim G Larsen, Paul Pettersson, and Wang Yi. Uppaal in a nutshell. International journal on software tools for technology transfer, 1(1-2):134–152, 1997.

[15] Haralambie Leahu, Bernd Heidergott, and Arie Hordijk. Perturbation analysis of waiting times in the g/g/1 queue. Discrete Event Dynamic Systems, 23(3):277–305, 2013.

[16] Dimitri Lefebvre and Gonzalo Mejia. Robust scheduling in uncertain environment with Petri nets and beam search. IFAC-PapersOnLine, 51(11):1077–1082, 2018.

[17] Zukui Li and Marianthi Ierapetritou. Process scheduling under uncertainty: Review and chal- lenges. Computers & Chemical Engineering, 32(4):715 – 727, 2008.

[18] Pascale Marang´ e, Alexis Aubry, and Jean-Fran¸ cois P´ etin. Ordonnancement d’ateliers ` a par- tir de patrons de mod´ elisation bas´ es sur des automates communicants. 10` eme Colloque sur la Mod´ elisation des Syst` emes R´ eactifs, MSR 2015, November 2015. Poster.

[19] Vincent Nimal. Statistical approaches for probabilistic model checking. PhD thesis, University of Oxford, 2010.

[20] Sebastian Panek, Sebastian Engell, and Olaf Stursberg. Scheduling and planning with timed automata. 21:1973 – 1978, 2006.

[21] Sebastian Panek, Olaf Stursberg, and Sebastian Engell. Efficient synthesis of production schedules

by optimization of timed automata. Control Engineering Practice, 14(10):1183–1197, 2006.

Références

Documents relatifs

XMLHttpRequest permet des requ ˆetes HTTP depuis Javascript La page de cutecats.com peut donc contacter mybank.com. • Venant de

« Les frais de reconstitution des titres de propriété d’immeubles ou de droits immobiliers pour lesquels le droit de propriété du défunt n’a pas été constaté avant son

Dans la pratique, il suffit de se donner un atlas, car on en d´ eduit la classe d’´ equivalence de la structure diff´ erentiable – ce qui reste vrai pour toute vari´ et´ e..

1 Mod` eles d’attaques - S´ ecurit´ e inconditionnelle, prouv´ ee, s´ emantique.. 2 Chiffrement sym´ etrique inconditionnellement

Comme je suis heureux ! Je suis chargé d'annoncer au peuple français la signature de l'Armistice ! Nous sommes en 1918, la guerre est terminée.. J’ai de nombreux surnoms, Certains

Depuis ma dernière visite certains biens et services produits par cette entre- prise ont- ils été consommés par des membres du ménage au lieu d'être vendus Oui

GRANDS SPECTACLES PROJECTION PRIVÉE TOUTE UNE SOIRÉE VENTE DE GARAGE. LE PLAISIR CROÎT

L’abus d’alcool est dangereux pour l a santé, à consommer