Overblog
Editer l'article Suivre ce blog Administration + Créer mon blog

le dépouillement en mode core CPU

Publié le 25 Juin 2017 par InfestedGrunt

Depuis 2002, je vais régulièrement participer au dépouillement de mon bureau de vote à Blagnac. Seuls exceptions, je n'ai pas pu participer à ceux du 1er tour de la législative de 2012 (assesseurs d'un candidat) et en 2015 (arrivé trop tard après le Startup WeekEnd Toulouse).

Le fonctionnement d'une scrutation est souvent perçu comme un modèle archaïque. Pourtant, si les règles sont régies par un bloc monolitique qu'est le code électorale, il est possible de le rendre technique et de l'améliorer en utilisant les fonctionnements des processeurs de nos ordinateurs.

Le déroulement d'un dépouillement est décrit par l'article 65 du code électorale.

La loi prévoit au moins 4 personnes par table (urne) pour procéder au dépouillement. Les scrutateurs sont désignés soit par les membres du bureau (souvent sur la base du volontariat), soit par les candidats (ou leurs assesseurs). En cas d'infériorité numérique, les membres du bureau peuvent y participer. Si cela ne suffit pas, la mairie peut obliger un membre du conseil, le cas échéant un électeur à participer.

Le dépouillement se déroule en 2 phases : un phase de compte de centaines pour contrôler le nombre de bulletins et la liste d'émargement et la phase de dépouillement proprement dite.

Dans la phase de compte, les scrutateurs regroupent les bulletins en dizaine puis en centaine. Les stratégies sont divers et variés : les 4 comptent les dizaines par groupe de 2 ou 2 groupent les dizaines et 2 recomptent les dizaines créées

Durant la phase de dépouillement, le processus nécessite 3 petits postes :

  • le dépouilleur : il est chargé d'ouvrir les enveloppes, de contrôler la présence d'un bulletin (vide ou non) et d'en vérifier la validité (blanc, nul ou exprimé). En cas de doublon, le double est retiré et 1 bulletin continue.
  • l'annonceur : dans la limite de ne pas déranger les autres tables, il annonce le bulletin exprimé à haute voix
  • les 2 releveurs : ils doivent enregistrer les votes pour les candidats sur les listes prévues à cette effet. Les votes sont notés par des bâtons sur les listes, alternant stylo rouge et noir (pas le Stade ni le RCT). Ils ont plusieurs surnoms: les batoneurs, les Capitaines Iglo ou les Croustibat.

A la fin de chaque centaine, le dépouilleur, l'annonceur et les membres de bureau vérifie le nombre de voix avec les relevés des releveurs. En cas de doute, le nombre de bulletins fait foi.

Mais ce mode de fonctionnement est très long : 45 minutes pour 200 votes (comptage de bulletins inclus).

Le plus souvent, des membres du bureau viennent aider le dépouilleur à retirer les votes.

Bureau préparant un vote à 4 amélioré (2 dépouilleurs)

Bureau préparant un vote à 4 amélioré (2 dépouilleurs)

Pour les spécialistes de l'informatique, ce schéma ne vous rappelle-t-il pas quelque chose ?

Les threads... les processus léger

En effet, en informatique, les programmes (logiciels, jeux vidéo, systèmes d'exploitation, interfaces graphiques,...) sont divisés en processus simple (les threads) pour améliorer et accélérer le traitement informatique par les processeurs. Pendant qu'un thread est en attente, un autre thread prend le relais sur un noyau du processeur.

Dans le schéma du dépouillement, nous avons donc 1 unité pour le dépouilleur, 1 unité pour l'annonceur et 1 unité pour les releveurs mais consommant 2 ressources.

Pour accélérer le mouvement général, il faut regarder les techniques dans le multithreading et de multiprocessus. En l'occurrence,  le multithreading temporel permet la transmission des votes plus rapide et le multiprocessus pour augmenter l'alimentation en bulletin.

Pourquoi l'annonceur et les releveurs doivent attendre le dépouilleur ? Pourquoi ne pas augmenter le nombre d'annonceurs et de dépouilleurs ? Pourquoi ne pas séparer le traitement (plus long) des votes blanc et nul ?

Démarrage du dépouillement à 6

Démarrage du dépouillement à 6

Dans mon bureau et dans d'autres bureaux de vote, une stratégie à 6 a été mis en place pour accélérer le dépouillement avec le doublement de l'annonceur et du dépouilleur et la séparation de traitement des votes blanc ou nul.

D'abord, écarté si possible les membres de bureau ou du moins en garder 3 hors du processus central (le président et 2 assesseurs), ils seront l'unité du traitement du processeur dédié aux votes blancs et nuls.

Sur la table, nous avons 6 personnes, :

  • 2 releveurs
  • 2 annonceurs : un homme et une femme de préférence (une voix grave, une voix aigu)
  • 2 dépouilleurs

Un de chaque type sont répartis de chaque côté de la table.

Pendant la phase de compte des centaines, les 2 dépouilleurs créent des paquets de dizaines de bulletins, les annonceurs vérifient les dizaines créés et les releveurs les regroupent pour créer les centaines. Les membres du bureau regardent les décomptes et assurent les signatures des centaines et le retour dans l'urne.

Dans la phase de dépouillement, les dépouilleurs ouvrent les bulletins, vérifient la validité et transmettent les votes exprimés à l'annonceur de son côté de table. Les annonceurs annoncent les votes à haute voix et à tour de rôle. Les releveurs notent les votes sur la feuille d'émargement.

Lorsqu'un dépouilleur détecte un vote blanc ou nul, il transmet le bulletin au membre du bureau. Ils pourront se charger de signer les votes et noter sur la feuille le type de bulletin non-exprimés, indépendamment du processus central. Entre-temps, le second dépouilleur aura eu le temps de fournir à l'autre annonceur un bulletin. Il est recommandé qu'un membre du bureau se tienne à proximité des dépouilleurs pour récupérer les votes à traiter.

A la fin de la centaine, les dépouilleurs et les annonceurs vérifient le nombre de bulletin de chaque candidat avec les releveurs.

Avec ce système, les bureaux effectuent le traitement de 200 votes en 20 minutes (comptage inclus).

Annonceurs, Releveurs et table du Bureau

Annonceurs, Releveurs et table du Bureau

Pourquoi un doublement des annonceurs et des dépouilleurs ?

Vu que les releveurs sont au nombre de 2 pour noter, mettre plus d'annonceurs provoquent des problèmes autour de la compréhension et augmente le risque d'ajouter ou de retirer un vote dans le décompte des bâtonnets. De plus, il est plus facile de différencier 2 voix que plus.

Pour les dépouilleurs, on peut les augmenter en nombre pair, mais il va y avoir un effet cache pour les annonceurs. 2 dépouilleurs suffisent pour alimenter 2 annonceurs, mais un troisième, le membre du bureau en attente des votes blanc/nul, peut aider les dépouilleurs sans affecter le cache des annonceurs.

Quels sont les limites ?

Les membres du bureaux et les candidats doivent trouver assez de scrutateurs pour revenir dépouiller. 4 est plus facile à trouver que 6. Cependant, le gain de temps et l'efficacité tendent à montrer l'intérêt du système.

Le taux d'erreur est-il plus ou moins important qu'avec la méthode habituelle ?

Sur les bureaux de vote qui sont passés dans ce mode, le taux d'erreur semble avoir baissé. Les seuls erreurs détectés ont été des erreurs de comptes en centaine (une centaine à 99) et de quelques erreurs sur le décompte des releveurs, souvent 1 vote non relevé par un des 2 releveurs sur la première centaine.

La mise en place est-elle facile ?

En terme de matériel, 1 table et 6 chaises suffisent pour le faire. Une table pour le Bureau doit être placé de l'autre côté de l'urne pour simplifier le mouvement. Pour plus de latitude et de visibilité, une deuxième table peut être ajouté pour avoir les releveurs ou les dépouilleurs sur l'un et les autres sur l'autre.

Le système nécessite un peu de mise en place. La première centaine de votes permet la mise au point et la coordination entre les différentes parties. Elle permet de voir les problèmes des différents acteurs (petite voix sur un annonceur, du temps pour le retrait du vote des dépouilleurs et l'audition et la concentration des releveurs.

Commenter cet article