La Prima Elezione

Il gioco sul Rosatellum sta procedendo bene: oggi sono riuscito a simulare la prima elezione. Per ora il gioco funziona solo sui collegi della camera, perché simulare sia Camera che Senato vorrebbe dire calcolare la popolazione all’interno di due collegi distinti, e calcolare anche al differenza di età: non che sia difficile da realizzare ma aumenterebbe la complessità per il giocatore in modo abbastanza radicale, oltre a poter aumentare il rischio di mancanze di maggioranza.

Ogni collegio ha 100 elettori simulati, questi elettori hanno diverse posizioni riguardo agli argomenti, e hanno anche una diversa propensione al votare o meno. Confrontando le posizioni dell’elettore con quelle dei partiti si può ottenere un punteggio che potrà essere positivo o negativo appunto secondo la propensione al voto dell’elettore, e a quanto l’elettore sarà legato ad un partito. Il partito che ottiene il punteggio più alto riceve il voto dell’elettore, a patto che questo punteggio sia positivo, altrimenti l’elettore guarderà i candidati uninominali ed effettuerà un simile confronto, ma con una propensione più alta al voto, e quindi in questo caso potrebbe votare solo per il candidato uninominale (voto disperso). Se infine nessun candidato uninominale riesce ad ottenere un valore positivo l’elettore voterà scheda bianca.

A questo punto raccolti tutti i 100 voti si procederà allo scrutinio: i voti uninominali saranno sommati ai voti dei partiti della coalizione ottenendo il candidato vincitore, quindi i voti dispersi verranno ripartiti ai singoli partiti della coalizione in quota proporzionale. A questo punto una volta eseguite le votazioni in tutti i collegi i voti di tutti i partiti in tutti i collegi verranno sommati e in base a questi valori verranno ripartiti proporzionalmente i collegi restanti. Questo è il sistema che ha generato il risultato qua sopra: nella simulazione il partito Liberale era in coalizione con il partito moderato, mentre tutti gli altri partiti correvano da soli.

Mancano ancora un paio di cose: le soglie di sbarramento e la ripartizione dei collegi restanti. Le soglie di sbarramento sono abbastanza semplici da implementare mentre per i collegi restanti penso li darò come “premio di maggioranza” al partito che ha ricevuto più voti.

Come si vede dallo screenshot per ora il tutto manca di interfaccia, e oltre a questo i partiti sono scritti direttamente nel codice sorgente: il prossimo passo quindi sarà costruire un editor di partiti, e anche cominciare a pensare al salvataggio di dati.

Son contento che l’intero processo di voto nonostante sia articolato richieda meno di un secondo sulla mia macchina.