Tuesday 5 February 2008

And now for something completley different

Well not completely, but hey nothing about Torchwood.

Some of you know what my honours project is about, and for everyone else the details are too long to make up one blog post but the meat and bones of it are, that my implementataion of NEAT(an AI algorithm) has been based on Mat Buckland's WindowsNEAT(<- He wrote a book or two about AI programming), but thanks to the fact that he 'proof read' his book I'd noticed that in one of the classes ('SLink' to be precise) contained variables of the type CNeuron*(a dynamic object type), so I assumed that he had re-used the neuron class he had written earlier in the book but no, CNeuron was a typo. It was supposed to be SNeuron. So I implemented both and used CNeuron where it told me to. That means that I had basically implemented both NEAT and Half a back prop algorithm(another AI algorithm), and because I didn't know it was a typo, memory wasn't being cleaned up and it was becoming a problem, especially for the DS(the handheld console) version, so thats where the massive memory requirements came from on the DS(I was having amjor problems with that), pointers(the dynamic object, for you non-programmers) to the wrong type of neuron weren't being cleaned up and eating the DS's memory like a fat kid at a buffet. Once I get the right classes added and the wrong ones removed. The memory requirements for NEAT should plummet, making my DS version once again feesible, but now I don't know if I really want to do it. I get a lot more freedom on PC, I don't have to limit the population size (massively) and I get to use funky shader effects, which is what I plan on using for all my evolutionary changes, and I've found a way to deform meshes at run-time with a couple of vertex shaders. So I'll update when both versions are fixed and see where I'm going from there...



P.S. And for the record, yes I know. Wall of Text crits you for 99999, and shit you have no potions


P.P.S And before you say it Gordon, I know that was a bit fail.

No comments: