Are you good at problem solving? Can you program? Do you enjoy competition? Would you like to represent Texas A&M? If so, come compete in the local programming competition to be held this coming weekend. Here are the details: Texas A&M Local Programming Competition Date: Saturday, October 21 Time: 12:00 noon for rules, warm-up, hints, and questions 1:00 - 4:00 for contest Place: Room 229, H.R. Bright Building Refreshments (but not a meal) provided. Email icpc(at)cs.tamu.edu for more information. Note: There will also be a practice this Thursday at 7:00 in room 229 for those interested. The top individual finishers in this local competition will go on to represent Texas A&M in teams at the ACM South Central USA Regional programming contest on November 4. The students also receive a free year of ACM membership. The winners of the regional contest will get to compete in the world finals in Tokyo in March. To be eligible to compete, you must either have first started college no earlier than 2002, or have been born no earlier than 1983.
Lecture: Monday, Wednesday, Friday, 1:50-2:40 PM, HRBB 126
Textbook: Distributed Computing: Fundamentals, Simulations, and Advanced Topics, Second Edition, Hagit Attiya and Jennifer Welch, John Wiley & Sons, 2004.
Prerequisite: CPSC 629 (Analysis of Algorithms) or equivalent, or permission of the instructor.
THIS IS A THEORETICAL COURSE. The emphasis will be on proving correctness of algorithms, proving upper and lower bounds on complexity measures, and proving impossibility results. You are expected to be familiar with the general concepts involved in designing and analyzing sequential algorithms. Such familiarity would come from CPSC 629 or CPSC 311 or equivalent. A good reference book for sequential algorithm analysis is Introduction to Algorithms, Second Edition, Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest and Clifford Stein, the MIT Press, 2002.
A background in distributed systems, fault-tolerance, operating systems, or networking would be helpful in appreciating possible applications of the results in the course, but is not essential.
Course Content and Tentative Schedule: The course will cover the following topics. The relevant chapters of the textbook are indicated.
week of | topic | chapter |
8/28 | introduction, basic graph algorithms | 1, 2 |
9/4 | leader election | 3, 14.1 |
9/11 | mutual exclusion | 4, 14.2 |
9/18, 9/25 | consensus | 5, 14.3 |
10/2, 10/9 | causality, clock synchronization | 6.1, 6.3, 13 |
10/16 | broadcast | 7, 8.1, 8.2 |
10/23 | distributed shared memory | 9 |
10/30, 11/6 | fault-tolerant shared objects | 10, 15 |
11/13 | asynchronous solvability | 16 |
11/20 | failure detectors | 17 |
11/27, 12/4 | self-stabilization | N/A |
Your grade will be based on three components:
Course grades will be assigned according to this scale:
% total points | >= 90 | 80-89 | 70-79 | 60-69 | < 60 |
letter grade | A | B | C | D | F |
Collaboration: For the assignments in this class, discussion of concepts with others is encouraged, but all assignments must be done on your own, unless otherwise instructed. Reference every source you use, whether it be a person, a book, a paper, a solution set, a web page or whatever. You MUST write up your assignments in your own words. Copying is strictly forbidden. Every assignment must be turned in with this cover sheet, which lists all sources you used.
Academic Integrity Statements: The Aggie Honor Code is "An Aggie does not lie, cheat, or steal or tolerate those who do." Upon accepting admission to Texas A&M University, a student immediately assumes a commitment to uphold the Honor Code, to accept responsibility for learning, and to follow the philosophy and rules of the Honor System. Students will be required to state their commitment on examinations, research papers, and other academic work. Ignorance of the rules does not exclude any member of the TAMU community from the requirements or the processes of the Honor System. For additional information please visit: http://www.tamu.edu/aggiehonor/ .
Americans with Disabilities Act (ADA) Policy Statement: The Americans with Disabilities Act (ADA) is a federal antidiscrimination statute that provides comprehensive civil rights protection for persons with disabilities. Among other things, this legislation requires that all students with disabilities be guaranteed a learning environment that provides for reasonable accommodation of their disabilities. If you believe you have a disability requiring an accommodation, please contact the Department of Student Life, Services for Students with Disabilities in Cain Hall, Rm. B118, or call 845-1637.
The written problems will include some from the textbook and others similar in style.
Each assignment will list a small number of papers that are related to recent class topics. For each paper, you are to write (type!) a one or two page report containing
Don't forget to turn in a cover sheet with each assignment.
The homeworks and their due dates are available in the
Purpose: This assignment has several purposes:
Topic:
Your project will involve reading several related papers
from the literature, summarizing and critically reviewing
the work, and either extending
the work in some way or simplifying the results by making some
simplifying assumptions.
Your topic should concern distributed algorithms and
have a significant theoretical component to it.
Implementations are only appropriate as an auxiliary to
some more theoretical results.
Some good places to look for distributed computing papers are:
Approaches:
Some general ideas for approaches to take in your project:
Written Report:
The report is to be typed, at least 10 pages long and no more than
20 pages long.
Part of your grade will be based on the quality of your composition
(including spelling, grammar, logical flow).
Typical organization for a technical paper in this area is:
Oral Presentation:
More information will appear here if class size permits.
Follow the links in the calendar to get details on the assignments.
Back to beginning
Project
I encourage you to discuss your project with me as often as you like,
and at any stage, especially early on.
For the first two approaches here are some ideas for problems to consider
together with a representative recent paper to get you started finding
references:
Very little, if any, of your paper should consist
of copying the contents of the papers you read, and of course if you
do quote from a paper, be sure to credit the source.
Calendar
This calendar lists all due dates as they become known for
Powerpoint lecture slides:
Monday
Tuesday
Wednesday
Thursday
Friday
8/28
Introduction
Read Chs 1 and 2
8/29
8/30
Spanning Trees; Leader Election in Rings
Read Ch 3
8/31
9/1
Asynchronous Lower Bound for LE in Rings
9/4
LE in Synchronous Rings
9/5
9/6
Randomized LE; Shared Memory
Read Ch 14, sec 1, and Ch 4
9/7
9/8
Mutual Exclusion
HW 1 due
9/11
Mutex with Read/Write Variables
9/12
9/13
More Mutex with Read/Write Variables
9/14
9/15
Consensus with Crash Failures
Read Ch 5
9/18
More Consensus with Crash Failures
9/19
9/20
Consensus with Byzantine Failures
9/21
9/22
More Consensus with Byzantine Failures
HW 2 due
Monday
Tuesday
Wednesday
Thursday
Friday
9/25
Impossibility of Asynchronous Consensus
9/26
9/27
Asynchronous Consensus
Project Proposal Due
9/28
9/29
Dr. Scott Pike substitutes
10/2
HW 2 Solutions
10/3
10/4
Causality
Read Ch 6
10/5
10/6
HW 3 due
10/9
Clock Synchronization
10/10
10/11
Byzantine Clock Synchronization
Read Ch 13
10/12
10/13
More Byzantine Clock Synchronization
10/16
HW 3 Solutions
10/17
10/18
HW 4 Solutions
HW 4 due
10/19
10/20
Midterm Exam (open book,
open notes)
Monday
Tuesday
Wednesday
Thursday
Friday
10/23
Model for Simulations
Read Ch 7
10/24
10/25
Broadcast
Read Ch 8
10/26
10/27
Reliable Broadcast; Distributed Shared Memory
Read Ch 9
10/30
More Distributed Shared Memory
10/31
11/1
Fault-Tolerant Register Simulations
Read Ch 10
11/2
11/3
More Register Simulations
11/6
More Register Simulations
HW 5 due
**new due date**
11/7
11/8
HW 5 Solutions
11/9
11/10
NO CLASS
11/13
Wait-Free Hierarchy
Read Ch 15
11/14
11/15
Problems Solvable in Asynchronous Systems
Read Ch 16
11/16
11/17
More Problems Solvable in Asynchronous Systems
Monday
Tuesday
Wednesday
Thursday
Friday
11/20
Failure Detectors
HW 6 due
11/21
11/22
NO CLASS - TAMU CLOSED
11/23
THANKSGIVING HOLIDAY
11/24
THANKSGIVING HOLIDAY
11/27
11/28
11/29
11/30
12/1
12/4
HW 6 due
Project Due
12/5
12/6
READING DAY
12/7
READING DAY
12/8
12/11
12/12
12/13
12/14
12/15
Useful Links
Distributed Computing
Reading and Writing Research Papers
Computing-Related at TAMU