阅读是最好的习惯

如果发明一种机器学习难以战胜人类的棋类规则,这种规则应该具备什么样的特点?

如果发明一种机器学习难以战胜人类的棋类规则,这种规则应该具备什么样的特点?

嘉兴一女子凌晨打黑车被司机尾随至家门口,事后女子道歉称司机只是想要回车费。此事真实情况如何?

所以事实真相就是:这名女子手机没电未付车费,说好了回去拿结果司机等了很久见她迟迟不来便上门催要,结果被这名女子剪辑视频写小作文发布到网上骗取流量,引导网友网暴司机。我就想问恶意剪辑造谣,损害他人名誉,并引导网友们对其进行网暴,只是一个视频道歉就可以的吗?浙江快递男造谣判刑一年,结果到她这里变成了视频道歉。有些人为了获得流量而故意打拳,引导男女对立,男女平等是通过男女对立争取来的?这种低劣的做法不丢女性群体的脸吗?还有不分青红皂白就发表极端侮辱言论的网友,你们的逻辑就是:只要看到有人写小作文说男性 更多

遭遇人生的重大挫折,应该怎么度过?

跑步去。不用找什么环境,随便一家快倒闭的健身房,一台吃灰的跑步机,站上去,跑起来。脑子里有很多念头,不用管,跑起来,时速四公里还是六公里,随便。跑着跑着,你就没精力去顾及情绪了。你的肺在撕扯、喉咙在燃烧、双腿灌铅,连最轻松的两臂也甩不起来。你开始想“为什么要跑”、“还要跑多久”、“跑步有用吗”,你随时都想停。但你不会停,因为你很难受,你正处于人生的低谷。与其静下来让情绪淹没自己,为什么不从情绪里跑出来呢?于是你咬牙继续跑,用沉重呼吸维持一个勉强算“跑”的速度。这个时候大脑似乎停止了思考。你知道你 更多

太长不看:题主可能提出了一个图灵奖级别的问题。

作为一个强化学习的研究者,我认为这是一个不可多得的好问题,细品起来甚至是一个值得研究人员不断奋斗的问题,也是短期内必然有回答的问题。这个问题至少有以下几个巧妙的地方:

2. 重要性高。事实上和人水平的比较仍然是人工智能的核心,最重要的突破仍然是跟人比较的质变,而不是一般的和AI比拼刷榜。

3. 限制合理。题目限制在了棋类,所以说很多回答里面的fancy建议都不能使用了,比如使用自然语言对话,增加游戏的状态空间(事实上棋类游戏里围棋的空间已经算很大了,棋类游戏本身是个很强的限制)等等。

我下面分析一下几个常见的“难倒AI”的构造策略的不合理性:

1、状态空间的增加。首先围棋已经是人类难以想象的高维度了,如果单纯的构造更复杂的状态空间,应该也只是算力需要增加的问题,并不能显著的增加困难程度。

2、游戏随机性的增加。现在的AI能够比较好地适应随机的情况,比如石头剪刀布游戏,即便有很强的随机性,AI仍然可以做的比较好。

3、增加战争迷雾,构造不完美信息博弈。典型的不完美信息博弈比如斗地主,DouZero仍然能做的比较好。另一个典型的游戏是四国军棋,目前因为这个游戏外网玩得很少,所以也没有很多人做[1]。我相信也是AI能够轻易解决的。

4、限制硬件功耗。这本身相当于是给AI绑了腿让AI跑,本身对人工智能是不公平的。如果要比较,就应该允许人工智能用尽可能强的算力。接受评论区意见,这里的功耗也不能是无限量,如果理论上的无限量则可以轻易查表完成。一个比较理想的限制是和Alpha Go原始论文的同等算力,注意现在的Alpha Go已经不需要这么多算力,因此原始论文中提到的算力(1920 CPUs + 280 GPUs[2]) 已经算挺多的了。这一配置属于各地区顶级实验室跳一跳就能够到的水平。

5、增加探索的难度。强化学习的一个基本困难是探索困难,因此如果能够增加探索的难度,是有望阻碍AI的。然而我觉得围棋的探索难度已经比较大,但是还是没办法阻挡AI的前进脚步。

那么我们反过来考虑,能不能尝试提出一个猜想,证明在棋类的假设下,AI已经足够强了呢?由于这个问题由柠檬提出,我们不妨叫它柠檬猜想

换言之,柠檬猜想可以重写成:

在尝试证明之前,首先我们先评估一下柠檬猜想的重要性。正如我之前的回答所写,我们目前很希望有一些哪怕是经验型的指示,能够告诉我们人工智能可以做什么,不可以做什么,以及未来5年能做什么,未来10年能做什么。柠檬猜想正是满足这一要求的一个猜想,至少告诉了我们人工智能可以做到一些事情,有望成为人工智能领域奠基性的猜想。

要知道图灵当年就是靠表格式的问题中提出了一系列有名的定理,所以柠檬猜想有望成为图灵奖级别的重要原理。

我们来考虑一下完善柠檬猜想(即列出所有需要的非平凡条件)和证明它的困难程度。

1、首先要加一些显然的限制条件,比如禁止棋类选手之间的交流,或者AI应当通过图灵测试,让人难以分辨是AI还是人类在玩。

2、平局也算AI胜利,不然完全随机的游戏即满足要求。

3、棋类的状态应当限制为一个有限集合,并且是计算机可以完全读入的(可以是不完美信息)。

4、证明应当不是纯数学/纯理论的,事实上图灵当年的理论即可证明,理论上AI可以把棋类游戏的所有状态(我们假定状态是有限集合)记下来,这样只要O(1)的时间查表找最优解就可以把游戏完成了,并且战胜玩家。

这也是核心的困难所在,柠檬猜想正是刻画出了目前人工智能理论的窘境,太理论的东西往往是过于平凡的,人工智能需要有一些半理论/半实验的东西出现,或者把部分核心的实验观测现象当作原理性的东西。

5、现在基于深度学习的算法往往是需要迭代优化的,究竟优化的好不好,是很难说的。

或者换句话说,以柠檬猜想为代表的一系列猜想,都很有意义,但是很难非平凡地证明到,如果柠檬猜想得证,那必然有很多类似的猜想借助相似的手段在不同领域可以得到证明,人类对于人工智能的把控将进入新的境地。有点类似于P与NP问题的概念。

然而这也是困难所在,相似的问题/猜想那么多,柠檬猜想不一定会成为那个幸运儿。正如NP问题那么多,第一个证明的NP问题却是想象不到的。

6、从科研的大背景来看,强化学习在走低,没有很多著名的科学家唱多强化学习。事实上强化学习已经很久没有原理上的突破,并且工程上很难落地。在计算机领域,实际应用仍然是衡量理论的金杠杆,而强化学习因为落地不顺利,如难以超过传统算法,近年来发展较为缓慢。所以现在想要证明柠檬理论,大背景上不太合适,很难找到教授支持。

7、从历史背景上看,强化学习过去的研究比较深入,深度学习时代的到来没有引来强化学习理论的根本突破。事实上深度学习本身的理论也非常不完备,因此我们想要追求柠檬猜想的证明,可能一时半会做不到。

8、从前人工作来看,我甚至找不到有望证明柠檬猜想的靠谱奠基性工作。方法论上也极为欠缺。可以预想的是,柠檬猜想如果有突破性进展,将会引领新的AI研究文化的出现,这是值得我们翘首以盼的。

9、规则一旦制定就不允许更改了,起码不允许单方面偏向人类或者AI的更改,这样会导致游戏不公平。

10、现在人工智能的一个根本特点是任务出的没算法快,所以说理论发展跟不上实验。过去理论发展比较快的时候都是因为有比较明显的没解决的问题(天体运行、几何作图、求解偏微分方程),但是目前的人工智能由于收集数据和标注的限制,数据集出的没那么快,但是解法却很快。往往一个数据集出来调调参数就可以解决。这一现象不利于柠檬猜想被研究。

有一个比较像这一方向的研究,mayi老师的第一性原理,第一性原理主要想证明的就是现在的神经网络可以规约到一些基本的网络模块,然后通过优化的方式发展出新的网络结构。然而这一方向的主要难点是,难以预言很多新的网络结构,理论落后于实验,只能起到验证的作用(说的不好听点就是马后炮)。

目前理论的前沿(比如第一性原理这篇论文)离柠檬猜想的主要距离是现在的理论只能局限在已经出现的网络(比如ResNet等),而不能拓展到未知的比较抽象的网络(比如transformer甚至都无法囊括其中),也不能对网络的一些参数的作用有比较合理的解释。

目前比较接近反驳柠檬猜想的是Reconnaissance Blind Chess[3],约翰霍普金斯大学和斯坦福大学、微软共同提出的。这个棋类游戏基于国际象棋,并融入了新的规则:每一步只能看3X3的小范围信息。目前人类可以在公开的网站上与AI进行挑战,AI获胜者将被邀请到AI的顶级会议Neurips22做展示。

我觉得其实这个任务对人类也很困难,因为人类很难记住那么多非完美信息。同时从研究的角度讲,这个任务本身不会有很多人跟随。因为学习和理解这些tricky的游戏规则,本身会花费研究者大量的时间,这本身对于研究者来讲是不划算的。

一年后再来更新,希望能有新的认知。

写了一个很棒的回答,那么作为写RL的程序员兼一个好事者,我也来逐条列一列对抗这些难题的现有做法~(仅供一乐

由于大部分棋类都使用长方形棋盘,因此采用CNN去建模就成为了一个比较自然的想法。如果换成不规则的,比如一个经典的例子就是跳棋,直接套用以前的做法确实会很有难度。但这里做表征建模其实注意两个核心点就好,具体的形式并不拘泥于长方形棋盘 + CNN:

可部署位置可变其实比较简单,在输入信息和输出信息添加所谓“可部署”的mask即可,就像在星际争霸2里,可以建造建筑的位置和可以通行的位置随着游戏进行都是可能会发生变化的,那么实际上可以通过添加所谓“buildable”和“pathable”属性,输入包含这些信息让神经网络了解到,输出通过 mask 避免采样到无效动作即可。

形状可变看起来是真的“反神经网络”,但其中也有一些可以思考的点,比如棋盘变大了,但是棋子之间的关系仍在只发生在某一比较固定的局部(比如某些棋子的属性影响还是固定的范围),那我们选择合适的方式把不断变大的棋盘切成固定的小块送入同一个网络就好了。

这个问题是很多真实应用里使用 DRL 的最大痛点之一,比如其实一个算法的核心逻辑,在 toy-level 环境上就几十行,但是因为环境的输入和输出空间,由于复杂的规则定义变成了层层逻辑重叠交织的魔鬼数据,我们就需要把刚才那个几十行的逻辑在所有数据元素上全部来一遍,还得去考虑里面哪些要通过 mask 来滤掉不必要的属性,哪些要调整权重控制量纲,最终捋下来代码经常就上千行了。那其实这种数据可以统一被抽象为所谓”nested data”,我们也自撸一个专门针对于这种数据的工具库 TreeTensor,让你对这种恶心的数据也可以像 Tensor 一样快乐的玩耍:

其实这一点正是近些年来 DRL 社区想要去提升的探索的方向,同一类型的任务却拥有不同数值结果,我们希望智能体能够在一定范围的数值和属性变化中学到某些更通用的决策能力。这里已经有一些很经典的基准环境,比如 procgen 和 minigrid,或是 emboied AI 中的各种仿真环境。这些环境通常都是设定某一任务类型(比如走迷宫),然后在任务的属性上玩很多花样(比如迷宫大小,形状等),每一个属性设置称为一个 level,希望用这种环境来评价智能体的泛化性。同时与之相应的,也产生了一系列处理这些环境的这类问题的算法,比如 PPG/PLR/DrAC 等等。

正如作者所说这是对构造 embedding 致命的打击,某一个空间维度上需要把一大堆棋子的信息全部集合起来,实际问题里比如像很多 RTS 游戏里的空中单位,由于没有单位碰撞体积,所以就经常出现聚成一团的情况。不过相应的,只要思考方式不要局限在如何在标准CNN里建模这种信息就好了,例如以单位为构造embedding的基本元素,而把他们的位置作为属性放进去,再用一些图结构建模他们的局部性即可。

这一点说实话是专门针对破坏,常规卷积不同位置使用相同卷积核这种设定的,那相应的也很简单,动态卷积核机制就是一个可以考虑的方法,比如使用动态 weight + 动态卷积位置,weight 和卷积位置都根据输入信息(例如这里有没有传送门)生成,可以借鉴前人很多魔改 dynamic conv的工作(比如deformable conv)。当然还有一种思路,我们也可以在特征工程阶段重整输入信息,做一些相反的映射,把信息的局部性恢复回来即可。

multi-agent 协作是 RL 里的重要子领域,也就有一系列很多方法来处理这个问题。比如不考虑计算开销的情况下,把所有玩家的信息中心化拼到一起过一个大网络,其实很多情况下就有不错的效果。如果要考虑带宽问题,CTDE(中心化训练去中心化执行)的范式是一个常规选择,通过训练时使用全局信息来指导优化,让各个智能体之间培养出某种“默契”,进而在执行时可以保持互相独立决策。当然,基于智能体之间信息交互和通信也有很多方法,主要是把拓扑结构和每个 agent 的即时决策信息进一步加进去,以期望提升性能。当然 multi-agent 还有很多其他有意思的话题这里就先不多说了。

不完全信息在很多牌类环境(比如人人都爱玩的麻将)里是一个常见困难,在 RTS 里像战争迷雾也是同类的存在,对于这个问题,像之前麻将,斗地主上的AI都采用了一个经典套路——在 critic 网络部分使用完整的信息来指导优化。虽然策略网络只能看到自己的信息/视野,但是我们在训练 critic 的时候可以开启作弊模式,将完整的信息输入给 critic (比如敌我双方牌面全都输入进去),这样获得的网络可以提供一个稳定靠谱的优化指导,就算策略本身得不到这些信息,他在训练过程中也不太会受到这些因素的干扰,反正我只要学到一个主动进攻的最强策略就完事了。

而对于随机化环境,即环境的状态转移存在随机性,目前学术界也已经有了一些探索性的工作,比如 MuZero 系列的后作 Stochastic MuZero 就在针对这个问题做出改进。你环境有随机性?好那我们就建立一个新的训练任务来建模这个随机性,并把相应过程融入到 MCTS 的搜索过程中去。

这一点算是这里面最简单的了,目的是破坏这个假设,那说明整局游戏的轨迹也不长,那直接不要 折扣因子,累加整局游戏的 reward 来训练即可。

首先来理一下模型推理时间问题,其实现在一般的 DRL 模型都是很小的神经网络(相比CV,NLP的巨无霸们),就像针对星际争霸2的 AlphaStar 的神经网络也就是几十MB量级,推理时间在经过一定的优化后也可以稳定在100ms上下,深度定制优化更有很大潜力。而像目前的棋牌类游戏推理时间将远小于这个量级,所以一般来讲不足为惧。

其次,如果想通过不固定的出招间隔来对抗 RL 智能体,那智能体也可以抛弃常用的固定帧数同步出招的原则,自我输出一个相隔多少帧做下一个决策的量,然后根据这个量来控制自己的出招间隔(类似 RTS 里控制 APM),大家下老年棋就和和气气,大家都想下快棋那就也奉陪到底。

这个很致命,DRL + MCTS 的组合拳是解决棋类问题的核心方法,而如果通过某些方式(比如把仿真器编译成二进制文件)破坏算法向前推演或者向后回溯的能力,对于算法最终性能和收敛效率都是很严重的打击,相应的,对于那些使用 Go-Explore 帮助探索的算法,这样的操作也有异曲同工的破坏力。

不过另一方面,也不必拘泥于此,把游戏模拟器封装起来了?那我可以根据规则自己写个模拟版呀,棋类游戏的规则和设计本身就比较简单,RL 训练又不需要渲染界面,只要能够把具体的规则梳理出来,实现一个最基本的游戏内核即可。就算规则过于复杂,也可以在自定义的简单模拟器上训练,然后结合一些迁移学习的方法和硬编码数据处理来减小模拟游戏和真实游戏之间的差距。

对于这一点,如果头铁非要 ALL IN RL 是会死得很难看的,我们得明白深度神经网络适合拟合什么样的表示,强化学习相比传统算法(比如暴力搜索和启发式算法)在解空间的探索效率上有什么样的优势,一味的 end to end 用 DRL 一把梭肯定是不行的。如果可以设计某些基于规则的局部策略来处理局部的序列操作(微观),让 RL 来学习更上层的策略操控不同的规则组合(宏观),说不定是这种设置下更好的解决办法。

其实看到这些攻防的策略,相信大家也可以看到许多深层次的问题,目前基于 DRL 的决策算法是拥有很强的上限和很多可能性的,但是,它太容易受到各种规则的制约和对抗了,一些日常问题中很容易出现的情况就很可能导致算法受到很严重的影响,虽然 RL 研究者们也可以绞尽脑汁想出对策,但是这个过程还是需要非常多的人力参与和思考。不过,这些思维碰撞也是在催生大家对于智能更多的思考吧,说不定未来我们能搞出真正强大通用的东西。

P.S. 最后小广告一下,大家对深度强化学习有兴趣的话欢迎来瞅一瞅我们的开源项目

反对某些高赞回答。

直接点题:任何企图通过设置更复杂、更难以理解的规则,以“扰乱、恶心”AI,以此打败AI的想法,无异于痴人说梦、行为艺术。

想要回答这个问题,我们需要知道当前这代AI到底是凭借什么打败人类的。从硬件计算上,以GPU为代表的并行计算技术,使得摩尔定律能够延续下去,支撑了大规模的训练;从软件算法上,深度学习和强化学习是两大根基——前者允许对不确定的复杂函数进行建模,后者允许在封闭环境(如固定规则的棋类游戏)下反复试错,使得模型不断进化。原本还有个大数据的需求,但是随着AlphaGo Zero和AlphaZero的出现,至少在封闭环境的棋类游戏中,AI已经能够从零开始学习各种技巧,通用性更强。

因此,要打败AI,必须照着它当前的软肋来。下面我简单列举几个可能性。

总体来说,人类必须承认,在封闭环境下玩各种游戏,AI已经远超人类水平。承认这一点并不丢人,就像承认汽车比人跑得快、起重机比人力气大一样。

这个问题乍一看是一个很荒唐的问题,但仔细咂摸有很多值得玩味的东西。

首先需要在问题定义里明晰这样一件事:机器学习战胜人类很困难这里的困难到底包不包含实现(Implementation)层面的的难度?

很多高赞回答的本质其实都是在这个维度里设置“恶心”,比如让状态的记录变得棘手、棋盘的形状变得不规则、提高维度、增加环境的不确定性等等,其实充其量只是说“恶心恶心程序员”而已。这样设置规则本质上提升的是“代码复杂性”而不是问题本身的“计算复杂性”。代码复杂性诚然是AI进军一个具体问题的重要阻碍,但算不上是本质的阻碍。AlphaZero乃至MuZero之类的工作已经表明,只要可以用tensor表征整个游戏,终究可以自己学着怎么理解这个游戏并优化策略的,都不是个事儿。

所以,我认为这个问题更重要、更本质的方面应当是:假设我们有一个理想中的Oracle,可以自动完成所有现实中代码层面的复杂难题,从机器学习(强化学习、深度学习等等)这个方法本质性的能力边界出发,是否可以找到一个简单的实例,使得解决这个问题(或者说达到与人类媲美的程度)是一个从计算本质上来讲困难的事情?

“从计算上来讲本质困难的事情”在理论计算机科学中有一个现成的概念,就是NP Hard问题。大意是说,如果存在一个传统图灵机算法,可以在多项式于这个问题规模的时间里解决这个问题,那么就可以在多项式时间里解决任何一个非确定性图灵机(Non-deterministic Turing Machine)在多项式时间里解决的问题(NP problem)。

说起来很抽象,举个NP Hard最简单的例子之一:

这个问题看似简单,实则在复杂性的本质上,不存在比穷举所有 2^n-1 个非空子集更好的办法。换言之,你很难(实则是几乎不能)在n的多项式的时间里找到这个问题的解答。如果你能,那么恭喜你,你已经解决并且证明了P=NP这个人类难题,可以去领千禧年大奖的一百万美金了。

一切的机器学习算法(无论是强化学习还是神经网络),本质上依然是基于确定性图灵机的传统算法,那么就要受到P问题本质难度的约束。所以,在这个层面上的思路,应该是“如何将一个本质非常复杂的NP Hard问题包装成一个棋类问题”,从而高枕无忧的声明:一切现有的算法都不能有效的解决它。

但是且慢,这里还有两个最大的问题:

1. 当我们提到这些“计算复杂度”的时候,我们讨论的都是“渐进复杂度”(即Asymptoptic Complexity)。啥意思呢?我们是设棋盘的大小是 ntimes n ,然后考察计算复杂度随着n的增加趋向于无穷时所增加的速度。在这个意义上定义“广义棋类游戏”后,我们才能判定某一个棋类游戏(比如围棋)是很难的(EXPTIME-Complete)。

可是,在日常真正的棋类游戏中,我们通常会假定棋盘、棋子等数量是有限的(受限于物理实现)。而一旦将n的规模定下来,这个问题立刻变成一个本质状态数量有限的问题,你能定下来的是一个虽然可能海量、但本质终究有限的问题规模。我们希望借助计算复杂度压倒AI的目的会大打折扣。

2. 在这个层面上,19路围棋其实已经足够复杂了。早先一直说“围棋是迄今为止人类创造的最为复杂的棋类游戏,没有之一,其可能状态数比宇宙中的原子都要多”云云。可是AlphaGo依然成功吊着人类打,颠覆了以往我们“围棋智慧对AI高不可攀”的认知。

其实说到底,从真正的“围棋之神”、也就是能够给出每一个局面的胜负判定和最佳下法的Oracle看来,AlphaZero依然还是一个弟弟,远没有达到所谓“解决19路围棋”的地步。可是,它采用了非常好的近似算法(Approximation Algorithm),使得它对于当前状态的策略、估值函数相较于真实判断非常接近,至少是远超人类,这才达到了吊着人类打的水平。

3. 因此别忘了我们的另一个目的约束:让人类赢。我们说了这么多,只是在想着怎么让AI输,却从来没有想过让人类占据独到的优势。而且,看起来我们处于一个非常尴尬的境况:我们想用本质计算复杂性极为复杂的问题来让AI麻爪,可是棋类游戏本质有限的规模,使得AI的近似算法总可以找到挺好的解,而人类却已经在这个“难度起飞”的过程里被打爆了。

从而,我们终于来到了这个问题最有意义的层面:人脑智能相较于这些机器学习的算法而言,究竟在计算本质层面上有什么超越图灵机的优势?如何找到这样一个实例?甚至……如何证明?这才是思考这个问题最有意义、也是最深刻的路向。

我个人对于这个问题的理解是:

第一,能耗。麦克斯韦妖的思想实验已经表明,对信息的处理本质上是需要消耗能量的,而对于复杂棋局的计算涉及海量信息时,其消耗的能量是惊人的。人脑虽然在绝对的计算水平上稍逊一筹,但是如果考虑到消耗能量和处理信息的比值,依然是极其优秀的(训练一个AI需要核电厂半个月的电力,训练一个人只需要十年的馒头)。能否有一个理论框架描述这个问题?

第二,类似视觉这类任务的理解力。其实,对于计算机而言有一个有趣的悖论,那就是对人而言复杂的事情对计算机而言很简单(比如超大规模的算术运算,在棋局的博弈树上游走之类),可对人而言很简单的问题对计算机来说却很复杂(比如给一张图片,识别出每个像素的归属,并还原出三维的场景)。人类的视觉中枢处理视觉信息的效率和能力令人惊叹,而且是生物经过大自然上亿年的演化得到的。从一个矩阵的像素中完成对现实世界“实体”的理解这件事,也许严格形式化下来也是一个人能够战胜人工智能的问题。

综上所述,一个现阶段最简单的答案是:双方各摆一枚棋子,需要向前行进100格到达终点,先到终点者赢。控制游戏双方的能量使用,每次让玩家看带噪声污染的图片验证码,识别正确往前走一步,错误往后退一步(起点不退)。

这个棋,AI想赢人类,本质等价于彻底解决计算机视觉的理解问题,短期内几乎很难解决。

而真的老老实实在本质上是“有限状态转移的马尔可夫决策过程”里比拼计算力和直觉的棋类游戏里,恐怕人类都难逃被吊打的命运

以上

我觉得必须从问题的结构入手,尽可能恶心写RL的程序员。核心不是增大搜索空间,而是增大“描述搜索空间”的难度。

就目前强化学习的发展情况来看:

首先完全信息博弈中,几乎计算机都战胜了人类。包括各种棋类:中国象棋,国际象棋,围棋。解决这类完全信息博弈的方法大致分为两种,第一种是基于搜索,比较有名的是国际象棋引擎stockfish;另一种是基于深度神经网络的方法,比较有名就是alphazero系列。这两种方法目前都稳稳击败人类。

在非完全信息博弈中,计算机在一部分场景中战胜了人类,比较经典的就是牌类,包括麻将,德州扑克等。这类游戏虽然计算机不能保证稳定获胜,但是可以保证超越人类选手的高平均回报。

在非完全信息博弈中,人类还没有全军覆没,一些场景中人类能够击败计算机。最经典是星际争霸2。计算机在被限制APM的情况下还不能获得稳定的高胜率。(不过近些年似乎有更新的模型出现,计算机的胜率在稳步提高,终有一天会超越人类)

受到星际争霸2启发,我们可以发现这个游戏的一些特点,首先是非完全信息,由于战争迷雾的存在,双方必须持续侦查;其次战略部署的重要性,这实际上在本质上体现出问题必须具有较弱的马尔可夫性,即动作评估不能仅依赖于当前时刻,必须依赖过去的时间。目前强化学习理论处理弱马尔可夫环境还是比较困难的。

综上,这个规则首先应该是非完全信息的,第二,规则应保证过去做出的决策对未来产生长久的影响。第三,游戏足够复杂,状态空间应该足够大,即这个游戏的变量要足够多,最好是连续状态空间与动作空间,这样才能给计算机制造足够的麻烦。

其实就是提出一些机器学习解决不了的问题就行,比如找第n个素数这种问题,机器学习不会比常用算法有任何优势。

一个无限大棋盘,从1到n编号,双方轮流随意下子,当落子位置编号是素数时交由对手下棋,编号是合数直接输。

这种时候你用传统机器学习算法应该训练不出什么有强度的AI。毕竟是一个非紧集上的畸形函数,怎么逼近都会出问题。

除非程序猿写AI时主动给写一个素数判别法进去,否则只靠初等函数和机器学习的框架不可能拟合出来素数分布……

进一步可以改变规则,还是之前的棋盘,双方约定一个集合A,落子在A以外就算输。每次下棋集合A都由双方事先约定好,只要机器学习做不到能完全通过自然语言推导出A的具体含义,那人类总能战胜AI。

这就把这个问题划归到了图灵测试上~~~

你玩过大富翁和飞行棋吗

再提炼总结一下,我的观点本质上,是要和ai比拼zero-shot的能力。这个游戏依赖参赛者的zero-shot生成能力和zero-shot判别能力。语言只是一个例子,如果其他模态的信息可以考察参赛者的zero-shot生成能力和zero-shot判别能力,一样可以。

有些人对我的说法有误解,我还是举几个例子。一个是越南,最近一年,基本已经变成中国的代名词了。我很好奇AI,在没有训练数据的情况,是否能真的区分搓米问答回答的里的“越南”,是一星越南还是五星越南。但对于人而言,基本都有一眼“丁真”的能力,一眼就看出这篇文章的越南是真越南,那篇文章里的越南是中国。当然越南只是个例子,对于人类能力而言,可以轻易换成柬埔寨、冈比亚甚至半人马座阿尔法星,阅读者都可以轻易区分。

还有一个例子,就是为了躲避审查,大家发明出的各种词汇。基本人类也是一眼就能看出对方想说什么,最简单的缩写、谐音、完型填空等等。而且这个能力看不到极限,总有人能整出个新词,然后所有人马上就能理解。在这个斗智斗勇过程中,AI一直处于下风,所以AI审查,基本职能做点召回,背后还是需要大量人工审查员进行复核。内容审查对抗,完全可以搞成一个游戏,一方疯狂输出黑话,一方让AI识别并解释。说不定真能推动人工智能的发展呢~

现阶段我觉得单纯靠规则很难困住ai了。

但我想到一个游戏,现阶段AI肯定搞不定。

那就是狼人杀。浪人杀规则并不复杂。

但这游戏最大的难点在于对人类自然语言的解析与生成,及谎言下的信息不透明博弈。

首先,人类的语言是无限丰富的。很容易就创造一些ai从来没见过的词和句。对现在都还没有真正学习能力的ai而言,瞬间就能让它懵逼,而无法解析。

其次,这游戏背后充满了逻辑。而逻辑恰恰是现在人工智能的弱点。

然后,这游戏还要生成语言,要说服别人,要解释原因。现在的弱人工智能技术在足够大的训练数据下,我觉得应该能掌握一些套路和模版。但要超越人类顶尖高手还很困难。

最后,这游戏谎话连篇。这对于人工智能而言,就是大量的噪音和误导,真实的意图都被掩盖在谎言之中。这也是一种信息完全不透明的博弈方式。

限制计算的总能耗,不知道是否行得通?目前的阿法狗能耗远远比不过人类。

可以有以下一项或多项:

一、游玩过程包含大量随机性

实体棋类游戏可以丢骰子、抛硬币等,电子棋类游戏可以有复杂的伤害计算体系和各种行动中的随机变化。

二、盘面信息不完全透明

例如覆盖或立起的实体棋子,电子棋类游戏很容易实现的战争迷雾、棋子有限视野、特定棋子的隐形能力,实体和电子都能做的从打乱的库中抽取棋子。

三、不平衡对抗

例如三位玩家各自操控少量棋子对抗一位操控大量棋子、一回合行动三次的玩家。

四、游玩过程涉及演化塑造的、机器实现起来极困难的机制

例如频繁要求识别手写文字。

例如设计一款类似军棋暗棋的、翻开棋子对战的游戏,棋子的移动能力和攻防优劣不止取决于棋子类型,还要投骰子产生步数、计算成功率。

规则只要满足以下两个中的一个即可

特点1. 石头剪刀布

特点2. 人类必胜

接下来你就是不断在规则里面做复杂的变换,让规则变得极其复杂且看上去好像合理,但不改变规则的本质。

这种方法不但可以打败机器学习,还可以打败比你聪明。最终你可以把一个智力问题,变成一个权限问题。

可能已经有了。(我是说可能)

它比较符合 所说的增大描述搜索空间的情况。

这种棋名为5d chess with multiverse timetravel,是基于国际象棋规则的新棋。下简写为5dc。

5dc的特色,简而言之,是将棋子在2d棋盘上的二维的走法推广到四维。基于其规则,没有经过充分训练的神经网络会因为搜索范围过大而深度极低。

感兴趣的话可以看一看

这篇文章里介绍了一个深度和广度都极高的开局陷阱,基本涵盖了5dc中常用的开局战术,不懂这个游戏也可以大概了解其复杂度。

在5dc讨论群中进行过数次关于5dc机器学习的讨论,发现的主要难点是不知道用什么数据结构和算力不足。

update:其实还有一个思路
AI永远不可能在井字棋战胜人类!

5d chess(网页版)

这是个外国人写的游戏

根本莫得实体棋盘,因为棋盘数量会随回合数增长

放两张图体会一下即可:

在这里深度学习跟使用开局库的胜率大概差不太多
但是,深度学习做出的开局库,大概比不上真正的开局库。
毕竟在这里,搜索空间会随时间增长,并不存在一个CNN可用的局面记录器
开局库最多记录“每一步的操作”

然而……“每一步的操作”在深度学习里面属于自然语言处理,而不是什么CNN可以解决的领域。
在这个领域,机器大概仍然可以战胜人,但战胜的方法多半不是深度学习。
用强化学习训练一个开局库(强化学习不是深度学习!),大概会比神经网络好用很多(毕竟算得快)

这个简单。

高语义,长上下文依赖,找条狗来说不定也能爆杀机器学习。

比如,海龟汤、狼人杀、谁是卧底。

嘉兴一女子凌晨打黑车被司机尾随至家门口,事后女子道歉称司机只是想要回车费。此事真实情况如何?

所以事实真相就是:这名女子手机没电未付车费,说好了回去拿结果司机等了很久见她迟迟不来便上门催要,结果被这名女子剪辑视频写小作文发布到网上骗取流量,引导网友网暴司机。我就想问恶意剪辑造谣,损害他人名誉,并引导网友们对其进行网暴,只是一个视频道歉就可以的吗?浙江快递男造谣判刑一年,结果到她这里变成了视频道歉。有些人为了获得流量而故意打拳,引导男女对立,男女平等是通过男女对立争取来的?这种低劣的做法不丢女性群体的脸吗?还有不分青红皂白就发表极端侮辱言论的网友,你们的逻辑就是:只要看到有人写小作文说男性 更多

遭遇人生的重大挫折,应该怎么度过?

跑步去。不用找什么环境,随便一家快倒闭的健身房,一台吃灰的跑步机,站上去,跑起来。脑子里有很多念头,不用管,跑起来,时速四公里还是六公里,随便。跑着跑着,你就没精力去顾及情绪了。你的肺在撕扯、喉咙在燃烧、双腿灌铅,连最轻松的两臂也甩不起来。你开始想“为什么要跑”、“还要跑多久”、“跑步有用吗”,你随时都想停。但你不会停,因为你很难受,你正处于人生的低谷。与其静下来让情绪淹没自己,为什么不从情绪里跑出来呢?于是你咬牙继续跑,用沉重呼吸维持一个勉强算“跑”的速度。这个时候大脑似乎停止了思考。你知道你 更多

赞(0) 打赏
未经允许不得转载:微精选 » 如果发明一种机器学习难以战胜人类的棋类规则,这种规则应该具备什么样的特点?
分享到: 更多 (0)

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏