This is the first subproject of the first project.
The goal of this project is to write and test a hillclimbing and
simulated annealing search algorithms for two
of the benchmark optimization problems.
For this subproject you only need to work on the Sphereical and
Schwefel functions,
defined at:
http://www.cs.cmu.edu/afs/cs/project/jair/pub/volume24/ortizboyer05a-html/node6.html#tabla:DefFunc
. (Note the first function labeled as Schwefel on this page is
actually the double sum, which we are not using. We are using the
Schwefel function defined immediately after the Rastigin function.)
Pay careful
attention to the ranges of the functions. You will want to use those
ranges both in creating intial individuals and in controlling the
generation of neighbors, e.g. you don't want your GA 'wondering' out of
the search space. Note that here the functions are all defined with 30
dimensions, e.g. P = 30 in the function definitions.
Project Requirements:
- Write a hill climbing algorithm and a simulated annealing algorithm
to find the input values (x1,...,x30) that minimizes
the two test function.
- Project Write-up:
Write a short paper describing the results of your project
that includes the following sections:
- Algorithm descriptions - Description of the
two algorithms. Be careful to include all of the details someone would
need to replicate your work: how neightbors are generated in hill climbing,
what the temperature schedule is for simulated annealing, etc. .
- Results - Table showing the results for both algorithms on
both test functions.
- Conclusions - If its not working, why not.
And what are then next steps to complete the project.