May. 3rd, 2012

sniffnoy: (Chu-Chu Zig)
(I should probably actually be writing this well-ordering paper, but, eh.)

So I'm getting the idea that most people really do not understand the idea of... competitive gaming, I guess, is the term I'm going for here? You know. What David Sirlin's "Playing to Win" is all about.

What inspired this post was a section in the Wikipedia article on the game Abalone. (Linking to the current version in case that section gets removed later.) Namely, the section on "avoiding draws".

Apparently the game has a problem in that it is far, far easy to defend -- not just easy to turtle for a long time, but to actually defend indefinitely without penalty, preventing the game from ever ending if both players do this. Therefore, says the article, "serious Abalone players tacitly agree to play aggressively."

No! If you do this, you are not a serious player of anything, because you apparently don't even understand what that means. The only correct solution is to fix the rules of the game, not tacitly agree to anything. Fortunately, in this case, there is apparently an easy fix, by just changing just the players' starting positions and not the other rules at all.

Point is, OK, I wouldn't be surprised to learn that many people don't really understand competitive gaming; but a sentence like that stated about serious players of... aaagh.

Let's talk about Bridge. Bridge bugs me.

Recently Bridge seems to have replaced Dominion among my friends in the math department (and just when I'd actually started hanging around there more often, dammit). OK, more recently several people have been writing this puzzle game, which is taking up the time when they would otherwise be playing games, but before that it was Bridge.

(I am glad to finally understand where the whole "5-card majors" convention comes from. I hadn't regularly played Bridge since high school, when I used to play with Chris Howard and his group, and they didn't use that convention which apparently everyone everywhere else does, it seemed really arbitrary to me. Now that I understand that Bridge bidding is largely about making game if you can, it makes sense.)

Anyway I'll play Bridge but... it's kind of a silly game, you know? No, I'm not actively trying to break it, but I feel bad playing even at a low level games that I know don't really work at a high level. Here are some things I am told about Bridge tournaments:

1. You have to register your bidding convention; your opponents can see it. See, Bridge is not a game about communicating encrypted information to your teammates, so your opponents have to know what your bids mean. (And you adhering to your bidding convention is delineated how?)
2. The "forcing pass" convention and other "highly unusual methods" are banned. Again, without a way to delineate whether you're even adhering to your bidding convention, this makes no sense.
3. Because of #1, if your partner makes a bid which does not make sense to you, you are supposed to say "alert", so your opponents know this. I mean... what??

I mean, this is just silly. People can play it all they wan't but I can't accept the legitimacy of such a tournament. Real games have real rules[0].

Of course, #1 is not necessarily such an inherently ridiculous idea... if you don't have humans doing the bidding. How about, instead of having people actually do the bidding themselves, they write beforehand an algorithm to bid for them -- i.e. they write a fully defined bidding convention they are adhering to, and we can see they are adhering to it because they aren't doing the bidding themselves, it's being done automatically via the program they wrote. (Let's assume that after a certain timeout period it's automatically a pass, and that all bids are artificially delayed to this timeout period so no information is conveyed via timing. Also, presumably partners are required to use the same program?) And -- here's the thing that preserves idea #1 -- as inputs this algorithm gets not only your current hand, the bidding so far, vulnerability, etc., but also the source code of your opponent's bidding convention, so you know how to respond to it. (Hm... standardizing a language is blech. Or just use the binary and have your program run tests on it to see what it's doing?) Boom! Idea #1 is now preserved.

(There do exist computer Bridge tournaments, apparently, but I don't know how they work; no idea if they actually use the idea I suggest, or if they do something more usual and iffy. And of course, I'm suggesting computers would only do the bidding, not the actual card play, but that's perhaps the smaller difference...)

With that now made into an actual rule, it may even be possible to make rules that actually discretely delineate what sorts of conventions are and aren't allowed, though the test would have to be a finitary one. Wait, that's no restriction at all -- Bridge is inherently finitary, since the length of bidding is bounded. So this would be possible, if very slow. Alerts, I think, should just be discarded -- you're just adding another information channel to be abused, and anyway, automating it already serves the function alerts would serve.

Anyway. I guess there were multiple points there. I think I'll end this here.

-Harry

[0]In addition to Playing to Win, let me also point out the following articles on Less Wrong, about a different sort of "real rules": Universal Law, No One Can Exempt You From Rationality's Laws. A different sort of thing, but there's a unifying idea here, in that they're all absolute rules. I have to wonder if perhaps many people only know the sort of social and/or leaky rule/law as the only sort of rule, and thus don't quite realize that these are distinct from truly absolute rules, a category which includes not only physical and mathematical laws, but also the rules of a well-defined game. But that level of incomprehension seems impossible; I think most people must at least grasp the absoluteness of mathematical laws. Then again, maybe not -- there seem to be a lot of people who think of mathematics as directly talking about physical things, rather than being something we use to model them, and try to exhibit physical counterexamples, not realizing they're only showing that the model is wrong, not the mathematics. Of course, if you trust your model enough, this sort of thing can be strong evidence for a mathematical claim (e.g., in the extreme case, "How to Convince Me That 2+2=3"), but most people making these sorts of claims don't seem to realize that distinction.
sniffnoy: (Kirby)
It worked!

Time it took Jānis Iraids to compute ||n|| for n≤1012, and thus verify ||2a||=2a for 1≤a≤39, presumaby with access to a supercomputer: 3 weeks[0]

Time it took me to verify not only that ||2a||=2a for 1≤a≤40, but that ||2a3k||=2a+3k for a≤40 and a+k≥1 on my laptop: 12 minutes.

Hooray for better algorithms!

Of course, none of what I've written here is verifiable until I've posted the code, but first I want to reorganize it, add some additional features, and ideally actually make it readable...

(I'm also going to hold off on more computations till then, as one thing I'd want to do is add an "indefinite" mode where you can just cut it off at any point, so I don't have to decide beforehand how high to compute up to...)

-Harry

[0]Source: I asked him on Twitter. I didn't ask about the computer used.

June 2025

S M T W T F S
1234567
891011121314
15161718192021
2223 2425262728
2930     
Page generated Jul. 6th, 2025 08:53 am
Powered by Dreamwidth Studios