Perpustakaan Unika
Project Report Implementing Knowledge Based System On Crosswords Using Merge Elimination Algorithms YM Albert KS 04.02.0029 2008
COMPUTER SCIENCE FACULTY SOEGIJAPRANATA CATHOLIC UNIVERSITY Jl. Pawiyatan Luhur IV / 1, Bendan Duwur, Semarang 50234
Telp (024)-8441555 (Hunting) Web : http://www.unika.ac.id
Perpustakaan Unika
Approval and Ratification Page PROJECT REPORT IMPLEMENTING KNOWLEDGE BASED SYSTEM ON CROSSWORDS USING MERGE ELIMINATION ALGORITHMS
This Project Report has been approved and ratified by Dean of Faculty of Computer Science on ………………..
With the approval, Examiner,
Examiner,
Ridwan Sanjaya, SE, S.Kom, MS. IEC
Hironimus Leong, S.Kom, M.Kom
NIP : 058.1.2002.252
NIP : 058.1.2007.273
Supervisor,
Dean of Faculty of Computer Science,
Daniel Adinugroho, ST, MIT
Ridwan Sanjaya, SE, S.Kom, MS. IEC
NIP : 058.1.2005.265
NIP : 058.1.2002.252
ii
Perpustakaan Unika
Statement Of Originality
I, the undersigned Name
:
YM Albert Kurniawan S
Nim
:
04.02.0029
Hereby certify that the project I made was the result of masterpiece alone and it is not a plagiarism, except those started in print that it taken from other writing. If it is proved in later days that the project is the result of rubbing, hence I settle for sanction.
Semarang, 24 January 2008
YM Albert Ks NIM. 04.02.0029
iii
Perpustakaan Unika
Abstract Crossword is familiar game, that people usually do it in spare time. Some people say these games are easy and the other says that this is a difficult game. The crossword will be very difficult if the player only knows a few vocabularies and not mastering it, so the key to solve this game is just a knowledge of the vocabulary. Knowledge Based System learns some information and require intelligence. Troughs that Knowledge Based System intelligence, the crossword game can be solve. For this research the Knowledge Based System approach using word length and mapping. This system isn’t created to answer the question, because it is a Knowledge Based System so all data are close word assumption. Through these step the data that we know will be eliminated. The answer from these Knowledge Based System are in a close word assumption so it can generate one, more than one or none, however close word assumption can be strengthen by giving a new knowledge. This Crossword will be solved use hash map data structure and Merge Elimination Algorithms. The Knowledge Based System will be made using fact information. The fact information consists of the answer from the horizontal and the vertical question that arranged into hash map and the hash function is a word length. Information rule in horizontal and vertical will be made. This information rule consists horizontal and vertical have cross. That will helps the program to eliminate. After the information (knowledge of vocabulary) has been made by Knowledge Based System, that two information (fact information and rule information) will implanted a strong intelligence into this program. So the Knowledge Based System can be eliminate and filtering each possible answer then generate an answer using elimination algorithms. In conclusion, knowledge Based system can be used to solve the crosswords game by provides a lot of information.
Keywords: Crosswords, Hash Map Algorithms, Merge Elimination Algorithms, Hash Map Data Structure. iv
Perpustakaan Unika
Foreword The project of Implementing Knowledge Based System on Crosswords Using Merge Elimination Algorithms. This project made Me realize and know more deep about java language. There are much experience that I got when learn this project, when I developed , analyze, testing it. In these project I, implemented all my knowledge that I have got from past tree and half year. But I can not success, I there are no one support and help me past through this project. So in this opportunity, I would thanks to: 1. Jesus Christ That always bless me. 2. My Parents That always supporting me and take care of me when I was sick. 3. Mr Daniel Adinugroho, ST, MIT, as my counselor for helping me, support me and give me more idea in my project. 4. Mr Ridwan Sanjaya, SE, S.Kom, that give me more confident about mind switch. 5. Ir. Suyanto EA, M.Sc, that teach me how to became programmer. 6. All My friend that always supporting me, help me past through this project. 7. And also other people that can not be mentioned one by one. Last but not least, I would like to apologize if I made mistakes in finishing the project and writing this report. Therefore, critics and suggestions are expected.
Semarang, January 2008
YM Albert KS
v
Perpustakaan Unika
Table Of Contents Approval and Ratification Page...............................................................................ii Statement Of Statement..........................................................................................iii Abstract...................................................................................................................iv Foreword..................................................................................................................v Table Of Contents....................................................................................................vi Table of Figure......................................................................................................viii Table of Table..........................................................................................................ix Chapter I ..................................................................................................................1 Introduction..............................................................................................................1 1.1.Background...................................................................................................1 1.2.Scope............................................................................................................1 1.3.Objectives.....................................................................................................2 Chapter II..................................................................................................................3 Literature Study........................................................................................................3 2.1 Data Structure................................................................................................3 2.1.1 Array Two Dimensional Of Object........................................................3 2.1.2 Hash Map Information Fact...................................................................4 2.1.3 Hash Map Information Rule..................................................................5 2.1.4 Hash Map Possible Answer...................................................................5 2.2 Algorithms.....................................................................................................6 2.2.1 Algorithms In Access Information Fact's Hash Map.............................6 2.2.2 Algorithms In Access Information Rule's Hash Map.............................7 2.2.3 Algorithms In Access Possible Answer's Hash Map..............................8 2.2.4 Merge Elimination Algorithms..............................................................9 2.3 Each step that implemented in Crosswords System....................................10 2.3.1 Mapping Into Two Dimensional Array Of Object ..............................10 2.3.2 Creating Information Rule...................................................................10 2.3.3 Creating Information Fact....................................................................11 2.3.4 Possible Answer...................................................................................11 2.3.5 Elimination...........................................................................................12 2.3.6 Close Words Assumption.....................................................................12 Chapter III..............................................................................................................13 Planning..................................................................................................................13 3.1 Research Methodology...............................................................................13 3.2 Project Management...................................................................................15 Chapter IV..............................................................................................................17 Analysis and Design...............................................................................................17 4.1 Data Flow Diagram (DFD)..........................................................................17 4.1.1 DFD Level 0........................................................................................17 4.1.2 DFD Level 1........................................................................................17 4.1.3 DFD Level 2........................................................................................18 4.2 Use Case.....................................................................................................19 4.3 Crosswords Decomposition Module...........................................................20 vi
Perpustakaan Unika
4.4 Class Diagram.............................................................................................21 4.4.1 All Class Diagram Relation.................................................................21 4.4.2 Package infact......................................................................................22 4.4.3 Package inrule......................................................................................24 4.4.4 inrule Package possible........................................................................28 4.4.5 GUI MVC............................................................................................31 Chapter V................................................................................................................34 Implementation and Testing...................................................................................34 5.1 Implementation............................................................................................34 5.1.1 The tree packages:................................................................................34 1.Infact......................................................................................................34 2.Inrule.....................................................................................................34 3.Possible..................................................................................................34 5.1.2 Problems when the system was developing.........................................35 5.1.3 Implementation Of MVC (Model View Controller)............................35 5.2 Testing.........................................................................................................36 5.2.1 Crosswords GUI Program :..................................................................36 5.2.1 Board Creator GUI Program :..............................................................38 Chapter VI..............................................................................................................40 Conclusion..............................................................................................................40 6.1 Conclusion..................................................................................................40 6.2 Further Research.........................................................................................40 REFERENCES.......................................................................................................41 Appendix................................................................................................................42
vii
Perpustakaan Unika
Table of Figure Figure 2.1 Data Structure Array2D of object........................................................4 Figure 2.2 Data Structure Information Fact..........................................................4 Figure 2.3 Data Structure Information Rule.........................................................5 Figure 2.4 Data Structure Possible Answer..........................................................5 Figure 2.5 Information Rule Horizontal.............................................................10 Figure 2.6 Information Rule Vertical..................................................................10 Figure 2.7 Information Fact................................................................................11 Figure 2.8 Possible Word Horizontal..................................................................11 Figure 2.9 Possible Word Vertical......................................................................12 Figure 2.10 Close Words....................................................................................12 Figure 3.1 Incremental Methodology.................................................................14 Figure 4.1 DFD Level 0......................................................................................17 Figure 4.2 DFD Level 1......................................................................................17 Figure 4.3 DFD Level 2......................................................................................18 Figure 4.4 Use Case............................................................................................19 Figure 4.5 Crosswords Decomposition Module.................................................20 Figure 4.6 All Diagram Relation........................................................................21 Figure 4.7 Class Diagram Infact.........................................................................22 Figure 4.8 Class Diagram infact Relation...........................................................23 Figure 4.9 Class Diagram Inrule I......................................................................24 Figure 4.10 Class Diagram Inrule II...................................................................25 Figure 4.11 Class Diagram Inrule III..................................................................26 Figure 4.12 Class Diagram inrule Relation........................................................27 Figure 4.13 Class Diagram Possible I.................................................................28 Figure 4.14 Class Diagram Possible II...............................................................29 Figure 4.15 Class Diagram Possible Relation....................................................30 Figure 4.16 Class Diagram GUI MVC I.............................................................31 Figure 4.17 Class Diagram GUI MVC II...........................................................32 Figure 4.18 Class Diagram GUI MVC Relation................................................33 Figure 5.1 Crosswords Program.........................................................................36 Figure 5.2 Crosswords Open File.......................................................................36 Figure 5.3 Crosswords Question.........................................................................37 Figure 5.4 Crosswords Question.........................................................................37 Figure 5.5 Board Creator Main Frame...............................................................38 Figure 5.6 Board Creator Menu..........................................................................38 Figure 5.7 Board Creator Question.....................................................................39 Figure 5.8 Solve..................................................................................................39
viii
Perpustakaan Unika
Table of Table Table Gantt Chart Progress.................................................................................15
ix