CS 5401 Evolutionary Computing | Solving light up (Akari) puzzles using an evolutionary algorithm (EA)
#################################
#################################
My apologies for the crowded output
folder. Hopefully this will clear up any confusion about the meaning of the files it contains, if any arises.
-
random_gen_log.txt
andrandom_gen_soln.txt
are standard log and solution files. They are generated from runningrun.sh
with theconfig/random_gen.cfg
config file. Similarly forwebsite_puzzle_log.txt
andwebsite_puzzle_soln.txt
. -
*_last_best_local_fits.txt
are last best local fits from each experiment scraped from the log files. These files are used in performing statistical analysis. -
*_random_search.txt
are files generated from running the random search algorithm. -
*_graph.png
are of course the generated graphs corresponding to a particular log file.
#################################
#################################
To compile and run the code, simply run the following script. This defaults to use the configuration file config/default.cfg
.
./run.sh
Or, include the optional configuration file parameter.
./run.sh config/website_puzzle.cfg
#################################
#################################
You are free to use any of the following programming languages for your submission : - C++ - C# - Java - Python Your code must be well formatted and styled according to good coding standards, such as the MST coding standard outlined here : http://web.mst.edu/~cpp/cpp_coding_standard_v1_1.pdf It is required that your code is well documented.
NOTE : Sloppy, undocumented, or otherwise unreadable code will be penalized for not following good coding standards (as laid out in the grading rubric on the course website) : http://web.mst.edu/~tauritzd/courses/ec/cs5401fs2018/
#################################
#################################
Included in your repository is a script named ”finalize.sh”, which you will use to indicate which version of your code is the one to be graded. When you are ready to submit your final version, run the command ./finalize.sh from your local Git directory, then commit and push your code. This will create a text file, ”readyToSubmit.txt,” that is pre-populated with a known text message for grading purposes. You may commit and push as much as you want, but your submission will be confirmed as ”final” if ”readyToSubmit.txt” exists and is populated with the text generated by ”finalize.sh” at 11:59pm on the due date. If you do not plan to submit before the deadline, then you should NOT run the ”finalize.sh” script until your final submission is ready. If you accidentally run ”finalize.sh” before you are ready to submit, do not commit or push your repo and delete ”readyToSubmit.txt.” Once your final submission is ready, run ”finalize.sh”, commit and push your code, and do not make any further changes to it
Late submissions will be penalized 5% for the first 24 hour period and an additional 10% for every 24 hour period thereafter.
#################################
#################################
Your final submission must include the script "run.sh" which should compile and run your code. Your run.sh script should generate solutions for each puzzle instance associated with that assignment.
Your script should run on the campus linux machines with the following command : ./run.sh