adrien-fabre.com
Accueil Résultats Documentation : Questions Variables Explications

Méthodes des questionnaires et traitements effectués

Présentation des sondages

Les deux sondages présentés sur ce site ont été conduit par ordinateur en septembre/octobre 2016 auprès de deux échantillons d'un millier de répondants représentatifs de la population française et entièrement distincts. Toutes les sources sont disponibles ici. Cette partie du site présente les détails de conception du sondage : ses sections sont de plus en plus techniques, et il n'est pas recommandé de la consulter autrement que pour chercher la réponse à une question précise sur l'enquête.

Représentativité des échantillons

Le fournisseur des échantillons est l'entreprise Bilendi, qui fournit des échantillons à tous les grands instituts de sondage français (Ifop, Ipsos, BVA, etc.) grâce à son panel des 700 000 français qui ont souscrit au programme de points cadeaux Maximiles. Ainsi, chaque répondant a reçu 150 points Maximiles pour un temps estimé du sondage à 20 minutes, soit une rémunération d'environ 9€ de l'heure.

La méthode des quotas a été utilisée pour assurer la représentativité selon 5 caractéristiques indépendantes : âge (7 tranches), sexe (2), région (9, uniquement France métropolitaine), taille d'agglomération (5) et catégorie socio-professionnelle (8). Ainsi, si l'un des cinq quotas correspondant à ses caractéristiques était atteint lorsqu'un répondant arrivait sur la page du sondage, il était écarté et ne prenait pas part à l'enquête. Cette façon de procéder (avec une indépendance entre quotas) a posé problème à la fin des sondages, car les quotas restant à remplir étaient très spécifiques ; il a donc fallu relâcher les quotas de 5% pour trouver les derniers répondants. Par exemple, à la fin du sondage Politique, il manquait essentiellement des femmes âgées de plus de 75 ans dans l'échantillon, alors que le quota de retraités était atteint. Nous avons donc augmenté le nombre de retraités autorisés à répondre de 5%. Finalement, malgré un déficit de femmes et de moins de 25 ans dans le sondage Fiscalité, un déficit de plus de 75 ans et un excès de professions libérales dans le sondage Politique ; la composition des échantillons reste assez fidèle à la composition de la population française adulte, comme vous pouvez le vérifier ici.

Le potentiel défaut de représentativité tient plutôt à deux causes habituelles des sondages : la méthode d'administration et le taux de conversion. Le taux de défection (attrition rate en anglais, pendant du taux de conversion) mesure la proportion de personnes contactées ne répondant pas ou ne finissant pas l'enquête : il est de 10% (resp. 30%) dans le sondage Fiscalité (resp. Politique). Ici, l'usage requis de l'ordinateur et la souscription à un programme commercial excluent une frange de la population, tandis que les taux de défection induisent un biais de sélection dans les résultats qu'on ne peut pas estimer. Aussi, les marges d'erreur sont calculées sans prendre en compte ces différents biais, et il faut garder en tête que les vraies marges d'erreur sont supérieures à celles présentées dans les résultats. Cependant, à moins de mettre en oeuvre la coûteuse méthode que l'INSEE emploie lors du recensement (avec en plus son caractère obligatoire), la méthode utilisée ici est la meilleure possible pour rendre compte de l'opinion publique.

Sélection des réponses de qualité

Temps de réponse

Lors de sondages autoadministré par internet comme celui-ci, la tentation est grande pour les répondants de répondre au hasard dans le seul but d'obtenir leurs points cadeaux : rien ne les y empêche a priori. Pour éviter ces comportements opportunistes, nous avons filtré tous les répondants qui ont effectué les sondages en moins de 9 minutes (ils n'ont par ailleurs pas reçu de points Maximiles). En effet, le temps de réponse était estimé à 20 minutes. L'estimation était correcte, puisque le temps médian des répondants qui ont suffisamment pris leur temps est de 18,4 et 20,6 minutes selon le sondage.

Test de qualité

Afin de repérer les répondants peu attentifs, dont les réponses seraient décidées à la légère malgré une durée totale crédible, nous avons aussi inséré un test de qualité des réponses dans chaque sondage (ici, et ). Ce test consiste à demander dans l'énoncé d'une question de cocher une case donnée pour un "test de qualité de vos réponses". Entre 16% et 24% des sondés échouent au test selon le sondage. Pour autant, il serait excessif d'interpréter ces réponses comme bidons ou dénuées du moindre sérieux. En effet, pour avoir fait moi-même passer le sondage à une quinzaine de personnes, j'ai remarqué qu'une bonne partie ne comprenait pas ce test de qualité et répondait "NSP" ou le choix qui paraissait le plus neutre possible (comme la majorité des répondants ayant échoué au test).

Quatre échantillons selon la qualité

Ainsi, à partir des réponses enregistrées, 4 jeux de données ont été construits pour chaque sondage :
- l'échantillon restreint : d'environ mille personnes, c'est celui qui respecte les quotas (et la représentativité). Il exclue les réponses trop rapides, non complètes et celles ayant échoué au test de qualité ;
- l'échantillon passable : d'environ 1250 personnes, il s'agit de l'échantillon restreint augmenté des réponses ayant échoué au test de qualité ;
- l'échantillon étendu : entre 2500 et 3800 personnes selon le sondage, il s'agit de toutes les réponses complètes, y compris celles remplies en moins de 9 minutes ;
- l'échantillon augmenté : entre 2800 et 5500 personnes selon le sondage, il s'agit de toutes les réponses, y compris les incomplètes.
L'énorme écart entre le nombre de réponses complètes et incomplètes dans le sondage Politique s'explique par une erreur repérée trop tard lors du codage du sondage qui bloquait une personne sur deux après 30% de complétion. Ce bug concernait la question p$avantager, c'est la raison pour laquelle le nombre de réponses pour cette question est aussi faible.

Scores de qualités

Il est probable que des panélistes peu scrupuleux n'aient pas répondu sérieusement tout en déjouant nos efforts pour les exclure du sondage, notamment car ils auraient l'habitude de tels pièges. Pour les repérer, des scores de qualité ont été créés, qui servent aussi à mesurer la qualité des réponses en dehors de l'échantillon restreint. Trois scores ont été calculés pour chaque sondage : qualite_comprehension, qualite_sincerite et qualite, qui est simplement la somme des deux premiers. La valeur de qualite_comprehension attribuée a priori est 0, à laquelle sont retranchés des malus à chaque fois qu'une erreur de compréhension se manifeste : lorsque le répondant dit explicitement qu'il n'a pas compris certains graphiques, lorsqu'il répond souvent "NSP", lorsqu'une contradiction apparaît dans ses réponses (entre le revenu maximal désiré et le taux d'imposition sur 3 millions d'euros de revenus annuels, entre le rapport de revenus maximal, les revenus minimal et maximal désirés, un taux d'imposition des successions inférieur à 0, ou encore sur les montants des dépenses publiques), lorsqu'il ne répond pas exclusivement en chiffres (alors que c'était expréssément requis), ou bien sûr lorsqu'il échoue au test de qualité.
Par ailleurs, la variable qualite_sincerite attribue des malus lorsque le répondant semble avoir répondu à la va-vite : c'est le cas quand toutes les réponses des matrices sont identiques (on y répond par l'équivalent d'un score entre -2 et +2), quand il y a une contradiction dans les caractéristiques socio-démographiques (un jeune à la retraite ou un CDI avec un temps de travail nul, par exemple), quand le temps de réponses aux questions (pour lesquelles il a été mesuré) est manifestement trop court, ou encore quand presque toutes les réponses sont "NSP". Enfin, un bonus de sincérité est accordé aux répondants ayant renseigné leur e-mail (pour être tenu au courant des résultats) ou le champ libre à leur disposition (autour de 20% chacun).

Traitement des biais de formulation

Tests de compréhensibilité

Un effort particulier a été fourni dans cette enquête pour traiter les biais de formulation. Tout d'abord, le sondage a été testé sur plusieurs volontaires rencontrés aléatoirement dans des bistrots PMU. Ces expériences ont permis de voir à quel point il est difficile de répondre à certaines questions du sondage pour les gens qui ne maîtrisent pas l'informatique ou qui ne sont pas rompus à la compréhension de longs énoncés. Elles m'ont amené à clarifier certains énoncés et à introduire des conseils et des mises en garde nécessaires. Si, à l'issue de ces tests, la plupart des questions étaient compréhensibles, celles incluant des graphiques demeurent illisibles pour certains : c'est à cet effet qu'une question demande si le répondant les a compris. 42% des répondants ont ainsi eu "du mal à comprendre" les questions avec les graphiques. Cependant, cette incompréhension n'a pas compromis les résultats, puisque, si ces gens-là ont davantage répondu "NSP (Ne sait pas, ne souhaite pas répondre)", leurs réponses exprimées sont similaires à celles des autres.

Pour la petite histoire, je cherchais à interroger des clochards afin d'avoir leur avis sur la politique de redistribution, au-delà du test de compréhension du sondage, car je me doutais que cette catégorie de la population serait absente de l'échantillon. Malgré les cinq euros que je leur offrais, aucun n'a accepté de répondre, car ils ne se sentaient pas concernés par le sujet, incompétents ou incapables de répondre sur un ordinateur. Ne comprenant pas que je voulais lui remettre un peu d'argent et non les lui quémander, l'un d'eux, me voyant errer, est même revenu vers moi en me tendant un billet de cinq euros.

Randomisation

Afin de s'assurer que les résultats n'ont pas été influencés par la formulation des questions, la plupart d'entre elles a fait l'objet d'une randomisation : une variante de la question est attribuée aléatoirement au répondant, les différentes variantes présentant des formulations différentes. Ainsi, lorsque la formulation a une influence sur les réponses, cette influence peut être repérée et mesurée. Par cet aspect, la méthodologie de l'enquête est irréprochable (et contraste avec les pratiques habituelles des sondages d'opinions) ; l'inconvénient réside dans la complexité d'analyse que cela entraîne. Cela étant, les questions de l'enquête ont souvent été randomisées pour une tout autre raison : la moitié de l'échantillon suffit à obtenir une marge d'erreur convenable, il était donc possible de poser deux fois plus de questions. Ainsi, seuls sont listés ci-après les blocs dont la randomisation a été effectuéee pour traiter les biais de formulation :
- Transferts internationaux : les répondants ont donné la part des revenus des pays riches qui devraient selon eux être transférés aux pays pauvres grâce à un curseur allant de 0 à 20% dans le sondage Fiscalité. Pour s'assurer qu'il n'y a pas eu d'effet d'ancrage dû aux limites du curseur, le sondage Politique a posé la même question avec un champ de réponse au lieu d'un curseur. En outre, trois formulations différentes de la question ont été données, avec plus ou moins d'arguments en faveur d'une redistribution mondiale.
- Héritage : dans le sondage Fiscalité, les répondants devaient aléatoirement donner leur taux maximal d'imposition sur les successions désiré, ou le montant que devrait recevoir un enfant unique dont les parents possèdent 1 milliard, ou 1 million, ou 10 millions d'euros, au moment de leur mort. Dans le sondage Politique, pour savoir si les réponses seraient différentes si les répondants devaient choisir tout le barème d'imposition (plutôt que le taux pour une succession donnée), il leur a été demandé de répondre pour quatre montants de successions : 105, 106, 107 et 109€. Afin de mesurer l'influence de la formulation sur cette question, ont été tirés au sort l'ordre de présentation des montants (croissant ou décroissant) ainsi que le fait de demander le montant à hériter ou le montant à prélever.
- Taux max (dans Écart et revenu maximaux) : le montant d'imposition sur le revenu désiré pour les gens qui gagnent 3 millions d'euros par an a été posée de quatre façons différentes : avec ou sans un argument sur la contre-productivité d'une trop forte taxation des riches dans le sondage Fiscalité, sans cet argument mais en précisant que la personne considérée est un rentier touchant son revenu en dividendes, ou un trader, dans le sondage Politique.
- Approbation de la réforme : dans le sondage Fiscalité, lors de la question de l'approbation d'une réforme fiscale instituant une redistribution dont les paramètres sont issues des réponses précédentes du répondant, les revenus disponibles du répondant (et éventuellement de celui de son ménage) avant et après la réforme ont été affichés ou non aléatoirement. Dans le premier cas, on peut imaginer que davantage de répondants ont répondu en donnant un poids important (voire exclusif) à leur propre variation de revenus, sans grande considération pour la forme générale de la redistribution.
- Quotient conjugal : dans un cas était sondée l'adhésion à une individualisation de l'impôt sur les revenus, dans l'autre l'approbation du système de quotient conjugal, avec dans chacun des cas une phrase explicative légèrement favorable à la réponse positive. Si l'individualisation a été rejetée dans tous les cas, l'écart entre les deux variantes opposées est significatif.
- Contre chômage / Choix multiples (climat et démocratie) : dans ces blocs du sondage Politique, le répondant devait soit indiquer à quelles propositions il adhérait parmi une liste, soit noter sur une échelle équivalente à [-2;+2] ces mêmes propositions. Pour information, les noms des variables correspondant à la première variante se déduisent de ceux de la deuxième variante, auxquels on ajoute le préfixe "pour_".

Données et courbes présentées

Sources

Toutes les données utilisées sont issues de l'Enquête sur les Revenus Socio-Fiscaux (ERFS 2012) de l'INSEE. Toutes les manipulations des données (ou presque) sont codées sur un fichier R. Les deux principales variables des ERFS utilisées sont le revenu disponible du ménage (revdispm) et le niveau de vie du ménage (nivviem). Le revenu disponible correspond à l'ensemble des revenus (y compris les prestations sociales) nets de tout impôt : c'est donc ce qui reste dans le porte-monnaie après réception et paiement de tous les transferts fiscaux. Pour information, le revenu disponible national issu des ERFS vaut 1012€, alors que celui calculé dans la comptabilité nationale (CN) vaut 1,3*1012€. Cet écart est principalement dû à la prise en compte dans la CN des revenus non imposables (avantages en nature, primes d'intéressement...), ainsi que de l'imputation des revenus non déclarés et des loyers fictifs. Le niveau de vie n'est autre que le revenu disponible du ménage divisé par son nombre d'unités de consommation : il permet de comparer les revenus de ménage à la composition différente.

Revenu disponible individuel

Afin qu'un algorithme puisse facilement représenter les choix du répondant par une courbe de distribution des revenus personnalisée (qu'on soumet à son approbation), le choix a été fait d'utiliser comme données les revenus disponibles individuels (notion créée pour l'occasion). En effet, notamment pour la question interactive où le répondant est invité à construire lui-même sa courbe préférée en déplaçant des curseurs, le lien entre le choix d'un paramètre et la façon dont il influe sur la courbe doit être le plus immédiat possible (pour qu'il soit bien compris). En outre, la contrainte concernant le revenu agrégé (qui est ici fixé, j'y revienndrai) a intérêt à être simple, pour optimiser les temps de chargement et de traitement des données. Pour ces raisons, et parce que la répartition des revenus disponibles individuels est une variable satisfaisante pour étudier les inégalités de revenus, c'est cette variable qui a été choisie.

Elle est construite à partir du revenu disponible du ménage, en imputant les revenus du ménage aux différents adultes qui en font partie, de sorte que la somme de leurs revenus disponibles individuels soit égale au revenu disponible du ménage. La première étape consiste à agréger les différentes sources de revenus individuels présentes dans les données en un revenu imputable individuel (revenu_imputable_i = salaires_i + chomage_i + retraites_i + ...). Ensuite, on calcule pour chaque adulte la proportion imputée (proportion_imputee), qui correspond à la proportion qui lui revient dans le revenu imputable de son ménage (somme des revenus imputables de ses membres). Enfin, on sépare le revenu disponible du ménage en deux composantes : les prestations sociales et le reste. Dans le calcul du revenu disponible individuel, on attribue les prestations sociales à l' (aux) adulte(s) du ménage à la proportion imputée la plus faible, tandis qu'on répartit le reste au prorata de la proportion imputée à chaque adulte. La variable revdisp_i est finalement utilisée dans les blocs de questions Dés/avantager (seulement pour le sondage Fiscalité), Approbation de la réforme (implémentant une redistribution donnée, issue des réponses antérieures) et Réforme personnelle (permettant de choisir interactivement sa distribution préférée). Les centiles arrondis de sa distribution (qui tient compte de la pondération des ERFS) sont disponibles ici.

Distributions de niveaux de vie

Pour un autre bloc de question, Notation des distributions, les données étaient traitées préalablement et non en direct (à une exception près, cf. dernières phrases de cette section). Aussi était-il préférable d'utiliser dans ca cas une variable standard de l'INSEE, qui permet de présenter les inégalités de revenus à l'échelle du ménage, où elles sont les plus pertinentes : le niveau de vie. La distribution des niveaux de vie est finalement très proche de celle des revenus disponibles individuels, aussi ne s'étonnera-t-on pas que les réponses aux questions avantager et desavantager soient sensiblement les mêmes entre les deux sondages, alors que les données présentées pour y répondre concernaient les revenus disponibles individuels dans le sondage Fiscalité par opposition aux niveaux de vie dans le sondage Politique. Dans la principale question où les niveaux de vie ont été utilisés (celle où le répondant était invité à noter différentes distributions entre -2 et +2), les distributions présentées étaient volontairement simplifiées en 8 barres représentant les niveaux de vie des 10% d'adultes français les plus pauvres, de 4 tranches de 20% suivant, des 1% les plus riches, des 4% suivants et des 5% suivants ceux-ci (c.-à-d. p0-p10, p10-p30, p30-p50, p50-p70, p70-p90, p90-p95, p95-p99 et p99-p100, où p désigne le centile). Dans le sondage Fiscalité, 5 distributions ont été présentées : l'actuelle, les distributions issue des taxations optimales utilitarienne et rawlsienne, une distribution personnalisée, et une distribution parfaitement égalitaire (à 1600€/mois, à comparer aux 1967€ mensuels moyens pour le niveau de vie actuel -- l'écart entre les deux se justifiant par une nécessaire baisse de la production nationale si une égalité parfaite des niveaux de vie devait être mise en place, due à la baisse de l'incitation au travail).

Les distributions issues de la théorie de la taxation optimale ont été calculées grâce au programme de Jacquet, Lehmann & Van der Linden (2013) qu'Étienne Lehmann m'a gracieusement fourni. Les résultats de ce programme, ainsi que la distribution actuelle sont disponibles ici, et sont exprimés au niveau individuel. Le passage aux niveaux de vie pour les données issue de la théorie de la taxation optimale s'obtient en définissant les variables revdisp_i_Rawls et revdisp_i_Bentham par interpolation des quantiles de revenus disponibles individuels avec les résultats du programme précédant, en agrégeant les variables individuelles au niveau du ménage et en divisant le tout par le nombre d'unités de consommation du ménage. La même procédure a été utilisée à l'aide de la fonction csv_to_bars pour calculer les distributions de niveaux de vie spécifiques au sondage Politique, à savoir celles issues du sondage Fiscalité en agrégeant les réponses grâce à différents algorithmes (cf. dernière section). La même méthode a été adaptée pour pouvoir être utilisée en direct dans le calcul d'une distribution de niveaux de vie personnalisée, issue des réponses précédentes du répondant (dans le sondage Fiscalité). Ne pouvant pas charger les données exhaustives des quantiles de revenus donnés par les ERFS, tant à cause du temps de chargement que pour des considérations légales, j'ai extrait des ERFS un sous-échantillon aléatoire de 5000 individus (sur 130 000) avec les seules variables requises, que j'ai élargi aux adultes des ménages de ces individus. Les calculs se sont effectués avec la même procédure que précédemment, côté client (pour ceux qui connaissent JavaScript), à l'aide de ces données extraites. J'ai préalablement vérifié que la distribution des niveaux de vie était fidèlement reproduite, en sélectionnant le tirage aléatoire ayant produit les meilleurs résultats.

Algorithmes générant une redistribution

Présentation des algorithmes

Deux algorithmes ont été utilisés pour générer des distributions de revenus soumises à l'approbation des répondants. Tous deux partent d'une distribution donnée (la distribution actuelle, notée actuel) et la font évoluer en fonction de certains paramètres afin d'obtenir une distribution nouvelle (notée futur). Chaque distribution est codée par les 1001 revenus mensuels correspondant aux millimes (ou quantiles) de la distribution des revenus disponibles individuels ; ainsi, nous désignerons par (q, r(q)) le point de la distribution r au millime q.

Les deux algorithmes utilisent deux paramètres en commun : le point neutre, c'est-à-dire le point où les deux courbes (actuel et futur) se croisent, et un paramètre désignant l'importance du transfert d'argent des riches vers les pauvres, noté X. Les algorithmes diffèrent par le troisième paramètre qu'ils emploient : la proportion à dés/avantager dans le premier cas ; le revenu de base (ou l'ordonnée à l'origine, de coordonnées (0, rdb)) dans le second cas. En effet, dans le second algorithme, ci-après dénommé av&des, les courbes actuelle et future se croisent en un unique point (le point neutre, de coordonnées (N_q, N_r)) ; tandis que dans le premier, nommé RdB les deux courbes coïncident sur un intervalle allant de la proportion de français à avantager par la réforme à la proportion à désavantager, de coordonnées respectives (Na_q, Na_r) et (Nd_q, Nd_r), ainsi la notion de point neutre n'est-elle plus pertinente dans ce cas.

Vous pouvez les essayer et tracer votre propre courbe préférée de distribution des revenus : algo av&des, algo RdB.

Algorithme des&av

Cet algorithme est le plus simple des deux (et aussi celui qui présente les meilleurs résultats concernant l'approbation des courbes qu'il génère). Le paramètre central de l'algorithme est X, qui code l'importance du transfert des riches vers les pauvres par un nombre entre 0 (transfert maximal) et 10 (aucun transfert). Les valeurs de X grâce auxquelles ont été calculées les courbes proposées lors du sondage Politique ont été choisies de façon à ce que les bas revenus impliqués par la réforme reflètent les réponses sur le revenu minimum : en pratique, X=1,43 de sorte que le revenu de base vale 800€/mois. L'algorithme est présenté dans les slides ci-contre, avec pour exemples les réformes médianes, c'est-à-dire celle issue des réponses médianes du sondage Fiscalité. Les deux dernières slides présentent un raffinement de l'algorithme : la prise en compte d'une baisse du revenu national (qui peut-être due aux réactions comportementales ou à un nouveau transfert international), à travers le paramètre aid. Le détail du cœur de l'algorithme est livré ci-après en pseudo-code, avec les principales étapes en gras. Il utilise la fonction integrale(f, min, max) qui calcule la valeur de l'intégrale de la courbe f entre min et max.

actuel <- distribution(revenus_disponibles_individuels) futur <- courbe_reference_av&des() /* vaut Na_r à gauche de Na_q, Nd_r à droite de Nd_q, et actuel entre les deux */ (G, D) <- (integrale(futur, 0, Na_q), integrale(futur, Nd_q, 1000)) if (G < R) { /* si on a plus de marge pour redistribuer à droite qu'à gauche */ (min_1, max_1) <- (0, Na_q) (min_2, max_2) <- (Nd_q, 1000) } else { /* cas le plus probable */ (min_1, max_1) <- (Nd_q, 1000) (min_2, max_2) <- (0, Na_q) } rdb <- 2 * min(G, R) * (1 - X/10) * integrale(actuel, 0, Na_q) / Na_q - Na_r if (le segment allant de (0, rdb) à (Na_q, Na_r) coupe la courbe actuel) { affine <- FALSE} /* affine=FALSE conduit à plus de redistribution, c'est une variante toujours possible */ else { affine <- TRUE } /* cas le plus probable */ for (i in [min_1, max_1]) { /* rapproche le côté où il y a le moins de marge d'une proportion X/10 de l'actuel */ futur[i] <- futur[i] - X/10 * (futur[i] - actuel[i]) } /* X va de 0 (futur = actuel) à 10 (redistribution maximale) */ for (i in [min_2, max_2]) { /* côté limitant concernant la redistribution réalisable */ futur[i] <- futur[i] - min(G/R, R/G) * (futur[i] - actuel[i]) /* égalise les marges de redistribution des deux côtés*/ futur[i] <- futur[i] - X/10 * (futur[i] - actuel[i]) } /* rapproche ce côté d'une proportion X/10 de l'actuel */ if (affine) { /* si la configuration le permet, annule ce qui a été fait du côté gauche */ futur[0, Na_q] <- segment allant de (0, rdb) à (Na_q, Na_r) } /* Modélisation d'une baisse du revenu national (due à un transfert international ou aux réactions comportementales) */ econ <- integrale(futur - actuel, 0, Na_q) + integrale(futur - Nd_r, Nd_q, 1000) /* marge totale pour prélever une taxe */ for (i in [0, Na_q]) { /* si c'est possible, ôte un montant "aid" de l'économie nationale, en rapprochant futur de ... */ futur[i] <- futur[i] - min(aid, econ) * (futur[i] - actuel[i]) / econ } /* ... chaque côté de la courbe ... */ for (i in [Nd_q, 1000]) { /* correspondant au prélèvement maximal d'impôt, i.e. celle valant actuel à gauche ... */ futur[i] <- futur[i] - min(aid, econ) * (futur[i] - futur[Nd_q]) / econ } /* et Nd_q à droite */

Algorithme RdB

L'algorithme procède en trois étapes : la correction des paramètres, la définition d'une courbe de référence, et l'ajustement. La correction consiste simplement à s'assurer que les valeurs des paramètres fournies soient cohérentes : ainsi, si le revenu de base est supérieur au revenu du point neutre (ci-après désigné simplement revenu neutre), il est ramené au niveau de celui-ci. Une correction similaire est effectuée si le revenu neutre est inférieur au max, ce dernier étant un paramètre additionnel donnant le revenu maximum de la distribution (il influe peu en pratique). La courbe de référence sert de valeur initiale à la courbe actuel ; j'ai imaginé trois variantes différentes pour la définir. La méthode originelle, la plus simple, consiste à partir de la courbe actuelle en reliant par un segment l'ordonnée à l'origine (rdb) au point neutre, puis en suivant la distribution actuelle jusqu'au revenu maximum, où la courbe futur plafonne. C'est cependant une version différente qui a été utilisée pour calculer la "réforme médiane RdB" à partir des réponses du sondage Fiscalité, pour éviter que le segment à gauche du point neutre ne croise la courbe actuelle (ce qui conduirait à désavantager des personnes à bas revenus) : c'est celle-ci qui est reportée ci-dessous. L'ajustement sert à égaliser le revenu disponible agrégé actuel et futur, de sorte que la réforme obtenue se fasse à budget de l'État constant (on parle de neutralité budgétaire). Cette contrainte s'exprime facilement, en l'absence de prise en compte des réactions comportementales et grâce à l'utilisation d'une variable de revenu individuelle, comme une valeur nulle pour l'écart entre les intégrales des courbes actuel et futur (calculé par la fonction deficit). Le détail de l'algorithme d'ajustement est livré ci-après en pseudo-code, avec les principales étapes en gras. Il utilise les fonctions economisable(cote), qui calcule l'aire sur le côté cote (droite ou gauche) du point neutre entre la courbe futur et la courbe respectant les paramètres rdb et max qui rapporterait le plus d'impôts, et dichotomie, qui calcule le rdb maximal permettant de respecter la neutralité budgétaire (et utilisée uniquement lorsque le déficit D induit par le rdb initial excède la somme economisable(gauche) + economisable(droite)).

actuel <- distribution(revenus_disponibles_individuels) correction_parametres() /* Définition de la courbe de référence */ for (i in [0, N_q]) { /* on commence pas tracer à gauche du point neutre une courbe parallèle à l'actuelle, surélevée de rdb */ futur[i] = actuel[i] + rdb; } /* Ce qui suit revient à peu près à trouver le point d'inflexion de la courbe actuelle */ var j = N_q; /* En partant du point neutre et en allant vers la gauche, on trouve le premier point de la courbe de référence... */ while (((N_r - futur[j])/(N_q - j) <= (futur[j] - futur[j-1])/1) & j > 0) { /*...tel qu'un segment le reliant au point neutre...*/ j--; } /* ...aurait une pente plus faible que la dérivée de la courbe actuelle à l'abscisse correspondant */ for (i in [0, N_q]) { /* Enfin, on relie ce point au point neutre par un segment */ futur[i] = max(avant[i], ((i - j)/ (N_q - j)) * (N_r - futur[j]) + futur[j]) } /* Ajustement */ D <- deficit() /* Différence entre l'intégrale des revenus disponibles actuels et futurs */ if (D >= 0) { (G, D) <- (economisable(gauche), economisable(droite)) /* recettes fiscales maximales de chaque côté de N_q */ if (D > G + R) { /* le déficit est vraiment trop important */ N_q <- N_q - 30 /* donc on modifie les paramètres pour désavantager 3% de riches supplémentaires */ (G, D) <- (economisable(gauche), economisable(droite)) futur <- courbe_reference() } /* prise en compte du nouveau point neutre */ if (D > G + R) { /* le déficit reste trop important */ rdb <- dichotomie() /* donc on modifie les paramètres pour baisser le rdb jusqu'à un niveau suffisant */ futur <- courbe_reference() D <- deficit() (G, D) <- (economisable(gauche), economisable(droite)) } P <- D / (G + R) /* proportion (de dépense fiscale) à économiser parmi ce qui est économisable */ if (X not defined){ /*valeur par défaut de la conservation de la distribution actuelle, comprise entre 0 et 100*/ X <- min(99, 200 * G / (G + R )) } /* si possible, X fait valoir à P_G le double de la proportion P */ P_G <- max( (D-R)/G, min( P*X*(G+R), D/G, 1)) /* proportion à économiser à gauche sur l'économisable */ P_R <- (D - P_G * G) / R /* proportion à économiser à droite, plus faible que P par défaut */ for (i in [0, N_q]) { /* rapproche futur du minimum possible d'une proportion P_G */ futur[i] <- futur[i] - P_G * (futur[i] - max(rdb, actuel[i])) } /* ajustement à droite de N_q ci-dessous */ Y <- max - N_r max_q <- j <- millime minimal pour lequel futur[j] = max /* vaut souvent 1000 (dès que max > 25000*12) */ R_G <- aire entre N_r et futur, sur l'intervalle [N_q, max_q] z <- 1000 - max_q /* nombre de millimes pour lesquels futur = max, vaut souvent 0 */ x <- P_R * R / (R_G + Y * z / 2) /* proportion à économiser entre N_q et max_q, x ~ P_R */ if (x <= 1 | z == 0) { /* cas le plus probable : il y a peu à économiser */ for (i in [N_q, max_q] { /* entre N_q et max_q : */ futur[i] <- futur[i] * (1 - x) + N_r } /* rapproche futur du minimum possible d'une proportion x */ for (i in [max_q, 1000] { /* on relie la droite de max_q par un segment */ futur[i] <- futur[i] - x * Y * (1000 - i) / z } else { /* il y a beaucoup à économiser : on égalise toute la zone à droite du point neutre à N_r */ p <- (2 * (P_R * R - R_G) - Y * z) / Y /* nombre de millimes nécessaires pour l'opération */ for (i in [N_q, max_q + p]) { futur[i] <- N_r } for (i in [max_q + p, 1000]) { /* on relie l'extrémité droite du graphe par un segment */ futur[i] <- N_r + (i - p - max_q * Y / (z - p)) } } } else { /* excédent (improbable) */ q <- 2 * D / (N_r - rdb) /* nombre de millimes nécessaires pour enlever l'excédent */ for (i in [max(0, N_q + q), N_q]) { futur[i] <- N_r} /* la courbe de référence atteint N_r avant N_q pour réduire l'excédent */ for (i in [0, min(1000, N_q + q)]) { futur[i] <- rdb + (N_r - rdb) * i / (N_q + q)} } /* rdb est relié à N_r par un segment */