• 沒有找到結果。

TPET9-C001林育慈 - 運算思維簡介

N/A
N/A
Protected

Academic year: 2021

Share "TPET9-C001林育慈 - 運算思維簡介"

Copied!
60
0
0

加載中.... (立即查看全文)

全文

(1)

林育慈

國立台灣師範大學

資訊教育研究所

運算時代中的

思維與教學-運算思維簡介

(2)

大綱

資訊科技課綱

什麼是運算思維?

(3)

資訊科技課綱

(4)

各國教育趨勢

(5)

我國資訊教育課綱

• 資訊科技課程是以

運算思維

為主軸,透過電腦科學相關

知能的學習,培養邏輯思考、系統化思考等運算思維,

並藉由資訊科技之

設計與實作

,增進運算思維的

應用

(6)

想一想

• 過去的課綱雖亦強調問題解決,但各學科皆

強調問題解決,是否不同的學科都學習相同

的問題解決策略(分析問題、蒐集資訊、發展

解法、測試解法…)?

• 資訊科技課程該學習什麼問題解決策略?是

否有別於其他學科?

• 運算的時代中,我們該讓孩子多學什麼問題

解決策略?

(7)

什麼是運算思維

(8)

運算思維是 . . .

• Computational

thinking

• Computation

is

– the act or action of

computing

– the use or operation of a

computer

(9)

運算思維不等於 . . .

9

運算思維

資訊科技

應用

程式設計

資訊科學

(10)

什麼是運算思維-定義

• “運算思維是利用

電腦科學

的基本概念

進行問題解決、系統設計與人類行為理

解的思維模式” (Wing, 2006)

• “運算思維讓我們能擁有

電腦科學

家面

對問題時所持有一種的思維模式”

(Grover & Pea, 2013)

10

資料來源:

(11)

什麼是運算思維-定義

• 根據Google的定義,運算思維包含

– 抽象化

:為定義主要概念去識別並萃取相關資訊

– 演算法設計

:產出有序指令以解決問題或完成任務

– 自動化

:利用電腦或機器重覆任務

– 資料分析

:透過歸納模式或發展深入分析方法以理解資料

– 資料蒐集

:蒐集與問題解決相關的資料

– 資料表示

:用適合的圖表、文字或圖片等表達與組織資料

– 解析

:將資料、程序、問題拆解成較小、較容易處理的部分

– 平行化

:同時處理大任務中的小任務以有效達到解題目的

– 樣式一般化

: 產生所觀察樣式的模型、規則、原則或理論以測試

預測的結果

– 樣式辨識

:在資料中觀察樣式、趨勢或規則

– 模擬

:發展模型以模仿真實世界的程序

教育部運算思維推動計畫

11

(12)

什麼是運算思維-定義

• Grover & Pea認為運算思維應包含

– 抽象化

樣式一般化

• 模型化

• 模擬

– 系統化資訊處理

– 符號系統與表示

– 演算法與流程控制

• 迭代、遞迴與平行思考

• 條件式邏輯

– 結構化問題解析

– 效能分析

12

(13)

什麼是運算思維-定義

• 各文獻所提出的運算思維內涵

13

Wing

(2006)

Google

(2010)

Barr &

Stephens

on (2011)

CSTA

(2011a)

(2011b)

CSTA

ISTE

&

CSTA

(2011)

Lee et al.

(2011)

Pea (2013)

Grover &

Abstraction

V

V

V

V

V

V

V

V

Simulation

V

V

V

V

V

V

Algorithm design &

procedure

V

V

V

V

V

Data analysis

V

V

V

V

V

Data representation

V

V

V

V

V

Problem decomposition

V

V

V

V

V

Automation

V

V

V

V

Modelling

V

V

V

V

Problem solving

V

V

V

Parallelization

V

V

V

Data collection

V

V

Pattern generalization

V

V

V

Transformation

V

V

Conditional logic

V

Connection to other fields

V

Debug & error detection

V

Efficiency & performance

constraint

V

Pattern recognition

V

Reduction

V

(14)

運算思維

什麼是運算思維-定義

• 運算思維與問題解決

14

實體世界問題

運算工具

(15)

什麼是運算思維-內涵

• 抽象化(Abstraction)

– 除去細節以簡化並聚焦於重點

– 辨識與描述普遍化的性質(一般化)

資料來源:

Kramer, J. (2007). Is abstraction the key to computing?. Communications of the ACM, 50(4),

36-42.

(16)

什麼是運算思維-內涵

• 藝術的抽象化

16

國王的哀愁

「畫中他重現了幾個重大的主題

-

音樂

舞蹈

生活

死亡

。畫

面中豔麗的

色彩

和無所不在的

,似乎是對黑色死亡的抗爭。

向左倒下的三個人物令人想起舞

蹈動作與音樂節奏。在此隱喻

中,作者向世人展現對生命快樂

的思考,超越裝飾繪畫的貧乏。」

(Edina Bemard,現代藝術,

閣林國際圖書有限公司)

(17)

什麼是運算思維-內涵

• 語文的抽象化

(18)

什麼是運算思維-內涵

• 日常生活中的抽象化

(19)

什麼是運算思維-內涵

• 數學與科學的抽象化

(20)

什麼是運算思維-內涵

• 運算的抽象化

20

圖片來源:

(21)

什麼是運算思維-內涵

• 樣式一般化(Pattern generalization)

– 產出共通的模式、規則、原則或理論

2

10

2

x

a

x

(22)

什麼是運算思維-內涵

• 樣式辨識(Pattern recognition)

– 在資料中觀察樣式、趨勢或規則

https://www.youtube.com/watch?v=VbELngQiRW4

(23)

什麼是運算思維-內涵

• 樣式辨識(Pattern recognition)

23

辨識資料表示樣式

辨識演算法樣式

問題

V

n

(j) = Min{d

ij

+V

n

-1(i)}, 1≤j≤N

(24)

什麼是運算思維-內涵

• 樣式辨識與一般化讓運算發揮其能力

24

碎形:透過繪製規則的找尋,讓運算

幫我們繪製人類難以處理的複雜圖形。

(25)

什麼是運算思維-內涵

• 演算法思維(Algorithmic thinking)

– 產出有序指令以解決問題或完成任務

(26)

什麼是運算思維-內涵

• 資料表示(Data representation)

– 用適合的圖表、文字或圖片等表達與組織資料

26

圖片來源:

https://www.opengl.org/discussion_bo

(27)

為什麼要培養運算思維

(28)

這是一個運算的時代

The

Apple Watch

, released in 2015.

Paul Schottmiller

- March 19, 2013

GHETTO UBER

DRIVER頻道建立

者:

Latrell G.

(29)

需求與契機

• STEM人才需求增加,computing人才需求尤其顯著

資料來源:

U.S. Bureau of Labor

Statistics

(US-BLS)

(30)

各先進國家的因應

“Learning programming isn’t just

important for your future, it’s

(31)

困境與展望

英國金融時報(Financial Times)的分析報導一針見血地指出:

「台灣本土最優秀的企業要數台積電(TSMC):芯片製造業的領

軍者,市值超過600億美元,但其品牌幾乎算不上世界知名。台灣

最著名的企業或許要算富士康(Foxconn)。該公司幫助其他公司

組裝產品,包括蘋果(Apple)的iPhone,利潤率不到4%。」。

台灣人最自豪的兩大企業尚且如此自我設限,其他企業可見一斑。

「未來五年,台灣電子商務人才缺乏狀況會非常嚴重,

PChome集團現在也缺少三百至四百位左右的工程師,」

PChome Online網路家庭董事長詹宏志直言。。這個

困境同樣蔓延到雅虎奇摩、momo購物網、聖洋科技

(cacaFly)、沛星互動科技(Appier)、台灣雪豹科

技等,一系列不同規模的網路企業,同聲慨嘆工程師的

短缺。

(32)

如何培養運算思維

(33)

運算思維的教學

• 較缺乏運算思維的傳統教學

– 軟硬體操作

– 指令記憶

– 照步驟進行

– 缺乏策略、思維

– 培養電腦使用者,非善用與創造者

• 運算思維導向教學

• 了解軟硬體運作,進而

可活用(甚至創造)軟硬體

解決問題

• 設計程式解決問題

• 設計問題解決程序

• 根據電腦科學各式策略

設計解法

• 成為善用與創造者

(34)

運算思維的教學

• 運算思維導向問題解決教學

– 培養學生基於

電腦科學知能

,以利用

運算

解決問題

之能力

運算思維

電腦科學知能+問題解決

(35)

如何設計運算思維導向教學

學習內容

運算思維

學習表現

資D-IV-1

資料數位

之原理與方

資D-IV-2數位資料

表示方法

資D-IV-3

資料處理

概念與方法

資料表示與處理

抽象化

演算法思維

資t-IV-4能應用

算思維解析

問題

資p-IV-1能選用適

當的資訊科

組織思維

並進行

有效

的表達

選擇課綱

學習內容

對應重要

運算思維

對應主要

學習表現

提醒自己教學策略

與教材設計應注意

的原則

規劃教學內涵

(36)

運算思維導向教材設計

• 範例一

樣式辨識(Pattern recognition)

問題解

析(Decomposition)

– 透過視覺化圖形的辨識,了解

遞迴

的樣式(pattern)並

透過解析找到基本元素與遞迴關係

基本元素

(Base case)

遞迴關係

(Recursive case)

遞迴的擴展

(37)

運算思維導向教材設計

• 範例一

樣式辨識(Pattern recognition)

問題解

析(Decomposition)

– 透過觀察與繪製,了解並體驗

遞迴

的樣式(pattern)

(38)

運算思維導向教材設計

• 範例一

樣式辨識(Pattern recognition)

問題解析

(Decomposition)

(39)

運算思維導向教材設計

def koch(t, order, size):

if order == 0:

t.forward(size)

else:

koch(t, order-1, size/3

t.left(60)

koch(t, order-1, size/3)

t.right(120)

koch(t, order-1, size/3)

t.left(60)

koch(t, order-1, size/3)

基本元素

基本元素

遞迴關係

遞迴關係

(40)

運算思維導向教材設計

範例二

抽象化(Abstraction)

資料表示(Data representation)

• Data compression (Exploring Computational Thinking, Google for

Education)

(41)

運算思維導向教材設計

• 範例二

抽象化(Abstraction)

資料表示(Data

representation)

– 教出壓縮策略與資料表示的

精神

• 用最少位元數精確表達資訊

• 能夠解碼(解壓縮)

(42)

運算思維導向教材設計

範例三

問題解析(Decomposition)

演算法思維(Algorithmic thinking)

• Water Water Everywhere! (Exploring Computational Thinking, Google for

Education)

Instruction

Quantity in A (max 4)

Quantity in B (max 7)

START

0

0

Fill A

4

0

A -> B

0

4

Fill A

4

4

A -> B

1

7

Empty B

1

0

A -> B

0

1

(43)

運算思維導向教材設計

• 範例四

演算法設計(Algorithm design)

– 透過視覺化的地圖與路徑,了解

最小成本的

路徑

的演算法設計

43

中學運算思維教材及評量工具之開發及推廣計畫

(44)

運算思維導向教材設計

• 範例五

資料表示(Data representation)

– 透過視覺化的地圖、花費、與陣列的對應,

了解

陣列資料結構與圖(Graph)

的資料表

示概念

44

(45)

運算思維導向教材設計

• 範例六

樣式辨識(Pattern recognition)

模擬

(Simulation)

45

Scratch 軟體模擬

實作機器車螺旋式移動

中學運算思維教材及評量工具之開發及推廣計畫

(46)

運算思維導向教材設計

• 範例七

樣式辨識(Pattern recognition)

(47)

運算思維導向教材設計

• 範例八

樣式辨識(Pattern recognition)

– 透過聽覺化音樂的辨識,了解

模組化

的樣式(pattern)

A’

A’

B

A

(48)

運算思維導向教材設計

• 範例八

樣式辨識(Pattern recognition)

– 透過聽覺化音樂的辨識,了解

模組化

的樣式(pattern),

進一步進行音樂創作

主歌Verse

副歌Chrous

(49)

範例九

資料表示與處理、演算法思維

資料壓縮

活動 拼出間諜的長相

你拿到了敵方陣營的間諜拼圖,不幸被打散了,由於捉出間諜之時間有限,只能以十

片拼圖將敵方陣營的間諜照片拼起來,你會選哪幾片拼圖拼出最像的間諜?為什麼?

49

運算思維導向教材設計

(50)

運算思維導向教材設計

活動 黑白旗

分成兩組,每組再分為發訊者與收訊者,各組先根據字庫,

設計好編碼的原則,然後各組發訊者與收訊者帶開,由發

訊者用黑白旗發出老師指定的訊息,收訊者負責解碼,看

各組收訊者誰的解出來的訊號是正確的。

• 字庫: ABEFILMNOTUVXYZ

50

(51)

• 教學工具與環境-多媒體教材

51

Function insertionSort(Type data[1..n]) Index i, j; // 1 Type value; // 1 For i from 2 to n do // n - 1

value = data[i]; // n - 1 j = i - 1; // n - 1

While j >= 1 and data[j] > value do // n - 1 data[j + 1] = data[j]; // 0 j = j - 1; // 0 data[j + 1] = value; // n - 1 End

運算思維導向教材設計

• 教學工具與環境-多媒體教材

(52)

運算思維導向教材設計

• 教學策略-STEM科際整合教學

(53)
(54)

如何設計運算思維導向問題解決教學

• 教學策略-專題式教學

(55)

一起來玩玩看

(56)

簡易版聊天機器人-亂槍打鳥型

嗯嗯!

你好嗎?

肚子好

餓!

然後呢?

我不知道說

什麼了!

想吃!

亂槍打鳥型

(57)

進階版聊天機器人-我問你答型

我問你答型

你叫什麼名

字?

Angela

Angela你好,你

吃飯了嗎?

NO

那我們一起去吃滷

肉飯。

YES

那我們晚餐見。

(58)

進階版聊天機器人-不會不答型

不會不答型

你好!

你好!

我是喵喵!

你叫什麼

名字?

你幾歲?

我五歲!

你家有幾

個人?

我不知道!

(59)

更進階版聊天機器人-好學型

好學型

我是喵喵!

你叫什麼名字?

你幾歲?

我五歲!

你家有幾個人?

我不知道!請告

訴我!

3個

你家有幾個人?

3個

(60)

謝謝聆聽~

Q&A

參考文獻

相關文件

從思維的基本成分方面對數學思維進行分類, 有數學形象思維; 數學邏輯思維; 數學直覺 思維三大類。 在認識數學規律、 解決數學問題的過程中,

審查整理呈現資料:蒐集到的資料應先審核 是否完整、正確、合理與一致,然後利用敘

sort 函式可將一組資料排序成遞增 (ascending order) 或 遞減順序 (descending order)。. 如果這組資料是一個行或列向量,整組資料會進行排序。

按照評估的回饋資料,了解 得失,反思個人的學習,從 而調整學習目標、策略和步

 想要設計一個具有兩個輸入G(gate閘控)和 D(data資料)以及一個輸出Q的閘控閂電 路。當G等於1時,在輸入D出現的二進位資料

 運用引領思維閱 讀,請學生先觀 察繪本封面及插 畫,再推測故事 的內容。. (見《童書教學的理念 與方法》第

熟悉財務比率的計算和表達  :  毛利率,  淨利率,資本運用回報率,營運

 點擊按鈕「Rollover」,工作表便會剪下紅色線以下的資料並複 製至綠色線以下的儲存格。