THX-1138 Posted December 5, 2013 Posted December 5, 2013 (edited) I've been having fun playing around with very basic genetic programming. The simplest example is just trying to get from point A to point B across a bounded 2D space, as shown at http://ken.coar.org/images/basic-ga.png (the = in the left edge to the = in the right edge). In the example, the fitness value is based on the Euclidean distance between the target and the position of the last expressed gene. Since I have a broader perspective than the program, I can see places where tweaks might be possible. For example: assessing a slight penalty for each allele that, without cause (such as avoiding an obstacle), increases the Euclidean distance to the target over that of the preceding gene. I.e., an allele that needlessly moves away from the target decreases the chromosome's fitness value; applying 'peephole' optimisations by splicing out pointless diversions (like oxbows in a river) and adding genes to the tail equal to the number of those excised; and so on. My question is whether this sort of intervention is, essentially, cheating -- by making the program 'test-conscious,' as it were. Edited December 5, 2013 by THX-1138
Endy0816 Posted December 5, 2013 Posted December 5, 2013 I look at it as a form of artificial selection. The algorithm gains the benefit of knowledge but also the drawback of assumption of knowledge. Will almost certainly arrive at a solution faster, but it may not arrive at the most optimal solution as you've restricted the problem space. Been a bit since I worked with alife. Did have fun though.
DevilSolution Posted December 8, 2013 Posted December 8, 2013 2 Things, when you say "peephole" are you alluding to the p != np problem? By giving the algorithm access to the data? Secondly theres a whole list of generic algorithms for path finding, as you mentioned heuristic mathematics is the basis. If the answer to the first is "yes" then the answer to your question is "yes", if by any other means your modifying the algorithm, such as giving it access to its own learned data, then the answer is "no" its not cheating, that is the basis for machine learning. 1
THX-1138 Posted December 16, 2013 Author Posted December 16, 2013 I don't know what the 'p != np' problem is at the moment, so I can't answer that. But the rest of your response answers my question, I think. Thanks!!
DevilSolution Posted January 9, 2014 Posted January 9, 2014 I don't know what the 'p != np' problem is at the moment, so I can't answer that. But the rest of your response answers my question, I think. Thanks!! p != np is a heuristic problem regarding the fastest path to a location when the intermediate steps are not known.
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now