Subversion Repositories programming

Rev

Hide changed files | Details | Compare with Previous | Blame | RSS feed

Filtering Options

Rev Age Author Path Log message Diff Changes
409 6810 d 19 h ira /school/ Rename cs408/ to cs420/. I got the class wrong.

Add cs431/ and a directory for the first project.
 
/school/cs420
/school/cs431
/school/cs431/p1
/school/cs408
397 6822 d 10 h ira /school/cs408/p1/ PyCompat.py:
* Add a compatibility class so the school computers work.

DrawGraph.py:
* Revert earlier changes. School computer fixes are now in PyCompat class.
* Add a check for yapgvb.

PuzzlePiece.py:
* Revert earlier changes. School computer fixes are now in PyCompat class.

PuzzleSearch.py:
* Revert earlier changes. School computer fixes are now in PyCompat class.
* Add a check for yapgvb.
* Only try to render with yapgvb if we have it.

HW01.py:
* Revert earlier changes. School computer fixes are now in PyCompat class.
* Add a check for yapgvb.
* Add "generated_by" to autogenerated root nodes.
* Make sure the start_node is labeled 'root'.

Graph.py:
* Revert earlier changes. School computer fixes are now in PyCompat class.

Menu.py:
* Revert earlier changes. School computer fixes are now in PyCompat class.
* Remove unnecessary function calls.
 
/school/cs408/p1/PyCompat.py
/school/cs408/p1/DrawGraph.py
/school/cs408/p1/Graph.py
/school/cs408/p1/HW01.py
/school/cs408/p1/Menu.py
/school/cs408/p1/PuzzlePiece.py
/school/cs408/p1/PuzzleSearch.py
396 6822 d 15 h ira /school/cs408/p1/ Get rid of references to yapgvb everywhere. This SUCKS ASS because its now
tied to the version. God, I HATE the school computers.

Remove unused ordering_func().

Due to the school NOT UPDATING THEIR COMPUTERS, I have to waste a SHITLOAD
of memory, by duplicating a list just to reverse it. Grrr...

Add a print statement in HW01.py for nicer output.
 
/school/cs408/p1/DrawGraph.py
/school/cs408/p1/HW01.py
/school/cs408/p1/PuzzleSearch.py
395 6822 d 15 h ira /school/cs408/p1/ Lots of fixes for school computers (gotta hate them)!
Add render_stupid() to DrawGraph.
 
/school/cs408/p1/DrawGraph.py
/school/cs408/p1/Graph.py
/school/cs408/p1/HW01.py
/school/cs408/p1/Menu.py
/school/cs408/p1/PuzzlePiece.py
/school/cs408/p1/PuzzleSearch.py
393 6826 d 18 h ira /school/cs408/p1/ PuzzlePiece.py:
* Keep track of current depth.
* Keep track of goal node.
* Remove find_empty_pos(), add generic find_position().
* get_children() auto-increments depth.
* Add num_out_of_place() for heuristics in search.
* Add total_distance_from_correct() for heuristics in search.
* Add tests when module is run directly.

PuzzleSearch.py:
* Add SearchResult class to hold search results.
* Always return SearchResult when searching.
* Add many pluggable search algorithms.
* Updated tests to run with the new API.
 
/school/cs408/p1/PuzzlePiece.py
/school/cs408/p1/PuzzleSearch.py
392 6827 d 16 h ira /school/cs408/p1/ PuzzleSearch.py:
* Store the current search depth with each node.

Graph.py:
* Do not create a new Vertex every time we set the value, just
change the value property.
* Add more checking to getters / setters.
 
/school/cs408/p1/Graph.py
/school/cs408/p1/PuzzleSearch.py
391 6827 d 19 h ira /school/cs408/p1/ DrawGraph.py:
* Add support for getting Vertex shapes from the Graph.

PuzzleSearch.py:
* Change MAX_ITERATIONS to MAX_NODES_CREATED. It's a better metric.
* Set start and goal node shapes.

Graph.py:
* Add Vertex class to store vertex data.
* Add support for setting a Vertex's shape.
 
/school/cs408/p1/DrawGraph.py
/school/cs408/p1/Graph.py
/school/cs408/p1/PuzzleSearch.py
388 6829 d 15 h ira /school/cs408/p1/ PuzzleSearch.py:
* Add add_algorithm parameter to the GGSA.
* Add a MAX_ITERATIONS parameter to the GGSA.
 
/school/cs408/p1/PuzzleSearch.py
387 6829 d 15 h ira /school/cs408/p1/ DrawGraph.py:
* Allow layout engine to be chooseable at render-time.

PuzzleSearch.py:
* Implement an 8-Puzzle specific searcher. This assumes that
each searchable node has a get_children() method.
* This implementation does not need a full Graph() to operate.
* FIXME: still only searches via BFS.
* FIXME: still has no inf-time limiter.
 
/school/cs408/p1/PuzzleSearch.py
/school/cs408/p1/DrawGraph.py
383 6831 d 15 h ira /school/cs408/ DrawGraph.py:
* Move to Project 1 directory.

Graph.py:
* Move to Project 1 directory.

GraphSearch.py:
* Move to Project 1 directory.

Generator.py:
* A basic generation class.

PuzzleGenerator.py:
* A class to generate 8Puzzles.
 
/school/cs408/p1
/school/cs408/p1/DrawGraph.py
/school/cs408/p1/Generator.py
/school/cs408/p1/Graph.py
/school/cs408/p1/GraphSearch.py
/school/cs408/p1/PuzzleGenerator.py
/school/cs408/DrawGraph.py
/school/cs408/Graph.py
/school/cs408/GraphSearch.py
382 6831 d 15 h ira /school/cs408/ GraphSearch.py:
* Fix GraphSearch so that different algorithms can be used.
 
/school/cs408/GraphSearch.py
380 6832 d 19 h ira /school/cs408/ GraphSearch.py:
* Initial implementation of a graph searching class.
* Mostly works, colors edges taken during a search, and labels them
in the order taken.
* Needs cleanups.
 
/school/cs408/GraphSearch.py