Hacker News new | past | comments | ask | show | jobs | submit login

I see genetic programming as an interesting solution to lots of different problems, but I don't think debugging is one of them.

Bugs in my code usually reflect errors in my thinking (or typos). The genetic program would likely come up with the quickest hack that will get the code working, not the correct redesign that will be easiest to read and maintain for humans.




Genetic approaches will get you whatever you design them to do - in cell biology, we call that "you get what you evolve for". If you want code to do a particular task, and write a fitness score that only reflects that, you'll get a hack that does that. If you want readability, you add constraints to the mutation parameters that enforce that requirement at every generation, and you'll get readability.

The hard part becomes writing those constraints, not writing the actual solution.


"The hard part becomes writing those constraints, not writing the actual solution."

Yes, writing constraints can be difficult, as can figuring out which constraints you need, and coming up with fitness functions for figuring out how good a given solution is.

Other difficulties include tweaking the various parameters of the GP to perform well enough to get reasonable solutions in a reasonable amount of time, and making sure you're not overoptimizing, etc...

The other thing I'd mention is that one should always take the results of AI research with a big grain of salt. Often the problems they work on are unrealistic toy problems that have little relevance to anything you'd actually do in the real world, and their statistical methods leave a lot to be desired.

There's huge pressure to get funding, so many papers tend to be unrealistically optimistic and misleading (but get published anyway).




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: