Bilmes Schedule Overview and File Format

If you are looking at this page, it is probably because I have asked you to fill out your schedule in a specific format. The reason for this is that I have a program that reads in these files from a number of people who are to participate in a group meeting. The program then uses a simple voting algorithm to determine the best consensus time for all meeting participants.

Unlike doodle, here you specify not only when you can and can't make it, but also degress of preference for a given slot. This has the (positive) effect of: 1) it is entirely fair and democratic; 2) it produces a meeting time that (most) everyone is happy with; and 3) it saves us all large amounts of time not having to go back and forth juggling time slots and/or fixing mistakes.

The following are the instructions on how to fill out your weekly schedule table (described below) in a plain ASCII table (plain ASCII means just raw ASCII, not a text editor file format of any kind such as wordperfect or msword, since the script operates on ascii). Note that at the unix prompt, you can type ' man ascii' for more information about ASCII.

Please follow the instructions exactly (including file names, directory locations, etc).

How to send me your schedule

Once you have filled out your schedule, there are three ways to get it to me (please try to do either of the first two):
  1. On SSLI filesystem: If you are on the SSLI unix filesystem, then please put the schedule in your home directory named according to the current quarter (either "fall", "winter", "spring", or "summer", completely spelled out and in lower case) and year. Use underscores between fields. For example, for Fall 2004, and if your login name is "foo", then you would place your schedule in the file: /u/foo/.schedule_fall_2004
    For Spring 2045 and user 'asrsolved', the file would be: /u/asrsolved/.schedule_spring_2045
    (note that the path /u/ is a shorter alias for /homes/). For Summer 3001, use /u/whatisasr/.schedule_summer_3001

    Also, make sure that your file is world readable (chmod a+r file).

    As your schedule evolves, please keep this file up to date in place so that it'll be current when I actually run the program. The advantage of this strategy is that you can update your schedule and when I run the final schedule program, I'll automatically have the most up to date version of your schedule.

  2. Via URL: If you are not on the SSLI filesystem, and if you have the ability to create a web page of your own, you can place your schedule on the web. In such case, send me the URL for the schedule using a similar naming convention as in step 1. When I run the scheduling program, I'll have the most up-to-date version of your schedule. The URL for your schedule should look something like: http://user.washington.edu/user/schedule_spring_2006.txt (meaning, we're saying that the schedule is a simple ASCII file). Here's an example of a working url for a schedule: http://ssli.ee.washington.edu/~bilmes/schedule_spring_2005.txt
  3. email: Least preferable, but still ok: Only if you are NOT on the SSLI network and you do NOT have the ability to create a separate web page schedule as in method 2, then please just email me your schedule, again making sure it is in ASCII format. If you have a change in schedule, just email me any updates (and mention that it is an update).
It is quite interesting to see the deviations from these instructions that I have encountered, so please follow them carefully.

ASCII Schedule Table Format

The schedule is given as an ASCII table, with an integer (between 0 and 4 inclusive) in place of each 1/2-hour cell for each day. The integer in each slot indicates your preference for a meeting for that particular slot (each slot is 1/2 hour long for a particular day). The integers indicate your preference for that slot using the following preference meanings: Leaving a cell blank is equivalent to a 0. Also, please no fractional numbers. And also, please keep exactly the same ASCII table format (no added space, no new tabs, no other new whitespace, etc.), just fill in with integers 0 through 4. Also, all lines that do not have 7 vertical bar ('|') characters are considered comments and will be ignored (meaning you can insert comments if you wish).

No "5"s: Please make sure all your numbers are within the range 0 to 4 (a common mistake people make filling out these tables is to include 5's in a slot).

Below is a blank schedule, or you can also get a copy of a blank schedule from here. Also, an example of what a filled out schedule might look like is here. Also, when you email it to me, if you use an attachment, you might want to rename the file.

    Here is a blank schedule

|     |M|T|W|T|F|
| 8:00| | | | | |
| 8:30| | | | | |
| 9:00| | | | | |
| 9:30| | | | | |
|10:00| | | | | |
|10:30| | | | | |
|11:00| | | | | |
|11:30| | | | | |
|12:00| | | | | |
|12:30| | | | | |
| 1:00| | | | | |
| 1:30| | | | | |
| 2:00| | | | | |
| 2:30| | | | | |
| 3:00| | | | | |
| 3:30| | | | | |
| 4:00| | | | | |
| 4:30| | | | | |
| 5:00| | | | | |
| 5:30| | | | | |
| 6:00| | | | | |
| 6:30| | | | | |
| 7:00| | | | | |
| 7:30| | | | | |
| 8:00| | | | | |

  END OF FILE

Where is this alleged schedule program?

Its in /u/bilmes/bin/make_schedule.pl.


Maintained by Jeff Bilmes Last updated: $Date: 2010/02/25 22:44:49 $