Surreal Number 是解决一类非平等博弈问题的利器,它通常被用来描述一个游戏状态。
这里我们略过 Surreal Number 的定义,直接考虑用实数表示 Surreal Number 来讨论它在博弈上的运用。
我们将游戏的两个玩家称作左人和右人,在它们的优劣势对于 Surreal Number 的贡献上,左人为正,右人为负。因此,如果一个状态的 Surreal Number 是正数,则左人必胜;为负数,则右人必胜;为
0
0
0 则后手必胜。先手必胜的状态稍后再说。
首先,有一棵 Surreal Number 树,根是
0
0
0,每次最左和最右是
±
1
\pm1
±1,中间的分支为和它最接近的两个的平均数,如下图
假设一个状态被左人操作过后得到的状态的 Surreal Number 集合为
T
L
{TL}
TL,被右人操作过后得到的集合为
T
R
TR
TR。那么当前状态的 Surreal Number 为
{
T
L
∣
T
R
}
\{TL|TR\}
{TL∣TR} 也就是
{
T
L
m
a
x
∣
T
R
m
i
n
}
\{TL_{max}|TR_{min}\}
{TLmax∣TRmin},它的值就等于树上位于
T
L
m
a
x
TL_{max}
TLmax 和
T
R
m
i
n
TR_{min}
TRmin 之间的深度最浅的数。初始状态也就是没有后继的状态的 Surreal Number 就是
0
0
0。由 Surreal Number 的定义我们容易发现,
T
L
m
a
x
TL_{max}
TLmax 是必须小于
T
R
m
i
n
TR_{min}
TRmin。所以当不满足这个条件的状态出现时,这种博弈问题就无法利用 Surreal Number 解决。我们也容易发现只要
T
L
m
a
x
TL_{max}
TLmax 为负,
T
R
m
i
n
TR_{min}
TRmin 为正那么这个状态的 Surreal Number 为
0
0
0,就是后手必胜,同时如果
T
L
m
a
x
TL_{max}
TLmax 和
T
R
m
i
n
TR_{min}
TRmin 都为
0
0
0,那么就是先手必胜了,这种状态我们记为
∗
*
∗,关于
∗
*
∗ 和
↑
,
↓
\uparrow,\downarrow
↑,↓ 的咱不讨论。因为不会
对于多个非平等博弈游戏,我们直接将他们的 Surreal Number 相加就是整个游戏的 Surreal Number 了。
【2019 Multi-University Training Contest Stage 2】Problem G Game
对于 3 × 3 3\times 3 3×3 的棋盘搜出它的 Surreal Number 即可
【清华集训2017】福若格斯
咕咕咕