Index of /~jba/Vote

      Name                    Last modified       Size  Description

[DIR] Parent Directory 30-Apr-2013 14:49 - [   ] rerank.f 14-Sep-1999 16:57 4k [   ] vote.f 14-Sep-1999 16:57 7k


   PURPOSE: These programs rank a set of candidates from the rankings
submitted by a number of voters, using the method of sequential

   EXPLANATION: The candidates are ranked in order of preference by
each voter.  The ranks submitted by each voter are converted to a
number of "votes" for each candidate, calculated as the number of
candidates ranked below the given candidate by that voter. The total
vote tally does not directly indicate the MOST preferred candidate,
but it does reveal the LEAST preferred candidate. By the method of
sequential elimination, the least preferred candidate is eliminated
from the tally, and the votes are recomputed from the original
rankings. This process is repeated until all candidates have been
eliminated. The order of preference is then the reverse of the order
of elimination.

   REFERENCE: C. A. Black, H. T. David, & S. H. Chien, J. Agronomic
      Educ., 4, 61 (1975).

   USAGE: The program operates interactively from a keyboard terminal.
      The operator enters the ballots in response to prompts.


      1.  Each voter ranks N candidates using integers from 1 to N,
          with 1 being the highest rank.  (Only the order of ranks
          assigned by a voter, and not their numerical values, enter
          into the final ranking.  It is most convenient for keyboard 
          entry to have the candidates listed in a fixed, numbered order on 
          written ballots, with the ranks placed next to the names by 
          the voters. The candidates are identified in the program
          only by the number of their position on the list.)

      2.  Any number of candidates may be assigned the same rank.

      3.  Rank zero may be used for candidates which are ranked
          equally at the bottom of the scale (equivalent to rank N).

   LIMITATIONS: The number of candidates must not exceed 100.  The
      program can be adapted to larger numbers of candidates by
      increasing the dimensions of arrays MAT, RANK, SUM, LOMAN, and
      OUTS to the desired number.  Output format problems can arise
      if the number of ballots cast is greater than about 1000.

The following instructions are for running the progams on a unix
operating system.

1. Save the files vote.f and rerank.f to your directory.

2. Create an executable form of the program vote.f by entering 

   f77 -o vote.x vote.f

3. Run the program by entering


4. You will receive prompts for the following information:

    Some identifying information (e.g., date, purpose,etc.)
    Number of candidates
    Ranks of candidates on each ballot
    Various further prompts on how you wish to proceed.

The following files are created by the program in your working


The first contains the vote matrix.  The second contains information
on the elimination sequence and ranking of candidates.
5. If one or more candidates is withdrawn from the competition after
the ballots have been processed, you may recompute the elimination
sequence with the program rerank.f.  Create the executable form with
the command

   f77 -o rerank.x rerank.f

Run it with the command


The file votemat must still be present in your current directory. A
new file 'reranksum' is created, giving the information on the
elimination sequence after withdrawal of the candidates you specify.