CS 495 Special Topics in CS: Evolutionary Computation Fall 2002, Instructor: Jeffrey Horn
What's REALLY New:
Not so New (Older Announcements):
- THE FINAL! Sorry. I got swamped with end-of-semester work, and trying to obtain and process all the code I needed from people from the HW 3 work to get a "final project" for all of us. Well, I've got all of the code, but now we have little time. so here's is what we'll do: The final will be in two parts, an in-class part tomorrow at 2:00pm, and a take-home part that I promise to keep SHORT! I don't want you working 'til Christmas on it! More details:
- PART I: in class (our usual classroom NSF 1205, 2:00pm to 4:00 pm, although we'll only need the first hour for this part, the other hour will be to discuss part II, wrap up the course, donuts, etc. Again, this is for Thursday, Dec. 12, 2002), open book, open notes. Bring your laptop and be prepared to use a calculator! (that means bring your favorite calc. or be willing to use your TI interactive or built-in Windows accessory). Topics that COULD be covered:
- Three basic operators of a GA: selection, crossover, mutation.
- Two-point crossover, give an example of how it works.
- Give an example of mutation.
- Give an example of a single tournament, maybe binary tournament, and maybe a k-ary tournament (with k competitors randomly chosen)
- Logistic convergence: expected number of generations to convergence (to a uniform population) grows logistically in pop. size N: time_conv = O(lg N).
- Niching: if we used shared fitness for selection, with each individual's usual fitness f_i divided by the number of copies of itself, n_i, then use the equilibrium equation f_i/n_i = f_j/n_j to solve for the equilibrium population distribution, given, say, three possible individuals i,j,k.
- Here is an application (e.g., a strategy for a non-player character in a computer game). Pick out the decision variables and come up with an encoding for them on a chromosome.
- That's enough! Although I might think of something else. But I would keep it reasonable, as in nothing you would have had to study for.
- PART II: take-home, Java coding. Now some people have gone ahead and done one of the projects I listed below and gave to you last week. Matt of course has gone off and done his own, and I think Steve might pretty much have done that too, since he likes staying in C so much! For everyone else, I WILL have a short, straightforward, programming assignment that I will hand out at the final exam, (actually it should be on the web late tonight, Wednesday). It will be something along the lines of: "here is the code, now modify it to do runs on NYC Tunnels with the following ordering of the pipe diameters on the chromosome.... Do 20 runs with 20 diff. random seeds, average out the performance in the following way... and deliver to me the following table with the values written in." I will then take this data and try to write up a paper on it over the break, to be submitted to GECCO by Jan. 22, 2003, I hope! I will make sure it is something you can do by Friday, so just a few hours of time, although I will take hand-ins right up until Monday Dec. 16, at noon. Hand-ins will be electronic so you don't have to be on campus.
- See you Thursday!
CONTENTS
Topics
Handouts
PART I: Generalized Last Theorem of Fermat
PART II: Your Own "Problem from
Our final exam date is Thursday, Dec. 12, 2002 from 2:00pm to 3:50pm. You have two choices for the final exam, project or test, and you can change your mind (from project to test that is!) right up the last minute. Either way, everyone has to be there. (There will be donuts!) Here are the details.
TEST
Open book, open notes, bring your laptop. It will run from 2:00 to 3:00 pm. You will have enough time, assuming you know the material pretty well (click here for an overview of the topics). Click here for the actual test!
After the test, from 3:00 to 3:50 pm, we will eat donuts and grade final projects (see below).
PROJECTS
Below are the choices. You must accomplish the goals stated, and then show this to me, and anyone else in the room, by plugging your laptop into the projector and showing your results, and code. This does not mean a formal presentation (don't even think Powerpoint!). Rather it should be an informal discussion with a bunch of your colleagues.
Here is the code directory, for all the code for projects.
- FERMAT: Throw a GA at this and do the BEST you can. And YES, you MUST use Dan's visualization code!
- k=6, n=6
- k=7, n=7
- Any other n,k pair IF you can convince me it is worthwhile!
- NYC Tunnels:
- Multi-objective
- Re-ordered Pipes (I.e.,
- SHAPE NESTING: