Ứng dụng Công nghệ phần mềm hướng tác tử trong Thương mại điện tử (Phần 3)

Ở các phần trước, chúng ta đã có nền tảng cho việc xây dựng một mô hình đàm phán trong Thương mại điện tử. Tiếp theo Phần 3, tôi sẽ thực hiện thiết kế hệ thống và cài đặt thử nghiệm một mô hình đàm phán đơn giản mà bản thân đã thực hiện được. Các bài viết trước có thể tìm thấy tại: https://viblo.asia/dang.thi.my.dung/posts/gDVK2WpeZLj

Phần 3: Thiết kế và cài đặt thử nghiệm hệ thống đa tác tử hỗ trợ đàm phán trong thương mại điện tử

1. Thiết kế hệ thống

Cũng như hướng tiếp cận của các công nghệ phần mềm khác, công nghệ phần mềm hướng tác tử đã chỉ ra các vấn đề cần khám phá là khả năng mở rộng UML để hỗ trợ các khái niệm tác tử cơ bản như tác tử, ontology và các giao thức tương tác.

1.1. Use-case Diagram

Với kiến trúc thị trường điện tử và kỹ thuật đàm phán đã được trình bày ở mục 5, phần 2, tôi thiết kế một hệ thống đa tác tử hỗ trợ đàm phán cụ thể hơn, bao gồm 4 loại tác tử: agent giao diện, agent trung gian, agent tác vụ mua và agent tác vụ bán.

1.2. Sequense Diagram

  • Biểu đồ tuần tự của một Agent mua trong hệ thống
  • Biểu đồ tuần tự của một Agent bán trong hệ thống
  • Biểu đồ tuần tự quá trình đàm phán tay đôi giữa một Agent mua và một Agent bán

1.3. Activity Diagram

Hoạt động của một Agent tác vụ nói chung trong hệ thống đàm phán được mô tả như sau: Như vậy, hệ thống đa tác tử hỗ trợ đàm phán trong TMĐT trên Internet sẽ được xây dựng dựa trên mô hình đã phát triển ở trên đây.

2. Cài đặt thử nghiệm mô hình đàm phán

Với mô hình và hệ thống cùng với các kỹ thuật đàm phán đã xây dựng, tôi tiến hành cài đặt thử nghiệm một thị trường điện tử trên nền tảng JADE. JADE (Java Agent Development Framework) là một framework phần mềm cho hệ thống đa agent viết hoàn toàn bằng Java và được phát triển từ cuối năm 2001. JADE cho phép sự kết hợp giữa nhiều agent tuân thủ theo chuẩn FIPA và sử dụng ngôn ngữ giao tiếp theo chuẩn FIPA-ACL.

2.1. Giới thiệu về nền tảng JADE

Jade là một nền tảng cho hoạt động của các agent, nó hỗ trợ:

  • Là một nền tảng cho hệ phân tán của agent theo chuẩn FIPA, nó có tính di động, bảo mật và nhiều các tính năng khác.
  • Giao diện người dùng của ứng dụng Java
  • Là thư viện của các giao thức tương tác FIPA, được cung cấp sẵn, hỗ trợ giao tiếp của các agent trên những nền tảng giống hoặc khác nhau
  • Có giao diện đồ họa người dùng để quản lý các agent
  • Có sẵn tại http://jade.tilab.com/

Giao diện người dùng khi khởi động JADE Platform:

2.2. Cấu trúc và yêu cầu của thị trường

  • Các agent hoạt động trong thị trường buôn bán sách trực tuyến.
  • Các công ty hay người dùng cá nhân có thể gửi các yêu cầu mua bán hàng vào thị trường. Điều kiện mua bán bao gồm hai vấn đề: giá cả và thời gian giao hàng.
  • Bên mua mong muốn đạt được thỏa thuận với giá sách rẻ nhất và thời gian giao hàng nhanh nhất; ngược lại, bên bán muốn bán được với giá cao và thời gian giao hàng càng lâu càng tốt.

Để hạn chế thời gian về quá trình nhập liệu cũng như cài đặt các agent giao diện, thông tin mua và bán sách của những người dùng tham gia vào thị trường được lưu trữ trong file “Agent.txt” với cấu trúc như sau:

loại tác vụ (bán/mua): Tên người dùng book: Tên sách giá thấp nhất – giá cao nhất – trọng số về vấn đề giá cả–thời gian giao hàng nhanh nhất – thời gian giao hàng chậm nhất – trọng số về vấn đề thời gian giao hàng – số lượng hàng tồn kho/số lượng hàng cần mua

Ví dụ:

seller: FAHASA book: Steve Job Life 10 20 70 3 5 30 10 book: Multi-agent system 15 30 65 5 10 35 50

Bên bán FAHASA muốn bán 2 loại sách:

  • Steve Job Life với khoảng giá cả chấp nhận là 10$-20$, trọng số về vấn đề giá cả là 70%, thời gian giao hàng trong khoảng từ 3-5 ngày, trọng số về vấn đề thời gian giao hàng là 30%, số lượng hàng còn tồn kho của loại sách này là 10 quyển.
  • Multi-agent systemvới khoảng giá cả chấp nhận là 15$-30$, trọng số về vấn đề giá cả là 65%, thời gian giao hàng trong khoảng từ 5-10 ngày, trọng số về vấn đề thời gian giao hàng là 35%, số lượng hàng còn tồn kho của agent này là 10 quyển.

Trong thị trường bao gồm 4 agent như sau:

Sau khi có được thông tin mua và bán thì hệ thống tạo ra ba agent bán có tên là FAHASA, PHUONG NAM, DA NANG với những thông tin bán hàng nêu trên và một agent mua có tên là DUNG với tên sách là Steve Job Life.

Vì chỉ có 2 agent bán FAHASA và PHUONG NAM có bán quyển sách Steve Job Life nên quá trình đàm phán được thực hiện giữa một agent mua DUNG và hai agent bán FAHASA và PHUONG NAM về giá cả và thời gian giao hàng đối với quyển sách “Steve Job Life”. Các agent được cung cấp thông tin như sau:

Thuật toán đàm phán của agent mua trong lớp BuyerAgentBehavior.java Thông tin và kết quả của quá trình đàm phán được hiển thị trên tab Console của Project “Multi-Agent NEGOTIATION” trong Java – Eclipse Qua quá trình đàm phán Agent mua DUNG đã mua được quyển sách “Steve Job Life” từ Agent bán PHUONG NAM với giá cả và thời gian giao hàng tốt nhất.

Toàn bộ phần tìm hiểu và trình bày của các bài viết trên đây còn khá đơn giản so với quá trình đàm phán diễn ra trong thị trường thực tế. Tuy nhiên cũng cung cấp cho riêng bản thân tôi một khối lượng kiến thức nhất định. Nếu có điều kiện tôi sẽ tiếp tục tìm hiểu và phát triển nó nhiều hơn.