WOW !! MUCH LOVE ! SO WORLD PEACE !
Fond bitcoin pour l'amélioration du site: 1memzGeKS7CB3ECNkzSn2qHwxU6NZoJ8o
  Dogecoin (tips/pourboires): DCLoo9Dd4qECqpMLurdgGnaoqbftj16Nvp


Home | Publier un mémoire | Une page au hasard

 > 

Planification et gestion du parc de transport au niveau de la SARL Ibrahim et fils

( Télécharger le fichier original )
par Karim K. MEGHAR K. MEKHNECHE
Université Abderrahmane Mira de BéjaàŻa - Ingénieur d'état en recherche opérationnelle 2007
  

précédent sommaire suivant

Bitcoin is a swarm of cyber hornets serving the goddess of wisdom, feeding on the fire of truth, exponentially growing ever smarter, faster, and stronger behind a wall of encrypted energy

5.6.2 Modèle avec file

5.6.3 Modèle sans file

5.6.4 Déroulement de l'algorithme de simulation (modèle avec file)

Notre modèle de simulation repr'esent'e par l'organigramme pr'ec'edent, r'esume les principales tâches et proc'edures suivantes :

1) Initialisation : C'est une 'etape n'ecessaire a` tout programme informatique. Les variables les plus importantes a` initialiser dans notre simulateur sont :

· Pour i allant de 0 a` Nbrc-1 faire: Camion[i] :=0.

· Pour i allant de 0 a` Nbrch-1 faire : Chauffeur[i] :=(0,0,0).

· Initialiser la taille du tableau Etatfile a` 0.

· Initialiser le compteur temps : t :=0.

· Initialiser le nombre de clients servis : Nbrs :=0.

· Initialiser le cumule des temps d'attente dans la file et dans le système :

- Ctf :=0;
- Cts :=0.

· Initialiser le cumule des nombres de clients dans la file et dans le système :

- CNf :=0;
- CNs :=0.

· Initialiser le cumule des nombres de camions et de chauffeurs inoccup'es par unit'e de temps : - CNbrcI :=0;

- CNbrchI :=0.

2) Pour t allant de 0 a` T ex'ecuter les 'etapes 3 a` 6.

3) Actualisation : c'est une proc'edure qui serve a` actualiser les tableaux Camion, Chauffeur et Etatfile a` chaque d'ebut de journ'ee comme suit :

a) Pour les camions non pas encore rentr'es : Camion[i]6=0, faire d'ecr'ementer la dur'ee restante de leurs trajets d'une unit'e de temps Camion[i] :=Camion[i]-1.

b) Pour les chauffeurs:

· qui sont encore au repos : Chauffeur[i,0]6=0, faire d'ecr'ementer la dur'ee restante de leurs repos d'une unit'e de temps Chauffeur[i,0] :=Chauffeur[i,0]-1.

· qui sont en service : Chauffeur[i,1]6=0 :

- faire d'ecr'ementer la dur'ee restante de leurs services d'une unit'e de temps Chauffeur[i,1] :=Chauffeur[i,1]-1.

- faire inc'ementer la dur'ee de service cumul'ee après leurs dernier repos d'une unit'e de temps Chauffeur[i,2] :=Chauffeur[i,2]+1.

· qui sont rentr'es et ont cumul'e une dur'ee de service sup'erieure ou 'egale a` la dur'ee de service exig'ee : Chauffeur[i,1]=0 et Chauffeur[i,2]= Dserv :

- leurs donner une dur'ee de repos 'egale a` Drep : Chauffeur[i,0] := Drep.

- mettre a` z'ero leurs dur'ees de service cumul'ees : Chauffeur[i,2] := 0.

c) Pour la file on incr'emente la dur'ee de s'ejour des clients dans la file d'une unit'e de temps : Etatfile[i,1] := Etatfile[i,1] + 1;

4) Générer D poissonnienne : Avec l'algorithme 5.1, on génère une demande poissonnienne D et la mettre en fin du tableau Etafile avec un temps de séjour égale a` 0.

5) Calculer les disponibilités :

· en camions NbrcD =

Nbrc--1
>2

i=0

I[Camion[i]=0].

· en chauffeurs NbrchD =

Nbrch--1
>2

i=0

I[Chauffeur[i,0]=0 et Chauffeur[i,1]=0].

 

Long Etatfile--1

· nombre de clients dans la file Nbrf =

 

Etafile[i, 0].

i=0

· calculer le nombre de clients a` servir S :=min(NbrcD,NbrchD,Nbrf).

6) Servir les clients : Pour i allant de 1 a` S, exécuter les étapes suivantes :

· générer DS exponentielle : Avec l'algorithme 5.3, on génère une durée de service exponentielle DS.

· attribuer DS au premier camion disponible (Camion[i]=0) : Camion[i] :=DS.

· attribuer DS au premier chauffeur disponible (Chauffeur[i,0]=0 et Chauffeur[i,1]=0) : Chauffeur[i,1] :=DS.

· actualiser la file :

- si Etatfile[0,0]=0 alors pour i allant de 0 a` long(Etatfile)-1 faire Etatfile[i] :=Etatfile[i+1].

- on soustrait un client de la file : Etatfile[0,0] :=Etatfile[0,0]-1.

· actualiser le cumul du temps dans la file : Ctf :=Ctf+Etafile[0,1].

· actualiser le cumul du temps dans le système : Cts :=Cts+Etafile[0,1]+DS.

· actualiser le nombre de clients servis : NbrS :=NbrS+1.

7) Cumuls des caractéristiques : Actualisation des cumuls suivants :

· CNf :=CNf+Nbrf-S.

· CNs :=CNs+Nbrc-NbrcD+Nbrf.

· CNbrcI :=CNbrcI+NbrcD-S.

· CNbrchI :=CNbrchI+NbrchD-S.

8) Sortie des caractéristiques : En utilisant les cumuls calculés, on aura les paramètres caractéristiques de notre simulateur :

V Tf :=CTf/NbrS.

V Ts :=CTs/NbrS.

V Nf :=CNf/T.

V Ns :=CNs/T.

V NbrcI :=CNbrcI/T.

V NbrchI :=CNbrchI/T.

précédent sommaire suivant






Bitcoin is a swarm of cyber hornets serving the goddess of wisdom, feeding on the fire of truth, exponentially growing ever smarter, faster, and stronger behind a wall of encrypted energy








"Nous devons apprendre à vivre ensemble comme des frères sinon nous allons mourir tous ensemble comme des idiots"   Martin Luther King