Category Archives: Insurance

The role of government versus private sector provision of insurance

A short paper The role of government versus private sector provision of insurance has just been published in the Journal of Risk and Insurance.

Insurance markets are important for managing risk and promoting economic stability, since they play a key role in mitigating financial losses from unpredictable events such as natural disasters, cyberattacks, and health crises. However, these markets often face challenges, including market failures, information asymmetries, and correlated risks that can destabilize private insurers. In response, governments frequently intervene in insurance markets, either by providing insurance directly or by acting as a reinsurer of last resort. The interaction between government and private sector provision of insurance raises interesting and important questions about the appropriate role of each player in ensuring market efficiency and protecting individuals and businesses from catastrophic risks.

“Notre maison brûle et”… nous espérons que notre assureur ne regarde pas ailleurs

Cet article est la version initiale, sourcée, et un peu plus longue, d’une tribune publiée dans Le Monde, ce dimanche 9 juillet 2023.

En 2015, à la veille de l’ouverture de la COP21, Henri de Castries, PDG d’AXA affirmait qu’“une augmentation de deux degrés de la température moyenne dans le monde peut encore être assurable, mais ce qui est certain, c’est qu’une hausse de quatre degrés ne l’est pas” (leparisien). Huit ans après, le ministre de la transition écologique annonce que “la France va se préparer à une élévation de 4°C” (lemonde). Doit-on alors se préparer à un monde sans assurance ? Car c’est ce que commence à connaître la Californie. La tendance lente de long terme, avec une hausse linéaire de la température, engendre une augmentation au moins exponentielle des catastrophes. Et cette petite différence de deux degrés, correspondant à une tendance bien différente quant aux catastrophes.

L’assurance fonctionne en mutualisant les risques entre de larges groupes de personnes qui paient des primes, puis en versant cet argent aux personnes qui ont subi un sinistre (puf). “The contribution of the many to the misfortune of the few”. Cette vision un peu simpliste correspond au fonctionnement d’une mutuelle d’assurance, les cotisations servant à indemniser les plus malchanceux. Compte tenu de la nature fondamentalement aléatoire des contrats d’assurance, on espère (au sens mathématiques) que les primes permettront de couvrir les pertes. Avec ce raisonnement “en moyenne”, une année sur deux, les assureurs feraient du profit, et une année sur deux, ils n’auraient pas assez d’argent pour indemniser les personnes sinistrés. Pour éviter ce genre de désagrément, la législation impose aux assureurs d’avoir suffisamment de capital pour garantir leur solvabilité, et c’est ce qui est fait dans la plupart des pays. Cela permet de protéger les assurés qui ont acheté la promesse d’une indemnisation dans plusieurs mois si une mésaventure survient. Ce mécanisme fonctionne simplement en assurance automobile, ou en assurance habitation quand il faut indemniser un incendie dans la cuisine, suite à un accident, mais il est mis à mal quand des catastrophes climatiques surviennent, empêchant le mécanisme de mutualisation des risques de fonctionner.

L’assurabilité des risques est caractérisée par trois facteurs: le risque assurable doit être quantifiable et distribué, une population assurable doit être consciente du risque, et être prête à s’assurer et à payer le prix actuariel, et un assureur solvable qui est prêt à porter le risque. Malheureusement, le changement climatique menace ces trois conditions, avec des risques physiques qui peuvent se combiner ou s’accélérer de manière inédite, des horizons à long terme peuvent brouiller la compréhension des risques par les consommateurs, et des pertes potentiellement massives, et durables, qui peuvent dépasser la capacité de couverture des assureurs.

Face au risque de catastrophes, il n’est pas rare de voir se mettre en place des partenariats public-privé. C’est généralement la meilleure solution car on voit de plus en plus d’assureurs privés se retirer, laissant les autorités fédérales ou étatiques intervenir en tant qu’assureur “en dernier recours”, et c’est l’ensemble des contribuables qui est amené à payer la facture (usatoday). C’est aussi parce que ce risque nécessite des infrastructures et des décisions qui ne peuvent être prise que par des décideurs politiques.

Aux États-Unis, l’ouragan Sandy a été la tempête de vent la plus meurtrière à frapper le nord-est des États-Unis en quarante ans, avec des pertes assurées dépassant 25 milliards de dollars (montants actualisés). Les pertes assurées totales estimées à la suite de l’ouragan Ian atteignent 70 milliards de dollars, et les pertes liées aux inondations devraient s’élever à 10 milliards de dollars supplémentaires (columbia). Les incendies de forêt en Californie en 2017 et 2018 ont conduit les assureurs à payer près de 30 milliards de dollars de sinistres alors qu’ils n’ont perçu que 15 milliards de dollars de primes. Et depuis 2020, huit catastrophes ont causé entre 20 et 50 milliards de dollars de dommages (reuters).

La Californie compte une centaine de compagnies proposant des contrats d’assurance habitation. Et au début du mois, le plus gros assureur, State Farm, a fait paniquer le marché, en déclarant qu’elle arrêterait toute nouvelle souscription en Californie, influencée par l’augmentation des coûts de construction, le risque croissant de catastrophes telles que les incendies de forêt et, par conséquent, et l’augmentation du coût de la réassurance (latimes). Le choc a été d’autant plus important que State Farm a simplement rendu public ce que d’autres compagnies d’assurance faisaient discrètement depuis plusieurs années, comme AllState l’a reconnu (latimes), mais aussi le géant de l’assurance American International Group (AIG) qui a commencé à réduire son offre d’assurance habitation dans environ 200 codes postaux à travers les États-Unis, à haut risque d’inondations ou d’incendies de forêt (nbcnews) (insurancejournal). Le coût moyen d’une police d’assurance en Californie est de l’ordre de 2000 dollars en Californie, mais on reste loin des 5000 (wharton) ou 6000 (washingtonpost) dollars  demandés dans dans les villes les plus exposées aux catastrophes climatiques de Louisiane et de Floride.

Dans ces deux Etats, les gens ont du mal à se procurer des polices d’assurance, car de plus en plus d’assureurs quittent l’État, deviennent insolvables (washingtonpost). En Floride, en 1968 (nytimes), les assureurs privés ne voulaient pas couvrir les inondations, ce qui ne laissait aucune option aux propriétaires, et le Congrès a créé le programme national d’assurance contre les inondations (NFIP), qui offrait aux propriétaires une couverture financée par les contribuables. En 1992, suite au passage de l’ouragan Andrew, les assureurs avaient imposé un moratoire sur les affaires nouvelles (washingtonpost), mais le NFIP a été en mesure de couvrir ses engagements à l’aide des primes encaissées, jusqu’au passage des ouragans Katrina et Sandy en 2004, les tempêtes les plus coûteuses de l’histoire des États-Unis (nytimes). Suite à ces catastrophes, un système complexe a été mis en place avec localement, de petites compagnies d’assurance soutenues par Citizens (Property Insurance Corporation), une compagnie mandatée par l’État pour fournir une couverture contre les tempêtes aux propriétaires qui ne pouvaient pas trouver d’assurance privée. Pendant un certain temps, ce système a fonctionné, avec onze années consécutives sans ouragans majeurs (barrons), laissant presque oublié que le risque existait, jusqu’au passage de l’ouragan Irma, en 2017. Les primes pour la couverture fournie par le plan Citizens, ont augmenté de 63 % pour atteindre une moyenne de 5000 dollars par an (tout en empruntant plusieurs centaines de millions de dollars sur le marché obligataire pour payer les demandes d’indemnisation des propriétaires, et éviter la faillite). Récemment, suite au passage de l’ouragan Laura en Louisiane en 2020, plus de 50 compagnies ont cessé d’accepter de nouveaux clients, et 11 se sont déclarées en faillite. En Floride, plus de 15 compagnies ont fait faillite (washingtonpost). Aujourd’hui, le NFIP a une dette qui dépasse les 20 milliards de dollars (columbia, vox).

La Californie a une histoire presque plus complexe, en grande partie car elle n’a pas connu les grandes catastrophes qu’ont subi la Louisiane et la Floride. En 1988, face aux bénéfices des compagnies d’assurance, les consommateurs ont voté la “proposition 103” qui oblige les assureurs à faire approuver par l’État Californien leurs futurs tarifs. Et aujourd’hui encore, si un assureur cherche à augmenter ses primes de 7% ou plus, les défenseurs des consommateurs sont autorisés à prendre partie, et à contester les taux proposés (eenews). Lorsqu’un assureur essaye d’anticiper les pertes d’incendie attendues, pour calculer les primes demandées, il a obligation de faire la distinction entre les pertes d’incendie ordinaires et les pertes catastrophiques. Pour les sinistres ordinaires (incendie d’une cuisine), les projections doivent être faites sur ses “pertes historiques par exposition” sur une période relativement courte (de un à trois ans), alors que pour les risques d’incendies catastrophiques, il faut une base d’au moins vingt ans de pertes réelles et historiques. Pour simplifier, un assureur doit utiliser la moyenne des 20 dernières années (au moins) pour tarifer les années futures. Cette approche dite “rétrospective” a du sens sur les risques rares (qui surviennent une fois tous les vingt ans), mais pas quand les risques augmentent. Or cinq des six plus grands incendies de forêt de l’histoire ont eu lieu en 2020 et quinze des vingt incendies les plus destructeurs de l’histoire de l’État ont eu lieu depuis 2015. Cette croissance exponentielle fait peur aux assureurs, surtout que les primes ne peuvent pas traduire cette hausse prévue par tous les modèles “prospectifs” (eenews).

Car des modèles statistiques fiables existent, tenant compte de divers facteurs de risque (végétation, topographie, température, densité et emplacement des habitations, etc). Mais la loi californienne interdit l’utilisation de ces outils pour calculer les primes. Une autre raison est que les modèles utilisés par les assureurs doivent être rendus publics, et les sociétés de modélisation refusent de le faire (eenews). Il est également impossible aux assureurs d’offrir une couverture contre ce risque, et de se couvrir ensuite auprès des réassureurs, car le calcul de la hausse de prime (dont la limite autorisée est de 7%), les assureurs ne sont pas autorisés à inclure le coût de la réassurance.

Le retrait récent de State Farm en Californie, suivant d’autres assureurs, reflètent une triste et froide réalité : ni les assureurs privés, ni les gouvernements ne sont préparés à l’augmentation exponentielle des pertes liées au risque climatique (climateandcapitalmedia). Le président d’Aon PLC, Eric Andersen, a déclaré devant une commission sénatoriale que “tout comme l’économie américaine a été surexposée au risque hypothécaire en 2008, l’économie est aujourd’hui surexposée au risque climatique”  (scientificamerican). Selon Munich Re, les pertes du secteur mondial de l’assurance liées aux sinistres météorologiques sont passées d’une moyenne annuelle (corrigée de l’inflation) de 10 milliards de dollars dans les années 1980 à 50 milliards de dollars au cours de la présente décennie. Il est difficile de déterminer quel pourcentage de cette augmentation est dû “uniquement” au changement climatique (newrepublic), car le facteur humain est important. En Californie, les lignes électriques (à haute tension) ont toujours été l’une des principales causes des incendies de forêt en Californie (theatlantic). En 2017, la majorité des incendies majeurs sont nés d’étincelles provenant d’équipements défaillants et mal entretenus, résultant de dizaines d’années de sous-investissements publics massifs (nytimes).

A la vue de ce tableau, l’Europe et la France semblent encore chanceuses, mais pour combien de temps ? En France, le mécanisme dit “cat nat”, reposant sur la loi du 13 juillet 1982, encadre le marché des principales catastrophes naturelles depuis plus de 40 ans, malgré de nombreuses alertes (liberation).  Ce mécanisme est fondé sur l’alinéa 12 du préambule de la Constitution du 27 octobre 1946, « la Nation proclame la solidarité et l’égalité de tous les Français devant les charges qui résultent des calamités nationales ». Si cette loi propose un mécanisme assez unique dans le monde, la France n’est pas forcément mieux lotie que la Californie: depuis des années, à demi-mot, certains assureurs reconnaissant qu’ils peuvent hésiter à soutenir l’installation d’un agent d’assurance dans une zone où le risque d’inondation est important.

Le principe de partage et de mutualisation des risques que porte l’assurance pose inéluctablement la question de savoir qui, dans la société, doit payer les coûts du changement climatique, qui augmentent rapidement ? S’agit-il d’un fardeau que nous devons tous assumer de manière égale ? Cela va-t-il faire partie du filet de sécurité sociale reposant sur la “solidarité” nationale ? Ou devons-nous faire payer ce risque par les personnes les plus à risques ? Cette question éthique se pose clairement en assurance santé, mais elle revient sur les risques climatiques, probablement car les techniques de modélisation des risques et d’analyse prédictive deviennent de plus en plus sophistiquées. Sur la base de données météorologiques plus riches et de meilleurs modèles climatiques, les assureurs peuvent mieux estimer l’impact potentiel des événements climatiques localement. Cela pourrait permettre de tarifer les polices avec plus de précision et d’adapter la couverture aux besoins spécifiques des assurés dans les zones à haut risque (climateandcapitalmedia). On retrouve la question importante posée aux assureurs, sur l’endroit où il est légitime de placer le curseur, entre la mutualisation et la solidarité d’un côté, et des calculs actuariels de plus en plus précis de l’autre.

De manière anecdotique, la question de la solidarité et des discriminations s’était posée en assurance dans les aux États-Unis avec le “redlining”, où des zones rouges (désignant historiquement, dans les années 1930, des zones d’immeubles vétustes, ou avec de fortes incidences de maladies) entraînaient une augmentation des primes d’assurance, un non-renouvellement ou un refus de couverture. Dans les années 60, ces zones excluaient des communautés afro-américaines, et le “redlining” a été rendu interdit en 1968 (radio-canada). Aujourd’hui, certaines zones font l’objet d’un marquage “bleu”, couleur par laquelle les banques ou les prêteurs hypothécaires définissent des quartiers ou des communautés plus sensibles aux risques climatiques (columbia).

Un des arguments pour autoriser des hausses de primes d’assurance dans les zones à risques est d’envoyer un signal. Le prix doit être élevé s’il reflète un risque réel, et cacher artificiellement le risque dans une prime trop basse n’incite pas à la prévention. La contrepartie de ces hausses massives des primes d’assurance sera probablement de subventionner les polices pour les personnes à faible revenu vivant dans des zones à haut risque afin d’étendre la couverture, mais l’expérience récente en Floride et en Californie montre les hausses de primes font prendre conscience que le risque augmente. Récemment, Karen Collins, de l’American Property Casualty Insurance Association, comparait les assureurs “au canari dans la mine de charbon” (usatoday). Si on voulait être complètement juste, les assureurs sont la partie visible par le grand public, car en coulisse, “les réassureurs tirent la sonnette d’alarme sur le changement climatique et les risques de catastrophe depuis des décennies“, comme le rappelle Sean Hecht, avocat du bureau régional californien d’Earthjustice (vox). Il est important que les citoyens mais aussi les gouvernements prennent conscience de l’augmentation exponentielle des risques climatiques, en effectuant les changements qui s’imposent (nytimes). Vivre avec des œillères met des vies en danger, et plus longtemps le problème sera ignoré, plus il sera difficile à résoudre. Les plus pessimistes en Californie rappelant que les incendies cesseront lorsqu’il n’y aura plus rien à brûler (theatlantic).

Big Data, GAFA et Assurance

Les sociétés technologiques et le monde de l’assurance auraient tout pour être opposé. Agilité, rapidité, obsession du futur chez les uns, conservatisme, réflexivité, fascination pour les données passées chez les autres. Et pourtant les deux s’observent, et commencent à nouer des partenariats, comprenant que la donnée est leur cœur de métier.

Continue reading Big Data, GAFA et Assurance

“Le mécanisme Cat’ Nat’ va à l’encontre de la prévention”

Au début du mois, https://newsassurancespro.com/ publiait une entrevue… je me permets de remettre ici quelques éléments,

Où en est la modélisation du risque catastrophe en France ?

Beaucoup de progrès ont été faits, notamment par l’apport de l’analyse de géologues et des hydrologues qui ont modélisé l’exposition théorique aux risques catastrophes. Nous disposons aujourd’hui de cartes incroyablement précises qui permettent de connaître la nature des risques rue par rue en France, aussi bien sur l’inondation que sur la sécheresse. Pour autant, cette vision statique résiste mal à une approche en termes de flux. Ainsi, nous avons des historiques de données parmi les plus fournis du monde, mais l’existence d’un simple barrage installé en amont d’une commune peut modifier la réalité du risque sur le terrain.

Le régime des catastrophes naturelles actuel est-il viable ?

Oui. Le régime des catastrophes naturelles est viable. Parce que l’Etat intervient en dernier ressort. Cela solvabilise le dispositif. Cependant, le mécanisme va à l’encontre de la prévention. Certes, le système d’indemnisation, et plus particulièrement de franchises, tient compte de la mise en place ou non de Plan de prévention des risques naturels (PPRN) dans les communes. Mais dans un schéma ex-post, c’est-à-dire après la survenue de l’évènement.

La prévention est le maillon fondamental qui manque au régime tel qu’il est conçu actuellement. Toute réforme qui introduirait une dose de prévention irait dans le bon sens.

La gestion des risques naturels est-elle bien organisée en France ?

Assureurs, communes, régions, Etat… la gestion des risques naturels fait intervenir beaucoup d’interlocuteurs différents. Cela manque de coordination. Ainsi, mettre en place un plan de prévention du risque inondation (PRI) dans une commune est une bonne chose. Mais s’il n’est pas conçu en tenant compte des communes alentours, cela en limite la portée. Il existe des mécanismes de dépendance sur le risque inondation qui ne sont pas circonscrits aux limites géographiques d’une ville ou d’un village.

Faudrait-il aller vers plus de segmentation du risque ?

Force est de constater que le niveau de prime payé par les assurés en catastrophes naturelles est décorrélé du risque auquel ils sont réellement exposés. Il y a quelques mois, notre chaire de recherche (sur la segmentation et la mutualisation) s’était penchée sur la question. Nous devions réfléchir sur les limites éthiques de la segmentation du risque catastrophes. Les calculs actuariels de l’exposition au risque montraient des écarts monstrueux entre les Bouches-du-Rhône et l’Orne par exemple. Le sujet semble tabou chez les assureurs. Mais tarifer en fonction de la réelle nature du risque serait un pourtant puissant outil de prévention. Les entreprises réfléchiraient à deux fois avant de s’installer en zone inondable.

La suite en ligne sur https://newsassurancespro.com/

Les dérives du principe de précaution

« Dans le doute, abstiens-toi » dit la sagesse populaire. Le principe de précaution (en allemand Vorsorgeprinzip) est né de l’idée qu’il convient d’accepter qu’il existe un doute, ou une incertitude (scientifique), dans la connaissance des risques. Il y a un peu plus de 20 ans, la loi Barnier introduisait le principe de précaution dans le droit français, pour le « risque de dommages graves et irréversibles à l’environnement », communément appelés “risque environnemental”. Il y a un peu plus de 10 ans, il a été inscrit dans la Constitution, approuvé par 531 députés, exprimant ainsi un très large consensus politique, probablement aussi social. Mais aujourd’hui, le principe de précaution est évoqué dans des contextes tout aussi divers que le risque d’actes de terrorisme, mais aussi des procédures de droit civil, ou pénal. Quelles sont les conséquences de cette dérive de l’utilisation du principe de précaution ?

Continue reading Les dérives du principe de précaution

Fibonacci, les lapins, le nombre d’or et les calculs actuariels

Léonard de Pise, souvent plus connu sous le nom de Fibonacci, a laissé sa trace dans les livres de mathématiques pour avoir étudié, ou plutôt modélisé, la reproduction des lapins. De la dynamique du nombre de lapins est né le nombre d’or, le fameux ratio magique, que l’on retrouve dans toute la peinture et l’architecte classique. Mais la contribution la plus importante est probablement le Liber Abaci, datant de 1202, dans lequel Fibonacci a introduit explicitement le principe d’actualisation financière en Europe. Fibonacci a grandi dans la colonie pisane de Bougie, en Algérie, où son père était officier des douanes. Et c’est probablement grâce à la culture arabe que les premiers calculs actuariels ont été formalisés.

La dynamique de reproduction des lapins et le nombre d’or

Fibonacci est connu par tous les étudiants du monde pour avoir posé le problème suivant:

partant d’un couple, combien de couples de lapins obtiendrons-nous après un nombre donné de mois sachant que chaque couple produit chaque mois un nouveau couple, lequel ne devient productif qu’après deux mois ?

Formellement, on cherche à décrire le comportement de la suite définie par la relation https://latex.codecogs.com/gif.latex?u_n=u_{n-1}+u_{n-2} (avec deux valeurs initiales). Comme cette suite est linéairement récurrente d’ordre deux, on peut écrire son équation caractéristique. On obtient une équation du second degré, https://latex.codecogs.com/gif.latex?x^2-x-1, dont une des racines est connue sous le nom de « nombre d’or »,

https://latex.codecogs.com/gif.latex?\varphi=\frac{1+\sqrt{5}}{2}

qui vaut environ 1,618. On peut alors montrer que l’on obtient la formule dite de Binet,

https://latex.codecogs.com/gif.latex?u_n=\frac{1}{\sqrt{5}}\left(\varphi^n-\left(\frac{-1}{\varphi}\right)^n\right)

Comme l’avait déjà remarqué Johannes Kepler, vers 1611, le taux de croissance des nombres de Fibonacci, c’est-à-dire , converge vers le nombre d’or, https://latex.codecogs.com/gif.latex?\varphi. Ce nombre est appelé en anglais « golden ratio », car il s’agit aussi d’une proportion, d’un ratio, défini comme l’unique rapport https://latex.codecogs.com/gif.latex?a/b entre deux longueurs https://latex.codecogs.com/gif.latex?a et https://latex.codecogs.com/gif.latex?b, telles que la somme https://latex.codecogs.com/gif.latex?a+b sur la plus grande des deux (https://latex.codecogs.com/gif.latex?a sur la Figure 1) soit identique, autrement dit

https://latex.codecogs.com/gif.latex?\frac{a+b}{a}=\frac{a}{b}

Alors forcément, la plus grande longueur est 61,8% plus grande que la petite. Euclide évoquait ce ratio très particulier dans ses Eléments. Comme le montre la Figure 1, ce ratio est utilisé pour construire une spirale. Luca Pacioli, un moine franciscain italien du Moyen Age, l’appelle la “divine proportion“. En effet, comme l’avait énoncé Saint Thomas d’Aquin, « les choses qui sont dotées de proportions correctes réjouissent les sens », ce qui semble conférer un caractère quasi-divin à ce nombre.

Figure 1 : interprétations géométriques du nombre d’or

Comme le montre la Figure 1, à gauche, à partir de rectangles dont le rapport des longueurs des deux côtés est égal au nombre d’or, on peut construire itérativement une succession de carrés emboîtés, sous forme de spirale. On retrouve ce découpage dans la composition d’un grand nombre de tableaux de la Renaissance, mais aussi dans plusieurs ouvrages architecturaux. Et si l’on colle deux rectangles dont le ratio des longueurs des côtés est égal au nombre d’or, un verticalement et un horizontalement, le prolongement de la diagonale du rectangle horizontal passera par le sommet du rectangle verticale. Cette figure se retrouve dans de nombreux croquis de Le Corbusier.

La notion de récursivité

Au-delà du fait que c’est à Fibonacci que l’on doit le fameux nombre d’or, cette suite récursive est surtout très populaire en informatique pour introduire la notion de récursivité. En effet, un algorithme pour calculer les termes de cette suite est

F = function(n) {

if(n>1) Fn = F(n-1) + F(n-2)

if(n<=1) Fn = n

return(Fn) }

Cet algorithme est simple, mais le temps d’exécution est long, très long. Si certains notent qu’il croit exponentiellement vite, on peut montrer assez simplement que le temps d’exécution est donné par une relation de type de celle de Fibonacci.

La comptabilité, en chiffres romains

Mais souvenons-nous que Fibonacci est né à la fin du XIIème siècle. Si la géométrie n’a pas beaucoup changé, l’arithmétique, elle a beaucoup changé. Pour rappel, on comptait alors encore bien souvent à l’aide de la numérotation romaine. Cette dernière est basée sur 7 symboles, I (pour 1), V (pour 5), X (10), L (50), C (100), D (pour 500) et enfin M (1000). A partir de ces symboles, certains nombres se construisent par addition (par exemple 11 va s’écrire XI) et d’autres par soustraction (4 va s’écrire IV): un symbole plus petit placé avant correspond à une soustraction, et un symbole plus petit placé après, à une addition. On s’attend ainsi à ce que tous les symboles soient placés par ordre décroissant (et si c’est le cas, on les ajoute), mais s’il y en a un qui est placé avant, on va le soustraire. Aussi, DCXIV contient les symboles D (500), C (100), X (10), I (1) et V (5). Comme 1 est avant 5, c’est qu’il faut lire -1, et pas +1. Et donc DCXIV vaut 500+100+10-1+5 soit 614. De même XLV correspond à -10+50+5, soit 45. Il existait aussi une forme d’écriture multiplicative. Par exemple 300 pouvait s’écrire CCC ou IIIC. Et 80 IVXX (d’où une explication possible de la forme française de “quatre-vingt”).

L’origine de ces symboles se trouve dans les entailles pratiques par les étrusques, sur des bouts de bois, ou des os. Mais chez les étrusques, seule l’addition de symboles était autorisée. Par la suite, les égyptiens ont adopté un système décimal, et introduit l’addition (uniquement), ce qui a permis aux scribes de faire des observations statistiques, et des prévisions. Lorsqu’ils adoptèrent la langue et les pratiques grecques, vers 300 avant Jésus Christ, les égyptiens ont commencé à tenir de véritables documents comptables, avec des stocks de données agricoles, et des flux monétaires. A la même époque en Grèce, les lettres de change existaient, et le prêt à intérêt était fréquent. A Athènes, la cour des logistes avait le rôle d’expert-comptable. Les romains ont poursuivi et amélioré cette tradition, avec des livres de recettes et de dépenses. L’arithmétique était complexe, comme en témoigne Schärlig (2014), et pourtant, ce système d’encoches a été utilisé probablement jusqu’au XVIIème siècle, en Europe.

Le livre des calculs, Liber Abaci, et la règle de trois

Fibonacci est l’auteur d’un Liber Abaci, correspondant à un livre des calculs (Abaci donnera par la suite le terme abaque). En fait, alors que la norme à l’époque était d’utiliser l’arithmétique romaine, Leonardo s’est énormément inspiré des mathématiques arabes. Les nombres arabes présentaient l’avantage d’utiliser le système décimal, ce qui a fait gagner énormément de temps de calcul (on peut aussi remonter à l’arithmétique indienne, basé sur le même système). Il y avait ainsi neuf symboles correspondant à 1, 2, 3, 4, 5, 6, 7, 8, 9 (et le 0 a été introduit au Vème siècle). Afin d’illustrer la simplicité des calculs, Fibonacci évoque intensément l’utilisation de la « règle de trois » (même s’il ne l’appelle pas ainsi, il faudra attendre Le Gendre (1684) pour voir évoqué cette terminologie). Cette règle, relative à la théorie des proportions, se retrouve aussi beaucoup utilisée chez Euclide (au IIIème siècle avant Jésus Christ): « si quatre nombres sont en proportions, le produit des extrêmes [le plus grand et le plus petit] est égal au produit des moyens ». En fait, la règle de trois permet de trouver ce qui s’appelle parfois la « quatrième proportionnelle », qui est le quatrième nombre à mettre dans un tableau de proportionnalité dont 3 cases sur 4 sont déjà remplies. Certains ont appelé la règle de trois la « règle d’or ».

En actuariat, le calcul des provisions pour sinistres à payer par conservation des cadences de paiements, repose historiquement sur cette règle. Le Tableau 1 illustre ainsi l’utilisation de la règle de trois pour estimer les paiements futurs : fin 2014, 57 millions d’euros avaient été payé au titre des sinistres de 2014, et fin 2015, 83 millions ; si fin 2015, 63 millions avaient été payés au titre des sinistres de 2015, on peut estimer qu’un peu plus de 90 millions seront payés fin 2016. Ce montant https://latex.codecogs.com/gif.latex?\color{red}{x} est obtenu, dans la méthode dite Chain Ladder (décrite dans Charpentier et al. (2010)), par la règle de trois.

paiements

année 1

paiements

année 2

2014

https://latex.codecogs.com/gif.latex?57

https://latex.codecogs.com/gif.latex?83

2015

https://latex.codecogs.com/gif.latex?63

https://latex.codecogs.com/gif.latex?{\color{red}{x}}=\frac{63\times%2083}{57}

Table1 : illustration de la règle de trois en provisionnement

On retrouve de nombreuses utilisations de cette règle dans les calculs comptables (on pourra consulter Taulane (1689)), mais c’est surtout à Fibonacci qu’on doit la formalisation de la règle, dans un contexte financier.

Les bases de l’actualisation

Mais on doit surtout à Fibonacci d’avoir formalisé le calcul actuariel. Rappelons que la valeur actuelle d’un ensemble de flux financiershttps://latex.codecogs.com/gif.latex?\lbrace%20F_1,\cdots,F_n\rbrace, versés dans le futur, à différentes dates s’écrit

https://latex.codecogs.com/gif.latex?V=\sum_{t=1}^n\frac{F_t}{(1+i)^t}

où https://latex.codecogs.com/gif.latex?i est le taux d’actualisation. Cette à cette formule que va aboutir Fibonacci, dans le Liber Abaci, lorsqu’il va tenter de résoudre le problème suivant

« Un homme se rend à Lucca pour affaires, où il double son argent. Il dépense là-bas 12 dinars. Ensuite, il va à Florence où il peut là encore doubler son argent, et il dépense encore 12 dinars. Puis il va ensuite à Pise, double encore son investissement, et dépense à nouveau 12 dinars. Quelle somme avait-il au début? »

Ce calcul de la somme initiale correspond fondamentalement au calcul d’une valeur actuelle. Pour reprendre les notations de Fibonacci pour investir 1 à Pise (la troisième ville), il faut disposer de ½½½, qu’il interprète comme un facteur d’escompte. Pour investir 1 à Florence (la seconde ville), il fallait disposer de ½½ au début. Etc. Pour connaître la somme initiale, on notera que le facteur d’actualisation est ½+½½+½½½, soit 7/8. Le capital initial est alors 7/8×12, soit 10 ½ . Avec des notations plus contemporaines, avec https://latex.codecogs.com/gif.latex?i = 100%, on veut calculer,

https://latex.codecogs.com/gif.latex?\frac{12}{(1+i)}+\frac{12}{(1+i)^2}+\frac{12}{(1+i)^3}

On retrouve ici la définition classique de la valeur présente d’un ensemble de flux financier. Mais plus sophistiqué, Fibonacci propos ensuite le problème suivant

« Un soldat se voit offrir une annuité par un roi, de 300 par an, payée à une cadence trimestrielle, à hauteur de 75 par trimestre. Soudain, le roi change pour 300, payé en fin d’année. Le soldat est capable de gagner 2 pour 100 placés, par mois (à la fin de chaque trimestre) à partir de son investissement »

On retrouve ici un problème qui pourrait être posé à un examen sur les calculs actuariels.

Conclusion

Depuis Goetzmann (2005) et la redécouverte des travaux de Léonard de Pise, beaucoup considèrent que Fibonacci a introduit le calcul actuariel en Europe, ou plutôt son formalise, avec des notations très contemporaines. Mais il convient de rappeler que l’actualisation existait depuis bien longtemps. Des traces de formalisation se retrouvent dans toutes les cultures, à commencer probablement en Chine, où Les Neuf Chapitres sur l’Art des Mathématiques, datant de 263, évoquent un problème proche de celui présenté par Fibonacci (avec là encore un voyageur qui part dépenser son argent). On retrouvera ensuite ce problème (et sa résolution) dans des textes arméniens, dans des papyrus égyptiens, mais aussi sur le Lilivati de Bhāskarācārya, écrit en Inde vers 1150, juste avant la formalisation par Léonard de Pise. Mais la lecture de Fibonacci est facilité par l’utilisation de chiffres arabes, qui rendent les calculs plus proches de ceux que nous avons l’habitude de voir, tous les jours.

Références

Charpentier, A., Devineau, L. & Nessi, J.M. (2010) Mesurer le risque lors du calcul des provisions pour sinistres à payer. Risques 83, 93-100.

Fibonacci (1202). Fibonacci’s Liber abaci, traduit par Laurence E. Sigler A translation into modern English of Leonardo Pisano’s Book of calculation, Springer-Verlag,‎ (2002).

Goetzmann, W. N. (2005) Fibonacci and the Financial Revolution. In Goetzmann and Rouwenhorst, The Origins of Value: The financial innovations that created modern capital markets, Oxford University Press.

Le Gendre, F. (1684). L’arithmétique en sa perfection.

Le Goff, J.P. (2000). Une mise en perspective historique de la quatrième proportionnelle à la fonction linéaire, in Cahiers de la Maison de la Recherche en Sciences Humaines, n° 24, L’épistémologie de la règle de trois. Caen, Presses Universitaires de Caen, déc. 2000.

Schärlig, A. (2014). Les moyens de calcul du comptable antique. Revue d’Histoire des Comptabilités, 6.

Taulane, J. (1689) Trésor d’arithmétique des marchands et des géomètres.

‘Mathiness’ et Assurance

Au printemps dernier, l’économiste Paul Romer avait initié une discussion passionnante autour de la notion de “mathiness” (“mathitude” pourrait être la traduction la plus simple pour reprendre l’expression de Lavigne (2015)), posant la question de la place du formalisme mathématique en économie. Ou plus précisément, des liens entre les théorèmes mathématiques et la réalité économique. Et la principale critique faite par Paul Romer est que les mathématiques sont trop souvent utilisées pour obscurcir, plutôt qu’éclairer un débat. Cette discussion n’est pas nouvelle, mais il est intéressant de voir qu’elle survient à un moment où les assureurs s’interrogent, eux aussi, sur les modèles actuariels.

Science économique, et économie

Le point de départ de la discussion de Romer (2015) est qu’il est surprenant qu’en plus de 20 ans, la théorie de la croissance n’ait toujours pas abouti à un consensus. Son explication repose sur le concept de mathiness. Pour reprendre l’expression de Tim Harford, “economics has a reputation for producing rigourous nonsense“. Dans les années 40, Paul Samuelson avait initié un mouvement visant à clarifier les arguments des économistes, en cherchant des fondements plus « scientifiques ». La route de l’enfer serait-elle pavée de bonnes intentions ?

Continue reading ‘Mathiness’ et Assurance

Segmentation et Mutualisation, les deux faces d’une même pièce ?

Ce billet est co-écrit avec Michel Denuit et Romuald Elie. Il s’agit de la version préliminaire d’un article qui sera bientôt soumis pour publication.

L’assurance repose fondamentalement sur l’idée que la mutualisation des risques entre des assurés est possible. Cette mutualisation, qui peut être vue comme une relecture actuarielle de la loi des grands nombres, n’ayant de sens qu’au sein d’une population de risques « homogènes » (Charpentier [2011]). Cette condition (actuarielle) impose aux assureurs de segmenter, ce que confirment plusieurs travaux économiques. Avec l’explosion du nombre de données, et donc de possibles variables tarifaires, certains assureurs évoquent l’idée d’un tarif individuel, semblant remettre en cause l’idée même de mutualisation des risques. Entre cette force qui pousse à segmenter et la force de rappel qui tend (pour des raisons sociales mais aussi actuarielles – ou au moins de robustesse statistique[1]) à imposer une solidarité minimale entre les assurés, quel équilibre va en résulter, dans un contexte de concurrence fort entre les compagnies d’assurance ?

Continue reading Segmentation et Mutualisation, les deux faces d’une même pièce ?

Natural Catastrophe Insurance: How Should Governments Intervene?

The paper, written with Benoit le Maux, “Natural Catastrophe Insurance: How Should Government Intervene?” should appear soon in the Journal of Public Economics.

This paper develops a theoretical framework for analyzing the decision to provide or buy insurance against the risk of natural catastrophes. In contrast to conventional models of insurance, the insurer has a non-zero probability of insolvency which depends on the distribution of the risks, the premium rate, and the amount of capital in the company. When the insurer is insolvent, each loss reduces the indemnity available to the victims, thus generating negative pecuniary externalities. Our model shows that government-provided insurance will be more attractive in terms of expected utility, as it allows these negative pecuniary externalities to be spread equally among policyholders. However, when heterogeneous risks are introduced, a government program may be less attractive in safer areas, which could yield inefficiency if insurance ratings are not chosen appropriately.

The paper is still available on the http://papers.ssrn.com/1832624 website.

Mathématiques de l’Assurance Non-Vie (2)

« Dans ce contexte d’incertitude, il est particulièrement réconfortant de revenir aux sources, aux fondamentaux, c’est-à-dire aux mathématiques et de rappeler que le risque naît de l’aléa et s’appréhende grâce aux développements les plus avancés du calcul des probabilités. » (Claude Bébéar, dans la préface du tome 1)

Après avoir été épuisé plusieurs semaines (voire plusieurs mois ?), une nouvelle impression du tome 2 de Mathématiques de l’Assurance Non-Vie, coécrit avec Michel Denuit, est de nouveau disponible. J’ai été surpris quand on nous a dit – en début d’année – que le second tome serait bientôt épuisé, et que plus d’un millier d’exemplaires avaient été vendus (ou donnés, ou volés… peu importe). Surpris qu’autant de monde pouvait être intéressé par un gros pavé (les deux tomes doivent faire plus de mille pages, au total) aussi sérieux. Comme le notait Gilles Bénéplanc dans la revue Risques, « s’ils sont riches et rigoureux (le titre présente l’avantage ne pas être trompeur quant au contenu), ces deux volumes d’actuariat se lisent toujours avec intérêt et même souvent avec plaisir ». Car effectivement, on a passé du temps à choisir le titre, et on est vite tombé d’accord sur le fait qu’il fallait insister sur le fait qu’il s’agissait de livre de Mathématiques (avant tout). Pour la petite anecdote, j’étais allé le chercher chez Gibert (juste après la publication du premier tome… après avoir fait un détour par les rayons de bandes dessinées, bien sûr). En vain. Là, un vendeur m’a expliqué que le livre était considéré comme traitant d’assurance, et que l’assurance était rangé dans les rayons de droit. Bref, notre livre vert était perdu au milieu des livres de Dalloz (alors que les livres de mathématiques financières se trouvaient dans la section mathématiques). Mais c’est un détail, tant qu’en le cherchant, on le trouve…

Je dois aussi dire que je suis très fier du livre. Très fier que des étudiants et des praticiens me disent le lire. Très fier d’apprendre que des étudiants au Brésil avaient photocopié (et traduit) l’introduction aux modèles de ruine (que l’on introduit avec l’approche de de Finetti, beaucoup plus intuitive je trouve…). Très fier quand des chercheurs que j’admire me disent avoir trouvé un petit résultat qu’ils cherchaient pour un papier de recherche (je pense a des discussions avec Alain, à Paris 1, sur la transformée d’Esscher). Je trouve aussi dangereux qu’autant de monde le lisent, car il est truffé d’erreurs. Mais après près de 6 mois de relecture complète, presque tous les jours, on fini par ne plus rien voir. Et malgré le travail incroyable de Christian, éditeur de la collection, il reste des coquilles (des coquillettes j’espère). Mais si on devait attendre que les livres soient parfaits avant de les publier, rien ne sortirait. Après presque dix ans, je pense que je réécrirais des paragraphes d’une autre manière, ou que je mettrais plus d’aspects algorithmiques. Mais ce qui est fait est fait, et j’en suis encore assez fier. OK, très fier.

Lorsque l’on a été contacté, on nous a demandé s’il fallait un  nouveau tirage, ou si une seconde édition (revue et corrigée) serait nécessaire. Soyons réalistes. Le livre n’est plus forcément à jour, et comme je l’ai dit, il reste beaucoup de coquilles, voire de fautes (il faudrait que l’on prenne le temps de les recenser). Mais une nouvelle édition ferait probablement doubler la taille du livre, et prendrait beaucoup de temps ! Sur les deux premiers chapitres, Michel a publié un livre complet sur les données de comptage en assurance. Sur les aspects computationnels, je vais éditer un livre à venir. Et s’il y a 10 ans, il y a avait encore peu de livres sur le sujet, plusieurs permettent maintenant de rentrer plus en détails sur certains aspects. Je pense au livre de Mario Wüthrich et Michael Merz sur le provisionnement (plus clair que le chapitre de notre livre, et plus complet). Pareil pour les chapitres de micro économie de l’assurance, ou sur les valeurs extrêmes ! On avait mis ensemble nos notes de cours, et on a pris plaisir à travailler ensemble sur ce projet. Et le livre reste pertinent pour nos cours. Il faudra juste aller voir ailleurs pour aller plus loin sur certains aspects ! Donc toutes nos excuses d’avoir juste demandé un retirage du livre, et de ne pas avoir pris le temps de faire une révision complète du livre…

Non-observable vs. observable heterogeneity factor

This morning, in the ACT2040 class (on non-life insurance), we’ve discussed the difference between observable and non-observable heterogeneity in ratemaking (from an economic perspective). To illustrate that point (we will spend more time, later on, discussing observable and non-observable risk factors), we looked at the following simple example. Let  denote the height of a person. Consider the following dataset

> Davis=read.table(
+ "http://socserv.socsci.mcmaster.ca/jfox/Books/Applied-Regression-2E/datasets/Davis.txt")

There is a small typo in the dataset, so let us make manual changes here

> Davis[12,c(2,3)]=Davis[12,c(3,2)] 

Here, the variable of interest is the height of a given person,

> X=Davis$height 

If we look at the histogram, we have

> hist(X,col="light green", border="white",proba=TRUE,xlab="",main="")

Can we assume that we have a Gaussian distribution ?

Maybe not… Here, if we fit a Gaussian distribution, plot it, and add a kernel based estimator, we get

> (param <- fitdistr(X,"normal")$estimate) 
> f1 <- function(x) dnorm(x,param[1],param[2]) 
> x=seq(100,210,by=.2) 
> lines(x,f1(x),lty=2,col="red") 
> lines(density(X))

 

If you look at that black line, you might think of a mixture, i.e. something like

(using standard mixture notations). Mixture are obtained when we have a non-observable heterogeneity factor: with probability , we have a random variable  (call it type [1]), and with probability , a random variable  (call it type [2]). So far, nothing new. And we can fit such a mixture distribution, using e.g.


> library(mixtools) 
> mix <- normalmixEM(X)
 number of iterations= 335 
> (param12 <- c(mix$lambda[1],mix$mu,mix$sigma)) 
[1] 0.4002202 178.4997298 165.2703616 6.3561363 5.9460023  

If we plot that mixture of two Gaussian distributions, we get

> f2 <- function(x){ param12[1]*dnorm(x,param12[2],param12[4])
+ (1-param12[1])*dnorm(x,param12[3],param12[5]) }
> lines(x,f2(x),lwd=2, col="red") lines(density(X))

Not bad. Actually, we can try to maximize the likelihood with our own codes,

> logdf <- function(x,parameter){
+ p <- parameter[1]
+ m1 <- parameter[2]
+ s1 <- parameter[4]
+ m2 <- parameter[3]
+ s2 <- parameter[5]
+ return(log(p*dnorm(x,m1,s1)+(1-p)*dnorm(x,m2,s2)))
+ }
> logL <- function(parameter) -sum(logdf(X,parameter))
> Amat <- matrix(c(1,-1,0,0,0,0,
+ 0,0,0,0,1,0,0,0,0,0,0,0,0,1), 4, 5)
> bvec <- c(0,-1,0,0)
> constrOptim(c(.5,160,180,10,10), logL, NULL, ui = Amat, ci = bvec)$par

[1]   0.5996263 165.2690084 178.4991624   5.9447675   6.3564746

Here, we include some constraints, to insurance that the probability belongs to the unit interval, and that the variance parameters remain positive. Note that we have something close to the previous output.

Let us try something a little bit more complex now. What if we assume that the underlying distributions have the same variance, namely

In that case, we have to use the previous code, and make small changes,

> logdf <- function(x,parameter){
+ p <- parameter[1]
+ m1 <- parameter[2]
+ s1 <- parameter[4]
+ m2 <- parameter[3]
+ s2 <- parameter[4]
+ return(log(p*dnorm(x,m1,s1)+(1-p)*dnorm(x,m2,s2)))
+ }
> logL <- function(parameter) -sum(logdf(X,parameter))
> Amat <- matrix(c(1,-1,0,0,0,0,0,0,0,0,0,1), 3, 4)
> bvec <- c(0,-1,0)
> (param12c= constrOptim(c(.5,160,180,10), logL, NULL, ui = Amat, ci = bvec)$par)

[1]   0.6319105 165.6142824 179.0623954   6.1072614

This is what we can do if we cannot observe the heterogeneity factor. But wait… we actually have some information in the dataset. For instance, we have the sex of the person. Now, if we look at histograms of height per sex, and kernel based density estimator of the height, per sex, we have

So, it looks like the height for male, and the height for female are different. Maybe we can use that variable, that was actually observed, to explain the heterogeneity in our sample. Formally, here, the idea is to consider a mixture, with an observable heterogeneity factor: the sex,

We now have interpretation of what we used to call class [1] and [2] previously: male and female. And here, estimating parameters is quite simple,

>  (pM <- mean(sex=="M"))
[1] 0.44
>  (paramF <- fitdistr(X[sex=="F"],"normal")$estimate)
      mean         sd 
164.714286   5.633808 
>  (paramM <- fitdistr(X[sex=="M"],"normal")$estimate)
      mean         sd 
178.011364   6.404001

And if we plot the density, we have

> f4 <- function(x) pM*dnorm(x,paramM[1],paramM[2])+(1-pM)*dnorm(x,paramF[1],paramF[2])
> lines(x,f4(x),lwd=3,col="blue")

What if, once again, we assume identical variance? Namely, the model becomes

Then a natural idea to derive an estimator for the variance, based on previous computations, is to use

The code is here

> s=sqrt((sum((height[sex=="M"]-paramM[1])^2)+sum((height[sex=="F"]-paramF[1])^2))/(nrow(Davis)-2))
> s
[1] 6.015068

and again, it is possible to plot the associated density,

> f5 <- function(x) pM*dnorm(x,paramM[1],s)+(1-pM)*dnorm(x,paramF[1],s)
> lines(x,f5(x),lwd=3,col="blue")

Now, if we think a little about what we’ve just done, it is simply a linear regression on a factor, the sex of the person,

where .  And indeed, if we run the code to estimate this linear model,

> summary(lm(height~sex,data=Davis))

Call:
lm(formula = height ~ sex, data = Davis)

Residuals:
     Min       1Q   Median       3Q      Max 
-16.7143  -3.7143  -0.0114   4.2857  18.9886 

Coefficients:
            Estimate Std. Error t value Pr(>|t|)    
(Intercept) 164.7143     0.5684  289.80   <2e-16 ***
sexM         13.2971     0.8569   15.52   <2e-16 ***
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Residual standard error: 6.015 on 198 degrees of freedom
Multiple R-squared:  0.5488,	Adjusted R-squared:  0.5465 
F-statistic: 240.8 on 1 and 198 DF,  p-value: < 2.2e-16

we get the same estimators for the means and the variance as the ones obtained previously. So, as mentioned this morning in class, if you have a non-observable heterogeneity factor, we can use a mixture model to fit a distribution, but if you can get a proxy of that factor, that is observable, then you can run a regression. But most of the time, that observable variable is just a proxy of a non-observable one…

How old is the oldest person you know?

Last week, we had a discussion with some colleagues about the fact that – in order to prepare for the SOA exams – we did not have time (so far) to mention results on extreme values in our actuarial program. I did gave an introduction in my nonlife actuarial models class, but it was only an introduction, in three hours, in order to illustrate reinsurance pricing. And I told my students that if they wanted to know more about extreme values, they should start a master program in actuarial science and finance, since I will give a course on extremes (and copulas) next winter.

But actually, extreme values are everywhere ! For instance, there is a Prudential TV commercial where has people place large, round stickers on a number line to represent the age of the oldest person they know. This forms some kind of histogram. The message is to have Prudential prepare you to have adequate money for all these years. And actually, anyone can add his or her own sticker at the Prudential website.

Patrick Honner, on his blog (http://mrhonner.com/…), did mention this interesting representation. But this idea is not new, as mentioned in a post, published three years ago. In 1932, Emil Gumbel gave a talk in France on the “âge limite“. And as he wrote it “on peut donc supposer que la distribution de l’âge limite – c’est à dire la probabilité que cet âge ait une valeur donnée – soit Gaussienne“. In 1932 (not aware of Fisher and Tippett work, he thought that the limiting distribution for a maximum would be Gaussian). But a few years after, he read about Fisher’s work, and observed also that “la distribution d’une valeur extrêmes peut être représentée pour un nombre suffisant d’observations par la formule doublement exponentielle, pourvu que la distribution initiale se comporte asymptotiquement comme une exponentielle. La formule devient rigoureuse si la distribution initiale est exponentielle“, as he wrote in 1935. And in 1937, he wrote a paper on “les centennaires” that can also be related to the work of Bortkiewicz on rare events. One should also mention one of the most important paper in extreme value theory, published in 1974 by Balkema and de Haan, on Residual Life Time at Great Age.

Because in this experiment, the question is “How Old is the Oldest Person You Know?“, so it is the distribution of a maximum. And from Fisher-Tippett theorem, if we assume that the age is bounded (and that there exists some finite upper limit), then the limiting distribution for the maxima (or to be more rigorous, a affine transformation of the maxima) should be Weibull distribution. And this is what it looks like

> plot(-x,dweibull(x,2.25,4),type="l",lwd=2)

As an actuary, the only thing I know about demography, is the distribution of the age of death. For instance, consider the following French life table

> alive <- read.table(
+ "https://perso.univ-rennes1.fr/arthur.charpentier/TV8890.csv",
+ sep=";",header=TRUE)$Lx
> nb= -diff(alive)
> ages=0:110
> plot(ages,nb,type="h")

This is the distribution of the age of the death in a given population. Which is not the same as the distribution mentioned above! What we look for is the following: given that someone is alive, what could be the distribution of his-her age ? Actually, if we assume that the yearly number of birth is constant with time (as well as death probability), then we can compute easily to number of people of age https://latex.codecogs.com/gif.latex?x : we take everyone born (exactly) https://latex.codecogs.com/gif.latex?x years ago, and remove all those who died at at https://latex.codecogs.com/gif.latex?x, https://latex.codecogs.com/gif.latex?x-1, etc. So the function should be

> probadeath=nb/sum(nb)
> nbx=function(x) 1-sum(probadeath[1:(x+1)])
> surv=Vectorize(nbx)(ages)
> distrage=surv/sum(surv)

which looks like

But this assumption of constant number of birth is not that relevent. And actually, what we need is the distribution of the age within a population… This is a population pyramid, actually. The French one can be downloaded from http://www.insee.fr/fr/ppp/bases-de-donnees/….

> population <- read.table("popinsee2007.csv",sep=";",header=TRUE)$POPTOT07
> ages=0:107
> plot(ages,population/sum(population),type="h")

(the red line being the one obtained previously, using some natality assumptions). Now, let us use this population to generate acquaintances.

> agemax=function(nsim=1000,size=20){
+ agemax=rep(NA,nsim)
+ for(i in 1:nsim){
+ X=sample(ages,prob=population/sum(population),size=size,replace=TRUE)
+ agemax[i]=max(X)}
+ return(agemax)}

Here, we assume that everyone knows 20 other people, randomly chosen in the entire population, then we return the age of the oldest. And we do that for 1,000 people. Here is the distribution, we obtain

> XS=agemax(10000,20)
> plot(table(XS)/length(XS),type="h",xlim=c(0,108))

where the red line is a Weibull distribution (a transformed one, actually, since in extremely value theory, the distance to the upper bound of the distribution has a Weibull density),

> library(MASS)
> fit=fitdistr(108-XS,dweibull,list(shape=1,scale=1))
> lines(ages,dweibull(108-ages,fit$estimate[1],fit$estimate[2]),col="red")

Which is quite close to the distribution obtained in the commercial, don’t you think ? But still, it should be possible to be more accurate, since people should think of their parents, or grandparents. So I guess it could be possible to build a more accurate algorithm, to get something closer to the distribution obtained on the Prudential website. But first, let us wait to have more stickers, more observations… and then I’ll be back to play with it !

Régression logistique et arbres

Pour le cours de mercredi prochain, la base utilisée sera une base tirée du livre de Jed Frees, http://instruction.bus.wisc.edu/jfrees/…

> baseavocat=read.table("http://freakonometrics.free.fr/AutoBI.csv",header=TRUE,sep=",")
> tail(baseavocat)
     CASENUM ATTORNEY CLMSEX MARITAL CLMINSUR SEATBELT CLMAGE  LOSS
1335   34204        2      2       2        2        1     26 0.161
1336   34210        2      1       2        2        1     NA 0.576
1337   34220        1      2       1        2        1     46 3.705
1338   34223        2      2       1        2        1     39 0.099
1339   34245        1      2       2        1        1     18 3.277
1340   34253        2      2       2        2        1     30 0.688

On dispose d’une variable dichotomique indiquant si un assuré – suite à un accident de la route – a été représenté par un avocat (1 si oui, 2 si non). On connaît le sexe de l’assuré (1 pour les hommes et 2 pour les femmes), le statut marital (1 s’il est marié, 2 s’il est célibataire, 3 pour un veuf, et 4 pour un assuré divorcé). On sait aussi si l’assuré portait ou non une ceinture de sécurité lorsque l’accident s’est produit (1 si oui, 2 si non et 3 si l’information n’est pas connue). Enfin, une information pour savoir si le conducteur du véhicule était ou non assuré (1 si oui, 2 si non et 3 si l’information n’est pas connue). On va recoder un peu les données afin de les rendre plus claires à lire.

Les transparents du cours sont en ligne ici,

Sur les arbres de régression, je mettrais en ligne un billet, afin d’illustrer la méthode. En attendant des compléments théoriques peuvent se trouver en ligne http://genome.jouy.inra.fr/…, http://ensmp.fr/…, ou http://ujf-grenoble.fr/… (pour information, nous ne verrons que la méthode CART). Je peux renvoyer au livre (et au blog) de Stéphane Tuffery, ou (en anglais) au livre de Richard Berk, dont un résumé se trouve en ligne sur http://crim.upenn.edu/….

La semaine suivante, nous aborderons la régression de Poisson, les méthodes de biais minimal, et introduirons les modèles linéaires généralisés. Je renvoie au chapitre sur la tarification a priori du Denuit & Charpentier (2005), aux chapitres 12 et 13 de Frees (2010) ou encore les chapitres 5 et 6 du De Jong  & Heller (2008). Pour les plus curieux qui veulent comprendre les liens entre les modèles linéaires généralisés et la tarification par crédibilité, je renvoie à l’article de Klinker (2010)

Amsterdam

I will be in Amsterdam for the end of this week. I will be in the jury of the PhD defense of Julien Tomas, entitled “Quantifying Biometric Life Insurance Risks With Non-Parametric Smoothing Methods” (the thesis will probably be online soon). But before, I will give a talk at the actuarial seminar at UvA. My visit last time was a real pleasure, and it should be the same this time too. I will give a talk this Thursday on “R for actuarial science“. The slides can be downloaded from here.

R for actuarial science

As mentioned in the Appendix of Modern Actuarial Risk Theory, “R (and S) is the ‘lingua franca’ of data analysis and statistical computing, used in academia, climate research, computer science, bioinformatics, pharmaceutical industry, customer analytics, data mining, finance and by some insurers. Apart from being stable, fast, always up-to-date and very versatile, the chief advantage of R is that it is available to everyone free of charge. It has extensive and powerful graphics abilities, and is developing rapidly, being the statistical tool of choice in many academic environments.

R is based on the S statistical programming language developed by Joe Chambers at Bell labs in the 80’s. To be more specific, R is an open-source implementation of the S language, developed by Robert Gentlemn and Ross Ihaka. It is a vector based language, which makes it extremely interesting for actuarial computations. For instance, consider some Life Tables,

> TD[39:52,]       > TV[39:52,]
     Age    Lx         Age    Lx
  39  38 95237          38 97753
  40  39 94997          39 97648
  41  40 94746          40 97534
  42  41 94476          41 97413
  43  42 94182          42 97282
  44  43 93868          43 97138
  45  44 93515          44 96981
  46  45 93133          45 96810
  47  46 92727          46 96622
  48  47 92295          47 96424
  49  48 91833          48 96218
  50  49 91332          49 95995
  51  50 90778          50 95752
  52  51 90171          51 95488

Those (French) Life Tables can be found here

> TD <- read.table(
+ "https://perso.univ-rennes1.fr/arthur.charpentier/TD8890.csv",sep=";",header=TRUE)
> TV <- read.table(
+ "https://perso.univ-rennes1.fr/arthur.charpentier/TV8890.csv",sep=";",header=TRUE)

From those vectors, it is possible to construct the matrix of death probabilities, https://latex.codecogs.com/gif.latex?\boldsymbol{P}=[\text{%20}_{k}p_x], using for instance

>  Lx <- TD$Lx
>  m <- length(Lx)
>  p <- matrix(0,m,m); d <- p
>  for(i in 1:(m-1)){
+  p[1:(m-i),i] <- Lx[1+(i+1):m]/Lx[i+1]
+  d[1:(m-i),i] <- (Lx[(1+i):(m)]-Lx[(1+i):(m)+1])/Lx[i+1]}
>  diag(d[(m-1):1,]) <- 0
>  diag(p[(m-1):1,]) <- 0
>  q <- 1-p

One can compute easily, e.g., the (curtate) expectation of life defined as

https://latex.codecogs.com/gif.latex?e_x%20=\mathbb{E}(K_x)=\sum_{k=1}^\infty%20k\cdot%20\text{%20}_{k|1}q_x%20=%20\sum_{k=1}^\infty%20\text{%20}_{k}p_x

and one can compute the vector of life expectancy, at various ages https://latex.codecogs.com/gif.latex?\boldsymbol{e}=[e_x], as

> life.exp = function(x){sum(p[1:nrow(p),x])}
> e = Vectorize(life.exp)(1:m)

An actually, any kind of actuarial quantity can be derived from those matrices. The expected present value (or actuarial value) of a temporary life annuity-due is, for instance,

https://latex.codecogs.com/gif.latex?\ddot{a}_{x:\overline{n}|}=\sum_{k=0}^{n-1}%20\nu^k%20\cdot%20{}_{k}p_x%20=\frac{1-A_{x:\overline{n}|}}{1-\nu}

The code to compute those functions is here

> for(j in 1:(m-1)){ adots[,j]<-cumsum(1/(1+i)^(0:(m-1))*c(1,p[1:(m-1),j])) }

or consider the expected present value of a term insurance

https://latex.codecogs.com/gif.latex?%20A^1_{x:\overline{n}|}%20=\sum_{k=0}^{n-1}%20\nu^{k+1}%20\cdot%20\text{%20}_{k|}q_x

with the following code

> for(j in 1:(m-1)){ A[,j]<-cumsum(1/(1+i)^(1:m)*d[,j]) }

Some more details can be found in the first part of the notes of the crash courses of last summer, in Meielisalp. Vector – or matrices – are extremely convenient to work with, when dealing with life contingencies. It is also possible to model prospective mortality. Here, the mortality is not only function of the age https://latex.codecogs.com/gif.latex?x, but also time https://latex.codecogs.com/gif.latex?t,

> t(DTF)[1:10,1:10]
    1899  1900  1901  1902  1903  1904  1905  1906  1907  1908
0  64039 61635 56421 53321 52573 54947 50720 53734 47255 46997
1  12119 11293 10293 10616 10251 10514  9340 10262 10104  9517
2   6983  6091  5853  5734  5673  5494  5028  5232  4477  4094
3   4329  3953  3748  3654  3382  3283  3294  3262  2912  2721
4   3220  3063  2936  2710  2500  2360  2381  2505  2213  2078
5   2284  2149  2172  2020  1932  1770  1788  1782  1789  1751
6   1834  1836  1761  1651  1664  1433  1448  1517  1428  1328
7   1475  1534  1493  1420  1353  1228  1259  1250  1204  1108
8   1353  1358  1255  1229  1251  1169  1132  1134  1083   961
9   1175  1225  1154  1008  1089   981  1027  1025   957   885

Thus, we now have a force of mortality matrix https://latex.codecogs.com/gif.latex?\boldsymbol{\mu}=[\mu_{x,t}], or surface

http://freakonometrics.hypotheses.org/wp-content/blogs.dir/253/files/2013/01/Capture-d%E2%80%99e%CC%81cran-2013-01-10-a%CC%80-14.29.04.png

It is also possible to use R packages to estimate a Lee-Carter model of the mortality rate,

https://latex.codecogs.com/gif.latex?\log%20\mu%20_{x,t}%20=\alpha%20_{x}%20+\beta%20_{x}%20\cdot%20\kappa_{t}%20+\varepsilon%20_{x,t}

> library(demography)
> MUH =matrix(DEATH$Male/EXPOSURE$Male,nL,nC)
> POPH=matrix(EXPOSURE$Male,nL,nC)
> BASEH <- demogdata(data=MUH, pop=POPH, ages=AGE, years=YEAR, type="mortality",
+ label="France", name="Hommes", lambda=1)
> RES=residuals(LCH,"pearson")

One can easily study residuals, for instance as a function of the age,

http://freakonometrics.hypotheses.org/wp-content/blogs.dir/253/files/2013/01/Capture-d%E2%80%99e%CC%81cran-2013-01-10-a%CC%80-14.29.15.png

or a function of the year,

http://freakonometrics.hypotheses.org/wp-content/blogs.dir/253/files/2013/01/Capture-d%E2%80%99e%CC%81cran-2013-01-10-a%CC%80-14.29.22.png

Some more details can be found in the second part of the notes of the crash courses of last summer, in Meielisalp.

R is also interesting because of its huge number of libraries, that can be used for predictive modeling. One can easily use smoothing functions in regression, or regression trees,

> TREE = tree((nbr>0)~ageconducteur,data=sinistres,split="gini",mincut = 1)
> age = data.frame(ageconducteur=18:90)
> y1 = predict(TREE,age)
> reg = glm((nbr>0)~bs(ageconducteur),data=sinistres,family="binomial")
> y = predict(reg,age,type="response")

http://freakonometrics.hypotheses.org/files/2013/01/predictive-gam-tree.png

Some practitioners might be scared because the legend claims that R is not as good as SAS to handle large databases. Actually, a lot of functions can be used to import datasets. The most convenient one is probably

> baseCOUT = read.table("http://freakonometrics.free.fr/baseCOUT.csv",
+  sep=";",header=TRUE,encoding="latin1")
>  tail(baseCOUT,4)
     numeropol  debut_pol    fin_pol freq_paiement langue  type_prof alimentation type_territoire
6512     87291 2002-10-16 2003-01-22       mensuel      A Professeur   Vegetarien          Urbain
6513     87301 2002-10-01 2003-09-30       mensuel      A Technicien   Vegetarien          Urbain
6514     87417 2002-10-24 2003-10-21       mensuel      F Technicien   Vegetalien     Semi-urbain
6515     88128 2003-01-17 2004-01-16       mensuel      F     Avocat   Vegetarien     Semi-urbain
             utilisation presence_alarme marque_voiture sexe exposition age duree_permis age_vehicule i   coutsin
6512 Travail-occasionnel             oui           FORD    M  0.2684932  47           29           28 1 1274.5901
6513              Loisir             oui          HONDA    M  0.9972603  44           24           25 1  278.0745
6514 Travail-occasionnel             non     VOLKSWAGEN    F  0.9917808  23            3           11 1  403.1242
6515              Loisir             non           FIAT    F  0.9972603  23            4           11 1  230.9565

But if the dataset is too large, it is also possible to specify which variables might be interesting, using

> mycols = rep("NULL", 18)
> mycols[c(1,4,5,12,13,14,18)] <- NA
> baseCOUTsubC = read.table("http://freakonometrics.free.fr/baseCOUT.csv",
+  colClasses = mycols,sep=";",header=TRUE,encoding="latin1")
> head(baseCOUTsubC,4)
  numeropol freq_paiement langue sexe exposition age    coutsin
1         6        annuel      A    M  0.9945205  42   279.5839
2        27       mensuel      F    M  0.2438356  51   814.1677
3        27       mensuel      F    M  1.0000000  53   136.8634
4        76       mensuel      F    F  1.0000000  42   608.7267

It is also possible (before running a code on the entire dataset) to import only the first lines of the dataset.

> baseCOUTsubCR = read.table("http://freakonometrics.free.fr/baseCOUT.csv",
+  colClasses = mycols,sep=";",header=TRUE,encoding="latin1",nrows=100)
> tail(baseCOUTsubCR,4)
    numeropol freq_paiement langue sexe exposition age   coutsin
97       1193       mensuel      F    F  0.9972603  55  265.0621
98       1204       mensuel      F    F  0.9972603  38 9547.7267
99       1231       mensuel      F    M  1.0000000  40  442.7267
100      1245        annuel      F    F  0.6767123  48  179.1925

It is also possible to import a zipped file. The file itself has a smaller size, and it can usually be imported faster.

> import.zip = function(file){
+ temp = tempfile()
+ download.file(file,temp);
+ read.table(unz(temp, "baseFREQ.csv"),sep=";",header=TRUE,encoding="latin1")}
> system.time(import.zip("http://freakonometrics.free.fr/baseFREQ.csv.zip"))
trying URL 'http://freakonometrics.free.fr/baseFREQ.csv.zip'
Content type 'application/zip' length 692655 bytes (676 Kb)
opened URL
==================================================
downloaded 676 Kb
   user  system elapsed 
      0.762       0.029       4.578 
> system.time(read.table("http://freakonometrics.free.fr/baseFREQ.csv", 
+ sep=";",header=TRUE,encoding="latin1"))
   user  system elapsed 
      0.591       0.072       9.277

Finally, note that it is possible to import any kind of dataset, not only a text file. Even a Microsoft Excel folder. On a Windows computer, one can use SQL queries

> sheet = "c:\\Documents and Settings\\user\\excelsheet.xls"
> connection = odbcConnectExcel(sheet)
> spreadsheet = sqlTables(connection)
> query = paste("SELECT * FROM",spreadsheet$TABLE_NAME[1],sep=" ")
> result = sqlQuery(connection,query)

Then, once the dataset is imported, several functions can be used,

> cost = aggregate(coutsin~ AgeSex,mean, data=baseCOUT)
> frequency = merge(aggregate(nbsin~ AgeSex,sum, data=baseFREQ),
+ aggregate(exposition~ AgeSex,sum, data=baseFREQ))
> frequency$freq = frequency$nbsin/frequency$exposition
> base.freq.cost = merge(frequency, cost)

http://freakonometrics.hypotheses.org/wp-content/blogs.dir/253/files/2013/01/cost-freq-qc.png

Finally, R is interesting for its graphical interface. “If you can picture it in your head, chances are good that you can make it work in R. R makes it easy to read data, generate lines and points, and place them where you want them. Its very flexible and super quick. When youve only got two or three hours until deadline, R can be brilliant” as said Amanda Cox, a graphics editor at the New York Times. “R is particularly valuable in deadline situations when data is scant and time is precious.”.
Several cases were considered on the blog http ://chartsnthings.tumblr.com/…. First, we start with a simple graph, here State Government control in the US

http://freakonometrics.hypotheses.org/files/2013/01/nyt-chartsnthings-1.png

Then try to find a nice visual representation, e.g.

http://freakonometrics.hypotheses.org/wp-content/blogs.dir/253/files/2013/01/nyt-chartsnehings-2.png

And finally, you can just print it in your favorite newspaper,

http://freakonometrics.hypotheses.org/files/2013/01/nyt-chartsnthings-3.jpg

And you can get any kind of graphs,

http://freakonometrics.hypotheses.org/wp-content/blogs.dir/253/files/2013/01/nyt-6.png

And not only about politics,

http://freakonometrics.hypotheses.org/files/2013/01/nyt-7-b.jpg Graphs are important. “Its not just about producing graphics for publication. Its about playing around and making a bunch of graphics that help you explore your data. This kind of graphical analysis is a really useful way to help you understand what you’re dealing with, because if you cant see it, you cant really understand it. But when you start graphing it out, you can really see what you’ve got” as said Peter Aldhous, San Francisco bureau chief of New Scientist magazine. Even for actuaries. “The commercial insurance underwriting process was rigorous but also quite subjective and based on intuition. R enables us to communicate our analytic results in appealing and innovative ways to non-technical audiences through rapid development lifecycles. R helps us show our clients how they can improve their processes and effectiveness by enabling our consultants to conduct analyses efficiently”, as explained by John Lucker, team of advanced analytics professionals at Deloitte Consulting Principal, in http://blog.revolutionanalytics.com/r-is-hot/. See also Andrew Gelman’s view, on graphs, http://www.stat.columbia.edu/…

So yes, actuaries might be interested to use R for actuarial communication, as mentioned in http ://www.londonr.org/…

http://freakonometrics.hypotheses.org/wp-content/blogs.dir/253/files/2013/01/mango-R-4.png

The Actuarial Toolkit (see http ://www.actuaries.org.uk/…) stresses the interest of R, “The power of the language R lies with its functions for statistical modelling, data analysis and graphics ; its ability to read and write data from various data sources; as well as the opportunity to embed R in excel or other languages like VBA. In the way SAS is good for data manipulations, R is superior for modelling and graphical output“.

From 2011, Asia Capital Reinsurance Group (ACR) uses R to Solve Big Data Challenges (see http ://www.reuters.com/…). And Lloyd’s uses motion charts created with R to provide analysis to investors (as discussed on http ://blog.revolutionanalytics.com/…)

A lot of information can be found on http ://jeffreybreen.wordpress.com/…

http://freakonometrics.hypotheses.org/files/2013/01/6a010534b1db25970b01538fea1796970b-800wi.png

Markus Gesmann mentioned on his blog a lot of interesting graphs used for actuarial reporting, http ://lamages.blogspot.ca/…

http://freakonometrics.hypotheses.org/wp-content/blogs.dir/253/files/2013/01/Capture-d%E2%80%99e%CC%81cran-2013-01-10-a%CC%80-15.37.33.png

Further, R is free. Which can be compared with SAS, $6,000 per PC, or $28,000 per processor on a server (as mentioned on http ://en.wikipedia.org/…)

It is also becoming more and more popular, as a programming language. As mentioned on this month Transparent Language Popularity (see http ://lang-index.sourceforge.net/), R is ranked 12. Far away after C or Java, but before Matlab (22) or SAS (27). On StackOverFlow (see http ://stackoverflow.com/) is also far being C++ (399,232 occurrences) or Java (348,418), but with 21,818 occurrences, it appears before Matlab (14,580) and SAS (899). As mentioned on http ://r4stats.com/articles/popularity/ R is becoming more and more popular, on listserv discussion traffic

http://freakonometrics.hypotheses.org/wp-content/blogs.dir/253/files/2013/01/fig_1_listserv.png

It is clearly the most popular software in data analysis, as mentioned by the Rexer Analytics survey, in 2009

http://freakonometrics.hypotheses.org/wp-content/blogs.dir/253/files/2013/01/fig_3_rexersurvey.png

What about actuaries ? In a survey (see http ://palisade.com/…), R was not extremely popular.

http://freakonometrics.hypotheses.org/wp-content/blogs.dir/253/files/2013/01/mango-R-1.png

If we consider only statistical softwares, SAS is still far ahead, among UK and CAS actuaries

http://freakonometrics.hypotheses.org/wp-content/blogs.dir/253/files/2013/01/mango-R-2.png

But, as mentioned by Mike King, Quantitative Analyst, Bank of America, “I cant think of any programming language that has such an incredible community of users. If you have a question, you can get it answered quickly by leaders in the field. That means very little downtime.” This was also mentioned by Glenn Meyers, in the Actuarial Review “The most powerful reason for using R is the community” (in http ://nytimes.com/…). For instance, http ://r-bloggers.com/ has contributions from more than 425 R users.

As said by Bo Cowgill, from Google “The best thing about R is that it was developed by statisticians. The worst thing about R is that it was developed by statisticians.