CHƯƠNG 4.XÂY DỰNG HỆ THỐNG LỌC VÀ SẮP XẾP TIN TỨC THEO NGỮ CẢNH NGƯỜI DÙNG
4.2. Mô hình xã hội các agent
4.2.1 Mô tả Ontology lĩnh vực
Mô tả Ontology lĩnh vực của hành động phân tích và tách nội dung bài viết từ trang HTML
Hình 25: Mô tả Ontology lĩnh vực của hành động phân tích và tách nội dung bài viết từ trang HTML
Mô tả Ontology lĩnh vực của hành động nhóm các tin giống nhau
Hình 26: Mô tả Ontology lĩnh vực của hành động nhóm các tin giống nhau
Mô tả Ontology lĩnh vực của hành động sắp xếp các tin theo sở thích người dùng
Hình 27: Mô tả Ontology lĩnh vực của hành động sắp xếp các tin theo sở thích người dùng
Mô tả Ontology lĩnh vực của hành động cập nhật thói quen/ sở thích người dùng
Hình 28: Mô tả Ontology lĩnh vực của hành động cập nhật thói quen/ sở thích người dùng
4.2.2 Mô tả Ontology truyền thông
Mô tả Ontology truyền thông giữa các agent thu thập và phân tích/trích trọn thông tin
Hình 29: Mô tả Ontology truyền thông giữa các agent thu thập và phân tích/trích trọn thông tin
Mô tả Ontology truyền thông giữa các agent tương tác với người dùng
Hình 30: Mô tả Ontology truyền thông giữa các agent tương tác với người dùng
4.3 Mô hình thực thi các agent 4.3.1 Các trúc các agent (đa agent)
Hình 31: Cấu trúc các agent trong hệ thống
Agent Crawler thực hiện download các trang tin sau đó giao tiếp với agent ArticleExtractor để agent này thực hiện bóc tách thông tin. Sau đó agent này thực hiện giao tiếp với agent DupplicateGrouper để agent này thực hiện nhóm các tin lien quan.
Agent WebUI thực hiện giao tiếp với người dùng và yêu cầu agent UserProfiler thực hiện sắp xếp thông tin và cập nhật thông tin sở thích của người dùng
4.3.2 Định nghĩa cấu trúc từng agent Agent Crawler
Hình 32: Cấu trúc của agent Crawler Agent ArticleExtractor
Hình 33: Cấu trúc của agent ArticleExtractor
Agent UserProfier
Hình 34: Cấu trúc của agent UserProfiler
Agent WebUI
Hình 35: Cấu trúc của agent WebUI
4.4 Cài đặt và triển khai
Hệ thống được cài đặt trên hệ thống máy chủ Linux chạy trên nền Java 1.6 trên hệ thống 3 máy chủ với 500 agent thực hiện thu thập tin tức cho khoàng 50 nguồn báo với khoảng 10 chuyên mục cho mỗi báo và 10 agent thực hiện nhóm các tin giống nhau và các agent phân tích hành vi người dùng. Hệ thống đã được áp dụng thực tế trên hệ thống thu thập và tổng hợp tin tức của web site http://xalo.vn
Hình 36: Mô hình triển khai 4.5 Một số giao diện
Thứ tự các chuyên mục khởi tạo Thứ tự chuyên mục sau một thời gian sử dụng
Giao diện trang tổng hợp tin http://xalo.vn/news.html
Giao diện trang tổng hợp tin cho điện thoại di động
4.6 Thử nghiệm và đánh giá
Hệ thống đã thử nghiệm và đánh giá khả năng sắp xếp lại các chuyên mục theo sở thích thói quen người dùng. Thử nghiệm với 50 nhân viên trong công ty Tinh Vân Media trong vòng 2 tháng sử dụng. Kết quả thu thập đánh giá của người dùng hệ thống đã đạt được:
62% người dùng cảm thấy tiện lợi hơn, tiếp cận với mục mình yêu thích hơn.
24% người dùng không nhận thấy sự thay đổi. 14% cảm thấy khó chịu vì sự sắp xếp bị thay đổi.
Hình 37: Khảo sát đánh giá người dùng 62%
24%
14%
Tiện lợi hơn Không thay đổi Khó chịu
KẾT LUẬN
Luận văn trình bày các nghiên cứu của chúng tôi về “Hệ thống lọc và sắp xếp tin tức theo ngữ cảnh người dùng” theo kiến trúc agent phần mềm.
Các kết quả chính đã đạt được là tìm hiểu các kiến thức liên quan đến agent. Tìm hiểu mô hình phát triển phần mềm hướng agent PASSI. Chúng tôi đã ứng dụng mô hình này vào phân tích, thiết kế và phát triển “Hệ thống lọc và sắp xếp tin tức theo ngữ cảnh người dùng”.
Hệ thống đã được đưa vào thử nghiệm và bước đầu đã thể hiện được thế mạnh của công nghệ phần mềm hướng agent với quy trình phát triển phần mềm đơn giản, nhanh chóng và tiết kiệm chi phí.
Luận văn vẫn còn một số hạn chế như Hệ thống xây dựng được mới chỉ mang tính chất minh họa cho quy trình phát triển phần mềm. Các giải pháp xử lý thông tin như
“nhóm các tin giống nhau”, “sắp xếp thông tin theo sở thích người dùng” hiện chỉ phát triển ở mức đơn giản, chưa áp dụng các công nghệ xử lý ngôn ngữ tự nhiên trong quá trình phân tích và trích chọn thông tin.
Hướng phát triển tiếp theo của chúng tôi là cải tiến các agent “nhóm các tin giống nhau” sử dụng các kỹ thuật xử lý ngôn ngữ tự nhiên như xác định vector của tài liệu để xác định sự giống nhau của 2 tài liệu một cách linh hoạt hơn. Bổ sung các agent mang tính trích trọn các thông tin thực thể như: “Bóc tách tên người dùng”, bóc tách các câu nói trong bài viết của một nhân vật nào đó, thông tin về công ty, tổ chức nhằm giúp người dùng khai thác tốt thông tin. Dựa trên nhiều thông tin hơn để mô tả sở thích người dùng.
[1] Modeling Notation Source – PASSI © 2003 Foundation for Intelligent Physical Agents author: Massimo Cossentino, Luca Sabatucci
[2] FIPA Modeling: Agent Class Diagrams
[3] M. Wooldridge and N. R. Jennings (1995) “Intelligent agents: theory and practice” The Knowledge Engineering Review 10 (2) 115 – 152.
[4] A. Fuggetta, G. Vigna, Understanding Code Mobility, IEEE Transactions on Software Engineering, 24(5):342 - 361, May 1998.
[5] J. W. Stamos, D. K. Gifford, Remote Evaluation, ACM Transactions on Programming Languages and Systems, October 1990.
[6] G. Booch (1994) “Object - oriented analysis and design with applications”
Addison Wesley.
[7] Woodridge,(2000). Reasoning about Agents. MIT Press, Cambridge, MA [8] Luck M. and D’ Inverno M. (2001). A Conceptual Framework for Agent Definition and Devlopment. The Computer Journal
[8] Software agent website: www.wikipedia.org [9] JADE website: jade.tilab.com
[10] PASSI documentation website: www.csai.unipa.it/passi
[11] M. Cossentino - "Different perspectives in designing multi - agent systems" - AGES '02 workshop at NODe02 - 8 - 9 October 2002 - Erfurt, Germany (www. csai.
unipa. it/cossentino/paper/AGES02. Pdf)
[12] M. Cossentino, P. Burrafato, S. Lombardo, L. Sabatucci - "Introducing Pattern Reuse in the Design of Multi - Agent Systems" - AITA'02 workshop at NODe02 - 8 - 9 October 2002 - Erfurt, Germany (www. csai. unipa. it/cossentino/paper/AITA02. pdf) [13] M. Cossentino, C. Potts - "A CASE tool supported methodology for the design of multi - agent systems" - The 2002 International Conference on Software Engineering Research and Practice (SERP'02) - June 24 - 27, 2002 - Las Vegas (NV), USA (www.
csai. unipa. it/cossentino/paper/SERP02. pdf)
[14] P. Burrafato, M. Cossentino - "Designing a multi - agent solution for a bookstore with the PASSI methodology" - Fourth International Bi - Conference Workshop on Agent - Oriented Information Systems (AOIS - 2002) - 27 - 28 May 2002, Toronto (Ontario, Canada) at CAiSE'02 (www. csai. unipa. it/cossentino/paper/AOIS02. pdf) [15] Resource Description Framework. (RDF) Model and Syntax Specification. W3C Recommendation. 22 - 02 - 1999. http: //www. w3. org/TR/1999/REC - rdf - syntax – 19990222/
[16] FIPA RDF Content Language Specification. Foundation for Intelligent Physical Agents, Document FIPA XC00011B (2001/08/10). http: //www. fipa. org/specs/
fipa00011/XC00011B. html
[17] AgentFactory website: http: //mozart. csai. unipa. it/af
[18] Agent - Oriented Software Engineering, Nicholas R. Jennings and Michael Wooldridge, Department of Electronic Engineering, Queen Mary & Westfield College, University of London, London E1 4NS, United Kingdom
[19] G. Booch (1994) “Object - oriented analysis and design with applications”
Addison Wesley.
[20] F. P. Brooks (1995) “The mythical man - month” Addison Wesley. B. Chaib - draa (1995) “Industrial applications of distributed AI” Comms. of ACM
[21] B. Chellas (1980) “Modal Logic: An Introduction” Cambridge University Press.
[22] E. M. Clarke and E. A. Emerson (1981) “Design and synthesis of
synchronization skeletons using branching time temporal logic” In D. Kozen, editor, Logics of Programs (LNCS Volume 131), 52 - 71, Springer - Verlag.
[23] P. R. Cohen and H. J. Levesque (1990) “Intention is choice with commitment”
Artificial Intelligence.
[24] D. C. Dennett (1987) “The Intentional Stance” The MIT Press.
[25] R. Fagin, J. Y. Halpern, Y. Moses, and M. Y. Vardi (1995) “Reasoning About Knowledge” The MIT Press.
[26] M. Fisher (1997) “An alternative approach to concurrent theorem proving” In J.
Geller, H. Kitano, and C. B. Suttner, editors, Parallel Processing in Artificial Intelligence. Elsevier Science.
[27] M. Fisher and M. Wooldridge (1997) “On the formal specification and
verification of multiagent systems” Int. Journal of Cooperative Information Systems 6 [28] E. Gamma, R. Helm, R. Johnson and J. Vlissides (1995) “Design patterns:
elements of reusable object - oriented software” Addison Wesley.
[29] C. Guilfoyle and E. Warner (1994) “Intelligent agents: the new revolution in software” Ovum.
[30] J. Y. Halpern and M. Y. Vardi (1991) “Model checking versus theorem proving:
A manifesto” In V. Lifschitz, editor, AI and Mathematical Theory of Computation Papers in Honor of John McCarthy, Academic Press.
[31] C. A. R. Hoare (1969) “An axiomatic basis for computer programming” Comms.
of the ACM, 12.
[32] P. C. Janca (1995) “Pragmatic application of information agents” BIS Strategic Report.
[33] N. R. Jennings and J. R. Campos (1997) “Towards a Social Level
Characterisation of Socially Responsible Agents” IEE Proc. on Software Engineering [34] N. R. Jennings, K. Sycara and M. Wooldridge (1998) “A Roadmap of Agent Research and Development” Int Journal of Autonomous Agents and Multi - Agent Systems
[35] N. R. Jennings and M. Wooldridge (eds. ) (1998) “Agent technology:
foundations, applications and markets” Springer Verlag.
[36] D. Kinny and M. Georgeff (1997) “Modelling and design of multi - agent systems” In J. P. Mueller, M. Wooldridge, and N. R. Jennings, editors, Intelligent Agents III. Springer - Verlag.
[37] Z. Manna and A. Pnueli (1995) “Temporal Verification of Reactive Systems—
Safety” Springer - Verlag.
[38] B. Meyer (1988) “Object - oriented software construction” Prentice Hall.
[39] R. Milner (1993) “Elements of interaction” Comms. of ACM 36.
[40] A. Newell, (1993) “Reflections on the Knowledge Level” Artificial Intelligence [41] G. M. P. O’Hare and N. R. Jennings (editors) (1996) “Foundations of distributed artificial intelligence” John Wiley & Sons.
[42] H. V. D. Parunak (1999) “Industrial and practical applications of DAI” In G.
Weiss, editor, Multi - Agent Systems, MIT Press.
[43] A. Pnueli (1986) “Specification and development of reactive systems” In Information Processing, Elsevier Science Publishers.
[44] A. Pnueli and R. Rosner (1989) “On the synthesis of a reactive module” In Proceedings of the 16th ACM Sym. on the Principles of Programming Languages.
[45] A. S. Rao and M. Georgeff (1995) “BDI Agents: from theory to practice” Proc.
of the 1st Int. Conf. on Multi - Agent Systems, 312 - 319, San Francisco, CA.
[46] A. S. Rao and M. P. Georgeff (1993) “A model - theoretic approach to the verification of situated reasoning systems” Proc. of the 13th Int. Joint Conf. on Artificial Intelligence, Chambery, France.
[47] C. A. Szyperski (1997) “Component software: beyond object - oriented programming” Addison Wesley.
[48] G. Weiss (1999) “Multi - agent systems” MIT Press.
[49] M. Wooldridge (1992) “The Logical Modelling of Computational Multi - Agent Systems” Ph. D. thesis, Department of Computation, UMIST, Manchester, UK.
[50] M. Wooldridge (1997) “Agent - based software engineering” IEE Proc. on Software Engineering,