0

Could I please have some ideas for a project utilising Heuristics

Thankyou in advance for your help

minimatt
  • 59
  • 1
  • 5

2 Answers2

6

At first you need to make yourself clear what a heuristic is. See for example wikipedia

Heuristic ( /hjʉˈrɪstɨk/; or /hyoo-ris-tik/; Greek: "Εὑρίσκω", "find" or "discover") refers to experience-based techniques for problem solving, learning, and discovery.

Moreover what means heuristic in computer science:

In computer science, a heuristic is a technique designed for solving a problem quicker when classic methods are too slow, or for finding an approximate solution when classic methods fail to find any exact solution...

This means it has nothing to do with a programming language. Ok, let us go step by step:

1.) At first you have a problem.

2.) Then you have to think for a solution of this problem. Maybe there exists a fast and exact algorithm. Then there is no need to use a heuristic. If there is no algorithm or any known algorithm is somehow bad (for example in the running time) you can think about to use a heuristic to solve.

2.) And then at the end you can think about which programming language is the most appropriate to implement the solution for your problem.

Of course it depends on you and your taste too and also on the problem you want to solve. Python and/or VB.NET are great choices for a big classes of problems.

David J
  • 1,554
  • 9
  • 15
  • do you have any suggestions for a project? – minimatt Oct 30 '12 at 08:27
  • Do you know the "Travelling salesmen problem"? Its very important example in computer science. And it makes sense to use heuristic methods for solving. Take a look [here](http://en.wikipedia.org/wiki/Travelling_salesman_problem). – David J Oct 30 '12 at 08:51
  • Thanks for that suggestion, it looks quite interesting :) – minimatt Oct 30 '12 at 09:04
0

Heuristic can roughly be tranlated into 'rule of thumb'

It's not a programming-specific concept.

Matias Rasmussen
  • 791
  • 1
  • 10
  • 16
  • I’m not sure what this contributes here. Of course if you translate “heuristic” as “rule of thumb” it’s not even remotely programming-specific. But that translation is wrong, it has a very specific meaning and while that is not *specific* to programming, it’s certainly highly related (via algorithms). – Konrad Rudolph Oct 30 '12 at 08:14