Sistema de votación ideal según un informático

24/01/2013  |  Por: Miguel Angel Acera  |  Puedes leerlo en 3 minutos.

Este artículo está dirigido a dos públicos: quienes están aprendiendo a programar y a los amantes de la política y la polémica. Para los tiempos que corren, la palabra clave de este artículo es “polémico”.

El escenario actual

Supongamos que como informáticos nos encargan rediseñar el sistema de votación de un gobierno para lograr un sistema óptimo. Lo primero que haríamos sería analizar las características de los actores (votantes y votados). Encontraríamos dos premisas:

  1. Respecto a los votantes, los ciudadanos. Realmente, el valor del voto de todas las personas no es el mismo. En un extremo hay quienes votan careciendo de todo tipo de conocimiento, símplemente arrastrados por intereses particulares (aspirados o adquiridos). En otro extremo hay quienes votan con conocimientos de política, economía, sociedad, salud, etc. y buscan la mejora para todos, que indirectamente lleva a la particular.
  2. Respecto a los votados, los políticos. Los partidos políticos están formados por personas cuyos conocimientos y capacidades varían independientemente del partido. Por lo tanto, los partidos políticos constituyen un paquete predefinido de políticos más y menos aptos para el cargo que ocupan o para al que finalmente aspiran. Es decir, los partidos políticos no ofrecen un paquete óptimo de profesionales.

El nuevo sistema

Con este escenario, la solución desde un punto de vista informático (lógico) es facilísima.

Un peso para cada político

Figura 1. Votante y político tienen asignado un peso según sus conocimientos o cualificación..

Figura 1. Votante y político tienen asignado un peso según sus conocimientos o cualificación.

El bien de todos es proporcionado por políticos bien capacitados, independientemente del partido. Esto implica que no se debe votar a partidos políticos, sino a políticos, independientemente del partido. Es decir, debe votarse a las personas o profesionales más cualificados para cada puesto del gobierno y así formar el mejor equipo posible.

Para favorecer este sistema, a cada profesional de la política se le asigna un peso, entre 0 y 1 según su valía, que se multiplicará por el número de votos recibido. Por ejemplo, un político poco cualificado (A) puede tener un peso de 0,2, mientras que un político altamente preparado (B) puede tener un peso de 0,9. Si (A) recibe 1.000 votos, en realidad recibirá 1.000 x 0,2, esto es, 200 votos. Si (B) recibe 500 votos, en realidad recibirá 500 x 0,9, esto es, 450 votos. Se favorece al profesional cualificado.

Un peso para cada votante

Rizando el rizo. Hemos dicho que cada persona tampoco emite su voto con el mismo valor, por lo tanto, se asignaría un peso por perfil de votante. Varias personas pueden pertenecer a un mismo perfil de votante. El criterio para cada perfil de votante está por determinar.

Por ejemplo, las personas que pertenecen al perfil de votante (M) tienen un peso de 0,3 y las personas que pertenecen al perfil de votante (N) tienen un peso de 0,5. Si las personas con perfil (M), con peso 0,3, emiten 1.000 votos al político (A), con peso 0,2, entonces, (A) recibe 1.000 x 0,3 x 0,2 votos, esto es, 60 votos. Si las personas con perfil (N), con peso 0,5, emiten 500 votos al político (B), con peso 0,9, entonces, (B) recibe 500 x 0,5 x 0,9 votos, esto es, 225 votos.

Como se puede comprobar, el sistema potencia los votos de las personas con mayor nivel de conocimientos y a los profesionales de la política más cualificados, mientras que tiende a anular los votos y políticos menos preparados.

Para programadores

Si estás aprendiendo a programar, este puede ser un buen ejercicio para practicar. A partir de este enunciado, simula el nuevo sistema de votación con 4 políticos, cada uno con un peso, 3 perfiles de  votantes, cada uno con un peso, y 20 votantes, cada uno perteneciente al perfil que quieras. Introduce el voto de cada votante y veremos qué político gana.

ARTÍCULOS RELACIONADOS

PHP, un include, una línea en blanco y UTF con o sin BOM

El Manual Imprescindible de C/C++ en California y Noruega

Ejercicios de programación orientados a problemas reales

El juego de la vida para estudiantes de programación

Los desarrolladores de software necesitan saber hacer software seguro

COMENTAR
Los comentarios enviados serán publicados después de ser aprobados, por lo que no aparecerán inmediatamente.

 

Etiquetas: ·

programación

24/01/2013 - Miguel Angel Acera en Google+