CCINP Modélisation et Ingénierie numérique PSI 2024

Thème de l'épreuve Étude d'un correcteur de facteur de puissance
Principaux outils utilisés électronique de puissance, python, intelligence artificielle
Mots clefs redresseur à capacité en tête, pont de Graëtz, hacheur survolteur, réseau de neurones

Corrigé

 :
👈 gratuite pour tous les corrigés si tu crées un compte
👈 l'accès aux indications de tous les corrigés ne coûte que 1 € ⬅ clique ici
👈 gratuite pour tous les corrigés si tu crées un compte
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
👈 gratuite pour ce corrigé si tu crées un compte
- -

Énoncé complet

(télécharger le PDF)
                                                                       

Rapport du jury

(télécharger le PDF)
                 

Énoncé obtenu par reconnaissance optique des caractères


SESSION 2024 PSI3MO

CONCOURS
COMMUN

INP

ÉPREUVE SPÉCIFIQUE - FILIÈRE PSI

MODÉLISATION ET INGÉNIERIE NUMÉRIQUE

Durée : 4 heures

NB. : le candidat attachera la plus grande importance à la clarté, à la 
précision et à la concision de la rédaction.
Si un candidat est amené à repérer ce qui peut lui sembler être une erreur 
d'énoncé, il le Signalera sur Sa copie
et devra poursuivre sa composition en expliquant les raisons des initiatives 
qu'il a été amené à prendre.

RAPPEL DES CONSIGNES

« _ Utiliser uniquement un Stylo noir ou bleu foncé non effaçable pour la 
rédaction de votre composition ; d'autres
couleurs, excepté le vert, bleu clair ou turquoise, peuvent être utilisées, 
mais exclusivement pour les schémas
et la mise en évidence des résultats.

. Ne pas utiliser de correcteur.

« Écrire le mot FIN à la fin de votre composition.

Les calculatrices sont interdites.

Le sujet est composé de trois parties.

Sujet : 22 pages
Annexes : 2 pages

1/24
Étude d'un correcteur de facteur de puissance

Présentation générale

Le réseau électrique permet l'acheminement de l'énergie électrique des sites de 
production
(centrales nucléaires, barrages hydroélectriques, parcs éoliens, etc.) vers les 
consomma-
teurs. Cet acheminement engendre des pertes d'énergie dites pertes en ligne 
qu'il convient
de minimiser.

Dans la partie | de ce sujet, nous étudions le redresseur dit à capacité en 
tête qui est mis en
oeuvre dans de nombreux appareils électriques alimentés par le réseau 
électrique, mais qui
ne permet pas de minimiser les pertes en ligne. Dans la partie Il, un 
convertisseur statique,
appelé correcteur de facteur de puissance, est étudié. Lorsqu'il est intercalé 
entre le réseau
et une installation électrique domestique, il minimise les pertes en ligne. 
Enfin, dans la par-
tie III, une stratégie de commande du correcteur de facteur de puissance est 
élaborée par
Intelligence Artificielle (IA) dans le but de trouver un compromis entre la 
minimisation des
pertes en ligne et la minimisation des pertes au sein du convertisseur.

Un formulaire et un recueil de fonctions du langage Python sont fournis en 
annexes au sujet.
Partie I - Redresseur à capacité en tête

1.1 - Présentation du montage

Le schéma électrique du redresseur à capacité en tête est donné sur la figure 
1. Les diodes
D;, D>, D; et D, constituent le pont de Graetz et sont supposées idéales.

DA DA

v(t) C---- 8 | U,5(t)

D, A DA

pont de Graetz charge

réseau
électrique

Figure 1 - Schéma électrique du redresseur à capacité en tête

Sauf mention explicite contraire, la tension du réseau sera modélisée dans 
l'ensemble du
sujet par une sinusoïde v(f) = V cos(2rff) avec :

A 1
ÿ = V2 x 230 = 325 V et f= += 50 Hz. (1)

2124
Q1. On admet que si la charge ne comporte pas de condensateur alors :
- les diodes D, et D, sont passantes et les diodes D, et D, sont bloquées 
lorsque
v(t) > 0;
- les diodes D, et D; sont passantes et les diodes D, et D, sont bloquées 
lorsque
v(t) < 0. Tracer alors l'allure de la tension z,,(r) si la charge n'est constituée que du résistor de résistance R. Q2. Un condensateur de capacité C est placé en parallèle du résistor pour réduire l'on- dulation de la tension déterminée à la question précédente. On admet que la tension aux bornes de la charge u,,(r) est quasiment constante lorsque le temps mis par le condensateur à se décharger dans le résistor est très long devant la période de u,,(#). Déterminer une inégalité entre R, C et T pour quil en soit ainsi. La tension aux bornes de la charge sera supposée constante dans tout le reste du sujet. 1.2 - Spectre du courant de ligne La figure 2 présente les chronogrammes de la tension du réseau r(r) et du courant de ligne i() mesurés expérimentalement en présence du redresseur à capacité en tête. 400 : - 8 -- Jension | | -- Courant 300 À Vas 6 200 À LR 1 100 142 = > z
e +
C
© 0 0 &
nn [és
ad =
U O
H --100 --2 QU

--200 | f --4

--300 A 6

--400 L --8

0.00 0.01 0.02 0.03 0.04 0.05

Temps (s)

Figure 2 - Chronogrammes de la tension du réseau v(r)
et du courant de ligne i(f)

Un extrait du programme Python permettant de calculer le spectre du courant de 
ligne à(f)
est donné dans le tableau 1. Les bibliothèques numpy et pyplot sont supposées 
installées
de la manière suivante : import numpy as np et import matplotlib.pyplot as plt. 
Le courant
de ligne /(t), échantillonné à une fréquence de 50 kHz par l'oscilloscope 
utilisé, est supposé
chargé dans un tableau numpy 1D noté " courant ".

3/24
Q3. Compléter les lignes 2, 4, 6, 8, 10, 14, 15, 16, 17 et 18 de l'extrait de 
programme donné
dans le tableau 1. On rappelle qu'un recueil de fonctions Python utiles est 
donné en
annexe à ce sujet.

N° | Programme Python

# Fréquence d'échantillonnage

Fe = ...

# Nombre d'échantillons

N =

# Calcul de la transformée de Fourier discrète
fft_courant = ...

# Module de la transformée de Fourier discrète
mod _ fft courant = ...

# Vecteur fréquence

10 | freq = ...

GO OO --J OO O1 & © ND =

12 | # Tracé du spectre

13 | plt.figure(1 figsize=(8,6))

14 | plt.plot(...,...,color= gray ,linewidth=2)

15 | plt.xlim(...,.....)

16 | plt.xlabel(...,fontsize=16)

17 | plt.ylim(...,.....)

18 | plt.ylabel(...,fontsize=16)

19 | plt.tick params(axis="both .labelsize=16)
20 | plt.grid()

21 | plt.show()

Tableau 1 - Programme de calcul du spectre du courant de ligne

Le développement en série de Fourier (D.S.F.) de i(r) est de la forme :

(D = > hi cos(2rnft + wi). (2)
n=]

Q4. Donner les valeurs des coefficients /, qui peuvent être déduites 
graphiquement du
spectre en amplitude de i(r) de la figure 3, obtenu à partir du programme. Que 
peut-
on dire des harmoniques pairs ?

Q5. Retrouver par le calcul la constatation faite à la Q4 en remarquant que le 
courant
d'intensité :(r) vérifie la symétrie de glissement : i(9) = --i(t -- T/2).

1.3 - Puissance moyenne fournie par le réseau

On note P la puissance moyenne fournie par le réseau à l'entrée du pont de 
Graetz. Comme
ce dernier est constitué de quatre diodes supposées idéales, P est également la 
puissance
moyenne reçue par la charge.

Q6. Établir l'expression de P en fonction de Y et de certains paramètres du 
D.S.F. de i(r).
Commenter. On rappelle qu'un formulaire est donné en annexe.

4/24
45 T T Ï Î Ï

2.5 t

A)

De
[æ)
T

Courant (
+
un

LO +

0.5 +.

0.0 LL à À Si | S
0 100 200 300 400 500 600 700
Fréquence (Hz)

Figure 3 - Spectre en amplitude du courant

Q7. Calculer numériquement P en supposant que w, = 0.
1.4 - Modélisation du réseau

On admet dans la suite que le réseau électrique peut être modélisé par 
l'association série
d'une source de tension de force électromotrice e(r) sinusoïdale de fréquence 
de 50 Hz, d'un
résistor de résistance r et d'une bobine d'inductance 1 ( figure 4). Lorsque le 
réseau délivre
un courant d'intensité :(r) non sinusoïdal, alors la tension v(r) se trouve 
légèrement déformée.

r À i(t) ï (0
e#}(]) v() UD | CE R
réseau électrique pont de charge
Graetz

Figure 4 - Modélisation du réseau électrique

Q8. On souhaite enregistrer le chronogramme de la force électromotrice e(r) à 
l'aide d'un
oscilloscope numérique. Expliquer comment procéder.

Les chronogrammes de la différence e(r) -- v(r) et du courant d'intensité i(r) 
sont donnés dans
la figure 5.

Q9. Expliquer pourquoi les chronogrammes de la figure 5 conduisent à considérer 
1 = 0
en première approximation. Evaluer ensuite le paramètre r.

9/24
Tension (V)
Courant (A)

0.00 0.01 0.02 0.03 0.04 0.05
Temps (s)

Figure 5 - Chronogrammes de la différence e(r) -- v(r)
et du courant de ligne i(f)

1.5 - Pertes en ligne

On note P,...; les pertes en ligne qui correspondent à la différence entre la 
puissance moyenne
fournie par e(r) et la puissance moyenne P reçue par la charge.

Q10. Donner l'expression littérale de P,.... Numériquement on trouve P,.., = 21 
W. Expli-
quer comment est obtenue cette valeur numérique à partir des valeurs des 
coefficients
I, obtenues à la Q4 (le calcul numérique complet n'est pas demandé).

Q11. Pour une même puissance moyenne fournie par le réseau électrique, 
expliquer pour-
quoi un courant de ligne i(r) sinusoïdal en phase avec la tension du réseau 
v(r) permet
de réduire les pertes en ligne par rapport au cas d'un courant de ligne 
impulsionnel.
Pour le redresseur à capacité en tête étudié, quelle réduction des pertes en 
ligne
obtiendrait-on si le courant de ligne i(r) était sinusoïdal en phase avec v(r) 
? On don-
nera le résultat sous forme d'un pourcentage.

Dans le but de réduire les pertes en ligne, on étudie dans la deuxième partie 
de ce sujet un
dispositif permettant l'absorption d'un courant de ligne sinusoïdal.

6/24
Partie Il - Correcteur de facteur de puissance

Un correcteur de facteur de puissance est un dispositif de l'électronique de 
puissance qu'on
intercale entre le réseau et la charge qui permet au courant de ligne d'être 
sinusoïdal et en
phase avec la tension délivrée par le réseau. Le correcteur de facteur de 
puissance étudié
ici est conçu à partir d'un hacheur survolteur.

11.1 - Hacheur survolteur

Le hacheur survolteur est tout d'abord utilisé pour transférer de la puissance 
entre une source
de tension constante et positive U, et la charge. Le montage correspondant est 
donné sur
la figure 6. Le transistor 7. et la diode D sont supposés idéaux. La tension 
aux bornes de la
charge est supposée constante : u,.n(t) = Ur, aVec Uy > U,. Avec les 
conventions d'orienta-
tion précisées sur la figure 6, on note :

- respectivement u7,(r) et u,(r) les tensions aux bornes de 7; et de D;
- i1(), ir.) et iL(n) les courants traversant respectivement la bobine, 7, et D.

0 on (D D

i(L) < " ) D u,1() VAUT CH R| ||U, hacheur charge survolteur Ê Figure 6 - Montage avec hacheur survolteur Le signal de commande du transistor T. est périodique de période 7%, il est tel que : - pour te [0,a7lf, avec a EURl0, 1f, le transistor T. est fermé (on a donc ur, = 0); - pour fr EUR [aly, T], le transistor 7, est ouvert (on a donc ir, = 0). On étudie par la suite le régime établi de conduction continue pour lequel le courant d'in- tensité ;,(r) dans la bobine ne s'annule pas. On notera L,;, et L.. Ses valeurs minimale et maximale respectivement. Q12. Déterminer ur,(?), up(r), iz (D), ir, (®) et in) pour f EUR [0, aT4[. On justifiera soigneusement l'état de la diode D. Q13. Même question pour r EUR [aTy, Ty]. Q14. Tracer alors les allures des chronogrammes correspondants. Q15. Établir la relation existant entre «, U., et U, dans ce régime de fonctionnement. Q16. On a mesuré AI = Iyyx -- Lin = 0,50 À pour & = 0,50, Us = 80 V'et Ty = 1,0-10 * s. Calculer numériquement la valeur de Z. 7124 11.2 - Principe du correcteur de facteur de puissance et commande du transistor Le circuit de puissance du correcteur de facteur de puissance étudié est obtenu en rem- plaçant la source de tension constante U, par l'association du réseau et du pont de Graetz (figure 7). On note à, cons(f) = I] cos(2x f n)|, le courant dans la bobine qui est associé à un courant de ligne de la forme i(r) = Îcos(2x f r) avec Î > 0, c'est-à-dire un courant de 
ligne sinusoïdal et
en phase avec la tension du réseau v(r) = Y cos(2x f f).

(0 nn a.
i({) nm] 4
réseau |},
. v(L T,, = À CF,
électrique k Y
pont de hacheur charge
este survolteur

Figure 7 - Circuit de puissance du correcteur de facteur de puissance

Le principe de ce correcteur de facteur de puissance est de commander le 
transistor 7. pour
que le courant d'intensité ï,(r) soit le plus proche possible de i; cons(t) = 
I] cos(2x f n|. Pour
cela on dispose :

- d'une tension de consigne v;, 5, telle Que v;, cons = ki. cons AVEC k = 1,0 
VA:
- d'une tension v; ., image du courant d'intensité ï,, telle que v;, , = kir.

La loi commande adoptée est, à tout instant, construite à partir d'un paramètre 
À > 0 comme
SUiIt :

= Si [V;, cons -- Vi.mesl < À AlOrs l'état du transistor est inchangé ; = Si V;, mes -- Vi.cons > À alOrs le transistor doit passer à l'état bloqué ;
= Si V;, mes -- Vi.cons < --AÀ AlOrs le transistor doit passer à l'état passant. On rappelle sur la figure 8 trois montages à base d'Amplificateurs Linaires Intégrés (ALT) et les relations entrée(s)-sortie correspondantes obtenues avec le modèle de l'ALT idéal de gain infini. On note V,,, la tension de saturation supposée identique pour les trois ALT considérés. Le signal de commande . du transistor T, est tel que : - Siu. = --V,, alors 7. est à l'état passant, - Siu,. = +V,, alors 7. est à l'état bloqué. Q17. Proposer un circuit de commande du transistor T. mettant en jeu deux des trois mon- tages de la figure 8. Expliciter alors le paramètre A en fonction des résistances utili- sées et de V,,.. 8/24 S A + V, >
(SAR À
Y (64)
FF.
R
... d
() EH y En R Vu
2
S
N
= D>0o0 PR + Wu >
A 7? 7
+ {) E? ÿ
À (SAR
e F ç )
R, ° Fu
e en = R;
TTTT CTIT Y î R,+R, sat
S

Figure 8 - Trois montages à base d'ALI.

9/24
11.3 - Mise en oeuvre

Les figures 9, 10 et 11 présentent les relevés de la tension »(r) et du courant 
d'intensité :(r)
pour trois valeurs du paramètre A.

Q18. Commenter l'allure des chronogrammes de la figure 9. Comment le paramètre 
A se
manisfeste-t-il dans ces chronogrammes ? Evaluer la valeur de À, dans le cas de 
la
figure 9. Comment évolue la valeur du paramètre A de la figure 9 à la figure 11 
?

Q19. Décrire l'allure du spectre en amplitude du courant de ligne i(#). Comment 
l'allure du
spectre est-elle modifiée lorsque le paramètre À passe de la valeur A, (figure 
9) à
la valeur A; (figure 11). On distinguera clairement les cas des parties " 
basses fré-
quences '" et " hautes fréquences " du spectre.

Q20. Quelle caractéristique des ALI des montages de la figure 8 constitue une 
limite tech-
nique à la diminution de A ?

400 : - 8
| -- Jension | | ---- Courant |
300 À F2 6
200 | : 14
-- 100 Le
2 < C : + C (e] 0 Aÿ © n [és C =) YU O k 100! 1-20 --200 | _4 300 | --6 ---400 ; --8 0.00 0.01 0.02 0.03 0.04 0.05 Temps (s) Figure 9 - Chronogrammes de la tension v(r) et du courant d'intensité i(r) pour A; 11.4 - Dissipation thermique dans le transistor Lors du fonctionnement du correcteur de facteur de puissance, le transistor T. commute K fois par période T de la tension »(r) délivrée par le réseau électrique, ce qui correspond à une fréquence de commutation moyenne du transistor : f, = T Or K est d'autant plus grand que le paramètre A est petit ( figure 9 à figure 11), on en déduit que la fréquence de commutation moyenne du transistor est une fonction décroissante du paramètre A. Ceci est illustré par le relevé expérimental présenté sur la figure 12. 10/24 Tension (V) Tension (V) 400 300 T T T T 8 -- Tension -- Courant 0.00 0.01 0.02 0.03 0.04 0.05 Temps (s) Figure 10 - Chronogrammes Courant (A) de la tension v(r) et du courant d'intensité i(r) pour A; 400 300 de la tension v(r) et du courant d'intensité i(r) pour A; T T T I 8 -- Tension -- Courant 0.00 0.01 0.02 0.03 0.04 0.05 Temps (s) Figure 11 - Chronogrammes 11/24 Courant (A) = un HO BON ON WOW BR Oo m2 M 2 UM Oo EN Es 8 æ Oo un Î Fréquence de commutation moyenne (kHz) o [= 0 100 200 300 400 500 600 700 800 Delta (mV) Figure 12 - Fréquence de commutation moyenne en fonction du paramètre A Lors de son fonctionnement, le transistor dissipe sous forme thermique une partie de la puissance électrique qui transite dans le correcteur de facteur de puissance. Ces pertes sont principalement de deux types : - les pertes par conduction P.,,4 qui dépendent uniquement de la valeur efficace du cou- rant circulant dans le transistor ; - les pertes par commutation P.,, qui sont proportionnelles à la fréquence de commuta- tion moyenne. À chaque commutation (blocage ou amorçage) du transistor une quan- tité d'énergie E,;,,,,, est dissipée sous forme thermique au sein du transistor. Un dissipateur thermique est monté sur le transistor. On a relevé, en régime permanent, la température T;;, à la surface de ce dissipateur pour différentes valeurs du paramètre A. La précision des mesures de température est de + 1 °C et les pertes par conduction sont supposées constantes lors cette expérience. Sur la figure 13, les températures mesurées sont tracées en fonction de la fréquence de commutation moyenne correspondante. Une régression affine donne : T;;, = a f., + b avec a = 5,5 °C-kHz'! et b = 40 °C. Q21. Le modèle affine choisi est-il en cohérence avec les mesures effectuées ? Justifier. On donne : - la température de l'air ambiant loin du dissipateur : T,;, = 20 °C; - [a résistance thermique entre le transistor et la surface du dissipateur: Ry rai; = 1,0 Sl; - [a résistance thermique entre la surface du dissipateur et l'air ambiant : R,, 4is_uir = 4,0 SI. 12/24 Q22. Proposer, sous la forme d'un schéma électrique équivalent, une modélisation du com- portement thermique du transistor en régime permanent. En déduire les expressions des paramètres a et b. Q23. Déterminer les valeurs numériques de P,,,, et de Ep. 70 Î Il Il Il Il Il -- ajustement affine 30 } Température dissipateur (°C) 0.0 0.5 1.0 1.5 2.0 2.5 3.0 3.5 4.0 4.5 Fréquence de commutation moyenne (kHz) Figure 13 - Température du dissipateur en fonction de la fréquence moyenne de commuta- tion Partie III - Contrôle du correcteur de facteur de puissance par Intelligence Artificielle 11.1 - Présentation du problème Dans cette dernière partie, le correcteur de facteur de puissance, étudié dans la partie Il, est utilisé pour minimiser les pertes en lignes engendrées par l'installation électrique d'un petit studio. L D MM M] i(t) LT UT sms | réseau || " T al installation électrique domestique pont de correcteur de FP: onduleur Graetz Figure 14 - Correcteur de facteur de puissance utilisé pour une installation domestique 13/24 éclairage radiateur chauffe-eau X; Y; X, éteint éteint éteint (A1 OW OW puissance puissance maintient à moitié moitié température 50 W 50 W puissance puissance puissance maximale maximale maximale 100 W Q27. Combien y a-t-il de combinaisons possibles entre les différents modes de fonctionne- ment de chacun des quatre éléments ? Comme cela a été vu dans la partie Il, le dispositif de la figure 14 permet de réduire les pertes en ligne engendrées par l'absorption d'un courant impulsionnel. Celles-ci tendent vers leur valeur minimale lorsque le paramètre A tend vers 0. Cependant, cette diminution se fait au prix d'une augmentation de la fréquence de commutation moyenne f., et donc des pertes au sein du transistor 7; (cf sous-partie 11.4). Si la puissance dissipée dans 7. ne peut pas être exploitée, il est alors nécessaire de rechercher une valeur du paramètre À correspondant à une minimisation des pertes totales : pertes en ligne + pertes dans T.. La valeur du paramètre À permettant de minimiser les pertes totales, notée A,,,, a été évaluée empiriquement pour quatorze combinaisons entre les différents modes de fonctionnement des quatre éléments de l'installation électrique étudiée. Ces valeurs sont présentées dans le tableau 3. Le paramètre A s'exprime en volts et est positif. Lorsque la valeur ---1 est indiquée pour À,,,, cela signifie que pour minimiser les pertes totales, il est préférable de désactiver le correcteur de facteur de puissance et de connecter l'installation directement au réseau électrique. box-TV éclairage | radiateur |chauffe-eau Aun(V) x; fe, x. X, À 0 0 0 I _] E 0 0 | ] _] = 0 0 2 0 _] d & 0 0 0 2 =] EUR 0 0 l 2 _] D 0 1 0 0 0,18 [D] É 2 2 0 0 0,32 A 2 2 2 0 0,49 | 3 2 2 2 _] n 0 0 l 0 | É 0 0 2 | _] d 0 0 2 2 -i £ 1 0 0 0 0.22 | 2 2 I 0 0,42 Tableau 3 - Valeurs optimales du paramètre A pour quatorze combinaisons différentes Q28. Dans le tableau 3, expliquer pourquoi A,,,=-1 pour toutes les combinaisons telles que x = 0 et x> = 0.

Q29. Commenter le choix À,,,=-1 pour la combinaison (x7, x2, x3, x4) = (2, 2, 
2, 2).

15/24
11.2 - Contrôle du paramètre À avec un réseau de neurones

Il faut désormais mettre en place un contrôleur capable de fournir la consigne 
À,,, en fonction
des différentes combinaisons (x3, x2, x3, x4). Le contrôleur associé au 
correcteur de facteur
de puissance doit permettre en temps réel :

- Soit de désactiver le correcteur de facteur de puissance en connectant 
l'installation
électrique du studio directement au réseau électrique (cas A =-1);

- Soit de fixer de la valeur du paramètre A lorsque le correcteur de facteur de 
puissance
est activé.

Q30. Proposer un mode de communication pour que les différents appareils 
électriques de
l'installation puissent transmettre leurs modes de fonctionnement au 
contrôleur. Aucun
détail technique précis n'est attendu pour cette question.

Le tableau 3 nous donne la correspondance entre les états des appareils x; et 
le réglage
À du correcteur. Les données d'entraînement sont celles qui vont servir à 
l'entraînement
du réseau de neurones. Les données de tests sont celles qui vont permettre de 
valider si
l'entraînement s'est bien effectué. D'un point de vue système, cela revient à 
chercher la
relation entre des données d'entrées x; et la sortie A (figure 15) qui illustre 
les entrées-sortie
du système.

X;
x. reseau "
de >
x
? neurones
X,

Figure 15 - Entrées-sortie
du réseau de neurones.
L'objectif est de trouver un modèle de comportement qui permet, à partir du 
tableau 3, de :

- retrouver les valeurs d'entraînement,
- prédire les valeurs de test.

Pour y arriver, l'idée est d'entraîner un réseau de neurones de manière 
supervisée à partir
des données du tableau 3.

Q31. Quels sont les avantages et les inconvénients du choix d'un réseau de 
neurones pour
modéliser la commande ?

Q32. L'apprentissage supervisé est-il pertinent ? Justifiez votre réponse.
111.3 - Définition du perceptron

Le réseau de neurones choisi est un perceptron multicouche à une première 
couche cachée
(couche d'entrée), une deuxième couche cachée et une couche de sortie. Le 
système prend
en entrée un vecteur à quatre composantes (x, x2, x3, x4). La couche d'entrée 
est composée
de quatre neurones numérotés de 1 à 4. La deuxième couche cachée contient 
également

16/24
quatre neurones numérotés de 1" à 4'. La couche de sortie contient un seul 
neurone numéroté
1". La sortie de la couche de sortie est A. Chaque neurone prend en entrée les 
sorties de la
couche précédente et renvoie une unique sortie.

La figure 16 présente cette structure.

couche sortie

Entrées Premuère couche cachée Deuxième couche cachée
(couche entrée)

Figure 16 - Structure du réseau de neurones choisi

Le détail d'un neurone est défini par la figure 17.

Xi

WW, À
Wia D b.
X3
ce W; -- T
[2 a; -1(Dws+n)
f hi.
À 3
Wia
À4
7 Wia

Figure 17 - Structure d'un neurone i de la première couche

La figure 17 d'un neurone numéroté " i" de la première couche permet, à partir 
des valeurs
d'entrée (x1, x2, x3, x4), de calculer la valeur de sortie a;. Les sorties de 
la première couche
deviennent les entrées de la couche suivante et ainsi de suite. Tous les 
neurones vont se
comporter comme ceux de la première couche. Il est à noter que la sortie du 
dernier neurone
correspond à A.

Nous noterons :

- w;; : le poids entre l'entrée j et le neurone i, c'est un nombre réel:

- b;,:le biais du neurone i, c'est un nombre réel ;

-_ f : la fonction d'activation du neurone i qui s'applique à D WijX; + bi.
j

17/24
Remarque : le processus qui permet de trouver les valeurs de b; et de w;; va 
être itératif et il
faut donc des valeurs initiales. Celles-ci sont choisies aléatoirement.

1
l+e*
En Python, l'utilisation de la fonction exp de la librairie numpy permet de 
calculer, pour une
entrée X de type tableau, la matrice f(X), issue de l'application de la 
fonction f à tous les
éléments de la matrice X. Cette fonction d'activation se traduit par :

La fonction d'activation choisie est une sigmoïde définie par f : R --R,x -- 
f(x) =

N° | Programme Python
1 | def f(x):
2 return(1/(1+np.exp(-x)))

Tableau 4 - Fonction d'activation

Q33. Calculer la dérivée de la fonction f notée f'(x) et écrire une fonction 
Python notée
f_prime qui prend en argument x et qui renvoie la dérivée f"(x). L'argument 
d'entrée x
est de type tableau.

111.4 - Phase d'inférence

Notation :

- les grandeurs scalaires seront notées en minuscule, par exemple w;
- les grandeurs matricielles seront notées en majuscule, par exemple W;
- l'indice k fait référence à la couche, par exemple W, est pour la deuxième 
couche.

La phase d'inférence consiste à calculer la sortie à partir d'un vecteur 
d'entrée connu.

La sortie du dernier neurone du réseau de la figure 16 est la valeur A 
recherchée et peut
s'écrire Sous la forme suivante :

À = f(W3 (WT WiX + B:;) + B5) + b3)).

Q34. Donner les dimensions des matrices W,, W;, B, et b:.
On cherche à modéliser la couche d'entrée du réseau de neurones de la figure 16.

Q35. Donner l'expression de la matrice W, qui vérifie :

D xl [bb -- -- -- [xl [bb
X b -- -- -- --||x b
y2 = W, 2 + 2| 2 + 2 |
y3 X3 D; TO = --||x3 D;
| YA. | X4 | Da | -- -- -- --]J|X4 Da.

Q36. Écrire en Python la fonction inference_ couche qui va prendre en argument 
le vecteur
d'entrées noté *X, la matrice des poids notée W, le vecteur de biais noté B et 
qui renvoie
le vecteur des sorties de la couche noté A.

La figure 18 montre le tracé de la fonction d'activation sigmoïde.

18/24
1.0 - |
'4R 0.7 -

0.6 -
0.5 -
0.4 -

0.3 -

0.0 -

--20 15 --10 --5 0 5 10 15 20 --1.00 --0.75 --0.50 --0.25 0.00 0.25 0.50 0.75 
1.00

Figure 18 - Représentation graphique de la fonction sigmoïde f pour x EUR 
[--20, 20] (gauche)
etxe[-1,1] (droite)

Q37. Calculer À = f(Y) dans le cas où :

[ai | y. xl [0 | 0,3 0,2 0,25 0,04 bil [0
_læl.., Il, lwl [f., [0,4 -0,3 0,6 -0,3| , {ml [0
AZ d3 LE V3 AZ X3 _ (0) We --0, 4 0, 3 --0, 6 --0, 4  B= D; _ 0!

da | | Va | | X4 | [O | l -- | --0, 75 --0, 1 --0, 5 | Da. [O |

Notons que, pour cette première phase d'apprentissage qu'on appelle souvent 
l'initialisation,
les valeurs des poids ont été générées aléatoirement et les biais choisis nuls. 
En reproduisant
le même calcul pour les couches suivantes, nous calculons que À = 0,59 V. Cela 
signifie que
pour l'éclairage allumé et tous les autres appareils éteints, il faudrait un 
réglage A = 0, 59 V.

Cependant, le tableau 3 indique que pour cette combinaison d'états, le réglage 
optimal est
Aopt = 0,18 V.

Il faut modifier les valeurs des poids et des biais pour que la sortie À du 
réseau de neurones se
rapproche de A, et ce, pour toutes les combinaisons d'entrée possible. 
Autrement dit, pour
toute combinaison d'entrée (x, x2, x3, x4), on souhaite minimiser l'erreur 
(choisie quadratique
ici) entre la sortie A calculée par le réseau de neurones, et le réglage 
optimal AÀ,,,, déterminé
à l'avance. Pour ne pas alourdir les notations on notera désormais t le réglage 
optimal À,,,.
Le calcul de l'erreur (1 - A)° va être utilisé pour calculer des " meilleures " 
valeurs de poids
et de biais : c'est la phase d'entraînement qui fait l'objet de la sous-partie 
suivante.

II1.5 - Rétropropagation

Nous disposons de N = 9 données d'entraînement, c'est à dire toutes les paires 
[Xe te) où
Xe = (x3, X2, X3, x4) est le vecteur de la combinaison des entrées et r, est 
simplement la valeur
optimale À,,,, évaluée empiriquement et qui constitue la valeur cible souhaitée 
en sortie du
réseau de neurones.

19/24
Ces données d'entraînement sont recensées dans le tableau 3. Pour chaque donnée 
d'en-
traînement [Xe te}, on notera A, le résultat réellement renvoyé par le réseau 
de neurones.
Le but de la phase de rétropropagation est de calculer des valeurs de 
paramètres W et B
qui 'rapprochent " tous les A, calculés pour les X, des valeurs optimales r,. 
Une instance de
rétropropagation s'effectue en cherchant les valeurs des paramètres W et B qui 
minimisent
la fonction de coût quadratique entre une cible r, et la valeur calculée A, : 
£Ly = (te -- Ar).

Pour des raisons de lisibilité, on notera £ = £y.

Pour ce faire, les poids W et les biais B sont mis à jour par la méthode de la 
descente du
gradient, étudiée dans les questions ci-après. Afin de se fixer les idées, on 
s'intéresse à
la première couche du réseau de neurones, ayant pour entrée le vecteur X et 
pour sortie
le vecteur d'activations À : A = f(W,X + B;). Le fonctionnement des autres 
couches sera
identique. Pour des raisons de lisibilité, on posera désormais : W = W,, B = 
B,,Y = WX +B.
On a donc :

À = f(WX + B) = f(Y).

Les valeurs des paramètres W et B de cette couche sont mis à jour grâce aux 
formules
suivantes :

( Ô
W = W- a £
OW
4
B=B-a°£
À OB

où a est le taux d'apprentissage, un paramètre à choisir manuellement. On 
adopte la notation
suivante :

DL, 0L joL jéL
ô£ : Owi1 OWi4 OL : ox OL : 0er
OW a£ a£ OX OL OA OL
L OWa] OW44 | L OX4 | L 0aa ]
OL OL da OL Oa; OL oas
N = -- .... b;
ous avons Ou -- dar 0w, + a w, +, das à w, © a-1[Z x; + |

Q38. Montrer que _ = )x;.

1]

Q39. En utilisant la relation précédente, donner la relation matricielle entre 
Ed oL ,f W)et

X, puis entre -- 0L ÔL ,W, X et B.

OW° 6A '

20/24
En poursuivant l'analyse il est possible de trouver la relation suivante qui va 
permettre d'ex-
primer l'erreur en entrée en fonction de l'erreur en sortie :

OL OL ,
OX -- a LW: SP CWX + b)].

Il est à remarquer que dans la formule précédente la multiplication matricielle 
se fait terme
à terme.

Q40. Écrire la fonction Python retropropagation-couche qui prend en argument :
- la valeur d'entrée d'une couche, notée X,

la matrice de poids d'une couche, notée W,

le vecteur de biais de la couche, noté B,

le vecteur d'erreur en sortie de la couche, noté Ea,

la valeur du coefficient d'apprentissage, notée alpha.

Cette fonction doit calculer :

OL
- Ey= =
W-- Sy
OL
B 0B ;
OL
- Ey = --,
À OX

Cette fonction doit renvoyer :
- la matrice de poids W mise à jour,
- le vecteur de biais B mis à jour,

- le vecteur gradient du coût Ex = FT

Ainsi, après la phase d'initialisation, en appliquant une succession de phase 
d'inférence et
de rétropropagation pour chacune des données d'entraînement, et ce, plusieurs 
fois, on peut
faire diminuer la valeur de la fonction de coût total jusqu'à atteindre la 
précision demandée :

N N
Lio = VND Gr A =1/N D Le
=] =]

11.6 - Analyse des résultats

L'évolution de la fonction de coût total Z,,, pendant la phase d'entraînement 
est donnée sur
la figure 19. Elle comporte 100 itérations.

Le graphique montre que la phase d'entraînement, constituée d'une succession 
d'inférences
et de rétropropagation, a permis de diminuer la fonction coût, c'est-à-dire 
l'erreur quadratique
moyenne entre le résultat À du modèle et les valeurs cibles des données 
d'entraînement. I
y a désormais peu d'écart pour les données d'entraînement.

21/24
0.7 -

0,6 -

0.5 -

0.4 -

0.3 -

0.2 -

Evolution de la fonction erreur

0.1 -

0.0 -

(e] 20 40 60 80 100
nombre itération

Figure 19 - Entraînement modèle

PONT orrese Rettenr Fr eau Al AM

À 0 0 0 1 |-0,981

E 0 0 I I "] - 0,979
=: 0 0 2 0 1 |-0961
£ 0 0 0 2 1 | -0,983
É 0 0 l 2 -1 | -0,980
É 0 0 0 0,18 | 0,178
È 2 2 0 0 0,32 | 0,341
A 2 2 2 0 0,49 | 0,474
| 2 2 2 2 -1 | -0,970
1 0 0 l 0 -1  |-0,919
É 0 0 2 1 1  |-0,977
$ 0 0 2 2 1 |-0,978
É l 0 0 0 0,22 | 0,015
| o) 2 0 0,42 | 0,412

Tableau 5 - Valeurs optimales du paramètre A
pour quatorze combinaisons différentes

Le tableau 5 présente les données d'entraînement et les données tests, et sa 
dernière co-
lonne recense les valeurs Delta calculées par le réseau de neurones.

Sur les 14 données disponibles, N = 9 données sont utilisées lors de la phase 
d'entraînement
et les 5 autres sont réservées comme données tests, afin de tester la 
robustesse du modèle
en soumettant des entrées non utilisées pour la phase d'entraînement, afin de 
vérifier si la
prédiction du modèle est bonne même sur des données nouvelles.

Q41. Analyser les résultats. Ce réseau de neurones est-il capable de bien 
prédire la valeur
optimale de A ?

Q42. Pour améliorer le modèle est-il préférable d'augmenter le nombre 
d'itérations de l'en-
traînement ou d'augmenter le nombre de données de test? Justifier votre réponse.

22/24
ANNEXE 1 - FORMULAIRE

Pour tous réels a et b :
cos(a + b) = cos a cos b -- sin a sin b

cos(a -- b) = cos a cos b + sin a sin b
sin(a + b) = sin a cos b + sin b cos a

sin(a -- b) = sin a cos b -- sin b cos a

Il

COS a COS b = 5 (cos(a + b) + cos(a -- b))
Il

Sin a Sin b -- 5 (cos(a -- b) -- cos(a + b))

Sin a COS b = (sin(a + b) + sin(a -- b))

DIR

Soit un signal x(#), on notera  la valeur moyenne temporelle de ce signal.

Si x(1) est T-périodique alors :

1 T
< X(f) >= T Î X(?) dt.

Pour tous réels jf, f, w, et w :
< COS(27 fit + @1) >= 0 Si fi AZ 0
< Sin(2x fit + 1) >= 0 si fi Z#0

1
< cos" (2x fit + @1) >=< sin"(2x ft + 2) >= D
< COS(27 fit + 1) COS(27 fit + 2) >= 0 si h#p
< Sin(27 ff + Di) SiN(27 ft + Di) >= 0 Si fi F hf

< COS(27 fit + @1) Sin(2x fit + @>) >= 0 si (fi, f2) EUR (0, 0)

Sous des conditions de régularité qui seront supposées vérifiées dans ce sujet, 
un signal
x(r) T-périodique peut s'écrire :

x(P) =< x) > + D À, cos(2x n f 1 + p).

n=]

Cette expression est appelée développement en série de Fourier (D.S.F.) du 
signal x(?).

Les amplitudes Y, du développement en série de Fourier de x(r) vérifient 
l'identité de Parse-
val :

 = ° +

23/24
ANNEXE 2 - FONCTIONS PYTHON UTILES

La bibliothèque numpy est supposée installée de la manière classique - import 
numpy as np.

np.dot (A, B) : retourne le produit de deux matrices [A | et LB]

AT : retourne la transposée d'une matrice A

len(X) : retourne le nombre d'éléments de l'objet X. Ce dernier peut être une 
liste ou un
tableau numpy,.

np.abs(X) : retourne un tableau dont les éléments correspondent aux modules des 
éléments
du tableau X.

np.arange(a, b, p) : retourne un tableau 1D dont les éléments sont répartis 
avec un pas p
entre a et b, a est le premier élément du tableau, le dernier élément est 
strictement inférieur
à b. Si l'argument p n'est pas renseigné, il est pris par défaut égal à 1.

np.fft.rfft(X) : retourne, sous forme d'un tableau 1D de nombres complexes, la 
transformée
de Fourier discrète du signal échantillonné correspondant à X, un tableau 1D 
dont les élé-
ments doivent être réels. Les éléments du tableau retourné correspondent aux 
fréquences

n-- avec n EUR {[0, Lil N le nombre d'éléments de X et F, la fréquence 
d'échantillonnage.

Enfin, le facteur multiplicatif 2/N doit être appliqué au tableau 1D retourné 
pour obtenir le
spectre du signal continu correspondant au signal échantillonné contenu dans X.

np.linspace(a, b, N) : retourne un tableau 1D de N éléments répartis 
linéairement entre a
et b, a est le premier élément du tableau, b le dernier.

plt.plot(X, Y) : permet de tracer le tableau 1D Y en fonction du tableau 1D X. 
Les deux
tableaux doivent avoir le même nombre d'éléments. Des arguments optionnels 
permettent
de choisir la couleur du tracé, l'épaisseur du trait, etc.

plt.xlim(x_min, x_max) : permet de limiter un tracé aux abscisses comprises 
entre x min
et x max.

plt.xlabel('titre abscisses') : permet d'attribuer un titre à l'axe des 
abscisses. Des argur-
ments optionnels permettent de choisir la taille de la police, la couleur du 
texte, etc.

plt.ylim(y_min, y_max) : permet de limiter un tracé aux ordonnées comprises 
entre y min
et y_ max.

plt.ylabel('titre ordonnées') : permet d'attribuer un titre à l'axe des 
ordonnées. Des argur-
ments optionnels permettent de choisir la taille de la police, la couleur du 
texte, etc.

FIN

24/24

NATIONALE - 241105 - D'après documents fournis

IMPRIMERIE