I am not new to code, but I am new to AI. I really like this game and the whole concept in general,
What is the most common/friendliest AI to start working with. I am familiar with python, but mostly for back-end development. Thanks guys.
I think this is what you’re looking for. Most any algo that you see is created by simply putting high level ideas about the game into code. There are a few talented people that go into the machine learning side of things, but the complexity of the game makes it quite a feat to pull off. Certainly any high ranking algo you see as of now has a strategy written entirely by hand (with a few exceptions of course).
A good place to start is to invent a simple strategy you want your algo to pull off, then use the start algo as a basis for implementing it. Even if you decide to hop into the deep end of things and try machine learning, it’ll require a good bit of game knowledge to get things running, so making a couple of simple algos is certainly a necessary start.
There are some really good libraries for ML and data science in python, I would recommend looking at ones like tensorflow/keras and scikit-learn. Tensorflow is specifically made for machine learning implementations (keras is a high level version of tensorflow) and scikit-learn tackles data-science much more broadly. Both of these (and any other similar library I’m aware of) use and interact with numpy and matplotlib, so you should be familiar with those as well when getting started.
If you just look up tutorials, you’ll find tons and tons of stuff for getting started with this stuff. In terminal, I find the larger difficulty is not so much setting up a model (although getting a good working one can be challenging), but rather being able to use the model you create in the terminal environment since you cannot use these modules by default in the environment.
My solution around this was to train a model using tensorflow and then export the model in a format I could save locally. I then had to write my own script to do forward-propagation on the network I had created. This is, of course, simplified, since I had to do several other things like create a C extension to implement matrix multiplication, which is something numpy (and these other libraries) have built in. I talk more about this my post here.
Depending on your experience what I described could be: “Wow, a piece of cake!”, or like me, ends up being a mostly new learning process with a lot of scratching your head :). If you want to get started though, I would recommend doing some basic tutorials outside of terminal (like the classic MNIST) and then try working with terminal.