Trong chương này ta đi nghiên cứu một số ứng dụng của toán tử OWA trong một số bài toán cụ thể gồm đánh giá dựa trên độ quan trọng, các thuật toán phân cụm và ứng dụng trong một dạng toán tối ưu.
3.1. Ra quyết định dựa trên độ quan trọng
Một lớp quan trọng các bài toán kết hợp là các bài toán kết hợp đa tiêu chuẩn chẳng hạn những bài toán nảy sinh trong các ứng dụng như ra quyết định, nhận dạng mẫu, thu thập thông tin. Với dạng thu thập thông tin, điều kiện gắn liền với các thuộc tính của tư liệu đang tìm kiếm. Điểm chung của những bài toán này là các tiêu chuẩn thu thập Ai với i = 1, . . . , n và một tập X các giải pháp. Với một lựa chọn x ta có một giá trị ai ∈ [0,1] chỉ ra mức độ mà x thoả mãn tiêu chuẩn Ai. Ta sử dụng những giá trị ai này để kết hợp chúng thành một điểm tổng thể cho lựa chọn x, kí hiệu là
a∗ = Agg(a1, a2, . . . , an).
ở đây Agg là các phép toán cơ bản để kết hợp các điểm trung bình, cực đại, cực tiểu.
Những lựa chọn riêng rẽ sẽ được so sánh với các điểm tổng thể này. Phương pháp để thực hiện toán tử Agg là sử dụng toán tử OWA
a∗ = Fw(a1, a2, . . . , an),
Fw ở trên là một toán tử OWA đặc biệt. Việc chọn toán tử OWA với véc tơ trọng số W nhằm phản ánh mối quan hệ giữa những điều kiện đang được kết hợp. Nếu ta yêu cầu tất cả các tiêu chuẩn phải được thoả mãn thì ta sử
ta sử dụng max : W = W∗. Nếu yêu cầu chọn một con số trung bình của các thoả mãn điều kiện riêng rẽ thì có thể sử dụng W = Wave. Nói cách khác các toán tử OWA cho phép biểu thị mối quan hệ giữa các tiêu chuẩn. Ta tính
a∗ = Fw((u1, a1),(u2, a2), . . . ,(un, an)),
trong đó ai ∈ [0,1] là điểm của tiêu chuẩn thứ i và ui ∈ [0,1] là sự quan trọng của tiêu chuẩn thứ i. Ta sẽ xem xét một số tiếp cận cổ điển sử dụng trong một số toán tử OWA khác nhau.
Trong trường hợp toán tử trung bình, các quan trọng được xem là bình đẳng và ta sử dụng trung bình có trọng số a∗ = n X j=1 uj T aj = 1 n n X j=1 n Tujaj, trong đó T = n P j=1 uj là tổng của các trọng số quan trọng.
Trong trường hợp toán tử min, một tiếp cận chung là sử dụng
a∗ = min
j [S(uj, aj)], trong đó uj = 1−uj và S là bất kì t- đối chuẩn nào.
Trong trường hợp toán tử max, một tiếp cận chung là sử dụng
a∗ = max
j [T(uj, aj)], trong đó T là t- chuẩn bất kì.
Cả ba trường hợp max, min, average đều sử dụng các phương pháp luận khác nhau nhưng đều có tính quy luật. Toán tử Agg nhận n điểm trong khoảng đơn vị và trả về một giá trị trong khoảng đơn vị Agg : In −→I.
Trong trường hợp khi ta có quan trọng gắn với điều kiện, thay cho việc có các giá trị đơn, ta có các dạng (uj, aj) và do đó ta không trực tiếp sử dụng hàm Agg. Ta lấy mỗi cặp (uj, aj) và áp dụng một phép chuyển đổi
sự quan trọng để thu được một giá trị hiệu quả, bj = G(uj, aj). Sau đó áp dụng phép toán Agg cơ bản cho các giá trị đã được chuyển đổi này.
a∗ = Agg(b1, b2, . . . , bn)
Bảng sau sẽ tóm tắt ba trường hợp này
Tên Toán tử Average Sự chuyển đổi của (uj, aj)
Max Maxj[bj] bj = T(uj, aj) Min Minj[bj] bj = S(u, aj) Average 1 n n X j=1 bj bj = n Tujaj Bảng 3.1
Ví dụ 3.1.1. Xét một bài toán thực tế là bài toán tính điểm trung bình học tập cho sinh viên đại học theo chế độ học trình. Theo cách tính điểm hiện nay của sinh viên thì chương trình đào tạo được chia ra nhiều học phần mỗi học phần gồm nhiều học trình và kết quả được tính theo công thức:
D0tb=
P
d(i)ht(i)
P
ht(i) ,
trong đó d(i) là điểm môn thứ i vàht(i)là số học trình của môn thứ i tương ứng. Cách tính điểm này tiện lợi, dễ tính và kết quả tỉ lệ với thời lượng học. Tuy nhiên nó cũng bộc lộ những điểm yếu là:
• Cách phân loại học tập bị chặn cứng, ví dụ sinh viên xếp loại trung bình nếu 5 ≤ kq < 7 và xếp loại khá nếu 7 ≤ kq < 9. Như vậy các sinh viên có kết quả là 5.0 và 6.9 đều cùng một loại trong khi đó 6.9 với 7.0 lại thuộc 2 loại khác nhau.
•Như đã nêu ở trên, công thức tính điểm kết quả chủ yếu dựa trên thời gian dành cho mỗi môn học chứ không chú ý đến những môn học có kết quả tốt hay kém. Như vậy nếu so sánh 2 sinh viên có kết quả điểm bằng nhau thì khó có thể nói sinh viên sẽ được ưu tiên hơn nếu tuyển dụng (về năng lực chuyên môn) theo nhu cầu công việc nào đó.
Nếu áp dụng kết quả nghiên cứu trên về toán tử OWA thì có thể đề xuất cách phân loại khác nhau dựa trên độ quan trọng của mỗi môn học. Độ quan trọng này có thể thu nhận từ ý kiến của các chuyên gia. Mô hình của chúng tôi như sau.
Xét bảng điểm của ba sinh viên xin việc. Điểm trung bình học tập của họ được tính theo công thức trên.
Song nếu cần tuyển người theo một tiêu chí nào đó ta sẽ gắn mỗi giá trị điểm của một học phần với một giá trị là độ quan trọng của học phần đó. Nghĩa là trong công thức trên ta thay giá trị ht(i) bởi độ quan trọng dqt(i) theo công thức: D0qt= P d(i)dqt(i) P dqt(i) ,
trong đó d(i) là điểm môn thứ i và dqt(i) là độ quan trọng của môn thứ i tương ứng. Với cách tính điểm này rõ ràng sự phân loại đã theo chiều hướng khác: các môn học phù hợp với tiêu chí đánh giá sẽ có trọng số cao hơn nên sẽ được ưu tiên hơn.
Bây giờ ta xét một cách tiếp cận khác: Cách tính điểm theo vectơ trọng số của toán tử OWA. Giả sử cần xét ưu tiên những sinh viên có nhiêu điểm cao hơn những người có điểm số các môn đều nhau. Với một cơ sở dữ liệu lớn thì việc xét chọn bằng tay là điều rất khó. Song ta có thể giải quyết điều này bằng cách sử dụng toán tử OWA với các trọng số được xếp theo thứ tự giảm dần. Nghĩa là ta sử dụng công thức:
D0OW A = Xd(i)w(i),
trong đó W = (w1, . . . , wn) và các wi được xếp theo thứ tự giảm dần. Giả sử các môn học kí hiệu m1 −→ m20.
Số đơn vị học trình tương ứng là:(6,6,6,6,3,6,5,7,5,6,4,6,4,5,5,4,4,3,3,3)
Độ quan trọng là
V =(0.07,0.03,0.03,0.02,0.03,0.07,0.03,0.03,0.02,0.1,
Vectơ trọng số
W =(0.103,0.1,0.098,0.087,0.083,0.08,0.075,0.063,0.06,0.05,0.047,
0.03,0.025,0.02,0.019,0.014,0.013,0.012,0.011,0.01)
Điểm của ba sinh viên và đơn vị học trình được cho bởi: Trần Thị Cúc (6,8,8,6,8,6,7,9,7,5,5,8,5,9,6,8,5,6,6,9)
Lê Thanh Mai (7,7,6,8,7,5,7,6,5,7,8,7,5,7,8,7,9,8,7,7)
Cao Thu Trúc (6,8,5,8,6,7,6,7,8,8,6,5,6,8,5,7,6,6,5,5)
Dưới đây đưa ra kết quả tính điểm của 3 sinh viên theo 3 cách. Tên Điểm trung bình Điểm quan trọng Điểm OWA
Cúc 6.9 6.47 6.9
Mai 6.8 7.13 6.7
Trúc 6.5 6.3 6.6
Bảng 3.2
Kết quả thấy rõ cách tính và phân loại này đã có sự phân biệt đáng kể giữa các sinh viên có cùng điểm trung bình. Rõ ràng nếu xét theo độ quan trọng, thông tin này có ý nghĩa đáng kể cho người tuyển dụng chẳng hạn. Tương tự như vậy đối với các bài toán cùng loại.
3.2. Thuật toán phân cụm
Trước tiên chúng ta xét bài toán đánh giá các dự án, các phương án sau. Mô hình:
• Cho A = {A1, A2, . . . , An} là n dự án cần đánh giá và phân lớp.
• Cho E = {e1, e2, . . . , em} là m chuyên gia- cố vấn tham gia hội đồng đánh giá.
• Cho W = {w(1), w(2), . . . , w(k), . . . , w(m)}, w(k) là trọng số của chuyên gia ek, 0 ≤ w(k) ≤ 1. Chọn tương ứng một tập nhãn S bằng từ để các chuyên gia lựa chọn và thực hiện đánh giá các dự án.
Chẳng hạn cho S = (s1, s2, . . . , s9). Thế thì chúng ta có thể chọn từ tiếng việt tương ứng là: S =(không thể xảy ra, không có khả năng, rất ít khả năng, ít khả năng, có thể, có nhiều khả năng, rất có khả năng, hoàn toàn có khả năng, hiển nhiên) [1] .
3.2.1. Thuật toán phân cụm 1
Thuật toán dựa vào đánh giá trực tiếp của các chuyên gia. Mỗi chuyên gia ek cho đánh giá các dự án Ai bằng một phép đánh giá Pk : A −→ S. Mọi thông tin đánh giá là {Pk : k = 1, . . . , m}.
Thuật toán 1:
Bước 1: Thu thập các vectơ {Pk}. Bước 2: Dựa vào vectơ trọng số
W = {w(1), w(2), . . . , w(k), . . . , w(m)},
w(k) là trọng số của chuyên gia ek, 0 ≤ w(k) ≤ 1, chuẩn hoá vectơ trọng số w0(k) = w(k)
w0 , ở đây w0 = P
kw(k).
Bước 3: Tính trọng số gộp theo từng nhãn st đối với mỗi phương án Ai - đó chính là độ nhất trí chọn st của cả hội đồng khi đánh giá Ai.
IC(i)[st] = X
k
{w0(k) : Pk(Ai) =st}.
Bước 4: Tính độ trội của mỗi phương án Ai bằng toán tử LOWA
E(i) = Low(S, U(i)),
ở đây U(i) = [u1, . . . , ut, . . . , uT], với ut = IC(i)[st], với mỗi t.
Bước 5: Phân cụm. Dùng {E(i) : Ai ∈ A} để phân cụm tập phương án A thành các lớp Y1, Y2, . . . , YT = {AiE(i) = st}, với mỗi st ∈ S. Rõ ràng A = S
tYt. Mỗi tập con Yt có thể là tập rỗng, đối với những tập Yt khác rỗng ta có thể sắp xếp của tập nhãn S như sau: Yt < Yt0 nếu t < t0.
3.2.2. Thuật toán phân cụm 2
Thuật toán dùng thông tin dạng đánh giá so sánh từng cặp của các chuyên gia. Mỗi chuyên gia ek cho đánh giá dạng so sánh dự án Ai với dự án Aj bằng một phép đánh giá Pk : A ∗ A −→ S. Mọi thông tin để phân cụm là thông tin đánh giá là {Pk : k = 1, . . . , m}. Để gọn ta kí hiệu Pk(i, j) =Pk(Ai, Aj). Chúng ta sẽ giả thiết rằngPk(i, i) =sT+1 2 , với mỗi i và nếu Pk(i, j) ≥ sT+1 2 thì Pk(j, i) ≤ sT+1 2 . Thuật toán 2:
Bước 1: Thu nhập các quan hệ mờ {Pk}. Bước 2: Dựa vào vectơ trọng số
W = {w(1), w(2), . . . , w(k), . . . , w(m)},
w(k) là trọng số của chuyên gia ek, 0 ≤ w(k) ≤ 1, chuẩn hoá vectơ trọng số w0(k) = w(k)
w0 , ở đây w0 = Pkw(k).
Bước 3: Tính trọng số gộp theo từng nhãn st đối với mỗi cặp phương án
(Ai, Aj) - đó chính là độ nhất trí chọnst trong so sánh của cả hội đồng IC(i, j)[st] = X
k
{w0(k) : Pk(Ai, Aj) = st}.
Bước 4: Tính độ trội của mỗi cặp phương án (Ai, Aj) bằng toán tử LOWA
E(i, j) = Low(S, U(i, j)),
ở đây U(i, j) = [u1, . . . , ut, . . . , uT], với ut = IC(i, j)[st], với mỗi t. Để ý mỗi E(i, j) là một ma trận, như vậy đó là một quan hệ mờ cấp 2- quan hệ mờ này đo độ trội tương đối theo ý kiến đã tích hợp của cả hội đồng.
Bước 5: Tìm nghiệm tập thể mờ FCS. Đây là một tập mờ loại 2 xác định trên cho bởi:
Với àF CS(Ai) = Low(S, V(i)), và V(i) = [v1, . . . , vt, . . . , vT], với mỗi t, vt = #{j : E(i, j) =st, j 6= i}/m−1.
Bước 6: Phân cụm. Dùng àF CS(Ai) : Ai ∈ A} để phân cụm tập phương án A thành các lớp Y1, Y2, . . . , YT, sao cho Yt = {AiàF CS(Ai) = st} với mỗi st ∈ S. Rõ ràng A = S
tYt. Mỗi tập con Yt có thể là tập rỗng, đối với những tập Yt khác rỗng ta có thể sắp xếp theo thứ tự sắp xếp của tập nhãn S như sau: Yt < Yt0 nếu t < t0.
3.3. Bài toán áp dụng Xét bài toán [2]:
f(x) = (x1 + 2x2 −c3x3 −1.2x4) −→ min,
thoả mãn điều kiện
2x1 +x2 +a13x3 +x4 ≤12,
2x1 + 2x2 +a24x4 ≤ b2,
3x1 +x2 + 2x3 ≤ 25,
xj ≥ 0, j = 1,2,3. trong đó các c3, a13, a24, b2 là các tham số.
Sử dụng toán tử OWA để giải bài toán này theo các bước sau: Bước 1: Định nghĩa tập tham số
UP = {c3, a13, a24, b2}
Bước 2: Xác định các khoảng giá trị với mỗi tham số, chẳng hạn:
∆(c3) = [3,5], ∆(a13) = [6,7], ∆(a24) = [3,5], ∆(b2) = [20,24],
Bước 3: Với mỗi tham số ta thực hiện tính như sau: Chẳng hạn, ta xét ∆(a13) = [6,7].
• Chia đoạn [6,7] thành các khoảng D = {d1, d2, d3, d4, d5} trong đó d1 = [6,6.2], d2 = [6.2,6.4], d3 = [6.4,6.6], d4 = [6.6,6.8], d4 = [6.8,7].
• Giả sử cho tập các chuyên gia E = {e1, e2, e3, e4, e5, e6}với trọng số e1 e2 e3 e4 e5 e6
0.23 0.21 0.12 0.25 0.15 0.32Bảng 3.3 Bảng 3.3
• Kí hiệu tập S = {st, t = 1, . . . , T} là tập hữu hạn các nhãn. Tập S có thể hiểu như các quan hệ về ngôn ngữ biểu thị ý kiến đánh giá của các chuyên gia
C Certain Hiển nhiên (1, 1, 1, 1) EL Extremely- likely Hoàn toàn có khả năng (0.93, 0.98, 0.99, 1) ML Most- likely Rất có khả năng (0.72, 0.78, 0.92, 0.97) MC Meaningful-chance Có khả năng (0.58, 0.63, 0.8, 0.86)
IM It- may Có thể (0.32, 0.41, 0.58, 0.65) SC Small- chance Có ít khả năng (0.17, 0.22, 0.36, 0.42) VLC Very- slow- chance Rất ít khả năng (0.04, 0.1, 0.18, 0.23)
EU Extremely- unlikely Không có khả năng (0, 0.01, 0.02, 0.07) I Impossible Không thể xảy ra (0, 0, 0, 0)
Bảng 3.4
• Giả sử ý kiến của các chuyên gia là:
P1 = IM V LC SC EU V LC M C IM M C M C M C EL EU IM SC M L EL EL EL IM EL M C EU I EU IM
P2 = IM EU I SC EU M C IM M C M C M C M L I IM V LC EL EL EL EL IM EL M C EU V LC SC IM P3 = IM V LC M L I M L M C IM M C M C M C EU EU IM I SC EL EL C IM EL EU I M L EU IM P4 = IM V LC I V LC M C M C IM M C M C M C C EU IM EU EL EL EL EL IM EL EU EU SC SC IM P5 = IM SC EL I M L M C IM M C M C M C V LC V LC IM I SC EL EL EL IM EL EU EU M C V LC IM P6 = IM EU M L I I M C IM M C M C M C V LC SC IM SC M L EL EL EL IM EL C SC V LC V LC IM
• Tính ma trận E E = IM V LC IM V LC SC M C IM M C M C M C M C EU IM EU M C EL EL EL IM EL M C EU IM V LC IM
• Bây giờ ta tính lời giải (fuzzy collective solution- FCS) trên D của tham số a13
FCS = {SC/d1, M C/d2, SC/d3, EL/d4, SC/d5}
Ta có thể chọn khoảng d4 với độ trội EL và chọn khoảng d2 với độ trội MC nghĩa là ch ọn (EL, [6.6, 6.8]) và (MC, [6.2, 6.4]) cho a13. Tương tự như vậy ta tính cho các tham số khác.
Bước 4: Giả sử chúng ta chọn tập tham số
UP = {c3, a13, a24, b2} trong đó: • c3 (EL, [-4.6,-4.2]), (MC, [-3.8,-3.4]). • a13 (EL, [6.6,6.8]), (MC, [6.2,6.4]). • a24 (ML, [4.2,4.6]), (MC, [3.4,3.8]). • b2 (EL, [22.4,23.2]), (MC, [20.8,21.6]). Bước 5: Kết hợp một số vectơ tham số của UP.
Ví dụ chọn vectơ tham số (-3.6, 6.3, 3.6, 21.2) cho UP thì ta nhận được kết quả
f(x) = (x1 + 2x2 −3.6x3 −1.2x4) −→ min,
thoả mãn điều kiện
2x1 +x2 + 6.3x3 +x4 ≤12,
2x1 + 2x2 + 3.6x4 ≤ 21.2,
3x1 +x2 + 2x3 ≤ 25,
Lời giải tối ưu làx∗ = (0,0,0.970018,5.888889)vàfmin = −10.55873015. Ta có thể nói rằng tập lời giải là M C = min(M C, M C, M C, M C).
Ta cũng có thể chọn vectơ tham số (-4.4, 6.7, 4.4, 22.8). Tương tự trên