Welcome, Guest. Please Login or Register.
Apr 20th, 2024, 11:18am

Home Home Help Help Search Search Members Members Login Login Register Register
Arimaa Forum « Short notation for Arimaa games and positions »


   Arimaa Forum
   Arimaa
   General Discussion
(Moderator: supersamu)
   Short notation for Arimaa games and positions
« Previous topic | Next topic »
Pages: 1 ... 3 4 5  Reply Reply Notify of replies Notify of replies Send Topic Send Topic Print Print
   Author  Topic: Short notation for Arimaa games and positions  (Read 10078 times)
half_integer
Forum Guru
*****



Arimaa player #8819

   


Gender: male
Posts: 104
Re: Short notation for Arimaa games and positions
« Reply #60 on: May 12th, 2015, 7:06pm »
Quote Quote Modify Modify

I agree that current notation should be kept and any new notations should be provided as options.
 
Given the large number of variations that can arise in choosing a notation, I suggest that when the community is polled, they should be asked about each attribute separately rather than voting on a whole notation scheme.  Some sample choices to be made:
 
- origin squares or destination squares
- keep columns as letters or switch to numbers
- capitalization for color or to represent something else
- can multiple steps of a single piece be shown as one move
- how are pushes, pulls, and capture represented
 
I do suggest that, since we already have a computer-readable standard, any alternate notation be aimed at ease of comprehension for humans - and beginner humans at that.
 
I also suggest that since this is already being converted to and from some internal representation, some of the choices can be left as options for the user (either for entry or for display).  For instance, there is no reason that both of (nsew) and (^v<>) can't be valid (along with graphic arrows when available).
 
I have my own preferences; I look forward to the discussions.
IP Logged
CraggyCornmeal
Forum Senior Member
****



Arimaa player #10296

   


Gender: male
Posts: 32
Re: Short notation for Arimaa games and positions
« Reply #61 on: May 12th, 2015, 7:34pm »
Quote Quote Modify Modify

I believe I'm in the minority, but I actually like the standard notation. It's not as condensed at it could be, but it disambiguates everything (and does so in a consistent way!), leaving no space for misinterpretation.
 
There is, however, one element of standard notation that can be easily condensed without creating any ambiguity. When a piece takes multiple steps in a turn, we only need to specify the piece and its location once:
 
Dg4n Dg5n Dg6e would become
 
Dg4nne
 
An exception would be made when the order of steps is important:
 
Dg4n rh4w Dg5n Dg6e would become
 
Dg4n rh4w Dg5ne
 
I also think we should keep using nsew for directions rather than switching to ^v><. Because if you're viewing a game from silver's perspective, ^v>< is ambiguous, while nsew is clear.
« Last Edit: May 12th, 2015, 7:39pm by CraggyCornmeal » IP Logged
clyring
Forum Guru
*****



Arimaa player #6218

   


Gender: female
Posts: 359
Re: Short notation for Arimaa games and positions
« Reply #62 on: May 12th, 2015, 8:00pm »
Quote Quote Modify Modify

CraggyCornmeal's mentioned unique compressed version of the standard notation is, incidentally, as far as I know, the only implemented compressed notation for interacting textually with the Arimaa gameroom. I personally like omitting more characters when giving moves by hand in chat, but find that the one optimization of compressing consecutive steps by the same piece already makes the standard notation conveniently usable the majority of the time.
 
I also agree with his complaint about iconographic direction ^>v<. From the silver perspective, we must accept either lying symbols or the need to disambiguate by perspective, both of which seem ugly. Moreover, <> and especially ^ are awkward to type while nsew flow naturally with the use patterns and key locations on most English keyboards.
« Last Edit: May 12th, 2015, 8:08pm by clyring » IP Logged

I administer the Endless Endgame Event (EEE). Players welcome!
lightvector
Forum Guru
*****



Arimaa player #2543

   


Gender: male
Posts: 197
Re: Short notation for Arimaa games and positions
« Reply #63 on: May 12th, 2015, 10:35pm »
Quote Quote Modify Modify

I have an idea for a notation that I haven't implemented, but I feel fairly certain I could do so. I think I've described it before in a chatroom message. The notation targets ease of human use and is based in empirically observing the ways in which most people in the chatroom tend to try to specify moves when commenting on games. It heavily depends on knowing the current board position. However, it may be a poor choice for a "standard" notation because in general moves will have a large number of ways to be written in this notation, with no canonical format. It does however include the current standard notation as a special case.
 
Gritty details:
(skip below for examples if you just want to get the idea):
 
The notation consists of a sequence of tokens that specify constraints on the move or the position resulting from the move.  
Tokens are of the form <piece specifier><property>.
Such a token indicates that <property> is true about the move regarding a piece satisfying <piece specifier>.  
 
A <piece specifier> is one of the following
* [RCDHMErcdhme]: a piece of the specified type
* [a-h][1-8]: a piece in the specified location
* [RCDHMErcdhme][a-h][1-8]: a piece of the specified type in the specified location
 
A <property> is one of the following:
* [a-h][1-8]: A piece satisfying <piece specifier> at some point during the move ended at the specified destination.
* [news]+: ("steps") A piece satisfying <piece specifier> at some point during the move stepped in these directions in order and the steps began at a time when it did satisfy <piece specifier>.
* [x]: A piece satisfying <piece specifier> at some point during the move was captured.
 
A move satisfies a sequence of tokens if it satisfies all of the constraints represented by each token AND if that the steps of the move satisfying any of the "steps" tokens occur in the order that they were written in the move. (This is so that "c3n c4n b4e c4e" and "c3n c4e c4n b4e" are distinguishable despite containing the same set of tokens). Aside from the relative ordering of the steps tokens, the ordering of the tokens is otherwise irrelevant.
 
To find the move (up to equivalence) specified by a sequence of tokens:
* Partition the set of all pseudo-legal moves (legal moves, except not modded-out by equivalence, and not checking 3x repetition legality) into a ordered sequence of buckets: "contains 1 step", "contains 2 steps and moves 1 piece", "contains 2 steps and moves 2 pieces", "contains 3 steps and moves 1 piece", "contains 3 steps and moves 2 pieces", ...
* Find the first bucket that contains any moves that satisfy the sequence of tokens.  
* If all such moves in that bucket are equivalent - lead to the same board position - then the sequence of tokens is considered to uniquely specify this move. Otherwise, the sequence of tokens is ambiguous and does not uniquely specify a move.
 
Examples:  
 

 
Gold move notation examples:
"cx b4n" = "Ee6e Ef6w cf7s cf6x Db4n"
"Ra7" = "Db4n Ra5n Db5w Ra6n"
"Ed4 Me" = "Ee6w Ed6s Ed5s Me4e"
"Dww Cf2ww" = "De1w Dd1w Cf2w Ce2w"
 
Silver move notation examples:
"f3x" = "ed3e ee3s Cf2n Cf3x ee2e"
"f2x" = "ed3e ee3s Cf2n Cf3x ee2e"
"mc2 Re" = "Mc4s Rc2e Mc3s pass"
"Rc3 da6" = "ed3w ec3e Rc2n db6w"
"Dc5" = "mc4e Db4e Dc4n md4w"
"b4c5" = "mc4e Db4e Dc4n md4w"
"hb3" = "ed3w ec3e Hb3e ha3e"
 
I think this notation shines for most sorts of "combo" moves where the steps are related, and also for common patterns like flips or pull-and-replace.
« Last Edit: May 12th, 2015, 10:47pm by lightvector » IP Logged
mattj256
Forum Guru
*****



Arimaa player #8519

   


Gender: male
Posts: 138
Re: Short notation for Arimaa games and positions
« Reply #64 on: May 13th, 2015, 1:10am »
Quote Quote Modify Modify

on May 12th, 2015, 7:06pm, half_integer wrote:
I do suggest that, since we already have a computer-readable standard, any alternate notation be aimed at ease of comprehension for humans - and beginner humans at that.
That's an interesting point.  I agree that the standard notation is already fine for computers, so any other options can focus completely on what's best for humans.
 
on May 12th, 2015, 7:06pm, half_integer wrote:
I suggest that when the community is polled, they should be asked about each attribute separately rather than voting on a whole notation scheme.
Some other factors:
- terse vs. verbose
- easy or hard for a beginner to disambiguate
- easy or hard for a beginner to determine if this is a legal move
- reversible or irreversible.  (Can you easily undo a move if given the move and the resulting board position?)
 
on May 12th, 2015, 10:35pm, lightvector wrote:
"Ra7" = "Db4n Ra5n Db5w Ra6n"
There seems to be a tradeoff between terseness and beginner-friendliness.  Saying "I want to move the rabbit to a7" and not specifying that the dog has to come over to unfreeze the rabbit is not beginner-friendly.  This doesn't mean it's a bad notation, but it's optimized in a way that will be hard for beginners to read or write.  If you give this notation to a few beginners I am confident that at least one will not realize the rabbit is frozen and parse the move incorrectly.
 
This is analogous to the difference between WAV and MP3 music files.  WAV is uncompressed so it can be played on very inexpensive hardware.  MP3 is compressed so it requires significant processing power to decode the file before it can be played.  The first is verbose and easy to decode; the second is terse and much harder to decode.
 
The two alternatives proposed so far are optimized for different purposes so I wouldn't expect that either one would "win" over the other.
 
If it helps the discussion, maybe we should be thinking about:
- best notatation for computers (standard notation is fine)
- best notation for human beginners
- best notation for human intermediate/advanced players
 
on May 12th, 2015, 7:34pm, CraggyCornmeal wrote:
Dg4n Dg5n Dg6e would become
 
Dg4nne
This is the only nonstandard notation that I personally use, because it saves a little typing and it never introduces any ambiguity.
 
Some other feedback on how I would adapt lightvector's notation to make it more beginner-friendly:
- I think every piece that is moved should be mentioned explicitly, including enemy pieces.  If a piece makes no net movement, mention just the name of the piece with a space before and a space after.  The order that the pieces are mentioned doesn't have to always match the order that they move so that pull-and-replace and swings can be communicated efficiently.
- I think every piece should either include the start square or the end square, unless it didn't make any net movement.
- A capture should include the enemy piece, the square that the enemy piece started on, and some information about the piece doing the capturing.
- You didn't specify how to record every type of capture.  (suicidal step, suicidal push/pull, friendly abandonment, push/pull enemy piece onto a trip, push/pull enemy defender away from the trap.)
IP Logged
Boo
Forum Guru
*****



Arimaa player #6466

   


Gender: male
Posts: 118
Re: Short notation for Arimaa games and positions
« Reply #65 on: May 13th, 2015, 2:07am »
Quote Quote Modify Modify

Quote:
There's a community volunteer effort under way to create a new Arimaa website.  (front end and back end.)
 
As part of the discussion, some members of the community have mentioned that they don't like the standard Arimaa notation.  I think it's extremely important that the new site support standard Arimaa notation, and I'm open to also supporting other notations as well.

 
It is strange to see a big discussion emerging on a "nice to have" feature. I think first of all you should better spend your energy to get the basic stuff working...
It seems you have troubles with setting up the prioritized issue list Smiley
IP Logged

mattj256
Forum Guru
*****



Arimaa player #8519

   


Gender: male
Posts: 138
Re: Short notation for Arimaa games and positions
« Reply #66 on: May 13th, 2015, 9:12am »
Quote Quote Modify Modify

on May 13th, 2015, 2:07am, Boo wrote:
It is strange to see a big discussion emerging on a "nice to have" feature. I think first of all you should better spend your energy to get the basic stuff working...
It seems you have troubles with setting up the prioritized issue list Smiley
This is true.  My reasons for starting this discussion:
1. I don't need community input for the low-level tasks that I'm working on.
2. I want to give the community plenty of time to discuss this.
3. Even though this isn't a high priority feature, there are (at least) two community members who are passionate about it.  From my point of view it's more efficient to acknowledge their passion and carve out a space for it than to ignore them when they bring it up over and over again.
4. If I'm going to do this, I might as well start thinking up front about how the architecture will support this, even though it won't be implemented right away.
5. Unlike software development, this is something the whole community can participate in and feel ownership of.
IP Logged
Pages: 1 ... 3 4 5  Reply Reply Notify of replies Notify of replies Send Topic Send Topic Print Print

« Previous topic | Next topic »

Arimaa Forum » Powered by YaBB 1 Gold - SP 1.3.1!
YaBB © 2000-2003. All Rights Reserved.