1. 引言
随着“交通强国”国家战略的提出,我国交通基础设施的建设和运营趋向智能化、绿色化,许多新技术,如无人驾驶、智慧交通、智能压实、自感知、自修复路面以及基于大数据的路面养护策略等应运而生,可以说新一代路面结构即将到来[1]。这对道路工程领域的从业人员来说,既是机遇,也是挑战,需要其在掌握传统道路工程专业知识的同时能够理解并使用计算机语言,具备程序化思维能力。在MATLAB技术的广泛应用之下,传统的道路工程人才培养模式已不能满足时代的需求,尤其是道路工程专业的学生,毕业后从事道路工程的设计或研究工作,更需要具备这样的能力。
MATLAB作为一种面向矩阵的编程语言,最早用来求解线性代数相关问题,后来逐渐发展为一款以数学计算为主的高级编程软件[2]。它具有与其他计算机语言类似的编程特性,同时还提供了各种图形用户接口,可以进行各种应用程序的开发[3] [4],以及完备的图形处理功能,可实现计算结果和编程的可视化。可以根据试验或采集的数据,结合MATLAB编程语言绘制出不同的曲线图或曲面图,便于分析[5]。MATLAB这些强大的计算、绘图及可视化功能都可以用来解决复杂工程问题。王俭等[6]针对土力学试验数据量大,计算工作繁琐的问题,以界限含水率试验为例,使用MATLAB编制和调试程序,实现了试验数据自动计算、绘图和分析等过程。董纪伟等[7]针对层合板强度分析的繁琐数学运算,为提升教学效果,提出了一种将MATLAB编程引入该问题的方法,使计算大为简化。李倩等[3]基于摩尔–库仑强度理论,借助MATLAB的GUI图形用户界面设计方法,开发了土体剪切计算及破坏判断的计算系统。周智辉等[8]针对大跨铁路悬索桥结构复杂、几何非线性显著的特点开展行车动力分析,提出了一种ANSYS与MATLAB实时交互、联合仿真的列车–轨道–桥梁耦合振动分析方法。可以看出,MATLAB凭借其强大的功能,在解决复杂工程问题的科研和教学方面均发挥了巨大的优势。
基于此,本文融合MATLAB程序设计,探究了路基路面工程课程的教学改革方法,梳理路基路面工程这门课程中的复杂计算及难以理解的知识点,指导学生采用MATLAB语言编制程序进行路面结构设计软件开发、试验数据处理、路基边坡稳定性验算、挡土墙设计等问题,利用MATLAB编程工具提升学生对传统设计方法的理解和应用能力,激发其对计算机语言类课程的学习兴趣,真正实现“用现代化工具解决专业问题的能力”的人才培养目标。
2. 教学现状分析
1) 路基路面工程已经向智能化、数字化方向发展,对学生们的数据分析和处理能力有了更高的要求。传统的教学方法往往只注重理论知识的传授,而缺乏对实践能力和综合能力的培养。学生需要掌握不仅仅是专业知识,还需要了解相关的计算机科学、数据分析、人工智能等技术。精通计算机编程等数字化解决问题的方法,具备能够用程序设计的方法快速解决各类复杂问题的能力。
2) 路基路面工程课程有大量计算内容,手动计算麻烦,且大多是程序化方法。如路面结构设计、路基边坡稳定性验算、挡土墙设计等设计方法复杂繁琐,手动计算容易出现计算错误,尤其是涉及到方案优化,还需要多次重复计算。因此结合MATLAB强大的科学计算、数据处理、图形显示等功能进行辅助计算很有必要。
3) 传统的教学方法又主要以理论讲授为主,对于复杂的路基路面问题,学生往往难以理解和应用,教学方法主要以教师为中心,课程通常以教师多媒体授课为主,板书讲解为辅,学生则长时间处于相对被动的状态。缺乏互动和创新性的教学方式可能导致学生对路基路面课程的学习兴趣减弱。因此,融入计算机编程,将专业知识与编程相结合,增加学生的课堂参与度和互动性,可以有效激发学生的学习兴趣和创新能力。
3. 教学改革实施
3.1. 以小组作业为核心的教学方案
针对路基路面工程课程中的沥青路面设计、路基边坡稳定性验算、挡土墙设计等复杂计算问题,将MATLAB程序设计融入该部分内容教学中进行教学改革。由于课程的课时有限,因此安排学生以课后大作业的形式分组完成。通过课前分组、自由选题、阶段性成果展示、最终成果汇报五个环节,确保在仅占用1~2课时的条件下,达到满意的成果。
1) 分组。在课程开始前,将学生按照5~6人一组划分成7~8个小组,与班级学习委员、班长等讨论,选择专业基础强、责任心重的同学担任组长,另选一名擅长计算机的同学做副组长。确保每个小组在专业和编程两方面都有一定的基础。
2) 自由选题。第一次概论课,让学生充分了解几项大作业任务的内容和要求,各小组课后进行讨论,需要在两周时间内,选择感兴趣的任务,并以组为单位,提交一份大作业任务申请计划,明确任务目标、实施计划、组内任务分工、最终展示成果的草图。
3) 阶段性成果展示。在后续上课过程中,各小组按照实施计划展示阶段性成果,教师指出问题,并提出改进意见。
4) 最终成果汇报。最后用1~2课时,通过PPT进行最终成果汇报,详细汇报选题背景、分工、关键技术问题、感想感悟等几个方面,同时以小组为单位提交一份研究报告。
5) 考核方式。该任务作为大作业,占课程平时成绩的60%,其中最终研究报告占50%,平时各环节打分占50%。
该任务锻炼学生通过程序解决专业问题的能力,同时还能培养其团队协作能力。
3.2. 路面结构设计软件开发
3.2.1. 路面设计基本方法
Figure 1. The design flow of pavement structure
图1. 路面结构设计流程
本节以我国2017版《公路沥青路面设计规范》[9]中的沥青路面设计方法为例,说明如何在沥青路面结构设计这部分教学内容中,引入MATLAB GUI,使学生在掌握设计方法的基础上,通过MATLAB开发设计软件。既可以加深学生对复杂的沥青路面设计方法的理解,又可以训练学生通过计算机语言解决工程问题的能力,最终开发的设计软件,还可以进一步指导设计方法的准确性。
沥青结构设计流程如图1所示,主要包括以下三方面的内容:
1) 轴载换算和路面材料设计参数确定。轴载换算要在获得的交通量及其增长率、方向系数、车道系数、车辆类型组成等参数基础上,按照水平一、水平二和水平三确定2类~11类车辆当量设计轴载换算系数,然后计算当量设计轴载累计作用次数。整个过程涉及多个参数的计算,工作量很大。
2) 沥青路面结构组合设计。根据道路的交通等级与气象、水文等自然因素,合理选择路面各结构层材料,以满足设计和使用要求。包括路面结构组合选择、沥青面层结构类型选择、基层类型选择、功能层选择。
3) 沥青路面结构设计验算。主要包括:沥青混合料层疲劳开裂验算、无机结合料稳定层疲劳开裂验算、沥青混合料层永久变形量验算、路基顶面竖向压应变验算、低温开裂指数验算。不同的沥青路面验算指标具有很高的重复性。这一步骤也可通过编程实现,有效提高工作效率。
3.2.2. 路面设计软件开发
该任务以MATLAB GUI为工具,与沥青路面结构设计方法结合,指导学生在学习过程中开发沥青路面设计软件。由于目标较大,选择该任务的小组需要在开始做好计划,按照轴载换算、结构组合设计和结构验算3个阶段开展,随着课程进度,小组内逐步完成每一项任务的界面设计及程序开发。
阶段一:轴载换算界面开发。
通过MATLAB的图形用户界面GUI,建立车辆设计参数库,开发可用于不同水平下轴载换算和当量轴载次数计算的程序和图形用户界面,可以做到快速进行轴载换算和计算轴载作用次数。某小组按照水平一开发的轴载换算界面,涵盖231种车型的车辆类型库,具有自动识别功能。车辆类型的输入设置了读取excel文件和手动输入两种形式,其中读取excel文件的形式大大减少了数据输入的时间。只需要将车辆类型和交通量输入,软件就会自动判别是第几类车型,并将识别结果显示到特定类型区域,使用者可清晰看到识别结果。
阶段二:路面结构组合设计界面开发。
通过使用MATLAB编程建立囊括不同路面原材料类型、组分及路面结构组合的沥青路面一体化设计过程,通过控件间的关联实现材料参数的设定,包括季节性冻土地区及相关参数关联;面层层数与面层参数控件关联;基层层数与基层参数控件关联;底基层层数与底基层参数控件关联;面层参数、基层参数、底基层参数与基层材料类型和底基层材料类型控件间的关联;面层层数、基层层数、底基层层数与基层材料类型和底基层材料控件间的关联;基层材料类型和底基层材料与弹性层状体系结果控件间的关联。
阶段三:沥青路面结构设计验算界面
按照弹性层状体系计算程序,计算验算所需的力学指标,分别验算沥青层的永久变形、疲劳开裂,以及无机结合料稳定基层的疲劳开裂、路基顶面竖向压应变验算。最后打包所有图形用户界面形成公路沥青路面结构设计软件。
通过指导学生采用MATLAB语言对《路面工程》中的路面结构设计方法进行程序编制和软件开发,可以加深该方向学生对路面工程材料、结构设计原理和方法的掌握,培养其通过计算机编程和软件开发解决工程专业问题的思想和能力,同时,学生将计算机语言教学与道路工程专业结合起来,推动学科交叉及学科融合,促进道路工程教学改革及自主信息化建设落实,使我校道路工程的学生能够适应智能交通及新一代路面结构建造及运营的要求。
3.3. 实验数据处理
路基路面工程的实验教学会产生大量的实验数据,对这些数据进行准确的处理和分析对于沥青路面工程的设计和改进至关重要。MATLAB作为一种强大的工程计算软件,提供了丰富的数据处理方法和工具,可以帮助学生高效地处理实验数据并提取有价值的信息。下面将介绍如何通过使用MATLAB对沥青路面实验数据进行处理,培养学生的数据分析能力,提高他们在工程实践中的应用能力。
1) 数据导入和剔除:学生可以使用MATLAB的数据导入功能,将实验数据从Excel、CSV或文本文件中导入到MATLAB工作环境中。在导入数据之后,学生可以使用MATLAB去除异常值、处理缺失值等,确保数据的准确性和完整性。
2) 数据可视化:学生通过使用MATLAB提供的丰富的绘图函数和工具这些功能将实验数据可视化展示。通过绘制曲线图、散点图、等高线图等,学生可以直观地观察实验数据的分布和趋势。这种可视化展示方式有助于学生更好地理解实验数据,并从中提取有用的信息。
3) 数据分析和统计:根据MATLAB提供的多种数据分析和统计方法,学生可以对实验数据进行深入分析。例如,学生可以计算实验数据的平均值、标准差、相关性等统计特征,以了解数据的整体趋势和相关性。此外,学生还可以使用MATLAB的假设检验和方差分析等方法,进行数据的比较和推断分析。
4) 曲线拟合和回归分析:通过使用MATLAB的曲线拟合和回归分析工具,学生可以根据实验数据进行曲线拟合,得到与实验数据最匹配的模型。这些模型可以帮助学生预测和评估沥青路面的性能和材料特性,为工程设计和改进提供支持。
3.4. 边坡稳定性验算
按失稳土体的滑动面特征,土质边坡稳定性分析的方法可分为直线、折线和曲线三大类。在实际应用中边坡滑动面多数呈现曲面,曲线滑动面的分析方法较为常用。实际工程中由于土的工程性质的复杂性、滑动上体的形状复杂等难点的存在,使得边坡稳定性分析非常困难。为解决这一问题,需要采用多种方法将复杂问题进行简化。常用的简化方法有圆弧滑动面假定及其圆心的辅助线法(4.5 H法、36˚线法)、条分法(瑞典圆弧法、简化Bishop法)等。
其中圆弧滑动面假定的圆心辅助线确定方法由于计算繁杂,多数需要应用有限单元法和计算机完成分析计算工作;简化Bishop法需要进行反复迭代计算安全系数K值。
使用MATLAB进行辅助计算,将验算过程编制程序,可以快速处理和分析土体参数、荷载数据等,并进行复杂计算。
3.5. 挡土墙设计
挡土墙的设计主要包括地质勘察和土壤参数确定、荷载分析、挡土墙类型选择等内容,涉及到复杂的结构力学和土体力学问题,需要进行详细的计算和分析。下面将介绍如何通过使用MATLAB进行挡土墙设计,带领学生掌握挡土墙设计的基本原理和方法。
学生可以使用MATLAB编写程序,通过输入挡土墙的几何参数和土体力学参数,进行挡土墙的力学分析。通过编写程序,学生可以实现挡土墙的受力分析、应力计算等,得到挡土墙的力学性能。这样可以快速、准确地评估挡土墙的稳定性和承载能力,并进行必要的设计和改进。根据挡土墙的受力情况和设计要求,使用MATLAB的优化工具进行结构设计。通过编写程序,学生可以实现挡土墙的截面尺寸、钢筋配筋等的计算和优化。这样可以得到满足设计要求的挡土墙结构方案,提高挡土墙的承载能力和使用寿命。
通过使用MATLAB进行挡土墙设计,可以培养学生工程计算和结构设计能力,掌握挡土墙设计的基本原理和方法。他们可以通过力学分析和结构设计,评估挡土墙的稳定性和承载能力,并进行必要的设计和改进。通过结果的可视化和分析,学生可以更好地理解挡土墙的设计原理和方法,并进行相应的优化设计。
4. 教学改革成果
4.1. 教学效果评估
考试成绩提升:路基路面工程课程为闭卷考试,设一道分值20分的综合分析题,主要为沥青路面设计方法的评述及不同结构类型路面的设计指标异同分析。该题目对本科生有一定的难度,普遍得分较低。教学改革实施3年内,可以发现,选择路面设计软件开发的小组,学生在该问题的得分均值为16分,而未选择该任务的小组,平均分值仅12分,差异较大。说明通过该项教学改革,学生在理论基础方面的基层更扎实,也进一步激发了学生对于路面设计更深入的探索动力
学生深造方面:在小组任务中表现优异的组长或同学,本科毕业后几乎100%考入国内道路工程专业名校攻读硕士学位,包括大连理工大学、华南理工大学、长安大学、山东大学、北京交通大学等。
4.2. 教学软件开发
通过在沥青路面材料配合比设计和路面结构设计教学中引导学生使用MATLAB编程进行解决,同时基于图形用户界面(GUI)开展沥青路面材料与结构设计相关计算程序的编制,指导学生开发了HBU路面设计软件V1.0,已获得软件著作权。解决沥青路面结构设计存在的材料与结构设计不统一的问题,使得沥青路面结构设计更接近实际情况,为道路工程专业教学提供更加精确的设计和计算软件,同时培养学生运用计算机语言解决专业问题的能力,进一步促进教学改革及自主信息化建设。
4.3. 学生创新能力提升
通过所授路基路面课程的教改项目,指导本科学生参加大学生创新创业训练,连续两年获批省级立项。
依托所教授的土木工程专业本科课程《MATLAB程序设计》,带领学生将MATLAB编程与土木工程专业其他课程结合起来,进行了如《结构力学》《混凝土设计原理》《土力学》等专业计算问题的编程和GUI设计。
通过将专业知识理论教学与MATLAB程序设计相结合,指导本科生发表题为《基于快速判断土体剪切破坏状态的MATLAB GUI设计》[3]学术论文一篇。
4.4. 学生作业检查
在路面工程的课程设计中,通过使用学生开发的沥青路面设计软件,可以快速地检验学生不同的设计方案的准确性。为教师在学生的作业检查上节省了大量的时间。
自路基路面课程教学改革实施以来,研究团队取得了丰硕的教学改革成果。通过带领学生进行软件开发、创新训练和检查学生作业等工作,极大地调动了学生的学习积极性,获得了很好地教学效果。
5. 结语
本文基于路基路面工程课程教学现状,提出了将MATLAB程序语言融入路基路面课程的教学改革方案,包括:
1) 探索在占用1~2个课时条件下,将MATLAB编程语言融合到沥青路面设计、实验数据处理、边坡稳定性验算、挡土墙设计等多项复杂计算或设计内容中,提出了以小组作业为核心的教学方案,通过系列举措,保障教学目标的实现。
2) 指导学生通过MATLAB进行了沥青路面设计软件开发、实验数据处理练习、边坡稳定性验算、挡土墙设计程序编制等具体任务,学生较好的完成了这些任务,实现了计算机编程辅助的路基路面教学改革任务。
3) 研究成果显示,该教学改革方案在成绩改善、学生升学率、创新能力提升等方面发挥了较大的作用。同时基于教学成果,获得了可用于教学的设计软件,可以用来辅助检查学生作业。
通过专业知识的应用和软件编程的学习,提高了教学效果,加深了学生对课程知识的理解和掌握。又让学生充分体会到专业知识和编程相结合的快乐,学生的综合素养和利用编程技能解决路面工程问题的能力也得到了显著提高。
基金项目
河北大学第十批教育教学改革研究:以“培养跨学科思维能力人才”为驱动的路基路面综合设计软件开发。
NOTES
*通讯作者。