Right now I have an undirected graph. Each edge represents the distance between the vertices. Each vertex contains a number (lets call them points). I am trying to get the maximum number of points while using the minimum distance. I have a constraint on the maximum distance I can go, thus I do not need to reach every vertex. I can start at any vertex and end at any vertex (I do not need to go back to the origin).
Right now I'm thinking that it would be possible through dynamic programming but I'm not entirely sure how to set up the problem.
Any help on how to set it up/the right algorithm to use would be greatly appreciated!
So after this experience, I found that you should look into the ant colony algorithm and apply it to the traveling salesman problem. You could alternatively use a modified greedy algorithm approach that starts at a random point and chooses the next location based on a random sided die based on the locations that give you the best points. You could then modify your algorithm further to store previous results and iterate to get better results.