# CID : UN NOUVEL OUTIL POUR LA CONCEPTION DES DIAGRAMMES DE FEUX

Gérard Scemama

INRETS-MAIA

Cet article présente un état de l'art du problème de la conception de plan de feux ainsi que la réalisation d'un prototype logiciel CID de Conception Intelligente de Diagramme de feux. Ce logiciel traite du carrefour isolé et de la coordination sur un axe ou un réseau. Il est orienté pour fournir des solutions directement implantables sur un contrôleur. Ainsi il n'est pas limité en nombre de lignes de feux, il traite des carrefours composés, il permet le calcul du phasage, des plans de feux et des microrégulations de façon interactive. Une description plus détaillée de la modélisation et du logiciel ainsi que la bibliographie sont données dans la revue RTS [Scemama 94, 95].

## LE PROBLÈME DE LA CONCEPTION DES DIAGRAMMES DE FEUX

La conception du diagramme de fonctionnement des feux d'un carrefour est une tâche particulièrement ardue de planification et d'ordonnancement. Il n'existe pas à ce jour de méthode qui l'aborde dans toute sa complexité, en tenant compte à la fois : de l'ordre de succession des feux, du calcul des temps de début et de fin de vert, des décalages de chaque ligne de feux de la programmation de fonctions dites de microrégulation (escamotage de ligne de feu ou de phase, antiblocage) et d'autres contraintes plus subtiles faisant intervenir les capacités de stockage ou la sécurité des piétons.

La maîtrise de cette complexité pose sur diverses décompositions du

problème. En premier lieu et quand cela est possible, les carrefours complexes, dits « carrefours composés », sont décomposés en carrefours élémentaires qui font l'objet d'une résolution séparée. Il faut par la suite définir les décalages entre ces carrefours.

En second lieu, le calcul du diagramme est souvent décomposé en deux étapes :

- détermination et ordonnancement des phases (phasage)

- optimisation de la durée des phases.

La première étape est laissée complètement au savoir-faire du planificateur. Elle consiste à définir, regrouper et ordonner les différents courants du carrefour en phases de telle sorte qu'il n'existe pas de conflits à l'intérieur d'une même phase. La géométrie du carrefour, les conflits entre les divers

courants, les temps de sécurité et les décalages entre lignes de feux, l'importance relative des flux, la sécurité et les conditions locales d'environnement sont quelques uns des aspects pris en compte pour la résolution de cette première étape.

La seconde étape concentre à elle seule, la majorité des travaux entrepris dans le domaine des calculs du plan de feux d'un carrefour [Le coq 73], [CETUR 88]. De nombreuses méthodes sont proposées afin d'optimiser la durée des phases en fonction de divers critères ou combinaisons de critères (minimisation des retards, des arrêts, maximisation de la réserve de capacité).

## Revue critique des outils et méthodes de calcul de plan de feux

Ces dernières années de nombreuses études ont été entreprises dans le domaine de la conception et du calcul des plans de feux. La plupart des programmes développés, qu'ils soient en ligne ou en différé, ne résolvent en réalité qu'une partie de ce problème. Parallèlement, le développement des contrôleurs à base de microprocesseurs permet l'implémentation de solutions toujours plus complexes de contrôle qui ne sont pas prises en compte dans ces outils. Ces limites font que dans la pratique, l'élaboration d'un plan de feux reste un problème d'expertise toujours résolu manuellement par les exploitants. Pourtant, cette tâche stratégique constitue un enjeu très important puis-
qu'elle conditionne la pertinence des solutions mises en place sur le terrain.

On trouve deux type d'approche : une approche orientée « aménagement du carrefour » et une approche orientée « programmation du contrôleur ».

### L'approche orientée « aménagement de carrefour »

L'approche orientée « aménagement de carrefour » consiste à établir un diagramme des feux à partir de la mesure d'un grand nombre de paramètres liés à la géométrie du carrefour comme le nombre de branches, le nombre de voies, la distance des traversées piétons, les angles des divers mouvements. Ces paramètres sont par la suite traduits en d'autres grandeurs pour le calcul du plan de feux (capacité, vert minimum). Les modèles SIGCAP (Angleterre) [Allsop 76], SIDRA (Australie) [Pretty 93] optimisent des flux de véhicules à l'intérieur d'un carrefour élémentaire sur la base d'un phasage préétabli.

Cette représentation reste cependant assez éloignée de la description utile au niveau d'un contrôleur. La méthode de calcul devrait fournir les réglages de la totalité des feux (véhicules et piétons) qui sont raccordés, ceci indépendamment de toute topographique.

Les données nécessaires alourdisent d'autant l'usage de ces modèles sans pour autant répondre à l'essentiel du travail de conception. Contrairement aux idées reçues, le calcul des durées de vert représente rarement la difficulté de cette tâche. A titre d'exemple, le planificateur commence par élaborer des diagrammes « sans dimension » où les durées de vert et du cycle restent indéterminées mais qui respectent les contraintes de temps de sécurité et de décalage. Cette étape débouche notamment sur la génération du diagramme de sécurité associé au cycle minimum.

Les limites évoquées obligent donc l'utilisateur à de nombreuses interventions manuelles avant de passer à la programmation proprement dite du contrôleur.

### L'approche orientée « programmation du contrôleur »

L'approche orientée « programmation du contrôleur » est présente dans les

programmes tels que LINSIG (Angleterre) [Simmonite 85] et CATE (Allemagne) qui travaillent sur l'ensemble des lignes de feux en faisant abstraction des considérations topologiques. Cependant ces logiciels supposent connu le phasage ainsi que les temps interphases. De plus, ils ne savent pas prendre en compte tous les décalages internes entre feux. Bien que conçu pour une programmation en ligne, le logiciel CONDOR (France) [CETUR 91] ne traite pas les carrefours composés, est limité à 16 lignes de feux et ne sait pas calculer automatiquement les plans de feux de plus de deux phases.

L'évolution de la technologie fait qu'actuellement certains contrôleurs sont capables de gérer de véritables réseaux. Il est alors important que les méthodes de calcul intègrent la prise en compte de contraintes complexes de planification et fournissent en sortie des résultats directement applicables sur un contrôleur.

### Objectifs

L'objectif de cette recherche est la modélisation d'un outil d'aide à la conception de plans de feux orienté vers la programmation des contrôleurs. On traite progressivement le cas du carrefour isolé, puis celui de la coordination sur un axe et/ou sur un réseau. En ce qui concerne la coordination sur un axe ou un réseau, on s'est contenté de vérifier l'applicabilité du modèle américain de référence MAXBAND et dont le logiciel TALON [CETUR 91] met en œuvre une partie des fonctionnalités.

Pour le problème du carrefour isolé, il s'agit de proposer une modélisation qui aborde ce problème dans toute sa complexité. Ainsi, il permet notamment :

* la détermination du phasage,

* le calcul automatique des plans de feux,

* la modification (replanification) des plans de feux,

* le calcul des adaptations des plans de feux pour tenir compte de la microrégulation et du contrôle symbolique (actions « favoriser » et « retenir » des systèmes SAGE/CLAIRE) [Scemama 89, 93].

* l'évaluation et le test de toute solution

calculée et/ou éventuellement proposée par l'utilisateur,

* la détermination des plages de fonctionnement manuel (pour l'agent de police), de coordination et de microrégulation.

De par la nature du travail de conception, l'outil est conçu comme un Système Interactif d'Aide à la Décision (SIAD). Le système fournit des diagnostics et des visualisations qui permettent à l'utilisateur d'affiner et de contrôler sa conception. Il est apparu important aussi d'identifier l'ensemble des concepts minimaux nécessaires à la formalisation et à la génération des plans de feux.

## REPRÉSENTATION DES DONNÉES ET DES VARIABLES POUR LA CONCEPTION DES PLANS DE FEUX

Dans cette première étape de la modélisation nous n'avons pas introduit volontairement de concepts liés à la géométrie du carrefour comme les nombres et largeurs de voies, les distances des traversées piétons. Ces données sont en fait traduites en terme d'autres grandeurs pertinentes au niveau du calcul du plan de feux comme les capacités, les temps de vert minimum. Les méthodes de calcul de ces grandeurs différent suivant les pays. Certaines sont décrites dans plusieurs ouvrages comme la brochure Carrefour à Feux du CETUR [CETUR 88] ou le Highway Capacity Manual.

Nous nous sommes efforcés de respecter la norme AFNOR P99-000 concernant la terminologie sur la régulation du trafic routier [AFNOR 91]. Nous renvoyons le lecteur à ce document pour une définition précise des termes employés. Une telle démarche apparaît d'autant plus opportune que le domaine de la régulation du trafic est en voie de normalisation tant en France [Carn 92] qu'à l'étranger [Bullock 92].

## Les données pour la représentation des plans de feux

Un plan de feux est associé à : une durée de cycle, une valeur du décalage externe, des décalages internes, un tra-
<figure><img src="image_1.png" /><figcaption>Figure 1 : Variables caractéristiques d'une ligne de feu [AFNOR 91]</figcaption></figure>

fic représentant la demande véhicule (débit, charge), des indicateurs sur le retard total et la réserve de capacité du carrefour, des diagrammes de fonctionnement (représentations du plan de feux)

Le décalage externe exprime une durée par rapport à un instant de référence qui sert à la synchronisation des divers contrôleurs du réseau. Les décalages internes sont identiques à ceux définis au paragraphe précédent hors le fait qu'il s'agit là de données locales au plan de feux.

## Les variables du plan de feux

Pour chaque ligne de feux, on considère les variables suivantes : une date de début de vert*, une date de fin du jaune fixe*, une durée du vert réel, une durée du vert utile, un temps perdu*

La figure 1 illustre quelques unes des définitions des différentes variables mentionnées.

Les variables notées avec un astérisque sont indépendantes. Si :
* Rᵢ, Vᵢ, Jᵢ désignent la durée du rouge réel, du vert réel et du jaune fixe,

* rᵢ, vᵢ les durées de rouge et de vert utile

* Tdebut (Fi), Tfin (Fi) les temps de début de vert et de fin de l'orange

* li, le temps perdu à l'arrêt et au démarrage (T1 + T2) d'une ligne de feu Fi

Nous pouvons écrire :
(∀ Fi ∈ Feux Vehicules)

$$v_i = V_i + J_i - l_i$$

$$Cycle = R_i + V_i + J_i$$

$$Tfin (Fi) = Tdebut (Fi) + v_i + l_i$$

## Les contraintes

Ce paragraphe donne un exemple des contraintes portant sur les variables identifiées dans l'étape précédente.

### Les contraintes sur les domaines des variables

Le caractère cyclique des solutions nous impose de considérer les lignes de feux dont les intervalles de vert associés sont à cheval sur un cycle. On aura donc :

(∀ Fi ∈ Feux) - Cycle ≤ Tdebut
(Fi) < Cycle

(∀ Fi ∈ Feux) 0 ≤ Tfin (Fi) < Cycle

Les contraintes de vert minimum

s'écrivent :
(∀ Fi ∈ Feux) vi ≥ vertmini

### Les contraintes sur la demande de trafic

Ces contraintes sont relatives à la demande et l'offre exprimée pour un feu véhicule.

Soient Qi, Si le débit et le débit de saturation du courant géré par le feu Fi et soit m le coefficient de capacité du carrefour, égal au plus petit coefficient de capacité possible en tenant compte de l'ensemble des contraintes du plan de feux.

La contrainte de capacité associée à chaque feu Fi gérant un trafic véhicule sera définie par :

(∀ Fi ∈ Feux Vehicules)

$$\mu \times Qi \times Cycle \leq Si \text{¥} vi$$

Si m ≥ 1 le carrefour possède une réserve de capacité égale en pourcentage à 100 x (m - 1), sinon il est dit saturé de la quantité 100 x (1 - m)

On introduit d'autre part la charge yi définie par :
$$y_i = Q_i/S_i$$
## Les contraintes directes sur la solution

Ces contraintes permettent d'imposer tout ou partie des valeurs des variables d'une solution

On peut ainsi fixer une date de début, une date de fin une durée du vert d'une ligne de feu.

## Les contraintes de temps de dégagement et de décalages

## LES GRANDES ÉTAPES DE LA CONCEPTION DES PLANS DE FEUX

L'élaboration d'un plan de feux peut être décomposé en trois grandes étapes :

* le calcul du phasage,

* le calcul d'un plan de feux,

* la transformation d'un plan de feux

## Le phasage

Cette première étape consiste en l'élaboration d'un ordonnancement des divers feux antagonistes [Stoffers 68], [Zurzate 78]. La méthode utilise les données sur les incompatibilités et les décalages pour trouver le phasage. L'utilisateur peut interagir pour la modification de ces données (ajout, suppression

<table><caption>Tableau 1 : définition des contraintes sur les temps de dégagement et les décalages</caption><thead><tr><th>CONTRAINTES</th><th>INTERPRÉTATION</th><th>REPRESENTATION</th></tr></thead><tbody><tr><td>Contraintes sur les temps de dégagements</td><td>Les feux Fi et Fj ne peuvent être au vert en même temps. Il faut attendre Rij secondes entre la fermeture de Fi et l'ouverture de Fi et Rji secondes entre l'ouverture de Fj et la fermeture de Fi.</td><td></td></tr><tr><td>Contraintes sur les décalages à l'ouverture</td><td>Le feu Fi débute avant le feu Fj avec un décalage compris entre le décalage minimum et maximum.</td><td></td></tr><tr><td>Contraintes sur les décalages à la fermeture</td><td>Le feu Fi se termine avant la fermeture du feu Fj avec un décalage compris entre le décalage minimum et maximum.</td><td></td></tr><tr><td>Contraintes sur les décalage entre l'ouverture et la fermeture</td><td>Le feu Fi débute avant la fermeture du feu Fj avec un décalage compris entre le décalage minimum et maximum.</td><td></td></tr><tr><td>Contraintes sur les décalage entre la fermeture et l'ouverture</td><td>Le feu Fi se termine avant l'ouverture du feu Fj avec un décalage compris entre le décalage minimum et maximum.</td><td></td></tr></tbody></table>
sion de contraintes, modification des valeurs des temps de dégagement et des décalages) jusqu'à obtention d'une solution satisfaisante.

Le problème de phasage est un problème de recouvrement minimal par des regroupements maximaux de feux compatibles (cliques maximales du graphe des compatibilités) [Scemama 83].

## Le calcul du plan de feux

### Les critères quantitatifs d'optimisation

Il existe deux critères possibles d'optimisation des flux véhicules. On peut chercher à :

* maximiser le coefficient de réserve de capacité du carrefour pour une durée de cycle fixé,

* minimiser la durée de cycle pour un coefficient de réserve de capacité fixé (i.e. on se donne un niveau de service).

En milieu urbain, la durée de cycle est en général connue à l'avance à cause de la coordination des carrefours d'une

incompatibilités et si on fait abstraction des contraintes de vert minimum. On peut également calculer le degré de saturation xi et le retard di associé à chaque feu véhicule [Webster 58] :

$$x_i = \frac{Q_i \text{ Cycle}}{v_i S_i} \\ d_i = \frac{9}{10} \left[ \frac{\text{Cycle}(1 - v_i / \text{Cycle})^2}{2(1 - v_i / \text{Cycle} x_i)} + \frac{x_i^2}{2Q_i(1 - x_i)} \right]$$

### Méthode d'obtention des solutions

Les critères que nous avons présentés permettent d'optimiser les flux véhicules à l'intérieur du carrefour. La qualité d'une solution n'est pas évaluable en terme d'un critère. Elle se traduit en partie par le respect des contraintes que le planificateur a pris le soin de décrire. En l'absence de critère pour les piétons, la résolution consiste à optimiser dans un premier temps les feux gérant les flux véhicules, puis à générer les verts maximum pour

Ce paragraphe est consacré à la définition d'opérateurs de transformation d'un diagramme. Ces opérateurs sont particulièrement utiles en phase de conception, de définition d'une micro régulation (anti-blocage, escamotage) et pour le contrôle au niveau symbolique tel que celui des systèmes SAGE et CLAIRE (actions expertes « favoriser » et « retenir »). En effet, il est possible de construire un diagramme par transformation successive. Ces transformations doivent respecter à la fois les contraintes générales et locales au plan de feux que l'on désire construire.

A titre d'exemple, l'utilisateur pourra utiliser une transformation homothétique du diagramme minimal (dilatation du cycle minimum) pour calculer un diagramme de base fonctionnant sur une durée de cycle à sa convenance. Il est également possible d'imposer en même temps de nouvelles contraintes de décalages.

### Opérateurs de transformation globale du diagramme

On considère deux opérateurs globaux de transformation. Il s'agit :

* de l'opérateur de changement d'origine,

* de l'opérateur de dilatation qui définit une homothétie de rapport K du diagramme sans affecter cependant certaines variables du plan de feux comme les décalages ou les temps de dégagement.

Cette opération permet de dilater ou de contracter un diagramme d'un facteur constant K pour le ramener à une valeur de cycle C' désirée par l'utilisateur (on utilise dans ce cas le rapport $K = C'/C$). Il est clair qu'une telle transformation devra respecter la valeur du cycle minimum correspondant au diagramme de sécurité. D'autre part, elle doit être sans conséquence sur les temps de sécurité et décalages qui ont été définis.

### Opérateurs de transformation horizontale du diagramme

On considère les opérateurs suivants :

* translation de début de vert d'une ligne de feu

* translation de fin de vert d'une ligne de feu

<figure><img src="image_2.png" /><figcaption>Figure 2 : Relation entre le cycle et le coefficient de capacité</figcaption></figure>

même zone.

La maximisation du coefficient de réserve de capacité du carrefour revient à affecter des durées de vert proportionnellement à la demande (équisaturation). Dans le cas où le carrefour n'est pas saturé (m > 1), on démontre que l'on minimise aussi le retard total du carrefour [Allsop 71, 72].

La figure 2 montre la relation qu'il existe entre ces deux variables si on ne tient compte que des contraintes sur les

les feux piétons.

### La transformation d'un plan de feux (replanification)

En replanification, nous supposons qu'une solution de départ est connue ainsi que l'ensemble des contraintes et données générales qui lui sont attachedes. Les règles de transformations concernent les vecteurs de début et de fin de vert. La replanification est la façon de traiter l'interaction avec l'utilisateur.
Ces opérateurs sont introduits pour agir sur les lignes de feux véhicules (transformation horizontale). A titre d'exemple, nous définissons dans la suite de ce texte l'opérateur de translation de fin de vert.

Les deux opérateurs de début et de fin de vert permettent de formuler la microrégulation des lignes comme l'antiblocage, l'escamotage ainsi que le contrôle symbolique des actions CLAIRE « favoriser » et « retenir » jouant sur les durées de vert.

Une technique de relaxation de contraintes a été retenue pour l'implantation de ces opérateurs. On considère a priori que la solution transformée doit être identique à la solution initiale. Les contraintes pour lesquelles cette loi de conservation n'est pas satisfaite sont relâchées.

## Opérateurs de transformation verticale du diagramme

Ces transformation permettent des modifications verticales du diagramme et donc l'expression de la microrégulation au niveau des phases (augmentation/diminution de la durée d'une phase, escamotage vertical). Ces transformations doivent veiller au respect des verts minimaux des feux.

## RÉALISATION DU LOGICIEL CID

Le logiciel CID a fait l'objet de deux versions une pour PC compatible et une sur station de travail sous Unix et OpenWindows. Les divers écrans présentés dans cet article correspondent à cette seconde version. Le prototype a été développé à partir d'un langage à base de contraintes. Plusieurs langages de ce type sont actuellement commercialisés,

les versions les plus récentes de ces langages se présentent sous la forme de bibliothèque de programmes que l'on peut appeler depuis d'autres langages informatiques (langage classique ou langage à base de règles).

Nous abordons la description des divers modules du logiciel à travers l'exemple du carrefour « Place du Vingt Cinq Août » (CF0157). Ce carrefour est un carrefour composé possédant 32 lignes de feux (Figure 3).

## Topographie du site

La topographie du site est accessible à partir des documents de travail (plan, photographie) qu'il est possible de visualiser à l'écran. Un éditeur graphique permet de saisir très rapidement un design du carrefour et des différents vecteurs représentant les flux véhicules et piétons associés à chaque feu. Ce design du carrefour est utilisé pour visualiser les contraintes d'un plan de feux ou son fonctionnement.

## Les données et contraintes du site

Les données générales du site sont accessibles à partir de divers tableaux.

On distingue notamment :

* le contrôleur

* les feux caractérisés par une classe (véhicules, piétons, bus) et un type de fonctionnement (signal tricolore, signal piéton, signal par anticipation). On distinguera les cinq types de fonctionnement prévus dans la norme NF P99-105 sur les caractéristiques fonctionnelles des contrôleurs de carrefour à feux.

* les chaînons décrivant le type de couvrant de trafic (mouvement direct, tourne à gauche,...) géré par le feu, sa localisation sur le carrefour et sa capacité (ou débit de saturation).

* les détecteurs.

* les contraintes des temps de dégagement et des divers décalages.

Le tableau 2 correspond au fichier d'entrée décrivant les données générales du site. Dans ce tableau,

* la codification « 0 1 » (entête FEUX) permet la déclaration du feu 0 de type 1 (feu véhicule avec 3 » de jaune, selon la norme sur les contrôleurs [AFNOR 91a])

* la codification « 0 x 1 0/7 » (entête

<figure><img src="image_3.png" /><figcaption>Figure 3 : Le carrefour cf0157 (topologie)</figcaption></figure>
INCOMPATIBILITÉS) signifie que les feux 0 et 1 sont antagonistes avec 0 » de temps de sécurité séparant la fin du feu 0 et le début du feu 1 et 7 » de temps de sécurité séparant la fin du feu 1 et le début du feu 0.

• la codification «15 - > 0 0 : 90 » (en-têtes DÉCALAGE) signifie que les feux 15 et 0 sont décalés à l'ouverture entre un minimum de 0 » et un maximum de 90 » (en réalité, 90 » est une valeur très grande qui n'impose pas de borne supérieure pour ce décalage, la contrainte signifie que le début du feu 0 doit être au moins supérieur au sens large au début du feu 15.

Ces données sont par la suite visualisées sous forme de tableau ou de dessin. Ainsi, la figure 5 montre les représentations des contraintes de décalage à l'ouverture effectuées par le logiciel CID.

## Le phasage

Cette étape consiste en l'élaboration

d'un ordonnancement des divers feux antagonistes et le calcul d'un diagramme de sécurité à partir des caractéristiques du site et des contraintes générales (temps de dégagement et décalages). Le programme utilise les données sur les incompatibilités et les décalages pour déterminer le phasage. L'utilisateur pourra interagir en modifiant ces données (ajout, suppression de contraintes, modification des valeurs des temps de dégagement et des décalages) jusqu'à obtention d'une solution satisfaisante.

La figure 4 montre la décomposition automatique du graphe des incompatibilités en sous graphes représentant les carrefours élémentaires ainsi que le phasage obtenu. En cas de non-unicité de la solution retenue, le système le signale. L'utilisateur pourra éventuellement lever cette indétermination en rajoutant des contraintes d'in-

compatibilités ou de décalages fermeture-ouverture supplémentaires. La représentation de la décomposition du graphe des contraintes est particulièrement utile car elle permet de visualiser les carrefours élémentaires isolés pour lesquels aucun décalage n'a été défini (cf. figure 4, les arcs avec le symbole # représentent des décalages).

Le programme calcule également les diagrammes de sécurité trouvés sur chaque carrefour élémentaire, ainsi que le diagramme minimal pour l'ensemble du carrefour composé. Son cycle est nécessairement supérieur ou égal au plus grand des cycles minimaux de chaque carrefour élémentaire. Dans notre exemple, le cycle minimum du carrefour composé est strictement supérieur à ceux des carrefours élémentaires.

Il se peut aussi que le décalage d'un feu avec ses autres feux antagonistes

<table><caption>Tableau 2 : Données générales du site (carrefour cf0157)</caption><thead><tr><th>Lecture des données<br>generales</th><th>INCOMPATIBILITES 40</th><th>DECALAGE_FERMETURE 7</th></tr></thead><tbody><tr><td>CARREFOUR</td><td>0 x 1 0/7</td><td>15 - > 0 0 : 90</td></tr><tr><td>Place_du_Vingt_Cinq_Aout</td><td>0 x 2 6/6</td><td>19 - > 3 0 : 90</td></tr><tr><td>CONTRÔLEUR</td><td>0 x 7 0/3</td><td>27 - > 21 5 : 90</td></tr><tr><td>cf0157</td><td>0 x 10 3/0</td><td>7 - > 10 5 : 5</td></tr><tr><td>FEUX 32</td><td>0 x 13 4/0</td><td>30 - > 23 8 : 8</td></tr><tr><td>0 1</td><td>0 x 14 5/0</td><td>25 - > 21 3 : 3</td></tr><tr><td>1 4</td><td>3 x 4 0/13</td><td>31 - > 30 4 : 4</td></tr><tr><td>2 4</td><td>3 x 5 6/6</td><td>DECALAGE_OUVERTURE 5</td></tr><tr><td>3 1</td><td>3 x 7 5/0</td><td>15 - > 0 5 : 90</td></tr><tr><td>4 4</td><td>3 x 10 1/5</td><td>19 - > 3 11 : 90</td></tr><tr><td>5 4</td><td>3 x 13 0/5</td><td>21 - > 27 37 : 90</td></tr><tr><td>6 1</td><td>3 x 14 0/5</td><td>31 - > 30 4 : 4</td></tr><tr><td>7 1</td><td>5 x 6 5/7</td><td>25 - > 21 3 : 3</td></tr><tr><td>8 4</td><td>6 x 7 5/0</td><td>FIN</td></tr><tr><td>9 4</td><td>6 x 10 0/7</td><td>Fin de Lecture des<br>données générales</td></tr><tr><td>10 1</td><td>6 x 13 0/7</td><td></td></tr><tr><td>11 4</td><td>6 x 14 0/7</td><td></td></tr><tr><td>12 4</td><td>7 x 8 0/12</td><td></td></tr><tr><td>13 3</td><td>7 x 9 6/3</td><td></td></tr><tr><td>14 1</td><td>10 x 11 0/13</td><td></td></tr><tr><td>15 1</td><td>10 x 12 6/8</td><td></td></tr><tr><td>16 4</td><td>12 x 13 7/7</td><td></td></tr><tr><td>17 4</td><td>12 x 14 7/7</td><td></td></tr><tr><td>18 1</td><td>15 x 16 0/14</td><td></td></tr><tr><td>19 1</td><td>15 x 17 8/1</td><td></td></tr><tr><td>20 4</td><td>15 x 21 0/5</td><td></td></tr><tr><td>21 1</td><td>15 x 30 2/1</td><td></td></tr><tr><td>22 4</td><td>17 x 18 1/8</td><td></td></tr><tr><td>23 1</td><td>18 x 21 0/6</td><td></td></tr><tr><td>24 4</td><td>18 x 30 3/0</td><td></td></tr><tr><td>25 1</td><td>19 x 20 0/12</td><td></td></tr><tr><td>26 3</td><td>19 x 21 4/0</td><td></td></tr><tr><td>27 1</td><td>19 x 30 0/6</td><td></td></tr><tr><td>28 4</td><td>21 x 22 0/13</td><td></td></tr><tr><td>29 4</td><td>23 x 24 0/11</td><td></td></tr><tr><td>30 1</td><td>23 x 26 3/0</td><td></td></tr><tr><td>31 1</td><td>25 x 26 1/2</td><td></td></tr><tr><td></td><td>26 x 28 0/12</td><td></td></tr><tr><td></td><td>27 x 29 0/11</td><td></td></tr><tr><td></td><td>29 x 31 11/0</td><td></td></tr></tbody></table>
ne soit pas « optimisé ». Le décalage séparant la fin de vert du feu et le début de vert de ces feux antagonistes est toujours supérieur aux temps de dégagement. Le système signale aussi les feux véhicules uniquement en conflit avec les feux piétons. Si une durée de vert et un décalage ne sont pas fixés, le calcul automatique risquerait d'affecter au vert piéton une durée de vert minimale. C'est en effet le cas pour la solution présentée dans la figure 5 : le feu piéton 29, qui n'est en conflit qu'avec les feux véhicules 27 et 31, se voit affecter une durée de vert minimum de 6 ».

Notons que cette étape ne requiert pas de données sur les débits. Cependant, l'utilisateur devra déclarer à ce niveau les incompatibilités et décalages nécessaires à la prise en compte des flux en présence. Une fois cette étape franchie, le système conservera pour tous les nouveaux plans de feux l'ordonnancement et le signe des variables (contrainte du temps zéro).

La possibilité de déclarer au niveau des données générales des décalages compris entre minimum et un maximum est aussi un moyen de contrôler la validité des décalages exacts qui seront définis par la suite au niveau des plans de feux.

## Création d'un plan de feux

### Les diagrammes

Un plan de feux possède plusieurs représentations en terme de diagramme. On distingue :

* la représentation en ligne donnant pour chaque feu le début et la fin du vert

(lecture horizontale du diagramme, Figure 6).

* la représentation en séquence d'états donnant pour chaque seconde l'état des feux (vert, rouge,...). On lui substitue en général par une représentation en séquence d'intervalles durant lesquels les feux restent dans le même état. Par abus de langage, ces intervalles portent encore la dénomination d'états (tableau 4).

* la représentation en séquence de phases et d'interphases où chaque phase correspond à un état dont le début coïncide avec celui d'au moins une ligne de feu véhicule.

On s'intéresse à une vision synthétique du fonctionnement du diagramme en séquence de phases. Chaque phase correspond à un état déclenché par la mise au vert d'au moins un feu véhicule. Un diagramme des phases se représente par la séquence de ses phases. Entre deux phases on définit une interphase. Tout état qui appartient à une interphase ne peut être modifié. Par contre, la durée des phases peut être adaptée par exemple en fonction de la demande.

### Les plages de manuel et de

### coordination

On distingue notamment les plages manuelles d'arrêt, les plages manuelles de démarrage, les plages de coordination, les plages pour la micro régulation.

Les plages de coordination correspondent à des intervalles qui sont utilisés par le contrôleur pour la coordination. Une plage de coordination ne doit pas se situer à l'intérieur d'un temps de sécurité. De plus, l'instant d'arrêt sur coordination doit être placé de façon à respecter la durée de vert minimum de chaque feu. L'état sélectionné est donc décomposé en une plage fixe (de durée égale au plus grand vert minimum) et la plage de coordination.

Les plages de manuel servent au pilotage du contrôleur par l'agent de police. Les plages d'arrêt servent à mettre un maximum de feux du carrefour au rouge. Les plages manuelles de démarrage servent au contraire à mettre un maximum de feux au vert.

### La simulation de diagramme

Une fois un diagramme calculé, CID permet de simuler son fonctionnement. Une animation utilisant le dessin du

<figure><img src="image_4.png" /><figcaption>Figure 4 : Phasage du carrefour cf0157 par carrefour élémentaire</figcaption></figure>
<figure><img src="image_5.png" /><figcaption>Tableau 3 : Fichier des données d'entrée du plan de feux (charge en %)</figcaption></figure>

carrefour et des feux permet de simuler seconde par seconde les états successifs des feux.

L'élaboration d'un nouveau plan de feux doit respecter les données et

contraintes générales du site. Elle peut se faire à partir soit de données spécifiques (trafic, décalages) (Tableau 3), soit d'un plan de feu existant. CID est capable de calculer un diagramme même quand la demande (débit) n'a pas été définie ou est définie partiellement. Cette incomplétude des données est cependant signalée. Des paramètres permettent d'imposer le synchronisme des débuts et/ou des fins de vert des feux véhicules d'une même phase. En cas d'impossibilité, CID relâchera les contraintes correspondantes.

Les données et contraintes définies à ce niveau seront locales au plan de feux. Il est également possible d'introduire des contraintes de décalages ou des contraintes directes sur la solution (débuts, des fins et des durées de vert de la solution). Par contre, toute intervention qui modifierait une contrainte générale, doit entraîner l'invalidation de tous les plans de feux définis sur le site.

Les figures 5 et 6 montrent le diagramme associé aux données générales du site (cf0157) et du plan de feux (matin). Ci-dessous, nous présentons

les éditions associées au calcul du plan de feux. Le tableau des états (tableau 4) est particulièrement intéressant. L'histogramme des feux au vert permet de visualiser les deux phases de trafic de ce carrefour composé. L'histogramme est une courbe bimodale dont les modes sont atteints pour les états 17 et 39 correspondant aux phases principales de trafic. Le système calcule également les diverses plages du diagramme (plages manuelles, de coordination). Les plages sont positionnées grâce aux données figurant sur cet histogramme (recherche d'extrema locaux)

## Vérification/Modification d'un plan de feux (replanification)

CID permet la construction de plan de feux par transformations successives d'un plan de feux de base (replanification) tout en respectant l'ensemble des contraintes définies. Il s'agit là d'une fonctionnalité particulièrement intéressante et nouvelle dans laquelle s'inscrit l'interaction avec l'utilisateur. Le logiciel prévoit la disposition :
* d'opérateurs de transformation globale du diagramme (changement d'origine, dilatation du cycle),

* d'opérateurs de transformation horizontale (translation des débuts et des fins de vert)

* d'opérateurs de transformation verticale (augmentation/réduction de la durée d'un état).

On conçoit aisément la complexité d'avoir à calculer manuellement les implications de cette transformation. C'est encore plus délicat lorsque celle-ci a des incidences sur les autres carrefours élémentaires du

<figure><img src="image_6.png" /><figcaption>Figure 5 : Calcul d'un plan de feux</figcaption></figure>
## TABLEAU DES ETATS

Nombre d'états : 40

<table><thead><tr><th>État</th><th>Debut</th><th>Fin</th><th>Duree</th><th>Histogramme des feux au vert réel</th></tr></thead><tbody><tr><td>1 1</td><td>3</td><td>2</td><td>0 3 6 8 9 11 12 15 18 19 22 27</td><td></td></tr><tr><td>2 3</td><td>6</td><td>3</td><td>0 3 6 8 9 11 12 15 18 19 27</td><td></td></tr><tr><td>3 6</td><td>8</td><td>2</td><td>0 3 6 8 9 11 12 15 18 19 23 27 28</td><td>&lt;- Manuel</td></tr><tr><td>4 8</td><td>9</td><td>1</td><td>0 3 6 9 12 15 18 19 23 27 28</td><td></td></tr><tr><td>5 9</td><td>12</td><td>3</td><td>0 3 6 9 12 15 18 23 27 28</td><td></td></tr><tr><td>6 12</td><td>13</td><td>1</td><td>0 9 12 15 18 20 23 27 28</td><td></td></tr><tr><td>7 13</td><td>15</td><td>2</td><td>0 9 20 23 25 27 28</td><td>&lt;- Manuel</td></tr><tr><td>8 15</td><td>16</td><td>1</td><td>4 9 20 23 25 27 28 31</td><td></td></tr><tr><td>9 16</td><td>17</td><td>1</td><td>4 9 16 20 21 23 25 27 28 31</td><td></td></tr><tr><td>10 17</td><td>18</td><td>1</td><td>4 16 20 21 23 25 27 28 31</td><td></td></tr><tr><td>11 18</td><td>19</td><td>1</td><td>1 4 16 20 21 23 25 27 28 31</td><td></td></tr><tr><td>12 19</td><td>20</td><td>1</td><td>1 4 16 20 21 23 25 27 28 30 31</td><td></td></tr><tr><td>13 20</td><td>21</td><td>1</td><td>1 4 7 16 20 21 23 25 27 28 30 31</td><td></td></tr><tr><td>14 21</td><td>22</td><td>1</td><td>1 4 7 10 16 20 21 23 25 27 28 30 31</td><td></td></tr><tr><td>15 22</td><td>23</td><td>1</td><td>1 4 5 7 10 16 20 21 23 25 27 28 30 31</td><td></td></tr><tr><td>16 23</td><td>24</td><td>1</td><td>1 4 5 7 10 14 16 20 21 23 25 27 28 30 31</td><td></td></tr><tr><td>17 24</td><td>40</td><td>16</td><td>1 2 4 5 7 10 14 16 17 20 21 23 25 27 28 30 31</td><td>&lt;- Manuel &lt;- Coord</td></tr><tr><td>18 40</td><td>41</td><td>1</td><td>1 2 4 5 7 10 14 17 20 21 23 25 27 28 30 31</td><td></td></tr><tr><td>19 41</td><td>42</td><td>1</td><td>1 2 4 5 7 10 14 17 20 21 23 25 28 30</td><td></td></tr><tr><td>20 42</td><td>43</td><td>1</td><td>1 2 4 5 7 10 14 17 21 23 25 28 30</td><td></td></tr><tr><td>21 43</td><td>44</td><td>1</td><td>1 2 4 5 7 10 14 17 21 23 28 30</td><td></td></tr><tr><td>22 44</td><td>45</td><td>1</td><td>1 2 4 5 7 10 14 17 21 23 28 29 30</td><td>&lt;- Manuel</td></tr><tr><td>23 45</td><td>46</td><td>1</td><td>1 2 4 5 7 10 14 17 21 23 28 29</td><td></td></tr><tr><td>24 46</td><td>47</td><td>1</td><td>1 2 4 5 7 10 14 17 23 28 29</td><td></td></tr><tr><td>25 47</td><td>48</td><td>1</td><td>1 2 4 5 7 10 14 17 23 29</td><td></td></tr><tr><td>26 48</td><td>49</td><td>1</td><td>1 2 4 5 7 10 14 17 23 29</td><td></td></tr><tr><td>27 49</td><td>50</td><td>1</td><td>1 2 4 5 7 10 14 17 22 23 29</td><td></td></tr><tr><td>28 50</td><td>52</td><td>2</td><td>1 2 4 5 7 10 14 17 22 23</td><td></td></tr><tr><td>29 52</td><td>53</td><td>1</td><td>1 2 5 10 14 17 22 23</td><td></td></tr><tr><td>30 53</td><td>54</td><td>1</td><td>2 5 10 14 22</td><td>&lt;- Manuel</td></tr><tr><td>31 54</td><td>55</td><td>1</td><td>5 10 14 15 19 22</td><td>&lt;- Manuel</td></tr><tr><td>32 55</td><td>56</td><td>1</td><td>5 8 10 14 15 18 19 22</td><td></td></tr><tr><td>33 56</td><td>57</td><td>1</td><td>5 8 10 14 15 18 19 22 24</td><td></td></tr><tr><td>34 57</td><td>59</td><td>2</td><td>5 8 15 18 19 22 24</td><td></td></tr><tr><td>35 59</td><td>60</td><td>1</td><td>8 15 18 19 22 24</td><td>&lt;- Manuel</td></tr><tr><td>36 60</td><td>61</td><td>1</td><td>0 8 11 15 18 19 22 24</td><td></td></tr><tr><td>37 61</td><td>65</td><td>4</td><td>0 8 9 11 15 18 19 22 24 27</td><td></td></tr><tr><td>38 65</td><td>67</td><td>2</td><td>0 3 8 9 11 15 18 19 22 24 27</td><td></td></tr><tr><td>39 67</td><td>85</td><td>18</td><td>0 3 6 8 9 11 12 15 18 19 22 24 27</td><td>&lt;- Manuel &lt;- Coord</td></tr><tr><td>40 85</td><td>1</td><td>6</td><td>0 3 6 8 9 11 12 15 18 19 22 27</td><td>&lt;- Manuel</td></tr></tbody></table>

## TABLEAU DES ETATS DEMARRANT LES FEUX VEHICULES

Nombre d'états : 14

Séquence des états démarrant les feux véhicules : 3 7 8 9 12 13 14 16 31 32 36 37 38 39

<table><caption>Tableau 6 : Sorties concernant les états du diagramme</caption><thead><tr><th>Numéro</th><th>Etat</th><th>Debut</th><th>Fin</th><th>Duree</th><th>Declen.</th><th>Affectation des feux au vert réel</th></tr></thead><tbody><tr><td>1 3</td><td>6</td><td>8</td><td>2</td><td>23</td><td>0 3 6 8 9 11 12 15 18 19 23 27 28</td><td></td></tr><tr><td>2 7</td><td>13</td><td>15</td><td>2</td><td>25</td><td>0 9 20 23 25 27 28</td><td></td></tr><tr><td>3 8</td><td>15</td><td>16</td><td>1</td><td>31</td><td>4 9 20 23 25 27 28 31</td><td></td></tr><tr><td>4 9</td><td>16</td><td>17</td><td>1</td><td>21</td><td>4 9 16 20 21 23 25 27 28 31</td><td></td></tr><tr><td>5 12</td><td>19</td><td>20</td><td>1</td><td>30</td><td>1 4 16 20 21 23 25 27 28 30 31</td><td></td></tr><tr><td>6 13</td><td>20</td><td>21</td><td>1</td><td>7</td><td>1 4 7 16 20 21 23 25 27 28 30 31</td><td></td></tr><tr><td>7 14</td><td>21</td><td>22</td><td>1</td><td>10</td><td>1 4 7 10 16 20 21 23 25 27 28 30 31</td><td></td></tr><tr><td>8 16</td><td>23</td><td>24</td><td>1</td><td>14</td><td>1 4 5 7 10 14 16 20 21 23 25 27 28 30 31</td><td></td></tr><tr><td>9 31</td><td>54</td><td>55</td><td>1</td><td>15 19</td><td>5 10 14 15 19 22</td><td></td></tr><tr><td>10 32</td><td>55</td><td>56</td><td>1</td><td>18</td><td>5 8 10 14 15 18 19 22</td><td></td></tr><tr><td>11 36</td><td>60</td><td>61</td><td>1</td><td>0</td><td>0 8 11 15 18 19 22 24</td><td></td></tr><tr><td>12 37</td><td>61</td><td>65</td><td>4</td><td>27</td><td>0 8 9 11 15 18 19 22 24 27</td><td></td></tr><tr><td>13 38</td><td>65</td><td>67</td><td>2</td><td>3</td><td>0 3 8 9 11 15 18 19 22 24 27</td><td></td></tr><tr><td>14 39</td><td>67</td><td>85</td><td>18</td><td>6</td><td>0 3 6 8 9 11 12 15 18 19 22 24 27</td><td></td></tr></tbody></table>

diagramme du fait des décalages.
## Cas étudiés

Dans le cadre de la collaboration INRETS - Ville de Paris, un groupe de travail a été constitué afin de passer en revue différents problèmes de conception.

Ce travail a permis ainsi d'étudier des cas possédant chacun des particularités intéressantes du point de vue de la tâche de conception. D'autre cas de carrefour on été étudiés avec la DDE du Val de Marne (service Parcival). L'ensemble de ces cas ont permis ainsi d'affiner et de valider la modélisation contenue. Certains aspects trop liés à la programmation des contrôleurs n'ont cependant pas été étudiés : la programmation des variables logiques d'appel pour la microrégulation. Toutefois ces points restant à préciser ne constituent pas une difficulté majeure en terme de réalisation. Ils devront faire l'objet d'une spécification détaillée.

## CONCLUSION

Cet article a montré que la plupart des logiciels de calcul de plan restaient des outils inadaptés face aux conditions réelles d'exploitation. Parmi ces adaptations, on peut citer :

* la limitation à des carrefours de certains types (carrefour à trois ou quatre branches),

* la limitation à un nombre de feux trop faible,

* la nécessité d'une collecte trop importante de données sur la géométrie du carrefour qui s'avère peu utile dans la réalité,

* l'obligation de disposer de données sur les flux de trafic (débit),

* la non prise en compte des carrefours composés,

* l'absence de calcul du phasage,

* l'absence d'interaction avec l'utilisateur (replanification).

Dans ce contexte, la réalisation du logiciel CID à permis de valider la faisabilité d'un outil de conception de diagramme de feux intégrant les conditions réelles d'exploitation, à savoir :

* un nombre de lignes de feux non limité

* une prise en compte de carrefours composés

* le calcul automatique du phasage

* le calcul des plans de feux même avec des données incomplètes.

* le diagnostic des plans de feux par rapport aux contraintes définies.

* la vérification et la modification d'un plan de feux

* le calcul des microrégulations horizontales et verticales

* le calcul des diverses plages.

## Réalisation industrielle : Options techniques

Le développement d'un outil industriel de conception de plan de feux représente un enjeu stratégique important sur lequel repose le bien-fondé des solutions de régulation mises en place sur le terrain. Pour autant cette tâche de conception n'est pas informatisée et mobilise un grand nombre de ressources humaines. En dehors de l'aide à la conception proprement dite, la seule informatisation des données, qui président à la constitution des diagrammes, constituerait un progrès important de productivité et d'efficacité.

Un tel outil doit comporter selon nous trois composantes : un système de gestion de base de données, un système de gestion de l'interface homme-machine et un système de gestion du modèle de résolution. Ce travail s'est principalement focalisé sur le modèle de résolution point critique de l'outil à réaliser, mais fournit aussi des éléments d'orientations des autres composantes du système.

Le système de gestion de base de données ne doit pas se limiter au stockage des seuls plans de feux (ou diagramme), mais doit permettre l'enregistrement des données et contraintes constitutives à leur élaboration. Une masse importante de ces données, élaborée en phase de conception, est en effet perdue par la suite. La mise à jour et la modification des plans de feux oblige souvent le planificateur à reconsidérer complètement le carrefour, entraînant une perte importante de temps et donc de productivité.

La base de données doit non seulement inclure des données factuelles, mais permettre aussi le stockage des plans et des photos du site (aspect multimédia). Enfin, la mise en place d'un

S.I.G. (Système d'Information Géographique) semble une option intéressante pouvant faciliter l'accès à ces données relatives à des carrefours, des chaînons, des itinéraires d'un réseau.

L'interface homme machine devra reposer sur une forte interactivité avec l'utilisateur et posséder des fonctionnalités graphiques avancées (X-Windows). Le prototype développé illustre certaines possibilités de réalisation dans ce domaine. Comme dans un tableur, les données devront être saisies ou calculées à partir de feuille de calcul intégrant les fonctions que nous avons mentionnées dans cet article.

L'implantation du modèle de résolution peut se faire dans un langage de programmation classique ou dans un langage à base de contraintes. La première option obliigerait au développement d'algorithmes spécifiques de recherche de solutions. Toutefois, la technique de programmation par contraintes présente une grande adéquation par rapport au problème posé (manipulation d'équations et d'inéquations, calcul d'optimisation, non-déterminisme). De part sa flexibilité (déclarativité) et son efficacité, elle peut faire partie intégrante de la solution industrielle. Cette appréciation est renforcée par l'existence de réalisations dans des domaines complexes de la planification et de l'ordonnancement reposant sur cette technologie.

Les options techniques que nous vons de décrire correspondent à l'élaboration d'un logiciel informatique « haut de gamme ». Il est possible de lui associer une version « bas de gamme » aux fonctionnalités réduites pour une plus grande diffusion dans les services en charge des calculs de diagramme. Cette version limitée permettra le calcul des carrefours simples.

## Nouvelles perspectives de recherche

La modélisation utilise des contraintes entièrement définies par l'utilisateur et ne prévoit pas de les identifier. En effet, une telle identification repose sur la considération de la géométrie du carrefour, données que nous avons écartées volontairement dans cette première réalisation. Il était
prioritaire de réaliser l'outil de calcul
de plan de feux (sorte de tableur spé-
cifique) qui constitue en lui-même une
application informatique non néglig-
geable. La connaissance de la position
des lignes de feux, de l'orientation et
du type des courants véhicules per-
mettrait de générer les contraintes sur
les incompatibilités, les temps de dé-
gagement et les décalages. L'accès à ce
niveau d'expertise plus élevé pourrait
ainsi faire l'objet des nouveaux tra-
vaux de recherche qui viendraient en-
richir cette première version. A cet
égard, les langages à base de
contraintes restent encore limités. Ils ne
permettent pas encore d'émettre des

« jugements » ou de formaliser aisé-
ment des raisonnements sur les
contraintes (métaniveau).

remerciements

Je tiens à remercier toute l'équipe
d'exploitation du PC d'exploitation de
la Ville de Paris pour leur contribution
à l'achèvement de ce travail et en par-
ticulier G. Briet et G. Delthil. Je re-
mercie également J. C. Bajou du service
Parcival du Val de Marne pour les cas
qu'il m'a soumis et ses appréciations
qui m'ont aidées à mieux cerner la pro-
blématique « Province ». Je remercie
enfin les services de la Ville de Tou-
louse (S. Mathieu & P. Laffont) pour

les informations qui m'ont été commu-
niquées sur le logiciel de programma-
tion des contrôleurs SPOKE et leurs
encouragements.

BIBLIOGRAPHIE

[Scemama 94] Scemama G., « La concep-
tion de plan de feux : une modélisation
par la programmation par contraintes »,
RTS n° 45, Décembre 1994.

[Scemama 95] Scemama G., « La concep-
tion de plan de feux : le logiciel CID »,
RTS n° 46, Mars 1995.

TEC

à l'écoute de ses lecteurs

N'oubliez pas de nous adresser

• vos nouvelles brèves,

• vos remarques

• vos commentaires

Pour toutes informations, adressez-vous à :

ATEC

38, avenue Emile Zola - 75015 Paris

Tél. (1) 45 75 56 11

fax (1) 45 79 52 86