Min-Max-Calculation (Backsolving for some)
Start from the End!
Behind the function „Min-Max-Calculation“ (which some people try to make sound sophisticated by calling it Backsolving) lays a very simple, but powerful idea. If you know for a given position that at least one move is leading to a won position the current position is already won. Now, if all end positions are evaluated (e.g. by a chess author or chess-engine) you can go backwards the whole variation till you reach the start position while you check for each position what the best possible result for the moving side is and save that information for each position. This approach and the automtatically position evaluation is called “Min-Max-Calculation” or “Backsolving”.
Example
Let’s assume that for a given position there exist two possible moves in your repertoire: Ne4 and Qg6. Ne4 leads to a position which is already evaluated as +- while Qg6 leads to an equal position. This means that already the current position is actually +-, because at least one move is leading to a +- variation which can be forced by you. The whole trick is now how Chess Position Trainer is going backwards through your sub-repertoire by starting from the end positions till it reaches the start position while it is updating the evaluations of all checked positions. For each position it is checking what the best possible result for the moving side is. This process is recursive.
If all end positions were evaluated before you startet the “Min-Max-Function” you will get a fully evaluated repertoire at the end though you only evaluated the end positions (or even better you let a chess-engine do the work by using thte EPD export and import)!
Using EPD-Export and -Import

The EPD export and import let you export only all end positions to analyze them with a specialized software. Afterwards you can easily import the position evaluations. This way you get quickly a repertoire where all end positions are already evaluated. This is the ideal precondition to use the “Min-Max-Calculation”.