結 合 Van Hiele 認 知 模 式 與 貝 氏 網 路 之 智 慧 型 程 式 語 言 學 習 系 統 指 導 教 授 : 陳 景 蔚 報 告 人 : 洪 盟 宗
大 綱 背 景 解 決 之 道 文 獻 探 討 建 置 貝 氏 網 路 研 究 結 果 結 論 2
背 景 3
背 景 資 訊 是 21 世 紀 最 重 要 的 產 品, 軟 體 則 是 充 分 體 現 這 一 觀 點 的 推 手 任 一 軟 體 都 是 築 基 於 程 式 語 言 之 上, 然 而 一 個 功 能 性 强 多 樣 富 應 用 彈 性 的 程 式 語 言, 雖 然 能 夠 創 造 出 奇 蹟 般 的 應 用 結 果, 卻 也 同 時 為 程 式 語 言 的 初 學 者 帶 來 莫 大 的 困 擾 程 式 設 計 課 程 的 教 學 目 標, 主 要 就 是 培 養 學 生 具 有 程 式 設 計 的 觀 念 與 能 力 並 將 其 應 用 在 實 際 個 案 中 以 解 決 問 題 因 此 在 課 程 的 規 劃 和 設 計 上, 就 必 須 讓 學 習 者 了 解 資 料 型 態 運 算 子 指 令 程 序 邏 輯 和 應 用 意 涵 等 基 本 的 觀 念 但 是 這 些 看 似 簡 單 且 不 連 續 的 觀 念, 却 讓 一 般 學 習 者 在 學 習 程 式 語 言 時, 感 到 無 比 的 抽 象 困 難 與 挫 折 4
解 決 之 道 5
解 決 之 道 以 正 確 且 富 關 聯 性 與 次 序 性 的 van Hiele 程 式 語 言 教 材 為 基 礎 設 計 採 用 Liffick 和 Ailen[3] 之 建 議 從 認 知 觀 點 將 程 式 設 計 的 學 習 劃 分 出 的 五 個 認 知 層 次, 並 將 van Hiele 的 程 式 語 言 教 材 加 以 細 小 化 利 用 貝 氏 網 路 來 診 斷 學 習 者 在 學 習 上 的 困 難 處, 並 適 時 有 效 的 提 供 學 習 者 適 性 的 診 斷 與 教 材 推 薦, 以 達 到 適 性 教 學 的 目 的 6
文 獻 探 討 Van Hiele Model 認 知 模 式 (Cognitive Model) 貝 氏 網 路 7
文 獻 探 討 (1/6) Van Hiele Model Van Hiele 是 由 荷 蘭 的 數 學 家 Pierre van Hiele 和 Dina van Hiele-Geldorf 夫 婦 於 1957 年 從 幾 何 學 習 的 角 度 提 出 學 童 在 幾 何 概 念 發 展 過 程 中 的 引 導 架 構 [5] Van Hiele 夫 婦 從 幾 何 學 習 中 所 常 遭 遇 到 的 困 難 點 加 以 歸 納, 並 融 合 完 形 心 理 學 (Gestalt Psychology) 和 皮 亞 傑 (Piaget) 的 認 知 理 論, 於 1986 提 出 Van Hiele 幾 何 學 習 模 式 來 解 釋 學 童 在 學 習 幾 何 時 所 遭 遇 的 困 難 [4] 8
文 獻 探 討 (2/6) Chen[2] 在 2005 年 將 Van Hiele Model 重 新 加 以 定 義 並 將 之 應 用 在 程 式 設 計 的 教 學 上 9
文 獻 探 討 (3/6) 認 知 模 式 (Cognitive Model) 由 Liffick 和 Ailen[3] 從 認 知 觀 點, 將 程 式 設 計 的 學 習 劃 分 為 五 個 認 知 層 次 (Cognitive Level): Level 0 詞 彙 (Lexical) 指 令 單 字 的 拼 字 Level 1 句 法 (Syntactic) 指 令 的 語 法 Level 2 語 義 (Semantic) 指 一 單 獨 的 指 令 敘 述 句 的 語 義 Level 3 概 要 (Schematic) 程 式 規 劃 中 配 置 多 個 指 令 敘 述 句, 各 個 敘 述 句 的 概 要 合 理 性 Level 4 概 念 (Conceptual) 應 用 已 設 計 好 用 來 解 決 相 關 問 題 領 域 的 函 數 時 的 整 體 概 念 10
文 獻 探 討 (4/6) 例 子 Lexical 指 令 單 字 的 拼 字 Syntactic 指 令 的 語 法 Conceptual 應 用 已 設 計 好 用 來 解 決 相 關 問 題 領 域 的 函 數 時 的 整 體 概 念 Class IfElse_Nested { public static void mail(string[] args) { int income=1100000; if (income >= 500000) { if (income>=1000000) System.outprintln( 去 澳 洲 旅 行 ); else System.outprintln( 去 中 國 旅 行 ); } } } else System.outprintln( 去 公 園 散 步 ); Schematic 多 個 指 令 敘 述 句 間 的 相 關 性 Semantic 指 單 獨 的 指 令 敘 述 句 的 結 果 11
文 獻 探 討 (5/6) 貝 氏 網 路 貝 氏 網 路 是 根 據 貝 氏 在 1763 年 所 發 表 的 貝 氏 方 法 為 基 礎 而 發 展 出 來 的 一 個 不 允 許 有 方 向 性 循 環 (Directed Acyclic Graph) 存 在 的 有 向 性 圖 形 模 式 (Directed Graphical Model) A y n A 0.9 0.1 A=y A=n B=y 0.6 0.2 B=n 0.4 0.8 B C A=y A=n C=y 0.8 0.1 C=n 0.2 0.9 B=y B=n D=y 0.3 0.8 D E B=y B=n E=y 0.7 0.15 D=n 0.7 0.2 E=n 0.3 0.85 12
文 獻 探 討 (6/6) 貝 氏 理 論 的 數 學 式 下 所 示 : P( X Y ) = P( X Y ) P( Y ) P ( X Y ) = P( Y X ) P( X ) = P( X Y ) P( Y ) 13
建 置 貝 氏 網 路 建 立 課 程 概 念 圖 概 念 的 教 材 化 及 試 題 建 立 實 驗 模 型 的 選 擇 14
建 置 貝 氏 網 路 (1/10) 建 立 課 程 概 念 圖 在 貝 氏 網 路 的 建 置 方 面, 乃 參 考 並 修 改 Butz Hua 和 Maguire[1] 的 非 循 環 有 向 圖, 做 為 貝 氏 智 慧 型 教 導 系 統 的 課 程 概 念 圖 15
南台科技大學 資訊管理研究所 16
建 置 貝 氏 網 路 (2/10) 概 念 的 教 材 化 及 試 題 建 立 Butz Hua 和 Maguire [1] 的 研 究 指 出, 僅 以 懂 和 不 懂 來 判 斷 學 習 者 對 某 一 概 念 的 了 解 與 否, 不 太 容 易 正 確 的 界 定 出 學 習 者 對 該 概 念 的 認 知 情 況 將 每 一 概 念 知 識 根 據 Chen[2] 提 出 的 Van Hiele Model 分 為 五 個 層 級 (L0 到 L4) 再 根 據 Cognitive Model 理 論, 設 計 出 二 至 五 個 不 同 認 知 層 次 的 測 試 題 目, 用 來 了 解 學 習 者 對 該 Van Hiele 層 級 概 念 的 了 解 與 否 17
建 置 貝 氏 網 路 (3/10) Van Hiele Level 0 的 Lexical 題 目 : Java 程 式 檔 案 的 合 法 副 檔 名 為 何? A..class B..jsp C..java D..jav 18
建 置 貝 氏 網 路 (4/10) Van Hiele Level 1 的 Synatic 題 目 : 下 的 敘 述 句, 何 者 是 單 精 倍 數 數 字 的 合 法 寫 法? A.-36.8 B.12366L C.383.34D D.53f 19
建 置 貝 氏 網 路 (5/10) Van Hiele Level 2 的 Semantic 題 目 : 利 用 if 敘 述 句 判 別 所 輸 入 的 整 數 是 否 可 以 被 5 與 6 同 時 整 除, 以 下 敘 述 句 何 者 正 確? A.if( num/5==0 && num/6==0 ) B.if( num*5==0 && num*6==0 ) C.if( num%5==0 && num%6==0 ) D.if( num%5!=0 && num%6!=0 ) 20
建 置 貝 氏 網 路 (6/10) Van Hiele Level 3 的 Schematic 題 目 : 試 撰 寫 一 程 式, 判 斷 年 齡 是 否 小 於 55 歲 若 是, 則 印 出 " 歡 迎 您 入 會 ", 否 則 印 出 " 您 的 年 齡 不 符 合 入 會 條 件 ", 請 選 擇 以 下 選 項, 哪 一 項 符 合 題 意 並 可 以 成 功 編 譯 完 成? A. public class IF_else01 { public static void main(string args[]) { int age = 20; if ( age<55) System.out.println(" 您 的 年 齡 不 符 合 入 會 條 件 "); else System.out.println(" 歡 迎 您 入 會 "); } } C. public class IF_else01 { public static void main(string args[]) { int age = 20; if (age>=55) { System.out.println(" 歡 迎 您 入 會 "); } else { System.out.println(" 您 的 年 齡 不 符 合 入 會 條 件 "); } } } B. public class IF_else01 { public static void main(string args[]) { int age = 20; if ( age<=55) System.out.println(" 歡 迎 您 入 會 "); else System.out.println(" 您 的 年 齡 不 符 合 入 會 條 件 "); } } D. public class IF_else01 { public static void main(string args[]) { int age = 20; if ( age<=54) System.out.println(" 歡 迎 您 入 會 "); else System.out.println(" 您 的 年 齡 不 符 合 入 會 條 件 "); } } 21
建 置 貝 氏 網 路 (7/10) Van Hiele Level 3 的 Conceptual 題 目 : 以 下 為 一 完 整 的 人 與 電 腦 互 動 的 剪 刀 石 頭 布 遊 戲, 請 選 擇 適 合 在 第 19 行 的 if 敍 述 句 1 import java.io.*; 2 public class xo5 { 3 public static void main(string args[])throws IOException{ 4 BufferedReader buf; 5 String str; 6 int num; 7 buf=new BufferedReader(new InputStreamReader(System.in)); 8 do{ 9 System.out.println(" 請 輸 入 1~3 的 數 字 ;1 代 表 剪 刀 2 代 表 石 頭 3 代 表 布 0 不 玩 了 "); 10 System.out.print(" 請 出 拳 "); 11 str=buf.readline(); 答 案 12 num=integer.parseint(str); if( i>num && 0<num && num<4 ) System.out.println( 電 腦 出 +i+ ; 你 輸 入 +num+ 您 輸 囉 ); 13 call(num); else if( i<num && 0<num && num<4 ) 14 }while(num!=0); System.out.println( 電 腦 出 +i+ ; 你 輸 入 +num+ 您 贏 囉 ); 15 System.out.println(" 不 玩 了,88"); 16 } else if ( i==num && 0<num && num<4 ) System.out.println( 電 腦 出 +i+ ; 你 輸 入 +num+ 平 手 囉 ); 17 public static void call(int num){ else System.out.println(" 你 輸 入 錯 誤, 只 能 輸 入 0~3"); 18 int i = (int)(math.random()*3)+1; // 電 腦 亂 數 19 // 請 就 下 列 選 項 中, 選 擇 適 當 的 答 案 碼 20 } 21} 22
建 置 貝 氏 網 路 (8/10) 為 避 免 變 數 過 多 而 造 成 聯 合 機 率 的 運 算 成 指 數 模 式 的 成 長 因 此, 每 個 概 念 以 Van Hiele Model 劃 分 為 五 個 層 級, 每 一 層 級 內 以 所 有 不 同 認 知 層 次 的 測 試 題 目 通 過 率 總 和 大 於 等 於 70% 來 表 示 學 生 對 該 Van Hiele Level 教 材 內 容 已 達 精 熟 程 度 23
建 置 貝 氏 網 路 (9/10) 實 驗 模 型 的 選 擇 在 領 域 知 識 方 面, 本 研 究 採 用 JAVA 程 式 語 言 課 程 並 以 If 敘 述 句 這 個 概 念 的 知 識 組 成 為 開 發 範 例, 且 分 別 以 N1 到 N8 來 代 表 不 同 的 學 習 單 元 貝 氏 網 路 的 訓 練 資 料 來 源 為 台 南 縣 的 兩 所 科 技 大 學 的 資 訊 相 關 系 所, 共 二 個 JAVA 程 式 語 言 課 程 之 學 生 為 施 測 對 象, 總 共 收 集 了 58 份 有 效 樣 本, 其 中 男 性 與 女 性 的 比 例 為 1:1.5 24
建 置 貝 氏 網 路 (10/10) 25
研 究 結 果 26
研 究 結 果 (1/4) 同 一 節 點 間 不 同 層 級 之 移 動 27
研 究 結 果 (2/4) 不 同 節 點 ( 學 習 概 念 ) 間 之 學 習 移 動 28
研 究 結 果 (3/4) 貝 氏 資 料 用 來 決 定 多 分 叉 學 習 節 點 順 序 之 依 據 N4 L3?? N5 L0 N6 L0 P ( N 5 L 0 N 4 L 3) = 0.25 P ( N 6 L 0 N 4 L 3) = 0. 75 29
研 究 結 果 (4/4) 診 斷 方 面 P( N 8L0 N 5L3) P( N 5L3) P( N 8L0 N 7 L3) P( N 7 L3) P( N 5L3 N 8L0) = P( N 7 L3 N 8L0) = P( N 8L0) P( N 8L0) 15 /19 0.655172414 19 / 26 0.655172414 = = 0.703061866 = = 0.534023669 0.735698243 0.896551724 N5 L3 N7 L3 N8 L0? 30
結 論 31
結 論 Cognitive Model 和 Van Hiele Model 整 合 作 為 設 計 程 式 語 言 教 材 和 試 題 是 可 行 性 及 合 適 的 驗 證 以 JAVA 非 循 環 有 向 學 習 圖 來 設 計 富 關 聯 性 與 次 序 性 的 Van Hiele 程 式 語 言 教 材 的 可 行 性 解 決 僅 用 懂 和 不 懂 來 區 分 某 概 念 了 解 與 否 會 失 於 偏 頗 的 問 題 貝 氏 網 路 可 以 有 效 的 建 構 出 屬 於 學 生 的 學 習 技 能 結 構, 更 可 以 精 準 的 診 斷 與 推 薦 適 合 學 生 現 有 概 念 結 構 的 客 製 化 學 習 路 徑 32
THE END 33
參 考 文 獻 1. Butz, C. J.; Hua, S.; and Maguire, R. B. 2006. A Web-Based Bayesian Intelligent Tutoring System for Computer Programming. Web Intelligence and Agent Systems 4(1):77 97 2. Chen, J. W., An Ideal van Hiele Web-based Model for Computer Programming Learning and Teaching to Promote Collaborative Learning. Paper presented at the 2005 Conference on Electronic Commerce and Digital Life (ECDL2005), Taipei, March 25, 2005. 3. Liffick, B. W. & Aiken, R. (1996) A novice programmer''s support environment. SIGCSE Bulletin, 28(1), pp.49-51. 4. Van Hiele, P. M. (1986). Structure and Insight: A theory of Mathematics Education. Orlando: Academic Press. 5. van Hiele-Geldof, D. (1957). De didaktick van de Meetkunde in deerste klass van het V. H. M. O. Summary of unpublished doctoral dissertation with English summary, University of Utrecht, Netherlands. 34