luận văn công nghệ thông tin một agent tự nhận thức để tìm kiếm

61 333 0
luận văn công nghệ thông tin một agent tự nhận thức để tìm kiếm

Đ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

BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC DÂN LẬP KỸ THUẬT CÔNG NGHỆ LUẬN VĂN TỐT NGHIỆP ĐỀ TÀI: M M Ộ Ộ T T A A G G E E N N T T T T Ự Ự N N H H Ậ Ậ N N T T H H Ứ Ứ C C Đ Đ Ể Ể T T Ì Ì M M K K I I Ế Ế M M TP. HỒ CHÍ MINH 2003 TRƯỜNG ĐẠI HỌC DÂN LẬP KỸ THUẬT CÔNG NGHỆ KHOA CÔNG NGHỆ THÔNG TIN GVHD : HUỲNH VĂN ĐỨC SVTH : ĐẶNG HỒNG HẢI MSSV : 97DT216 KHÓA 98 LUẬN VĂN TỐT NGHIỆP ĐỀ TÀI: M M Ộ Ộ T T A A G G E E N N T T T T Ự Ự N N H H Ậ Ậ N N T T H H Ứ Ứ C C Đ Đ Ể Ể T T Ì Ì M M K K I I Ế Ế M M Tp. HỒ CHÍ MINH NĂM 2003 GVHD : HUỲNH VĂN ĐỨC SVTH : ĐẶNG HỒNG HẢI MSSV : 97DT216 KHÓA 98 NHẬN XÉT CỦA GIÁO VIÊN HƯỚNG DẪN: NHẬN XÉT CỦA GIÁO VIÊN PHẢN BIỆN: LỜI CẢM ƠN  Trong suốt thời gian học tập ở trường, em đã được quý Thầy Cô cung cấp và truyền đạt rất nhiều kiến thức chuyên môn cần thiết và quý giá. Đó là những hành trang hết sức cần thiết để có thể thành công khi bắt tay vào nghề nghiệp trong tương lai. Luận văn tốt nghiệp là cơ hội để em có thể áp dụng, tổng kết lại những kiến thức mà mình đã học. Đồng thời, rút ra những kinh nghiệm thực tế và quý giá trong suốt quá trình thực hiện đề tài. Bên cạnh những kết quả khiêm tốn mà em đạt được, chắc chắn không tránh khỏi những sai sót khi thực hiện luận văn của mình, kính mong quý Thầy Cô chỉ bảo thêm. Sự phê bình, góp ý của quý Thầy Cô sẽ là những bài học kinh nghiệm rất quý giá cho công việc thực tế của chúng em sau này. Em xin chân thành cảm ơn quý Thầy Cô khoa Công Nghệ Thông Tin đã tận tình dạy dỗ, giúp đỡ em trong suốt thời gian học tập, nghiên cứu ở trường. Em vô cùng biết ơn Thầy Huỳnh Văn Đức đã tận tình hướng dẫn em trong thời gian làm luận văn tốt nghiệp. Và tôi xin cám ơn các bạn sinh viên khoá 98TH, những người đã tích cực động viên, giúp đỡ để tôi có thể hoàn thành được đề tài này. TP. HCM, 05-2003 Đặng Hồng Hải LỜI MỞ ĐẦU  Từ xưa đến nay, con người luôn mong muốn cải thiện môi trường sống quanh mình, nâng cao chất lượng cuộc sống, tăng năng suất lao động, khám phá những bí ẩn của thiên nhiên. Do đó, con người đã không ngừng tìm tòi cải tiến, sáng tạo ra các công cụ sản xuất mới, phương tiện lao động mới… nhằm phục vụ cho nhu cầu của con người. Robot cũng đã được phát minh ra từ thực tế đó. Từ khi xuất hiện, Robot đã tỏ ra là một công cụ lao động rất hiệu quả do có thể thay thế con người trong rất nhiều công việc từ đơn giản đến phức tạp, từ những công việc bình thường đến những công việc cực kỳ khó khăn nguy hiểm. Đề tài: Xây dựng một Agent tự nhận thức để tìm kiếm (Xây dựng một mô hình đối tượng – tạm gọi là Robot – có khả năng nhận thức môi trường chung quanh để tìm kiếm). Đề tài này nhằm tìm hiểu về bài toán nhận thức của Robot – một bài toán tuy nhỏ nhưng lại không thể thiếu trong các hành vi của Robot. Sau một thời gian thực hiện dưới sự hướng dẫn tận tình của thầy hướng dẫn và sự giúp đỡ nhiệt tình của các bạn sinh viên đồng khoá, đề tài đã được hoàn thành. Tuy nhiên, do đề tài được làm với quỹ thời gian hạn hẹp và trình độ chuyên môn cũng như kinh nghiệm còn nhiều hạn chế nên không thể tránh khỏi những sai lầm và thiếu sót, rất mong được sự chỉ bảo, đóng góp của quý Thầy Cô và các bạn. TP. HCM, 05-2003 SVTH : Đặng Hồng Hải. MỤC LỤC  PHẦN I : LÝ THUYẾT Chương I: Ý tưởng và đặc trưng của bài toán Trang 1 1. Ý tưởng Trang 1 2. Đặc trưng Trang 3 Chương II: Kiến thức liên quan Trang 5 I. Đồ Họa Máy Tính Trang 5 1. Khái niệm Trang 6 2. Các ứng dụng tiêu biểu của kỹ thuật đồ họa: Trang 6 3. Giải thuật xén: Trang 7 4. Camera tổng hợp: Trang 9 II. Trí Tuệ Nhân Tạo Trang 12 1. Khái niệm: Trang 12 2. Các lĩnh vực nghiên cứu và ứng dụng cơ bản của Trí Tuệ Nhân Tạo Trang 13 3. Các phương pháp và kỹ thuật Trí Tuệ Nhân Tạo Trang 14 4. Các Giải Thuật Tìm Kiếm Heuristic Trang 14 4.1 Giải thuật leo đồi Trang 15 4.2 Giải thuật A* Trang 16 III. Lập trình hướng đối tượng với Visual C++ 6 Trang 17 1. Khái niệm về lập trình hướng đối tượng : Trang 17 1.1 Tổng quan: Trang 17 1.2 Một số khái niệm: Trang 18 1.3 Các ưu điểm của lập trình hướng đối tượng: Trang 20 2. Ngôn ngữ lập trình Visual C++ trên môi trường Windows Trang 22 2.1 Tổng quan: Trang 22 2.2 Thư viện MFC: Trang 25 2.2 .1 Window Messages: Trang 25 2.2 .2 Hộp thoại ở chế độ Modal và Modaless: Trang 26 IV. Giới Thiệu Về UML Trang 26 1. Tổng quan: Trang 26 2. Công dụng của UML: Trang 27 3. Khái quát về UML: Trang 28 3.1 View: Trang 28 3.2 Diagram: Trang 29 3.3 Model Element: Trang 31 3.4 Tool: Trang 32 Chương III: Hướng Tiếp Cận Của Đề Tài Trang 34 Chương IV: Giao Diện Của Ứng Dụng Trang 36 Phần II : THIẾT KẾ CHƯƠNG TRÌNH Trang 38 1. Thiết kế mức quan niệm: Trang 38 1.1 Sơ đồ lớp với các lớp chính: Trang 38 1.2 Biểu đồ cộng tác: Trang 39 2. Thiết kế mức cài đặt: Trang 40 2.1 Sơ đồ lớp: Trang 40 2.2. Sơ đồ cộng tác: Trang 42 2.3 Cấu trúc của lớp Robot: Trang 44 2.4 Sơ đồ lớp với các thuộc tính: Trang 50 2.5 Sơ đồ tìm kiếm: Trang 51 2.6 Sơ đồ tuần tự cho chức năng thu thập thông tin (chức năng nhận thức): Trang 53 2.7 Các lớp tiện ích: Trang 54 Phụ lục Tài liệu tham khảo Luận văn tốt nghiệp GVHD: HUỲNH VĂN ĐỨC SVTH: Đặng Hồng Hải Trang 1 PHẦN I : LÝ THUYẾT CHƯƠNG I : Ý TƯỞNG VÀ ĐẶC TRƯNG CỦA BÀI TOÁN  1. Ý Tưởng Trong thời đại kỹ thuật công nghệ phát triển mạnh mẽ như hiện nay, vấn đề tự động hoá luôn được đặt lên vị trí hàng đầu. Những công việc trước đây con người phải tự tay làm thì ngày nay đã được thay thế dần bằng những bộ máy hiện đại được lập trình theo những chức năng chuyên dụng. Theo đà phát triển, con người đã chế tạo ra Robot – một loại máy móc thông minh kết hợp từ các ngành cơ khí, điện tử và tin học – và nó giúp con người rất nhiều việc: từ việc thám hiểm những nơi con người không đến được cho đến những công việc nội trợ trong gia đình. Từ khi xuất hiện đến nay, Robot luôn được các nhà khoa học đặc biệt quan tâm và làm cho nó ngày càng thông minh hơn, chuyên nghiệp hơn để thích ứng với những yêu cầu mới, những công việc mới trong những lĩnh vực mới. Một trong những việc rất cần đến sự trợ giúp của Robot là lĩnh vực tìm kiếm, chẳng hạn như việc tìm và gỡ mìn, một việc làm rất nguy hiểm đối với con người nhưng Robot lại làm rất tốt. Bên cạnh đó, việc thám hiểm những hành tinh xa xôi, những đáy biển sâu… thì không có sự lựa chọn nào tốt hơn Robot. Hiện nay, con người còn có những ý tưởng chưa thực hiện được về việc chế tạo Robot như: Robot cảnh sát chuyên trấn áp tội phạm, Robot nội trợ, Luận văn tốt nghiệp GVHD: HUỲNH VĂN ĐỨC SVTH: Đặng Hồng Hải Trang 2 Robot có cảm xúc, Robot cảm nhận bằng âm thanh, Robot mô phỏng các hoạt động của con người… Tuy Robot được ứng dụng vào rất nhiều lĩnh vực khác nhau nhưng hiện tại, việc chế tạo Robot vẫn còn gặp rất nhiều khó khăn về kỹ thuật cũng như công nghệ. Thực tế đó đã làm nảy sinh ý tưởng: có thể mô phỏng hoạt động của một Robot trong thế giới thực bằng máy tính được không? Câu trả lời là có và đã có nhiều công ty lớn làm theo cách này. Đây là một hướng phát triển rất quan trọng trong việc chế tạo Robot vì nó giúp cho việc thiết kế cũng như thử nghiệm Robot không còn khó khăn và tốn kém như trước. Tuy nhiên, việc thể hiện toàn bộ hoạt động của một Robot từ thế giới thực lên máy tính là một bài toán khá rộng lớn nên ở đây, trong giới hạn của đề tài này, tôi chỉ tập trung tìm hiểu bài toán “Xây dựng mô hình mô phỏng một đối tượng – tạm gọi là Robot – có khả năng nhận thức môi trường chung quanh để tìm kiếm mục tiêu”. Phần quan trọng của bài toán này là mô phỏng sự nhận thức của Robot, một bài toán tuy nhỏ nhưng không thể thiếu đối với hầu hết các Robot. Mục tiêu của bài toán là mô phỏng cách một Robot tự phân tích môi trường chung quanh để đi tìm vật thể. Giống như con người, đầu tiên Robot phải tìm nó bằng cách đi tìm khắp mọi nơi nhưng khi đã gặp thì Robot sẽ nhớ vị trí đó để định vị cho lần tìm kiếm sau. Và trong quá trình tìm kiếm, Robot phải tìm cách tránh né chướng ngại vật, phải đánh dấu đường đi đã qua, phải tự đưa ra những quyết định khi đã có thêm thông tin… Với bài toán này, các nội dung chính cần đạt được là:  Khả năng nhận thức môi trường xung quanh của Robot: Robot sau khi “nhìn” sẽ phân biệt được chướng ngại vật, đường đi hay vật cần tìm trong khung nhìn.  Khả năng đưa ra hành vi thích hợp của Robot: sau khi nhận thức được môi trường chung quanh, Robot sẽ đi tìm mục tiêu theo hướng tốt nhất trong các hướng có thể đi được, kết hợp chuyển hướng quan sát nếu gặp phải chướng ngại vật. [...].. .Luận văn tốt nghiệp GVHD: HUỲNH VĂN ĐỨC  Khả năng học của Robot: Robot có thể học bằng cách nhớ lại vị trí của vật cần tìm để định vị cho lần tìm kiếm sau 2 Đặc trưng của bài toán: Do đây là một bài toán tìm kiếm nên nó có một số đặc trưng sau:  Thông tin về đối tượng cần tìm có thể chưa chính xác hoặc bị thay đổi (Heuristic chưa có hoặc bị thay đổi)  Đối tượng cần tìm có thể ở những... Đặng Hồng Hải Trang 3 Luận văn tốt nghiệp GVHD: HUỲNH VĂN ĐỨC CHƯƠNG II : KIẾN THỨC LIÊN QUAN  Do đề tài mô phỏng khả năng nhận thức của Robot nên một số kiến thức sau đây được sử dụng: Đồ hoạ máy tính: để thể hiện giao diện và giải quyết một số vấn đề kỹ thuật như: tạo khung nhìn, thu thập thông tin về những đối tượng trong khung nhìn … Trí tuệ nhân tạo: hỗ trợ khả năng nhận thức và đưa ra quyết định... trình nhận thức thế giới xung quanh để tìm kiếm nên một số diagram sau được sử dụng:  Class diagram – xây dựng cấu trúc tĩnh của các lớp trong ứng dụng  Sequence diagram – lên lược đồ cho quá trình nhận thức  Collaboration diagram – lược đồ tương tác của các đối tượng trong ứng dụng  Activity diagram – lên lược đồ cho quá trình tìm kiếm SVTH: Đặng Hồng Hải Trang 26 Luận văn tốt nghiệp GVHD: HUỲNH VĂN... cho máy tính có thể “suy nghĩ một cách thông minh” Theo một nghĩa hẹp, trí tuệ nhân tạo nghĩa là mô phỏng quá trình suy nghĩ của con người khi đưa ra những quyết định, những lời giải bằng cách tìm kiếm thông tin trong không gian bài toán Từ đó thiết kế các chương trình cho máy tính để giải quyết bài toán trong quá trình tìm kiếm Trên cơ sở đó, ta ứng dụng kỹ thuật tìm kiếm của trí tuệ nhân tạo vào... Windows Dựa trên dạng tập tin (file Document) thì chỉ có một tập tin được load lên MDI thì có nhiều cửa sổ con, mỗi cửa sổ con này hướng tới một tập tin 2.2 1 Window Messages: Mọi hoạt động trên FrameWork đều thông qua thông điệp, tương ứng với mã nhận diện ID ta sẽ có các lệnh tương ứng với các thông điệp Window Ví dụ như người sử dụng di chuyển con chuột thì cửa sổ này sẽ nhận được thông điệp WM_MOUSEMOVE... bằng một hàm chức năng tự tạo Macro afx_msg là nơi khai báo hàm thành viên đáp ứng thông điệp Để tạo hàm xử lý thông điệp ta sử dụng ClassWizard chọn lớp cơ sở để chứa nó, sau đó chọn Window Message tương ứng sau khi đã có sự đồng ý thì nó được ánh SVTH: Đặng Hồng Hải Trang 22 Luận văn tốt nghiệp GVHD: HUỲNH VĂN ĐỨC xạ vào trong chương trình Khi đó ta có thể phát triển hàm xử lý tương ứng với thông. .. diễn những gì xử lý trong hệ thống Các class có thể liên quan với nhau theo một số quan hệ như sau:  Associate: nối đến class khác  Dependent: một class thuộc/ sử dụng một class khác  Speciallize: một class là một đặc biệt hóa của một class khác  Package: nhóm chung trong một đơn vị Một hệ thống thường có một số class diagram Một class cũng có thể tham gia vào nhiều class diagram khác nhau Collaboration... tìm kiếm Lập trình hướng đối tượng: vì tính chất của đề tài là mô phỏng thế giới thực nên lập trình hướng đối tượng là một cách tiếp cận hiệu quả nhất UML (Unified Modeling Languge): được sử dụng để lên mô hình cho dự án SVTH: Đặng Hồng Hải Trang 4 Luận văn tốt nghiệp GVHD: HUỲNH VĂN ĐỨC I ĐỒ HỌA MÁY TÍNH: Đồ hoạ máy tính là một trong những lĩnh vực phát triển nhanh nhất và lý thú nhất của ngành tin. .. kỹ thuật cơ bản của tin học truyền thống có liên quan trực tiếp đến trí tuệ nhân tạo SVTH: Đặng Hồng Hải Trang 12 Luận văn tốt nghiệp GVHD: HUỲNH VĂN ĐỨC Vì đề tài sử dụng các phương pháp tìm kiếm Heuristic và phương pháp học nên ở đây chỉ đề cập đến hai phương pháp này Còn những phương pháp khác nếu có nhu cầu tìm hiểu thêm, xin xem thêm ở tài liệu tham khảo 4 Các Giải Thuật Tìm Kiếm Heuristic Lập... (association, dependency, generalization) Một model element có thể được dùng trong nhiều diagram  General mechanism: cung cấp các thông tin đặc biệt hay ngữ nghĩa về một model element 3.1 View: Một hệ thống không thể được mô tả hết chỉ trong một biểu đồ, nó nên được mô tả riêng cho mỗi khía cạnh khác Vì vậy, một hệ thống được mô tả bởi một số View, mỗi View phản ánh một mặt của hệ thống Mỗi View bao gồm . dựng một Agent tự nhận thức để tìm kiếm (Xây dựng một mô hình đối tượng – tạm gọi là Robot – có khả năng nhận thức môi trường chung quanh để tìm kiếm) . Đề tài này nhằm tìm hiểu về bài toán nhận. 2003 TRƯỜNG ĐẠI HỌC DÂN LẬP KỸ THUẬT CÔNG NGHỆ KHOA CÔNG NGHỆ THÔNG TIN GVHD : HUỲNH VĂN ĐỨC SVTH : ĐẶNG HỒNG HẢI MSSV : 97DT216 KHÓA 98 LUẬN VĂN TỐT NGHIỆP ĐỀ TÀI: M M Ộ Ộ T T . Sơ đồ tìm kiếm: Trang 51 2.6 Sơ đồ tuần tự cho chức năng thu thập thông tin (chức năng nhận thức) : Trang 53 2.7 Các lớp tiện ích: Trang 54 Phụ lục Tài liệu tham khảo Luận văn tốt

Ngày đăng: 25/12/2014, 19:18

Từ khóa liên quan

Mục lục

  • BiaLV.DOC

  • NHANXET.DOC

  • LOICAMON.DOC

    • LỜI CẢM ƠN

    • LOIMODAU.DOC

      • LỜI MỞ ĐẦU

      • Mucluc.doc

        • Chương I: Ý tưởng và đặc trưng của bài toán Trang 1

        • Chương II: Kiến thức liên quan Trang 5

        • Chương IV: Giao Diện Của Ứng Dụng Trang 36

        • Phần II : THIẾT KẾ CHƯƠNG TRÌNH Trang 38

          • Tài liệu tham khảo

          • lvtn.doc

            • CHƯƠNG I : Ý TƯỞNG VÀ ĐẶC TRƯNG CỦA BÀI TOÁN

            • Đồ hoạ máy tính là một trong những lĩnh vực phát triển nhanh nhất và lý thú nhất của ngành tin học. Ngay từ khi xuất hiện, đồ họa máy tính đã cuốn hút rất nhiều người thuộc nhiều lĩnh vực khác nhau. Và nhờ có công nghệ đồ họa mà con người có thể làm quen dễ dàng với máy tính. Do đó, để thể hiện giao diện cũng như giải quyết một số vấn đề kỹ thuật, đề tài này cũng dùng đến một số kỹ thuật sau:

            • Tiếp cận Camera tổng hợp: sử dụng cách tiếp cận này để tạo ra khung nhìn cho Robot.

            • Các giải thuật xén: để lấy các đối tượng trong khung nhìn của Robot nhằm mô phỏng việc Robot chỉ có thể thấy những gì nằm trong khung nhìn của nó mà thôi.

            • Đối tượng = dữ liệu + phương thức

              • CHƯƠNG IV: GIAO DIỆN CỦA ỨNG DỤNG

              • PHẦN II : THIẾT KẾ CHƯƠNG TRÌNH

              • Mô tả:

              • Ý nghĩa:

              • PHULUC.DOC

              • Tltk.doc

Tài liệu cùng người dùng

Tài liệu liên quan