You are viewing a single comment's thread from:

RE: Design challenge: An AI for CEO

in CEO Champion's Gate4 years ago

I have only very basic coding experience, but I think the best way to design an AI for CEO would be to create an index of different types of attacks/moves, and then a separate index of all of the units. Since it would only need images of what attacks/moves each unit has and only a brief understanding of what each move does this wouldn't take up too many lines of code even considering how many units/moves we do have. I would then also use some kind of capturing software that would allow the AI to look at the whole screen each turn by taking a picture of the board (This is assuming that you're not talking about the AI that already exists, and ofc the image would be deleted later to save space). After taking a picture of the board I would have it scan all the units quickly, preferably it would send them to 3 or 4 different computers where each one would be in charge of scanning one section of the board, then they'd all reply back telling the AI which moves are possible by the enemy and the AI. This amount would probably not take that much coding as it is already done on a slightly smaller scale for many other games including other chess variants.
Next for deciding its move I'd preferably want it to run a short simulation where it makes a move and then it decides what move it thinks the opponent is going to make and looks to see if it is in a better position then it was before and if not runs a separate simulation for other moves. I would understand if this isn't feasible though as it would require quite a bit of computing power to do quickly.
As far as giving the AI a base to work with it depends on if you want the AI to learn or not. If you don't want the AI to learn just tell it to make sure it doesn't run out of morale and upload a collection of strategies to it. If you do want it to learn tell it to not run out of Morale and give it a good chunk for memory. It should use that memory to store the past 5 defeats and a bar graph showing how many times it has won and lost to each army. There are two ways it can learn from here:

  1. The more strenuous way is to look at that data yourself and input information that will help it avoid future mistakes. This could take a long time, but it means less coding at the start
  2. The way that might need a bit of a supercomputer is to have it track patterns in its enemies movements that it lost too, and then store those patterns and strategies as its own. This by itself isn't too much extra, but the key thing for true growth is for it to use an algorithm as it plays to test each individual strategy it sees and rate them based on how well they work on the toughest players/computers/armies so that it can build upon the strategies themselves.
Sort:  

I don't know if what I said was already said, I didn't read the other response so if it's just a rephrasing of what Kristiansen said then I'm sorry it wasn't intentional.

 4 years ago Reveal Comment