Chris Pollett > Students >

    ( Print View )


    [Project Blog]










CS297 Proposal

ASH - A Scheduler for HOAs

Qian Li ( &

Advisor: Dr. Chris Pollett


Across America, there are thousands of homeowners' associations (HOAs). They are in charge of posting the news and coming events, arranging the schedules for use of common areas such as clubhouses, keeping the rules and regulations of the community, and maintaining and repairing the houses. The latter activity is typically prioritized according to the owners' requests and the houses' conditions, and the HOAs budget finances. It is very important to homeowners not only to have their requests fulfilled in a timely manner, but also to be given immediate feedback on a timeframe in which repairs will be made. In a computer system, a job scheduler would be the program that would be responsible for maintaining such a schedule and, in some cases, monitor the queueing jobs. A job scheduler can initiate and manage jobs automatically by processing prepared job control language statements or/and through certain interaction with a human operator. In my project, an HOA web-site program (configurable for different HOA needs) will be developed and a job scheduler for organizing HOA maintenance and common area scheduling will be developed. This job scheduling algorithm will make use of ideas from queueing theory and as well as be based greedy task-scheduling algorithms, modified according to this real world situation.


Week 1: Aug.25-27Read [CLR90] Chap 17
Week 2: Aug.30 - Sep.3Read [AL90] Chap 5
Week 3: Sep.6-10Read [AL90] Chap 6
Week 4: Sep.13-17Deliverable1. due
Week 5: Sep.20-24Read [AL99]
Week 6: Sep.27-Oct.1Read [BNR02]
Week 7: Oct.4-8Read [RP04] Work on testing the variants.
Week 8-9: Oct.11-22Deliverable 2 due.
Week 10-11: Oct.25-Nov.5Work on the PHP X10
Week 12-14: Nov.8 -26Work on and Finish Deliverable 3.
Week 15-17: Nov.29- Dec.17Write CS297 Report.


The full project will be done when CS298 is completed. The following will be done by the end of CS297:

1. Write a simple PHP program that can be used to store job-site web pages. This program connects to a MYSQL database which is used for actually storing the data.

2. Test variations of greedy, priority, and on-line algorithms for job scheduling.

3. Write a PHP scheduler for X10 system in Professor Pollett's Digital Library.

4. Gather requirements for HOA site and associated scheduling problem. Create a simple mock up of the site.

5. CS297 Final Report.


[Al90] A. Allen. Probability, Statistics, and Queueing Theory with Computer Science Applications. Academic Press, inc. 1990.

[CLR90] Thomas H. Cormen, Charles E.Leiserson, Ronald L. Rivest, Introduction to algorithms. MIT Press. 1990.

[BNR02] (Incremental) Priority Algorithms, Allan Borodin, Morten N. Nielsen, Charles Rackoff, Proceedings of the thirteenth annual ACM-SIAM symposium on Discrete algorithms Pages: 752 - 761, Year of Publication: 2002, ISBN:0-89871-513-X

[RP04] Mechanism design for online real-time scheduling, Ryan Porter, Pages: 61 - 70 Year of Publication: 2004 ISBN: 1-58113-711-0 (can not get the full text)

[AL99] Online algorithm, Susanne Albers, Stefano Leonardi, Volume 31, Issue 3 (September 1999) Article No. 4, Year of Publication: 1999 ISSN:0360-0300