I've been thinking about the concept recently.
I think eventually this will be a direction of the artifical intelligence of future games, at least to make the artifical intelligence really smart. Basically, the concept is, the artificial intelligence, at first its really stupid - or uses predefined rules, like today. (Simple commands like, walk and shoot.)
Then it will gain experience, and adapt. For example, it will realise the concept of investment - take for example an energy bank in SMAC. It supposed to enhance your economy, but the AI doesn't feel like hurrying it since it would defeat the purpose of gaining credits, right? Then he realises, that after a few turns, it will pay for itself. That you spend a bit, you gain a bit more.
Then it learns that placing it in a well developed base is a good idea. It writes this to its rulebook. From now on, it will realise this fact. It will then also realise that sacrificing a bit of growth to divert to minerals for that tree farm, will eventually lead to more nutrients from forests - more growth. Then it finds that for example, the right and wrong time to do this, and adjusts accordingly.
After a while, you have decent AI. Not just programming hundreds of rules which some tactics you might miss out, it learns. Then it learns how to attack in flanks. How to attack in surprise. How to do other things.
Then also another possibility: you agreed, the rules are distributed to some central server, and shared. You also receive rules for the AI from somewhere else, enhancing it further. Then it might get really personal - it realises your playing style. "From how you move your mind worms, my algorithms say you must be Player So and So. You always liked the Weather Paradigm over the HGP - that building of the HGP is a decoy!"
Perhaps first it will appear in chess games, ie. how to beat certain openings, especially in Fischer random chess.
Or, the best is making it integrated. It will realise principles in one game, and apply to the other. This can be helped with one standard protocol: one game will use the same AI protocol as another, perhaps. Just as we all probably use TCP/IP to surf the internet. Of course, this is another big step. How to realise that (and discern) that the game you just played has different keys, and that (say its an FPS) that since you are immune as a tank, to bullets - you should slaughter all non anti-tank infantry, and either take out ASAP (or avoid) anti-tank stuff, like mines and whatnot.
Then you switch to a RTS style game. Your heavy cavalry are virtually immune to standard infantry, save for some counter-unit. Same principle, different scenario. The trick is getting the AI to recognise it, and know how to apply it. (It will not help it when its a tank and searches for pikemen!) Discernment, again...
I think it will be more of a program running in the background which does all this polymorphic computation, while the games just feed it back info and asks what should it do. (As well as asking your keyboard whether someone typed A and therefore the character should move left).
Of course, making such an effort open source will have distinct advantages, rather than if it was proprietary...although I'm not sure how many people have this idea, but if it does, it will probably appear under the GPL.
Well all this is speculation of course. But perhaps we'll see it in ten or fifteen years or so. Actually I had an idea to do it now, because I was writing a Weiqi style game (but with hexagons and four players, complete with diplomacy - if enemy pieces, even of different colours, surround all six sides of one piece, that piece is gone. Of course, one might declare he's temporarily friendly and therefore will not cut off "life support" ) and because I thought if I was going to write an AI from scratch, I might as well try now.
I think eventually this will be a direction of the artifical intelligence of future games, at least to make the artifical intelligence really smart. Basically, the concept is, the artificial intelligence, at first its really stupid - or uses predefined rules, like today. (Simple commands like, walk and shoot.)
Then it will gain experience, and adapt. For example, it will realise the concept of investment - take for example an energy bank in SMAC. It supposed to enhance your economy, but the AI doesn't feel like hurrying it since it would defeat the purpose of gaining credits, right? Then he realises, that after a few turns, it will pay for itself. That you spend a bit, you gain a bit more.
Then it learns that placing it in a well developed base is a good idea. It writes this to its rulebook. From now on, it will realise this fact. It will then also realise that sacrificing a bit of growth to divert to minerals for that tree farm, will eventually lead to more nutrients from forests - more growth. Then it finds that for example, the right and wrong time to do this, and adjusts accordingly.
After a while, you have decent AI. Not just programming hundreds of rules which some tactics you might miss out, it learns. Then it learns how to attack in flanks. How to attack in surprise. How to do other things.
Then also another possibility: you agreed, the rules are distributed to some central server, and shared. You also receive rules for the AI from somewhere else, enhancing it further. Then it might get really personal - it realises your playing style. "From how you move your mind worms, my algorithms say you must be Player So and So. You always liked the Weather Paradigm over the HGP - that building of the HGP is a decoy!"
Perhaps first it will appear in chess games, ie. how to beat certain openings, especially in Fischer random chess.
Or, the best is making it integrated. It will realise principles in one game, and apply to the other. This can be helped with one standard protocol: one game will use the same AI protocol as another, perhaps. Just as we all probably use TCP/IP to surf the internet. Of course, this is another big step. How to realise that (and discern) that the game you just played has different keys, and that (say its an FPS) that since you are immune as a tank, to bullets - you should slaughter all non anti-tank infantry, and either take out ASAP (or avoid) anti-tank stuff, like mines and whatnot.
Then you switch to a RTS style game. Your heavy cavalry are virtually immune to standard infantry, save for some counter-unit. Same principle, different scenario. The trick is getting the AI to recognise it, and know how to apply it. (It will not help it when its a tank and searches for pikemen!) Discernment, again...
I think it will be more of a program running in the background which does all this polymorphic computation, while the games just feed it back info and asks what should it do. (As well as asking your keyboard whether someone typed A and therefore the character should move left).
Of course, making such an effort open source will have distinct advantages, rather than if it was proprietary...although I'm not sure how many people have this idea, but if it does, it will probably appear under the GPL.
Well all this is speculation of course. But perhaps we'll see it in ten or fifteen years or so. Actually I had an idea to do it now, because I was writing a Weiqi style game (but with hexagons and four players, complete with diplomacy - if enemy pieces, even of different colours, surround all six sides of one piece, that piece is gone. Of course, one might declare he's temporarily friendly and therefore will not cut off "life support" ) and because I thought if I was going to write an AI from scratch, I might as well try now.
Comment