SimonTemplar wrote: » I've been writing VBA solutions for years and I am currently in third year of an evening computer science course where I have also written numerous Java projects. I am in the early stages of another Java web application for college (Servlets, not with Spring). To be honest, I could develop a simple CRUD application easily and quickly and I'd probably get decent marks but I want a challange and to learn new skills. I have an idea for an application that would require a level of data analysis that I have previously not done, possibly involving the graph data structure. I am looking for assistence in pointing me in the right direction. I am not looking for exact code to be provided for me, but rather help with choosing the right methodology / data structures / libraries. Once I know the theory, I can then go ahead and write the actual code itself. I'd rather not put the spec of my application on this forum publically , so I would be very grateful if someone could provide this help via PM. If anyone is willing to provide this guidance with choosing the right methodology (perferably with experience with complex data analysis / AI), please PM me and I'll send you a description of the data analysis I want to do. Cheers (I looked at the charter before posting this and I couldn't see anything prohibiting seeking help via PM. I hope this is ok)
Answering/Discussing a Question 1. Keep all answers and suggestions on the thread. Asking users to pm you is not allowed. This is so anybody who has a similar problem in the future can view the solution suggested.
stevenmu wrote: » I know you said you wanted a challenge, but you've basically picked one of the hardest problems known to computer science What you've got is basically a variation on the Travelling salesman problem. I don't have any specific advice implementing a solution in Java, but what I would suggest is that you spend a little time researching the TSP and seeing what approaches to it match your interests, it is commonly represented as a graph problem for e.g. Coming up with a novel solution is probably beyond what you want to do for the moment, but you should be able to find some example solutions that you can then implement the code for yourself.
SimonTemplar wrote: » Great. I like a challange though. I am aware of the TSP and I'd probably be able to implement it with enough research. Any ideas how I would incorporate the weighting if there isn't sufficient time to visit all locations?
ChRoMe wrote: » Have a look at the "A Star" pathfinding algo
fergalr wrote: » No; don't - its not really relevant here, its about finding the single source shortest path in a graph.
ChRoMe wrote: » I'm not suggesting it would work out of the box, with a decent heuristic it would be a reasonable place to start?
I would like the application to calculate the optimum schedule to visit each location while staying at that location for the required duration as specified by the value in the db.
fergalr wrote: » No, its not really applicable. [lots of good stuff]
SimonTemplar wrote: » Thanks all for your replies, especially fergalr. Your suggestion of merging the distance and duration properties into a single weight is very interesting.
SimonTemplar wrote: » Would Google Maps API be the best place to get the time between two GPS points in order to convert distances to times, or would I do that calc myself based on a nominal distance per minute formula?
SimonTemplar wrote: » I probably won't start developing this in earnest for a few weeks but I'll come back if I run into any issues. Thanks again.