Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 30 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
30
Dung lượng
1,52 MB
Nội dung
CHƢƠNG 1.1 GIỚI THIỆU Bối cảnh nghiên cứu Tái sử dụng thành phần xem phươngpháp phát triển nhanh phần mềm có nhiều ưu điểm sử dụng rộng rãi Kiến trúc hướng dịchvụ (SOA) kiến trúc phần mềm giúp xây dựng hệ thống CNTT thơng qua thành phần đóng gói dạng dịchvụ Do vậy, nói phươngpháp phát triển phần mềm dựa tái sử dụng áp dụng SOA DịchvụWebdịchvụ mà chúng hoạt động giao tiếp thông qua môi trường mạng, sử dụng giao thứcWeb Một dịchvụWeb cung cấp hoàn chỉnh chức Tuy nhiên, dịchvụ đơn lẻ khó đáp ứng yêu cầu người dùng Do đó, tổhợpdịchvụWeb (Web Services Composition – WSC) vấn đề quan trọng SOA Ngoài ràng buộc chức năng, người dùng quan tâm đến ràng buộc chất lượng dịchvụ (Quality of Service – QoS) thứ tự kếthợpdịch vụ, gọi ràng buộc quan hệ thời gian Bàitoántổhợp nói chungtổhợpdịchvụWeb nói riêng tốn có độ phức tạp hàm mũ, làm bùng nổ không gian trạng thái tổ hợp, điều đặc biệt nghiêm trọng kích thước kho liệu tăng lên Để giảm độ phức tạp tính tốn, cần sàng lọc dịchvụ ứng viên bước tổhợp kỹ thuật khaipháliệu gom cụm liệu Ngoài ra, để tổhợp thỏa loại ràng buộc khác phươngpháphình thức, mà cụ thể kiểm tra mơ hình cần áp dụng, phươngpháp truyền thống lập kế hoạch kiểm tra ràng buộc 1.2 Phát biểu vấn đề Luận án nêu lên toán cần phải giải phát triển phươngphápkếthợp việc sử dụng phươngpháphìnhthức với kỹ thuật khaipháliệu để giải toántổhợpkiểmchứngkếttổhợpdịchvụWeb 1.3 Câu hỏi nghiên cứu Để thực nghiên cứu này, luận án phải giải trả lời câu hỏi sau: [RQ1] Đã có khung thức hay công cụ tổng quát cho việc tổhợp thành phần phần mềm nói chungtổhợpdịchvụWeb nói riêng hay chưa? Khung thức phải bao hàm bước: đặc tả thành phần, tổhợp đáp ứng loại ràng buộc khác làm việc tốt với kho thành phần quy mô lớn [RQ2] Làm để đặc tả hìnhthứcchodịchvụ Web? Việc đặc tả hìnhthức giúp cho trình tổhợpthựcphươngphápkiểm tra mơ hình Đồng thời đặc tả hìnhthức giúp đảm bảo tính đầy đủ áp dụng kỹ thuật khaipháliệu để truy xuất dịchvụ [RQ3] Tổhợp xem toán NP-hard làm bùng nổ không gian trạng thái Vậy làm cách để kiểm soát vấn đề bùng nổ khơng gian trạng thái đảm bảo tính đầy đủkếttổ hợp? 1.4 Mục tiêu nghiên cứu Mục tiêu luận án giải ba câu hỏi nghiên cứu đề ra, cụ thể là: [OB1] Đưa khung thức tổng quát cho việc tổhợp thành phần phần mềm nói chungtổhợpdịchvụWeb nói riêng [OB2] Đưa phươngpháp đặc tả hìnhthứcchodịchvụWeb xây dựng mơ hìnhcho thư viện dịchvụ Đặc tả phải phù hợp với kỹ thuật kiểm tra mơ hình biến đổi để áp dụng khaipháliệu [OB3] Kiểm sốt vấn đề bùng nổ khơng gian trạng thái toántổhợp Để đạt mục tiêu này, phải kếthợpphươngpháp gom cụm liệu áp dụng tìm kiếm heuristic trình tổhợp 1.5 Những đóng góp nghiên cứu Các đóng góp luận án tóm tắt sau: i Luận án đề xuất khung thức tổng quát chotoántổhợp tái sử dụng thành phần phần mềm nói chungdịchvụWeb nói riêng cách tự động Các cơng bố liên quan đến đóng góp [CT4], [CT6] [CT10] ii Luận án đề xuất cách đặc tả hìnhthứcchodịchvụWeb mơ hình hóa thư viện dịchvụ dạng mơ hình LTS4WS Do đó, việc tổhợpkiểmchứngthực theo phươngphápkiểm tra mơ hình Đóng góp trình bày [CT5], [CT7] iii Luận án đưa giải phápkiểm sốt vấn đề bùng nổ khơng gian trạng thái toántổhợp cách áp dụng phươngpháp tìm kiếm heuristic lập mục dựa bit Các cơng trình liên quan gồm [CT1], [CT7], [CT9], [CT12] iv Luận án đưa phươngpháp gom cụm dịchvụWeb dựa luận lý nhằm hỗ trợ truy xuất dịchvụ cần cho q trình tổhợp Đóng góp trình bày cơng trình [CT2], [CT3], [CT11] v Cuối cùng, luận án xây dựng công cụ hoàn chỉnh tên WSCOVER cho việc tổhợpkiểmchứngdịchvụWeb tự động Công bố liên quan đến công cụ WSCOVER [CT8], [CT10] 1.6 Bố cục luận án Luận án chia thành chương Chƣơng trình bày bối cảnh nghiên cứu, đặt vấn đề, câu hỏi nghiên cứu, mục tiêu nghiên cứu, đóng góp chính, bố luận án Chƣơng trình bày tổng quan tình hình nghiên cứu kiến thức tảng làm tiền đề cho công việc luận án Chƣơng trình bày khung thức tổng qt cho tốn tổhợp thành phần phần mềm cách tự động Chƣơng trình bày phươngpháptổhợpkiểmchứng việc tổhợpdịchvụWebphươngphápkiểm tra mơ hình thơng qua việc đặc tả hìnhthứcchodịchvụ mơ hình hóa thư viện dịchvụ dạng mơ hình LTS4WS Chƣơng trình bày phươngphápkiểm sốt vấn đề bùng nổ không gian trạng thái tốn tổ hợp, gồm có phươngpháp tìm kiếm dựa heuristic kỹ thuật lập mục dựa bit nhị phân Chƣơng trình bày phươngpháp gom cụm dịchvụWeb dựa luận lý Chương đưa cách tính độ tương tự dịchvụ dựa độ tương tự biểu thức luận lý phươngpháp gom cụm kiểm sốt chất lượng Chƣơng trình bày cơng cụ WSCOVER Đây cơng cụ thực hóa tất lý thuyết trình bày luận án Chƣơng trình bày kết luận định hướng nghiên cứu mở rộng luận án CHƢƠNG 2.1 TÌNH HÌNH NGHIÊN CỨU VÀ KIẾN THỨC NỀN TẢNG Tình hình nghiên cứu 2.1.1 TổhợpdịchvụWeb Rostami phân phươngpháptổhợpdịchvụWeb thành bốn nhóm sau: Phươngpháptổhợp tĩnh thủ công: W Dong cộng sử dụng lưu đồ công việc để tổhợpdịchvụWeb Hamadi Benatallah đề xuất cấu trúc đại số dựa Petri Net việc tổhợpthực Petri Net Phươngpháptổhợp tĩnh bán tự động: R Wang cộng trình bày chế đề xuất dịchvụcho tác vụ L A Cotfas cộng đưa cách tiếp cận phân đoạn, chia nhỏ yêu cầu tổhợp chọn dịchvụcho tác vụ sau phân chia Phươngpháptổhợp tĩnh tự động: PORSCE II khung thứctổhợpdịchvụWeb tự động sử dụng kỹ thuật lập kế hoạch M AllamehAmiri cộng đề xuất cách tiếp cận tổhợpdịchvụWeb tự động cách áp dụng giải thuật di truyền Phươngpháptổhợp tự động thực động lúc chạy: T H Tan cộng đề xuất cách khôi phục tổhợpdịchvụWeb động dựa lược đồ cách tổhợp mô tả ngôn ngữ BPEL A K Tripathy cộng đề xuất phươngpháp gom cụm lựa chọn dịchvụWeb để tổhợp động dựa đồ thị tác vụ 2.1.2 Kiểmchứng việc tổhợpdịchvụWebKiểmchứng yêu cầu chức năng: H Foster cộng kiểmchứngtổhợpdịchvụ dựa mơ hình LTS Y Qian cộng chuyển tổhợpdịchvụ thành dạng automat thời gian sử dụng công cụ UPPAAL để kiểm tra Kiểmchứng yêu cầu phi chức năng: S Koizumi K Koyama kiểm tra thuộc tính thời gian mơ hình Timed Petri Net C K Fung cộng đề xuất mơ hình theo dõi thơng điệp để kiểm tra thuộc tính QoS tổhợpKiểmchứngkết hợp: H Xiao cộng kiểmchứngtổhợp dựa việc mô thuộc tính phi chức dịchvụ M Chen cộng thựckiểmchứng dựa mô hình LTS dùng LTL để biểu diễn yêu cầu 2.1.3 Nhận xét nghiên cứu có – Chưa có nghiên cứu thực việc tổhợpkiểmchứng lúc – Việc kiểmchứngthực từ lược đồ tổhợp sẳn có khó tích hợpkiểmchứng loại ràng buộc khác – Các nghiên cứu chưa đưa dạng đặc tả tổng quát, phù hợpchodịchvụWeb mà sử dụng dạng trung gian sẳn có BPEL, LTS, … – Các nghiên cứu nêu phươngpháp xử lý cho vấn đề cụ thể mà chưa có kếthợp để tạo thành nghiên cứu toàn diện, tổng thể – Các nghiên cứu chưa giải vấn đề bùng nổ trạng thái toántổhợp áp dụng tổhợp kho dịchvụ có kích thước lớn 2.2 2.2.1 Kiến thức tảng Các phươngpháphìnhthức Các phươngpháphìnhthứcphươngpháp sử dụng cho việc đặc tả kiểmchứng hay kiểm tra (verifying) hệ thống Đặc tả hìnhthức đặc tả biểu diễn ngơn ngữ hình thức, với từ vựng, cú pháp ngữ nghĩa định nghĩa dựa khái niệm toán học lý thuyết tập hợp, luận lý tốn học đại số Kiểm tra hìnhthức trình kiểm tra xem thiết kế hệ thống có thoả mãn số ràng buộc thuộc tính hệ thống hay khơng Kiểm tra hìnhthức chia làm hai nhánh kiểm tra mơ hìnhchứng minh định lý Kiểm tra mơ hình kỹ thuật kiểm tra xem thuộc tính mong muốn có thỏa mơ hình hệ thống hay khơng Điều kiện cần kiểm tra đặc tả luận lý thời gian luận lý thời gian tuyến tính (LTL) Chứng minh định lý trình tìm chứng minh khẳng định thuộc tính suy luận từ tập tiên đề (thông qua tập luật suy diễn) 2.2.2 Khaipháliệu Giới thiệu khaipháliệuKhaipháliệu phần trình khám phá tri thức, nhằm mục đích trích xuất thông tin từ tập liệu lớn chuyển chúng thành cấu trúc hiểu cho mục đích sử dụng sau Khaipháliệu bao gồm vấn đề phân loại liệu, gom cụm liệukhaiphá luật kếthợp Trong đó, gom cụm liệu sử dụng rộng rãi, lĩnh vực Big Data Giới thiệu phân tích gom cụm liệu Phân tích gom cụm (hay gọi đơn giản gom cụm) kỹ thuật phân tích, thăm dò liệu nhằm phân loại đối tượng liệu thành nhóm, hay cụm, khám phá kiến thức tiềm ẩn từ cụm Các phươngpháp gom cụm liệu – Phươngpháp gom cụm theo cách phân hoạch gồm phươngpháp kmeans k-medoids với giải thuật PAM, CLARA – Phươngpháp gom cụm theo cách phân cấp có hai cách tiếp cận từ lên từ xuống với giải thuật HAC, CURE, ROCK, Chameleon – Phươngpháp gom cụm dựa mật độ gồm giải thuật tiêu biểu DBSCAN, DENCLUE – Các phươngpháp khác: gom cụm dựa lưới, dựa mơ hình, dựa mạng nơ ron nhân tạo, dựa giải thuật tiến hóa gom cụm mờ 2.2.3 Tìm kiếm dựa heuristic Giới thiệu tìm kiếm dựa heuristic giải thuật A* Heuristic tốn tìm kiếm ước lượng chi phí lại từ trạng thái hành đến trạng thái đích Chi phí dùng để đánh giá lựa chọn trạng thái triển vọng để chuyển đến số trạng thái chuyển tiếp Tổng chi phí giải pháp mà qua trạng thái u là: f(u) = g(u) + h(u) Giải thuật tìm kiếm heuristic bật giải thuật A* Để đánh giá kết tìm kiếm, A* sử dụng hàm tính chi phí cơng thức (2.1) Một số ứng dụng tìm kiếm heuristic - Bài tốn lập kế hoạch - Kiểm tra hệ thống tự động (Automated System Verification) Các tốn lập kế hoạch giải thơng qua tốn kiểm tra mơ hình Giả sử cần lập kế hoạch thỏa mãn điều kiện g, kết việc lập kế hoạch phản ví dụthựckiểm tra mơ hình hệ thống với thuộc tính cần kiểm tra biểu diễn dạng biểu thức LTL f=G(¬g) CHƢƠNG KHUNG THỨC TỔNG QUÁT TỔHỢP THÀNH PHẦN PHẦN MỀM TỰ ĐỘNG Đặc tả hìnhthức tổng quát cho thành phần phần mềm 3.1 3.1.1 Đặc tả thành phần dựa luận lý bậc Luận lý bậc (FOL) hay luận lý vị từ ngơn ngữ hình thức, dạng mở rộng luận lý mệnh đề với việc bổ sung vị từ, lượng từ biến Do đó, FOL cho phép biểu diễn tri thức linh hoạt nhỏ gọn Trong khung thức đề xuất, sử dụng FOL để đặc tả thành phần phần mềm Một thành phần phần mềm xem hộp đen gồm thành phần sau: Name định danh thành phần Thẻ input chứa danh sách tham số đầu vào kèm theo kiểu liệuchúng Thẻ output chứa danh sách tham số đầu kèm theo kiểu liệuchúng Thẻ pre chứa biểu thức FOL mô tả tiền điều kiện thành phần Thẻ post chứa biểu thức FOL mô tả tác động sau sử dụng thành phần 3.1.2 Tính độ tương tự thành phần dựa luận lý bậc Gọi Γ tập biểu thức FOL, T = {t1, , tm} tập ký hiệu (symbol) mệnh đề (term) Γ, c, p hai biểu thức FOL Γ Định nghĩa 3-1 (Ma trận đặc trưng) Ma trận đặc trưng Φ ánh xạ * + * +, với: ( ) { Định nghĩa 3-2 (Vector đặc trưng) Cho ma trận đặc trưng Φ, gọi φc vector đặc trưng biểu thức c∈Γ, φc có m thành phần, thành phần định nghĩa: =1 Φ(c,i) = Định nghĩa 3-3 (Hàm phân loại) Với biểu thức p Γ, hàm phân loại (Cp(.)) cho biểu thức định nghĩa sau: Cp( ): Hàm phân loại Cp(c) dùng để đo mức độ phù hợp thành phần p so với yêu cầu c Để tính Cp(c), tính góc lệch hai vector đại diện hai biểu thức này, áp dụng phươngpháp học máy Naive Bayes 3.2 Khung thứctổhợp thành phần phần mềm tổng quát Hình 3-1 mô tả kiến trúc tổng quát khung thức, với ba thành phần là: Thành phần xử lý giao diện người dùng: Cung cấp giao diện trực quan thân thiện người dùng để người dùng thiết lập yêu cầu nhận kết trả Thành phần xử lý giao diện người dùng Kếttổhợp Model checker/AI Planning Gom cụm/ Mơ hình xác suất/ … Hình 3-1 Kiến trúc tổng quát khung thức Chức tổhợp thành phần: Chức thực cách áp dụng kỹ thuật lập kế hoạch trí tuệ nhân tạo phươngphápkiểm tra mơ hình tùy vào u cầu thực Chức lựa chọn thành phần: Chức hoạt động bước tiền xử lý khung thức, giúp lọc bớt ứng viên cho trình tổhợp Chức lựa chọn thành phần có vai trò quan trọng, ảnh hưởng đến hiệu suất 10 ( ) ( ) ( ) đó: G1(n) hàm tính thực dựa thuộc tính chức dịchvụ G2(n) hàm tính thực chi phí ước lượng dựa thuộc tính QoS trọng số tương ứng, thỏa điều kiện ≤ , , ≤ 1, + = Chi phí thực trải qua dựa thuộc tính chức – G1(n) ( ) với k số bước tổhợp trải qua từ trạng thái khởi đầu đến trạng thái n Chi phí thực trải qua dựa thuộc tính QoS – G2(n) ( ) ∑( ∑ ) đó, trọng số thuộc tính QoS thứ i chi phí thuộc tính chất lượng thứ i trạng thái j Chi phí ước lượng từ trạng thái n đến trạng thái đích – H(n) ( ) ( ( ) ( ( )) ) Trong đó: funcvar(x) tập thuộc tính chức đạt (có giá trị 1) trạng thái x diff(funcvar(goal), funcvar(n)) số lượng thuộc tính chức mà trạng thái n chưa thỏa yêu cầu (goal) 5.2 5.2.1 Lập mục dịchvụWeb dựa bit nhị phân Giới thiệu Tại bước tổ hợp, cần mở rộng khơng gian trạng thái để tính chi phí heuristic Việc mở rộng trạng thái nên xem xét với dịchvụ có liên quan Để biết dịchvụ có liên quan, phần này, đề xuất kỹ thuật lập mục dựa bit nhị phân để lập mục dịchvụWeb 16 5.2.2 Phươngphápthực Các vector nhị phân dịchvụWeb yêu cầu tổhợp Định nghĩa 5-1 (Vector nhị phân tập thuộc tính) Cho S tập có thứ tự thuộc tính, gọi ∈ (S) phần tử thứ i S Khi đó, vector nhị phân tập s S định nghĩa sau: ,- ∈ ( )∈ { Định nghĩa 5-2 (Cặp vector nhị phân dịchvụ Web) Cặp vector nhị phân dịchvụWeb 〈 〉, với vector nhị phân tương ứng tập thuộc tính chức đầu vào (vector đầu vào) đầu (vector đầu ra) dịchvụWeb định nghĩa Định nghĩa 5-1 Tương tự, yêu cầu người dùng thể gồm có hai vector nhị phân, gọi vector cung cấp vector mục tiêu Lập mục dựa bit nhị phân cho tập dịchvụWeb Bảng mục xây dựng dựa vector đầu vào dịchvụ Quá trình trình bày Giải thuật 5-1 Giải thuật 5-1 Xây dựng bảng mục Đầu vào: Một tập gồm có n dịchvụWeb Đầu ra: Bảng mục Bước Xây dựng tập có thứ tự thuộc tính chức – S 1: Xây dựng tập có thứ tự – S từ thuộc tính chức dịchvụ Bước Khởi tạo bảng mục – T 2: for i chạy từ đến S.size() − 3: Tạo vector đơn vị vi với bit thứ i có giá trị 1, bit lại 4: T[i][0] ← vi Bước Cập nhật bảng mục 5: for each dịchvụWeb w kho lưu trữ 6: Xây dựng vector đầu vào – vector đầu – w 7: for i chạy từ đến T.size() − 8: vi ← T[i][0] 9: if vi ̅ ≠ then // ̅ phép toán AND nhị phân 10: T[i][1].add(w) 11: return T 17 Lựa chọn mục lựa chọn dịchvụWeb Định nghĩa 5-3 (So trùng dựa bit nhị phân) Gọi V vector cung cấp mục tiêu hành, Vk vector nhị phân đơn vị đại diện cho mục thứ k Phần tử mục thứ k so trùng với mục tiêu hành nếu: V ̅ Vk = Vk ̅ Với toán tử nhị phân AND Định nghĩa 5-4 (Vector tổ hợp) Gọi V vector cung cấp mục tiêu hành, Wk dịchvụWeb chọn để tổ hợp, vector nhị phân đầu Wk Vector tổhợp Vc vector nhị phân tính theo cơng thức sau: Vc = V Với tốn tử nhị phân OR Thu giảm số lượng dịchvụWeb chọn Định nghĩa 5-5 (Mối quan hệ chứa hai vector nhị phân) Gọi V hai vector nhị phân V chứa vector V nếu: = DịchvụWebtổhợp thỏa mãn mục tiêu Quá trình tổhợp dừng lại vector tổhợp (Vc) chứa vector mục tiêu (Vg), hay: Vc Vg = Vg 5.3 Kếtthực nghiệm Chúng tiến hành thực nghiệm nghiên cứu với tập liệuthực lấy từ dự án OWLS-TC với năm tập liệu trình bày Bảng 4-1 Thực nghiệm tiến hành dựa bốn hướng tiếp cận: tổhợpkiểmchứng dựa lược đồ tổhợp đầy đủ; tổhợpkiểmchúng theo cách on-thefly; tổhợpkiểmchứng theo cách on-the-fly có áp dụng tìm kiếm heuristic; cuối tổhợpkiểmchúng theo cách on-the-fly có áp dụng tìm kiếm heuristic kếthợp lập mục dựa bit nhị phân Kếtthực nghiệm đánh giá theo ba thông số: số trạng thái mở rộng, số trạng thái 18 duyệt thời gian thực thi Kếtthực nghiệm trình bày trực quan Hình 5-1 Tổhợpkiểmchứng dựa lược đồ tổhợp đầy đủ 250,000 200,000 Tổhợpkiểmchứng theo cách on-the-fly 150,000 Tổhợpkiểmchứng theo cách on-the-fly có áp dụng tìm kiếm heuristic 100,000 50,000 TB (20) MS (50) EDS (100) ECS (200) Tổhợpkiểmchứng theo cách on-the-fly có áp dụng tìm kiếm heuristic kếthợp lập mục dựa bit nhị phân (a) Số trạng thái mở rộng 300,000 300,000 200,000 200,000 100,000 100,000 0 TB (20) MS (50) EDS (100) ECS (200) TB (20) MS (50) EDS (100) (b) Số trạng thái duyệt ECS (200) (c) Thời gian xử lý (ms) Hình 5-1 Kết trực quan kiểm sốt bùng nổ không gian trạng thái 19 CHƢƠNG 6.1 GOM CỤM CÁC DỊCHVỤWEB DỰA TRÊN LUẬN LÝ Thí nghiệm động Chúng ta xét hai tình yêu cầu người dùng Bảng 6-1 Kếttổhợp tình cách tiếp cận choHình 61 Bảng 6-1 Các tình đặt chuyến du lịch người dùng Loại ràng buộc Ràng buộc chức năng: (S1) (S2) Giá trị Đầu vào: Dates, Sightseeing Đầu ra: Price, HotelReservation Đầu vào: Dates, Sightseeing Đầu ra: Price, HotelReservation, Weather (a) Mơ hìnhkếttổhợp cách gom cụm truyền thống cho tình S1 (b) Mơ hìnhkếttổhợp cách gom cụm truyền thống cho tình S1 Tình S1 Tình S2 (c) Mơ hìnhkếttổhợp cách gom cụm dựa luận lý cho tình Hình 6-1 Mơ hình khơng gian trạng thái toántổhợpdịchvụWeb 20 Với cách gom cụm truyền thống với yêu cầu, phải chọn cụm xây dựng mơ hình (Hình 6-1(a) Hình 6-1(b)) Kích thước khơng gian trạng thái phụ thuộc vào số cụm chọn Cách tiếp cận gom cụm dựa luận lý xây dựng mơ hình từ tất cụm Việc chọn cụm diễn bước tổhợp dựa vào độ tương tự dựa luận lý yêu cầu với biểu thức đại diện cụm Như vậy, gom cụm xây dựng mơ hình lần cho u cầu Nó tạo khơng gian trạng thái nhỏ cách truyền thống (Hình 6-1(c)) 6.2 Gom cụm dịchvụWeb dựa luận lý 6.2.1 Biểu diễn luận lý dịchvụWeb Định nghĩa ( 6-1 thức (Biểu luận lý dịchvụ Web) Gọi ) dịchvụWeb Định nghĩa 4-1, biểu thức luận lý dịchvụWeb ) định nghĩa (hay sau: ̃ 6.2.2 ̃ ̃ ̃ ̃ ̃ Độ tương tự dịchvụWeb dựa luận lý Độ tương tự dựa đặc trưng Định nghĩa 6-2 (Thành phần giống nhau) Gọi f g hai biểu thức luận lý, thành phần giống ( ) f g định nghĩa sau: * ∈ + * ∈ + Gọi hệ số giống , có: Định nghĩa 6-3 (Thành phần khác biệt) Gọi Thành phần khác biệt ( ) ( Gọi hệ số khác biệt ) hai biểu thức luận lý định nghĩa sau: (* ∈+ * ∈ +) , có: Định nghĩa 6-4 (Độ tương tự dựa đặc trưng) Cho luận lý Độ tương tự dựa đặc trưng sau: 21 và hai biểu thức tính theo công thức ( ) ( ) Độ tương tự dựa luận lý Để tính độ tương tự dựa luận lý, đưa khái niệm xấp xỉ hai biểu thức luận lý Ý tưởng phươngpháp hai biểu thức tương tự xấp xỉ chúng tương tự với hai biểu thức ban đầu Định nghĩa 6-5 (Xấp xỉ hai biểu thức luận lý) Gọi thức luận lý Xấp xỉ Với hai biểu định nghĩa sau: gọi phép toán xấp xỉ Định nghĩa 6-6 (Độ tương tự dựa luận lý hai dịchvụ Web) Gọi hai dịchvụ Web, xấp xỉ , , hai biểu thức luận lý đại diện , độ tương tự dựa luận lý và tính cơng thức sau: ( 6.2.3 ( ) ( ) ) Gom cụm dịchvụWeb dựa luận lý * Định nghĩa 6-7 (Phần tử đại diện cụm) Gọi + cụm biểu thức luận lý đại diện chodịchvụ Web, phần tử đại diện cho cụm , ký hiệu ( ) biểu thức luận lý định nghĩa sau: ( ) Với ( ) phép toán đại diện cho biểu thức Định nghĩa 6-8 (Biểu thức luận lý đại diện cho mục tiêu tổ hợp) Gọi tiêu tổhợp thuộc tính chức mục mơ tả thuộc tính người dùng cung cấp (input) thuộc tính mà người dùng muốn đạt (output) Gọi , tập thuộc tính chức input output tương ứng , biểu thức luận lý đại diện cho ( – ) định nghĩa là: ( ) Với ( ) hàm tạo biểu thức luận lý dạng chuẩn giao từ tập thuộc tính chức định nghĩa Định nghĩa 6-1 22 Gọi hai dịchvụ Web, lượt biểu thức luận lý đại diện chohợp với lần Điều kiện để Định nghĩa 6-9 (Biểu thức luận lý đại diện chotổ hợp) Gọi từ , ký hiệu ● diện chotổhợp Khi đó, Với tổtổhợpkết biểu thức luận lý đại , xây dựng theo công thức sau: gọi phép toántổhợp luận lý Định nghĩa 6-10 (Tổ hợpdịchvụWeb thỏa mục tiêu) Gọi vụWeb mục tiêu người dùng, diện cho Điều kiện để tổhợp , tổhợpdịch biểu thức luận lý đại thỏa mục tiêu , ký hiệu , là: { 6.2.4 Hướng tiếp cận gom cụm kiểm soát chất lượng cụm dịchvụWeb Do kết việc gom cụm ảnh hưởng đến hiệu suất trình tổhợp sau này, nên cần phải có độ đo để đánh chất lượng cụm tạo Trong nghiên cứu này, sử dụng độ đo độ tương tự bên cụm (intra-cluster similarity) để đo độ tương tự phần tử cụm Độ tương tự bên cụm Định nghĩa 6-11 (Độ tương tự bên cụm) Gọi C cụm có m phần tử, độ tương tự bên cụm C (ký hiệu (C)) tính theo cơng thức sau: (C) = ∑ ∑ ( ) ∑ Phươngpháp gom cụm kiểm soát chất lượng Phươngpháp k-means có ưu điểm thời gian gom cụm nhanh lại nhạy cảm với nhiễu đảm bảo chất lượng cụm tạo Ngược lại, phươngpháp HAC tạo kết gom cụm tốt lại có thời gian xử lý chậm với độ phức tạp O(n2) Từ ưu 23 nhược điểm này, đề xuất phươngpháp gom cụm kếthợp hai phươngpháp này, gọi phươngpháp gom cụm kiểm soát chất lượng Ý tưởng phươngpháp là: Ban đầu, k-means sử dụng để gom cụm với số lượng cụm nhỏ Sau đó, HAC áp dụng cụm đạt cụm mong muốn Như vậy, đầu vào HAC phần tử cụm k-means tạo ra, tương đối nhỏ, điều giúp cho HAC chạy nhanh Hình 6-2 trình bày trực quan so sánh phươngpháp HAC, k-means với phươngpháp gom cụm kiểm sốt chất lượng chúng tơi Gom cụm theo HAC Gom cụm theo k-means Gom cụm kiểm sốt chất lượng Hình 6-2 Minh họa chế hoạt động phươngpháp gom cụm 6.3 Kếtthực nghiệm Để kiểmchứng đắn hiệu nghiên cứu, tiến hành thực nghiệm nghiên cứu với tập liệuthực lấy từ dự án OWLS-TC, gồm năm liệu Bảng 4-1 Các kịch thực nghiệm dựa ba hướng tiếp cận: không gom cụm, gom cụm dựa đặc trưng (đề xuất Kumara cộng sự) gom cụm dựa luận lý Thực nghiệm đánh giá theo ba tiêu chí: số trạng thái mở rộng, số trạng thái duyệt thời gian thựcKếtthực nghiệm trình bày trực quan Hình 6-3 24 150,000 Khơng gom cụm 100,000 Gom cụm dựa đặc trưng Gom cụm dựa luận lý 50,000 TB (20) MS (50) EDS (100) ECS (200) (a) Số trạng thái mở rộng 600 30,000 400 20,000 200 10,000 0 TB (20) MS (50) EDS (100) ECS (200) TB (20) MS (50) EDS (100) ECS (200) (b) Số trạng thái duyệt (c) Thời gian xử lý (ms) Hình 6-3 So sánh trực quan hiệu suất tổhợp với trường hợp gom cụm CHƢƠNG CÔNG CỤ TỔHỢPVÀKIỂMCHỨNGTỔHỢPDỊCHVỤWEB TỰ ĐỘNG WSCOVER 7.1 Chức WSCOVER Nhằm mục đíchtổhợpkiểmchứngdịchvụWeb tự động phù hợp với thư viện dịchvụ quy mô lớn, cơng cụ WSCOVER cung cấp tính sau: 25 – Tổhợpkiểmchứng theo cách on-the-fly – TổhợpdịchvụWeb có định hướng heuristic – Gom cụm dịchvụWeb dựa luận lý 7.2 Kiến trúc WSCOVER Hình 7-1 Kiến trúc cơng cụ WSCOVER Hình 7-1 trình bày kiến trúc WSCOVER, chi tiết chức xử lý gồm: 7.2.1 Tầng tiền xử lý Tầng thực bước tiền xử lý thư viện dịch vụ, gồm chức năng: – Bộ phân tích OWLS2LogicExp có nhiệm vụ chuyển mô tả dịchvụWeb dạng OWL-S thành biểu thức luận lý – Bộ gom cụm liệu dựa luận lý – Bộ chuyển đổi LTS4WS chuyển dịchvụWeb lưu trữ cụm thành mơ hình LTS4WS 7.2.2 Tầng xử lý tổhợpkiểmchứng Đây chức WSCOVER, đảm nhận chức tổhợpkiểmchứngkếttổhợp theo yêu cầu người dùng, gồm phận sau: – Bộ chuẩn hóa mục tiêu chuyển yêu cầu người dùng thành biểu thức LTL để chuyển vào kiểm tra mô hình 26 – Bộ tìm kiếm heuristic thực chức tìm kiếm dựa heuristic – Bộ kiểm tra mơ hình định hướng heuristic mở rộng kiểm tra mơ hình PAT với tích hợp tìm kiếm heuristic duyệt không gian trạng thái 7.2.3 Tầng giao diện người dùng Đây tầng cung cấp giao diện cho phép người dùng thiết lập yêu cầu nhận kết trả Về giao diện, phát triển công cụ WSCOVER hai dạng ứng dụng ứng dụng chạy cục máy tính (Hình 7-2) ứng dụng trực tuyến địa chỉ: http://www.cse.hcmut.edu.vn/wscover/ 7.3 7.3.1 So sánh WSCOVER với cơng cụ có So sánh chức Bảng 7-1 So sánh công cụ tổhợpkiểmchứngdịchvụWeb Công cụ Tổhợp OWLS-XPlan PORSCE II GA-based Loại ràng buộc Định dạng đầu vào OWL-S (dịch vụWeb đơn) Chức OWL-S (dịch vụWeb đơn) Chức năng, chất lượng OWL-S (dịch vụWeb đơn) Chức Lược đồ tổhợp BPEL Chức năng, chất lượng Lược đồ tổhợp Statecharts Mọi ràng buộc Lược đồ tổhợp BPEL Mọi ràng buộc OWL-S (dịch vụWeb đơn) Chức WS-Engineer AgFlow VeriWS WSCOVER Kiểmchứng Bảng 7-1 trình bày so sánh WSCOVER với cơng cụ có So với cơng cụ này, WSCOVER phân biệt số tính sau Đầu tiên, WSCOVER thựctổhợpkiểmchứng lúc theo cách on-thefly, hỗ trợ loại ràng buộc Thứ hai, đầu vào WSCOVER dịchvụWeb đơn, khơng cần lược đồ tổhợp xây dựng sẳn Cuối cùng, 27 WSCOVER tích hợp nhiều kỹ thuật tối ưu giúp xử lý tối với thư viện dịchvụ quy mô lớn Hình 7-2 Giao diện cơng cụ WSCOVER – phiên chạy cục máy tính 7.3.2 So sánh kếtthực nghiệm Chúng tiến hành thực nghiệm so sánh WSCOVER với cơng cụ có, gồm PORSCE II cách tiếp cận tổhợp sử dụng giải thuật di truyền (GAbased) Để chạy thực nghiệm so sánh, sử dụng liệu trình bày Bảng 4-1 Hình 7-3 trình bày trực quan kếtthực nghiệm Kếtthực nghiệm cho thấy công cụ WSCOVER đạt hiệu suất tốt tiêu chí thời gian xử lý lẫn dung lượng nhớ sử dụng 28 150,000 200,000 150,000 100,000 100,000 50,000 50,000 0 TB (20) MS (50) PORSCE II EDS (100) GA-based TB (20) MS (50) ECS (200) WSCOVER PORSCE II EDS (100) GA-based ECS (200) WSCOVER (a) Thời gian xử lý (ms) (b) Dung lượng nhớ sử dụng Hình 7-3 So sánh trực quan công cụ tổhợpdịchvụWeb CHƢƠNG 8.1 KẾT LUẬN VÀ HƢỚNG PHÁT TRIỂN Kết luận Luận án hoàn thành việc trả lời câu hỏi nghiên cứu mục tiêu mà luận án đề thơng qua đóng góp sau: – Đề xuất khung thức tổng quát chotoántổhợp tự động – Đưa cách đặc tả hìnhthứcchodịchvụWeb mơ hình LTS4WS Áp dụng phươngphápkiểm tra mơ hình vào tốn tổhợpdịchvụ – Giải vấn đề bùng nổ không gian trạng thái cho tốn tổhợp + Áp dụng phươngpháp tìm kiếm heuristic + Áp dụng phươngpháp lập mục dịchvụWeb dựa bit nhị phân – Đề xuất cách tiếp cận gom cụm dịchvụ dựa luận lý để hỗ trợ việc tổhợpkiểmchứngdịchvụWeb 8.2 Hƣớng phát triển Đối với cơng việc tương lai, nghiên cứu vấn đề cần xem xét, giải Cụ thể công việc tương lai luận án là: 1) Xử lý vấn đề ngữ nghĩa dịchvụWeb dựa ontology Chúng ta cần nghiên cứu áp dụng thêm độ độ tương tự theo ngữ nghĩa dịchvụ dựa ontology 29 2) Khai thác thư viện dịchvụWeb với phươngphápkhaipháliệu khác Ngoài kỹ thuật khaipháliệu áp dụng, cần thử nghiệm thêm với kỹ thuật khác phân loại liệu, cắt liệu, để có đánh giá tồn diện cho hướng tiếp cận chúng tơi 3) Áp dụng mơ hình xác suất học máy việc xử lý thư viện dịchvụWeb Bên cạnh phươngpháp gom cụm, việc áp dụng mơ hình xác suất học máy xem cách tiếp cận xử lý khai thác kho liệu có kích thước lớn 4) Cho phép đặc tả yêu cầu người dùng dạng ngôn ngữ tự nhiên Hướng phát triển cho phép người dùng cung cấp yêu cầu họ dạng ngôn ngữ tự nhiên 30 ... phương pháp tổ hợp kiểm chứng việc tổ hợp dịch vụ Web phương pháp kiểm tra mô hình thơng qua việc đặc tả hình thức cho dịch vụ mơ hình hóa thư viện dịch vụ dạng mơ hình LTS4WS Chƣơng trình bày phương. .. xuất phương pháp gom cụm lựa chọn dịch vụ Web để tổ hợp động dựa đồ thị tác vụ 2.1.2 Kiểm chứng việc tổ hợp dịch vụ Web Kiểm chứng yêu cầu chức năng: H Foster cộng kiểm chứng tổ hợp dịch vụ dựa... khung thức tổng quát cho việc tổ hợp thành phần phần mềm nói chung tổ hợp dịch vụ Web nói riêng [OB2] Đưa phương pháp đặc tả hình thức cho dịch vụ Web xây dựng mơ hình cho thư viện dịch vụ Đặc