acm-header
登录

ACM通信

的观点

我们真的需要计算思维吗?


宇宙螺旋,插图

信贷:Vallia

坦率地说,这个观点的标题是为了吸引读者的注意。作为一名计算机科学家,我确信我们需要概念计算思维,解释为“能够像计算机科学家一样思考,并能够将这种能力应用到人类努力的每一个领域。”

这个观点的重点是讨论我们在多大程度上需要“计算思维”(CT)这个表达。这个词已经通过西摩·佩普特的研究而为人所知,13许多计算机科学家,5最近的一篇论文15阐明了它的历史发展和知识根源。在被广泛引用之后通信Jeannette Wing的观点19多亏了她在国家科学基金会的作用,6一场广泛的讨论开始了,随后有数百篇论文对这一表达进行了剖析。对于ctt还没有一个公认的定义,我在这个观点中考虑的是我们是否真的需要一个定义,为了哪个目标。

为了预测结论,我们可能需要这个表达作为一种工具,作为一个结构良好的概念的简写参考,但过于坚持它并试图精确地描述它可能是危险的。它应该只是作为一个简短的解释,为什么计算机科学(或信息学,或计算:我将交替使用这些术语)是一个新颖和独立的科学学科,并论证在学校教授信息学的必要性。

Wing讨论了CT,认为每个学生都受到教育很重要。计算机科学家如何思考”,19我的意思是向每个学生教授计算机科学是很重要的。从这个角度来看,重要的是强调信息学对所有学生的教育价值,swing与其他著名科学家早先所说的一致;我在这里提到几个。

被数学家和计算机科学家所熟知的唐纳德·克努斯(Donald Knuth)在1974年写道:“实际上,一个人只有把一件事教给计算机,才能真正理解它。”10美国计算机学会前主席、计算机科学教育学术奠基人之一乔治·福赛斯(George Forsythe)在1968年写道:“科学或技术教育中最有价值的收获是通用的思维工具,它们将持续终生。我认为自然语言和数学是这些工具中最重要的,计算机科学是第三大工具。”9即使这两个引用都与学校教育背景无关,在我看来,它们清楚地支持了在学校向所有学生教授计算机科学的重要性。

然而,CT在Wing's之后获得了广泛的知名度通信观点有可能破坏最初的目的。越来越多的人认为CT是一门新学科,与计算机科学有所不同。在寻找Wing没有提供的定义的过程中,人们在强调一个或另一个方面(抽象、递归、问题解决,……),这样做就模糊了它的含义。看到Armoni2和丹宁5对这个问题进行清晰而有启发性的讨论。

当涉及到教育时,这种情况变得更加混乱。谈论CT教学是一种非常冒险的态度:哲学家们正确地问我们所谓的“教学思维”是什么意思;数学家恰当地观察到CT的许多特征(如抽象、递归、问题解决等)也是数学的固有特征(他们不称之为“数学思维”);教师们问我们如何才能确定CT在教育中真的有效;教师们想知道有哪些方法和工具来教授这门新学科,以及他们如何学习教授这门学科;父母们时而高兴,因为学校似乎终于开始与数字社会接轨了,同时他们也担心,如果孩子们只是学习用今天的语言编程,他们的未来会发生什么。

我认为大部分计算机科学家和教育者都相信原版通信Wing的观点旨在“开始滚动球”,需要做的是在学校教授信息学,可能从很小的年龄就开始。此外,我相信这些人完全能够理解Wing“像计算机科学家一样思考”这句话的含义,而不需要准确地解释它。或者,如果这是绝对需要的,他们可能会同意“CT是通过计算机科学的学习和实践获得的一组心理和认知能力”的自我参照句:波兰尼定义的“隐性知识”。14

早在1974年,Knuth在讨论计算机科学时就警告说,“基本概念比名称重要得多。”10我想,对于CT来说更是如此。真正重要的是计算机在学校很早就被教授了。这实际上是一些大国正在走的道路。在这里,我将讨论三个最相关的问题。

在英国,国家计算机研究项目,一个该课程于2013年9月由教育部发布,从20142015学年开始是强制性的,它使用CT来表示一个人通过学习和实践计算得到的东西。事实上,它在开篇陈述中使用了“高质量的计算教育使学生能够使用CT和创造力来理解和改变世界”,然后在关键阶段3的目标“理解反映CT的几个关键算法”和KS4“发展和应用他们的分析、解决问题、设计和CT技能”中又使用了两次。课程从来不给这个词下定义。

在美国,2015年国会在两党支持下通过的“每个学生成功法案”(ESSA)将计算机科学纳入了学校需要教授的“全面教育科目”中,目的是“为所有学生提供丰富的课程和教育经验”,并且完全没有包含“计算思维”一词。2016年1月,奥巴马总统发起了“全民计算机科学”倡议,其目标是“让所有美国学生从幼儿园到高中都能学习计算机科学,并具备他们所需的计算机技术……”再说一次,CT是你学过计算机科学后得到的。

在法国,代表法国科学家的最高机构——Académie des sciences于2013年5月发表了一份报告《法国信息学院》(L' enseignment de L 'informatique en France)。在法国教授计算机科学。明天不能等了。”)建议计算机科学的教学(“信息”)“教学应该从初级水平开始,通过接触计算机科学和算法的概念,……<和>应该在初中和中学进一步发展。”通过分析他们对CT的使用(“pensée informatique”),可以清楚地看到,在他们看来,这个术语指的是通过学习计算机科学而养成的特定思维习惯。举几个例子:“计算……导致了一种不同的思维方式,称为CT”和“学习编程是发现CT入门的一种方式。”

从这三个例子可以看出,CT并不是一门新学科,学校应该教的是信息学。

但另一方面,大量发表的论文标题或摘要中包含CT (ACM数字图书馆就包含超过400篇)表明,很多人似乎在争论(甚至Wing似乎也同意这一观点21)认为CT是一种全新的东西。有些人甚至说“编码”(他们认为这与“编程”不同)是你学习它所需要的全部!关于这种方法的风险和其他有关CT的微妙问题的讨论出现在最近的一篇文章中通信列。8

我确信,将CT视为一种新的和不同的东西是一种误导:从长远来看,它对信息学的弊大于利。毕竟,他们在学校里不教“语言思维”或“数学思维”,也没有这些学科的“知识体系”或“评估方法”。他们只是教授(和评估能力)“英语”b和“数学”。随后,各种语言(resp。通过学习英语而获得的能力。(数学),除了用于本身之外,还可以在其他学科中找到额外的用途。CT与计算之间存在着同样的关系。因此,我们应该讨论中小学信息学的教学内容和能力评价,而不是CT的教学和能力评价。

总而言之,谈论CT有助于人们理解:我们专注于计算的科学和文化方面;我们讨论的不是系统和工具,而是原则和方法;我们专注于计算的核心科学概念,它的概念内核。11与语言和数学所发生的不同,我们被迫明确这种区别,因为计算机对大多数人来说是信息学的体现。此外,我们并不认为“计算机科学家的思维方式”比其他人更好,只是认为它提供了一种互补的、有用的描述现实的概念范式。7

uf1.jpg
数字对一种情况建模并指定信息处理代理可以在其中有效操作的方式,以达到外部指定的(一组)目标。

在这一点上,人们通常会问,哪个是“概念内核”,我们可以提供哪些例子。这是向人们解释科学学科中信息学的新颖性及其教育价值的关键一段。出于这一目的,这一方案由Cuny, Snyder和Wing提出16是合适的:“CT是在制定问题及其解决方案时所涉及的思维过程,以便解决方案以一种可以由信息处理代理有效执行的形式表示。”这和阿霍给出的定义几乎是一样的1“CT是在制定问题时所涉及的思维过程,因此它们的解决方案可以表示为计算步骤和算法”,Wing承认他收到的输入。20.正如阿莫尼明确指出的,最大的问题是,2就是将这些作为一门新学科的定义而不是解释并试图将其完全付诸实施会带来更多的问题而不是好处。

解释“计算机科学家的思维方式”与“数学家的思维方式”在何种意义上不同,确实是一个重要问题。Knuth在他1974年的论文中举了一个很好的例子,不幸的是,这不是外行人能理解的水平。它关注的是求两个的“最大公约数”的问题n * n整数矩阵一个而且B.数学家的回答是:“让R为整数矩阵的环;在这个环中,两个左主要理想的和是主理想,让D是这样的,R一个+RBRD.然后D的最大公约数是多少一个而且B."10显然不能满足一个计算机科学家的要求解是由计算答案的过程提供的,而不是由定义答案的方程提供的。我有意使用“过程”这个词而不是更常用的“算法”来强调这样一个事实:只有当算法用合适的“语言”实现并且“自动机”执行获得的代码时,我们才有“过程”。这样一来,作为计算机科学基础的三个主要支柱——算法、语言和机器——都被用来描述数学家和计算机科学家观点之间的差异。

因此,我认为,无论何时,无论是Cuny, Snyder和Wing的提法,还是Aho的提法被用于解释的目的,都必须把最大的压力放在信息处理代理(也就是“自动机”,无论是机器还是机械操作的人)。没有代理及其有效运作的能力,就没有信息学实际上,数学已经解决了几千年的问题,在这个过程中发现并应用了抽象、分解、递归等等。

事实上,回顾计算机科学是如何诞生的,很明显,这种文化的种子是在数学家寻求定理证明自动化的过程中,在他们努力将解决问题的负担卸给机器的过程中。这种观点的转变,从解决问题到解决问题是信息学的智力诞生,是"差异带来差异"3.在所有科学的背景下,把信息学放在它自己适当和独特的位置。“自动机”对于赋予CT充分意义的重要性也被阐明c和强调。16

为了同样的演示目的,我还敢提供一个关于CT是什么的更一般的解释,这在某种程度上是沿着Wing已经暗示过的方向,16他澄清道:“我对‘问题’和‘解决方案’这两个词的理解很宽泛。我指的不仅是数学上定义良好、其解决方案完全可分析的问题,例如一个证明、一个算法或一个程序,而且是解决方案可能以大型、复杂软件系统形式存在的现实问题。”然而,温仍然使用了“问题”这个词,它传达了需要解决的事情的意思。

既然解决一个问题只是一个人想要达到特定目标的情况的一个实例,我的表述如下:计算思维是在建模过程中涉及的思维过程情况并指定信息处理代理可以有效地在其中操作以到达外部指定的(一组)目标。(见附图)。

这里有两个主要的区别:一个是指代理操作的情况,而不是它必须解决的问题,另一个是澄清代理不自己定义它的总体(集合)目标,而是从外部获得它。d我的公式也更接近于计算作为无界过程的最新描述。18

因此,我们对CT是什么有了更普遍的解释,包括学校和教育领域非常感兴趣的案例:在其他学科的模拟中,人们必须构建和操纵物理定律和/或自然/社会现象的可见表示(即模拟一种情况并探索其可能的演变),而不是解决一个问题。仿真是一种非常强大的工具,可以提高人们的理解能力,而计算的独特之处在于它能够将仿真定义的抽象模型具体化。2此外,我们有一个公式可以用来解释为什么数学或其他科学不足以达到这些目的。

这样,信息学就能更清楚地解释它的双重作用12同时作为一个基础科学问题,有自己的一套独立的概念,并作为一个横向值的原则,提供有助于更好地理解其他学科的方法。7计算的后一种作用对于将其作为学校的常规学科引入也特别重要,并可以构成一个坚实的论据,将其视为与数学同等的基础学科。417

回到顶部

参考文献

1.计算与计算思维。无处不在2011年1月号,第1期。2011年1月1日。ACM出版社。DOI:https://doi.org/10.1145/1922681.1922682

2.计算机科学,计算思维,编程,编码:K-12计算机科学教育中的传递性异常。ACM进展7, 2015年12月4日),2427。

3.形式、实质与差异。在建立思维生态的步骤。芝加哥大学出版社,1972年。

4.卡斯珀森,法医等人。全民信息学:战略。ACM/信息学欧洲,纽约,2017;https://doi.org/10.1145/3185594

5.科学中的计算思维。105年美国科学家(Jan.-Feb。2017);1317.

6.丹宁,P.计算思维的剩余问题点。Commun。ACM 606(2017年6月),3339。

7.计算机:科学的第四大领域。Commun。ACM 52(2009年9月),2729。

8.Denning, p.j., Tedre, M.和Yongpradit, P.关于计算机科学的误解。Commun。ACM 603(2017年3月),3133。

9.Forsythe, ge,在计算机科学家来之前要做什么。《美国数学月刊,(1968年5月),454462;https://bit.ly/2S19xXo

10.计算机科学及其与数学的关系。《美国数学月刊4(1974年4月),323343;https://bit.ly/2ErRMMU

11.洛迪,M.,马提尼,S.和纳德利,E.阿比阿莫?Mondo注册的72(2017年11月),米兰AICA;https://bit.ly/2CLJcr5

12.纳尔代利,e.信息系统:基本的和全面的纪律,关于"议会的全体议会和计算的pensiero计算"科学杂志(2017年4月),3640;https://bit.ly/2GqszFk

13.Papert, S。头脑风暴:儿童、电脑和强大的想法。基本的书,1980年。

14.波拉尼,M。隐性的维度。芝加哥大学出版社,1966年。

15.泰特雷,M.和丹宁,P.J.计算思维的长期探索。在16届会议记录th科利计算机教育研究召集大会。(2016年11月),120129年。

16.的链接。研究笔记:计算思维:什么和为什么?卡内基梅隆大学计算机科学学院杂志,2011年3月;https://bit.ly/2UTeAed

17.Vahrenhold, J.等。欧洲信息学教育:我们都在同一条船上吗?ACM/信息学欧洲,纽约,2017;https://doi.org/10.1145/3106077

18.范列文和魏德曼。计算作为一个无界过程。理论计算机科学,(2012), 202212。

19.计算思维;Commun。ACM 49(2006年3月),3335。

20.计算思维有益于社会。Social Issues in Computing博客,2014年1月;https://bit.ly/2SOnisk

21.计算思维和计算的思考,皇家学会哲学汇刊A366, 37(2008): 37173725。

回到顶部

作者

恩里科纳德利nardelli@mat.uniroma2.it)是意大利罗马大学数学系信息学正教授。他目前是欧洲信息学协会的总统,该协会代表欧洲的学术和研究信息学社区。

回到顶部

脚注

一个。https://bit.ly/1f7PIFU

b.或相关的母语。

c.阿霍写道:“这个过程的一个重要部分是找到合适的计算模型,用它来表述问题并推导出它的解决方案。”我们可以说,用一种有点文学的风格,“模特就是代理人就是模特。”

d.如果我们允许代理选择它自己的目标,我们将离开计算,进入自由意志实体的领域。

与Mehdi Jazayeri、Jan van Leeuwen、Michael Lodi、Simone Martini和Guido Proietti的讨论有助于集中思想和改进表达;裁判的意见也很有帮助。自从该材料在2017年初被审查、修订并接受发表以来,作者在后续论文中进一步发展了本观点中首次提出的许多观点。


版权归作者所有。
向所有者/作者请求(重新)发布权限

数字图书馆是由计算机协会出版的。版权所有©2019 ACM, Inc.


评论


罗伯特Gotwals

那么,计算科学的学科和实践在这一切中处于什么位置呢?这就是本文中所说的“信息学”吗?


显示1评论

登录为完全访问
»忘记密码? »创建ACM Web帐号
文章内容:
Baidu
map