1
$\begingroup$

I'm looking for an "elevator pitch" breakdown of areas of applications for Reinforcement Learning & Neural Networks vs. Genetic Algorithms, both actual and theoretical.

Links are welcome, but please provide some explanation.

$\endgroup$
  • $\begingroup$ @NeilSlater that broad scope was the intent. (A twitter user asked a question about the differences in terms of types of applications suitable for the different techniques.) $\endgroup$ – DukeZhou Oct 17 at 16:37
  • $\begingroup$ @NeilSlater I didn't think sharing the Twitter post was relevant, per se, although here is a link: twitter.com/ezhillang/status/1184147600703836160. (Part of the reason I do a little outreach on Twitter is to try and promote participation on this stack.) PS--thanks for the the "elevator pitch" suggestion. I've edited the question to narrow it in this regard $\endgroup$ – DukeZhou Oct 17 at 18:54
  • 1
    $\begingroup$ Thanks for the edit. I don't think it is too broad now as you are clearly asking for a short summary. However, it does suffer a little from premises not quite being correct as a question (as John's answer points out), as does the original Twitter post IMO. That will mean that part of any answer has to spend time correcting the misunderstanding or miscommunication inherent in the question. Not sure how that can be avoided, it's a normal issue on this site when someone new to a subject uses slightly incorrect assumptions or terminology $\endgroup$ – Neil Slater Oct 17 at 20:02
3
$\begingroup$

Your question suggests a confusion of techniques, representations and problems.

  • Neural Networks are a representation that can be used to approximate functions. A neural network approximates a function that maps from inputs to outputs by optimizing parameters (weights).

  • Genetic Algorithms are a technique that can be used to optimize a problem. You might chose to use a GA to optimize the weights in a neural network for instance. Or you might use it to optimize a different representation or approximation of a function.

  • Reinforcement Learning is a problem. In a Reinforcement learning problem, the agent learns a function mapping states to actions. You can learn this function directly in some problem domains, or by a near-direct approximation (like tile-coding), or with a function appropriator (like a neural network).

$\endgroup$
  • 3
    $\begingroup$ Reinforcement Learning is also a field and a set of techniques to optimize a problem. The previous sentence is taken and summarized from Sutton and Barto (2018). $\endgroup$ – Dimitris Monroe Oct 17 at 8:25
  • 2
    $\begingroup$ @DimitrisMonroe It's true that people talk about Reinforcement Learning as a set of related techniques. However, what relates those techniques is their application to Reinforcement Learning problems. Sutton & Barto are correct that the group of people focused on this problem are large enough to claim they constitute a field, but it doesn't make sense to ask about the difference between RL & GAs, because GAs can be used to solve RL problems, but RL problems (or even techniques used to solve RL problems) cannot be used to "solve" GAs, because GAs are a search technique. $\endgroup$ – John Doucette Oct 17 at 13:44
  • 1
    $\begingroup$ This is a fair criticism but RL algorithms can theoretically solve a large number of problems even if they are well beyond the scope of the RL problem. An example of this is SecGan. Some people even attempt to write classifiers using DQNs and Policy Gradient Algorithms. $\endgroup$ – Dimitris Monroe Oct 17 at 16:35
  • $\begingroup$ @DimitrisMonroe That's true, but I think the issue is in calling them "RL" algorithms. Even though this usage is somewhat commonplace, they are really "algorithms for solving RL problems". Just as you can solve a classification problem with an algorithm for regression, you can solve a classification problem with an algorithm for RL, but that doesn't make regression a type of solution, even if we often lapse into talking about it that way. I think this is really an issue of semantics though. $\endgroup$ – John Doucette Oct 17 at 23:20
  • $\begingroup$ I agree with you, it's just semantics. $\endgroup$ – Dimitris Monroe Oct 18 at 5:41

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.