1,105,310 Community Members


Member Avatar
Newbie Poster
3 posts since Sep 2012
Reputation Points: 0 [?]
Q&As Helped to Solve: 0 [?]
Skill Endorsements: 0 [?]

I am trying to do a problem of solid waste collection vehicle routing using Genetic algorithm in C++. So here raises the question why should I use GA. How do I defense this question? My main logic is solid waste collection problem is a non linear problem and for solving it I chose GA. So can it be like I can form a model to prove its non linearity? If its modeling is possible what things do I need to focus?

Member Avatar
21st Century Viking
4,073 posts since Jul 2010
Reputation Points: 2,253 [?]
Q&As Helped to Solve: 798 [?]
Skill Endorsements: 72 [?]

A waste collection vehicle scenario sounds a lot like a travelling salesman problem (TSP). Or at least, like other routing problems. These are usually modeled as integer problems (or Integer Linear Programs (ILP)), or combinatorial optimization.

So here raises the question why should I use GA. How do I defense this question?

I don't know that you should. I have seen many people solving TSP using genetic algorithms. By and large, it seems that the justification is mostly that CS people all find that the TSP and GAs are both really cool things to work on, so they like to combine them. And in any given problem, the justification for using a genetic algorithm is usually this: "nothing else seems to work very well, so we'll try this." A GA can pretty much solve anything, but to get it to solve any problem effectively is an extremely long trial-and-error process and lots of fine tuning, because it is very difficult to have any kind of a precise idea of what will work better than something else. Just like its real-life analog, biological evolution: it works but takes a very long time, is very inefficient, produces wacky results, and requires enormous resources.

Here's a question for you: Did you choose to use a GA because it was good to solve this waste collection problem? Or did you choose the waste collection problem because you thought it would be a good toy-problem for testing out a GA? My guess is that your case is the latter. If that's the case, don't state your project as "trying to solve a solid waste collection vehicle problem using a GA", but rather state it as "testing the suitability of a GA for solving a solid waste collection vehicle problem". It might look like a trivial change of sentence, but it makes all the difference here. You don't need to justify why GA is good for this problem but rather justify why this problem is challenging for a genetic algorithm to solve. And I think that's a lot easier to justify, and more honest.

So can it be like I can form a model to prove its non linearity?

It is far worse than a non-linear problem. It is an integer program, or a combinatorial optimization problem. Non-linear problems are a joke in comparison.

This article has been dead for over three months: Start a new discussion instead
Start New Discussion
Tags Related to this Article