Student Activities from Five Problems Lecture

August 30, 2006

This lecture was pre-recorded at UW to deliver at Beihang university in the second week of September to demonstrate lecture facilitation and the use of student submissions. I will be facilitating the lecture in which I am also delivering (this will be strange for me to do!). The topic of the lecture is five problems in Algorithms. This is a section from the K-T text that I had not planned on covering. Paul Beame recommended this as a topic to use. The goal of the lecture was to provide motivation and overview for the course. The actual content is not critical. For learning goals for the students, I hope that they understand each of the five problems introduced - but it is not necessary that they remember any of the algorithms. I hope that the students will gain some familiarity with terminology, my lecturing style, and my accent from the lecture.

It is important that the students understand the role of student submissions from this lecture, and that they actively particate.

The lecture was delivered to an audience of size four - lecturing to the small, artificial audience was a little uncomfortable, which contributed to a slow start - but once the activity phase of the lecture was reached, things went fairly well. The background of the audience was a reasonable match for the material. The audience members each used a TC1100 tablet for the activities.

There were two technical glitches - we started the lecture with the public display turned off, and had to restart (I trust the mis-start will be removed from the tape), and during one of the activities, I recieved a "disconnect" message on my tablet. I had reconnected, and things seemed fine. The video will show a slight interruption while we conferred on the problem - but since this was during an activity phase, it should be skipped during replay.

Each of the five problems were introduced using an activity. The activites in most cases gave the students an instance of the problem to become familiar with.

Activity 1 - Scheduling

Activity Type: Reinforcement, Assessment Activity Goals: Verify that students understand the problem, and have them gain experience solving the problem.

Planned Use: Give activity after introducing the problem, and verify students understood to problem. Clarify the problem if necessary. Use this as a lead in to discussion of algorithms - see if students can articulate the algorithm that they used.

Actual use: This went as planned, although students all had the answer right, so no clarification was necessary. A couple of points were made about presentation of solutions - complementing the student for putting the numerical answer on the slide, and a comment on the student that indicated multiple solutions. I showed multiple solutions just so students would see their work being displayed.

Evaluation of activity: This activity is quite easy - all students had it right. It is probably fine to have this as an easy activity to start with.

Answers to look for: The right answer has seven items selected.

Student submission examples

Activity 2 Weighted Scheduling

Activity Type: Construction, Discovery

Activity Goals: Have students show that they understand why greedy algorithms don't work for this example by showing counter examples.

Planned Use:Explain the importantance of counter examples, and then see if students have examples that show that the greedy algorithms do not work of this problem.

Actual use:This worked better than I expected - the counter examples were generally correct. I do not think that I introduced this activity very well in the lecture - so the success of the "students" might have been because of their knowledge coming into the class.

Evaluation of activity:I am worried about this activity - the concept of a counter example is very important - but I did not do justice to the point in lecture. I think there is a big risk of students not knowing what I am looking for. This is a two part question - the first asking about the earliest first greedy algorithm, the second about the highest value greedy algorithm. A one part activity, which is only asking to show that the highest value greedy algorithm does not work might be better. [I may modify this activity for use in Beihang].

Answers to look for: For the first part, almost any example will work - in particular, the example on the previous slide would work. Examples with just two jobs are possible. The second part is the more important one. The smallest example has three jobs. Showing multiple correct examples, ending with a small example would be a good way to cover this. In discussion, the second part is more important. (It may be advisable to drop the first part, if the activity is used)

Student submission examples

Activity 3 Bipartite Matching

Activity Type:Assessment, Discovery

Activity Goals: This activity was to engage people in the problem, and to verify that they understood it.

Planned Use: After a quick introduction on an easier problem, students were given this one. This problem was designed to be challenging - easy to get a matching of size six, but requiring backtracking to get a solution of size seven.

Actual use: Three of the four "students" found the correct solution - although no one found it immediately, so it worked well. I had expected fewer student to get it right.

Evaluation of activity: This was successful, and the right level of difficulty. The partial solution was a good lead into to the slide on augmenting paths.

Answers to look for: It should be easy to spot the correct answer (which shows as the instructor note). Showing a solution of size six was useful.

Student submission examples

Activity 4 Maximum Independent Set

Activity Type:Discovery

Activity Goals:Demonstrate that the MIS problem is hard.

Planned Use: After a small example, have students work on the big example. I wasn't sure how hard this would be - it seems quite natural to choose the three vertices adjacent to the vertex in the upper-left which is a good start on the correct solution.

Actual use:This went as planned. Students all understood the problem. There was a mix of solutions between 8 and 10. One student submitted incorrect solutions a couple of times. The instructor did not spot the errors - but other students did. The correct solution should be verified.

Evaluation of activity: This worked well - there was a distribution of solutions between 8 and 10.

Suggestions for use: Introduce the problem well, so that students know what maximal independent set is. Encouraging students to write the number of elements in their set is important to quickly allow choice of examples to show. Examples of size 10 should be verified by the class - showing an incorrect example of size 10 is fine, since students are engaged when spotting mistakes.

Student submission examples

Activity 5 Competitive Placement

Activity Type:Engagement

Activity Goals:This activity was included to make sure students understoon the games, and also to show that there is a wide range of possible solutions. It was also included so that the students could have some fun! One point that was being made with this game is that it is very hard to know what the optimal result is.

Planned Use:Introduce the game with a simple example, and then have the students do the more involved examples. Students were told to work in pairs.

Actual use:This went as planned. The lead in slide was done by having a student (moving first) play the instructor. The student made the best move (choosing the 5 in the corner, instead of the 6). On this game board, I believe the best first move is to choose the 7 (and not an 8). For display, it is helpful if students record the score.

Evaluation of activity:This worked well - students seemed to enjoy the brief game play. The size and difficulty seem right. Care needs to be given with the instructions to make sure the game is understood.

Suggestion on use: Playing the first game with the students was important to ensure most students knew how the game was played. I told students to play quickly - so they didn't spend too long. Since the first player should always win - the game needs to be phrased as how does the first player maximize the winning margin (and how does the second player minimize the losing margin).

Student submission examples