La présentation, la lisibilité, l'orthographe, la qualité de la rédaction, la clarté et la précision des raisonnements entreront pour une part importante dans l'appréciation des copies. Les candidats sont invités à encadrer dans la mesure du possible les résultats de leurs calculs. Aucun document n'est autorisé. L'utilisation de toute calculatrice et de tout matériel électronique est interdite. Seule l'utilisation d'une règle graduée est autorisée. Si au cours de l'épreuve, un candidat repère ce qui lui semble être une erreur d'énoncé, il la signalera sur sa copie et poursuivra sa composition en expliquant les raisons des initiatives qu'il sera amené à prendre.
On s'intéresse dans ce problème aux processus de Markov finis homogènes à temps continu et on étudie deux exemples de modélisation en lien avec des crédits bancaires.
Le problème comporte quatre parties. Les parties 2 et 3 sont indépendantes de la partie 4.
Soit n ∈ ℕ^∗, n ⩾ 2. On considère, dans la suite du problème, une famille de variables aléatoires X_t, pour t ∈ ℝ^+, sur un espace probabilisé ( Ω, A, ℙ ), vérifiant les propriétés suivantes:
(H1) Pour tout t ⩾ 0, X_t(Ω) = {1, …, n}.
(H2) Pour tout r ∈ ℕ^∗ et t_1 < t_2 < … < t_r des réels positifs, i_1, …, i_(r + 1) des éléments de {1, …, n} et s un réel positif, si ℙ([X_(t_1) = i_1] ∩ … ∩ [X_(t_r) = i_r]) ≠ 0,
(H3) Pour tout i ∈ {1, …, n}, la fonction f_i : t ↦ ℙ(X_t = i) est définie, dérivable sur ℝ^+et n'est pas la fonction nulle. On note S_i l'ensemble des réels positifs t tels que f_i(t) ≠ 0.
(H4) Pour tous (i, j) ∈ {1, …, n}^2, i ≠ j et h ⩾ 0, la fonction t ↦ ℙ_([X_t = i])(X_(t + h) = j) est constante sur son ensemble de définition S_i et il existe un réel positif que l'on note α_(i, j), tel que, si t ∈ S_i et h ∈ ℝ^+,
(H5) Pour tous i ∈ {1, …, n} et h ⩾ 0, la fonction t ↦ ℙ_([X_t = i])(X_(t + h) = i) est constante sur son ensemble de définition S_i et il existe un réel négatif que l'on note α_(i, i), tel que, si t ∈ S_i et h ∈ ℝ^+,
Partie 1 - Matrice génératrice et système différentiel associés
On note L_t la matrice ligne d'ordre n, (ℙ(X_t = 1)…ℙ(X_t = n)) = (f_1(t)…f_n(t)) et on note G la matrice carrée d'ordre n dont les coefficients sont les α_(i, j), appelée matrice génératrice du processus.
On note aussi pour tout t ∈ ℝ^+, L_t^′ = (f_1^′(t), …, f_n^′(t)).
L'objectif des trois premières questions est d'établir que pour tout t ⩾ 0, L_t^′ = L_t G.
Montrer que, pour tous j ∈ {1, …, n} et (t, h) ∈ (ℝ^+)^2,
Soit i ∈ {1, …, n}, t ∈ S_i et h ∈ ℝ^+, justifier que ∑_(j = 1)^n ℙ_([X_t = i])(X_(t + h) = j) = 1. En déduire que, pour tout i ∈ {1, …, n} et h ∈ ℝ^+, on a l'égalité :
1 = _(h → 0)1 + (∑_(j = 1)^n α_(i, j))h + o(h)
En conclure que ∑_(j = 1)^n α_(i, j) = 0.
3. a) Montrer que, pour tous j ∈ {1, …, n} et (t, h) ∈ (ℝ^+)^2, on a alors :
En conclure que f_j^′(t) = ∑_(i = 1)^n f_i(t)α_(i, j).
c) Vérifier L_t^′ = L_t G.
4. Probabilité moyenne d'être dans un état
Soit T > 0 et U_T une variable aléatoire à valeurs dans [0, T] qui suit la loi uniforme sur cet intervalle. On pose Z_(i, T) = f_i(U_T).
Montrer que 𝔼(Z_(i, T)) existe et vaut 1/T∫_0^T f_i(t)dt. On note e_i(T) cette espérance.
5. On suppose dans cette question que n = 2 et que G = (− a, a; b, − b) où a et b sont deux réels strictement positifs. On pose p = b/(a + b), q = 1 − p, α = f_1(0).
a) Montrer que f_1 vérifie l'équation différentielle d'ordre 1 sur ℝ^+, y^′ + (a + b)y = b.
b) En conclure que pour tout t ⩾ 0,
f_1(t) = p + (α − p)exp(− (a + b)t) et f_2(t) = q − (α − p)exp(− (a + b)t)
c) Montrer que pour tout t ∈ ℝ^+, f_1(t) ∈ [min(p, α), max(p, α)] et que lim_(t → + ∞)f_1(t) = p.
d) Déterminer lim_(T → + ∞)e_1(T).
6. On suppose dans cette question que n = 3 et G = 1/(30)(− 3, 1, 2; 1, − 2, 1; 2, 1, − 3).
Pour tout t ⩾ 0, on note C_t (respectivement C_t^′ ) la transposée de la matrice ligne L_t (respectivement L_t^′ ).
a) Montrer que − 1/6, − 1/(10) et 0 sont des valeurs propres de G.
b) On pose P = (1, 1, 1; 1, − 2, 0; 1, 1, − 1). Justifier que G = 1/(30)P(0, 0, 0; 0, − 3, 0; 0, 0, − 5)P^(− 1).
c) Calculer ^t PP. En déduire que P^(− 1) = 1/6(2, 2, 2; 1, − 2, 1; 3, 0, − 3).
d) On pose, pour tout t ∈ ℝ^+, P^(− 1)C_t = (y_1(t); y_2(t); y_3(t)). Montrer que pour tout t ∈ ℝ^+, y_1^′(t) = 0, y_2^′(t) = − 1/(10)y_2(t), y_3^′(t) = − 1/6y_3(t).
e) En conclure que, pour tout t ⩾ 0, C_t = P(α; βe^(− 1/(10)t); γe^(− 1/6t)) où (α; β; γ) = P^(− 1)C_0, puis que pour i ∈ {1, 2, 3}, lim_(t → + ∞)ℙ(X_t = i) = 1/3.
7. Temps initial passé dans un état - On pose pour tout i ∈ {1, …, n}, β_i = − α_(i, i) et on suppose dans cette question que, si ℙ(X_0 = i) ≠ 0 alors β_i ≠ 0.
On définit les variables aléatoires, Y_1, …, Y_n et Y égales, au premier instant t où X_t ≠ i pour Y_i et au premier instant t où X_t ≠ X_0 pour Y. On admet que ces instants existent. Ainsi Y est à valeurs dans ]0, + ∞[ et si X_0 ≠ i, Y_i = 0.
Soit i tel que ℙ(X_0 = i) ≠ 0. On admet que pour tout x > 0, lorsque k est un entier naturel assez grand ℙ(⋂_(j = 0)^k[X_(j/kx) = i]) ≠ 0 et que l'on a :
a) Montrer que pour tout x > 0 et k ∈ ℕ^∗, k assez grand : ℙ(⋂_(j = 0)^k[X_(j/kx) = i]) = ℙ(X_0 = i)∏_(j = 0)^(k − 1)ℙ[X_(j/kx) = i](X_((j + 1)/kx) = i) = _(k → + ∞)ℙ(X_0 = i)(1 − (β_i)/kx + o(1/k))^k
b) En déduire que pour tout x ⩾ 0, ℙ_([X_0 = i])(Y_i > x) = e^(− β_i x). Quelle est la loi de Y_i pour la probabilité conditionnelle ℙ_([X_0 = i]) ?
c) Montrer que pour tout x ⩾ 0, ℙ(Y > x) = ∑_(k = 1)^n ℙ(X_0 = k)e^(− β_k x).
d) En conclure que Y est une variable à densité et déterminer une densité de Y.
e) On note I = {k ∈ {1, …, n}/ℙ(X_0 = k) ≠ 0}. Établir que Y admet une espérance égale à ∑_(k ∈ I)(ℙ(X_0 = k))/(β_k).
Partie 2 - Matrice de transition, lien avec la matrice génératrice
On utilise les notations de la partie 1.
8. Définition de la matrice de transition - Pour tous (i, j) ∈ {1, …, n}^2 et s ⩾ 0, si t ∈ S_i, on pose
m_(i, j)(s) = ℙ_([X_t = i])(X_(t + s) = j)
qui ne dépend pas de t d'après les hypothèses (H4) et (H5).
On note M(s) la matrice d'élément générique m_(i, j)(s).
a) Établir que pour tout s ⩾ 0, L_s = L_0 M(s).
b) Soit i ∈ {1, …, n}, r ∈ S_i. En utilisant la propriété (H2) et en distinguant les cas où ℙ([X_r = i] ∩ [X_(r + s) = k]) est nulle ou non, montrer que pour tous (j, k) ∈ {1, …, n}^2, s et t des réels positifs :
c) En conclure que pour tous s et t, des réels positifs, M(s + t) = M(s)M(t).
d) Montrer que pour tout k ∈ ℕ^∗ et t réel positif, M(kt) = (M(t))^k.
Si (A_k)_(k ⩾ 1) est une suite de matrices appartenant à M_n(ℝ), A une matrice appartenant à M_n(ℝ), si l'on note a_(i, j)(k) le coefficient d'indice ( i, j ) de la matrice A_k, a_(i, j) le coefficient d'indice (i, j) de A, alors on écrira A = lim_(k → + ∞)A_k si pour (i, j) ∈ {1, …, n}^2, lim_(k → + ∞)a_(i, j)(k) = a_(i, j).
On dit alors que la suite (A_k)_(k ⩾ 1) converge vers A.
On admet, dans la suite de cette partie et dans la partie 3 , que pour tout t ⩾ 0,
M(t) = lim_(k → + ∞)(I_n + t/kG)^k (∗∗)
On veut simuler le processus à partir de la donnée de la matrice G et de L_0. On admet que pour t ∈ [0, 100], on peut considérer que M(t) = (I_n + t/(1000)G)^(1000).
On importe des bibliothèques:
numpy as np, numpy.random as rd, matplotlib.pyplot as plt, numpy.linalg; as al
On rappelle que si M est une matrice, représentée par un tableau numpy, M[ :, j] désigne le vecteur des coefficients de j -ème colonne de M , de même pour M[i, : ] et la i-ème ligne de M.
a) Écrire une fonction Python transition ( t, G ) de paramètres G représentant la matrice génératrice carrée d'ordre n et t , qui renvoie la matrice (I_n + t/(1000)G)^(1000).
b) Utiliser la fonction précédente pour écrire une fonction traceLoi2Xt (G,L0,tmax) qui trace, sur un même graphique, les graphes des fonctions t ↦ ℙ(X_t = i) sur le segment [0, t_(max)] pour i variant de 1 à n, G et L0 représentant, respectivement, la matrice génératrice du processus et la ligne L_0.
On utilisera 1000 points pour les graphes.
c) Si G est la matrice de la partie I, question 6, l'instruction,
Expliquer en quoi ce graphique est cohérent avec un résultat obtenu précédemment.
d) On veut simuler et représenter, sur un même graphique, les valeurs de X_0, X_t, …, X_(kt), pour t > 0 et k ∈ ℕ^∗, à partir de la loi de X_0 donnée dans une ligne L0. Compléter la fonction suivante pour qu'elle réalise cette tâche :
def simulX(t,k,LO,G):
listeDesT=[] ; listeDesX = []
Mt=transition(t,G) ; Lt=L0
for i in range(k+1):
listeDesT.append(i*t)
p=rd.random()
s=...
j=0
while p>...:
j+=1
s+= Lt [j]
Lt=...
listeDesX.append(j+1)
plt.plot(listeDesT,listeDesX) ; plt.show()
Partie 3 - Deux exemples de modélisations
On conserve les notations des deux premières parties.
10. On considère trois états pour le recouvrement d'un crédit bancaire après un défaut de paiement et un accord entre le débiteur et l'organisme de crédit sur la somme à recouvrer :
1 - en cours de recouvrement, lorsque le débiteur est en train de régulariser sa créance ;
2 - recouvré, lorsque le débiteur a honoré la totalité du montant dû ;
3 - non recouvré, lorsque l'organisme de crédit considère que l'argent est définitivement perdu.
La matrice génératrice G du processus de Markov modélisant ce phénomène est (− α − β, α, β; 0, 0, 0; 0, 0, 0) et L_0 = (1, 0, 0), α et β étant des réels strictement positifs.
a) Montrer que pour tout i ∈ ℕ^∗, G^i = (− α − β)^(i − 1)G.
b) En déduire que pour tous k ∈ ℕ^∗ et t réel : (I_3 + t/kG)^k = I_3 + (∑_(i = 1)^k(k/i)(t/k)^i(− α − β)^(i − 1))G.
c) Montrer que pour tous k ∈ ℕ^∗ et t réel, ∑_(i = 1)^k(k/i)(t/k)^i(− α − β)^(i − 1) = (1 − (1 − (α + β)t/k)^k)/(α + β) et en déduire que pour tout t ⩾ 0,
M(t) = I_3 + (1 − exp(− (α + β)t))/(α + β)G
d) En conclure que pour tout t ⩾ 0, ℙ(X_t = 1) = exp(− (α + β)t),
e) En utilisant les résultats de la question 7 de la partie I, montrer que le temps aléatoire passé en recouvrement suit la loi exponentielle de paramètre α + β.
11. On distingue, pour l'accès au crédit d'une organisation, trois niveaux de solvabilité :
1 - niveau C ;
2 - niveau B ;
3 - niveau A .
On suppose que ce niveau évolue dans le temps suivant un processus de Markov avec G = 1/3(− α, α, 0; 0, − α, α; 4α, 0, − 4α) et L_0 = (1, 0, 0), α > 0. On note aussi A = 1/3(1, − 1, 0; 0, 1, − 1; − 4, 0, 4).
a) On admet que A^3 = 1/(27)(− 3, − 3, 6; 24, − 3, − 21; − 84, 24, 60). Calculer A^3 − 2A^2 + A (on explicitera A^2). Que peut-on dire du polynôme U(x) = x^3 − 2x^2 + x ?
Soit θ ∈ ℝ et k ∈ ℕ^∗, on admet qu'il existe un polynôme Q et des réels a, b, c tels que, pour tout x réel : (1 + θ/kx)^k = Q(x)U(x) + ax^2 + bx + c (∗).
b) Déterminer une factorisation de U(x) et en déduire que c = 1 et (1 + θ/k)^k = a + b + c.
c) En dérivant la relation (*), montrer que , θ(1 + θ/k)^(k − 1) = 2a + b.
En déduire que a = θ(1 + θ/k)^(k − 1) − (1 + θ/k)^k + 1, b = 2(1 + θ/k)^k − θ(1 + θ/k)^(k − 1) − 2.
d) En conclure que pour tout t ⩾ 0,
Partie 4 - Démonstration de l'égalité (**) admise dans la partie 2
On utilise les notations et définitions des deux premières parties.
On définit pour A = (a_(i, j))_(1 ⩽ i, j ⩽ n) appartenant à M_n(ℝ), ‖A‖ = max_(1 ⩽ i ⩽ n)(∑_(j = 1)^n|a_(i, j)|) c'est-à-dire la plus grande valeur que prend ∑_(j = 1)^n|a_(i, j)| lorsque i décrit {1, …, n}.
On admet que si (A_k)_(k ⩾ 1) est une suite de matrices appartenant à M_n(ℝ) et A appartenant aussi à M_n(ℝ), A = lim_(k → + ∞)A_k si et seulement si lim_(k → + ∞)‖A_k − A‖ = 0.
Un exemple - Si A = 1/3(1, − 1, 1; 0, 1, − 1; − 4, 0, 2), montrer que ‖A‖ = 2.
Soit t ⩾ 0.
a) Établir ‖M(t)‖ = 1.
b) En utilisant la question 2 de la partie 1 , montrer que pour k ∈ ℕ^∗ assez grand, ‖I_n + t/kG‖ = 1.
Soient A = (a_(i, j))_(1 ⩽ i, j ⩽ n) et B = (b_(i, j))_(1 ⩽ i, j ⩽ n) deux matrices appartenant à M_n(ℝ).
a) Etablir que ‖A + B‖ ⩽ ‖A‖ + ‖B‖.
b) Montrer que ‖A‖ ⩽ ∑_(i = 1)^n∑_(j = 1)^n|a_(i, j)|.
c) Démontrer que, ‖AB‖ ⩽ ‖A‖‖B‖ puis que pour tout entier naturel n, ‖A^n‖ ⩽ ‖A‖^n.
d) Vérifier que pour tout k ∈ ℕ^∗, A^(k + 1) − B^(k + 1) = A(A^k − B^k) + (A − B)B^k.
e) On pose c = max(‖A‖, ‖B‖). Montrer, par récurrence sur k, que pour tout k ∈ ℕ^∗,
‖A^k − B^k‖ ⩽ kc^(k − 1)‖A − B‖
Soit t un réel positif et k ∈ ℕ^∗.
a) Justifier que ‖M(t/k) − (I_n + t/kG)‖ = _(k → + ∞)o(1/k).
b) Montrer que pour tout k assez grand,