Filip Höfer chess software has a built-in chess engine (i.e., the artificial intelligence providing computer's and coach's moves). Chess 2020 and newer products also have the capability to switch from this built-in engine to an external one. For this purpose, the software implements the UCI standard. In practice, the user goes to the Level menu, selects Computer or Coach and then UCI engine. In the UCI engine dialog, it is necessary to point to an executable file (*.exe) of the desired external engine. Here are some engines that have been tested with Filip Höfer chess software and can be freely downloaded:
Download Stockfish — chess engine based on a traditional algorithm known as minimax search.
Leela Chess Zero
Download Lc0 — chess engine based on a neural network.
Computer-Chess Wiki — engine download list, look for UCI in the Protocol column. These engines are of varying quality and degree of development, but some of them may be worth experimenting with.
In the UCI engine dialog, it is possible to configure Computation depth and Computation time. By default, an UCI engine is on a mission to compute the perfect move. For most positions, this would take an extreme amount of time. Therefore, there are options to limit the engine by time, by depth, or both. As soon as one of the set limits is reached, the engine stops and returns the best move it has been able to compute until that point.
Rough estimates regarding the depth:
Depth 1: Novice
Depth 5: Strong player
Depth 10: Champion
Depth 20+: Ultimate strength
The time in milliseconds actually also determines the depth. But for a fixed time, the depth may vary given the speed of the machine and the complexity of the chess position. On a medium-performance laptop, it takes about 20 seconds to get to depth 22 from the initial position. The depth-time relationship is actually exponential, so even one second should be enough to get very good results, perhaps around depth 10 or so.
If a strong coach is what you are after, set up Stockfish with a fixed time and no depth limit. Anything between one second and a couple of minutes will give you decent results, the tradeoff being between speed and accuracy. If you prefer a setting that yields the same results across different machines, go for a depth limit.
Some engines are provided in multiple versions to accommodate for different hardware. Typically, these versions are sorted from the least compatible (but fastest) to the most compatible (but slowest). You can go down the list and use the first binary that works.