Database basics - part 5

by ChessBase
9/25/2004 – In the previous installment of ChessBase Workshop we began an examination of the "Position" dialogue in Fritz8's search mask. Today we finish with the remainder of the dialogue and look at some interesting shortcuts.

ChessBase 17 - Mega package - Edition 2024 ChessBase 17 - Mega package - Edition 2024

It is the program of choice for anyone who loves the game and wants to know more about it. Start your personal success story with ChessBase and enjoy the game even more.



by Steve Lopez

In last week's ChessBase Workshop we looked at the basics of performing position searches using Fritz8's Search mask. This time around let's look at the features we skipped in the last article.

You'll of course recall how to open a database and bring up the Search mask. Click on the "Position" tab to again get the following display:

Now let's recreate our Bishop fianchetto position we used as an example last week:

As we've previously seen, performing this search will bring up all games in which White has established the classic fianchetto position as shown in the illustration. An interesting twist on this search involves the use of the "Mirror" boxes (located to the right of the piece buttons). Choosing one of these buttons allows you to "mirror" the position fragment.

An example would be to set up the Bishop fianchetto position as above but also click the box next to "Horizontal":

Note what's happened here: the program has placed a red line across the board between the fourth and fifth ranks. Think of this red line as a "mirror" -- if you click "OK" here to perform the search, the program will bring up a list of games in which either White has fianchettoed Kingside or Black has fianchettoed Kingside (but not necessarily with both conditions applying, although that's certainly possible). The program has "mirrored" White's position fragment on Black's side of the board, so you get games in which either player has fianchettoed the Kingside Bishop.

Now let's try using the "Vertical" box instead:

Here again it's easiest to think of the red line as a mirror laid between the d- and e-files. If you do the search now, the program will provide a list of games in which White has fianchettoed on either the Kingside or the Queenside (though again not necessarily on both sides simultaneously, though this too is possible).

Now, just for chuckles, click both the "Horizontal" and the "Vertical" boxes:

Now a search will turn up all games in which White has fianchettoed on either side or in which Black has fianchettoed Kingside. Note, though, that this search will not include games in which Black fianchettoed Queenside (though that may have happened in some games where one of the other three fianchetto positions have occurred).

This brings up an important point: there's a big difference between doing, say, the position search above with the "Horizontal" box checked and a separate search in which you've placed White pawns on f2, g3, and h2 with a White Bishop on g2 plus Black pawns on f7, g6, and h7 with a Black Bishop on g7:

In our earlier example, games in which either player (though not necessarily both) fianchettoed Kingside will be discovered by the search. But in the example immediately above, a game must contain a position in which both players played the Kingside fianchetto.[1]

[1] Furthermore, the fianchettoes must occur on the board at the same time. So games in which White fianchettoes at move eight and subsequently moves the Bishop to, say, f3 before Black has fianchettoed his Kingside Bishop at move twelve will not be found by the search. Note, then, that this isn't a search for all games in which both players fianchettoed Kingside -- it's instead a search for all games in which Bishops have been fianchettoed and are simultaneously placed at g2 and g7 respectively. It's a subtle, but significant, difference.

Thus we see that the "Mirror" boxes can be a handy shortcut for finding somewhat similar "mirrored" position fragments, but only if the feature is understood and used properly.

In an earlier article in this series we mentioned that header searches are quicker than other types of searches. When I typed that statement I was primarily thinking of the fact that position searches have to examine what's "inside" a game; i.e. the moves, as opposed to header searches which just need to check the game list info. Returning to our Bishop fianchetto example, performing such a search requires that the program look at every move of every game [2] to see if White has fianchettoed his Kingside Bishop.

[2] If the search is conducted exactly as shown in the illustration, the program will actually search for fianchettoes only between moves one and forty, but this will be made more clear over the next couple of paragraphs.

One way to cut down on the amount of work the program has to do is to limit the amount of material it needs to sift through. An excellent means of doing this is provided by the "First" and "Last" boxes. These fields let you specify a range of moves within which the position or position fragment must occur.

Most Bishop fianchettoes as depicted in our example position are going to occur in the opening of a game, right? And since the moves g2-g3 and Bf1-g2 must be played to accomplish the fianchetto, we can rule out the idea of a fianchetto occurring on the game's first move. So for "First" we can enter the value "2" and for "Last" we could enter the number "10". This means that the position must appear on the chessboard somewhere between Move Two and Move Ten. If you started the search using these parameters the program would look at moves two through ten of every game in the database, disregarding all game moves that occur outside that range (i.e. the first move of games and all moves after move ten). This can significantly reduce the amount of time the program takes to complete a search.

The "Length" button lets you tell the program how long the position or position fragment must be on the board. As an example, setting it for "5" means that the position must remain on the board for five moves; in our Bishop fianchetto example, the pawns and Bishop must remain on the specified squares for five or more consecutive moves before any of them moves to a new square. Most often you'll want to have "Length" set to "1" (meaning that the position has to occur for just a single move); this will ensure that all instances in which a position or position fragment occurs will be found by the program.

Although we've looked primarily at searches for position fragments (that is, parts of positions), you can also look for complete positions using the "Position" dialogue. The most common scenario is one in which you're playing through the opening of a game (either a database game or a situation in which you're entering moves in the main chessboard screen) and want to see additional games (if any) in which a given position occurs. For example, you might be playing through a database game, come to move five, and find yourself wondering if that position has occurred in any other games.

There's a really handy shortcut available to you in such an instance. Clicking the "Copy board" button automatically transfers the position from the main chessboard screen in Fritz over to the "Position" dialogue, filling in the dialogue's blank chessboard with whatever position was on the board the last time you were in the program's main chessboard screen.

You could also use this as a shortcut even if you're looking for position fragments instead of complete positions. You could transfer a position to the "Position" dialogue by using "Copy board" and then remove pieces until you've created a position fragment you'd like to search for. An example might be to load an endgame position and then eliminate the Kings and pieces to leave only the pawns; this would let you perform a search for all games containing the same "pawn skeleton" as the endgame you'd been viewing.

The final element of the "Position" dialogue is the "Sacrifice" box. Putting a check in this box while filling out no other information in the Search mask will cause the program to bring up a list of all games in which some sort of material sacrifice occurred. I use this search a fair little bit to locate interesting sacrifices in a database's games.

But you can also use this box to further refine other searches. Returning yet again to our Bishop fianchetto, checking the "Sacrifice" box will cause the program to find all positions in which the fianchetto position is on the board while a sacrifice occurs somewhere on the chessboard. I did a search for the White Kingside fianchetto position occurring between moves 2 and 15 in a database of games from Chess Informant volumes 1 through 75 and the search revealed 16,258 games. Performing the search a second time with the same parameters but with the "Sacrifice" box also checked brought up 153 games in which the fianchetto position was on the board and a sacrifice was offered (though not neccesarily accepted) someplace on the chessboard at the same time.

As stated last week, there are a lot of search parameters available to you in the "Position" dialogue but the dialogue itself is not terribly difficult to use once you understand what the various fields mean. This dialogue alone lets you perform a nearly infinite variety of searches on a database's games, even without using any of the fields in the other search dialogues.

But we're still not finished yet: there's one more dialogue to cover. We'll look at it in next week's ChessBase Workshop. Until then, have fun!

© 2004, Steven A. Lopez. All rights reserved.

Reports about chess: tournaments, championships, portraits, interviews, World Championships, product launches and more.


Rules for reader comments


Not registered yet? Register