運算思維介紹

前言

現代人生活已脫離不了資訊科技,如何瞭解資訊科學內涵,培養邏輯、系統化思考,並應用於生活與工作,是不分年齡、專業都該要培養、實作及內化的,這樣的學習科目簡稱:運算思維(Computational Thinking)。

據此,教育部亦提出運算思維推動計畫,將此列入12年國教資訊科技科目中,希望藉由資訊科技之運用與實作,增進運算思維的應用能力、解決問題能力、團隊合作及創新思考能力。

核心能力 & 框架

運算思維實為運用資訊科技解決問題的方法論,一開始將其歸納為:

  • 拆解 (Decomposition)
  • 找出規律 (Pattern Recognition)
  • 歸納與抽象化 (Pattern Generalization and Abstraction)
  • 設計演算法 (Algorithm Design)

等四項核心能力,經過多年的演迭後,運算思維所需能力已形成框架,Lodi, M., Martini, S, 2021 將其整理定義為:

心智歷程 (Mental processes)

對解決問題有用的心理策略:

  • 演算法思維 (Algorithmic thinking)
  • 邏輯思維 (Logical thinking)
  • 問題分解 (Problem Decomposition)和模組化(Modularization)
  • 抽象化 (Abstraction)
  • 樣式辨識 (Pattern recognition)
  • 一般化 (Generalization)等。

方法 (Methods)

計算機科學家廣泛使用的操作方法:

  • 自動化 (Automation)
  • 資料收集 (Data Collection)
  • 分析和表達 (Analysis and Representation)
  • 並行化 (Parallelization)
  • 建模與模擬 (Modeling and Simulation)
  • 分析與評價 (Analysis and Evaluation)
  • 程式設計 (Programming)

實踐 (Practices)

基於計算機的實作,使用的典型實踐解決方案:

  • 實驗、迭代、修補 (Experimenting, iterating, tinkering)
  • 測試和除錯 (Test and debug)
  • 重用和重新混合 (Reuse and Remix)

橫向技能 (Transversal skills)

藉由如同計算機科學家思維,看待運行世界的一切事物,並將其用於各項生活技能上:

  • 設計與創造 (Design and Create)
  • 溝通與協作 (Communicate and collaborate)
  • 以計算方式理解世界,進行反思、學習、詮釋反思 (Reflect, learn, meta-reflect, understand the world computationally)
  • 容忍歧義 (Be tolerant for ambiguity)
  • 處理複雜問題時要持之以恆 (Be persistent when dealing with complex problems)

實例發想

蓋一棟房子

想像您是建築設計師或營造公司的工地主任,眼前要蓋一間房子,以下那些工序是您會困擾的?

  • 建築設計:格局規劃、材料應力計算
  • 工期規劃:氣候預測、人力配置
  • 測量放樣
  • 成本計算:鋼筋、混泥土、門窗、磁磚
  • 工程材料檢測
  • 工程施工管理
  • 機電設備
  • 工地治安

智慧家居

想開始規劃專屬你的智慧家居嗎?以下那些應用是你想進行的項目?

  • 保障安全的智慧保全
  • 提升生活品質的智慧家電
  • 降低生活成本的節能手段
  • 防護老幼的居家照護
  • 沉浸式娛樂

智慧城市

未來智慧城市包含了以下6項應用:

  • 智慧環境(Smart Environment)
  • 智慧交通(Smart Mobility)
  • 智慧生活(Smart Living)
  • 智慧市民(Smart People)
  • 智慧政府(Smart Government)
  • 智慧經濟(Smart Economy)

而你參與了某項大型公共工程的規劃與監造,欲加入智慧城市應用,以下那些工作項目是你將關注的?

  • 地質調查
  • 品質計畫
  • 施工計畫
  • 假設工程計畫
  • 施工測量
  • 排水系統
  • 施工檢驗程序
  • 材料與設備檢試
  • 設備功能運轉測試
  • 職業安全衛生管理
  • 緊急應變及防災計畫
  • 環境保護執行計畫
  • 施工交通維持及安全管制措施
  • 品質稽核
  • 文件記錄

移居外太空

2035年,你參與了火星移居計畫工作,下列那些是你亟待解決的問題?

  • 太空運輸與成本計算
  • 空氣供應與循環規劃
  • 水資源供應與循環規劃
  • 安全防護規劃
  • 電力供應
  • 通訊系統
  • 地面(質)探勘
  • 太空農場
  • 太空礦場

實踐 & 工具

結合上述實例,用於運算思維這科目,您將會學習到以下工具:

運算

  • 雲端運算:資料收集、探勘與分析、AI影像辨識、語意分析等需要大量運算的項目,通常可以租用雲端平台,以降低持有與開發成本,例: Google AIAzure AI
  • 邊緣運算:通常是整合、收集物聯網感測器所需的節點運算與通訊,一般是處理即時、較低運算能力但節電、耐候、穩定且低成本的計算機設備,如:Jetson Nano華碩 IoT ALPR Edge AI Dev Kit

Webduino:Bit

Webduino Bit 同時提供物聯網與積木式程式邏輯學習工具,只要打開網頁,就能實作物聯網的各種應用。

感測器

  • 光感測器
  • 紅外線熱感測器
  • GPS接收器
  • 變位、位移感測器
  • 速度、加速度感測器
  • 溫度感測器
  • 濕度感測器
  • 超音波感測器
  • 壓力感測器
  • 縮時攝影機
  • 景深相機
  • 透地雷達與製圖光達

TinkerCad

業界所熟知的 Autodesk 公司推出的 Tinkercad ,是一款免費的雲端應用平台,用於 3D設計、電子元件與編程,可以從這裡開始您的構想到設計。

Python & Numpy

Python 是學術界進行教學、實驗及發表論文最愛用的程式語言,除了它簡單易學的特性外,是因為它有好用的資料科學相關套件(例如:PandasSciPyScikit-learn 等),這些套件的基礎皆源自 Numpy ,因此學好 Numpy 這項技能,絕對能幫助您在運算思維的實踐。

Reference: