mardi 1 novembre 2011

Composition de segments étape 2

Après les généralités sur la compostion de segments, voici les détails mathématiques sur ce que je crois être la formule de composition des segments hétérogènes (navigateur supportant MathML requis).

La partie transport de chaque segment i est affectée d'un coefficient multiplicatif xi : si Pi est le prix initial du segment i, alors le prix final du segment P'i vaudra Pixi, arrondi au décime d'euro supérieur. En outre il ne peut être inférieur au minimum de perception. Par ailleurs on note Pin le prix plein tarif correspondant au segment i, et di la distance tarifaire du segment i.

On définit les deux grandeurs Q et Qn de la manière suivante :

  • Q = f ( j f - 1 ( P j ) ) (il s'agit de la formule exposée dans l'entrée précédente)
  • Q n = f ( j f - 1 ( P j n ) )
f est une fonction affine par morceaux similaire au tarif normal, qu'on peut approximer par la fonction xx0,85[1], et f-1 son inverse.

Les xi sont calculés de la manière suivante :

  1. x i = 1 pour les segments type Prem's (en fait je ne sais pas comment on combine des Prem's avec d'autres types de segments). Dans la suite je supposerai qu'il n'y a pas de Prem's.
  2. x i = Q P i d i j d j pour les segments sur les trains à gestion fine (TGV, Téoz, Lunéa).
  3. x i = Q n P i n d i j d j pour les segments sur les trains à reservation facultative.

Si on colle tous les morceaux et qu'on ignore les effets d'arrondis, la formule de compostion se résume à :

1 j d j ( Q { j } d j + Q n { j } d j P j P j n )

où l'ensemble contient les indices des segments pour les trains à gestion fine.

Exemple typique

Un usager veut faire Bordeaux→Paris→Rouen en seconde classe et possède une carte Sénior. Le départ se fait en période bleue, et le TGV Bordeaux→Paris est en période normale. Il reste des places en BD dans le TGV (tarif BDSR11PN), et l'usager aura une réduction de 50% (tarif BSR11PC50) dans l'Intercités puisque le départ est en période bleue. Comme les tarifs ne sont pas compatibles entre l'Intercités et le TGV, le prix global est déterminé grâce à la formule de composition des segments hétérogènes.

Les éléments de prix sont les suivants :

  • Bordeaux→Paris : P1 = 34,00 EUR; P1n = 70,80 EUR; d1 = 581 km.
  • Paris→Rouen : P2 = 10,80 EUR; P2n = 21,60 EUR; d2 = 140 km.

Je calcule :

  • Q = (341/0.85 + 10.81/0.85)0.85 = 41.36
  • Qn = (70.81/0.85 + 21.61/0.85)0.85 = 85.44
  • x1 = Q/P1 * d1/(d1 + d2) = 41.36 / 34 * 581/(581 + 140) = 0.98
  • x2 = Qn/P2n * d2/(d1 + d2) = 85.44 / 21.6 * 140/(581 + 140) = 0.77
  • P'1 = x1 * P1 = 0.98 * 34 = 33.32 → 33.40
  • P'2 = x2 * P2 = 0.77 * 10.8 = 8.32 → 8.40
  • Total = P'1 + P'2 = 33.40 + 8.40 = 41.80.

Je tente une réservation : le 1er novembre, à 18h45, il reste des places en BD dans le TGV 8412 du 17 novembre, 6h27. Je demande une réservation combinant ce train et le Paris→Rouen de 10h50. Résultat, 41.10 EUR. Je ne suis pas loin.

Explication

Dans l'entrée précédente, j'avais indiqué que l'idée de la composition des segments hétérogènes était de calculer les kilométrages fictifs correspondant aux prix de chaque segment, de sommer ces kilométrages puis de recalculer un prix à partir de cette somme. Cette façon de faire assure qu'on a une dégressivité du même ordre que lorsqu'on voyage au tarif normal. Et de fait, lorsque tous les segments sont au plein tarif, la formule horrible se réduit juste à Q.

Je pense que la formule actuelle peut s'expliquer par l'historique des tarifs de marché :

  • Avant les tarifs de marché, on avait juste le tarif normal, pas de composition à faire, il n'y a qu'à sommer les kilomètres et calculer un prix global, en ajoutant le prix d'une réservation si besoin (j'imagine que la réservation sur TGV était payante).
  • Ensuite les tarifs de marché ont été introduits, via une tarification globale. On a donc introduit la formule de composition avec les Qn et les pleins tarifs, puisque toutes les réductions étaient calculées en pourcentage du plein tarif, la réduction ayant lieu après calcul du coefficient xi du segment (donc deux fois l'arrondi).
  • Maintenant sur TGV l'essentiel des prix réduits (sauf quelques exceptions comme les groupes) est fixé à l'avance et non plus calculé par le système de réservation. Il a donc fallu faire une adaptation du calcul de dégressivité. Et comme on a voulu toucher le moins possible le système de réservation la formule s'est retrouvée sous cette forme à la Frankenstein, où les segments TGV voient le prix effectif mais pas les segments corail, qui voient le plein tarif, donc se trouve "dégressivés" de manière plus conséquente. Résultat, quand on combine une réduction à pourcentage et une réduction forfaitaire, le prix total est bien inférieur au prix auquel on pourrait s'attendre avec une formule simple.

[1] L'année dernière, le facteur semblait valoir 0,795. Les tarifs ont l'air d'avoir augmenté de manière insidieuse !

1 commentaire: