GUIDE_UTILISATION.md 6,2 ko
Newer Older
# Guide d'Utilisation - Sélecteur d'Unité de Temps

## 🎯 Nouvelle Fonctionnalité

L'interface permet maintenant de configurer les paramètres en **millisecondes (ms)** ou **secondes (s)** directement, sans avoir à faire de conversion manuelle!

## 📊 Comment ça marche

### Sélecteur d'Unité

En haut du panneau de paramètres, vous trouverez un bouton à bascule:

```
┌─────────────────────────────────┐
│ Paramètres du réseau   [ms] [s] │ ← Cliquez ici pour changer
└─────────────────────────────────┘
```

### Mode Millisecondes (ms) - PAR DÉFAUT

Entrez les temps directement en millisecondes comme indiqué dans le sujet du TP:

```
Temps moyen entre arrivées:     125 ms
Temps moyen service coord.:      10 ms
Temps moyen service serveur:    120 ms  (serveur rapide)
                                240 ms  (serveur lent)
                                190 ms  (serveur moyen)
```

**Exemple pour Scénario 1:**
```
┌──────────────────────────────────────┐
│ Unité: [ms] s                        │
│                                      │
│ Temps moyen entre arrivées:  125 ms  │
│ Coordinateur:                        │
│   Temps moyen service:        10 ms  │
│   Probabilité sortie:        0.5     │
│ Serveur 1:                           │
│   Temps moyen service:       120 ms  │
│   Probabilité routage:       0.5     │
└──────────────────────────────────────┘
```

### Mode Secondes (s)

Cliquez sur **[s]** pour travailler en secondes:

```
Temps moyen entre arrivées:   0.125 s
Temps moyen service coord.:   0.010 s
Temps moyen service serveur:  0.120 s  (serveur rapide)
                              0.240 s  (serveur lent)
                              0.190 s  (serveur moyen)
```

**Exemple pour Scénario 1:**
```
┌──────────────────────────────────────┐
│ Unité: ms [s]                        │
│                                      │
│ Temps moyen entre arrivées: 0.125 s  │
│ Coordinateur:                        │
│   Temps moyen service:      0.010 s  │
│   Probabilité sortie:       0.5      │
│ Serveur 1:                           │
│   Temps moyen service:      0.120 s  │
│   Probabilité routage:      0.5      │
└──────────────────────────────────────┘
```

## 🔄 Conversion Automatique

La conversion entre temps et taux se fait automatiquement:

**Formule:** `Taux (μ) = 1 / Temps moyen`

| Temps moyen | Unité | → | Taux interne |
|-------------|-------|---|--------------|
| 10 ms       | ms    | → | 0.1 req/ms   |
| 0.010 s     | s     | → | 0.1 req/ms   |
| 120 ms      | ms    | → | 0.00833 req/ms |
| 0.120 s     | s     | → | 0.00833 req/ms |

## 📋 Valeurs pour les 5 Scénarios du TP

### Scénario 1: 1 serveur rapide (mode ms)
```
Temps entre arrivées:     125 ms
Coordinateur:              10 ms
Probabilité sortie:       0.5
Serveur 1:                120 ms
Probabilité routage q1:   0.5
```

### Scénario 2: 1 rapide + 1 lent (mode ms)
```
Temps entre arrivées:     125 ms
Coordinateur:              10 ms
Probabilité sortie:       0.5
Serveur 1 (rapide):       120 ms,  q1 = 0.25
Serveur 2 (lent):         240 ms,  q2 = 0.25
```

### Scénario 3: 3 serveurs lents (mode ms)
```
Temps entre arrivées:     125 ms
Coordinateur:              10 ms
Probabilité sortie:       0.6
Serveur 1:                240 ms,  q1 = 0.15
Serveur 2:                240 ms,  q2 = 0.15
Serveur 3:                240 ms,  q3 = 0.10
```

### Scénario 4: 1 rapide + 1 moyen (mode ms)
```
Temps entre arrivées:     125 ms
Coordinateur:              10 ms
Probabilité sortie:       0.5
Serveur 1 (rapide):       120 ms,  q1 = 0.25
Serveur 2 (moyen):        190 ms,  q2 = 0.25
```

### Scénario 5: Analyse de sensibilité

**Variation de λ (temps entre arrivées):**
Tester: 100ms, 125ms, 150ms, 200ms, etc.

**Variation de p:**
Tester: 0.3, 0.4, 0.5, 0.6, 0.7, 0.8

## ✅ Validation des Probabilités

L'interface vérifie automatiquement que:
```
p + q1 + q2 + ... + qn = 1.0
```

Un indicateur visuel vous alertera si la somme n'est pas égale à 1:
- ✅ Vert: Probabilités correctes (= 1.0)
- ❌ Rouge: Probabilités incorrectes (≠ 1.0)

## 💡 Conseils

1. **Utilisez ms par défaut**: C'est l'unité du sujet du TP
2. **Passez en secondes**: Si vous préférez travailler avec des valeurs décimales
3. **Changez d'unité à tout moment**: Les valeurs sont converties automatiquement
4. **Vérifiez les probabilités**: L'indicateur en bas doit être vert avant de lancer

## 🎓 Correspondance avec le Sujet du TP

Le sujet indique:
> "Le temps de service moyen de la file Fc est plus court que le temps de service par un serveur de la base de données. On pourra le prendre égal à 10ms. Les temps de service des files F1,...,Fn peuvent être différents. Pour simplifier, on pourra prendre seulement deux valeurs, 120ms (serveurs rapides) et 240 ms (serveurs lents)."

Avec la nouvelle interface:
- ✅ Entrez directement **10 ms** pour le coordinateur
- ✅ Entrez directement **120 ms** pour un serveur rapide
- ✅ Entrez directement **240 ms** pour un serveur lent
- ✅ Entrez directement **190 ms** pour un serveur moyen

**Plus besoin de calculer 1/10, 1/120, 1/240 manuellement!**

## 🔧 Pour les Développeurs

Si vous voulez voir les taux internes (en req/ms), consultez:
- Les résultats de simulation affichent les taux
- Le module analytique utilise les taux
- Les logs backend montrent les taux

La conversion se fait dans `ParameterPanel.tsx`:
```typescript
// De temps vers taux
const convertToRate = (meanTime: number): number => {
  const timeInMs = timeUnit === 's' ? meanTime * 1000 : meanTime;
  return 1 / timeInMs;
};

// De taux vers temps
const convertFromRate = (rate: number): number => {
  const timeInMs = 1 / rate;
  return timeUnit === 's' ? timeInMs / 1000 : timeInMs;
};
```