Check out Atomic Chess, our featured variant for November, 2024.


[ Help | Earliest Comments | Latest Comments ]
[ List All Subjects of Discussion | Create New Subject of Discussion ]
[ List Earliest Comments Only For Pages | Games | Rated Pages | Rated Games | Subjects of Discussion ]

Comments/Ratings for a Single Item

EarliestEarlier Reverse Order Later
Chieftain Chess. Missing description (16x12, Cells: 192) [All Comments] [Add Comment or Rating]
H. G. Muller wrote on Thu, Jan 20, 2011 02:11 PM UTC:
I am a lot more skeptical about this. The activation range of the Chieftains is pretty large (a well-placed Chieftain covers a 7x7 area), so pretty much all your pieces can be activated all the time, as long as you have 4 Chieftains. In fact you can have duplicate coverage of most of the board, meaning you could move even both of two pieces standing next to each other. So the activaton rule will not limit your options very much. And multiple moves per turn really blows up the branching ratio. (Compare Arimaa, where you are allowed to only do 4 Wazir moves per turn.)

Because of the short range of the pieces, and the necessity to be active in several places at once (for healthy Chieftain distribution), the game really degenerates into a number of local battles. A human would immediately decouple those in his mind. But a conventional search engine would try to play all possible combinations of playing out the battles.

🕸Fergus Duniho wrote on Fri, Jan 21, 2011 11:53 PM UTC:

I was just reviewing the rules to make sure that my Game Courier preset covered everything, and I noticed this:

Each chief may activate 1 piece per turn. It may activate itself or another chief.

This makes things much more complicated than I first imagined. I was working with the assumption that any piece close enough to one of its Chieftains could move, and moves were limited by the number of Chieftains. But if I read this correctly, the preset would have to keep track not only of which pieces have moved but which Chieftains activated their movement. This will make the notation more complex. Alternately, it will make it much more complicated to calculate the legality of moves, and I haven't begun to figure out what kind of complicated algorithm that will take.


🕸Fergus Duniho wrote on Sat, Jan 22, 2011 12:01 AM UTC:
This rule would also mean that a Chieftain which moves to activate another piece cannot make its move unless it has been activated by another Chieftain.

Ben Reiniger wrote on Sat, Jan 22, 2011 12:22 AM UTC:
It seems like the best way to have this work (from the user-end, I'm not sure how much new programming would be needed) would be for moves to be entered as chief-piecestart-pieceend. Then the only extra checks for legality needed would be 1) that the piecestart is within range of the given chief and 2) that the moves for a turn all start with unique chieftains. Is this right?

🕸Fergus Duniho wrote on Sat, Jan 22, 2011 12:32 AM UTC:
That solution would require programming Game Courier to understand a new kind of notation. Also, it won't work well with Game Courier's ability to let players enter moves with the mouse. I prefer a behind-the-scenes solution that just lets players move pieces with the mouse. It might work like this. When a piece moves, note every Chieftain that could have activated its move. Compare each move with prior moves in the same turn, making sure that there are no conflicts. When there is a conflict, complain that the move is illegal.

Greg Strong wrote on Sat, Jan 22, 2011 12:38 AM UTC:
This rule would definitely make it more difficult to implement a computer opponent with a high skill level (although I agree with H.G. that it's already extremely difficult.)  One of the things you need in a chess program is a way to efficiently store a board position – a snapshot encoded in a number or number.

In Chess, for example, this is made more difficult because just knowing the position of all the pieces and who’s turn it is to move isn't enough.  You also need to know what castling rights are still available and if an en passant capture is possible.  So this extra information is also encoded into the representation of the position (the hashcode.)  With this rule you also need to know which chieftains have activated (although this could certainly be encoded as well, and the cost probably wouldn't be too bad, but it is one more thing to have to program in.)

Actually, in Chess (and almost all other variants), there's something even nastier...  You need  to know, for each position you could later encounter, is it a 3-fold repetition?  Or a 50-move draw?  So your hashcode also needs to store information about every position back to the last capture or pawn move...   This proves to be so costly, however, that it isn’t even done at all (for most uses of the hashcode), and this produces definite bugs!  Such bugs are known and very rare and the overall benefit far overshadows the penalty of having the bug.  Here's how it works specifically --  When the engine 'thinks', it recursively plays out moves and counter-moves.  A huge optimization that can be done is to realize that lots of different combinations of moves play out to the same position!  So, when you encounter a position, you look it up in a big table of positions you’ve recently seen to see if you recognize it and if what you learned about it then was 'good enough' so that we don’t have to think about it any more now.  The problem is that the hashcode (which locates information in this table) does not include information about past positions, so sometimes you jump to the wrong conclusion and the information really isn’t 'good enough.'  For example, last time you saw it you decided it was great.  But this time you came here by a different set of moves, you've seen this position multiple times before, and this time it’s not good, it's a draw by repetition.  Oops...

Ok, I digress.  Chieftain Chess.  I don't know that this consideration is significant enough to consider changing the rules but I thought I'd throw it out there.  And that last paragraph is to show you that even imperfect hashcodes aren't necessarily the end of the world.  It just makes it somewhat harder to program because you do have to account for it correctly in actual play (e.g., Chess programs really do need to detect 3-fold repetition correctly when they occur on the actual board; the bug with the hashcode table just makes the computer opponent less smart.)  But a computer opponent for this game is really, really tough anyway because of the multiple moves...  If human players can't see very far ahead in this game either, it might be ok...  But zillions-of-games is, to the best of my knowledge, the only program in the world that plays such games at all at present.  I've always considered trying to implement it, but it is just such a daunting challenge.  I'd be sailing way off the charts; there's nothing written about how to do such a thing at all unless it's very recent.

💡📝Joe Joyce wrote on Sat, Jan 22, 2011 01:19 AM UTC:
Visiting family this weekend, so I'm slow in answering again. Yes, each chief has only 1 order to give per turn, then it's used up until next turn. It's a very restricted game in this sense; that's why I call these variants 'structured multi-move games'. A very definite structure is imposed by the leader rules.

I'd thought the game might be difficult for computeres because there are so many different moves, all of which have essentially the same 'value' in chess terms. And given the multi-move nature, the number of possibilities explodes even on turn 2, and except in very restricted circumstances, you cannot calculate a 'most likely' progression of moves even 3-4 moves deep with any significant likelyhood of success. I will say that the game rarely degenerates to 4 separate battles. The chiefs generally work in pairs or larger groupings.

H. G. Muller wrote on Sat, Jan 22, 2011 10:55 AM UTC:
I don't think an engine for this would be hard to program. What would be hard is to make it search deep enough to acquire a reasonable skill. The way I would do it, is to use 4 recursive calls to the search routine for each turn, (or as many as you have Chieftains), doing the negamax flip only once every 4 ply. Each ply would cycle through all pieces, for each piece, cycle through all Chieftains, for each Chieftain that is within range, replace that Chieftain by an 'exhausted Chieftain' (a different piece type, that moves as a Chieftain, but has no activation power) and generate all moves with the piece, and play them out one by one. After moving the piece, you recurse. For efficiency you would keep track of the number of 'charged' Chieftains, and if your move just exhausted the last one, you flip the turn (and score, etc.), and 'recharge' the opponent's Chieftains. I would rely on hash hits to weed out the intra-turn transpositions, probing after each ply. (The turn-phase would automatically be hashed, because the charging and exhausting of Chieftains would alter the hash key.)

That is realy all. But now try to reach meaningful depth...

Greg Strong wrote on Sat, Jan 22, 2011 02:46 PM UTC:
Very well thought out, H.G.  I see no flaws in that.  Of course, not seeing deeply it's not going to play very well.  Maybe you could use some sort of plan-oriented play ...  Examine the grouping of pieces on the board, decide where you appear to have superiority and focus on moves that concentrate force in this area, heavily reducing or pruning moves that don't.  On the other hand, in some circumstances it might be better to find where the opponent appears to have superiority and move in reinforcements, but I would expect this game is won by relentless offense.  Very interesting game!

Has anyone tried to make a Zillions implementation?

🕸Fergus Duniho wrote on Sat, Jan 22, 2011 04:23 PM UTC:
Okay, I have a plan for detecting conflicts between moves that rely on the activation power of the same Chieftain. I start with a set of all combinations of orders in which Chieftains may be used on the same turn. This is a 24 member set, just 4!, which is not too large. For each move, I identify the Chieftains on the board that could have activated that move. I then remove from the set any combinations that don't allow for the current move. If the set becomes empty at any point, then the move is illegal. If I go through all moves, and the set still has members, then a different Chieftain could be used to activate each piece that moved. This is all I need to know to tell that otherwise legal moves were all legal. 

It is not important to tell which Chieftain activated which piece, but besides checking the legality of each move, I need to identify which Chieftains can still be used to activate moves. I can do this by checking the place in each combination for the next move. Any Chieftain mentioned in that place will still be good for activating a piece, and its vicinity can be colored.

This plan for telling which pieces can move ahead of time would be useful in writing a program to play the game. It might be doable in Zillions-of-Games by manipulating flags or piece attributes, but I don't think I will attempt it. Even if it can be done, I think it would overcomplexify things to the point where Zillions will not play it well. As in Shogi, as it was originally implemented in Zillions, there will be multiple moves it can make in the same turn that will lead to the same position at the end of the turn. This will make it more difficult for it to look ahead. In a dedicated engine, it would be helpful to group together all combinations of moves that lead to the same position and pick just one of them at random as representative of all of them when analyzing the position.

🕸Fergus Duniho wrote on Sun, Jan 23, 2011 04:43 AM UTC:

I must say that non-programmers create the most difficult games to program. Examples include Marseillais Chess, Hostage Chess, and this game. As a programmer, I normally design my own games with an eye to how I'm going to program them. At least the non-programmers give me more interesting challenges than I give myself, and when I'm done there's more cause for feeling satisfied. It now looks like I finally cracked this nut and got a working preset for the game. Please check it out, Joe, and let me know if everything is working okay.


🕸Fergus Duniho wrote on Sun, Jan 23, 2011 05:01 AM UTC:

I have a question concerning another rule:

Once a piece has finished its move, it becomes inactive again. It cannot move in a subsequent turn without being re-activated by a chief.

Does this allow for the same piece to be moved twice or more in a turn if it gets activated by multiple Chieftains? Currently, the preset doesn't allow the same piece to move twice in a turn. Should I change this?


💡📝Joe Joyce wrote on Sun, Jan 23, 2011 05:27 AM UTC:
Fergus, looks great! Can't talk. Pieces only move once per turn. Preset handled an ambiguous situation well - saw the gray-background leader icon in that situation - nice touch. Really gotta go now. Thanks.

H. G. Muller wrote on Sun, Jan 23, 2011 08:47 AM UTC:
I am a bit concerned about the winability of this variant. The royal piece is an all-powerful piece superior to a Queen (on 8x8 at least; the large board size might devaluate it a bit), while all other pieces are quite weak (sub-Rook). Have you ever figured out what it takes to checkmate a bare Chieftain? I guess multiple Chieftains could do it, because it gives you the advantage of multi-move as well as their great intrinsic power. But if you also have only a single Chieftain, how many other pieces to you need to force a win?

Nicholas Wolff wrote on Sun, Jan 23, 2011 09:38 AM UTC:
The secret is in having more moves than your opponent. If you can out-move your opponent, then victory will be much easier. A little harder if you have the same amount of pieces/moves.

H. G. Muller wrote on Sun, Jan 23, 2011 01:37 PM UTC:
What do you mean by 'more moves'? More moves per turn (i.e. more Chieftains) or larger choice (better mobility)? I can see that 2 Chieftains against 1 can win, but essentially only by forcing the trade of one Chieftain. Or by stalemating, which is a technique that would not apply in earlier phases of the game. But forcing the trade of a Chieftain is not helpful to get ahead in the number of Chieftains, when you are still equal.

💡📝Joe Joyce wrote on Sun, Jan 23, 2011 03:11 PM UTC:
Hi, all. Again, no time. Kudos to Fergus for the preset - it effectively
does what I do in looking at [potential] moves. You've made it a little
easier to play the game. 

HG, I also am concerned about the possibility of draws here. But 4 chiefs
plus 2 men wins against 4 chiefs. I think a 1 man advantage should be
enough, as long as you can trap 1 chief. You force a chief for man trade,
and that's the game.

17 comments displayed

EarliestEarlier Reverse Order Later

Permalink to the exact comments currently displayed.