# Why do iterative deepening search start from the root each iteration in the context of the minmax-algorithm?

Consider the graph below for an understanding on how IDS work.

Now my question is:

why do IDS start at the root every iteration, why not start at the previously searched depth in the context of minmax?

What is the intuition behind it? Intuitively, at first it certainly makes sense what you suggest in terms of computation time, i.e. it would avoid re-doing work we've already done (if it were practical in terms of memory usage). However, if you analyse exactly how much you would save, it turns out not to be much at all. Due to the exponential growth of the size of the search tree as depth increases, it is usually the case that the computation effort for the next level ($$d + 1$$) is much bigger than the computation effort already done for all previous depth levels ($$1, 2, 3, \dots, d$$) put together. So, while in theory we're wasting some time re-doing work we've already done, in practice it actually rarely hurts.
I could be mistaken since I don't know the source of the image you have provided, but that image appears to be showing how the tree is built, not how it is searched. Even so, when a balanced tree of the sort you have illustrated is searched, it will start with the root node, though in a search the maximum number of nodes traversed will be minimized and all operations (like min or max) will be performed in $$O(h)$$ where $$h$$ is the height of the tree.