Comments/Ratings for a Single Item
When Chess V evaluates positions that are materially equal, how does it choose between them? That's more than just a rhetorical question. We know there are bound to be thousands of positions that are strategically and tactically a dead draw. Whatever distinctions can be found, they must be very subtle. For instance, at the start of the game, what makes 1. Pa2-a6 any better than 1. Pa2-a3? Does Chess V employ at some point a random function to choose between the moves available to it? If Chess V plays against itself, how does it perform if the only thing different is the random seed? Does C as a programming language allow use of different pseudo-random number generators, or are you stuck with the one that comes with your C package? Would two different versions of Chess V perform differently if the only thing distinguishing them were the random seeds inside the C source code? As for numerical values representing the strengths of the pieces, were the figures arrived at through empirical analysis, or by guessing? Empirical analysis implies that different versions of Chess V performed differently when pitted against itself, and the data produced was relied on for newer versions.
In terms of Ultima/Baroque, any group of 3 or more same-colored pawns situated, together, a single knight's move away from each other, make for a much stronger structure than those that are not. This may mean more to us in an endgame than from the typical starting position, so it should be examined after the variables for fluidity/mobility are arrived at. Although a pawn or pincher can strike against enemies bounded by non-enemy pieces, the relative slowness of a group of pawns (compared to a group of noble piece) means that 'pawn structure' - as such - can be a fruitful thing to look for. In terms of endgame analysis, it may take 1 king + 5 pawns to force checkmate - I'm not sure - but I don't think mating is possible with just 3. The peculiar thing about this, is how the knight's move of traditional chess finds a place for evaluating pawn structures in Ultima/Baroque. It relates to the desirability of distributing same-colored pawns equally across a finite area of rectangularly gridded space.
The setting of I-Depth 9 is just the maximum depth. The way it works is that it searches all moves to a depth of 1, and then, if there's time, to a depth of 2, and, if time, to a depth of 3, etc... So it never hurts to have the Max I-Depth set high. The only reason that setting is there is so that, if you want to do a fixed-depth search, you can set the I-Depth to the depth you want, and set the time limit to something really high. And, strangely enough, searching to a depth of 1, then 2, 3, ..., n is actually faster than going straight to depth n. This technique is called 'Iterative Deepening', and is used by all chess programs. Giving pincer pawns a bonus for being a knights-move away from others might be a good idea. I might give it a try sometime and see how it works.
I just read through some of the comments on here about ChessV and Gothic Chess. Some were not 100% on the mark. First of all, ChessV was given a one-year Gothic Chess license from November 2004 to November 2005. ChessV played in the first, bi-annual Gothic Chess Computer World Championship. You can read more about this on chessville here: http://www.chessville.com/GothicChess/ComputerWorldChampionships.htm There was also some discussion about the graphic which was displayed by the ChessV engine. Greg is confusing two issues. I did contact him about something regarding Gothic Chess, but it it was not the item he mentioned. After his license expires and is not renewed, the subsequent versions of ChessV could not contain a Gothic Chess setup, and that is all. I also contacted somebody about an image shown on Wikkepedia under Gothic Chess. It was ORIGINALLY one I had drawn and is widely in use. The one that replaced it was a ChessV board's image of Gothic Chess. Again, I believe the sands of time have led to Greg confusing issues. I never said what was represented by him or others.
I've already got a handful of those 256 meg thumb-drives, too, and I love the direction technology is taking them. Flashram is the wave of the future. Unfortunately, I have had more than my share of bad luck with Intel systems, and the rate at which my last few PC compatibles crashed makes me view the benchmarks and forecasts they've come up with, with suspicion. (It is rumored that thumbdrives rarely last more than a year from the time you first buy them, and put them to use, hot swaps and all.) Nobody is forcing you to boot up an ST emulator just to try out my code, just bear in mind that not everybody has a computer that you consider state of the art. As for generating a mini-max tree, how deep should you go before you start pruning? I know you recommend a 9 ply search (just under 5 full moves), and I have nothing against that. In an endgame consisting of four or five pieces, it sounds perfectly reasonable to do a 30 or 40 ply search - the space required is far less than at start, you just have to look into the possibility that you are revisiting a board that you've already generated somewhere higher up (earlier) in the tree - maybe with the tempos swapped - but you can save a ton of space that way. Say, from the sample Ultima games here at www.chessvariants.org, I wasn't entirely sure why the players were holding back and playing 1. Pg2-g4 or 1. Pf2-f4 (recounting from memory, I may be wrong, they were only seizing a couple of squares of territory) instead of pushing the pawns up to the limit possible, like 1. Pf2-f6 or 1. Pg2-g6 and let them bite the dust if that's what it's cracked up to be. As principles go, is it really that dangerous to hog space - even throw pawns away - for the sake of reaching a game that is that much more open? In any case, whether the Leaper is capable of single or multi-leaps, losing a Leaper is going to be the most momentous occasion in the game.
Version 0.81 Released
An important update, this has several bug-fixes and performance enhancements to correct problems reported in version 0.8. This version should be significantly smarter about how it plays.
This version also adds support for Fergus Duniho's Eurasian Chess. NOTE: this is by far the most computing-intensive game added yet, not just because of the number of pieces, but more importantly because of the cannon-movers. With cannon-movers on the board, it is much harder to determine which captures are winning captures, and thus many, many more moves must be examined in the quiescent-search. Any less than 10-15 seconds per move and it is not likely to play very well.
Version 0.9 Released
For those who don't know, ChessV is a freeware, open-source program for playing Chess variants. It has been over a year since the last release, and this is a major upgrade. This version has support for over 50 variants, and allows users to add in their own variants! Of course, it also fixes numerous bugs.
New games: Support added for Great Shatranj, Odin's Rune Chess, Chess 480, Cagilostro's Chess, Embassy Chess, Emperor's Game, Janus Kamil Chess, Ladorean Chess, Univers Chess, Schoolbook Chess, Modern Kamil, Roman Chess, Royal Court, and Shatranj Kamil.
New features: It is now possible to design your own variants (within limits.) This ability is different that that of Zillions, however, in that you don't program an entire game from scratch. Rather, you derive your game from one of the built-in games, and specify only how it differs. This makes it fairly easy to add support for new games, but it is limited. It is not anywhere near as flexible as Zillions. On the upside, however, ChessV will play any game that it allows you to make with a very high level of skill. See the file extensability.doc for info on how to add new variants. Other new features include the ability to use textures for squares instead of only solid colors. Several marble textures are included.
Download: Download this program from the project's home on sourceforge.net here. You only need to download the main file (ChessV_0_9.zip), not the source code unless it interests you. There is no setup program - just unzip and run. If you have an old version of ChessV already, just unzip this on top of the existing versions.
Please report any bugs you encounter. You may post them here, or email them to me (you can get my e-mail from the chessvariants.org member's index.)
If you're interested, I can help by having a command-line version that can compile uisng the standard Gnu/UNIX toolchain--it would be nice to compile this program on something besides Windows + MSVC. I think that would encourage more developers (I'm a Linux developer who makes Windows ports with MingW32).
Again, thanks for the great work Greg. Good to see you back--I missed you!
- Sam
25 comments displayed
Permalink to the exact comments currently displayed.