The Infinite Analysis mode sees a number of major enhancements in Chess Assistant 8.1. This mode is generally fairly familiar to users of chess software, since it is usually the fastest way to get the opinion of the chess engine on a position. This new implementation is extremely powerful and has a great deal of flexibility.
Here we describe two major analysis functions - Analysis by Time and Level, and Background Analysis. The former allows you to specify, in a flexible way, the manner in which a game will be analyzed by the computer. The latter refers to a new method that can be used while manually analyzing a game. These two modes automatically analyze entire games, and no user intervention is necessary.
Main menu: Engines->Infinite analysis …
The previous version of Chess Assistant was limited to running two engines at once. Chess
Assistant 8.1 no longer has this limitation, and is capable of running as many
simultaneous engines as you want. You also can have certain engines analyze specific
moves, or exclude moves from analysis. Using an engine to show an opponent's threat is
also supported.
Analysis is displayed in up to two panels. Each panel can contain an arbitrary number of
engines providing analysis, and is controlled separately. So for instance, you can have
Tiger 15 running in one window in a k-best (i.e. the k-best variations are shown), while
running Shredder and a Winboard engine in another.
In the figure above, Tiger 15 and Nimzo 2000 running in top panel, Tiger 14.0 showing three best variations in lower panel. Tiger 14.0 is running on another networked computer. A perfect instructive example of implementing the infinite analysis may be found in a flash demo. Three other demos, dedicated to the annotating game procedures (Annotating the game Part I, Part II and Part III), also deal with the infinite analysis mode to some extent.
10.2. New Automatic Engine Analysis Options
10.2.1 Analysis by Level
Main menu: Engines->Game analysis->Select method using levels
Here, you can specify the how rigorously the program should analyze a game in the opening,
middle, and endgame phases. This type of analysis is best suited for instances when you
want the program to pay extra attention to certain phases of the game. Just adjust the
sliders in this window to the desired level of detail. In addition to the sliders, the
user also has the option of manually fine-tuning the different analysis modes (by clicking
on the "Advanced…" button).
Select the amount of attention you want paid to each phase in the game
10.2.2 Analysis by Time
The new Analysis by Time dialog
10.2.3 Analysis Options Common to Both Modes
10.3. Background Analysis
Main menu: Engines->Background analysis, available through game context menu also
The addition of background analysis allows you to perform multiple tasks at the same time.
For instance, let's say that you entered a variation that you wish to check with a chess
engine. In version 6 of the program, you would mark the variation, and perhaps other
positions as well, and then start a batch analysis of the data. You'd come back some time
later, and the job would be finished. You can still do it the same way in Chess Assistant
8.1 if you want, but now you have the option of having that variation checked, and those
positions analyzed in the background, while you continue to annotate the game, or do other
searches. This is obviously a very useful feature, and can be a big time saver. It also
allows you to keep the thread of the game when annotating, since it can be difficult to
pick up again, when you go back some time later. One key capability of this mode is the
ability to automatically pause the background analysis, should you wish to use an engine
in the foreground (say in infinite analysis mode).
The new background analysis menu
The results of background analysis can then be automatically imported into the games,
and/or imported into a chess tree. The results of the latter procedure can then be shown
in much the same fashion as the CAP data.
To make the background analysis viable, Chess Assistant 8.1 uses something called the
background analysis (BGA) manager to control the engine analysis. This means that analysis
tasks are submitted to the BGA manager, which parcels them out to various engines, running
in BGA clients. These clients are also capable of conducting analysis tasks requested by
other computers (user controllable). This architecture works with all the old engines that
Chess Assistant supports (i.e. UCI, previous versions of Tiger, winboard, etc), as well as
with the new Chess Tiger 2004 engine. This architecture also allows you to say, run Chess
Assistant on one computer on a local network, and display analysis from it (in real time)
on another computer.
The example of implementing the background analysis may be found in a flash demo. See also
a flash demo dedicated to various automated methods of opening preparation using engine
analysis, while detailed explanation of the BGA terms is available in Robert Pawlak's
perfect article.
Chess Assistant 8.1 comes with a number of tools to analyze your positions or games either automatically, or manually in a special man-machine partnership with the new Interactive Analysis function.
The most obvious way to use an engine with a position is just to start it, and then have the analysis included as annotations. The problem with this is that you might see the engine focusing its attention on a move that you aren’t interested in, or ignoring a move that you are interested in. This is resolved by pressing to analyze a position and then selecting moves the engine will either ignore or focus on.
If instead, you’d like first to choose the moves you want the engine to analyze, you can set Analysis markers next at the moves in question, and make Chess Assistant analyze them later.
If you want to analyze a game or a set of games, you can do it in varying degrees. You could just make it search through the games, quickly showing where a theoretical novelty occurred in the game, and including references to what was previously known; or instead make it refer to Chess Openings 2005 encyclopedia to make suggestions according its evaluations.
You could also choose to make the program analyze a game or set of games with the Search for Blunders function.
Here you can set up to 3 levels of verification, so that after the first analysis of
all the moves (at a depth you specify), the moves that've been identified as blunders are
analyzed a 2nd time at a greater depth, and after that even a 3rd time at a fixed time
limit. Since you choose the depth of analysis as well as what the program calls a blunder,
the search for blunders can easily become a very deep analysis of the game(s).
Search for blunders is applicable at any stage of a chess game - opening, middlegame and
endgame - and it yields quite interesting results, as you may acknowledge after viewing
corresponding flash demo.
Finally, you can run a Full Analysis on a game or set of games. It is essential to run all the analysis tools mentioned above in one convenient step. You can choose which steps interest you and which not. Therefore, you could look at a few games, mark a few key positions (or you could skip this), then run Full Analysis requesting Chess Assistant to find all the opening novelties, comment on the opening choice according to its encyclopedia, then analyze the game with the search for blunders, then analyze those positions you highlighted for a closer look, and finally ask it to use Nalimov tablebases (provided you have installed and linked them) to verify any endgame positions it may find in them.
The last option is perhaps the most powerful and intriguing one: the Interactive Analysis.
The basic difference between a computer program and a Grandmaster is often (and correctly) considered to be as follows: the program is generally far more efficient in analyzing specific variations or complex tactical continuations, whereas a Grandmaster has a distinct advantage in closed games where long strategic maneuvering is more important. The idea is to let a player work with the engine, allowing it to analyze a position, and then guide it in its analysis without forgetting its conclusions. You could start a line, then jump forward towards the end, let the engine re-evaluate the position, then jump back remembering its conclusions. This way it could easily realize its mistake in that line and change its focus to more deserving moves. But this is only the first step. In order not to have literally hold the program’s hand the whole way, a number of options are set at the beginning when you determine basic time controls to be spent on moves, and special conditions so that if it realizes the move that becomes a turning point in the line’s evaluation, the time is increased. The reverse is true if the move is judged to be insignificant. While it is working on the position, it builds a tree of variations that shows you the most important lines, and you can add a line into it for analysis, or edit and remove other lines at request.