• 沒有找到結果。

多維度拉丁方陣及其臨界集之構造與應用 - 政大學術集成

N/A
N/A
Protected

Academic year: 2021

Share "多維度拉丁方陣及其臨界集之構造與應用 - 政大學術集成"

Copied!
132
0
0

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

全文

(1)國立政治大學資訊科學系 Department of Computer Science National Chengchi University. 碩士論文. 治 政 Thesis Master’s 大. 立. ‧. ‧ 國. 學 y. Nat. er. io. sit. 多維度拉丁方陣及其臨界集之構造與應用. n. The Construction and a Applications of Latin vk-hypercube and. i l C n h e n g cSets hi U Its Critical. 研 究 生:陳淑美 撰 指導教授:左瑞麟 博士. 中 華 民 國 107 年 7 月 DOI:10.6814/THE.NCCU.EMCS.005.2018.B02.

(2) 多維度拉丁方陣及其臨界集之構造與應用 The Construction and Applications of Latin k-hypercube and Its Critical Sets. 研 究 生:陳淑美. Student:Shu-Mei Chen. 指導教授:左瑞麟. Advisor:Raylin Tso. 立. 政 治 大. 國立政治大學. ‧ 國. 碩士論文. 學. 資訊科學系. ‧ er. io. sit. y. Nat. A Thesis. submitted to Department of Computer Science. al. n. v i n National C hChengchi University engchi U in partial fulfilment of the Requirements for the degree of Master in Computer Science. 中 華 民 國 107 年 7 月 July,2018. DOI:10.6814/THE.NCCU.EMCS.005.2018.B02.

(3) 誌. 謝. 很幸運地,我有機會再次進入校園,再次充電、再次學習.... 我要感謝這兩年來,曾教過我的政大老師們,謝謝他們在課堂上精 湛的教學,讓我受益良多,更要感謝我的指導教授左瑞麟教授,精 準的提供研究方向並給予準確的引導,讓我能對研究的主題,從陌 生到熟悉,從了解到擴展運用,過程中雖有碰到瓶頸,也因老師的 鼓舞,而予以克服,研究的過程中,老師所提供的寶貴建議,常常 是順利完成本論理論的主要的關鍵..... 政 治 大 在我求學的兩年中,為我分擔家務,讓我能專心學習,更要感謝我 立 再來,我要感謝我的家人,我要感謝我最愛的二名寶貝兒女,. ‧. ‧ 國. 研究。. 學. 的老公,這兩年來的體諒與支持,讓我能無後顧之憂的進行學習與. sit. y. Nat. 近年來,來自全球各地的資安攻擊事件不斷的發生,攻擊手法. a. er. io. 亦不斷推陳出新,層出不窮的資安事件,已造成大量組織財務、商. n. v 譽的嚴重損失,在多變且充滿資安威脅的年代,如果能在資安防護 l ni Ch. engchi U. 領域中有所貢獻,為悍衛資訊安全盡一份棉薄之力,將讓人感到無 比榮幸,相信本論文所提出的方法論,將激發資安領域同好更多創 新想法與應用,為資訊安全各類研究領域發展出更多相關應用,也 希望未來能有更多人一同加入,為對抗各類資安威脅、悍衛資訊安 全一同努力。. II. DOI:10.6814/THE.NCCU.EMCS.005.2018.B02.

(4) 摘. 要. 「資訊安全」之相關研究如密碼學(Cryptography) 、秘密分享 方案(Secret sharing schemes)經常運用數學技術來設計與實踐,如 1994 年 Cooper,Donovan 和 Seberry 便舉出了如何運用拉丁方陣 (Latin squares)來實踐秘密分享方案。 拉丁方陣為組合設計(Combinatorial designs)中的一部分,於現. 政 治 大. 代密碼學及編碼的設計,有相當多的貢獻。. 立. 本論文將以組合設計中的拉丁方陣為基礎,進一步發展出拉丁. ‧ 國. 學. 立體方陣(Latin cubes)的相關方法論,包含如何建構拉丁立體方陣、. ‧. 如何找出拉丁立體方陣的臨界集(Critical sets)、如何由拉丁立體方. y. Nat. er. io. sit. 陣的臨界集反推出拉丁立體方陣等,藉此增強拉丁方陣應用的複雜 度及多元性,本論文亦依據拉丁立體方陣相關方法論發展出多維度. n. al. i n U. C. v. hengchi 拉丁方陣(稱之為 Latin k-hypercubes)之相關方法論,也成功地將 所提出之方法論運用至資訊隱藏領域。希望本論文所提出之方法 論,後續可於資訊安全各類研究領域發展出更多相關應用。. 關鍵詞:拉丁方陣、拉丁立體方陣、多維度拉丁方陣、臨界集、秘 密分享方案。. III. DOI:10.6814/THE.NCCU.EMCS.005.2018.B02.

(5) Abstract Researches related to "information security" such as Cryptography and Secret sharing schemes are usually designed and constructed using mathematical techniques. For example,in 1994 Cooper, Donovan and Seberry showed the method how to use the Latin square to design secret sharing schemes. The design of Latin squares are in the scope of the Combinatorial designs, and they have considerable contributions to Cryptography and coding theory.. 政 治 大 This thesis will develop the Latin cubes methodology based on the 立. ‧ 國. 學. concepts of Latin squares and their critical sets. We will introduce how to construct a Latin cube,how to find the critical sets of the Latin. ‧. cube,and how to rebuild the Latin cube using its critical sets and so on. The idea introduced here can be used to increase the complexity and. y. Nat. sit. diversity of the application of the Latin squares. Based on the. er. io. methodology of Latin cubes,we will also develop the multi-dimensional. n. a lLatin k-hypercubes) methodology,and Latin squares (called the show iv n. C. h e ntogthec areas how it can be successfully applied h i Uof information hiding. We hope that the methodologies proposed in this thesis can be. followed by more relevant applications in various fields of information security researches.. Keywords: Latin squares、Latin cubes、Latin k-hypercubes、Critical set、Secret sharing schemes. IV. DOI:10.6814/THE.NCCU.EMCS.005.2018.B02.

(6) 目 表次. VII. 圖次. VIII. 次. 第一章 緒論 ...................................................... 1 1.1 研究動機、背景 ...................................................... 1 1.2 研究方法及目標 ...................................................... 3 1.3 研究貢獻 ............................................................ 3. 政 治 大 背景知識與相關研究 ........................................ 5 立. 1.4 論文架構 ............................................................ 4. 第二章. 2.1 拉丁方陣相關方法論 .................................................. 5. ‧ 國. 學. 2.2 拉丁立體方陣(Latin Cubes) ........................................... 10. ‧. 2.3 拉丁立體方陣指數式表示法 ........................................... 12. y. Nat. io. sit. 2.4 多維度拉丁方陣 ..................................................... 13. er. 2.5 數獨(Sudoku) ...................................................... 16. al. n. v i n 2.6 資訊隱藏之隱密術 ................................................... 16 Ch engchi U 2.7 秘密分享方案(Secret Sharing) ....................................... 20. 第三章 拉丁立體方陣相關方法論 ................................... 21 3.1 如何建構拉丁立體方陣 ............................................... 21 3.2 拉丁立體方陣結構分析 ............................................... 25 3.3 拉丁立體方陣臨界集 ................................................. 29 3.4 如何產生拉丁立體方陣之臨界集及還原拉丁立體方陣 ..................... 31. 3.5 拉丁立體方陣相關方法論之演算法 ............................... 41 V. DOI:10.6814/THE.NCCU.EMCS.005.2018.B02.

(7) 第四章 多維度拉丁方陣相關方法論 ................................. 47 4.1 如何建構多維度拉丁方陣 ......................................... 47 4.2 多維度拉丁方陣結構分析 ......................................... 51 4.3 多維度拉丁方陣之臨界集 ......................................... 60 4.4 如何產生多維度拉丁方陣臨界集及還原多維度拉丁方陣 .................. 62 4.5 多維度拉丁方陣方法論程式實作與驗證 .............................. 77 4.6 以拉丁立體方陣指數式表示法建構之拉丁立體方陣如何運用本論文提出之方法 論求出其臨界集及反推拉丁立體方陣 ................................ 92 4.7 多維度拉丁方陣相關方法論之演算法 ................................ 96. 政 治 大 多維度拉丁方陣的應用 .................................... 106 立. 4.8 多維度拉丁方陣之安全性評估 ..................................... 104. 第五章. ‧ 國. 學. 5.1 應用於秘密分享方案 ................................................ 106 5.2 應用於資訊隱藏 .................................................... 106. ‧. 第六章 總結 .................................................... 118. Nat. n. al. er. io. sit. y. 參考文獻 ........................................................ 119. Ch. engchi. i n U. v. VI. DOI:10.6814/THE.NCCU.EMCS.005.2018.B02.

(8) 表次 表 2.1 多維度空間與多維度拉丁方陣[wiki][30] ......................................................................... 13 表 4.1 程式實作各階段輸出/入檔案清單 ...................................................................................... 78 表 4.2 實作項目表 .......................................................................................................................... 78 表 4.3 實作結果 .............................................................................................................................. 79 表 4.4 k 維拉丁方陣可能遭破解機率 .......................................................................................... 105. 立. 政 治 大. ‧. ‧ 國. 學. n. er. io. sit. y. Nat. al. Ch. engchi. i n U. v. VII. DOI:10.6814/THE.NCCU.EMCS.005.2018.B02.

(9) 圖次 圖 2.1 拉丁方陣示例 ....................................................................................................................... 5 圖 2.2 後循環拉丁方陣示例 ............................................................................................................ 5 圖 2.3 部分拉丁方陣示例 ................................................................................................................ 6 圖 2.4 同型拉丁方陣示例-換行 ...................................................................................................... 6 圖 2.5 同型拉丁方陣示例-換元素................................................................................................... 6 圖 2.6 拉丁方陣之臨界集示例,本圖取自[18] .............................................................................. 7 圖 2.7 最小臨界集示例,本圖取自[18] ......................................................................................... 7 圖 2.8 後循環拉丁方陣之臨界集示例,本圖取自[18] .................................................................. 8 圖 2.9 後循環拉丁方陣之最小臨界集示例,本圖取自[18] ........................................................... 9. 政 治 大. 圖 2.10 拉丁立體方陣示例 ............................................................................................................. 10. 立. 圖 2.11 部分拉丁立體方陣示例 ..................................................................................................... 11 圖 2.12 拉丁立體方陣指數式表示法示例 ...................................................................................... 12. ‧ 國. 學. 圖 2.13 多維度拉丁方陣概念示意圖 .............................................................................................. 14 圖 2.14 5 維拉丁方陣各維度示意圖 .............................................................................................. 14. ‧. 圖 2.15 k 維拉丁方陣定義示意圖 ................................................................................................. 15. y. Nat. 圖 2.16 6 數獨示意圖 .................................................................................................................... 16. sit. 圖 2.17 隱密術示意圖 ................................................................................................................... 17. er. io. 圖 3.1 如何建構拉丁立體方陣示意圖 ........................................................................................... 22. al. n. v i n Ch 圖 3.3 拉丁立體方陣變化型示例 .................................................................................................. 24 engchi U 圖 3.4 如何產生拉丁方陣 C 示例................................................................................................. 26 圖 3.2 拉丁立體方陣各層元素變化示例 ....................................................................................... 23. 圖 3.5 透過拉丁立體方陣 L 第 0 層及拉丁方陣 C 推導出完整 L 示意 ........................................ 27 圖 3.6 以拉丁方陣 B 與拉丁方陣 C 表示拉丁立體方陣 L 示意 ................................................... 28 圖 3.7 以拉丁方陣 B 與拉丁方陣 C 反推出拉丁立體方陣 L 示意圖 ........................................... 29 圖 3.8 n 階拉丁立體方陣 L 的臨界集示例................................................................................... 30 圖 3.9 如何產生拉丁立體方陣之臨界集及還原拉丁立體方陣示例 ............................................. 33 圖 3.10 拉丁立體方陣臨界集示意(n 為偶數,x=2) ...................................................................... 35 圖 3.11 拉丁立體方陣之臨界集示意(n 為奇數,x=0) .................................................................. 37 圖 3.12 反推拉丁立體方陣示意(n 為偶數,x=2) .......................................................................... 39 圖 3.13 反推拉丁立體方陣示意(n 為奇數,x=0) .......................................................................... 41 圖 3.14 將 B’放到一個空的拉丁立體方陣 Le1 示意圖 .............................................................. 43 VIII. DOI:10.6814/THE.NCCU.EMCS.005.2018.B02.

(10) 圖 3.15 將 C’放到一個空的拉丁立體方陣 Le2 示意圖 ............................................................. 43 圖 3.16 以 Le1 及 Le2 產生 L’示意 ............................................................................................. 44 圖 3.17 以拉丁立體方陣臨界集 L’重組臨界集 B’示意............................................................. 45 圖 3.18 以拉丁立體方陣臨界集 L’重組臨界集 C’示意............................................................. 45 圖 3.19 以 B,C 重組臨界集 L 示意................................................................................................. 46 圖 4.1 4 階 4 維拉丁方陣各維度示意 ............................................................................................ 47 圖 4.2 如何產置 4 階 4 維拉丁方陣示意(n=4).............................................................................. 48 圖 4.3 以 B,C,D 表示 4 維度拉丁方陣示意 .................................................................................. 52 圖 4.4 以 B,C,D 反推出 4 維拉方陣 L4 (x=0,y=0)示意 ................................................................ 53 圖 4.5 以拉丁立體方陣指數式表示法表示 5 維拉丁方陣............................................................. 54 圖 4.6 以拉丁方陣 Ci 表示 5 維拉丁方陣示意 .............................................................................. 55. 政 治 大. 圖 4.7 多維度拉丁方陣各維度的樣態 ........................................................................................... 56. 立. 圖 4.8 5 維度拉丁方陣臨界集示例................................................................................................ 61 圖 4.9 還原多維度拉丁方陣示意 .................................................................................................. 63. ‧ 國. 學. 圖 4.10 3 階 5 維拉丁方陣臨界集數學表示法示例 ....................................................................... 70 圖 4.11 4 階 5 維拉丁方陣臨界集數學表示法示例 ....................................................................... 71. ‧. 圖 4.12 反推 Ci’示例(n 為偶數)................................................................................................ 73 圖 4.13 反推 Ci’示例(n 為奇數)................................................................................................ 75. y. Nat. sit. 圖 4.14 反推 n 階多維度拉丁方陣(n 為奇數)示意 ...................................................................... 76. er. io. 圖 4.15 實作過程 1_產置 k 維拉丁方陣及其臨界集 ..................................................................... 80. al. v i n 圖 4.17 實作過程 3 將 C2’還原為 C C2 過程 ................................................................................. 81 hengchi U 圖 4.18 實作過程 4 將 C3’還原為 C3 過程 ................................................................................. 81 n. 圖 4.16 實作過程 2 由臨界集 回推 C2’及 C3’ ......................................................................... 80. 圖 4.19 實作過程 5 利用 C2 及 C3 將整個拉丁立體方陣 L 還原 ................................................ 82 圖 4.20 實作過程 6 比較 Recover_K_D.txt 與 source_K_D.txt 內的拉丁立體方陣內容是否相 同 ...................................................................................................................................... 82 圖 4.21 實作編號 1 實作結果 ....................................................................................................... 83 圖 4.22 實作編號 2 實作結果 ....................................................................................................... 84 圖 4.23 實作編號 3 實作結果 ....................................................................................................... 85 圖 4.24 實作編號 4 實作結果 ....................................................................................................... 86 圖 4.25 實作編號 5 實作結果 ....................................................................................................... 87 圖 4.26 實作編號 6 實作結果 ....................................................................................................... 88 圖 4.27 實作編號 7 實作結果 ....................................................................................................... 89 IX. DOI:10.6814/THE.NCCU.EMCS.005.2018.B02.

(11) 圖 4.28 實作編號 8 實作結果 ....................................................................................................... 90 圖 4.29 實作編號 9 實作結果 ....................................................................................................... 91 圖 4.30 以拉丁立體方陣指數式表示法建構拉丁立體方陣示意 ................................................... 93 圖 4.31 找出拉丁立體方陣的臨界集示意 ..................................................................................... 94 圖 4.32 由拉丁立體方陣臨界集反推拉丁立體方陣示意 .............................................................. 95 圖 4.33 將 C2’放到一個空的拉丁立體方陣 Le2 示意圖............................................................. 97 圖 4.34 將 C3’放到一個空的拉丁立體方陣 Le3 示意圖............................................................. 98 圖 4.35 將 C4’放到一個空的拉丁立體方陣 Le4 示意圖............................................................. 99 圖 4.36 以 Le2、Le3、Le4 產生 L’示意 ................................................................................... 100 圖 4.37 以臨界集 L’重組臨界集 C2’示意 ............................................................................... 101 圖 4.38 以臨界集 L’重組臨界集 C3’示意 ............................................................................... 102. 政 治 大. 圖 4.39 以臨界集 L’重組臨界集 C4’示意 ............................................................................... 103. 立. 圖 4.40 以臨界集 C2、C3、C4 反推 L 示意 ................................................................................. 104 圖 5.1 拉丁立體方陣特性示意 .................................................................................................... 107. ‧ 國. 學. 圖 5.2 本論文所提資訊隱藏方法示意 ......................................................................................... 108 圖 5.3 以 8 階拉丁立體方陣為基底設計密碼表示意 ................................................................. 109. ‧. 圖 5.4 圖像與密碼表位置對應方式示意 ..................................................................................... 110 圖 5.5 於遮蓋媒體藏入密碼示意 ................................................................................................ 111. y. Nat. sit. 圖 5.6 傳遞密碼表示意................................................................................................................ 112. er. io. 圖 5.7 運用密碼分持技術反推密碼表示意 ................................................................................. 113. al. v i n 圖 5.9 實作結果 1 示意圖 ........................................................................................................... 114 Ch U i e h n gc 圖 5.10 實作結果 2 示意圖 ......................................................................................................... 114 n. 圖 5.8 密碼取出方式示意 ............................................................................................................ 113. 圖 5.11 實作結果 3 示意圖 ......................................................................................................... 115 圖 5.12 實作結果 4 示意圖(部分圖取自[20])........................................................................... 116 圖 5.13 實作結果 5 示意圖(部分圖取自[17])........................................................................... 116 圖 5.14 擴充每個像素可藏入的機密訊息資料量示意圖 ............................................................ 117 圖 5.15 擴充每個像素可藏入的機密訊息資料量後之實作結果示意圖 ...................................... 117. X. DOI:10.6814/THE.NCCU.EMCS.005.2018.B02.

(12) 第一章. 緒論. 1.1 研究動機、背景 1.1.1. 研究動機. 資訊/通訊技術的快速發展,創造了更新穎、更強大的資訊存取能力, 也造就了大量的網路犯罪活動,近年來,來自全球各地的資安攻擊事件不 斷的發生,攻擊手法亦不斷推陳出新,人們所須面對的資安威脅愈來愈當 多元且廣泛,資安威脅除可造成商業機密資料外洩、系統資料遭竄改、資. 治 政 訊系統攤瘓等危害外,更甚者可能造成國家軍事機密外洩、影響國家安全, 大 立 更能憾動經濟穩定。近年層出不窮的資安事件,已造成大量組織財務、商 ‧ 國. 學. 譽的嚴重損失,為因應日益嚴重的資安威脅,「資訊安全」之相關研究成. ‧. 為現今不容忽視的嚴峻課題,有鑒於此,本論文致力研究、發展資訊安全 相關方法論,期對於因應日益嚴重的資安問題有所助益。. n. al. 研究背景-淺談資訊安全研究與方法. Ch. engchi. er. io. sit. y. Nat 1.1.2. i n U. v. 「資訊安全」,泛指有關資訊保護之相關研究。資訊安全研究主要包含 以下三大領域: 1. 機密性(confidentiality):即確保只有經授權(authorized)的人才能存 取資訊;主要是針對”如何防止資訊被未經授權之個人、實體或程序所竊 取”之相關方法進行研究。 2.完整性(integrity):保護資訊與處理方法的正確性與完整性; 主要是針 對”如何防止資訊被竄改”之相關方法進行研究。. 1. DOI:10.6814/THE.NCCU.EMCS.005.2018.B02.

(13) 3.可用性(availability):確保經授權的使用者在需要時可以取得資訊及相 關資產。主要是針對”如何防止資訊及服務中斷或無法使用”之相關方 法進行研究。 「資訊安全」防護方法中,有關機密性資料防護的技術,包含了資訊隱 藏(Information Hiding)、視覺密碼(Visual Cryptography)等密碼學相關 技術。 密碼學中有關資訊保密的部分,主要是透過密碼系統的設計,將想保密 的資訊(明文)進行加密,變成密文,再將其傳送給特定的對象,除了特定 對象知道如何將密文變回為明文(即解密)外,其它人只能看到一堆亂碼,. 政 治 大 密系統主要分成二大類,一種是對稱性加密,一種是非對稱性加密,兩者皆 立. 無法得知原本明文內容為何,藉此達到資訊保密的目的。現代密碼學的加解. 須透過金鑰來將明文加密及將密文解密。. ‧ 國. 學. 由於經過加密的密文看起來像一堆亂碼,很容易凸顯出所傳遞的資料含. ‧. 有機密,而引發有心人士注意,進而增加密文遭受密碼破解攻擊的機會。為 了要解決上述的缺點,開始有人提出另一種機密資訊保護技術—資訊隱藏技. Nat. sit. y. 術,透過此種技術,可改善上述缺點,降低密文遭破解及資訊被竊取的可能. er. io. 性,”資訊隱藏”簡單來說,就是將數位資料隱藏在另一份媒體(圖片、影. al. 片)之中,嵌入數位資料後媒體,一般人無法看出其與原本之媒體有所差異,. n. v i n Ch 其相關研究,依其應用,又可為隱密術(Steganography)及浮水印(Watermark) engchi U 二大分支。 另一方面密碼系統必須透過金鑰來保護一些秘密文件,一個密碼系統要. 真正安全可靠,除了密碼系統本身的安全設計,系統金鑰的保護機制,亦是 不容忽視的課題。系統金鑰的保護機制的方法之一,便是秘密分享,1979 年,著名的學者 Shamir 提出秘密分享方案的構想與方法,來解決主金鑰管 理的問題[21],主要構想如下: 1.將密碼分成小金鑰(shadow),分別交給 n 個人來保管。 2.保管小金鑰的這 n 個人中之任意 t 個人合作(t n),可共同推導出密碼 系統的主金鑰。 2. DOI:10.6814/THE.NCCU.EMCS.005.2018.B02.

(14) 知道任意 t−1 把(或更少)的小金鑰,無法得知有關主金鑰的任何訊息。 我們發現「資訊安全」之相關研究如密碼學等經常運用組合設計來構 造與實踐,如 1994 年 Cooper, Donovan 和 Seberry[15]便舉出了如何運用拉 丁方陣來實踐秘密分享方案;拉丁方陣為組合設計中的一部分,於現代密 碼學及編碼的設計,有相當多的貢獻[14] ,也因此,本論文將藉由發展「資 訊安全」基礎理論—拉丁方陣,來促進資訊安全技術理論及應用之發展。. 1.2 研究方法及目標. 立. 政 治 大. 有鑒於資訊安全的研究領域,多運用數學技術來設計與實踐,本論文. ‧ 國. 學. 將以組合設計中的拉丁方陣為起點進行擴展,進一步研究拉丁立體方陣(即. ‧. 3 維拉丁方陣)及多維度拉丁方陣之相關方法論,主要目的是希望能藉由擴 展資訊安全研究的基礎數學理論-拉丁方陣,創造出更多新的方法論,應用. y. Nat. n. al. er. io. sit. 於資訊安全相關領域,以對因應日益嚴重的資安問題有所助益。. 1.3 研究貢獻. Ch. engchi. i n U. v. 本論文主要在研究拉丁立體方陣及多維度拉丁方陣之相關構造之方 法論,並提出如何將所研提之方法論,應用至秘密分享方案及資訊隱藏領 域,最後,亦以所研提之方法論實作於資訊隱藏,並得到很好的實作結果。 相信本論文的發表,可達抛磚引玉的效果,促使更多人引用此方法論 發展出更多元的資訊安全相關應用。. 3. DOI:10.6814/THE.NCCU.EMCS.005.2018.B02.

(15) 1.4 論文架構 本論文由六章組成。在第一章節中,我們概述了「資訊安全」防護方 法中,有關機密性資料防護的各類技術及各類技術彼此間的關係,並說明 了本論文研究背景、動機與目的,以對研究本論文的初衷有概略性的了解; 在二章節中,則提供了研讀本論文前需先具備之背景知識,這些背景知識, 將對了解後續章節內容及本論文方法論有很大的幫助;第三章節及第四章 節為本論文的核心主軸,第三章節介紹本論文提出之拉丁立體方陣相關方 法論,包含如何建構拉丁立體方陣、如何找出拉丁立體方陣之臨界集. 政 治 大. (Critical sets)、如何由拉丁立體方陣之臨界集反推出拉丁立體方陣等,第四. 立. 章節則以第三章節為基礎提出多維度拉丁方陣相關方法論,包含如何建構. ‧ 國. 學. 多維度拉丁方陣、如何找出多維度拉丁方陣之臨界集、如何由多維度拉丁 方陣臨界集反推出多維度拉丁方陣等,並藉由程式實作驗證了所提的方法. ‧. 論是可行的;第五章節則說明如何將上述拉丁立體方陣方法論,應用於秘. y. Nat. sit. 密方案及資訊隱藏中,此章節中提出一個結合拉丁立體方陣、秘密分享方. n. al. er. io. 案、最低有效位元(LSB)藏匿法三方技術的資訊隱藏方法論,該方法實作結. i n U. v. 果,不管在隱藏機密訊息能力、隱蔽媒體品質、安全性、擴充性,皆有很. Ch. engchi. 好的表現。 最後在第六章中,我們進一步提出一些拉丁立體方陣、多維度 拉丁方陣方法論未來可能的發展與應用。. 4. DOI:10.6814/THE.NCCU.EMCS.005.2018.B02.

(16) 第二章 背景知識與相關研究 2.1 拉丁方陣相關方法論 2.1.1 拉丁方陣(Latin Squares) 一個 n 階拉丁方陣是 1 個 n×n 的 2 維方陣,方陣中每個 cell 內的符號, 皆來自集合N(N為 1 個包含 n 個符號的集合,如 N={ 0,1,2,3,..., n-1}),各個符號在方陣的每行及每列都恰好只出現一次(即每個符號皆會. 治 政 大 squares)[14][18],圖 2.1 為 4 階及 6 階的拉丁方陣示例。 立. 出現,且只會出現 1 次),我們稱這樣的方陣為 n 階拉丁方陣(order n Latin. ‧. ‧ 國. 學. v i n C hCirculant Latin U 後循環拉丁方陣(Back Squares) engchi n. 2.1.2. er. io. al. sit. y. Nat 圖 2.1 拉丁方陣示例. 對於 1 個 nxn(n>1)的拉丁方陣 L,設 (i,j;v)表示拉丁方陣 L 第 i 列第 j 行的值為 v,如果 v=(i+j) mod n,我們稱這類型的拉丁方陣為後循環拉丁 方陣[8][18]: for each. row i and column j. v=( i + j) mod n 1≤i ,j≤n. 圖 2.2 後循環拉丁方陣示例 5. DOI:10.6814/THE.NCCU.EMCS.005.2018.B02.

(17) 2.1.3. 部分拉丁方陣(Partial Latin Squares). 對於 1 個 nxn(n>1)的 n 階拉丁方陣 L,如果 L 內包含了一些空的 cells(也 就是的拉丁方陣 L 未被填滿),我們稱 L 為部分拉丁方陣[14] [18]。. 圖 2.3 部分拉丁方陣示例. 2.1.4. 政 治 大 同型拉丁方陣(Isotopic Latin Squares) 立. 兩個拉丁方陣若是能利用換列,換行或換元素而得到相等的拉丁方. ‧ 國. 學. 陣,則此二拉丁方陣稱為是同型的拉丁方陣 [14][18][27]。. ‧. Rearranging Columns(換行). Nat. y. sit. n. al. er. io. 將拉丁方陣 L 第 0 行 調到第 2 行,第 2 行調到第 3 行,第 3 行 調到第 0 行,第 1 行不調動,調 整後我們可得到 1 個拉丁方陣 L’,我們稱 L 與 L’為同型的拉丁方 陣。. Ch. engchi. i n U. v. 圖 2.4 同型拉丁方陣示例-換行 Renaming Elements(換元素) 將拉丁方陣 L 中數字 1 改為 2,數字 2 改為 4,數字 4 改 為 1,數字 3 不變,調整後得 到 1 個拉丁方陣 L’,我們稱 L 與 L’為 i 同型的拉丁方陣。. 圖 2.5 同型拉丁方陣示例-換元素. 6. DOI:10.6814/THE.NCCU.EMCS.005.2018.B02.

(18) 2.1.5. 拉丁方陣的臨界集 (Critical sets). 一個 n 階部分拉丁方陣 L’如果同時滿足以下條件,則 L’稱為原拉丁 方陣 L 的臨界集, [14][18][27]: (1). L’是 1 個可以繼續填成一個唯一 n 階拉丁方陣的部分拉丁方陣,換 句話說,籍由臨界集 L’,可推算出唯一的拉丁方陣 L。 (2).去掉 L’中任何一個已填的位置,則無法填成唯一的 n 階拉丁方陣 L。. 立. 政 治 大. 拉丁方陣 L. 臨界集 L'. ‧. ‧ 國. 學. 圖 2.6 拉丁方陣之臨界集示例,本圖取自[18]. 2.1.6 拉丁方陣之最小臨界集. y. Nat. io. sit. 一個拉丁方陣可能有很多個臨界集,其中含元素最少的臨界集 (即被. n. al. er. 填滿的 cell 數量最少者),稱之為最小臨界集(the minimal critical set) [18]。. Ch. engchi. i n U. v. 圖2.7 最小臨界集示例,本圖取自[18] 7. DOI:10.6814/THE.NCCU.EMCS.005.2018.B02.

(19) 2.1.7 後循環拉丁方陣之最小臨界集 拉丁方陣可能的様態很多種,一般來說,我們對於如何找出拉丁方陣 的臨界集所知有限,相對而言,因後循環拉丁方陣樣態較為規律,建立一 個後循環拉丁方陣及找出其臨界集皆有方法可依循,Donovan and Cooper 在 1996 年所提出的 critical sets in back circulant Latin squares (see [8]) 一文 中,便提出如何找出後循環拉丁方陣之臨界集。. 立. 政 治 大. ‧. ‧ 國. 學. n. er. io. sit. y. Nat. al. Ch. engchi. i n U. v. 圖2.8 後循環拉丁方陣之臨界集示例,本圖取自[18]. 2.1.8. The Minimal Critical Set in Back Circulant Latin Square. 8. DOI:10.6814/THE.NCCU.EMCS.005.2018.B02.

(20) Curran and van Rees [9] and Cooper, Donovan and Seberry [6]分別於 1978 及 1991 年提出如何找到後循環拉丁方陣之最小臨界集的相關方法 論,說明如下: 當 n 為偶數時後循環拉丁方陣之最小臨界集為:. 立. 政 治 大. 當 n 為奇數時後循環拉丁方陣之最小臨界集為:. ‧. ‧ 國. 學. n. er. io. sit. y. Nat. al. Ch. engchi. i n U. v. 圖 2.9 後循環拉丁方陣之最小臨界集示例,本圖取自[18]. 9. DOI:10.6814/THE.NCCU.EMCS.005.2018.B02.

(21) 2.2 拉丁立體方陣(Latin Cubes) 2.2.1 拉丁立體方陣定義: 一個 n 階的拉丁立體方陣是 1 個 n×n×n 的 3 維立體方陣(n ≥ 2),立 體方陣中每個 cell 內的符號,皆來自集合 N (N 為 1 個包含 n 個符號的集 合,如 N={1,2,..n},各個符號在立體方陣 each row、each column、each file 都恰好只出現一次(即每個符號皆會出現,且只會出現 1 次),我們稱這樣 的方陣為 n 階拉丁立體方陣(order n Latin cube)。. 立. ‧. ‧ 國. 學. 立體. 政 治 大. n. al. er. io. sit. y. Nat 第0層 第1層. Ch. engchi. i n U. v. 第2層. 圖 2.10 拉丁立體方陣示例 10. DOI:10.6814/THE.NCCU.EMCS.005.2018.B02.

(22) 假設 n 階拉丁立體方陣 L 是由 n 個符號 (ex:1,2,3,...,n) 排成 n×n×n 的拉丁立體方陣,我們可將 n 階拉丁立體方陣視為 n 個不同的拉丁方陣疊 合在一起,即拉丁立體方陣 L 中有 L1, L2,...,Ln 共 n 層,每層皆為一拉丁 方陣,拉丁立體方陣 L 中由相同列相同行所組成的集合{L1i,j,L2i,j,...,Ln i,j}, 我們稱其為 file,每個 file 集合必包含符號 1,2…n,且每個符號只能出現一 次[28]。. 2.2.2 n 階部分拉丁立體方陣(Order n Partial Latin Cubes):. 政 治 大 對於 1 個 nxnxn (n>1)的拉丁立體方陣 L,假如拉丁立體方陣 L 內包含 立. ‧ 國. 學. 了一些空的 cells(也就是拉丁立體方陣 L 未被填滿),我們稱 L 為部分拉丁 立體方陣[28]。. ‧. Nat. n. al. er. io. sit. y. 第0層. 第1層. Ch. engchi. i n U. v. 第2層 圖 2.11 部分拉丁立體方陣示例. 11. DOI:10.6814/THE.NCCU.EMCS.005.2018.B02.

(23) 2.3 拉丁立體方陣指數式表示法 2016 年 Droz [12]提出了一種指數式的拉丁立體方陣表示式法,說明如 下: B 和 C 為二個已知之 n 階拉丁方陣,B(i,j)表示拉丁方陣 B 的第 i 列及第 j 行,C(i,j)表示拉丁方陣 C 的第 i 列及第 j 行,0≤i,j≤n-1。 拉丁立體方陣 BC 是一個立體陣列,其第 0 層與拉丁方陣 B 相同,而 自其每一層中相同列相同行取出元素所組成之 file( file 的定義詳. 政 治 大 樣的表示法,來表達本論文所提出之拉丁立體方陣及多維度拉丁方陣,以 立 2.2.1),皆會與拉丁方陣 C 的某一行相同(如下圖),後續,我們將運用這. ‧. ‧ 國. 學. 提昇其可讀性。. n. er. io. sit. y. Nat. al. Ch. engchi. i n U. v. file. file. 相同. 相同. 圖 2.12 拉丁立體方陣指數式表示法示例 12. DOI:10.6814/THE.NCCU.EMCS.005.2018.B02.

(24) 2.4 多維度拉丁方陣 2.4.1 多維度空間與多維度拉丁方陣(Latin k-hypercube) 為了更易了解多維度拉丁方陣(或稱為 k 維度拉丁方陣),我們先以下表說 明多維度空間的概念: 註:多維度拉丁方陣即為 k 維的拉丁方陣,k=2 則為 2 維拉丁陣列,即我們 所稱的拉丁方陣,k=3 則為 3 維的拉丁陣列,即拉丁立體方陣。. 治 政 大 表 2.1 多維度空間與多維度拉丁方陣[wiki][30] 立. 2 個立方體相連. y. .. 以. 連構成 1. 構成 1 個立. 構成 1 個 4 維度. 此 類. 方體. 超立方體. 推. n. al. 成 1 個面. 1維. Ch. 2維. 3維. engchi. er. 2 個面相連. io. 2 個單點相 2 條線相連 線. 維度 0 維. .. 以 此 類 推. sit. Nat. 說明 單點. ‧. ‧ 國. 學. 圖例. iv n U 4維. .. 以 此 類 推. 依之前拉丁方陣及拉丁立體方陣的定義,可得知 k 維拉丁方陣是 1 個 n×n×n...×n(k 個 n 相乘)的 k 維方陣,k 維拉丁方陣中每個 cell 內的符 號,皆來自集合N(N為 1 個包含 n 個符號的集合,如 N={1,2,3,..., n},各個符號在 k 維拉丁方陣的各個維度都恰好只出現一次(即每個符號皆 會出現,且只會出現 1 次),我們稱這樣的方陣為 n 階 k 維拉丁方陣。下 圖為 n 階 0 維拉丁方陣~8 維拉丁方陣的樣態. 13. DOI:10.6814/THE.NCCU.EMCS.005.2018.B02.

(25) 立. 政 治 大. ‧. ‧ 國. 學 圖 2.13 多維度拉丁方陣概念示意圖. sit. y. Nat. io. al. er. 我們以 5 維拉丁方陣為例來說明. 第 4 個維度,即柱. n. 第 1 個維度:即列 第 2 個維. Ch. engchi. i n U. v. 度:即行. 第 5 個維度 即片 第 3 個維 度:即層. 圖 2.14 5 維拉丁方陣各維度示意圖 14. DOI:10.6814/THE.NCCU.EMCS.005.2018.B02.

(26) 2.4.2 多維度拉丁方陣(即 k 維度拉丁方陣)定義 k 維拉丁方陣 義如下: 依據 Dougherty , Szczepanski 於 2008 年提出的”Latin k-hypercubes “ [24] 一文中,提到的 k 維度拉丁方陣定義如下: A Latin k-hypercube Lj1,...,jk of order n is a k dimensional array with nk elements given as a cube with each side containing n coordinates, where the elements come from the set {0,1,2,...,n − 1}, such that if ji = j’i for all i ≠α and jα≠ jα’ then Lj1,j2,...,jk ≠Lj’1,j’2,...,jk [24]. 政 治 大 示行、j 表示層),假設 立 α=3,依上述定義,j = j’ 、j = j’ 、j ≠ j’ ,如果 j. 以 3 維度拉丁方陣為例,我們可將其表示為 Lj1,j2,j(其中 j1 表示列,j2 表 3 3. 1. 1. 2. 2. 3. 3. 1. ‧ 國. 學. = j’1=2、j2 = j’2=3、j3=1,j’3=0,則 L2,3,1 ≠L2,3,0(即同列同行不同層,符號會 不同),此意味著一個 k 維的拉丁立體方陣 L,若其中有 k-1 個維度值相. ‧. 同,1 個維度值不同,則 Lj1,j2,...,jk 的值便會不同,這樣的定義可呼應之前. sit. y. Nat. 我們所提到的” 各個符號在多維度拉丁方陣的各個維度都恰好只出現一. n. al. er. io. 次(即每個符號皆會出現,且只會出現 1 次)”. Ch. 同層同列 不同行,符 號不同. engchi. i n U. v. n 階多維度拉丁方陣 中,每個維度都包含 n 個不同符號(如符號 1,2,...,n). 同列同行 不同層,符 號不同 同層同行 不同列,符 號不同. 圖 2.15 k 維拉丁方陣定義示意圖 15. DOI:10.6814/THE.NCCU.EMCS.005.2018.B02.

(27) 2.5 數獨(Sudoku) 數獨是一種數字填充遊戲,一個已解答的數獨其實是一種多了宮(即 3x3的大格)限制的9階拉丁方陣,其為1個9*9的方陣,在已解答的數獨中, 除每行、每列皆會出現數字1-9,且不會有重覆的數字以外,每個宮(即3x3 的大格)亦是如此。簡單來說,同一個數字不可能在同一行、列或宮中出現 多於一次,2008年Chang,Chou,Kieu所提出的資訊隱藏方法論[5],便使用到 數獨來當作密碼表。. 政 治 大. 立. ‧. ‧ 國. 學 圖 2.16 6 數獨示意圖. n. er. io. sit. y. Nat. al 2.6 資訊隱藏之隱密術. Ch. engchi. i n U. v. “資訊隱藏”簡單來說,就是將數位資料隱藏在另一份媒體(圖片、影片) 之中,嵌入數位資料後媒體,一般人無法看出其與原本之媒體有所差異。 有關資訊隱藏的相關研究,依其應用,可分為隱密術及浮水印二大分 支,本論文研究主題主要是與隱密術相關,後續提及之資訊隱藏,主要係指 隱密術。. 2.6.1. 隱密術(Staganography):. 係指將機密資料隱藏在另一份普通的媒體(如:圖片、影片)之中,因 16. DOI:10.6814/THE.NCCU.EMCS.005.2018.B02.

(28) 嵌入數位資料後的媒體,一般人無法看出其與原本之媒體有所差異,不會 令人起疑,藉此,運用來進行機密訊息傳輸,以避免機密資料遭受到不法 的竊取、破壞。 數位圖像是一種相當適合用來攜帶機密訊息的媒體,因為微量的改變 數位圖像,很難以人眼辨識出來。隱藏學中用來隱藏秘密資訊的媒體,我 們稱之為遮蓋媒體 (Cover Media),機密訊息藏到遮蓋媒體後,會產生隱 蔽媒體(Stego Media),之後只要將隱蔽媒體傳送至接收端,接收端收到後 再進行解密,即可獲取機密訊息,因為隱蔽媒體和遮蓋媒體非常相似,故. 政 治 大. 傳送過程中,不會引起其他人的懷疑。隱密術示意圖如下:. 立. ‧. ‧ 國. 學. n. er. io. sit. y. Nat. al. Ch. engchi. i n U. v. 圖 2.17 隱密術示意圖. 設計資訊隱藏機制時須注意的二個因子為: (1) 隱藏機密訊息的能力(Embedding Capactity): 以灰階圖像而言,係指1個像素可隱藏的機密訊息位元數量,即bpp(bits per pixel)其公式如下:. 17. DOI:10.6814/THE.NCCU.EMCS.005.2018.B02.

(29) [5] C: 隱藏機密訊息的能力 H:圖像的高度,W:圖像的寬 S: 機密訊息位元數量. 以彩色圖像而言,係指1個byte可資訊隱藏的機密訊息位元數量,即bpb(bits per byte)其公式如下: C:隱藏機密訊息的能力. 立. S: 機密訊息位元數量. 治 W:圖像的寬 政H:圖像的高度 大. 每個像素有RGB 3個顏色,每個顏色各占1個 byte,故須x3. ‧ 國. 學. (2) 隱蔽媒體的品質(Visual quality,即圖像失真的程度)其公式如下: 黑白圖像:. y. ‧. Nat. er. io. sit. where. H:圖像的高度 W:圖像的寬 S: 機密訊息位元數量[5]. n. al. 彩色圖像:. Ch. engchi. i n U. v. [20]. PSNR 值愈大,品質愈高, 圖像失真的程度愈小. 隱密術的理想目標是追求高的隱藏機密訊息能力及好的隱蔽媒體品 18. DOI:10.6814/THE.NCCU.EMCS.005.2018.B02.

(30) 質,但隱藏機密訊息能力及隱蔽媒體品質二者往往成反比,因此,須依不同 的應用,在二者間進行取捨。 2.6.2 運用最低有效位元藏匿法實作資訊隱藏 資訊隱藏的實作方式有很多種,其中最低有效位元(Last Significat Bit)藏 匿法是最簡單的一種,此方法主要是利用影像中每個像素的最低位元來藏入 資訊,因為以單一原色而言,最低位元對於該原色的影響最小,因而有學者 稱最低位元為最不重要位元(Lowest Significant Bits)。 最低有效位元藏匿法主要的做法是將機密訊息隱藏在圖像像素值的最. 政 治 大. 後的n個位元,若機密訊息位元跟遮蓋媒體像素的最後的n個位元不同時,則. 立. 直接以機密訊息位元取代遮蓋媒體像素位元,得到一張隱蔽影像,達成資訊. ‧ 國. 學. 隱藏的目的,例如:像素值 x=152=(10011000)2,要藏入 3 位元的機密訊 息為(111)2,將機密訊息藏入後得到新的像素值將為 y=(10011111)2=159,. ‧. 在藏匿的過程中,機密訊息與像素值皆以二進位表示[29]。. y. Nat. sit. 最低有效位元藏匿法優點為高藏量與低失真度,缺點為藏入的機密訊息長度. n. al. er. io. 越長,則隱藏後得到的新圖像品質就越差(圖像失真程度越高),且因藏入機. i n U. v. 密訊息的方式很簡單,很容易被偵測及取出藏入的資訊,很難對抗一般性攻. Ch. 擊,因此,安全性不佳。. engchi. 2.6.3 運用數獨實作資訊隱藏. 2008年Chang,Chou,Kieu提出了另一種資訊隱藏方法論 [5],這個方法 論中,遮蓋媒體中各像素不直接存放密碼,而是存放密碼於密碼表中的位 置(即行列位置),因此可改善使用最低有效位元藏匿法安全性不佳的缺 點,此方法論中所使用到的密碼表即是用之前我們所提的數獨來實作的。。. 19. DOI:10.6814/THE.NCCU.EMCS.005.2018.B02.

(31) 2.7 秘密分享方案(Secret Sharing) 秘密分享主要概念是指將秘密資訊切割成數份,分配給特定群組中的 成員,惟有該群成員各別持有的密碼片斷組合在一起時,才可重建秘密資 訊。這樣的概念就像是三個朋友同時找到了一張埋藏寶藏的地圖,為了避 免其中 1 人獨占寶藏,便將藏寶圖分割 3 等份,分別給這 3 人,並確保只 有 3 人聚在一起拿出藏寶圖片斷組在一起,才能重建藏寶圖,找出寶藏。 秘密分享方案是基於金鑰安全管理的需要,所發展出來的密碼學技. 政 治 大 碼系統要真正安全可靠,除了密碼系統本身的安全設計(須考慮到各類型 立 術,正如我們所知,密碼系統必須透過金鑰來保護一些秘密文件,一個密. ‧ 國. 學. 攻擊),系統金鑰的保護機制,亦是不容忽視的課題。. 秘密分享方案除了應用於解決金鑰管理的問題,還可應用於於商業或. ‧. 軍事中(如:銀行保險庫須兩名以上人員才可開保險庫,核武發射須總統、. Nat. io. sit. y. 國防部長、國防部官員共同啟動等)。. n. al. er. 2017 年 Tso 及 Miao[18]提出了如何運用拉丁方陣及其臨介集來實踐. Ch. i n U. v. 秘密分享方案,其主要的理念是運用拉丁方陣作為密碼,並以其臨界集作. engchi. 為密碼片斷,依拉丁方陣理論,我們只要知道拉丁方陣的臨界集,便可反 推回一個唯一的拉丁方陣,而且如果去掉臨界集中任何一個已填的位置, 則無法推算出唯一的拉丁方陣 ,故可將臨界集中的元素分作數個密碼片 斷,分散給多人持有,只有在所有持有密碼片斷的人將其持有的密碼片斷 湊在一起,才可組成臨界集 ,回推出唯一的拉丁方陣(即密碼),如果少 了任何一個密碼片斷,則無法推算出唯一密碼,該論文中更進一步提出如 何將拉丁方陣應用於基礎型 (Basic Secret Sharing Scheme)、多部門型 (Multi-department Scheme)、階層型 (Multilevel Scheme)3 種類型之秘 密分享方案 [18]。 20. DOI:10.6814/THE.NCCU.EMCS.005.2018.B02.

(32) 第三章. 拉丁立體方陣相關方法論. 本章節將就拉丁立體方陣相關方法論,分成以下三大部分進行說明: 1.如何建構拉丁立體方陣 2.拉丁立體方陣臨界集的樣態 3.如何產生拉丁立體方陣之臨界集及利用拉丁立體方陣之臨界集還原拉丁 立體方陣. 治 政 大 出之拉丁立體方陣為例,發展出其對應之數學表示式。 立. 其中於第 2 及第 3 部分,將提出一個通用性方法論,並以第 1 部分所建構. ‧ 國. 學. 3.1 如何建構拉丁立體方陣. ‧ sit. y. Nat. 3.1.1 拉丁立體方陣建構方式概述. io. er. 經研究發現,除了可用任 2 個拉丁方陣來建構拉丁立體方陣[12](可參 考 2.3 節)以外,我們還可利用後循環拉丁方陣及同型拉丁方陣建構出拉丁. n. al. 立體方陣,方法如下:. Ch. engchi. i n U. v. 如 2.2.1 所述,我們可將 n 階拉丁立體方陣視為 n 個不同的拉丁方陣 疊合在一起,首先,我們先產生 1 個後循環拉丁方陣當作拉丁立體方陣 L 的第 0 層,再利用 L 的第 0 層各元素+1 Mod n 產生第 1 層,第 0 層各元素 +2 Mod n 產生第 2 層……..第 0 層各元素+(n-1) Mod n 產生第 n-1 層,最 後再將 n 個拉丁方陣疊合在一起,即可生產生 n 階拉丁立體方陣,示意圖 如下:. 21. DOI:10.6814/THE.NCCU.EMCS.005.2018.B02.

(33) 立. 政 治 大. ‧ 國. 學. 圖 3.1 如何建構拉丁立體方陣示意圖. 以此方式生產生的 L,第 0 層中的數字 0,到了第 1 層皆變為數字 1,. ‧. 到了第 2 層皆變為數字 2;第 0 層中的數字 1,到了第 1 層皆變為數字 2,. sit. y. Nat. 到了第 2 層皆變為數字 0;第 0 層中的數字 2,到了第 1 層皆變為數字 0,. n. al. er. io. 到了第 2 層皆變為數字 1(詳如圖 3.2),而第 1~n-1 層的拉丁方陣皆為第 0. v. 層拉丁方陣旳同型拉丁方陣,另位於 L 第 0 層上的數字(即符號),於往下. Ch. engchi. i n U. 的各層中,皆以+1 的方式遞增,故同樣的行列位置上的數字,於每一層 中,將不會重覆。 綜上,我們發現 L 的每層皆為拉丁方陣(每一行每一列數字都不會重 覆且恰好只出現一次),且同樣的行列位置,於每一層中,數字將不會重覆 且恰好只出現一次,其特性符合 2.2.1 拉丁立體方陣定義,因此我們可判 定以此方式生產生的 L 為拉丁立體方陣。. 22. DOI:10.6814/THE.NCCU.EMCS.005.2018.B02.

(34) 同行同列不同層,符號 (數字)會不同. 第 0 層數字 1 在各層的變化. 第 0 層數字 2 在各層的變化. 第 0 層數字 3 在各層的變化. 政 治 大. 圖 3.2 拉丁立體方陣各層元素變化示例. 學. ‧ 國. 立. 3.1.2 建構拉丁立體方陣 之數學表示式. ‧. 我們可以以下的數學式來表示依上述方法所建構的拉丁立體方陣: 數學式 3.1. y. Nat. io. sit. n 階拉丁立體方陣 L 是 1 個 n×n×n 的 3 維的陣列,L 內存的值皆來自. n. al. er. 集合 N,N= {0,...,n-1},n≥ 1。. Ch. i n U. v. 假設位於 L 第 k 層第 i 列第 j 行-即座標(i,j,k)上的值為 v,v=( i+j+k). engchi. mod n,我們可以下面的列示表示:. 拉丁立體方陣 L = {(i,j,k;(i+j+k) mod n) : k = 0,...,n−1 i = 0,...,n−1 j = 0,...,n−1} 以上述公式產生的拉丁立體方陣,看起來較為簡單,我們可以用下方式增 加一些變化性: 1. 將拉丁立體方陣內的符號{0,…..n-1}調整為{1,…..n}:. 23. DOI:10.6814/THE.NCCU.EMCS.005.2018.B02.

(35) 可於公式內加入一變數 q,如果想讓 L 內的符號介於 0~n-1 之間,可將 q 設成 0,想讓 L 內的符號介於介於 1~n 之間則將 q 設成 1(如圖 3.3)。 2.我們可再就 L 進行元素交換、行平移等變化,來增加複雜度(如圖 3.3):. L = {(i,j,k;(i+j+k) mod n+q) : k = i = j = q=0. 0,...,n−1 0,...,n−1 0,...,n−1} , or 1. (想讓 L 內的符號介於 0~n-1,將 q 設為 0, 想讓 L 內的符號介於 1~n 之間,將 q 設為 1). 政 治 大. 立. ‧. ‧ 國. 學. n. er. io. sit. y. Nat. al. Ch. engchi. i n U. L2 變化型 2 L1 變化型 1 奇數元素對 L3 變化型 3 偶數元素對 L0 基礎型 將基礎型往 調(1 與 3 對 調(2 與 4 對 左 shift 1 行 調) 調). 調. v. L4 變化型 4 奇數元素對 調後,各元素 再+1. L5 變化 5 偶 數元素對 調 後,各元素 再+1. 調. 圖調 3.3 拉丁立體方陣變化型示例 調 上圖中之 L1~L5 皆為 L0 之同型拉丁立體方陣,我們可於公式中再加入一個 變數 p 來達到以上的變化: 24. DOI:10.6814/THE.NCCU.EMCS.005.2018.B02.

(36) p=0,p=1,p=2……….., q=0 or 1 拉丁立體方陣 L = {(i,j,k;(i+ j+k+p) mod n+q ) : k = 0,...,n−1 i = 0,...,n−1 j = 0,...,n−1 } 如想做到圖 3.3 所述變化型 1(將基礎型往左 shift 1 行),可將 p 設為 1,. 治 政 大 {[ (i+ j+k) mod n] mod 2}*2 立. 如想做到圖 3.3 所述變化型 2(奇數元素 1 與 3 對調),可將 p 設為. 如想做到圖 3.3 所述變化型 3(偶數元素 2 與 4 對調),可將 p 設為. ‧ 國. 學. {1- [ (i+ j+k) mod n] mod 2}*2. ‧. 除了上述例子以外,可依實際需要,進行多元的變化。. sit. y. Nat. er. io. 3.2 拉丁立體方陣結構分析. al. n. v i n Ch 仔細觀察一下 3.1 節所產生的拉丁立體方陣 e n g c h i U L,我們發現,如於 L 每一. 層取出 1 個固定的列(如分別第 0 層、第 1 層及第 2 層取出第 0 列),組合 在一起,將可產生另一個拉丁方陣,我們稱其為拉丁方陣 C,拉丁方陣 C. 每一列皆取自拉丁方陣,故其每列內的各元素只會出現一次,另其每一行, 係由拉丁立體方陣 L 中同樣的行列位置,於不同層中的符號所組成,故每 行中的各個符號(數字)亦只會出現一次(詳圖 3.4),有趣的是,拉丁方 陣C恰巧可反映出L第 0 層各個數字,於其它各層的變化。. 25. DOI:10.6814/THE.NCCU.EMCS.005.2018.B02.

(37) 第 0 層數字 1 在各層的變化 範例 1: C取自 L 每層的第 0 列. 立. 第 0 層數字 2 在各層的變化 第 0 層數字 3 在各層的變化. 政 治 大. 範例 2:C取自 L 每層的第 1 列. ‧. ‧ 國. 學 L. n. al. Ch. er. io. sit. y. Nat L. i n U. v. 圖 3.4 如何產生拉丁方陣 C 示例. engchi. 也因拉丁方陣C可反映出L第 0 層各個數字,於其它各層的變化,我 們發現,只要知道 L 第 0 層內的所有數字,就可以藉由 L 第 0 層及拉丁方 陣 C 來推導出 L 第 1 層至 n-1 層的所有數字,以圖 3.5 為例,已知 L 第 0 層第 0 列第 0 行的數字為 0,我們只要於拉丁方陣 C 的第 0 列中找到數字 0 後,往下 1 列,後便可得知 L 第 1 層第 0 列第 0 行的數字會是 1,往下 2 列,便可知 L 中第 2 層第 0 列第 0 行的數字會是 2,相同的道理,如圖 3.5 所示,已知 L 第 0 層第 1 列第 1 行的數字為 2,我們可於拉丁方陣 C 的第 0 列中找到數字 2 後,往下 2 列便推算出 L 第 2 層第 1 列第 1 行的數字會 是 1,以此模式進行推導,最後發現,只要透過 L 第 0 層及拉丁方陣 C, 便可將整個拉丁立體方陣 L 推導出來。. 26. DOI:10.6814/THE.NCCU.EMCS.005.2018.B02.

(38) 再仔細觀察圖 3.4 範例 1 及範例 2,發現,不管拉丁方陣 C 是由 L 每 層的第 0 列組成,或第 1 例組成,拉丁方陣 C 皆可反映出L第 0 層各個數 字,於其它各層的變化。. 立. 政 治 大. ‧. ‧ 國. 學 er. io. sit. y. Nat. al. n. 圖 3.5 透過拉丁立體方陣 L 第 0 層及拉丁方陣 C 推導出完整 L 示意. Ch. engchi. i n U. v. 如果我們把 L 的第 0 層當作拉丁方陣 B,並以 L 的每層固定的列組合 成拉丁方陣 C,便可利用拉丁方陣 B 及 C,完整的將拉丁立體方陣 L 推導出 來(如圖 3.6)。 我們發現,上述的 n 階拉丁立體方陣 L,也可以以 2.3 章節所提之拉 丁立體方陣指數式表示法來表示,其中拉丁方陣 B 便 L 的第 0 層,而拉丁 方陣 C 則是由L每一層的第固定的列(如第 0 列,第 2 列….)組合而成, 示意圖如下:. 27. DOI:10.6814/THE.NCCU.EMCS.005.2018.B02.

(39) 立. 政 治 大. ‧. ‧ 國. 學. n. al. 一層的第 1 列組合而成. Ch. engchi U. er. io. sit. y. Nat 本例拉丁方陣 C 由L每. v ni. L. 圖 3.6 以拉丁方陣 B 與拉丁方陣 C 表示拉丁立體方陣 L 示意 以圖 3.6 為例,拉丁方陣 B 取自 L 的第 0 層,而拉丁方陣C則由L每一層 的第 1 列組合而成,我們可以以下數學表示式來表示拉丁方陣 B 及拉丁方 陣C 數學式 3.2. 28. DOI:10.6814/THE.NCCU.EMCS.005.2018.B02.

(40) 設 B(i,j)表示拉丁方陣 B 的第i列及第j行,L(i,j,k) 表示拉丁立體方 陣 L 的第i列、第j行及第 k 層,C(k,j) 表示拉丁方陣 C 的第 k 列及第 j行,i,j,k 值介於 0 到 n−1 之間。 B(i,j)=L(i,j,0) C(k,j)= L(1,j,k). 3.3 拉丁立體方陣臨界集 如同 3.2 章節述,我們可以以拉丁立體方陣 L 的第 0 層作為拉丁方陣. 治 政 大C(以圖 3.7 為例,拉丁方 B,而以L每一層的某 1 固定的列組成拉丁方陣 立 陣 C 係由L每一層第 2 列組成),並以 B 及 C 推導出 L,也就是說只要找 ‧ 國. 學. 出拉丁立體方陣 L 對應之拉丁方陣 B 與拉丁方陣 C,便可以反推出 L,示. ‧. 意圖如下:. n. er. io. sit. y. Nat. al. Ch. 找出 L 對應的 B,C. i n U. engchi. v. 知道 B,C 可反推 出拉丁 立體方 陣L. 本例拉丁方陣 C 由 拉丁立體方陣 L每 一層的第 2 列組合 而成. 圖 3.7 以拉丁方陣 B 與拉丁方陣 C 反推出拉丁立體方陣 L 示意圖 29. DOI:10.6814/THE.NCCU.EMCS.005.2018.B02.

(41) 依拉丁方陣相關方法論得知,我們只要知道拉丁方陣 B 的臨界集就可 推算出完整的拉丁方陣 B,同理,我們只要知道拉丁方陣 C 的臨界集就可 推算出完整的拉丁方陣 C[18],也就是說,只要能夠知道拉丁方陣 B、C 的 臨界集,即可推算出完整的拉丁立體方陣 L。 如果我們將拉丁方陣 B、C 的臨界集(以下我們分別以 B’、C’表示)內 的符號,放進一個空的 n 階拉丁立體方陣,可得到一個部分拉丁立體方陣 L’,我們可透過一些方法,將上述的 L’反推回一個唯一的 n 階的拉丁立體 方陣 L,而且如果去掉 L’中任何一個已填的位置,則無法推算出唯一的 n. 政 治 大 階拉丁立體方陣 L 的臨界集。(如圖 3.8)。 立. 階拉丁立體方陣 L,因上述 L’特性符合臨界集定義,我們可將 L’視為 n. ‧. ‧ 國. 學. n. er. io. sit. y. Nat. al. Ch. engchi. i n U. v. L’為 L 的臨界集. 圖 3.8 n 階拉丁立體方陣 L 的臨界集示例. 30. DOI:10.6814/THE.NCCU.EMCS.005.2018.B02.

(42) 3.4 如何產生拉丁立體方陣之臨界集及還原拉丁立體方陣 3.4.1 方法論概述 設拉丁方陣 B 為拉丁立體方陣 L 的第 0 層,拉丁方陣 C 則由拉丁立 體方陣 L 的每 1 層的任何 1 固定的列(如第 0 列)組成,B’為 B 的臨界集, C’為 C 的臨界集,L’為 L 的臨界集,我們可用下面的方法來產生拉丁立體 方陣之臨界集,並可運用拉丁立體方陣之臨界集還原拉丁立體方陣: 1. 產生拉丁立體方陣之臨界集: 找出拉丁立體方陣 L 對應的拉丁方陣 B、C 及其臨界集 B'、C',依下原. 政 治 大. 則將已知之 B’、C’內的符號,放進 1 個空的 n 階拉丁立體方陣:. 立. (1) B’放進空的拉丁立體方陣時,須固定放置在 L’第 0 層對應的位置. ‧ 國. 學. 註:因 拉丁方陣 B 固定取自拉丁立體方陣 L 的第 0 層,B’放進空的 拉丁立體方陣時,須固定放置在 L’ 第 0 層。. ‧. (2) 如同 3.3 節所述拉丁方陣 C 可由L每一層的某 1 固定的列組成,設. y. Nat. n. al. er. io. 便須放置在 L’ 每一層第 x 列對應位置. sit. C係由 L 的每 1 層的第 x 列組成,則 C’放進空的拉丁立體方陣時,. i n U. v. 註:如 C 是由 L 的每 1 層的第 0 列組成,則 C’便須放置在空拉丁. Ch. engchi. 立體方陣每一層第 0 列對應的位置(如圖 3.9 例 1),如 C 是由 L 的每 1 層的第 2 列組成,則 C’須放置在空拉丁立體方陣每一層 第 2 列對應的位置(如圖 3.9 例 2),以此類推, C’放到空拉丁 立體方陣的位置,是取決於 C 是由 L 每層的那一列所組成。 當 B’及 C’所有元素皆依上述原則放進空的拉丁立體方陣後,便會生成為 L 的臨界集 L’ (詳如圖 3.9)。 2. 還原拉丁立體方陣 L 的方式: 還原的方式則是依以下原則自 L’相對應的位置,取出符號,重組 B’、 C’,再反推 L: 31. DOI:10.6814/THE.NCCU.EMCS.005.2018.B02.

(43) (1) 由 L’第 0 層相對應的位置取回 B’各元素重組 B’。 註:在產生臨界集階段時,B’是放置在 L’第 0 層哪個位的位置, 於還原時便從哪個位置取回元素重組 B’。 (2) 在產生臨界集階段時,C’是放置在 L’的哪個位置,在還原時,便 須自 L’的哪個位置取回元素重組 C,假設在產生臨界集階段時,C ’是放置在 L’ 每一層第 x 列,在還原時,便須自 L’每一層 x 列相 對應的位置取回元素重組C’(詳如圖 3.9)。 (3). 找出 B’及 C’後即可推算出拉丁方陣 B、C。. (4). 知道拉丁方陣 B、C 後便可以反推出拉丁立體方陣 L。. 立. 政 治 大. ‧. ‧ 國. 學. n. er. io. sit. y. Nat. al. Ch. engchi. i n U. v. 32. DOI:10.6814/THE.NCCU.EMCS.005.2018.B02.

(44) 例 1:拉丁方陣 C 由拉丁立體方陣L每一層的第 0 列組合而成. 政 治 大. L’為 L 的 臨界集. 立. 產生臨界集. 還原拉丁立體方陣. ‧. ‧ 國. 學. 例 2: 拉丁方陣 C 由拉丁立體方陣 L每一層的第 2 列組合而成. n. er. io. sit. y. Nat. al. Ch. engchi. i n U. v. L’為 L 的 臨界集 還原拉丁立體方陣. 產生臨界集. 圖 3.9 如何產生拉丁立體方陣之臨界集及還原拉丁立體方陣示例 33. DOI:10.6814/THE.NCCU.EMCS.005.2018.B02.

(45) 3.4.2 產生拉丁立體方陣臨界集之數學表示式 以 3.1 節方法所產生之拉丁立體方陣為例,我們可以下列方式快速產 生其臨界集: 假設 C 取自 L 的第 x 列( 0 ≤ x ≤ n-1),我們可以以下數學式來推算臨界集(請 參考 2.1.7 後循環拉丁方陣之最小臨界集相關數學式) 數學式 3.3 當 n 為偶數時: If n = 2m for some positive integer m,. 政 治 大. p=0,p=1,p=2……….., q=0 or 1. 立. 學. ‧ 國. L’ =. { (i,j,k; (i + j+k+p) mod n +q): k=0,. ‧. i = 0,...,n/2−1,. y. Nat. n. al. er. io. }. sit. j = 0,...,n/2−1−i. ∪. Ch. {(i,j,k;( i + j+k+p) mod n +q) :. engchi. i n U. v. k=0, i = n/2 + 1,...,n−1, j = 3n/2−i,...,n−1 } ∪ {(i,j,k; (i + j+k+p) mod n. +q) :. k=0,...,n/2−1, i = x, //註: i=x 表示 C 取自 L 各層的第 x 列( 0 ≤ x ≤ n-1) 34. DOI:10.6814/THE.NCCU.EMCS.005.2018.B02.

(46) j = 0,...,n/2−1−k } ∪ {(i,j,k; (i + j+k+p) mod n +q) : k= n/2 + 1,...,n−1 , i = x, //註: i=x 表示 C 取自 L 各層的第 x 列( 0 ≤ x ≤ n-1) j = 3n/2−k,...,n−1 }. 立. 政 治 大. ‧. ‧ 國. 學. n. er. io. sit. y. Nat. al. 圖 3.10. Ch. engchi. i n U. v. 拉丁立體方陣臨界集示意(n 為偶數,x=2). 當 n 為奇數時: If n = 2m + 1 for some positive integer m, p=0,p=1,p=2……….., q=0 or 1 L’ = 35. DOI:10.6814/THE.NCCU.EMCS.005.2018.B02.

(47) {(i,j,k; (i + j+k+p) mod n +q) : k=0, i = 0,...,(n−3)/2, and j = 0,...,(n−3)/2−i } ∪ {(i,j,k;( i + j+k+p) mod n +q) : k=0, i = (n + 1)/2,...,n−1, and. 立. 政 治 大. j = (3n−1)/2−i,...,n−1}. ‧ 國. 學. ∪. ‧. {(i,j,k; (i + j+k+p) mod n +q) :. Nat. sit. y. k= 0,...,(n−3)/2,. n. al. er. io. i = x, //註: i=x 表示 C 取自 L 各層的第 x 列( 0 ≤ x ≤ n-1) j = 0,...,(n−3)/2−k }. Ch. engchi. i n U. v. ∪ {(i,j,k; (i + j+k+p) mod n +q) : k= (n + 1)/2,...,n−1, i =x,. //註: i=x 表示 C 取自 L 各層的第 x 列( 0 ≤ x ≤ n-1). j = (3n−1)/2−k,...,n−1 }. 36. DOI:10.6814/THE.NCCU.EMCS.005.2018.B02.

(48) 立. 政 治 大. sit. y. 以臨界集反推拉丁立體方陣的之數學表示式. Nat. 3.4.3. ‧. ‧ 國. 學. 圖 3.11 拉丁立體方陣之臨界集示意(n 為奇數,x=0). io. al. er. 設以 3.1 節方法所產生之拉丁立體方陣 L,其臨界集為 L’,我們可以以下. n. 列步驟,由 L’推算出 L(設 C 取自 L 的第 x 列) 數學式 3.4. Ch. engchi. i n U. v. (1)先由拉丁立體方陣 L 之臨界集 L’推算出拉丁方陣 B、C 的臨界集 B’、 C’: 當 n 為偶數時可以以下公式進行推算: B’ (i,j)= {(i,j,k;L’(i,j,k)) : k=0, i = 0,...,n/2−1, j = 0,...,n/2−1−i 37. DOI:10.6814/THE.NCCU.EMCS.005.2018.B02.

(49) } ∪ {(i,j,k; L’(i,j,k)) : k=0, i = n/2 + 1,...,n−1, j = 3n/2−i,...,n−1 }. C’(k,j)= {(i,j,k;L’(i,j,k) ):. 立. k=0,...,n/2−1,. 政 治 大. ‧ 國. 學. i = x, //註: i=x 表示 C 取自 L 各層的第 x 列( 0 ≤ x ≤ n-1). al. n. k= n/2 + 1,...,n−1, i = x,. sit. io. {(i,j,k; L’(i,j,k)) :. er. ∪. y. Nat. }. ‧. j = 0,...,n/2−1−k. Ch. engchi. i n U. v. //註: i=x 表示 C 取自 L 各層的第 x 列( 0 ≤ x ≤ n-1). j = 3n/2−k,...,n−1 }. 38. DOI:10.6814/THE.NCCU.EMCS.005.2018.B02.

(50) 立. 政 治 大. ‧ 國. 學. 圖 3.12 反推拉丁立體方陣示意(n 為偶數,x=2). ‧ sit. y. Nat. n. al. er. io. 當 n 為奇數時可以以下公式進行推算: If n = 2m + 1 for some positive integer m B’(i,j)=. Ch. engchi. i n U. v. {(i,j,k; L’(i,j,k)) : k=0, i = 0,...,(n−3)/2, and j = 0,...,(n−3)/2−i } ∪ {(i,j,k; L’(i,j,k)) : k=0, 39. DOI:10.6814/THE.NCCU.EMCS.005.2018.B02.

(51) i = (n + 1)/2,...,n−1, and j = (3n−1)/2−i,...,n−1 }. C’(k,j)= {(i,j,k; L’(i,j,k)): k= 0,...,(n−3)/2, i = x, //註: i=x 表示 C 取自 L 各層的第 x 列( 0 ≤ x ≤ n-1) j = 0,...,(n−3)/2−k }. 立. ∪. 政 治 大. ‧ 國. 學. {(i,j,k; L’(i,j,k)) :. ‧. k= (n + 1)/2,...,n−1. i =x, //註: i=x 表示 C 取自 L 各層的第 x 列( 0 ≤ x ≤ n-1). y. Nat. n. al. er. io. }. sit. j = (3n−1)/2−k,...,n−1. Ch. engchi. i n U. v. 40. DOI:10.6814/THE.NCCU.EMCS.005.2018.B02.

(52) 政 治 大. 立. ‧ 國. 學. 圖 3.13 反推拉丁立體方陣示意(n 為奇數,x=0). ‧ sit. y. Nat. (2)找出 B’及 C’後即可推算出拉丁方陣 B、C。. io. n. al. er. (3)知道拉丁方陣 B、C 後便可以反推出拉丁立體方陣 L。. Ch. i. i n U. v. engch 3.5 拉丁立體方陣相關方法論之演算法 3.5.1. 建構拉丁立體方陣. 基礎型,L[k][i][j]為拉丁立體方陣 for (k = 0; k < n; k++) for (i = 0; i < n; i++) for (j = 0; j < n; j++) L[k][i][j]= (i+j+k) mod n;. 41. DOI:10.6814/THE.NCCU.EMCS.005.2018.B02.

(53) 變化型(圖 3.3 所述變化型 3 ,偶數元素 2 與 4 對調,拉丁立體方陣的 符號為 1~n)) q=1; for (k = 0; k < n; k++) for (i = 0; i < n; i++) for (j = 0; j < n; j++) { s=(i+j+k) mod n;. 治 政 大 L[k][i][j]= (i+j+k+p)mod n+q; 立 p=2*(1-s mod 2);. }. ‧ 國. 學. 產生拉丁立體方陣臨界集. ‧. 3.5.2. 1. 將拉丁立體方陣 L 對應的拉丁方陣 B 其臨界集 B’放到一個空的拉丁立. y. Nat. er. io. sit. 體方陣 Le1(如圖 3.14). 2. 將拉丁立體方陣 L 對應的拉丁方陣 C 其臨界集 C’放到一個空的拉丁立. n. al. Ch. 體方陣 Le2(如圖 3.15) 3.. engchi. i n U. v. 將 Le1∪Le2 便可產生拉丁立體方陣 L 之臨界集 L’ (如圖 3.16). 4. 可參考下列後循環拉丁方陣最小臨界集的公式算出 B’、C’置於 Le1、 Le2 的位置 圖 3.14 上半部 分 圖 3.14 下半部 分. 42. DOI:10.6814/THE.NCCU.EMCS.005.2018.B02.

(54) 上半部分: k=0; for (i = 0; i <= n/2-1; i++) for (j = 0; j <= n/2-1-i; j++) Le1[0][i][j]=(i+j+k) mod n;. 下半部分: k=0;. 政 治 大. for (i = n/2+1; i <= n-1; i++). 立. for (j = 3*n/2-i; j <= n-1; j++) Le1[0][i][j]=(i+j+k) mod n;. ‧ 國. 學. 圖 3.14 將 B’放到一個空的拉丁立體方陣 Le1 示意圖. ‧ y. Nat. n. al. for (k = 0; k <= n/2-1; k++). er. io. sit. i=0;/*本例 C’取自 L 第 0 列*/. Ch. i n U. v. for (j = 0; j <= n/2-1-k; j++). e n g c h iLe2[k][i][j]= (i+j+k) mod n;. i=0; /*本例 C’取自 L 第 0 列*/ for (k= n/2+1; k <= n-1; k++) for (j = 3*n/2-k; j <= n-1; j++) Le2[k][i][j]= (i+j+k) mod n;. };. 圖 3.15 將 C’放到一個空的拉丁立體方陣 Le2 示意圖 43. DOI:10.6814/THE.NCCU.EMCS.005.2018.B02.

(55) ∪. = for (k = 0; k < n; k++) for (i = 0; i < n; i++) for (j = 0; j < n; j++) L’[k][i][j]= Le1[k][i][j] | Le2[k][i][j];. 立. ‧ 國. sit. y. ‧. 以拉丁立體方陣臨界集反推拉丁立體方陣. Nat. 3.5.3. 以 Le1 及 Le2 產生 L’示意. 學. 圖 3.16. 政 治 大/*用位元運算子|(or)來做聯集*/. io. 出,即可產生 B’ (如圖 3.17). al. er. 1. 於拉丁立體方陣臨界集 L’對應的位置將的臨界集 B’各元素取. n. v i n C h L’對應的位置將的臨界集C’各元素取 2. 於拉丁立體方陣臨界集 engchi U 出,即可產生C’ (如圖 3.18). 註:之前若是參照後循環拉丁方陣最小臨界集的公式算出 B’、C’ 置於 L’之位置,則重組 B’、C’時便參考該公式到相對位置 取出 B’、C’各元素 3. 重組 B’、C’後可以 B’、C’反推 B、C,由有了 B、C,就可完整 導回 L (如圖 3.19). 44. DOI:10.6814/THE.NCCU.EMCS.005.2018.B02.

(56) k=0; for (i = 0; i <= n/2-1; i++) for (j = 0; j <= n/2-1-i; j++) B'[i][j]= L'[k][i][j];. k=0; for (i = n/2+1; i <= n-1; i++) for (j = 3*n/2-i; j <= n-1; j++) B'[i][j]= L'[k][i][j];. 立. 政 治 大. ‧ 國. 學 ‧. 圖 3.17 以拉丁立體方陣臨界集 L’重組臨界集 B’示意. y. Nat. i=0; /*本例 C’取自 L 第 0 列*/. for (j = 0; j <= n/2-1-k; j++). n. al. er. io. sit. for (k = 0; k <= n/2-1; k++). Ch. i n U. v. C'[k][j]=L'[k][i][j];. engchi. i=0; /*本例 C’取自 L 第 0 列*/ for (k= n/2+1; k <= n-1; k++) for (j = 3*n/2-k; j <= n-1; j++) C'[k][j]=L’[k][i][j];. 圖 3.18 以拉丁立體方陣臨界集 L’重組臨界集 C’示意 45. DOI:10.6814/THE.NCCU.EMCS.005.2018.B02.

(57) 政 治 大. for(k=0;k<n;k++) for(i=0;i<n;i++) for(j=0;j<n;j++). 立. ‧ 國. 學. {y=B[i][j];. Lk[k][i][j]= C[k][y];. ‧ sit. y. Nat. 圖 3.19 以 B,C 重組臨界集 L 示意. io. n. al. er. }. Ch. engchi. i n U. v. 46. DOI:10.6814/THE.NCCU.EMCS.005.2018.B02.

(58) 第四章. 多維度拉丁方陣相關方法論. 本章節將就多維度拉丁方陣相關方法論,分成以下三大部分進行說明: 1.如何建構多維度拉丁方陣 2.多維度拉丁方陣臨界集的樣態 3.如何產生多維度拉丁方陣臨界集及運用多維度拉丁方陣臨界集還原多維 度拉丁方陣 其中將於第 2 及第 3 部分,提出一個通用性方法論,並以第 1 部分所建構 出之多維度拉丁方陣為例,發展出其對應之數學表示式,及進行程式實作,. 政 治 大 方法論與拉丁立體方陣相關方法論,其核心原理是一樣的。 立. 以驗證本論文提出之方法論是可行的。經研究發現多維度拉丁方陣其相關. ‧ 國. 學 ‧. 4.1 如何建構多維度拉丁方陣. sit. y. Nat. 4.1.1 建構方式概述. io. er. 本章節為了表示多維度拉丁方陣,我們改以 d1 表示多維度拉丁方陣 Lk 的. al. 第 1 個維度(即列),d2 表示 Lk 第 2 個維度(即行),d3 表示 Lk 第 3 個維度(即. n. v i n Ch 層), d 表示 Lk 第 4 個維度(稱為柱) Lk 第 5 個維度(稱為片)……d e n g,dc表示 hi U 4. k. 5. 表示 Lk 第 k 個維度. 第 1 個維度,即列. 第 4 個維度,即柱. 第 2 個維 度,即行 第 5 個維度,即. 第 3 個維. 片. 度,即層. 圖 4.1 4 階 4 維拉丁方陣各維度示意 47. DOI:10.6814/THE.NCCU.EMCS.005.2018.B02.

(59) 經研究發現,正如我們第三章所提到的拉丁立體方陣建構方式一 樣,我們可利用後循環拉丁方陣及同型拉丁方陣建構出多維度拉丁方陣, 方法如下:以 n 階 4 維度拉丁方陣 L4 為例(如圖 4.2),我們可將 n 階 4 維 度拉丁方陣視為 n 個不同的拉丁立體方陣組合在一起,首先,以第 3 章的 方法先產生 1 個拉丁立體方陣做為第 0 柱(即先產生 1 個後循環拉丁方陣當 作 L4 的第 0 柱的第 0 層,再利用 L4 的第 0 柱的第 0 層各元素+1 Mod n 產 生第 0 柱第 1 層,+2 Mod n 產生第 0 柱第 2 層,……+(n-1) Mod n 產生第 0 柱第 n-1 層,最後疊合各層構成第 0 柱),有了第 0 柱後,再以第 0 柱為 基底,陸續產生第 1 柱到第n-1 柱,方法如下:以第 0 柱各元素+1 Mod n 產生第 1 柱,+2 Mod n 產生第 2 柱,……+(n-1) Mod n 產生第 n-1 柱…, 最後再將第 0~n-1 柱的 3 維拉丁立體方陣組合在一起,便可建構出一個完. 政 治 大 第1柱 第2柱. 整的 4 維度拉丁方陣,示意圖如下。. 立. 第0柱. ‧. ‧ 國 io. sit. y. Nat. n. al. er. 第0層. 學. 第0柱. 第3柱. Ch. engchi. i n U. v. 圖 4.2 如何產置 4 階 4 維拉丁方陣示意(n=4) 48. DOI:10.6814/THE.NCCU.EMCS.005.2018.B02.

(60) 上述步驟簡化說明如下: 1.先產生 1 個後循環拉丁方陣當作 L4 的第 0 柱的第 0 層 2.再以第 0 柱第 0 層為基底產生完整的第 0 柱 3.最後以完整第 0 柱為基底產生完整的 4 維拉丁方陣 即先產生 1 個 2 維度拉丁方陣,再由 1 個 2 維度拉丁方陣產生出 1 個 3 維 度拉丁立體方陣,有了 1 個 3 維度拉丁立體方陣又可建構出 1 個 4 維度拉 丁方陣,由此可推論,後續我們可用相同的方法繼續以 1 個 4 維度拉丁方 陣產生1個 5 維度拉丁方陣,有了1個 5 維度方陣又可繼建構出 1 個 6 維. 政 治 大. 度拉丁方陣…..以此類推,最後可產生 k 維度拉丁方陣。. 立. 4.1.2 建構 n 階多維度拉丁方陣數學表示式. ‧ 國. 學. 以 n 階 4 維拉丁方陣為例,我們可以下數學式來表示:. ‧. n 階 4 維拉丁立體方陣 L4 是 1 個 n×n×n×n 的 4 維陣列,L4 內存的值 皆來自集合 N, N = {0,...,n-1}。. y. Nat. er. io. sit. 假設位於(d1,d2,d3,d4)座標上的值為 v, v=( d1 +d2+d3+d4) mod n,我 們可以下面的數學式表示:. n. al. n 階 4 維拉丁方陣 L4 =. Ch. engchi. i n U. v. {( d1, d2, d3, d4;( d1+ d2+ d3+ d4) mod n) : d1 = 0,...,n−1 d2 = 0,...,n−1 d3 = 0,...,n−1 d4 = 0,...,n−1}. 同理,n 階 k 維拉丁方陣 ,我們可以下數學公式來表示: n 階 k 維拉丁立體方陣 Lk 是 1 個 n×n×n×n…×n(k 個 n 相乘) 的 k 維陣列, Lk 內存的值皆來自集合 N, N = {0,...,n-1},n ≥ 1。 49. DOI:10.6814/THE.NCCU.EMCS.005.2018.B02.

參考文獻

相關文件

Use the design in part (a) to cover the floor board completely, how many trapezium tiles are needed at least.

Reading Task 6: Genre Structure and Language Features. • Now let’s look at how language features (e.g. sentence patterns) are connected to the structure

Understanding and inferring information, ideas, feelings and opinions in a range of texts with some degree of complexity, using and integrating a small range of reading

 Promote project learning, mathematical modeling, and problem-based learning to strengthen the ability to integrate and apply knowledge and skills, and make. calculated

Robinson Crusoe is an Englishman from the 1) t_______ of York in the seventeenth century, the youngest son of a merchant of German origin. This trip is financially successful,

fostering independent application of reading strategies Strategy 7: Provide opportunities for students to track, reflect on, and share their learning progress (destination). •

Making use of the Learning Progression Framework (LPF) for Reading in the design of post- reading activities to help students develop reading skills and strategies that support their

Now, nearly all of the current flows through wire S since it has a much lower resistance than the light bulb. The light bulb does not glow because the current flowing through it