• Aucun résultat trouvé

,1)250$7,48(

N/A
N/A
Protected

Academic year: 2021

Partager ",1)250$7,48("

Copied!
15
0
0

Texte intégral

(1)

SESSION 2017 PSIIN07 !

!

!

!

EPREUVE SPECIFIQUE - FILIERE PSI!

!!!!!!!!!!!!!!!!!!!!"

!

INFORMATIQUE

Vendredi 5 mai : 8 h - 11 h!

!!!!!!!!!!!!!!!!!!!!"

N.B. : le candidat attachera la plus grande importance à la clarté, à la précision et à la concision de la

!"#$%&'()*+,'+-)+%$)#'#$&+./&+$0.)"+1+!.2"!.!+%.+3-'+2.-&+4-'+/.054.!+6&!.+-).+.!!.-!+#7")()%"8+'4+4.+

/'9)$4.!$+/-!+/$+%(2'.+.&+#.:!$+2(-!/-':!.+/$+%(02(/'&'()+.)+.;24'3-$)&+4./+!$'/()/+#./+')'&'$&':./+3-7'4+

a été amené à prendre.!

!

!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"

!

!

!

!

!

!

!

!

!

!

!

!

!

!

!

!

!

!

!

!

!

!

!

!

! .

Les calculatrices sont interdites

Le sujet comporte 15 pages dont :

– 13 pages de texte de pr´esentation et ´enonc´e du sujet ; – 2 pages d’annexes.

Toute documentation autre que celle fournie est interdite.

REMARQUES PRELIMINAIRES

L’´epreuve doit ˆetre trait´ee en langage Python. Les syntaxes sont rappel´ees en

annexe 2.

Les di

ff

´erents algorithmes doivent ˆetre rendus dans leur forme d´efinitive sur la copie `a rendre (les brouillons ne seront pas accept´es).

Il est demand´e au candidat de bien vouloir r´ediger ses r´eponses en

pr´ecisant bien le num´ero de la question trait´ee et, si possible, dans l’ordre des questions. La r´eponse ne doit pas se cantonner `a la

r´edaction de l’algorithme sans explication ; les programmes doivent ˆetre expliqu´es et comment´es.

(2)

Etude de la capacit´e et de la congestion de l’autoroute A7 ´

I Objectifs et d´emarche d’´etude

Il existe plusieurs formes de congestions routi`eres, selon leur cause : la congestion r´ecurrente, la congestion

✭✭

pr´evisible

✮✮

(travaux, manifestations, m´et´eo) et la congestion due aux incidents et accidents, par d´efinition impr´evisibles. On s’int´eresse ici au niveau de congestion r´ecurrente qui peut ˆetre d´efini comme le surplus de demande qui am`ene la congestion.

Cette ´etude se focalise sur la congestion routi`ere de l’auto- route A7 en France. La section ´etudi´ee ne comporte ni entr´ee ni sortie. La longueur de l’axe est de 8,5 km et comporte 3 voies sauf au niveau de la derni`ere station (non ´etudi´ee ici).

Un seul sens de circulation est ´etudi´e.

La cartographie pr´esent´ee sur la

figure 1

donne l’implanta- tion des di

ff

´erentes stations de mesure, de la station M8A `a M8P, et des contrˆoles de sanction automatique (CSA). Ces stations de mesure font partie du syst`eme de recueil automa- tique des donn´ees (RAD) pr´esent sur les autoroutes.

Figure 1 –

Cartographie de la zone d’´etude

Pour r´ealiser les mesures, la chauss´ee est ´equip´ee de boucles ´electromagn´etiques connect´ees aux stations qui remontent l’information vers un syst`eme central. Ces boucles permettent de compter le nombre de v´ehicules qui passent sur les routes et, dans le cadre de cette ´etude, il s’agit de boucles doubles qui permettent aussi d’estimer les vitesses.

La connaissance et le suivi du niveau de congestion r´ecurrente permettent ensuite d’envisager des actions de r´egulation et d’am´enagement de voirie. La simulation num´erique est alors employ´ee pour

´etudier di

ff

´erentes solutions d’am´enagement ou proposer des solutions de r´egulation dynamique du trafic.

Objectifs

Le premier objectif est d’´etablir le diagramme fondamental (trac´e du d´ebit en fonction de la concen- tration) caract´eristique du tron¸con ´etudi´e `a partir de l’historique de donn´ees de comptage.

Le deuxi`eme objectif est de mettre en place une simulation num´erique adapt´ee au tron¸con ´etudi´e `a partir de deux mod`eles afin de tester deux approches num´eriques diff´erentes.

II Traitement des donn´ees exp´erimentales

La m´ethodologie choisie ici pour estimer la capacit´e d’une route est celle utilis´ee notamment par les

centres d’´etudes techniques de l’´equipement. Elle consiste `a repr´esenter un diagramme fondamental,

c’est-`a-dire le d´ebit q, nombre de v´ehicules par unit´e de temps, en fonction de la concentration c,

nombre de v´ehicules par unit´e de longueur. Ce diagramme permet alors de d´eterminer les param`etres

caract´eristiques de la route.

(3)

II.1 Exploitation des donn´ees de mesure

II.1.1 S´election des mesures

L’ensemble des donn´ees produites par le r´eseau est archiv´e dans une base de donn´ees. Les va- riables d’int´erˆet moyenn´ees par tranche de temps de 6 min pour chaque point de mesure sont le d´ebit q exp, repr´esentatif du nombre de v´ehicules par unit´e de temps et la vitesse moyenne v exp des v´ehicules en ce point. On peut ´egalement acc´eder `a la concentration, c exp, par calcul ´etant donn´e que c exp

=

q exp/v exp.

Une version simplifi´ee de cette base de donn´ees est r´eduite `a deux tables.

La table STATIONS r´epertorie les stations de mesures ; elle contient les attributs :

– id station (cl´e primaire), entier identifiant chaque sta- tion ;

– nom, chaˆıne de caract`eres d´esignant le nom de la sta- tion ;

– nombre voies, entier donnant le nombre de voies de la section d’autoroute.

COMPTAGES STATIONS

id_station nom nombre_voies

id_comptage id_station date voie q_exp v_exp

La table COMPTAGES r´epertorie les di

ff

´erents enregistrements de donn´ees r´ealis´es au cours du temps par les stations de comptage. Elle contient les attributs :

– id comptage, entier identifiant chaque comptage ; – id station, entier identifiant la station concern´ee ; – date, entier datant la mesure ;

– voie, entier num´erotant la voie sur laquelle a ´et´e e

ff

ectu´ee la mesure ; – q exp, flottant donnant le d´ebit mesur´e pendant 6 minutes ;

– v exp, flottant donnant la vitesse moyenne mesur´ee pendant 6 minutes.

Q1. L’´etude se focalise uniquement sur les mesures de l’une des stations, la M8B. ´ Ecrire une requˆete SQL qui renvoie les donn´ees de comptage (id comptage, date, voie, q exp, v exp) mesur´ees `a la station de comptage de nom M8B.

Le r´esultat de la requˆete pr´ec´edente est stock´e dans une nouvelle table COMPTAGES M8B `a cinq colonnes (id comptage, date, voie, q exp, v exp).

On fait l’hypoth`ese que les mesures sur les di

ff

´erentes voies d’une mˆeme station sont enregistr´ees de fac¸on synchronis´ee. Lors d’un enregistrement pour une station `a trois voies, on ´ecrit donc trois lignes dans la table COMPTAGES avec trois dates identiques. Pour chacun des enregistrements de la station M8B, trois lignes avec trois dates identiques sont donc pr´esentes dans la nouvelle table COMPTAGES M8B. Pour la suite de l’´etude, les r´esultats exp´erimentaux de chacune des trois voies doivent ˆetre agr´eg´es pour se ramener `a une voie unique.

Q2. Ecrire une requˆete SQL qui renvoie, pour chaque date des donn´ees de ´ COMPTAGES M8B, le d´ebit correspondant `a la somme des d´ebits de chaque voie.

De la mˆeme fac¸on, une requˆete SQL permet d’obtenir la moyenne des vitesses sur l’ensemble des

trois voies pour chaque date des donn´ees de COMPTAGES M8B. Il n’est pas demand´e d’´ecrire

cette requˆete. Ainsi, dans la suite de l’´etude, la portion d’autoroute sera simplifi´ee en ne consid´erant

qu’une seule voie.

(4)

II.1.2 Diagramme fondamental

On veut tracer le diagramme fondamental du tronc¸on d’autoroute ´etudi´e (figure 2). Suite au traitement de la base de donn´ees, on dispose `a pr´esent du tableau `a une dimension (aussi appel´e vecteur) des d´ebits q exp (en v´ehicules par heure) et du vecteur des vitesses v exp (en kilom`etres par heure). Ces deux vecteurs poss`edent nb

mesures

composantes avec nb

mesures

le nombre de points de mesure `a tracer. Pour chaque composante i, la relation c exp[i]

=

q exp[i]/v exp[i] permet d’obtenir la concentra- tion. L’utilisation des tableaux `a une dimension (ou vecteurs) est rappel´ee en annexe 2.

!"#$%#&'(&)"#*+,-.)$/0%*1*234

5-6)&*+,-.)$/0%*1*.4

7 87 977 987 :77

7***************:777*************;777*************<777**************=777*

Figure 2 – Points de mesure M8B : diagramme fondamental (c exp,q exp)

Q3. Ecrire une fonction ´ trace(q exp

,

v exp) qui prend en arguments q exp et v exp et qui permet d’a

ffi

cher le nuage de points du diagramme fondamental. On consid`erera que les biblioth`eques sont import´ees et on pourra utiliser la fonction

✭✭

plot

✮✮

donn´ee en annexe 2.

II.2 Estimation de l’´etat de congestion

Au niveau d’une station de mesure, la situation est dite congestionn´ee lorsque les vitesses prises par les v´ehicules restent inf´erieures `a 40 km/h et la situation est dite fluide lorsque les vitesses restent sup´erieures `a 80 km/h.

Q4. La fonction congestion(v exp), qui prend en argument v exp et renvoie la valeur m´ediane du tableau de valeurs v exp est d´efinie ci-dessous. La recherche de la m´ediane est bas´ee sur un al- gorithme de tri. Choisir une des 4 propositions donn´ees pour compl´eter les 2 lignes manquantes (indiqu´ees par

✭✭

ligne `a compl´eter

✮✮

). Donner le nom, puis la complexit´e de l’algorithme de tri employ´e, dans le meilleur et le pire des cas. Analyser la pertinence de ce choix.

def congestion(v_exp):

nbmesures=len(v_exp) for i in range(nbmesures):

v=v_exp[i]

j = i

while 0 < j and v < v_exp[j-1]:

ligne `a compl´eter ligne `a compl´eter v_exp[j] = v

return v_exp[nbmesures//2]

Propositions pour les lignes manquantes : 1. v_exp[j-1] = v_exp[j]

j = j-1

2. v_exp[j] = v_exp[j-1]

j = j-1

3. v_exp[j+1] = v_exp[j]

j = j+1

4. v_exp[j] = v_exp[j+1]

j = j+1

Q5. A partir de la base de donn´ees de la station ` M8B, on obtient le vecteur v exp. On ex´ecute

la fonction congestion(v exp), la valeur retourn´ee par la fonction ´etant 30, quelle conclusion

peut-on tirer de ce r´esultat?

(5)

III Elaboration d’une premi`ere simulation du trafic routier par ´ la m´ecanique des fluides

Il est rappel´e ici que dans toute la suite de l’´etude, l’autoroute est assimil´ee `a une seule voie. Le mod`ele continu revient `a n´egliger le caract`ere discret de la mati`ere. Pour le mod`ele routier, cela revient donc

`a regarder l’´evolution du trafic sur des distances grandes devant la taille des v´ehicules, not´ee L0. On appelle c(t

,

x), en v´ehicules par m`etre, la concentration de v´ehicules par unit´e de longueur de route `a l’instant t et `a la position x. Sur une longeur L0, il y a, au plus, un seul v´ehicule, soit c

c max

=

1

L0 . On appelle q(t,x), en v´ehicules par seconde, le d´ebit de v´ehicules, c’est-`a-dire le nombre de v´ehicules par unit´e de temps traversant la section de la route situ´ee `a la position x. La vitesse v(t,x), en m`etres par seconde, ne repr´esente pas la vitesse de chacun des v´ehicules mais la vitesse moyenne du trafic `a la position x. On consid`ere que les v´ehicules se d´eplacent selon l’axe x dans le sens des x croissants.

On rappelle la relation q(t,x)

=

c(t,x)

×

v(t,x). D´esormais, q, v et c repr´esentent les grandeurs si- mul´ees et non plus des donn´ees exp´erimentales. On travaille dans la suite avec les unit´es du syst`eme international.

En consid´erant une portion d’autoroute dx pendant une dur´ee dt et en supposant qu’il n’y a ni perte, ni cr´eation de v´ehicule, il est possible de montrer que q(t,x) et c(t,x) verifient l’´equation aux d´eriv´ees partielles suivante :

q(t

,

x)

∂x +

c(t

,

x)

∂t =

0. (1)

Pour comprendre comment ´evoluent la concentration, la vitesse moyenne ou le d´ebit de v´ehicules au cours du temps le long de l’autoroute, il convient donc de r´esoudre cette ´equation aux d´eriv´ees partielles `a partir de la situation initiale.

III.1 Discr´etisation

Afin de r´esoudre num´eriquement cette

´equation aux d´eriv´ees partielles, nous avons besoin de la discr´etiser. On choisit les param`etres suivants :

– longueur de l’autoroute : La – dur´ee de simulation : T emps – pas d’espace (en m`etres) : dx – pas de temps (en secondes) : dt

Discrétisation en espace (indice j)

Discrétisation en temps (indice i) Sens des temps croissants

Sens des positions croissantes

!"#$,%#$ !"#$,% !"#$,%&$

!",%#$ !",% !",%&$

!"&$,%#$ !"&$,% !"&$,%&$

Figure 3 –

Repr´esentation de la discr´etisation

Q6.

Soit C le tableau de valeurs contenant les concentrations en tous les points x et `a tous les ins-

tants t discr´etis´es, comme repr´esent´e sur la

figure 3. L’approximation num´erique de la concen-

tration au temps t

i

et `a la position x

j

sera not´ee C

i,j

avec i d´esignant l’indice de temps et j

d´esignant l’indice d’espace. Quelles sont les dimensions de C ?

(6)

III.2 Un mod`ele de diagramme fondamental

L’´equation (1) poss`ede deux inconnues. Il faut donc ajouter une deuxi`eme ´equation pour pouvoir la r´esoudre. On propose tout d’abord de relier la vitesse et la concentration par le mod`ele de Greenshield

´etabli `a partir des analyses suivantes :

– lorsque la concentration en v´ehicules tend vers 0, les conducteurs peuvent rouler `a la vitesse maximale autoris´ee, v max en m`etres par seconde ;

– lorsque les v´ehicules sont pare-choc contre pare-choc, la concentration est ´egale `a c max en v´ehicules par m`etre : ils n’avancent plus.

Une relation lin´eaire entre vitesse et concentration est choisie dans le mod`ele de Greenshield, qui est ainsi d´efini par la relation suivante :

v(t,x)

=

v max(1

c(t,x)/c max). (2)

On souhaite concevoir une fonction diagramme permettant de r´ealiser le trac´e du diagramme fonda- mental pour un instant donn´e t

i

(soit pour une ligne de C). Cette fonction fait appel `a une fonction debit permettant de calculer les valeurs de d´ebit `a un instant t

i

en utilisant la relation de Greenshield (2). Ces valeurs sont stock´ees dans un vecteur Q. Le trac´e du diagramme fondamental est r´ealis´e et le tableau Q est retourn´e.

Q7. Ecrire une fonction ´ debit(v max

,

c max

,

C ligne) qui prend en arguments la vitesse maximale (v max), la concentration maximale (c max) et un tableau contenant les concentrations `a un instant donn´e (soit les ´el´ements d’une ligne du tableau C) nomm´e ici C ligne et qui renvoie un tableau de valeurs contenant les d´ebits (en v´ehicules par seconde) aux di

ff

´erentes positions `a ce mˆeme instant.

Q8. Sp´ecifier les arguments d’entr´ee (et leur type) de la fonction diagramme. L’´ecriture du code de la fonction n’est pas demand´ee. Pr´eciser les unit´es des di

ff

´erents termes. Tracer l’allure du diagramme fondamental obtenu. L’allure du diagramme d´epend-elle du temps t

i

auquel on se place (soit du choix de la ligne de C)?

III.3 R´esolution de l’´equation

III.3.1 Situation initiale

On consid`ere une situation de d´epart (t

=

0), comme indiqu´e sur la figure 4. On se place dans une configuration o`u l’on a un profil de concentration dont on veut ´etudier l’´evolution.

La concentration c1 la plus faible passe `a c2, plus forte, `a la distance d1 et revient `a c1 en d2.

Chacune des distances sera discr´etis´ee.

L’approximation num´erique d’une distance correspondra `a la division enti`ere de la distance par le pas.

!"#$%$"&'#()'*+,(%")"(%-

Concentration

d1 d2 La

0 c1 c2

Figure 4 – Configuration initiale Q9. Concevoir une fonction C depart qui permet d’initialiser la premi`ere ligne du tableau C (cor-

respondant `a t

=

0). L’´ecriture du code correspondant n’est pas demand´ee ; en revanche, on

pr´ecisera toutes les valeurs de j pour lesquelles C

0,j

sera ´egale `a c1 et toutes les valeurs pour

lesquelles C

0,j

sera ´egale `a c2. L’en-tˆete ou sp´ecification de la fonction devra ˆetre pr´ecis´e(e) (et

comporter les arguments d’entr´ee et leur type), ainsi que le r´esultat renvoy´e par la fonction.

(7)

III.3.2 R´esolution

Le tableau C contient des z´eros, except´ee la premi`ere ligne qui a ´et´e remplie de valeurs grˆace `a la mise en œuvre de la fonction C depart. On souhaite `a pr´esent ´ecrire la fonction resolution(C

,

dt

,

dx

,

c max

,

v max) permettant de r´esoudre l’´equation et de remplir compl`etement le tableau C.

Connaissant pour tout indice j les valeurs de C

i,j

, on cherche `a d´eterminer C

i+1,j

.

Dans le sch´ema d’Euler

✭✭

avant

✮✮

, la d´eriv´ee d’une fonction f par rapport `a la variable x, au point x

j

, d f

dx (x

j

), est approxim´ee (en utilisant ce point et le point situ´e

✭✭

devant

✮✮

lui) par f

j+1

f

j

dx .

Q est un vecteur contenant les valeurs de d´ebits Q

j

aux di

ff

´erentes positions x

j

et `a l’instant t

i

(l’ap- proximation du d´ebit au temps t

i

et `a la position x

j

sera donc not´ee Q

j

.). ` A chaque instant t

i

, Q devra ˆetre recalcul´e.

Q10.

A partir de l’´equation (1) et en utilisant des sch´emas d’Euler `

✭✭

avant

✮✮

pour l’´ecriture des d´eriv´ees, montrer que la relation de r´ecurrence donnant C

i+1,j

en fonction de C

i,j

, Q

j+1

, Q

j

, dx et dt est donn´ee par l’une des propositions ci-dessous. Le num´ero de la r´eponse correcte sera clairement indiqu´e sur la copie.

1. C

i+1,j=

C

i,j

Q

j

Q

j+1

dx

.dt

2. C

i+1,j=

C

i,j

Q

j+1

Q

j

dx

.dt

3. C

i+1,j=

C

i,j

Q

j+1

Q

j

dt

.dx

4. C

i+1,j=

C

i,j

Q

j

Q

j1

dx

.dt

Pour que le nombre de voitures soit constant sur la longueur de la route, il faut se fixer des conditions aux limites p´eriodiques. Ainsi, quand un v´ehicule arrive en bout d’autoroute, il est replac´e au d´ebut de celle-ci. On consid`ere donc que le v´ehicule situ´e en x

=

La, se d´eplac¸ant vers la droite, a pour voisin de droite le v´ehicule situ´e en x

=

0.

Q11.

L’initialisation a ´et´e e

ff

ectu´ee avec la fonction C depart(dx

,

d1

,

d2

,

c1

,

c2

,

C). ´ Ecrire une fonction resolution(C

,

dt

,

dx

,

c max

,

v max) qui prend en arguments le tableau C, les pas dt et dx, la concentration maximale c max et la valeur de la vitesse maximale v max et qui renvoie le tableau C rempli au cours de la r´esolution. On pourra faire appel `a la fonction debit(v max

,

c max

,

C ligne) d´efinie `a la question

Q7.

III.4 Etude des solutions trouv´ees et modification du sch´ema ´

On ´etudie deux situations de d´epart bas´ees sur le mˆeme profil que celui propos´e `a la situation initiale (figure 4). Dans le cas 1, on choisit c1 et c2, respectivement not´ees c1b et c2b, correspondant `a des concentrations faibles. On peut montrer que, pour ces concentrations, le cr´eneau se d´eplace vers la droite (dans le sens des x croissants) au cours du temps. Cette d´emonstration n’est pas demand´ee.

Dans le cas 2, on choisit c1 et c2, respectivement not´ees c1h et c2h, correspondant `a des concentrations

fortes. On peut montrer que, pour ces concentrations, le cr´eneau se d´eplace vers la gauche (dans le

sens des x d´ecroissants) au cours du temps. Cette d´emonstration n’est pas demand´ee.

(8)

On applique la fonction

resolution

`a ces deux situations de d´epart et on repr´esente la concentration en fonction de la position `a di

ff

´erents instants (figure 5). La situation initiale est en traits interrompus (- -), les situations interm´ediaires en traits continus (-) et la situation finale en pointill´es (:).

!

!

"" #$

#

!$%

!"%

"$

%&'()'&*+,&+&'&)-.

%&'()'&*+,/&+)-.

+*+,0.1023.+'2.

4)0,-),3*-('&*+, 5&6.07.

8)3,$

!

!

"" #$

#

!$&

!"&

"$

%&'()'&*+

&+&'&)-.

%&'()'&*+,/&+)-.

8)3,"

Figure 5 –

R´esultats pour le cas 1 et pour le cas 2 avec Euler

✭✭

avant

✮✮

pour l’espace et

✭✭

avant

✮✮

pour le temps

On remarque qu’avec la situation de d´epart du cas 1, la solution diverge. Avec la situation de d´epart du cas 2, le cr´eneau initial semble se d´eplacer vers la gauche.

Une modification est alors apport´ee `a la fonction

resolution. Dans la discr´etisation en espace (c’est-`a-

dire lors de l’´ecriture des d´eriv´ees par rapport `a la variable d’espace), le sch´ema d’Euler

✭✭

avant

✮✮

en espace est remplac´e par un sch´ema d’Euler

✭✭

arri`ere

✮✮

en espace. Dans ce sch´ema, la d´eriv´ee d’une fonction

f

par rapport `a la variable

x

au point

xj

,

d f

dx

(x

j

) est approxim´ee (en utilisant ce point et le point situ´e

✭✭

derri`ere

✮✮

lui) par

fj−fj−1

dx

. On obtient alors les r´esultats pr´esent´es

figure 6.

!

!

"" #$

#

!$&

!"&

"$

%&'()'&*+

&+&'&)-.

8)3,"

!

!

"" #$

#

!$%

!"%

"$

%&'()'&*+,&+&'&)-.

%&'()'&*+,/&+)-.

8)3,$

%&'()'&*+, /&+)-.

+*+, 0.1023.+'2.

4)0,-),3*-('&*+, 5&6.07.

Figure 6 –

R´esultats pour le cas 1 et pour le cas 2 avec Euler

✭✭

arri`ere

✮✮

pour l’espace et

✭✭

avant

✮✮

pour le temps

Cette fois-ci, avec la situation de d´epart du cas 1, le cr´eneau initial se d´eplace vers la droite et avec la situation de d´epart du cas 2, la solution diverge.

Q12.

On se place `a l’it´eration

i+

1 ; les calculs des it´erations pr´ec´edentes ont d´ej`a ´et´e r´ealis´es.

Le calcul des termes de

Q

(vecteur des d´ebits `a l’instant

ti

) est fait par la fonction

debit,Qj

´etant d´etermin´e `a partir de la valeur de

Ci,j

. Sur la grille de discr´etisation donn´ee

figure 3

(qui

sera reproduite sur la copie), tracer des fl`eches partant des points d´ej`a calcul´es aux it´erations

pr´ec´edentes et allant vers le point `a calculer

Ci+1,j

(au pas d’espace

j

et `a l’it´eration

i+

1) dans

le cas du sch´ema d’Euler

✭✭

avant

✮✮

pour la discr´etisation en espace. Proc´eder de mˆeme dans le

cas du sch´ema d’Euler

✭✭

arri`ere

✮✮

pour la discr´etisation en espace.

(9)

Q13.

En d´eduire un argument permettant de choisir le sch´ema d’Euler adapt´e `a la situation de d´epart.

On cherche maintenant un sch´ema fonctionnel pour les deux situations. On propose celui de Lax- Friedriechs qui :

– utilise un sch´ema centr´e pour l’approximation des d´eriv´ees par rapport `a la variable d’espace.

Dans ce sch´ema, la d´eriv´ee d’une fonction

f

par rapport `a la variable

x

au point

xj

,

d f dx

(x

j

) est approxim´ee (`a partir du point pr´ec´edent et du point suivant) par

fj+1−fj1

2dx ;

– approxime les d´eriv´ees par rapport `a la variable de temps en remplac¸ant la valeur

Ci,j

par la moyenne de la valeur prise au point pr´ec´edent

Ci,j−1

et de la valeur prise au point suivant

Ci,j+1

.

Q14.

Proposer les modifications de la fonction

resolution

(d´efinie `a la question

Q11) n´ecessaires

pour utiliser le sch´ema de Lax-Friedriechs.

La mise en œuvre de la fonction

resolution

permet, ensuite, d’e

ff

ectuer le trac´e des solutions obtenues dont le r´esultat est donn´e

figure 7. Les instructions permet-

tant de r´ealiser le trac´e ne

sont pas demand´ees.

Figure 7 –

Les deux situations de d´epart r´esolues avec le sch´ema de Lax-Friedriechs

III.5 Am´elioration du programme : retour sur le choix du diagramme fonda- mental

Afin de s’assurer de la stabilit´e de la solution trouv´ee, il convient, une fois le sch´ema d’approximation d´etermin´e, de d´efinir les valeurs des param`etres tels que les pas de temps et d’espace. On suppose ici que ce travail a ´et´e r´ealis´e. Cependant, cela ne signifie pas que l’on peut simuler fid`element des ph´enom`enes r´eels. En e

ff

et, le diagramme fondamental utilis´e et trac´e `a la question

Q8

est assez di

ff

´erent du nuage de points exp´erimentaux repr´esent´e

figure 2.

La nouvelle approximation choisie pour obtenir les param`etres caract´eristiques du diagramme fonda- mental

q

en fonction de

c

est une r´egression d’ordre 3 :

q=a3∗c3+a2∗c2+a1∗c+a0

,

ai

´etant les constantes d’ajustement de la courbe sur le nuage de

n

points. La fonction

regression(q exp,c exp),

qui prend en arguments les vecteurs

q exp

et

c exp

obtenus exp´erimentalement (ayant servi `a tracer le nuage de points de la

figure 2) et qui renvoie les coeffi

cients

a0,a1,a2,a3

, a ´et´e r´ealis´ee (on ne demande pas d’´ecrire cette fonction).

Q15.

Expliquer en quelques phrases ce qu’il faut modifier dans la fonction

resolution

d´efinie `a la question

Q11

pour r´esoudre l’´equation (1) en prenant en compte ce nouveau diagramme fondamental bas´e sur l’exp´erimentation.

La simulation que nous avons mise en place permet ainsi de d´eterminer les caract´eristiques d’´evolution

d’un embouteillage. On peut notamment en d´eduire la vitesse de propagation de l’embouteillage, ou

sa vitesse de r´esorption. Cependant, on aimerait `a pr´esent mettre en place une simulation permettant

de mod´eliser les comportements individuels des conducteurs.

(10)

IV Deuxi`eme simulation du trafic routier :

simulation de Nagel et Schreckenberg (NaSch)

L’objectif est de simuler la formation d’embouteillages dits

✭✭

embouteillages fantˆomes

✮✮

. Ils sont le r´esultat d’une perturbation qui apparaˆ ıt localement sur la voie et s’amplifie peu `a peu jusqu’`a former un embouteillage.

IV.1 Initialisation

Afin de mod´eliser le comportement de chacun des v´ehicules, l’espace, le temps ainsi que la vitesse des v´ehicules sont discr´etis´es. La dynamique de chaque ´el´ement est mod´elis´ee de fac¸on tr`es simple, l’objectif ´etant d’obtenir un bon comportement `a l’´echelle macroscopique. On ´etudie, comme dans les parties pr´ec´edentes, une autoroute de longueur La

=

8 500 (en m`etres) pour laquelle on ne consid`ere qu’un seul sens et qu’une seule voie. La vitesse est limit´ee `a 130 km/h et on consid`ere une dur´ee totale d’´etude T emps.

Soit X

n

la position du v´ehicule n, v

n

[[0,1,...,v max]] sa vitesse enti`ere et d

n

la distance inter- v´ehiculaire (par rapport au v´ehicule pr´ec´edent). On choisit de d´ecouper la route en nb cellules cellules de tailles identiques valant pas x

=

7,5 (en m`etres). La dur´ee d’´etude est d´ecoup´ee en nb temps pas de temps valant pas t

=

1,2 (en secondes) qui peut s’interpr´eter comme le temps de r´eaction du conducteur. Une probabilit´e donn´ee par le flottant p est utilis´ee dans l’algorithme.

Q16. Justifier le choix de la valeur du pas d’espace. En d´eduire ce que vaut la vitesse v max impos´ee de 130 km/h en cellules par pas de temps. On arrondira au nombre entier sup´erieur.

Comme pr´ec´edemment, la portion d’autoroute consid´er´ee est sans entr´ee ni sortie. Les conditions li- mites seront p´eriodiques, c’est-`a-dire qu’un v´ehicule sortant de l’autoroute se retrouve instantan´ement

`a l’entr´ee de celle-ci (avec la mˆeme vitesse).

On consid`ere que les donn´ees du probl`eme pas x, pas t, T emps, La, v max, p sont, `a pr´esent, ren- seign´ees dans le programme. On cherche, pour une densit´e donn´ee, `a d´eterminer les vitesses `a chaque position au cours du temps, ainsi que l’occupation ou non de chacune des cellules. On met en place une structure de stockage constitu´ee :

– d’un tableau Route de dimension nb temps

×

nb cellules qui contient des nombres binaires. Si, au pas de temps 10, la cellule 23 est occup´ee par un v´ehicule, alors Route[10,23]

=

1, sinon Route[10,23]

=

0 ;

– d’un tableau Vitesses de dimension nb temps

×

nb cellules qui contient des entiers. Si, au pas de temps 10, la cellule 23 est occup´ee par un v´ehicule et que sa vitesse est de 3 cellules par pas de temps, alors Vitesses[10,23]

=

3. Si la cellule n’est pas occup´ee, alors Vitesses[10,23]

=

0 ; – d’un tableau Vitesses suivantes de dimension 1

×

nb cellules qui contient des entiers. Il per-

mettra de stocker les vitesses au temps i

+

1 avant de d´eplacer les v´ehicules.

On peut d´esormais d´efinir la situation initiale. On consid`ere une route o`u les ´ecarts entre tous les

v´ehicules sont identiques. On cr´ee ainsi une route avec une r´epartition homog`ene des v´ehicules. La

route a ´et´e initialis´ee en plac¸ant des 1 dans les cellules poss´edant un v´ehicule dans la premi`ere ligne

de Route pour une concentration fix´ee c0 en v´ehicules par kilom`etre. Toutes les autres cellules de

Route sont initialis´ees avec la valeur 0. Les cellules de Vitesses sont ´egalement initialis´ees avec des

z´eros. Cette ´etape d’initialisation est consid´er´ee comme d´ej`a r´ealis´ee dans la suite.

(11)

IV.2 Mise en œuvre de l’algorithme

Le mod`ele NaSch, dont le pseudo-code est donn´e en annexe 1, est le pionnier des mod`eles cellulaires permettant de simuler un trafic routier. L’algorithme est constitu´e de quatre ´etapes qui sont toutes r´ealis´ees l’une apr`es l’autre `a chaque pas de temps.

Les ´etapes 1, 2 et 3 correspondent au calcul des futures vitesses. L’´etape 4 permet d’inscrire chaque vitesse au lieu o`u se trouve le v´ehicule au pas suivant. Le comportement correspondant est illustr´e figure 8. Dans cet algorithme, on e

ff

ectue la mise `a jour des positions de tous les v´ehicules de fac¸on simultan´ee.

Au niveau des ´etapes 2 et 4, des comparaisons et calculs sont e

ff

ectu´es entre d

n

et v

n

ou entre X

n

et v

n

. En e

ff

et, les vitesses sont exprim´ees en cellules par pas de temps. Sur un pas de temps, v

n

correspond donc `a une distance parcourue en nombre de cellules.

On cherche `a ´ecrire la fonction ma j qui permet d’appliquer les ´etapes 1, 2 et 3 de l’algorithme de NaSch pour toutes les valeurs de Vitesses[i, :]. On utilisera la fonction distance(Route

,

i

,

j) qui prend en arguments le tableau Route, l’indice de temps i et l’indice de position j du v´ehicule n et qui renvoie la distance d

n

entre les v´ehicules n

+

1 et n, `a l’instant i. Seules les cellules comprenant un v´ehicule doivent ˆetre trait´ees ; les autres auront une vitesse nulle.

Configuration à l’instant t

Etape 1 : Accélération

!"# !"$ !"$ !"%

Etape 2 : Décélération

!"% !"$ !"& !"%

Sens de parcours

Etape 3 : Facteur aléatoire

!"& !"$ !"& !"%

Etape 4 : Déplacement (Configuration à l’instant t+1)

Mise à jour des vitesses

!"$ !"% !"% !"&

!"& !"$ !"& !"%

Figure 8 – Illustration du sch´ema sur un exemple

Q17. En utilisant l’annexe 1, ´ecrire une fonction ma j(Route

,

Vitesses

,

p

,

vmax

,

i) qui prend en

arguments les tableaux Route et Vitesses, le param`etre al´eatoire p, la vitesse maximale

v max (en cellules par pas de temps) et l’indice de temps i et qui renvoie le tableau

Vitesses suivantes.

(12)

Q18. Ecrire une fonction ´ deplacement(Vitesses

,

Route

,

Vitesses suivantes

,

i) qui permet de d´eterminer les valeurs de Vitesses[i

+

1, :] et de Route[i

+

1, :]. La fonction deplacement renvoie les tableaux Route et Vitesses mis `a jour avec la ligne i

+

1 compl´et´ee. Les vitesses calcul´ees doivent ˆetre plac´ees dans les cellules o`u se trouvent les voitures correspondantes une fois d´eplac´ees. Penser `a int´egrer la prise en compte des conditions aux limites.

IV.3 Simulation et analyse des r´esultats

Apr`es nb temps it´erations sur le temps, on obtient l’´evolution de l’´etat de Route au cours du temps repr´esent´ee figure 9. Les points noirs correspondent aux valeurs 1 du tableau (le reste ´etant `a 0).

Figure 9 – A

ffi

chage de Route (indice i de temps en ordonn´ee, indice j des positions en abscisse)

(13)

Un zoom est r´ealis´e

figure 10

sur les premi`eres valeurs en temps et en espace pour mieux visualiser la formation d’embouteillages.

Figure 10 –

Zoom sur l’a

ffi

chage de Route (indice i des temps en ordonn´ee, indice j des positions en abscisse)

Q19.

Expliquer en quelques phrases en quoi les figures pr´esent´ees montrent que la formation d’un

embouteillage a ´et´e simul´ee. Sur quels param`etres peut-on agir pour que le r´esultat de la simu-

lation se rapproche des r´esultats exp´erimentaux?

(14)

Annexes

Annexe 1 - Algorithme de NaSch

Les op´erations suivantes sont r´ealis´ees `a chaque pas de temps.

– Etape 1 - Acc´el´eration ´

Le v´ehicule n acc´el`ere d’une unit´e s’il n’a pas encore atteint la vitesse maximum.

v

n

(t

+

1)

min (v

n

(t)

+

1,v max) – Etape 2 - D´ec´el´eration ´

Le v´ehicule n d´ec´el`ere si la distance d

n=

X

n+1

X

n

par rapport au v´ehicule pr´ec´edent ne permet pas de maintenir la vitesse v

n

.

v

n

(t

+

1)

min (v

n

(t

+

1),d

n

1) – Etape 3 - Facteur al´eatoire ´

Pour caract´eriser le comportement al´eatoire de chacun des conducteurs, le v´ehicule n d´ec´el`ere avec une probabilit´e p, mais la vitesse n’est pas modifi´ee si v

n

(t

+

1)

=

0 (pas de marche arri`ere).

On utilise pour cela la fonction rand() qui renvoit une valeur al´eatoire

[0..1].

Si rand()

<

p alors v

n

(t

+

1)

max (v

n

(t

+

1)

1,0) – Etape 4 - D´eplacement ´

Une fois les vitesses d´etermin´ees, les positions des v´ehicules au pas de temps suivant sont d´etermin´ees de fac¸on simultan´ee.

X

n

(t

+

1)

X

n

(t)

+

v

n

(t

+

1)

(15)

Annexe 2 - Rappels des syntaxes en Python

Remarque : sous Python, l’import du module numpy permet de r´ealiser des op´erations pratiques sur les tableaux : from numpy import *. Les indices de ces tableaux commencent `a 0.

Python

tableau `a une dimension L=[1,2,3](liste)

v=array([1,2,3])(vecteur)

acc´eder `a un ´el´ement v[0]renvoie 1

ajouter un ´el´ement L.append(5)uniquement sur les listes

tableau `a deux dimensions (matrice) M=array(([1,2,3],[3,4,5]))

acc´eder `a un ´el´ement M[1,2]ouM[1][2]donne 5

extraire une portion de tableau

(2 premi`eres colonnes) M[:,0:2]

tableau de 0 ( 2 lignes, 3 colonnes) zeros((2,3)) dimension d’un tableau T de taille (i,j) T.shape donne [i,j]

s´equence ´equir´epartie quelconque de 0 `a 10.1

(exclus) par pas de 0.1 arange(0,10.1,0.1)

d´efinir une chaˆıne de caract`eres mot="Python"

taille d’une chaˆıne len(mot)

extraire des caract`eres mot[2:7]

boucleFor

for i in range(10):

print ( i )

conditionIf

if (i>3):

print (i) else:

print("hello")

d´efinir une fonction qui poss`ede un argument et renvoie 2 r´esultats

def fonction(param):

res1=param res2=param*param return res1,res2

trac´e de points (o) de coordonn´ees (x,y) plot(x,y,"o")

FIN

Références

Documents relatifs

D´ emontrer que pour qu’une suite soit convergente, il faut et il suffit qu’elle admette une seule valeur

Après avoir donné un aperçu de la situation écono- mique de la Suisse après trois années de guerre, Ia Société de Banque Suisse, dans son dernier bulletin, relève notamment que

Remarque : Il se peut que dans certains cas, lorsqu’on connaît les valeurs de f aux bords de l’intervalle d’étude, on puisse aller plus vite mais dans le cas où Max est très

L'ancienneté et la qualité de notre faculté de médecine, avec des représentants éminents dans notre assemblée, a été à l'origine d'un hôpital public dont la réputation n'est

´Ecrire une fonction debit(v max , c max , C ligne) qui prend en arguments la vitesse maximale (v max), la concentration maximale (c max) et un tableau contenant les concentrations

DATOS TÉCNICOS PARA SU TRASLADO POR CARRETERA Y TODO TERRENO DATI TECNICI PER MARCIA SU STRADA E FUORI STRADA ТЕХНИЧЕСКИЕ ХАРАКТЕРИСТИКИ ПРИ ДВИЖЕНИИ

En cons´ equence, le probl` eme de la r´ esolution d’un syst` eme d’´ equations lin´ eaires de matrice A sera tr` es mal condition´ e, pour ε petit.. • Ce n’est pas

One should note that, for a fixed number of transmit and receive antennas, the diversity order is 40th IEEE - Asilomar Conference on Signals, Systems and Computers, Oct.. Personal