Luận Văn Kiến trúc phần mềm dựa trên agent

Thảo luận trong 'Công Nghệ Thông Tin' bắt đầu bởi Thúy Viết Bài, 5/12/13.

  1. Thúy Viết Bài

    Thành viên vàng

    Bài viết:
    198,891
    Được thích:
    170
    Điểm thành tích:
    0
    Xu:
    0Xu
    TÓM TẮT

    Hiện nay, khi Internet trở nên phổ biến và cần thiết, các hệ thống mở, phân tán đang được phát triển rộng rãi và hữu ích theo cùng. Hướng phát triển các hệ thống này chủ yếu được sử dụng theo mô hình Client –Server, mọi tính toán, yêu cầu được chuyển lên và thực hiện ở Server bên ngoài Internet. Điều này đòi hỏi một băng thông Internet lớn với chi phí cao. Có các hướng giải quyết để phân tải mạng trên Server như phân tải mạng bằng các Server khác hay sử dụng Proxy Cache để lưu các kết quả tính toán, yêu cầu đã được thực hiện. Khóa luận này sẽ giới thiệu một hướng phân tải mạng cho Server bằng cách sử dụng Proxy động được xây dựng dựa trên lý thuyết, các kiến thức về kiến trúc xây dựng phần mềm dựa trên Agent – một hướng nghiên cứu phát triển phần mềm mới được xem là tiếp theo của phương pháp hướng đối tượng.

    Trong mô hình này, các tính toán, yêu cầu được đóng gói thành các Agent, sau đó được chuyển xuống Proxy, lưu giữ và thực thiện các tính toán. Các agent này có thể di chuyển, cập nhật cơ sở dữ liệu từ Server, lưu giữ các tính toán, thực hiện các tính toán này ngay trên Proxy khi có yêu cầu gửi đến nhằm giảm thiểu việc truy cập lên Server, cơ sở dữ liệu, và phân tải mạng cho Server. Bên cạnh đó, sử dụng Proxy động sẽ làm việc thực hiện các tính toán một cách nhanh chóng hơn do các tính toán ở gần và cơ sở dữ liệu được lưu trữ sẵn trên Proxy, do đó tốc độ truyền dẫn thông tin và các tính toán đã được lưu trữ sẽ tối ưu hơn so với khi Client yêu cầu tính toán nếu được gửi và thực hiện trên Server theo mô hình truyền thống.












    MỤC LỤC

    LỜI CẢM ƠN i

    TÓM TẮT ii

    MỤC LỤC iii

    Chương 1. GIỚI THIỆU 5

    1.1 Tổng quan kiến trúc phần mềm dựa trên Agent 5

    1.2 Bài toán xây dựng mô hình phân tải mạng nhờ Proxy động dựa trên Agent 5

    1.3 Nội dung và cấu trúc khóa luận 6

    Chương 2. TỔNG QUAN VỀ AGENT 8

    2.1 Agent phần mềm 8

    2.1.1 Khái niệm Agent phần mềm 8

    2.1.2 Kiến trúc tổng thể 9

    2.2 FIPA (Foundation for Intelligent, Physical Agents) 9

    2.2.1 Lịch sử FIPA 10

    2.2.2 Truyền thông Agent (Agent Communication) 10

    2.2.3 Quản lý Agent (Agent Management) 10

    2.3 Nền tảng JADE 11

    2.3.1 Khái niệm về JADE 11

    2.3.2 Mô hình nền tảng JADE 12

    2.3.3 Biên dịch và chạy trên nền tảng JADE 13

    2.3.4 Dịch vụ di động liên nền (Inter - Platform) 16

    2.3.5 Jade Gateway 17

    2.4 Tổng quan về Mobile Agent 18

    2.4.1 Khái niệm về mobile Agent 18

    2.4.2 Cấu trúc của Mobile Agent 19

    2.4.3 Ứng dụng của Mobile Agent 19

    Chương 3. MÔ HÌNH PROXY ĐỘNG DỰA TRÊN AGENT 21

    3.1 Giới thiệu chung về bài toán 21

    3.2 Ý tưởng xây dựng mô hình 22

    3.3 Giải pháp 22

    3.4 Phân tích mô hình 23

    3.4.1 Mô hình chung 23

    3.4.2 Mô hình Client 24

    3.4.3 Mô hình Server 24

    3.4.4 Mô hình Proxy 25

    3.5 Tổng kết 27

    Chương 4. THỰC NGHIỆM 28

    4.1 Mô tả chương trình 28

    4.2 Thiết kế ứng dụng 29

    4.3 Cài đặt và thực nghiệm 31

    4.3.1 Cài đặt 31

    4.3.2 Thực nghiệm 31

    Chương 5. KẾT LUẬN 33

    TÀI LIỆU THAM KHẢO 34












    Chương 1. GIỚI THIỆU

    1.1 Tổng quan kiến trúc phần mềm dựa trên Agent

    Trong những năm gần đây, sự phát triển mạnh mẽ của các công nghệ truyền thông và Internet đã ảnh hưởng sâu rộng đến nhiều mặt của cuộc sống từ kinh tế, khoa học đến văn hóa xã hội. Cùng với sự phát triển lớn mạnh, không ngừng của Internet, đòi hỏi việc chia sẻ và tích hợp thông tin qua đường truyền giữa các máy với nhau, để sử dụng cơ sở dữ liệu chia sẻ ngày càng nên phổ biến. Điều này dẫn đến nhiều thách thức với người phát triển phần mềm khi phải đối đầu với những yêu cầu về hệ phần mềm phức tạp, mở và phân tán.

    Chúng ta đã được biết các cách phát triển phần mềm dựa trên cách cách tiếp cận hướng cấu trúc, cách tiếp cận hướng đối tượng. Phương pháp hướng đối tượng có ưu điểm so với phương pháp hướng cấu trúc là khả năng sử dụng lại mã nguồn, dễ đọc mã nguồn và xử lý lỗi. Đối với cách tiếp cận hướng đối tượng, hệ thống phần mềm được xem như tập các thực thể tương tác gọi là “đối tượng”, trong đó mỗi đối tượng được xác định bởi 3 yếu tố: Định danh, trạng thái, và hành vi. Với cách tiếp cận hướng đối tượng, phần mềm được xây dựng dựa trên khái niệm đối tượng, các phương thức, quan hệ giữa các đối tượng . hướng giải quyết này có vẻ không đáp ứng được với các hệ phần mềm mở, phân tán, phức tạp như là quản lý mạng viễn thông, thương mại điện tử, tìm kiếm trích lọc thông tin .

    Là một hướng phát triển tiếp theo của phương pháp hướng đối tượng, cách tiếp cận hướng agent được xem là một công nghệ hứa hẹn cho phát triển của các hệ phần mềm phức tạp này. Ý tưởng cơ bản của hệ Phần mềm Agent là xem hệ phần mềm như một cấu trúc xã hội bao gồm các agent có tính tự chủ về hành vi, về trạng thái, có khả năng phản ứng nhận biết được môi trường, chủ động trong hành động và phản ứng, và chúng có khả năng tương tác với nhau để đạt tới một mục đích chung của hệ thống. Phần trình bày về lý thuyết Agent sẽ làm rõ hơn các khái niệm và có cái nhìn tổng quan hơn về agent, cũng như sử dụng agent trong việc xây dựng phần mềm.

    1.2 Bài toán xây dựng mô hình phân tải mạng nhờ Proxy động dựa trên Agent

    Hiện nay, các ứng dụng hệ thống phân tán, mở, phúc tạp thường được xây dựng dựa trên mô hình Client – Server [16]. Trong mô hình này, các dịch vụ trong ứng dụng bao gồm mã cài đặt dịch vụ và các tài nguyên để thực thi dịch vụ. Khi có các yêu cầu từ Client, các mã dịch vụ sẽ được thực thi trên tài nguyên dịch vụ và kết quả trả về cho Client. Tuy nhiên với lượng các yêu cầu tính toán gửi lên cho Server lớn thì vấn đề đường truyền mạng là một là một thách thức. Mô hình Client –Proxy –Server là một hướng giải quyết của vấn đề này. Bài toán được đưa ra từ ý tưởng giảm tải mạng cho cho Server nhờ Proxy động dựa trên các kiến thức về Agent, mobile Agent. Ở đây các tính toán sẽ được đóng gói thành các Agent được chuyển từ Server xuống Proxy khi được yêu cầu. Proxy sẽ lưu các tính toán này và trả về một cách nhanh chóng khi có yêu cầu.

    Nền tảng được lựa chọn để phát triển hệ thống này là JADE (Java Agent Develop Framework), nền tảng phát triển trên nền java, cung cấp cho người lập trình một nền tảng để tạo ra các Agent thực hiện các tính toán, di chuyển, truyền thông với nhau.

    1.3 Nội dung và cấu trúc khóa luận

    Với nội dung trình bày những lý thuyết cơ bản về công nghệ Agent, xây dựng mô hình phân tải mạng ở Server nhờ Proxy động dựa trên công nghệ Agent và cách áp dụng vào bài toán thực tế - phân tải mạng cho chương trình tìm kiếm thông tin sinh viên ở các trường Đại học. Khóa luận được tổ chức theo cấu trúc như sau:

    Chương 1: Giới thiệu

    Giới thiệu sơ lược về tổng quan kiến thức về công nghệ Agent, lý thuyết Agent và các kiến thức xây dựng phần mềm dựa trên Agent. Bài toán xây dựng mô hình phân tải mạng nhờ Proxy động được phân tích dưới khía cạnh sử dụng Agent đóng gói, đại diện cho các tính toán là một hướng giải quyết khả thi cho việc giải quyết bài toán phân tải mạng. Chương này giới thiệu những gì mà khóa luận nghiên cứu, từ đó thông qua việc trình bày về nội dung và cấu trúc của khóa luận.

    Chương 2: Tổng quan về Agent

    Chương hai đi vào giới thiệu một cách tổng quan nhất về Agent. Cấu trúc và hoạt động của Agent, hệ đa Agent, mobile Agent, chuẩn FIPA, nền tảng JADE. Với những kiến thức cơ bản này, người đọc sẽ hiểu được phần nào cấu trúc, hoạt động cũng như những ưu nhược điểm của Phần mềm Agent từ đó có thể xây dựng, phân tích thiết kế được mô hình phù hợp với từng bài toán.

    Chương 3: Mô hình phân tải mạng bằng Proxy động dựa trên Agent

    Chương này giới thiệu hiện trạng của việc phân tải mạng cho Server, nêu ra hướng giải quyết sử dụng Proxy động được xây dựng dựa trên ý tưởng đóng gói các tính toán bằng Agent. Xây dựng mô hình Client – Proxy- Server, phân tích các mô hình Client, mô hình Proxy, mô hình Server. Qua đó xây dựng mô hình xử lý bài toán và thiết kế chi tiết cho mô hình giảm tải mạng.

    Chương 4: Thực nghiệm

    Trình bày thực nghiệm được phân tích ở chương 3, mô tả các bước thiết kế, cài đặt, kết quả thực nghiệm của chương trình quản lý đào tạo của trường đại học trong đó vấn đề tìm kiếm thông tin sinh viên là các tính toán được thực hiện thường xuyên từ phía Client lên Server sẽ được đóng gói thành các Agent thực thi có thể di chuyển xuống Proxy để giúp cho việc phân tải mạng.

    Chương 5: Kết luận

    Chương này tổng kết lại những gì đã đạt được và chưa đạt được. Từ đó nêu lên những kết quả hướng tới, hướng nghiên cứu và phát triển tiếp theo.
     

    Các file đính kèm:

Đang tải...