Grading outline for homework 7. * Document - 9 points. Introduction: 4 points. Basic description of two algorithms: 4 points. Formatting: 1 point. Is it formatted nicely to read like a research paper? For each, points are taken off if the writing style is poor or if the descriptions are not clear and precise. * Code - 6 points. 4 Points for one algorithm, 2 points for the second. Comments: * Need to format this like it is a paper, not a homework assignment. * That includes writing in complete sentences! * And transitions in between different parts of your paper. You don't just put the first algorithm with no transition sentence. Instead, you say something like "We have described the __ problem. Next we describe a few algorithms that can be used to solve the problem." * And proofread your papers for correct grammar! Writing a paper is not simply typing what comes out of your head. You should take time to make sure what you are saying makes sense, reread it a second time, etc. * For the introduction, include more about what is known about the problem. Say what is the fastest known algorithm for the problem, what is the best-known approximation, etc. * Also include at least one practical application that you describe in some amount of detail. * For description of the algorithms, take a simple example and trace through how the algorithm works on that simple example. Also discuss/explain what the running time and performance are. * For the description of the algorithm in the paper, do not just give the code. Rather, explain in words basically what happens and/or give pseudocode - enough that someone can understand what is happening. * For the references, do not just give a link. Give a citation and the link. * For the programs, have comments at the top saying: Your name, link where you got the program if you got it online, how to compile and run the program, basic description of what the program does. * For the programs, include comments throughout explaining how it works. A good rule of thumb is to include comments for each function (what it returns, what the parameters are, what it does), for each loop, and for many of the if tests. You do not need to comment each line, but should comment enough to explain basically what is happening. * For the program, use whitespace and indenting to make the code readable. * For the programs, include some test data where you run each of your algorithms on the same data. Use this data to compare the algorithms - in terms of running time, correctness, approximation, etc. To be useful, you should run many tests, on large-ish inputs.