Giao diện hiển thị của Auctioneer

Một phần của tài liệu (LUẬN VĂN THẠC SĨ) Mô hình tương tác dựa trên role trong hệ đa agent Luận văn ThS. Công nghệ thông tin 1 01 10 (Trang 102)

4.5.5. Một số khảo sát kết quả

Khảo sát được thực hiện với một số cuộc đấu giá có 5 Bidder khác nhau với số tiền ban đầu khác nhau cùng tìm mua một mặt hàng (Bảng 4.3).

Bidder Số tiền hiện có

Bidder1 100 Bidder2 200 Bidder3 300 Bidder4 400 Bidder5 500

Chúng tôi thực hiện một số thay đổi đối với các tham số chính của cuộc đấu giá nhằm đánh giá mức độ ảnh hưởng của các tham số này đối với kết quả của cuộc đấu giá như thời gian kết thúc, giá bán cuối cùng cũng như Bidder thắng cuộc…

4.5.5.1. Thay đổi tham số

a) Gia số I

Gia số giá I là tỉ lệ phần trăm giá sẽ tăng lên trong mỗi bước giá. Chúng tôi đã thử nghiệm ba cuộc đấu giá khác nhau với các giá trị của I tương ứng là 10%, 20% và 50%. Sau đây là bảng thống kê kết quả thu được của từng phiên đấu giá.

I (%) Lần 10 20 50 Giá Bidder thắng cuộc Giá Bidder thắng cuộc Giá Bidder thắng cuộc

1 100 Bidder1 100,00 Bidder1 100 Bidder2

2 110 Bidder5 120,00 Bidder2 150 Bidder4

3 121 Bidder3 144,00 Bidder5 225 Bidder3

4 133.1 Bidder2 172,80 Bidder3 337,5 Bidder4

5 146.4 Bidder4 207,36 Bidder4 6 161.05 Bidder5 248,83 Bidder5 7 177.15 Bidder3 298,60 Bidder3 8 194.87 Bidder2 358,32 Bidder4 9 214.35 Bidder4 429,98 Bidder5 10 235.79 Bidder5 11 259.37 Bidder3 12 285.31 Bidder4 13 313.84 Bidder5 14 345.22 Bidder4 15 379.75 Bidder5

Bảng 4.4. Kết quả phiên đấu giá khi thay đổi gia số

Chúng tôi tiến hành đánh giá về số lần chào giá, giá cuối cùng và Bidder thắng cuộc cuối cùng. Qua bảng kết quả trên cho thấy, với I=10%, cuộc đấu giá sẽ kết thúc sau 15 vòng, giá cuối cùng là 379.5, Bidder thắng cuộc cuối cùng là Bidder5. I=20%, cuộc đấu giá sẽ kết thúc sau 9 vòng với giá cuối cùng là 429.98 dành cho Bidder5. Với I=50%, cuộc đấu giá kết thúc chỉ sau 3 vòng với giá cuối cùng là 337.5 dành cho Bidder4. Như vậy, gia số càng lớn thì cuộc đấu giá càng

nhanh kết thúc. Mặt khác, khi gia số lớn, phiên đấu giá có khả năng dừng lại ở mức giá thấp nhiều hơn. Cùng với việc lựa chọn ngẫu nhiên Bidder thắng cuộc nên khơng phải lúc nào Bidder có số tiền lớn nhất cũng là Bidder thắng cuộc cuối cùng.

b) Thời gian chờ giữa các lần trả giá

Cũng với 5 Bidder Agent như trên, với I = 50% cho tất cả các phiên đấu giá, chúng ta thay đổi các tham số TO3 (thời gian chờ giữa các lần bid) và thời gian từng Bidder tham gia vào cuộc đấu giá. Bidder1, Bidder2, Bidder3, Bidder4, Bidder5 không tồn tại trước khi cuộc đấu giá bắt đầu mà sẽ lần lượt tham gia vào phiên đấu giá đang diễn ra cách nhau một khoảng thời gian nhất định. G là khoảng cách tính bằng giây (s) giữa các lần thêm Bidder vào cuộc đấu giá.

TO3(s)

G (s) 1 10 30

0 Bidder4 Bidder4 Bidder5

10 Bidder1 Bidder3 Bidder5

20 Bidder1 Bidder1 Bidder4

40 Bidder1 Bidder1 Bidder1

Bảng 4.5. Kết quả phiên đấu giá khi thay đổi TO3

Qua bảng tổng kết cho thấy, thời gian giữa các lần thêm Bidder ảnh hưởng rất lớn đến kết quả của phiên đấu giá. Nếu tất cả các Bidder được thêm đồng thời (tức khoảng cách G=0) hoặc G<TO3 thì Bidder có số tiền lớn sẽ có cơ hội thắng cuộc nhiều hơn. Ngược lại, nếu khoảng cách G giữa các lần thêm Bidder lớn hơn thời gian chờ đợi giữa các lần trả giá bid (tức G>TO3) thì chỉ có duy nhất Bidder

được thêm đầu tiên là Bidder thắng cuộc. Cuộc đấu giá sẽ kết thúc trước khi các Bidder khác kịp tham gia.

Như vậy, Auctioneer có thể thay đổi các tham số, qua đó điều chỉnh thời gian cuộc đấu giá cũng như ảnh hưởng đến kết quả đấu giá. Nếu gia số giá I càng lớn thì càng bất lợi cho người bán và cơ hội chiến thắng cho những Bidder có số tiền nhỏ cũng tăng lên. Trong khi đó, thời gian chờ giữa các lần trả giá càng lớn thì khả năng

bán được hàng với giá cao sẽ tăng lên, nhờ đó đem lại lợi nhuận cao hơn cho người bán. Dựa vào mục đích phục vụ của hệ thống là người mua hay người bán, Auctioneer có thể thay đổi các tham số cho phù hợp.

4.5.5.2. Đấu giá song song

Trên thực tế, có thể xảy ra việc nhiều cuộc đấu giá diễn ra cùng lúc và rao bán cùng một mặt hàng. Chúng tôi đã tiến hành thử nghiệm ba cuộc đấu giá diễn ra gần như đồng thời với cùng một mặt hàng là computer và các tham số đấu giá cũng hồn tồn giống nhau:

Hình 4.21. Giao diện thiết đặt thơng số cho ba phiên đấu giá song song.

Với cùng 5 Bidder ở trên tồn tại đồng thời, chúng ta sẽ xem xét kết quả của ba cuộc đấu giá sau 3 lần thực hiện khác nhau:

Lần 1:

Cuộc đấu giá 1 Cuộc đấu giá 2 Cuộc đấu giá 3 Agent thắng cuộc Bidder3 Bidder5 Bidder4

Giá cuối cùng 225 337.5 225

Lần 2:

Cuộc đấu giá 1 Cuộc đấu giá 2 Cuộc đấu giá 3 Agent thắng cuộc Bidder3 Bidder5 Bidder1

Lần 3:

Cuộc đấu giá 1 Cuộc đấu giá 2 Cuộc đấu giá 3 Agent thắng cuộc Bidder5 Bidder3 Bidder4

Giá cuối cùng 225 225 225

Bảng 4.6. Kết quả ba phiên đấu giá đồng thời

Qua kết quả thử nghiệm trong bảng 4.6, chúng tôi nhận thấy rằng khi có nhiều phiên đấu giá diễn ra cùng lúc, kết quả của từng phiên phụ thuộc vào những Bidder tham gia vào cuộc đấu giá. Do Bidder chọn các cuộc đấu giá đích một cách ngẫu nhiên nên kết quả thu được khơng theo bất kỳ quy luật nào. Có thể các phiên đấu giá cùng sản phẩm, cùng giá sàn, cùng các tham số khác nhưng giá cuối cùng có thể rất cao nhưng cũng có thể chỉ đúng bằng giá sàn. Do vậy, việc tính tốn để có lợi cho một Bidder hay Seller nào đó là rất khó khăn. Điều này giúp đảm bảo tính cơng bằng trong các phiên đấu giá.

4.6. Đánh giá

4.6.1. Đánh giá hệ thống thử nghiệm

Sau khi chạy thử nghiệm hệ thống đấu giá được phát triển theo phương pháp BRAIN, chúng tôi nhận thấy hệ thống đạt được một số kết quả sau đây:

 Thương lượng đấu giá đã được thực hiện một cách tự động giữa các agent mà không cần bất kỳ sự can thiệp nào của người dùng. Người dùng chỉ cần cung cấp các thông tin đầu vào và nhận kết quả thông qua các giao diện thân thiện. Người dùng hồn tịan thốt ly khỏi việc tính tốn trả giá, chào giá…

 Người dùng có thể chọn khởi tạo agent và chọn đảm nhận role một cách dễ dàng. Role được tự động giải phóng khi hoàn thành nhiệm vụ. Quá trình đảm nhận và giải phóng role là hồn tồn trong suốt đối với người dùng.

 Người điều khiển đấu giá có thể điều chỉnh các tham số cho phù hợp với đối tượng người dùng mà hệ thống hướng tới. Gia số giá I càng lớn thì

càng khơng có lợi cho người bán. Ngược lại, thời gian chờ đợi giữa càng lần trả giá càng dài thì cơ hội bán được giá cao càng lớn. Do đó, nếu hệ thống nhằm phục vụ lợi ích của người bán thì Auctioneer có thể để gia số I nhỏ và thời gian chờ giữa các lần trả giá lớn.

 Hệ thống hoạt động ổn định, không chiếm nhiều tài nguyên hệ thống nhờ chọn sử dụng cơ sở tương tác Rolesystem là bản cài đặt gọn nhẹ của các tác giả BRAIN.

 Khơng có bất kỳ ảnh hưởng nào tới kết quả cuộc đấu giá khi các agent ở các Container khác nhau hay ở cùng một Container của platform. Đây có thể coi là một minh chứng cho sự di chuyển nhanh, gọn của agent giữa các vị trí khác nhau.

4.6.2. Đánh giá phương pháp BRAIN

Qua nghiên cứu và cài đặt một hệ thống đấu giá thực nghiệm theo phương pháp BRAIN, chúng tơi nhận thấy phương pháp này có một số ưu điểm so với các phương pháp khác.

a) So sánh với phương pháp hướng đối tượng

Phương pháp BRAIN có một số điểm ưu việt so với phương pháp hướng đối tượng sau đây:

 Phương pháp hướng đối tượng thường sử dụng mơ hình tương tác giữa các đối tượng là mơ hình truyền thơng điệp dưới dạng các lời gọi thủ tục. Tức là tương tác giữa các đối tượng xảy ra khi một đối tượng gọi thực hiện một phương thức của một đối tượng khác và giá trị trả về của thủ tục này được coi là hồi đáp của đối tượng nhận cho đối tượng gửi. Ví dụ, phương thức

public Situation bid(int price, Agent sender) {

// if the bid is more than or equal to the proposed price if (price.getAmount() >= proposed.getAmount()) // record the bid

reached = price; // and the bidder agent

winnBidder = sender;

// return the situation with the current winner return new Situation(winnBidder);

}

Theo cách này, giá trị trả về của phương thức bid của Bidder là tình trạng cuộc đấu giá hiện thời với Bidder thắng cuộc chính là Bidder gửi. Điều này chỉ đúng với Bidder trả giá đầu tiên. Những Bidder trả giá sau đó sẽ khơng thể là Bidder thắng cuộc. Vì vậy, kết quả trả về như trong đoạn mã trên là khơng chính xác. Trong khi đó, đối với phương pháp BRAIN, tương tác này được cài đặt bằng 3 hành động khác nhau bid, askSituation và notifySituation. Sau khi nhận được hành động bid, Auctioneer không hồi

đáp kết quả ngay mà chờ cho đến khi nhận được từ Bidder sự kiện

askSituation mới thực hiện hành động notifySituation để thơng báo tình trạng hiện thời. Do đó, kết quả mà Bidder nhận được là hồn tồn chính xác.

 Tương tác trong các phương pháp hướng đối tượng được thực hiện bằng cách đối tượng này gọi thủ tục của đối tượng khác, kết quả trả về được coi là hồi đáp của bên nhận nên mọi tình huống và cách thức xử lý các tình huống đó đều phải được xác định rõ ràng ở pha thiết kế. Do đó, tương tác sẽ khơng phản ánh được tính tự chủ, phản ứng và linh động của agent.

 Việc tất cả các phương thức phải được cài đặt với quyền truy cập công cộng (public) và được gọi bởi các đối tượng khác sẽ làm cho tính bảo mật của hệ thống giảm đi. Với phương pháp BRAIN, mọi tương tác đều được xử lý ngầm bởi Server agent nhờ đó hệ thống được bảo mật tốt hơn.

b) So sánh với các phương pháp hướng agent không sử dụng role

Đối với các phương pháp không sử dụng role, các phương pháp dựa trên role nói chung và phương pháp BRAIN nói riêng thể hiện một số ưu điểm sau đây:

 Tương tác dựa trên role tạo nên sự độc lập tương đối giữa các agent. Đối với phương pháp BRAIN, tương tác giữa các agent thuần túy thông qua việc trao đổi các sự kiện mà khơng có bất kỳ mối liên quan nào khác. Hành động của agent này được hồi đáp bằng một hành động khác thông qua sự phiên dịch của Server agent nên giữa các role agent có sự độc lập tương đối.

 Với các hệ thống không sử dụng role, mọi khả năng của một agent đều phải được cài đặt trong bản thân agent đó. Một agent Bidder sẽ phải bao gồm cả các tính năng thơng thường như tìm kiếm, di chuyển, đăng nhập…cũng như các tính năng thương mại như trả giá, thanh tốn…Chính điều này đã làm cho các agent trở nên cồng kềnh, khó khăn trong việc di chuyển giữa các vị trí. Trong khi đó, với các phương pháp sử dụng role, để cài đặt một agent đảm nhiệm chức năng Bidder, các tính năng thương mại sẽ được bao gói tồn bộ trong role Bidder, các tính năng thơng thường được cài đặt trong agent. Khi di chuyển giữa các vị trí, chỉ có agent gốc di chuyển, nhờ đó dễ dàng hơn.

 Trong phương pháp không sử dụng role, mỗi agent bao gồm nhiều phương thức liên quan đến nhiều agent khác. Do đó, rất khó để sử dụng lại một phần của hệ thống. Trong khi đó, chúng ta hồn tồn có thể sử dụng lại một số role đã phát triển hoàn thiện cho các ứng dụng khác trong phương pháp BRAIN. Việc tích hợp các role này vào hệ thống khác cũng đơn giản hơn nhờ tài liệu đặc tả XRole.

KẾT LUẬN

Nhằm mục đích phát triển việc sử dụng role trong kỹ nghệ phần mềm hướng agent, luận văn này đã tập trung nghiên cứu các vấn đề sau đây:

Tương tác trong hệ phần mềm: Các thành phần trong hệ phần mềm luôn

phụ thuộc lẫn nhau. Tương tác là phương thức thực hiện cộng tác giữa các thành phần do đó tương tác đóng vai trị quan trọng trong hoạt động của hệ thống. Tương tác đa agent không đơn thuần là truyền thông điệp giữa hai bên như tương tác hướng đối tượng mà là tương tác chủ động, nhiều chiều, có tính lan truyền, khó đốn trước và đã phần nào mang tính xã hội.

Role trong phát triển phần mềm: Khái niệm role được sử dụng trong phát

triển phần mềm đã đem lại nhiều lợi ích như tăng tính tổng quát, tính sử dụng lại của phần mềm và đặc biệt là phân tách các vấn đề về tương tác với các vấn đề về thuật tốn. Sự phân tách này giúp q trình phát triển hệ đa agent dễ dàng hơn bởi người cài đặt agent và role gần như làm việc độc lập nhau. Khảo sát các mơ hình dựa trên role cho thấy nhiều mơ hình chỉ tập trung vào một pha trong quy trình phát triển phần mềm, gây nên sự manh mún trong giải pháp. BRAIN là một trong số ít mơ hình hỗ trợ việc áp dụng role vào nhiều pha của vòng đời phát triển phần mềm. Khung BRAIN cung cấp một mơ hình role và tương tác dựa trên role khá đơn giản. Mơ hình role dưới dạng tập hợp các hành động và sự kiện; tương tác là khi một Agent thực hiện một hành động, hành động đó được dịch thành sự kiện và chuyển đến Agent nhận. Tập kí hiệu XRole dựa trên XML được coi là một trong những ưu điểm của BRAIN so với các phương pháp khác. Các tài liệu đặc tả role bằng XRole có thể được sử dụng ở nhiều pha như phân tích, thiết kế và cài đặt, do đó tạo tính thống nhất, tương thích và linh động cho quá trình phát triển. Hai bản cài đặt cơ sở tương tác khác nhau

RoleSystem, RoleX hoạt động trên các platform khác nhau cho thấy tính linh động cao của khung BRAIN.

Cài đặt thực nghiệm hệ thống đấu giá theo phương pháp BRAIN: Hệ thống

đấu giá là hệ thống có tương tác phức tạp. Thương lượng đấu giá được xem là một trong những loại tương tác phản ánh đầy đủ nhất các đặc tính của tương tác đa agent. Việc cài đặt hệ thống đấu giá tập trung vào đặc tả các role chính Bidder, Seller và Auctioneer bằng tập kí hiệu XRole của khung BRAIN. Sau đó, sử dụng các đặc tả này để xác định các hành động, sự kiện của các role đồng thời chuyển sang mã nguồn Java để hỗ trợ pha cài đặt. Bước phát triển sau cùng là hoàn thiện cài đặt hệ thống đấu giá bằng ngôn ngữ Java trên nền Jade.

 Khảo sát kết quả hoạt động đấu giá của hệ thống. Hệ thống hoạt động ổn định, đảm bảo về mặt thời gian và tài nguyên hệ thống. Quá trình đấu giá diễn ra tự động và cho kết quả hợp lý. Qua đó, phương pháp BRAIN thể hiện nhiều ưu điểm so với phương pháp khác.

Hướng phát triển trong tương lai

Luận văn nghiên cứu tổng quan các mơ hình tương tác dựa trên role và tập trung vào phương pháp BRAIN. Bản thân BRAIN không tránh khỏi những hạn chế như chưa chú trọng đến tính bảo mật, chưa hỗ trợ tồn bộ quá trình phát triển phần mềm…Một số hướng phát triển sau đây sẽ được chúng tôi tập trung nghiên cứu trong thời gian tới:

 Vấn đề sử dụng mơ hình role cho nhiều loại tương tác khác nhau, không chỉ dừng lại ở thương lượng đấu giá mà còn mở rộng đối với thương lượng song phương với cách thức thương lượng phức tạp hơn, liên quan đến nhiều thuộc tính hơn như màu sắc, kích thước, chất lượng…

 Áp dụng phương pháp BRAIN, đặc biệt là sử dụng nền tương tác RoleX

Một phần của tài liệu (LUẬN VĂN THẠC SĨ) Mô hình tương tác dựa trên role trong hệ đa agent Luận văn ThS. Công nghệ thông tin 1 01 10 (Trang 102)

Tải bản đầy đủ (PDF)

(118 trang)