I am interested in hiring a software developer but I do not know what should I be asking for when I post the job.

My project consists in developing a software that can analyze an edge-matching puzzle game of my invention to produce as many possible solutions numbered, and also creating an online version of my game with different levels of difficulty. The possible solutions to my game could be exponentially high.

I’ve heard that Java should be language and that to get the solutions the program should run simulations.

Can you please give me your suggestions?

Find several contractors and get quotes in person rather than throw out a job listing. They'll be able to help you nail down exactly what needs to be done in the process of writing up a quote and you'll likely be happier.

I’ve heard that Java should be language and that to get the solutions the program should run simulations.

Java could be a way to go, or Flash, or Silverlight, or HTML5. Depends on how compatible and future thinking you wish to go.

As for solutions, it depends on the problem. There may be an easy way to solve your puzzle that you haven't (or no one has) thought of yet.