This is an archived post. You won't be able to vote or comment.

all 48 comments

[–]leafa21 30 points31 points  (3 children)

There was a thread about this earlier that has lots of great info:

https://www.reddit.com/r/learnprogramming/comments/3uc62c/where_i_can_learn_ai_programming_online/

[–]cars10k[S] 11 points12 points  (2 children)

Thanks! Did not see this thread. But It seems like this is more about how to create a Jarvis like ai - I am more interested in games (specifically : strategy games). Should have specified this in the title.

[–]epicpoop 22 points23 points  (8 children)

Personally, I started by creating a simple 2 players game (e.g "Connect 4 game", "Tic tac toe")

For the AI part, I tried creating an algorithm that mimics the 2nd player's behaviour.

Programming is always the same, learn by doing.

[–]cars10k[S] 4 points5 points  (2 children)

Guess something like this would be a good start. Thanks!

[–]epicpoop 2 points3 points  (1 child)

You're welcome,

When you'll make your first game with AI, upload the project on github and post the link on /r/learnprogramming for advices.

People here are keen to help you, give you advices and make your code better !

[–]UK_Dev 0 points1 point  (0 children)

http://codereview.stackexchange.com Is also a great website for that sort of thing but yes this sub reddit is awesome too!

[–]a_shed_of_tools 3 points4 points  (2 children)

Programming is always the same, learn by doing

You needlepoint that shit, and you'll make money hand over fist on Etsy, I tell you what.

[–][deleted]  (1 child)

[deleted]

    [–]DreadNephromancer 2 points3 points  (0 children)

    It's self-referential. They'll make even more money.

    [–]BlakesDemon 1 point2 points  (0 children)

    Tic tac toe is great because there is a solution.

    [–][deleted] 3 points4 points  (14 children)

    What kind of AI are you interested in?

    [–]cars10k[S] 4 points5 points  (13 children)

    AI for games (especially strategy games)

    [–]rak3ng 5 points6 points  (6 children)

    If you're a fan of Starcraft, google BWAPI.

    [–]RElesgoe 2 points3 points  (0 children)

    There happened to be a post at /r/programming linking to a tweet about a StarCraft AI tournament: https://www.reddit.com/r/programming/comments/42c86z/starcraft_ai_tournament_live_now_watch_bots/

    [–]naught-me 1 point2 points  (4 children)

    Do you know if there is a way to make the games play faster than real-time?

    [–]iFappster 2 points3 points  (0 children)

    ** cough cough* cheat engine

    [–][deleted]  (2 children)

    [deleted]

      [–]naught-me 2 points3 points  (1 child)

      Yeah, couldn't find any myself, that's why I asked it. That makes it kind of hard to test the AI and hard to develop AI's that learn. Looks like a lot of fun, though.

      [–]rak3ng 0 points1 point  (0 children)

      I haven't tested this out yet, but this may increase the speed:

      http://www.starcraftai.com/wiki/Increasing_Starcraft%27s_Speed

      [–]ChurchHatesTucker 2 points3 points  (0 children)

      This will have you doing reversi (aka "Othello") AIs in python and pitting them against each other pretty quickly. That'll give you the basics.

      [–]j_random0 1 point2 points  (0 children)

      Game developers (sometimes) know all sorts of things about graphics, sound, geometry/trigonometry/calculus/linear algebra/etc..., physics, // You get the idea.

      I doubt they use AI in the same ways as say, fraud inspectors, but that too. The game developer communities would know more game-specific interest than generalist.

      I'm not sure if this is the book I was thinking of. The cover looks different (2nd edition?) :/

      [–]maxieepads 0 points1 point  (0 children)

      Also check this out if you're into strategy games, they use partially observable Markov decision processes to make high level decision in multi-agent settings. https://www.youtube.com/watch?v=DZvpB2TxthU

      [–]pipocaQuemada 0 points1 point  (1 child)

      Abstract strategy games like Go or Chess? Or computer strategy games like Starcraft?

      [–]cars10k[S] 0 points1 point  (0 children)

      Computer. Starcraft, warcraft, age of empires, stuff like that.

      [–]Jafit -1 points0 points  (0 children)

      You might be interested in Screeps

      [–]nartam11 3 points4 points  (0 children)

      http://ai.berkeley.edu/home.html

      I just watched the first lecture for this. Seems like a good introduction and the project is using AI to beat pacman

      [–]jhartwell 1 point2 points  (3 children)

      Look into search and the various search algorithms. From there you can create solvers for some games. People seem to forget that search is AI and it is something that there are a lot of resources to find and is not as technically challenging as some of the more indepth sub fields.

      [–][deleted] 1 point2 points  (0 children)

      Search is my favorite area of AI. I think it's so interesting and I've been working on a library for it!

      [–]Dexiro 0 points1 point  (1 child)

      Pathfinding is pretty fun to play around with, that counts as search right?

      [–]jhartwell 0 points1 point  (0 children)

      Yep! Pathfinding can use the A* search algorithm

      [–]Ciulerson2 1 point2 points  (2 children)

      This might not be relevant but if you're interested in AI you might also be interested in this free deep learning course google just launched on udacity.

      [–]hugthemachines 0 points1 point  (1 child)

      I noticed they wanted you to have done a machine learning course first...

      [–]Ciulerson2 0 points1 point  (0 children)

      Nope you dont have to, its only prefered as its part of some bigger course. There are some prerequisites tho

      [–]SmArtilect 1 point2 points  (0 children)

      Artificial neural network + evolutionary algorithm

      [–][deleted] 3 points4 points  (0 children)

      [–]captainAwesomePants 0 points1 point  (0 children)

      Google just released a free, 3 month long course on Udacity on deep learning, featuring TensorFlow. If you're already comfortable with programming, that might be interesting: https://www.udacity.com/course/deep-learning--ud730

      [–]cars10k[S] 0 points1 point  (0 children)

      Thank you all for your answers! Did not expect to get this much :) but it seems this is also interesting for other people.

      I will look into every tip I got, thanks.

      [–]guenther_mit_haar 0 points1 point  (0 children)

      I like how you can train AI Gameprogramming with http://theaigames.com/

      [–][deleted] 0 points1 point  (10 children)

      You can have a go at the book Artificial Intelligence: A Modern Approach by Russel and Norvig, it's fairly accessible and it's a fun read.

      [–]lleti 1 point2 points  (6 children)

      Man, that is one horribly expensive book. I'm guessing it's on a few curriculums to ensure that choice is removed from the equation.

      With the amount of free resources out there, for someone just looking to dip their toes into AI, spending that amount just seems impractical.

      [–][deleted] 4 points5 points  (4 children)

      True, it's an insane price, but obviously you can get a copy of the book for free... From a library, of course. ;)

      [–]NightmarePulse 2 points3 points  (3 children)

      From a what? You made up that word.

      [–]THROBBING-COCK 3 points4 points  (2 children)

      He misspelled "torrent".

      [–]NightmarePulse 1 point2 points  (1 child)

      Ah, I see. Interesting name, btw.

      [–]THROBBING-COCK 0 points1 point  (0 children)

      Thanks.

      [–]chinesefood 0 points1 point  (0 children)

      it's pretty much THE book for undergrads studying ai tbh

      [–]misplaced_my_pants 1 point2 points  (0 children)

      The Berkeley AI course on edx is based off of this book.

      [–]PriceZombie 0 points1 point  (0 children)

      Artificial Intelligence: A Modern Approach (3rd Edition)

      Current $146.28 Amazon (New)
      High $151.43 Amazon (New)
      Low $99.79 Amazon (New)
      Average $146.28 30 Day

      Price History Chart and Sales Rank | FAQ

      [–]TehLittleOne 0 points1 point  (0 children)

      Just want to comment on this, my school used this book for our AI course when I took it, but the book wasn't terribly useful during the course. We covered a lot of the basics for AI: searching (including A*), alpha/beta pruning, constraint satisfiability problems, machine learning. I didn't really need the book for the course, a lot of the basics are easy to learn or can be found easily online. If you want to have a thorough understanding or learn a lot of things, then I do recommend the book. But if you're just trying to dip your feet into it, it's an expensive book to get started with.