BearMan
One More Turn...
warpstorm said:To have a non-cheating decent AI, yes. To use a game tree type of approach, no. I'd use a rules based approach.
Agree

But that is also a more human way of thinking, wouldn't you say ? =)
warpstorm said:To have a non-cheating decent AI, yes. To use a game tree type of approach, no. I'd use a rules based approach.
NP300 said:You can't compare chess to civ. Civ is much more complex than chess. Chess has a board with a limited number of squares and a small number of playing pieces. The number of squares is always the same. The starting positions are always the same. And you cannot build more units (except when a pawn reaches the other end).
N3pomuk said:And saying that supercomputers are needed, just look at what a "super computer" was 20 years ago 100 mhz and 1024 kb of Ram thats what.
(yes I do understand that this is complicated and will take good time to implement but If you don't try you have already failed.)
The problem is the exponential grown of the tree-based methods. Chess is an 8x8 board with 32 pieces and looking only a few moves ahead there are already millions of positions to analyze. In Civ there are millions of possible positions looking only two moves ahead, and most players look 50-100 moves ahead.Abegweit said:I play Bridge. There is no computer bridge programme which is able to play at the level of a good club player - never mind at that of a world champion. A few years ago someone invented a Bridge programme which adopted the chess method (all previous programmes were rules-based) and it immediately began to play hands like an expert. Bridge programmes still suck at bidding, though. That takes judgement and today's computers simply do not have any.
Brain said:The problem is the exponential grown of the tree-based methods.
I have to stop you there because that's not true. You can make a decision tree on many moves as long as you consider all the possible combinations. In Civ that means that you would have to consider all the combinations of all unit moves and all other "moves" that the computer can make in a given turn. There are at least thousands at each turn. That's why I said that there are millions of possibilities looking only two moves ahead.Abegweit said:In Civ you may make hundreds of decisions on a single turn. Because of this, it is not possible to develop a decision tree which can even evaluate a single turn.
Well, looking at AI behaviour I'm pretty sure it does for low-level unit movement, but it considers each unit separately and only looks two or three moves ahead.Abegweit said:Unsurprisingly, the Civ AI does not use decision trees. It cannot because of the nature of the game. So naturally it's bad. Decision tree are at the heart of every game-playing programme that a computer plays well.
Vael said:Don't you think everyone would prefer a 'smart' AI over one which cheats? Even the programmers?
Two to the power of thousands is a lot more than millions. It would be nice to have the answer before the sun died.Brain said:I have to stop you there because that's not true. You can make a decision tree on many moves as long as you consider all the possible combinations. In Civ that means that you would have to consider all the combinations of all unit moves and all other "moves" that the computer can make in a given turn. There are at least thousands at each turn. That's why I said that there are millions of possibilities looking only two moves ahead.
This might well be true.Well, looking at AI behaviour I'm pretty sure it does for low-level unit movement, but it considers each unit separately and only looks two or three moves ahead.
It's not two to the power thousands. It's not like a binary decision tree. Every combination is a possible move. For every move there is a thousand more possibilities on the next move, etc. This is an exponential growth, not 2^n growth.Abegweit said:Two to the power of thousands is a lot more than millions. It would be nice to have the answer before the sun died.
Yeah, but in computer science 2^n is treated as a separate case from x^y.Abegweit said:Exponential growth is, by definition, growth according to some power curve.