The following is a checklist which provides a summary of the
assignment. This is meant only as a supplement; please read the original assignment
description.
Frequently Asked Questions:
(This is the only part of this checklist which will change during the
week.)
[April 29] For a full range of methods dealing with random number
generation, you may want to use the class java.util.Random
which has documentation at
http://java.sun.com/docs/books/jls/html/javautil.doc9.html#7616
[April 28] It has been settled: the two-way search as described in
the assignment does not necessarily return the true shortest path.
There is an easy way to fix the algorithm, however it is too close to
the deadline for us to change the assignment requirements.
Instead, we will offer one extra credit point for implementing the correct algorithm. As always, if you do the
extra credit, please mention this in your readme file.
[April 27] What do we mean by "number of nodes examined"? It is not
very clear cut. Let's suggest the following standard: Report the
number of nodes which have been added to the tree(s). (if you have
already written your code to count some other meaningful
interpretation, go right ahead. Just put a big note in the readme to
explain what it is that you are reporting.)
[April 27] If you want a much more interesting set of test graphs for
the various heuristics in this assignment, try using this modified Graph constructor based on the
new class Fence.java.
[April 27]
If you want to get rid of the "deprecated" warnings during
compilation, replace all occurrences of getClipRect with
GetClipBounds in the files Graph.java and
demo.java. (webster defined "deprecate" as "belittle" or
"disparage", and we won't stand to be disparaged)
[April 27] A hint on Step 3: for the preprocessing step, you should
be thinking about a new graph with M^2 nodes.
[April 25, corrected April 27] For those students using Program 9.12
of the text, please note that there was a bug in the early
printings which has only been fixed in the fourth printing. The
last line of the exch routine should read
t=pq[qp[i]];pq[qp[i]]=pq[qp[j]]; pq[qp[j]]=t;
Help with Java:
There are many possible sources for those needing help learning Java.
We can recommend a few,
Overview:
This week, the assignment has asked you to solve the shortest path
problem in one of three ways (each way requires additional
programming, but should result in a better algorithm)
You should only turn in one program.
Here we give an overview of the three steps. (specific requirements
of your submissions will be in the following section)
Requirements:
No matter which method you turn in, the following is required of
your program:
cos226 Class Page
wass@cs.princeton.edu
Last modified: April 29, 1999