Branching factor

From Wikipedia, the free encyclopedia

In computing, tree data structures, and game theory, the branching factor is the number of children of each node. If this value is not uniform, an average branching factor can be calculated.

For example, in chess, if we consider a "node" to be a legal position, the average branching factor has been said to be about 35. This means that at each move, on average, a player has about 35 legal moves, and so, for each legal position (or "node") there are, on average, 35 positions that can follow (when a move is made).

An exhaustive brute-force search of the tree (i.e. by following every branch at every node) usually becomes computationally more expensive the higher the branching factor, due to the exponentially increasing number of nodes (combinatorial explosion). For example, if the branching factor is 10, then there will be 10 nodes one level from the current position, 100 nodes two levels down, 1000 three levels down, and so on. The higher the branching factor, the faster this "explosion" occurs.

[edit] See also