新工科背景下计算思维能力培养的探索

2021-06-11 20:29张振国崔荣一
计算机时代 2021年3期
关键词:计算思维案例教学新工科

张振国 崔荣一

摘  要: 探讨了计算思维的本质内涵及其与新工科的关系,探索如何在新工科课程教学中,有意识地培养学生认识和理解计算思维,提出结合具体实例的“问题抽象化-模型构建-自动化方案-思维分析”培养方式。以案例教学的方式,通过电梯运行实例阐述如何以计算思维为指导,使学生快速理解计算思维和掌握计算思维能力。

关键词: 计算思维; 新工科; 抽象化; 案例教学; 思维分析

中图分类号:G642          文獻标识码:A        文章编号:1006-8228(2021)03-83-04

Exploration on the cultivation of computational thinking ability in the

background of New Engineering

Zhang Zhenguo, Cui Rongyi

(Department of computer science and technology, Yanbian University, Yanji, Jilin 133002, China)

Abstract: This paper discusses the essential connotation of computational thinking and its relationship with New Engineering Education, and how to consciously cultivate students' understanding of computational thinking in the teaching of New Engineering courses is explored. The training mode, which combines with the specific examples, of "problem abstraction, model construction, automation scheme and thinking analysis" is put forward. In the way of case teaching, with the instance of elevator operation, this paper expounds how to make students quickly understand computational thinking and master computational thinking ability under the guidance of computational thinking.

Key words: computational thinking; New Engineering; abstraction; case teaching; thinking analysis

0 引言

随着大数据、人工智能、云计算等新技术的发展,以信息技术为主导的产业革命正逐步改变着人们生产生活的方式, “中国制造2025”、“互联网+”等一批重大战略目标被提上日程。在这一背景下,工程教育被赋予了新的内涵,工科专业亟需做出改变以适应这种挑战,因此,各个高校正积极推进新工科相关专业的建设。“新工科”是国家在2016年“国家战略性新兴产业发展规划”中提出的,经过了2017年的“复旦共识”、“天大方案”以及“北京指南”等一系列卓有成效的讨论,基本上形成了新工科建设的纲领。2020年6月,“天大方案2.0”的发布,标志着新工科建设从理念和顶层设计向落实和实施阶段展开。

新工科的一个核心内容是以信息技术推动传统工科专业的改进和升级,以适应信息社会的变革,引导传统工科逐步向智能化迈进。在这个过程中,关键的问题是如何在传统工科领域实现自动化。计算机是信息处理的工具,其思维方式是传统工科改革的有效思路。计算机科学最具有基础性和长期性的思维是计算思维[1],因而,在工科教学中,培养学生利用计算机进行问题描述和求解的能力,引导学生逐步理解和掌握其思维方式,从思考方式上考虑传统工科的问题是根本且行之有效的途径,所以,计算思维能力的培养对于新工科专业建设是重要的。

1 计算思维的内涵

“计算思维”一词是周以真教授于2006年提出的,其概念被定义为“运用计算机科学的基础概念进行问题求解、系统设计以及人类行为理解等涵盖计算机科学之广度的一系列思维活动”[2]。这一概念受到国内外学者的广泛关注,被认为是可以与读、写、算等基本认知一样,是每个人都必须掌握的一种基本技能。 计算思维对于教育的影响是巨大的,直接将计算机的基础课程从“计算机工具论”转变为一种思维模式来教学,推动了计算机基础教育的改革。国内外学者针对这一新兴思维方式进行了广泛的研究,美国、英国和澳大利亚等国家的课程培养方案中都明确提出将计算思维是其相关课程的重要部分[3-4]。自2010年起,我国逐步将计算思维纳入到计算机基础教学中并其作为课程改革不可或缺的一部分[5]。

尽管培养学生的计算思维能力是计算机基础课程的核心内容已成为课程改革的共识,但如何实施仍存在着不同的思路和见解。这种不同,从根本上来说,是对计算思维能力的本质内涵存在不同的理解。随着科技的发展,计算思维在具体的实践中有了新的、更广的发展,这些都影响其对培养过程的指导作用。无论是“思维技能”观点[6]还是“过程要素”的说法[3]都强调了计算思维是解决问题的重要手段,在不同领域,计算思维已被广泛的应用于指导具体的实践。而实际上,计算思维的本质特征是抽象[7]。这种抽象与数学的逻辑思维、物理的实证思维中的抽象不同,是更一般意义上的概括。这是因为计算思维的抽象有层次的概念,即包括同一层次上的抽象,也包含层次间的关系。从一般的意义上来说,计算思维应用计算机科学的基本原理,是在解决实际问题中形成的思维模式和技能,它并不是固定的,在不同的学科领域,问题解决思路和方式会不相同。此外,计算思维并不面向具体应用,而是一种抽象的思维能力,因此,计算思维的培养需要明确这一本质。

2 新工科与计算思维

新工科是在新一轮的科技与产业革命的背景下,工程学科的一次重大战略改革,其内涵是“以立德树人为引领,以应对变化、塑造未来为建设理念,以继承与创新、交叉与融合、协调与共享为主要途径,培养未来多元化、创新型卓越工程人才”[8]。新工科首先指的是新兴的专业,如人工智能、智能制造等,它代表着行业的发展方向,是正在逐步形成的工程学科[9]。

一方面,新工科的建设和发展能为其他学科的人才培养改革提供良好的示范作用,另一方面,新工科专业中的新理论、新技术将为新产业的形成提供科学依据[10]。新工科需要多学科的交叉、融合,相应的工程人才应具备良好的创新能力和跨学科整合能力,这就要求在培养过程中需要从思维的高度上去考虑问题。而计算思维恰好契合这一要求,因而引导学生用计算思维的方式去认识、分析、解决问题,主动的用发散性思维去创新,将对新工科专业人才的培养起到积极的作用。

计算思维与程序思维、算法思维有紧密的联系,而这两者是计算机科学的重要基础,同时,计算思维又是由计算机科学家提出的,因此,计算思维可以说是计算机科学领域的最为重要的思维方式。从解决问题的方法角度,计算思维是从数据运动的角度去认识和理解世界的思想和方法[11],计算机是数据处理和加工的工具,是思维实现的手段,因此,计算机科学的相关理论和技术是计算思维解决问题的基础。来自不同领域的问题经过信息抽取和模型构建,通过计算平台的运算,在得到问题解决的同时,也能加深领域内知识的理解。计算机科学为其他学科提供了认知领域知识的角度和计算平台,使得不同学科领域的人员能够方便快速地得到问题处理的能力。此外,计算思维中,更多的是面向不同领域的具体应用,即理解如何从数据的角度来分析和解决具体的问题。从这个意义上,计算机科学是研究用计算机解决问题的共性理论与技术,而其他领域人员认识和理解计算思维,更多的是从应用角度去寻找问题的解决思路和方法。这也正印证计算思维正影响着传统工业领域,用信息处理的自动化加速产业革命的升级,这种影响并不是简单的修补,而是从思维高度的彻底改造,以数据为载体,对产业链上的各个环节进行重新认识,建立起人与人、人与物、物与物之间的联系,不断地创新传统工业,建立新兴产业,促进新工科的建设和发展。

3 计算思维能力培养的教学设计

3.1 指导思想

从上文分析中可以得出,计算思维能力的培养主要是让学生运用现代化工具来分析、处理和解决各个领域的问题,其基本过程可以描述为问题抽象化、建模和自动化处理等方面。因此,需要培养学生的问题抽象和建模思维能力,使学生能够以数据变化的形式理解本專业的问题,这就需要在计算机课程中让学生意识到课程培养的是问题解决的思维模式,而非实用工具。为此,本文以“问题抽象化-模型构建-自动化方案-思维分析”的教学思路进行教学设计和实施。

3.2 教学实施过程

本节以我们日常乘坐的电梯为例,阐述如何进行问题抽象、构建模型、提出解决思路与方案并实现思维导向分析的过程。在电梯的运行逻辑中,每一层都有多种操作,其抽象化和建模过程对其他领域的问题有很好的借鉴意义。不失一般性,以4层楼电梯运行为例来说明如何进行问题抽象和建模(为了简化描述,假设电梯按键不能取消)。

电梯的运行方式可分为上行和下行两种。上行的方式(下行的规则与上行一致,方向相反)可描述为:对于任何合法的层数i,j,k,设i

规则1:如果超重,则电梯不启动,停在原来的楼层。

规则2:若电梯现在停在第i层,同时按下第j层和第k层的按键,则电梯运行到第j层停下,之后再停到第k层。

规则3:若电梯正在上升至第k层的过程中,经过第i层时,再有第j层按键,则电梯运行到第j层停下,之后再停到第k层。

规则4:若电梯正在上升至第k层的过程中,经过第j层时,再有第i层按键,则电梯会停在第k层,不会向第i层下降,即第i层按键无效。

⑴ 问题抽象

电梯的运行状态可以分为三种:停止、上行和下行,因此,可以把整个运行过程按状态进行划分:用S1,S2,S3,S4分别表示电梯停在各个楼层上,用U12,U23,U34分别表示电梯的上行过程(例如U12表示电梯在第1~2层之间上行),用D12,D23,D34分别表示电梯的下降过程。按键操作分别以数字1,2,3,4表示。这样,4层电梯的运行过程就可以用10个状态和4种按键进行表述,即将电梯的运行过程抽象为不同运行状态之间的转换。

⑵ 建模

状态的转换可以通过有限状态自动机实现,故可以将电梯的运行过程构建为自动机模型,如图1所示。

在上述模型(图1)中,双圆圈表示的是电梯随时可停止,退出运行的状态,单圆圈表示的是电梯正在上升或者下降的状态。模型可以上下两部分,上半部分是电梯上行过程中的可能出现的情况,下半部分描述的是电梯下行时的各种情况。这两部分除了方向不同,所有的操作都一样。

⑶ 自动化处理

培养学生的自动化问题处理能力中最为重要的是算法思维和程序设计能力。在电梯运行的例子中,算法不复杂,但程序设计的主要结构要素均有体现。该过程的程序流程如图2所示。

上述过程包含程序设计的三种结构,有助于加深程序设计知识的理解。多年的教学经验表明,学生经历中小学大量的逻辑思维能力训练后,在最初接触程序设计时往往难以很快地接受计算机处理和解决问题的方式。从本质上来说,这是思维能力转变的问题,即需要以计算思维的方式考虑和解决问题。使用与日常生活密切相关的实例展示问题处理的过程,将程序设计中的符号和处理流程与具体生活应用联系起来,可以形象地展现出知识的应用,增强学生理论联系实际的能力。

3.3 计算思维的体现

“像计算机科学家一样思考问题、理解问题和解决问题”是周以真教授在提出计算思维概念时给出的界定[2],尽管计算思维的内涵和外延仍在发展变化,但这一表述给出了计算思维培养的指导性意见,其核心在于掌握使用计算机解决问题的基本过程和步骤。在上文例子中,将电梯的运行过程的不同阶段抽象为不同的状态,即停在某一层和层间运行,然后通过状态间的转换表达电梯的运行。这一过程中除了程序设计和算法要素外,思维是更为重要的因素,无论是可处理数据的抽象,还是状态转换的处理过程,都是计算思维能力在该例中的体现。

在新工科兴起的背景下,以数据驱动的方式解决问题成为一个趋势,这很好的扩展了计算思维所涵盖的范围,使之不再局限于借助计算机来实现自动化。然而无论形式如何变化,其本质都不在“计算”本身,而是计算背后所蕴含的思维本质。

4 结束语

新工科的发展离不开信息技术的支撑,在信息化特别是数字化的过程中,无论是新兴产业还是传统工业,以数据促进工业智能化发展已成为共识,所以,从思维的高度上去认识、理解,进而解决问题是至关重要的。因此,在新工科建设和教学中,要求学生从數据变化的角度思考行业内产业升级所涉及的基本问题,用计算的观点去自动的解决这些问题。因此,教学过程除了引导学生掌握计算机科学的基本理论和技能外,须将计算机科学与行业结合,建立用计算方法解决问题的思维。然而,思维方式的转变是需要时间的,以“问题抽象化-模型构建-自动化方案-思维分析”的方式,用日常生活中的具体实例讲解问题的解决思路,能够加深学生对于计算思维能力的认识。

参考文献(References):

[1] 孙家广.计算机科学的变革[J].中国计算机学会通讯,2009.5(2):1-4

[2] Wing J M. Computational Thinking[J]. Communications ofthe ACM,2006.28(9):23-28

[3] Yadav A,Hong H,Stephenson C.Computational Thinkingfor All: Pedagogical Approaches to Embedding 21st Century Problem Solving in K-12 Classrooms[J].Techtrends,2016.60(6):565-568

[4] 肖广德,高丹阳.计算思维的培养:高中信息技术课程的新选择[J].现代教育技术,2015.25(7):38-43

[5] 九校联盟(C9)计算机基础教学发展战略联合声明[J].中国大学教学,2010.9:6,11

[6] Yadav A, Mayfield C, Zhou N, et al. ComputationalThinking in Elementary and Secondary Teacher Education[J].Acm Transactions on Computing Education,2014.14(1):1-16

[7] Wing J M. Computational Thinking and Thinking aboutComputing[J]. Philosophical Transactions,2008.366(1881):3717-3725

[8] 钟登华.新工科建设的内涵与行动[J].高等工程教育研究,2017.3:1-6

[9] 姚琳,宋晏,石志国.基于新工科的大学计算机基础课程体系思考与探索[J].计算机教育,2019.3:112-116

[10] 刘佳,王立松.从阿尔法元谈“新工科”建设中的“计算思维”课程教学探索[J].工业和信息化教育,2018.9:61-66

[11] 狄长艳,周庆国,李廉.新工科背景下对于计算思维的再认识[J].中国大学教学,2019.7:47-53

猜你喜欢
计算思维案例教学新工科
面向新工科的Python程序设计交叉融合案例教学
新工科形势下高校二级学院毕业设计管理探索
新工科背景下大学生创新创业教育探索
程序设计课程中计算思维和应用能力培养问题研究
民族高校C语言程序设计课程教学改革的研究
算法的案例教学探析
浅谈艺术专业学生计算思维能力的培养
案例教学在机械创新设计课程中的应用
马克思主义基本原理概论课案例教学的几点思考
EXCEL在《投入产出法》案例教学中的应用