1. Trang chủ
  2. » Luận Văn - Báo Cáo

chương trình trợ giúp học một số

533 694 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 533
Dung lượng 4,98 MB

Nội dung

Luận văn tốt nghiệp KS2 – K6 : Chương trình trợ giúp học một số giải thuật trong môn học Lý thuyết ngôn ngữ hình thức & Ôtômát TRƯỜNG ĐẠI HỌC KỸ THUẬT TP.HỒ CHÍ MINH KHOA CÔNG NGHỆ THÔNG TIN LUẬN VĂN TỐT NGHIỆP Đề tài Chương trình trợ giúp học một số giải thuật trong môn học Thầy hướng dẫn : HỒ VĂN QUÂN QUẢN THÀNH THƠ Sinh viên thực hiện : NGUYỄN CÔNG MINH LƯU THỊ TỐT Lớp KS2 – K6 7/99 SVTH : Nguyễn Công Minh -– Lưu Thò Tốt GVHD : Quản Thành Thơ - Hồ Văn Quân Trang 89 Luận văn tốt nghiệp KS2 – K6 : Chương trình trợ giúp học một số giải thuật trong môn học Lý thuyết ngôn ngữ hình thức & Ôtômát MỤC LỤC 1 .Phần một Lý thuyết ngôn ngữ hình thức và Ôtômát phần ngôn ngữ chính qui 1.1 Chương 1: Một số kiến thức lý thuyết cơ bản của môn học 2 1.1.1 Từ (word) 2 1.1.2 Ngôn ngữ 3 1.1.3 Automata (máy tự động ) 3 1.1.4 Biểu thức chính qui và ngôn ngữ chính qui 4 1.1.5 Văn phạm chính qui 5 1.2 Chương 2 : Một số giải thuật liên quan 7 1.2.1 Chuyển Nfa sang DFA 7 1.2.2 Xây dựng NFA từ Biểu thức chính qui 12 1.2.3 Xây dựng NFA từ Văn phạm chính qui 18 1.2.4 Giải thuật rút gọn số trạng thái của DFA 19 1.3 Chương 3 :Borland Delphi 3.0 21 1.3.1 Giới thiệu 21 1.3.2 Phần chủ yếu sử dụng trong chương trình 22 2. Phần hai Phân tích và thiết kế tổng quát 2.1 Chương 1: Lý thuyết về phần mềm giảng dạy 26 SVTH : Nguyễn Công Minh -– Lưu Thò Tốt GVHD : Quản Thành Thơ - Hồ Văn Quân Trang 90 Luận văn tốt nghiệp KS2 – K6 : Chương trình trợ giúp học một số giải thuật trong môn học Lý thuyết ngôn ngữ hình thức & Ôtômát 2.1.1 Phần mềm giảng dạy 26 2.1.1.1 Phần mềm dạy học 26 2.1.1.2 Các loại phần mềm giảng dạy hiện tại 27 2.1.1.3 Ứng dụng lý thuyết CDT trong thiết kế phần mềm giảng dạy 28 2.1.2 Chương trình trợ giúp giảng dạy môn ngôn ngữ lý thuyết và Automat hình thức 28 2.1.2.1 Phân tích các điều kiện giảng dạy 28 2.1.2.2 Phương pháp giảng dạy. Chiến lược phát triển các mô hình cho môn học 29 2.2 Chương 2 : Chương trình trợ giúp giảng dạy Lý thuyết ngôn ngữ hình thức và Automat. Phân tích và thiết kế tổng quát 35 2.2.1 Chương trình này làm gì 35 2.2.2 Nhận dạng và xây dựng các đối tượng của phần mềm 36 3.Phần ba Lập trình cụ thể xây dựng các đối tượng 3.1 Chương 1: Phân tích và thiết kế xây dựng các đối tượng 43 3.1.1Các đối tượng cần xây dựng 44 3.1.1.1 Các đối tượng đồ họa 44 3.1.1.2 Các đối tượng lý thuyết 44 3.1.1.3 Các đối tượng liên kết 44 3.1.2 đồ tổng quát_ Hướng đi của chương trình 47 3.1.3 Chiến lược xây dựng các Module độc lập 48 3.1.4 Chỉ dẫn bảng thiết kế 49 SVTH : Nguyễn Công Minh -– Lưu Thò Tốt GVHD : Quản Thành Thơ - Hồ Văn Quân Trang 91 Luận văn tốt nghiệp KS2 – K6 : Chương trình trợ giúp học một số giải thuật trong môn học Lý thuyết ngôn ngữ hình thức & Ôtômát 3.2 Chương 2 : Cấu trúc dữ liệu của các dối tượng 50 3.2.1.Đối tựợng Nfa Bằng hình vẽ 50 3.2.1.1Tổ chức dữ liệu và cây phân cấp các đối tượng hình 51 3.2.2.2 Dữ liệu và thuật giải 58 3.2.2 Đối tượng DFA bằng hình vẽ 63 3.2.3 Đối tượng NFA lý thuyết bộ 5 63 3.2.4 Đối tượng DFA lý thuyết bộ 5 66 3.2.5 Đối tượng Biểu thức chính qui 67 3.2.6 Đối tượng Văn phạm chính qui 68 3.3 Chương 3 : Các giải thuật 70 3.3.1 Trình biên dòch cho biểu thức chính qui 71 3.3.2 Kiểm tra lỗi cho Văn phạm chính qui 74 3.3.3 Giải thuật xây dựng DFA từ NFA 75 3.3.4 Giải thuật rút gọn số trạng thái của DFA 76 3.3.4 Giải thuật sinh ra NFA từ Biểu thức chính qui 77 3.3.5 Giải thuật sinh ra NFA từ Văn phạm chính qui 78 3.4 Chương 4 :Giao diện chương trình 84 3.4 Chương 5 :Tìm hiểu Winhelp .Xây dựng Help- cho ứng dụng 84 3.5.1 Tìm hiểu Winhelp 84 3.5.2 Xây dựng Help cho ứng dụng 85 4 Phần bốn SVTH : Nguyễn Công Minh -– Lưu Thò Tốt GVHD : Quản Thành Thơ - Hồ Văn Quân Trang 92 Luận văn tốt nghiệp KS2 – K6 : Chương trình trợ giúp học một số giải thuật trong môn học Lý thuyết ngôn ngữ hình thức & Ôtômát Chương trình nguồn 89 Hết 198 SVTH : Nguyễn Công Minh -– Lưu Thò Tốt GVHD : Quản Thành Thơ - Hồ Văn Quân Trang 93 Luận văn tốt nghiệp KS2 – K6 : Chương trình trợ giúp học một số giải thuật trong môn học Lý thuyết ngôn ngữ hình thức & Ôtômát Lời nói đầu Lý thuyết ngôn ngữ hình thức và automat là môn lý thuyết bắt nguồn từ những nhu cầu mô phỏng ngôn ngữ tự nhiên sử dụng trong máy tính. Ta khó có thể nói hết những ứng dụng của môn học lý thuyết ngôn ngữ hình thức và automata trên các lónh vực khác nhau của khoa học máy tính như trình biên dòch, trong kỹ thuật nhận dạng và chuyển đổi giữa các ngôn ngữ khác nhau. Chính vì việc nghiên cứu và ứng dụng Lý thuyết ngôn ngữ hình thức và automata có một vai trò quan trọng như thế, nên việc xây dựng một chương trình trợ giúp học cho môn học này sẽ có một vai trò tích cực nhất đònh, nhất là đối với các sinh viên thuộc khoa Công nghệ thông tin. Ngay cả khi chương trình được xây dựng với nhiều hạn chế, thì nó cũng sẽ để lại những kinh nghiệm để có thể cải thiện và xây dựng lại một chương trình tốt hơn. Vì như đã nói, với tầm quan trọng của Lý thuyết ngôn ngữ hình thức và automata, với sự phát triển như vũ bão của lónh vực công nghệ thông tin ngày nay, một chương trình hướng dẫn trợ giúp học môn Lý thuyết ngôn ngữ hình thức và automata nhất đònh phải được ra đời và sẽ liên tục được phát triển, nâng cấp cũng như được sử dụng rộng rãi. Đấy cũng là mục đích của luận văn này. Có thể chương trình được xây dựng trong luận văn chưa phải là một mô hình trợ giúp cho việc học tối ưu nhất. Nhưng với nó chúng tôi hy vọng rằng các bạn sẽ đỡ vất vã nhiều trong quá trình tìm hiểu và học hỏi một số giải thuật cơ bản của môn Lý thuyết ngôn ngữ hình thức và automata. Chương trình được hình thành từ những ý tưởng hỗ trợ SVTH : Nguyễn Công Minh -– Lưu Thò Tốt GVHD : Quản Thành Thơ - Hồ Văn Quân Trang 94 Luận văn tốt nghiệp KS2 – K6 : Chương trình trợ giúp học một số giải thuật trong môn học Lý thuyết ngôn ngữ hình thức & Ôtômát việc học giúp các bạn học viên thông qua nó để tìm hiểu những vấn đề về lý thuyết (cụ thể là sử dụng Help của chương trình) ; cũng như tham khảo quá trình chạy giải thuật của máy tính theo kiểu từng bước để nhằm nắm được sâu hơn nội dung mà sách hay giáo trình của môn học đưa ra. Chúng tôi hy vọng chương trình trở thành một công cụ kiểm tra bài tập và tự học các giải thuật trong môn học này một cách sinh động nhầm nâng cao hiệu quả tiếp thu kiến thức. Ngõ hầu đạt được kết quả mong muốn chúng tôi đã cố gắng phân tích và đề ra các phương pháp thực hiện phần mềm sử dụng sao cho gần gũi và thân thiện với người học. Với sự cố vấn tận tình của Thầy Hồ Văn Quân và Thầy Quản Thành Thơ, chúng tôi cố gắng tạïo đầy đủ các công cụ hổ trợ cho người sử dụng trong khả năng cho phép của mình. Tuy vậy, chắc chắn chương trình sẽ có phần hạn chế do những yếu tố chủ quan của các tác giả, nhưng chương trình có thể phát triển thành một chương trình giảng dạy hoàn chỉnh cũng như có thể được nghiên cứu để phát triển việc xây dựng các chương trình trợ giúp giảng dạy cho các môn học khác. Thành phố Hồ Chí Minh, 7/99. Học viên KS2-K6 Nguyễn Công Minh Lưu Thò Tốt SVTH : Nguyễn Công Minh -– Lưu Thò Tốt GVHD : Quản Thành Thơ - Hồ Văn Quân Trang 95 Luận văn tốt nghiệp KS2 – K6 : Chương trình trợ giúp học một số giải thuật trong môn học Lý thuyết ngôn ngữ hình thức & Ôtômát Chương 1 Một số kiến thức lý thuyết cơ bản của môn học. 1.1.1.Từ ø(word): ♦ Cho ∑ là bảng chữ cái (alphabet) , một từ w trên ∑ là 1 chuỗi hữu hạn các chữ cái. Ví dụ u = aabba , v = ababaa là các từ trên bảng chữ cái ∑ = {a,b}. ♦ Chuỗi rỗng cũng là 1 từ trên bảng chữ cái ∑ , ký hiệu λ ♦ Toán tử kết nối (concatenation) : cho 2 từ u ,v trên bảng chữ cái ∑ , kết nối của u và v , ký hiệu uv là 1 từ trên bảng chữ cái ∑ bao gồm các ký tự thuộc u theo sau là các ký tự thuộc v . ♦ Một từ u được gọi là từ con (subword) của từ w nếu w = v 1 uv 2 .Nếu v 1 = λ thì u được gọi là đoạn bắt đầu (initial segment) hay tiền tố (prefix) của w. ♦ λ là từ con của w và w là từ con của chính nó. ♦ Chiều dài của 1 từ u ký hiệu u hay l(u) : là số phần tử trong chuỗi các ký tự của nó. ♦ Với mọi từ u,v trên ∑ :  uv u v= + SVTH : Nguyễn Công Minh -– Lưu Thò Tốt GVHD : Quản Thành Thơ - Hồ Văn Quân Trang 96 Luận văn tốt nghiệp KS2 – K6 : Chương trình trợ giúp học một số giải thuật trong môn học Lý thuyết ngôn ngữ hình thức & Ôtômát  uv vu= ♦ Cho F là tập các từ trên bảng chữ cái ∑ , thì F là semigroup với toán tử kết nối và identity element là λ. F còn được gọi là free semigroup trên ∑. 1.1.2. Ngôn ngữ (language) : ♦ Bất kỳ 1 tập L các từ trên bảng chữ cái ∑ , hay tập con L của ∑ * được gọi là 1 ngôn ngữ. ♦ Cho K và L là 2 ngôn ngữ trên bảng chữ cái ∑ :  KL là 1 ngôn ngữ trên ∑ chứa các từ có được bằng cách nối các từ trong K với các từ trong L. KL = {w : w = uv , u∈ K và v∈L}  L 0 ={λ} , L 1 = L và L n = L n-1 L với n>0  L * chứa tất cả các từ mà các ký tự là thuộc các từ trong L : L * L k k 0 = = ∞  1.1.3.Automata (máy tự động) Một Automata là một mô hình trừu tượng của một máy tính số.Automata có một đơn vò điều khiển (control unit) dò tìm kiểm tra chuỗi nhập . 1.1.3.1. Automata hữu hạn đơn đònh (dfa or deterministic finite accepter) 1.1.3.1.1. Đònh nghóa 1: Một dfa được đònh nghóa bởi bộ năm: M= (Q, ∑ ,δ, q 0 ,F) SVTH : Nguyễn Công Minh -– Lưu Thò Tốt GVHD : Quản Thành Thơ - Hồ Văn Quân Trang 97 Luận văn tốt nghiệp KS2 – K6 : Chương trình trợ giúp học một số giải thuật trong môn học Lý thuyết ngôn ngữ hình thức & Ôtômát trong đó:  Q: Tập hữu hạn các trạng thái trong.  ∑: Tập hữu hạn các ký hiệu nhập.  δ: Q×∑ > Q là hàm chuyển trạng thái.  q 0 ∈ Q: Trạng thái khởi đầu.  F ⊆ Q: Tập các trạng thái kết thúc. 1.1.3.1.2. Hoạt động của dfa: Đọc các ký tự của chuỗi từ trái sang phải đồng thời thay đổi trạng thái ở ký tự cuối, nếu trạng thái trong ∈ F thì chấp nhận chuỗi, ngược lại thì không. 1.1.3.1.3. Đònh nghóa 2: Ngôn ngữ chấp nhận bởi dfa M= (Q, ∑ ,δ, q 0 ,F) là tập tất cả các chuỗi trên ∑ được chấp nhận bởi M. Biểu diễn chính thức bằng kí hiệu: L(M) = {w ∈ ∑ * : δ * (q 0 ,w) ∈ F } 1.1.3.1.4. Đònh nghóa 3: Một ngôn ngữ L được gọi là chính qui nếu và chỉ nếu tồn tại một dfa M nào đó sau cho L = L(M). 1.1.3.2. Automata hữu hạn không đơn đònh (nfa or nondeterministic finite accepter) 1.1.3.2.1.Đònh nghóa: SVTH : Nguyễn Công Minh -– Lưu Thò Tốt GVHD : Quản Thành Thơ - Hồ Văn Quân Trang 98 [...]... nghiệp KS2 – K6 : Chương trình trợ giúp học một số giải thuật trong môn học Lý thuyết ngôn ngữ hình thức & Ôtômát Từ bảng truyền trên ta xây dựng mộât dfa ,nhận dạng ngôn ngữ (a|b)*abb: DFA nhận dạng ngôn ngữ (a|b)*abb SVTH : Nguyễn Công Minh -– Lưu Thò Tốt GVHD : Quản Thành Thơ - Hồ Văn Quân Trang 108 Luận văn tốt nghiệp KS2 – K6 : Chương trình trợ giúp học một số giải thuật trong môn học Lý thuyết ngôn... văn tốt nghiệp KS2 – K6 : Chương trình trợ giúp học một số giải thuật trong môn học Lý thuyết ngôn ngữ hình thức & Ôtômát 5 NFA cho r6 = a 6 NFA cho r7 = r5r6 7 NFA cho r11 như sau với r9 = r7r8 , r11 = r9r10 SVTH : Nguyễn Công Minh -– Lưu Thò Tốt GVHD : Quản Thành Thơ - Hồ Văn Quân Trang 116 Luận văn tốt nghiệp KS2 – K6 : Chương trình trợ giúp học một số giải thuật trong môn học Lý thuyết ngôn ngữ hình... Chương trình trợ giúp học một số giải thuật trong môn học Lý thuyết ngôn ngữ hình thức & Ôtômát Dùng giải thuật Thompson để xây dựng nfa, N(r) cho biểu thức chính qui: r = (a|b)*abb sẽ được phân rã như hình cây phân rã sau: Cây phân rã biểu thức chính qui r SVTH : Nguyễn Công Minh -– Lưu Thò Tốt GVHD : Quản Thành Thơ - Hồ Văn Quân Trang 114 Luận văn tốt nghiệp KS2 – K6 : Chương trình trợ giúp học một. .. văn tốt nghiệp KS2 – K6 : Chương trình trợ giúp học một số giải thuật trong môn học Lý thuyết ngôn ngữ hình thức & Ôtômát Chương 2 Một số giải thuật liên quan 1.2.1.Chuyển NFA sang DFA tương đương: 1.2.1.1.Giải thuật tập con (tạo DFA và NFA)  Nhập: Một automaton hữu hạn không đơn đònh nfa gọi tắt là N  Xuất: Một automaton hữu hạn đơn đònh dfa gọi tắt là D nhận dạng cùng một ngôn ngữ như nfa  Phương... Đây là ngôn ngữ cho phép phát triển lập trình hướng đối tượng ♦ Thành phần: SVTH : Nguyễn Công Minh -– Lưu Thò Tốt GVHD : Quản Thành Thơ - Hồ Văn Quân Trang 121 Luận văn tốt nghiệp KS2 – K6 : Chương trình trợ giúp học một số giải thuật trong môn học Lý thuyết ngôn ngữ hình thức & Ôtômát Thành phần cơ bản của một ứng dụng Delphi là một form Có thể xem form như là một cửa sổ: kiểu cửa sổ như ta thấy trong... một cách qui nạp bằng qui tắc 3 dưới đây cho tới khi ta có nfa của biểu thức chính qui r Mỗi nfa SVTH : Nguyễn Công Minh -– Lưu Thò Tốt GVHD : Quản Thành Thơ - Hồ Văn Quân Trang 109 Luận văn tốt nghiệp KS2 – K6 : Chương trình trợ giúp học một số giải thuật trong môn học Lý thuyết ngôn ngữ hình thức & Ôtômát trung gian được sinh ra trong quá trình xây dựng sẽ đại diện cho biểu thức con của r và có một. .. : Chương trình trợ giúp học một số giải thuật trong môn học Lý thuyết ngôn ngữ hình thức & Ôtômát trạng thái qo trên sự truyền rỗng -closure(T) Là tập trạng thái của nfa , nfa đạt tới chúng từ một trạng thái q nào đó của nfa thuộc T trên sự truyền rỗng Move(T,a) Tập các trạng thái nfa, nfa đạt được chúng khi có sự truyền trên kí hiệu nhập  Phân tích: Trước khi đọc một kí tự nhập, nfa có thể ở một. .. học một số giải thuật trong môn học Lý thuyết ngôn ngữ hình thức & Ôtômát Button, CheckBox, ListBox, ScrollBar, được tạo sẵn Người sử dụng chỉ cần Clicked vào một trong số các công cụ là đã có thể tạo được một chức năng mong muốn 1.3.2 Phần chủ yếu sử dụng trong chương trình Trong đối tượng TCANVAS đã cung cấp cho ngưới sửû dụng một số phương thức để xây dựng các đối tượng đồ hoạ Sau đây là một số phương... Trường hợp G là một văn phạm tuyến tính trái thì chúng ta chỉ cần dựa vào ý tưởng chính ở trên bằng cách thay thế Luật sinh A >Bv bởi A > B Luật sinh A >v bởi A > 1.2.4 Giải thuật rút gọn số trạng thái của dfa ♦ Nhập: SVTH : Nguyễn Công Minh -– Lưu Thò Tốt GVHD : Quản Thành Thơ - Hồ Văn Quân Trang 118 Luận văn tốt nghiệp KS2 – K6 : Chương trình trợ giúp học một số giải thuật trong môn học Lý thuyết ngôn... t đều đi đến các trạng thái kế tiếp nhau ở trong cùng một nhóm của Ta thay G bằng những nhóm nhỏ hơn vừa tạo ra, cho chúng vào new end; SVTH : Nguyễn Công Minh -– Lưu Thò Tốt GVHD : Quản Thành Thơ - Hồ Văn Quân Trang 120 Luận văn tốt nghiệp KS2 – K6 : Chương trình trợ giúp học một số giải thuật trong môn học Lý thuyết ngôn ngữ hình thức & Ôtômát Chương 3: Borland Delphi 3.0 1.3.1 Giới thiệu Delphi . tốt nghiệp KS2 – K6 : Chương trình trợ giúp học một số giải thuật trong môn học Lý thuyết ngôn ngữ hình thức & Ôtômát Chương 1 Một số kiến thức lý thuyết. tốt nghiệp KS2 – K6 : Chương trình trợ giúp học một số giải thuật trong môn học Lý thuyết ngôn ngữ hình thức & Ôtômát Chương 2 Một số giải thuật liên

Ngày đăng: 03/03/2014, 14:20

HÌNH ẢNH LIÊN QUAN

Bảng truyền cho dfa - chương trình trợ giúp học một số
Bảng truy ền cho dfa (Trang 19)
Bảng Cấu trúc dữ liệu cho Đối tượng Nfa lý thuyết - chương trình trợ giúp học một số
ng Cấu trúc dữ liệu cho Đối tượng Nfa lý thuyết (Trang 85)
Bảng cấu trúc dữ liệu cho đối tượng VPCQ - chương trình trợ giúp học một số
Bảng c ấu trúc dữ liệu cho đối tượng VPCQ (Trang 92)

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w