Results 1 to 10 of 34

Thread: New ideas for AI in games?

Hybrid View

Previous Post Previous Post   Next Post Next Post
  1. #1
    Quote Originally Posted by Ingemar View Post
    There are some complications, and you hint a bit about some of them: A common, portable interface has to be written if there isn't one already. And it has to be suitable for the problem.

    But the big complications are in setup and performance. I would say that performance is the biggest issue. If my client runs from my computer and connects to a common server, how do we know that the competition is fair? What if I get a different netlag than others? If the game is turn-based that is not quite as much a problem, except if the game gives up on a slow connection and ignores its commands because they are too late.
    Well, I imagine that whatever technique would be used (TCP, write/read ln...) the competition would run locally on a computer, which logs and possibly records the games. That means both server and clients. Ofcourse this add the restriction that all bots must be compilable on the same platform, but I don't know if that really is an issue. How likely is it to use platform dependent code in an AI for such a competition?

    Regardless of that, I also imagine, that it would be best to use a turn based game for such a compo. It should make it easier for people to program an ai if they don't have to consider making real-time actions. You can further add a time limit so your bot is only alowed to spend a maximum of lets say 1 second to calculate a move.
    You could also give a set of action points each turn which the bot can spend on actions so for instance movement costs 2 points and fire costs 5. If you are given 10 points each turn you can then for example move twice and then shoot.
    If you use a turn-based game you would also have to decide whether the turn shift between each player, or if all players make their moves simultaniously each turn.

    But it all depends on the game ofcourse and if there even is enough interest in such a competition? Would anyone really bother making a bot game if there is only two/three people who are interested in participating?
    Imagine I've written something clever here inspiring you to make something awesome. If that happens give me credits

  2. #2
    Crazy idea
    I was just looking at the Worms clone Hedgewars and noticed that it actually uses Free Pascal. It may be possible to hold an AI contest where we create bots for the game.
    Some benefits:We don't need to create a game. It's already made for us and in good working state.
    You'll be supporting an open-source game. If your AI is any good it may be inlcuded with the game.

    There would be some drawbacks like it is only FPC and may be a tad to advanced for a first AI challenge. Furthermore it may be too easy to make the perfect shot for an AI. At least I've experinced that the already existing AI can make much better shots than I can. But as I wrote before, this was just a crazy idea ignited by the fact that I just discovered the game uses Pascal amongst other languages.
    Imagine I've written something clever here inspiring you to make something awesome. If that happens give me credits

  3. #3
    Not crazy at all, I've commited some AI change a few years back. It took some time to grow accustomed to the code, of course, but it's doable.

  4. #4
    If not just the local country's programming contests i've mentioned earlier, but i also participated in Google's unofficial "Ants" AI contest with pascal, when it was still in beta. Site seems to be up still http://aichallenge.org/
    All these contests use console writeln/readln style. Google's Ants is specially different from other ones i did, in that there can be as many as 8 AI's playing in the same game. The game hoster does some automatically simulated games every now and then, and then posts statistics. But i'm not asking anyone to do competition as complicated as that Much less features still can make a good contest.

  5. #5
    I participated in the last google aichallenge too. The last version of my bot uses learning to take their decisions. Unfortunately the results of my bot was modest. I read the post-mortem of the winners and found no one using learning, only specialized the algorithms for that requirement.
    Learning is maybe the most interesting topic in AI, but in practice it can't beat an optimal algorithm...

  6. #6
    Quote Originally Posted by Rodrigo Robles View Post
    I participated in the last google aichallenge too. The last version of my bot uses learning to take their decisions. Unfortunately the results of my bot was modest. I read the post-mortem of the winners and found no one using learning, only specialized the algorithms for that requirement.
    Learning is maybe the most interesting topic in AI, but in practice it can't beat an optimal algorithm...
    Yeah, that's my experience as well. All these modern AI methods where the AI try to learn to play is pretty cool, but they'll rarely come near custom tailored AIs. Some of my teachers at the university runs the Mario AI Challenge which is focused on these more modern AI learning methods. However they failed to specify that in their first challenge so the winner was a relatively simple AI agent using A* to find the optimal path.

    There's a reason why commercial games use custom AIs'. It works and is often more simply to implement than learning methods. I do believe that learning methods will gain a greater importance in commercial game AI, but it will only be as part of custom AIs and in optimising parameters. An AI based purely on learning is probably just to hard to do.
    Imagine I've written something clever here inspiring you to make something awesome. If that happens give me credits

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •