Sunday, 4 December 2016

Week 5 [5.12-11.12.2016] TorchCraft - Deep Learning StarCraft

Hi,
I know some of you consider AI a potential humanity destroyer, but I'd like to share an article on it.
Recently I came across an article on learning Artificial Neural Networks (NN) to play real-time strategy game (RTS). Obviously NNs playing computer games is not a recent invention, but as far as I know until recent NNs were playing simple arcade games. According to the article a NN using Deep Reinforced Learning is able to achieve nearly a 100% win rate.
I wonder what is your opinion on artificial intelligence in games, both built-in (like bots or NPCs) and AI playing games.
What is also interesting (and what I did not realize) is that games like StarCraft provide API to integrate with it. I searched for other games providing an API and found that very few do so. Do you know any other RTS with API?
Please take a quick look at the article on arxiv and a poster and share your thoughts.
Best,
Mikolaj

21 comments:

  1. I don’t know to much about Artificial Neural Networks and I never heard about StarCraft before, but I can share my opinion on bots. I know that many game providers don’t allow to use bots and any AI algorithms, because as a human being you will never win with machine and especially with something working automatically. I really don’t like when people are using bots in games, because I like the experience of gaming and it is nice to beat some people, but games where machines are playing with machines does not have much sense for me. Maybe it is good to use NN for testing. I don’t know any other RTS with API.

    ReplyDelete
  2. I think that an idea of artificial intelligence in games is very old. I remember doing some course online about artificial intelligence where I had to implement some simple algorithms in Pacman. Artificial intelligence was used there to track Pacman by ghosts and inversely to run from ghost by Pacman. It was something simple like but worked and was interesting to implement. I don't play games so I am not sure if Pacman can be considered as any kind of RTS?

    Also, an idea of learning artificial intelligence to play game is not new. Let's take for example famous Go. Maybe it is not computer game but everyone heard about it. It turns out that AI can outperform the best player in this game.
    I think that despite this ideas appeared many years ago, it is interesting topic and many new things can be done.

    ReplyDelete
  3. I'm afraid I'm not an expert in this field. I'm not a fan of computer games anymore, mainly due to the fact that I don't have time for this kind of entertainment.Nevertheless, one thing I can be sure of is that playing with or against artificial intelligence is no fun. Just like Cezary, I like the experience of playing a game with people, as this can be considered a challenge. Playing against a computer is not challenging at all, as it's clear from the very beginning that it is either programmed to win or lose. With computers you cannot expect the unexpected. People are unpredictable, make irrational decisions that with time get rational.And though articial intelligence is designed to immitate such behaviour, for the time being it hasn't fulfilled the expectations of its creators. It's still far behind the human brain. That is why for the time being we can still find playing games with other people more challenging and satisfying than playing with a machine.

    ReplyDelete
  4. Thanks for this material. I reckon this one interesting because I like playing all games like StarCraft, Call od Duty or the Witcher. Of course best playing is via network with a real humans but sometimes it is not possible. Therefore idea to involve AI in a such kinds of games is very good and adequate. And safe for humans despite use AI to build other AI which can destroy our civilization.

    ReplyDelete
  5. Personally, I don't find AI playing games interesting.
    However, I know what's the next step: business simulations. If we are able to create AI able to find winning strategy in sufficiently complex game environment, we can just as well use these kind of robots to solve business "games". Possibly it means another reduction in a job market - if machines could be successful in finding winning business strategy, we don't need top management. Hurray!

    ReplyDelete
    Replies
    1. To be honest that wouldn't be so bad. In many instances computers might be more successful in providing accurate business strategies than top managers. They cannot be influenced and they would be unbiased. But this would work only if data introduced into computer is impartial and is not modified in order to obtain a particular end result.

      Delete
  6. Unfortunately I know of no other RTS with API than those referred to in the article. Basically I do not play computer games so it is evidently not my area. Interestingly I’m impressed of the results of experiments – presented on the poster. Deep Q-Networks seem to be suitable for such issues. In these researches and such frameworks as Torch I see a huge potential which can be used not only in games but also for example in establishing models that are difficult to be concluded in terms of behavior of black holes.

    ReplyDelete
  7. An idea of using artificial neural networks to playing games is not new. Some time ago I heard about Q-Networks. I heard about previous idea of challenging bots in diffrent kind of games. I gladly loved to hear about Google scripts about arcade game Pacman. An idea about using diffrent AI approaches appears almost at the computer games foundation. I regret that I forsake to monitor this entertaining computer games division.

    ReplyDelete
  8. I haven't seen any other RTS with an API. However, I've read about AI playing Super Mario https://www.engadget.com/2015/06/17/super-mario-world-self-learning-ai/
    To be honest, even though the idea is nice, I can hardly find any scientific reason to do this. This is something I would have done in my free time, just because I can :)

    ReplyDelete
  9. Thank you for this article. unfortunately, I'didnt know about that area so it's hard for me to speak. I do not know any other RTS with API

    ReplyDelete
  10. It's a great approach. It's one of those quasi-obvious AI schemes which people have been kicking around for years but typically haven't wanted to expend the CPU cycles on in major projects. I remember an article around 1997 wherein they asked game development studios to explain how games were going to change in the next couple of decades, and one of the chief topics that kept coming up was more natural AI (less rigidly rule-based) which could learn by observing outcomes. Modeling AI on military organization is fairly clever for the same reason that military organization (at least in battle) is clever - the individual soldier needs little autonomy or smarts, just so long as everybody further up the chain from them is at least incrementally smarter, if less capable in direct conflict.The most notable use of a system like this in recent years has to be the Director in Left 4 Dead.

    ReplyDelete
  11. Hey, it obviously depends of the complexity of a game. Most RTS games (especially in campaign mode) posses some form of AI to control and manage the opposing team. Some use so called bots which are basically AI players in multiplayer games. Most of the times you can also select the difficulty of such a game which usually involves creating more obstacles or gaining fewer resources for yourself or increasing beneficial aspects for the bot. This is because AI is rarely programmed really well and it would involve too much work which game designers prefer to use on other components of the game (i.e. graphics). There are a lot of games with APIs however most use them to display statistics or other information, rather than control its flow.

    ReplyDelete
  12. Thank you for an interesting article. I'm not a fan of computer games. I do not know much on this subject. This is not my area of studies or interests. But I see a potential in the proposed solutions. This is not a new topic because a long time ago researchers searched AL applications in computer games. It is an open area of research.

    ReplyDelete
  13. Thanks for sharing the article. I'm not big fun of gaming and playing mutliplayer games using bots or NN is killing the idea of entertainment for all the players.
    Real Time Strategies are pretty time consuming so I can understand the need of supporting software altho I still think the game should be fun for the player and helping yourself with the software is killing the fun.
    I don't really know any games with API.

    ReplyDelete
  14. Such tool are fantastic, every RTS should provide such API. RTS games allows to check many different concepts of AI. But we need to ask a question. Even if you create a bot that will have 100% win rate, what does it mean ? Does it mean that bot is "smarter" then we are ? Does it mean that bot understands what is he doing ? I don't want to use word "intelligence" because I don't believe that those two things are related. Fact that we can create an algorithm that will beat us in a RTS game has no relation with intelligence in my opinion

    ReplyDelete
  15. I wonder what is your opinion on artificial intelligence in games, both built-in (like bots or NPCs) and AI playing games.

    Hello, the best opinion about bots in games is Alpha Go that won with TOP word lists player in fair competition. We are looking best options based on our experience while we are playing games. Contemporary neural networks deals with this kind of problem very well.

    What is also interesting (and what I did not realise) is that games like StarCraft provide API to integrate with it. I searched for other games providing an API and found that very few do so.

    It is nice to hear that. I will test this API for sure :). I have not played this game before but I will check it.

    Do you know any other RTS with API?

    No I don’t. RTS game does not provide API from security purposes. I do not like play vs bots in online games. API can be source of abuses. Simple bots which without any sophisticated engines can help other players and destroy the playing pleasure.

    ReplyDelete
  16. I am not a huge fan of strategy games (or any video games on that matter.. ) so I am not informed about any other RTS with API.
    For classical games, there are definitely some great advances of AI (chess, go) which make use of high computational power to analyze all possible strategies. There is definitely still a lot of potential of training neural networks to play games with reinforced machine learning. I am quite positive that in the next few years we should see more games lie Starcraft being played by AI.

    ReplyDelete
  17. Hi Mikołaj! Interesting topic. I always had an impression that neural networks are kind of slow structures, so I am a bit surprised that they are able to play online in such advanced game as StarCraft. Actually I do not have any knowlede about bots and AI in online games, so it is difficult to say what I think about them. It might be interesting to play against the AI instead of other human, from the other side it may occur that AI can easily outperform any "real" gamer actions. For sure it is a topic worth to develop.

    ReplyDelete
  18. Unfortunately to this article I am not a gamer. but definitely using AI in gaming industry can make games more unpredictable based on player history. And definitely You can gather so much data. Results of these analysis can be surprising.

    ReplyDelete
  19. Such tool are fantastic, every RTS should provide such API. RTS games allows to check many different concepts of AI. But we need to ask a question. Even if you create a bot that will have 100% win rate, what does it mean ? Does it mean that bot is "smarter" then we are ?
    goldenslot
    gclub online

    ReplyDelete
  20. Thanks for sharing your thoughts. I truly appreciate your efforts and I will be waiting for your further post thank you once again. Nice article and pleasant arguments commented here, I am genuinely enjoying by these. If you have time you can check Apple Gift Card

    ReplyDelete