CHAPTER 07/1979〜1995

日本的第五代计算机

第五代计算机这项国家项目,想实现什么,又留下了什么(1979〜1995年)

1982年,日本以国家之力启动了一项新型计算机的计划:让许多台计算机同时进行推理(从规则推出答案),从而变快。全世界都为之震动。翻开资料就会发现,看把什么当作目标,它既可以算成功,也可以算失败。这套道理,我们动手来验证。

011946〜1981・名称

为什么叫

计算机的“代”,是按什么来数的?

计算机曾经按所用的电子元件来划分代。1981年,日本情报处理开发协会(JIPDEC)出版的一本小册子,把计算机分为第1代(真空管)、第2代(晶体管)、第3代(IC,集成电路)、第3.5代(LSI,大规模集成电路)和第4代(超大规模集成电路)。册子写道,当时正是第4代的开端,而且它们几乎都遵循1946年冯·诺依曼提出的冯·诺依曼结构。

冯·诺依曼结构把指令和数据放在同一个存储器里,一条一条取出指令,按顺序执行。册子主张,要突破这种结构的弱点,就需要一种第5代。在右边的图里点一点各代的方框吧。只有第5代的元件被写成,内容是(推理、知识库、智能接口)。换代的不是元件,而是想法。

面向这个项目的调查始于1979年度(委员长是东京大学的元冈达)。同年8月,第6届国际人工智能联合会议(IJCAI)在东京召开。此前5届的举办地依次是华盛顿、伦敦、斯坦福、第比利斯和剑桥。

图所展示的:第1〜4代是按“使用的部件”划分的,第5代却以“做什么的机器(用知识推理)”命名。这是思路上的换代。

021981・目标

有眼、耳、口,听得懂话的计算机

1981年,第五代被写成要追求什么样的计算机?

1981年11月JIPDEC的小册子写道,第5代计算机,并说要(造出试制机),就得尽早开始研究。它列出了想要的样子,共 8项功能。比如能直接处理声音和图像的,能用自然语言交谈、的,以及具备常识、靠推理解决问题的计算机等。

右边的图把拆成3个阶段,做了一个小例子(① 把说法改写成逻辑问题,② 推理,③ 查找知识)。说法稍微一变,就会卡在 ①。而“谁年纪大?”这样的问题,如果没有登记“父母比孩子年长”这条常识,就答不出来。

1993年的最终评估报告记载,研究中途才明白,要把声音和图像当作知识来处理,必须积累和整理庞大的背景知识。

常见说法常见说法:第五代承诺10年内造出像人一样会说话的计算机
原始资料里:1981年的文件里,确实写着。但所长渕一博在1992年说过,1982年真正启动的计划,把机器翻译之类应用系统的开发排除在目标之外,只专注于研究会推理的机器。看哪一年的哪份文件,所列的目标并不相同。

图所展示的:1981年文件描绘的“听得懂话的计算机”,只要说法稍变就会停下,没有人人皆知的常识就答不出来。因此,计划后来缩小到制造推理机器。

031981〜1995・研究所

从会议到研究所ICOT

这项国家项目,是由怎样的人、怎样推动的?

1981年10月19日至22日,在东京召开。据主办方的小册子,有来自15个国家的约300人参加。

1982年4月,财团“新一代计算机技术开发机构(ICOT)”成立,6月研究所开始研究。所长由电子技术综合研究所的渕一博出任。研究人员由电子技术综合研究所、日本电信电话公社和8家计算机公司派来,起初约40人,原则上每3〜4年轮换一次。经费全部来自通商产业省的委托费。

右边的图表示研究所的席位和轮换的人。内田俊一(2005)写道,包括延期在内的13年间,到ICOT任职的人约有200人。40个席位每3〜4年轮换一次,人数大致就是这个数。

经过的人数 ≈ S ×(1+(T − 1)÷ L)
S
席位数
T
年数(13)
L
1个人在岗的年数(3〜4)

图所展示的:约40个岗位每隔3〜4年更换人员,因此13年间约有200人经过研究所,再回到公司或大学。

到访者的累计(逐年)
041972〜1984・逻辑编程

用事实和规则作答

写程序,就只是写步骤吗?

1972年,马赛的Colmerauer和Roussel创造了Prolog语言,把逻辑语句排在一起,就直接成了程序。一同参与思考的Kowalski回忆那年夏天时说:(译)。

在Prolog里写的不是计算步骤,而是事实(太郎是花子的父母)和规则(如果X是Y的父母、Y是Z的父母,那么X是Z的祖父母)。问题一来,计算机就从上往下试规则,不合适就退回去试下一条(回溯)。在右边的图里点“1步”试试看。

第五代把逻辑编程放在了中心。据Nilsson(2010),后来成为ICOT副所长的古川康一,在1970年代于SRI接触到Prolog,把它的处理系统带回了日本。渕一博在1984年说,他对选择Prolog越来越有信心。

祖父母(X, Z) ← 父母(X, Y), 父母(Y, Z)
X, Y, Z
变量
←
右边全部成立,则左边也成立

图所展示的:Prolog不写操作步骤,只列出事实和规则。收到问题后,机器依次尝试规则,不符就回退,寻找别的路径,直到找到答案。

05逻辑编程・合一

把形状对上:合一

问题和规则“对得上”,指的是什么?

Prolog使用规则之前一定要做的,是合一。把问题和规则的头部(←的左边)从头开始逐项比较,看能不能给变量(内容未定的盒子)填上值,使两边变成同样的形状。父母(X, 花子)和 父母(太郎, Y),只要让X取太郎、Y取花子,就一样了。父母(X, 花子)和 父母(太郎, 次郎)则对不上。

在右边的图里点“1步”,正在比较的地方会亮成紫色。在 点(X, X)里,先填进X的值,对后面的比较也有效。如果把变量填进含有它自身的形状,比如X和f(X),形状就会无限延续。防止这种情况的是出现检查。

最终评估(1993)写道,并行推理机PIM的处理器有专用指令,用来顺着变量所填值的链条往下查(解引用)。

f(X, b)与f(a, Y) → X=a, Y=b
f
结构的名字
X, Y
变量
a, b
常量的名字
→
为了对上而填入变量的值

图所展示的:合一是从开头比较2个结构,给尚未确定内容的格子(变量)填入值,检查能否变成相同结构。填入包含变量自身的结构会无限延续,因此有专门阻止这种情况的检查。

061982〜1984・世界的反应

报告书里的“日本”

世界各国是为了对抗日本的计划才行动的吗?

东京会议之后,各地都有大计划启动。英国在1982年3月,由负责信息技术的大臣成立了委员会,并在当年的报告里建议开展一项由政府、企业和大学共同研究、为期5年、耗资3.5亿英镑的计划。美国方面,企业联合成立了共同研究公司MCC,国防部的研究机构DARPA在1983年10月发布了的计划书。欧洲共同体在1983年提出了ESPRIT。

然而,这些文件里日本是怎么被写的,却截然不同。右边的图里,线的粗细表示那份文件对日本的描述有多强。英国的报告在正文开头就写道,委员会成立的契机是(译)。欧洲的提案书只在注释里举例提了1次,DARPA的计划书则一次也没有出现日本,也没有出现第五代。

切换到“日本方面的看法(1995)”,就成了1995年《通产研究评论》的写法:这些全都是受第五代触发而诞生的计划。

常见说法常见说法:世界各国为了对抗日本,开始了自己的AI计划
原始资料里:英国的报告明确写道,契机是日本的发布。另一方面,美国国防部研究机构的计划书(1983年)里,日本和第五代一次也没有出现(历史书写道,它作为说服国会的气氛倒是很大)。欧洲的提案文件(1983年)里,也只在注释里作为例子出现过1次。

图所展示的:日本计划启动后,各地也开始了大型计划,但相关文件提及日本的程度差别很大。英国写明日本是起因,而美国国防计划书提及日本的次数是0。

071983・预言

《第五代》一书与预言的时钟

把日本的计划描绘成巨大威胁的,是谁?

1983年,斯坦福大学计算机科学教授Feigenbaum,和写过AI历史书的作家McCorduck,出版了介绍日本计划的书《第五代》。在刊登该书节选的杂志文章里,两人写道,第五代只要有一部分成功,日本就会在世界信息产业中一骑绝尘,美国没有与之对抗的国家计划。他们还说,很多美国人心存怀疑,但这个国家这场赌博成功的可能性比想象的高。据历史书(Nilsson 2010),这本书加深了审议研究预算的国会的危机感。

两人是为了向美国人呼吁(译)才写的。在右边的预言时钟里拖动“当前年份”,1981年的小册子、这本书、1992年所长的展望,各自到了该见分晓的年份,之后的情况就会显示出来。

关于美国企业联合成立的MCC,Nilsson写道,到1987年第一任总裁卸任时,第五代已经不再被认为是那么大的威胁了。

常见说法常见说法:第五代的威胁是日本自己夸大宣传的
原始资料里:把日本的计划描绘成巨大威胁并加以传播的人里,也有美国的AI研究者自己。这本书是为了指出美国没有国家计划这个问题而写的。

图所展示的:把日本计划宣传为巨大威胁的人中,也有美国AI研究者自己。预言有检验结果的年份,到了那个时候就能看到结果。

081982〜1995・资金

541亿日元,还是569亿日元?

国家为第五代计算机花了多少钱?

据1995年《通产研究评论》刊载的表(出处是通商产业省的资料),国家支出的预算在 1982〜1992年度的11年间约为541亿日元(前期83亿、中期216亿、后期242亿)。之后,在1993〜1994年度2年的后续计划上又支出约28亿,合计约569亿日元。从1986年度起,除一般会计(普通预算)外,还从另设的特别会计中支出。

拖动右边柱状图的“加到哪一年”看看。停在1992年度是541亿日元,加到1994年度就是569亿日元。常见的“约540亿日元”(1993年的最终评估)和“570亿日元”(2017年国会上的发言等)的差别,在于统计的期间不同。点按钮,还能显示海外的估算。

合计 =Σ(一般会计 + 特别会计)
Σ
逐个年度加起来
年度
从4月到次年3月
常见说法常见说法:国外曾认为,日本向第五代投入了巨额资金,并隐瞒了真实数额
原始资料里:1982年英国的报告写下了(译)的看法,而1993年的最终评估报告的是,1995年的报告还登出了按年度列出的明细表。海外的估算有4.5亿美元、5亿美元、8.5亿美元,参差不齐,最大的数字出自计划结束之后写的一部百科全书。

图所展示的:“约540亿日元”和“570亿日元”的差别,并不是谎报或隐瞒,而是累计到哪个财政年度的不同。

091982〜1991・日本的热潮

“逆输入”的AI热潮

日本的第2次AI热潮,是从哪里来的?

《AI白皮书1991》(由通商产业省的一个课监修)写道,“从1985年前后起,‘AI热潮’一词被媒体大肆追捧”。并且说日本的热潮是第五代及其的。书中还写到,企业的高层仿佛抱着这种神话般的想法,自上而下地下令开发AI。1985年的国会上,也把AI说成。

这个词本身是从什么时候开始用的呢?在国立国会图书馆的全文检索里,把数字化的书和杂志按从旧到新排列,以AI的含义出现的最早一例,是1982年10月的杂志。《PRESIDENT》上有一句。在右边的图里搜索,先出来的是1978年和1981年的结果。它们是从书的作者名A.I. Bloomfield(日语写作“A.I.ブームフィールド”)和漫才(日本的舞台相声)的MANZAI热潮(MANZAIブーム)里读出来的字。字符串一致,不一定是同一个词。

常见说法常见说法:日本的第2次AI热潮,是日本自己的第五代让国内热闹起来的
原始资料里:据1991年通商产业省一个课监修的白皮书,日本的热潮是第五代及其的。

图所展示的:日本的第2次AI热潮,是第五代计划在海外的反响“逆向进口”后引发的。搜索词语时,即使文字相同,也不一定意思相同。

101984〜1988・所长的话

会招来反弹

计划进行期间,所长本人是怎么说的?

所长渕一博多次留下了抑制渲染梦想的话。1984年4月接受美国杂志采访时,他说自己长期对AI持怀疑态度,并回答说,期待在最初的10年里出应用并不现实。同年11月的主旨演讲中,他也说自己的框架是,这项计划就是要验证它,并表示不直接涉足。

在1988年的演讲中,他说这项计划。他把列为国家研究计划容易陷入的诱惑之一,并告诫说,历史上有过目标定得太高(或被误认为太高)而招来反弹的例子。

右边是表现这种想法的图(数值全部是本站的暂定值)。目标即使定得保守,只要在外界被传得很大,到了约定的年份,期待就会大幅跌落。

约定年份的期待 = 实力 −(目标 × 倍率超出实力的部分)。期待的下限是0。
实力
到期限为止实际取得的成果
目标 × 倍率
社会所接收到的承诺
常见说法常见说法:第五代是国家把能说话、会思考的计算机的梦想说得太大才失败的
原始资料里:计划进行期间,所长本人的话多是在抑制过度的期待。不过,同一时期周围传开了过大的形象,这一点在别的资料里有记录(本章的02・07)。

图所展示的:在计划进行期间,所长多次留下克制宏大愿景的言论。即使目标很谨慎,外界传播时把它放大,到了承诺的年份,期待也会大幅下降。

111985〜1992・并行处理

分活,以及连接的麻烦

把计算机增加到512台,就能快512倍吗?

第五代的核心是让许多台计算机同时进行推理的并行处理。把搜索答案时的分情况的树,切成一根根枝杈的工作,分给各台。可是枝杈的大小参差不齐,每次交活还要花连接的工夫。

在右边的图里把台数增加看看。一开始只是按顺序分发的话,会有先做完而干等的台。让闲下来的台去领剩下的活,就能接近台数那么快。即便如此,也不可能比最大的那1份活更早结束(树是本站做的例子)。

最终评估(1993)写道,在逻辑模拟中 256台快166倍,视问题不同,512台时接近500倍,并把分配工作的办法(负载均衡)做成零件分发出去。Nilsson(2010)写道,除了适合的特殊问题之外,很难把并行的优点发挥到极致。

S(P)=T(1) ÷ T(P)
P
台数
T(P)
P台把所有事做完的时间(含交活的工夫)
S(P)
快了多少倍

图所展示的:把计算机增加到512台,并不会快512倍。任务大小不一,分配任务也需要时间,整体无法比完成最大任务所需的时间更早结束。

台数与速度倍率(两者的刻度都是每次翻倍)
121985〜1992・GHC与KL1

数据没来就等着

好几台计算机用同一份数据时,顺序怎么保证?

要让Prolog在好几台计算机上同时运行很难(Nilsson 2010)。据渕一博1992年的演讲,中期之初,研究员上田和纪提出了GHC(Guarded Horn Clauses)。室长近山隆以此为基础设计了KL1,后期的研究全部统一到KL1上。

GHC的规则带有守卫(guard)。一旦需要查看还没有值的变量,任务就会在那里睡着(停下来等待),值一到就醒来。选定了通过守卫的规则之后,就不再回头重来。在右边的图里,台1发送数字,台2一个个累加。下一个数字没送到,台2就睡着。“去掉生产方”之后,所有任务都睡着不动了(死锁)。

据最终评估(1993),用KL1写的操作系统PIMOS的第一版约有44,000行,调试器能自动发现死锁(图是把这个想法缩小后的例子)。

头 :- 守卫 | 体
守卫
是否可以选用的条件(没有值就等待)
体
选定之后的工作

图所展示的:多台机器使用同一份数据时,如果值还没出现,任务就暂停等待,值一到就继续。没有生成数据的一方,所有任务都会一直等待,无法前进。

131982〜1992・PIM

每秒1亿5,600万次推理

推理的速度怎么测,又快到了什么程度?

第五代用 LIPS(每秒推理次数)来衡量推理的速度。据Nilsson(2010),1980年代初的计算机每秒约10万次,日本想把它提高到1,000倍以上。目标是每秒1亿次。

前期开发了扩展Prolog的语言ESP和单机推理的机器PSI,包括改良版在内,约500台用于研究。中期末开发了64台构成的Multi-PSI,后期开发了并行推理机PIM。据最终评估(1993),512台的PIM/p峰值为每秒1亿5,600万次,256台的PIM/m为1亿5,300万次,约为通用大型计算机的100倍。

右边的图让这个页面里的JavaScript解一道把列表倒过来的小题(30个元素,推理496次),并测量速度。PIM的一个单元处理器每秒处理30〜60万次。用右边的滑块,可以比较把各台的处理次数相加的计算例子与PIM/p的实际成绩。

LIPS= 推理次数 ÷ 秒数
推理1次
用1次规则(本站的数法)
常见说法常见说法:第五代造出了连接1,000台计算机的推理机
原始资料里:作为一台机器,最大的是512台的PIM/p。把5种型号(512、256、256、16、16台)加起来超过1,000台,这是最终评估的写法。

图所展示的:推理速度用每1秒应用规则的次数(LIPS)衡量。PIM每1秒约1亿5,600万次,超过了1亿次的目标。

PIM的5种型号的台数
141992・定理证明

机器证明了一部分未解决的问题

“根本没有这种东西”,计算机是怎么证明的?

据最终评估(1993),PIM上的定理证明程序MGTP,自动证明了加拿大数学家Bennett提出的准群未解决问题的一部分。它在256台上跑出了200倍以上的速度,还想办法抑制了分情况造成的组合爆炸。渕一博在1992年说,这个证明器也被用作进行法律推理的系统的推理引擎。

准群的乘法表是这样一种表:每一行、每一列里,各个符号都恰好出现1次(拉丁方阵)。右边的图一格一格地填表来搜索,走进死胡同就退回去。只要所有的分情况都走进死胡同,就证明了这样的表不存在。满足x*x=x和x*y=y*x的表,在3和5时能找到,在4和6时不存在(条件是本站选的例子)。

x*x=x, x*y=y*x
x*y
第x行第y列格子里的字母
先读
提早发现无字母可填的格子,从而中止搜索

图所展示的:每次填1个格子,遇到死路就回退,将搜索进行到底;如果所有情况都走不通,就证明了“不存在这样的表”。

151986〜1995・电子化词典

靠人手编出意义的词典

要让计算机处理词语的意义,需要什么?

1986年4月,作为让计算机处理日常语言的基础,建造大规模“电子化词典”的“日本电子化词典研究所(EDR)”的9年计划启动了。它由把单词和意义(概念)联系起来的“单词词典”、表示概念上下位关系的“概念词典”、记录词语搭配的“共现词典”、日英“对译词典”等组成。

右边的图借用这个想法,做了一部小词典。atsui(あつい,写作厚い、熱い、暑い)这个词,靠一起出现的词对来选择意义。即使没有词对,沿着概念往上走(咖啡 → 饮料),有词对也能选出来。

现在的介绍页面写的是:日语单词约27万个,概念约41万个,共现约90万句。最终评估也写道,收集语言之外的知识,仅靠ICOT是有限度的,寄希望于EDR和美国MCC的CYC。

得分 = 有直接共现时为2,没有直接共现但上位概念中有共现时为1,两者都没有时为0
共现
一起出现的词对
得分的定法
本站独有的计分

图所展示的:要让计算机选择词语的意思,需要人们大量收集共同出现的词语组合,以及词语之间的上下位关系,编成词典。

161992〜1995・评价

“失败了”,用的是哪把尺子?

第五代是成功了,还是失败了?

1992年6月,在发表成果的国际会议FGCS'92之后,报纸The Baltimore Sun的社论写道,这项计划的(译)。但在那次会议的主旨演讲里,所长渕一博介绍说:。渕解释说,这类评论的源头是1981年的会议上所讲的那幅宏大的图景,而1982年启动的计划内容要保守得多,并表示自己相信这是成功的。

1993年的最终评估按目标汇总了成果。推理速度的目标超额完成,但通过声音和图像与人交流的机制,没有做到造出来的程度。总体上,它写道。1995年的《通产研究评论》认为,因为没有变成产品就说失败的看法,没有充分理解计划的理念,但同时写道,硬件的机制不会用在未来的技术上。Nilsson(2010)写道,很多人认为,成果的多数如今只有历史意义。在右边的图里切换尺子,同一项计划的成绩单就会变。

常见说法常见说法:第五代失败了(日本也承认了)
原始资料里:1992年的会议上,所长不是承认了失败,而是解释说,认为失败的评论的源头是1981年的宏大图景。最终评估也是按目标分开写的。所造的计算机和软件没有在社会上普及这一点,《通产研究评论》和外部研究者的书都有指出。把什么当作目标,答案就不同。

图所展示的:第五代计划成功还是失败,取决于用什么目标作为衡量标准。

171987〜1995・小型化

专用机与普通计算机

世界上最快的计算机,为什么没有普及?

PIM的推理速度约为通用大型机的100倍。然而据Nilsson(2010),就连普通的工作站和个人电脑也变得高性能了,超过了PIM。《通产研究评论》(1995)也写道,硬件的机制会因小型化(向小型计算机转移)等而不会用在未来的技术上。

在右边的图里拖动普通机器的增长方式看看。专用机的速度停留在造出来时的水平。即使差100倍,只要普通机器每年变成1.5倍,大约11年就追上了(增长方式是暂定的数)。

同样的事也发生在AI专用的Lisp机上。据开发者之一的回忆,Lisp在Sun等工作站上跑得很好了,专用机的优势一下子变小了。1991年的白皮书也写道,日本用于AI的计算机,以个人电脑等普通机型为主。

n=log(差距)÷ log(G)
n
追上所需的年数
差距
最初的速度差(100)
G
普通机器1年变成几倍

图所展示的:即使专用机快100倍,普通机器每年不断加速,也会在几年后追上。因为专用机的速度停留在制造时。

181992〜1995・此后

100个软件飞散开去

国家的计划结束时,造出来的东西去了哪里?

第五代的主体比预定的10年延长了1年,于1993年3月结束。从4月起,又持续了2年。所开发的软件只能在专用的并行推理机上运行,因此开发了把KL1转换成C语言的语言处理系统KLIC,让它在当时开始普及的UNIX并行机等上也能运行。

软件作为“ICOT免费软件”免费公开。1992年6月的FGCS'92公开了71个,1993年6月追加6个,1994年11月追加包括KLIC在内的7个,1995年3月底追加16个,合计100个。对于著作权不归国家而归ICOT的软件,也去掉了妨碍研究的限制后公开。国家预算支持的研究,于1995年3月全部完成。

在右边的图里点“翻译一行”,逻辑的规则就会逐步被替换成一般编程语言的循环(for)和条件分支(if)。所长渕一博在1992年说,他期待这项计划诞生的,在世界各地发芽。

常见说法常见说法:第五代是1982〜1992年的计划
原始资料里:主体延长了1年,持续到1993年3月(1992年度末)。此后2年里,实施了让成果也能在UNIX计算机上运行并免费公开的计划。国家预算支持的研究全部结束,是在1995年3月。

图所展示的:把只能在专用机上运行的软件翻译成普通编程语言,使它能在各处运行,并免费公开了100个程序。

结语

这一章里,尚不清楚的事

关于第五代,不清楚的事还有很多。协作企业所负担的费用和人员,没有计入国家的表。并行推理机在计划结束后是怎么用的,公开的软件被使用了多少,本站也没有核实到。写有翻译词数等数值目标的1981年没有找到。失败的说法是从美国哪里传开的(1992年的New York Times文章等),也没能确认文章。

成功还是失败,看把什么当作目标,答案会不同。是1981年的梦想图景,是1982年启动的计划,还是在社会上实际被使用。同一项计划,换一把尺子,成绩单就变了。所长本人在1988年就告诫过,过高的目标会招来反弹,这也作为热潮之中的记录留了下来。

下一章要看的,是第2次热潮冷下来的过程中,悄悄成长的幼芽。1991年的白皮书写道,日本没有迎来以前在美国见到过的那种寒冬。(给老师:这一章与信息Ⅱ(日本高中的选修信息科目)的(1)的历史,以及(4)的信息系统开发相关联。详见“给老师”页面。)