Chuyên đề Xây dựng một phân hệ hỗ trợ việc thu thập và bước đầu xử lý ý kiến - Thông tin của các chuyên gia

Thẻ này chỉ dùng để nhập điểm từ 0 đến 10, quy định kiểu dữ liệu là dạng số, nếu không phải là số chương trình sẽ có thông báo “Các đánh giá phải là dạng số” nếu nhập điểm bé hơn 0 hoặc điểm lớn hơn 10 chương trình sẽ thông báo “Bạn phải nhập điểm số trong khoảng từ 0 đến 10”. Chương trình sẽ kiểm tra tính hợp lệ của dữ liệu nhập vào, nếu dữ liệu không hợp lệ chương trình sẽ đưa ra thông báo, và bắt bạn phải nhập đúng kiểu dữ liệu. Sau khi người sử dụng nhập đầy đủ thông tin cần đánh giá (các thông tin này phải có tính hợp lệ) người sử dụng có thể chọn nút “ Đồng ý ”, chương trình sẽ thực hiện tiếp công việc.

doc69 trang | Chia sẻ: aloso | Lượt xem: 1646 | Lượt tải: 0download
Bạn đang xem trước 20 trang tài liệu Chuyên đề Xây dựng một phân hệ hỗ trợ việc thu thập và bước đầu xử lý ý kiến - Thông tin của các chuyên gia, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
quyết định. Khi đề cập đến môi trường ra quyết định, chúng ta phải nói đến dữ liệu và thông tin. Trong khoa học thông tin chúng ta chú ý tới môi trường hoạt động giữa người ra quyết định và máy móc. Chúng ta chia môi trường này ra làm các phần chính sau: - Môi trường ngôn ngữ thao tác là nơi nhận thông tin, dữ liệu từ những sự kiện khác nhau làm cơ sở sự kiện để thực hiện ra quyết định. - Môi trường tri thức là thông tin được kết xuất và kết nối với nhau. Môi trường này là những tri thức cần thiết bao gồm kinh nghiệm, những thông tin tham khảo và những thông tin phụ trợ. - Môi trường xử lý nhằm xử lý thông tin và đưa ra kế hoạch chọn phương án tối ưu. - Môi trường hiển thị trình bày thông tin đã có và chỉ ra phương án tối ưu. - Môi trường giải thích và tương tác là nơi người ra quyết định giải thích kết quả đạt được và đưa ra những thông tin phương án đã chọn. - Môi trưòng thực hiện là ứng dụng phương án chọn. Trên đây, chúng ta đưa ra những khái niệm về môi trường ra quyết định. Môi trường này sẽ đưa ra theo những vấn đề quan tâm đã được nói đến trong việc ra quyết định của con người. Như vậy, môi trường ra quyết định là những sự kiện khách quan, nơi những sự kiện, hành động diễn ra rõ ràng trong khung cảnh khách quan. Trong những điều kiện khác nhau, chúng ta sẽ có những môi trường khác nhau và có thông tin truy nhập. Mặt khác, môi trường là nơi con người phải giao tiếp với sự kiện xung quanh, máy tính, thiết bị, ngôn ngữ, tri thức, sự hiểu biết. Trong môi trường này, người ra quyết định sẽ có được thông tin, dữ liệu cần thiết để sắp xếp theo thứ tự nhất định và đưa ra phương án chọn tốt nhất tiến tới kết quả tốt nhất, đạt được mục đích, yêu cầu và đòi hỏi của vấn đề. 4. Tiêu chuẩn quyết định Tiêu chuẩn quyết định là những căn cứ để chủ thể quyết định dựa vào đó lựa chọn phương án tốt nhất, phương án chấp nhận được tuỳ vào mục tiêu của chủ thể quyết định. Đặc điểm: - Dựa vào một tiêu chuẩn ta có bài toán lựa chọn quyết định một mục tiêu. - Dựa vào nhiều tiêu chuẩn ta có bài toán lựa chọn quyết định theo nhiều chỉ tiêu. - Các tiêu chuẩn quyết định cho dù có thể lượng hoá được hay chỉ là so sánh được thì vẫn đưa ra các phương pháp xử lý phù hợp. Tiêu chuẩn lượng hoá được là mỗi phương án được đánh giá bởi một con số cụ thể, độ thoả mãn cụ thể, hay còn gọi là ngưỡng để chọn ra các phương án thoả mãn rồi sánh chúng với nhau, từ đó đưa ra quyết định chọn phương án tốt nhất. Tuỳ theo mục đích mà ta có quy trình lựa chọn khác nhau. Đối với bài toán theo nhiều chỉ tiêu: - Nếu tất cả các tiêu chuẩn có thể lượng hoá được nghĩa là với một phương án x nào đó có thể đánh giá tiêu chuẩn thứ i bởi hàm fi(x); thì ta có thể đưa bài toán quyết định này về bài toán quy hoạch theo nhiều chỉ tiêu. Ví dụ: Phương pháp xử lý các phương án tối ưu PARETO. - Nếu các tiêu chuẩn chỉ so sánh được mà không lượng hoá được thì cách xử lý sẽ khác như phân loại để so sánh. - Nếu có nhiều tiêu chuẩn mà một số tiêu chuẩn có thể lượng hoá và có tiêu chuẩn chỉ so sánh được, thì phải kết hợp nhiều cách xử lý khác nhau. Ví dụ: So sánh 2 công ty xây dựng về vốn cố định thì có thể lượng hoá được, nhưng so sánh uy tín của 2 công ty đó trên thị trường lại không thể lượng hoá được mà chỉ có thể phân loại như có uy tín tốt, bình thường hay xấu... - Thực tế có nhiều bài toán xảy ra sự lượng hoá, sự so sánh các phương án nào đó về một tiêu chuẩn hoặc tất cả các tiêu chuẩn không thể khẳng định chắc chắn mà chỉ có thể nhận biết với độ tin cậy nào đó, nói cách khác quan hệ giữa các phương án là các quan hệ mờ. Lý thuyết tập mờ và logic mờ cũng đã có những cống hiến nhất định về phương pháp luận trong việc nghiên cứu các bài toán lựa chọn quyết định, trong các tình huống không chắc chắn, không rõ ràng. Và có khi từng tiêu chuẩn rất rõ ràng nhưng tổng thể lại không rõ ràng. Như vậy, tiêu chuẩn quyết định rất đa dạng, cách xử lý cũng phong phú và rất phức tạp, nhưng để quyết định thành công không thể bỏ qua một yếu tố nữa đó là điều kiện quyết định. 5. Hệ thống thông tin Để thực hiện quyết định, chủ thể quyết định phải có những điều kiện như: phương tiện tài chính, kỹ thuật, nhân lực, thời gian... và thông tin. Trong đó hệ thống thông tin phục vụ cho lựa chọn quyết định có ý nghĩa quan trọng nhất vì hệ thống thông tin có vai trò quyết định trong lựa chọn quyết định nên một nguyên lý của Điều khiển học là: lựa chọn quyết định thực chất là một quá trình xử lý thông tin. Khi dự thảo hay xây dựng hệ thống thông tin phục vụ cho một bài toán lựa chọn quyết định, chủ thể quyết định cần quan tâm đến vấn đề sau: 5.1 Hệ thống thông tin đầy đủ và chính xác Chỉ có thể giải quyết đúng đắn một vấn đề khi có thông tin đầy đủ và chính xác. Lượng thông tin cần thiết phụ thuộc vào tính phức tạp của vấn đề cần quyết định và cũng phụ thuộc cả vào trình độ nghiệp vụ, kinh nghiệm của chủ thể quyết định. Khi đã có hệ thống thông tin như mong muốn thì chủ thể quyết định cần có cách xử lý thông tin chính xác, đúng đắn và nếu thông tin chưa đủ để quyết định vấn đề một cách chắc chắn, cần có biện pháp bổ sung thông tin. 5.2 Hệ thống thông tin không đầy đủ và không chắc chắn Tình huống này thường xuyên xảy ra trong thực tế. Vì xuất phát từ hệ thống thông tin không chính xác và không đầy đủ cho nên quy trình và phương pháp xử lý thông tin có hoàn thiện đến đâu cũng không tránh khỏi những rủi ro ngoài dự kiến. Vì thế chọn quyết định trong tình huống này còn gọi là chọn quyết định có hiểm. Tóm lại, các yếu tố của lý thuyết quyết định có sự ràng buộc lẫn nhau và không thể thiếu yếu tố nào trong bất kỳ một quy trình lựa chọn quyết định. C. Quá trình lựa chọn quyết định 1. Quá trình quyết định Thực hiện các bước sau trong quá trình quyết định: (1) Từ vấn đề cần thực hiện, việc đầu tiên là đưa ra các phương án đơn giản, ít nhất có từ hai phương án trở lên. (2) Phải chỉ rõ mục tiêu, tác dụng, hiệu quả của mỗi phương án nếu được chọn để thực thi. (3) Thiết lập các tiêu chuẩn, dựa vào đó đánh giá hiệu quả của mỗi phương án để làm cơ sở cho việc so sánh và lựa chọn các phương án. (4) Phân tích hiệu quả của mỗi phương án theo các tiêu chuẩn quyết định đã nêu để từ đó chọn ra được một phương án thích hợp hoặc phương án tối ưu. Quyết định đúng sẽ đem lại hiệu quả, niềm tin, sự ổn định và phát triển. Ngược lại, quyết định sai sẽ gây ra tốn kém, thiếu niềm tin và kìm hãm sự phát triển. 2. Phân lớp các bài toán quyết định Bài toán quyết định có thể chia thành các lọai sau: - Chủ thể quyết định là cá nhân hay tập thể. - Quyết định theo một tiêu chuẩn hay nhiều tiêu chuẩn. - Quá trình quyết định có thuật toán hoá được hay không thuật toán hoá được. - Quyết định được chọn một lần hay theo nhiều giai đoạn. - Hệ thống thông tin đầy đủ hay không đầy đủ - bài toán quyết định trong các điều kiện chắc chắn hay có hiểm. 3. Một số phương pháp phân tích phương án của bài toán quyết định theo nhiều chỉ tiêu 3.1 Đối với bài toán quyết định có tập tiêu chuẩn có thể lượng hoá được Xét phương pháp xử lý các phương án tối ưu PARETO, từ tập phương án chọn ra tập phương án con như sau: D : Tập phương án. " xẻD ta tìm tập: d(x) = {yẻD: x R y} tức là tìm ra tập phương án bao gồm các phương án y tồi hơn các phương án x về mọi tiêu chuẩn. Giả sử mỗi phương án x có k tiêu chuẩn lượng hoá được f1(x)....fk(x) Dp ={D\ ẩd(x), xẻD} và fi(x) > fi(y)ú x Ri y. Khi đó, tập phương án tối ưu PARETO sẽ là: Nếu x, y ẻDp khi đó nếu có x Ri y thì $j ạ i thoả mãn y Ry x. Do đó, lựa chọn phương án nào trong tập phương án tối ưu PARETO. - Có thể biến đổi các tiêu chuẩn thành một tiêu chuẩn bằng cách đưa ra trọng số cho các tiêu chuẩn. Đưa ra một quan niệm phương án lý tưởng và sau đó chọn ra phương án gần lý tưởng nhất. maxfi(x)=ai maxfk(x)=ak Phương án lý tưởng : X={f1(X)=a1,....,fk(X) = ak}. Thông thường XẽD. Khi đó phương án x* với X={a1...ak} thì khoảng cách giữa chúng đươc tính: Tuỳ theo quan niệm về khoảng cách dẫn đến sự xử lý khác nhau đối với các phương án tối ưu PARETO. x* chính là phương án cần chọn 3.2. Đối với bài toán quyết định với hệ thông tin không đầy đủ, không chính xác Trường hợp1: Có m phương án để chọn: A1, ..., Am Trong n tình huống khác nhau B1,...,Bn ta không biết trong tương lai tình huống nào chắc chắn sẽ xảy ra mà ta chỉ biết nó xảy ra với xác suất nào đó, tức là biết một phân bố xác suất p1, p2,...,pn. Nếu ta chọn phương án Ai trong điều kiện tình huống Bj xảy ra thì sẽ thu được hiệu quả Uij Tiêu chuẩn được lựa chọn ở đây là chọn phương án nào có kỳ vọng của hiệu quả là lớn nhất. Cụ thể đặt: Sau đó chọn: Ur =max Ui ; Với i =(1,....,m) Trường hợp 2: Giống như trường hợp 1 nhưng không biết gì về xác suất có thể xảy ra, không biết gì về khả năng sẽ xảy ra tình huống nào. Có thể có các giải pháp sau đây: - Tiêu chuẩn Laplace: Coi như xác suất xảy ra các tình huống B1...Bn là bằng nhau pj =1/n "j , khi đó chọn theo quy tắc: Đặt: Sau đó tìm : Ur =max Ui - Tiêu chuẩn Wald còn gọi là tiêu chuẩn maximin. Với mỗi phương án coi như rơi vào tình huống xấu nhất: hiệu quả thấp nhất. Chọn phương án tốt nhất trong phương án có hiệu quả thấp nhất. - Tiêu chuẩn thận trọng: - Tiêu chuẩn lạc quan: q là một số thực mà qẻ(0,1) Đặt: Như vậy ai là tổ hợp lồi của Ui và Vi một sự dung hoà giữa tiêu chuẩn maximin và maximax. Theo Hurwicz thì chọn phương án Ar mà: Nếu q=1 ta được tiêu chuẩn Wald maximin là an toàn. Nếu q = 0 là nguyên lý maximax cầu may. - Tiêu chuẩn Savage: Từ các con số Uij ta lập ma trận (ai) trong đó : Sau đó áp dụng tiêu chuẩn Wald nghĩa là đặt: Mỗi tiêu chuẩn trên có một ý nghĩa riêng, áp dụng các chỉ tiêu khác nhau có thể dẫn đến việc lựa chọn các phương án khác nhau. Dưới góc độ tư vấn người ta có thể sử dụng tất cả các tiêu chuẩn trên để lựa chọn. Nếu các phương án được lựa chọn là trùng nhau thì có tác dụng làm cho người chọn quyết định yên tâm. Nếu các phương án được lựa chọn là khác nhau thì có thể phân tích và so sánh chúng theo những tiêu chuẩn bổ sung để quyết định. III/ các toán tử tích hợp 1. Toán tử trung bình sắp xếp có trọng số ( Ordered Weighted Averaging - OWA) Quá trình tích hợp thông tin xuất hiện trong rất nhiều ứng dụng của các hệ tri thức, ví dụ tích hợp trong mạng nơron (neural networks), điều khiển mờ, hệ chuyên gia và hệ trợ giúp quyết định, đặc biệt trong các bài toán phải xử lý những thông tin bất định. R.Yager đã giới thiệu một số kỹ thuật tích hợp mới đặc cơ sở trên toán tử trung bình có sắp xếp ( Ordered Weighted Averaging , viết tắt là OWA) 1.1 Định nghĩa: Cho vector trọng số w=[w1,w2,….,wn], các trọng số wi thoả 0 wi 1, với mỗi i = 1,…,n và thoả điều kiện wi =1 Cho vector a= (ai,….,an) R.Toán tử OWA là một ánh xạ F: R R xác định bởi F(a) =wjbj trong đó bj là phần tử thứ j của vector a. Ví dụ : Giả sử W = [0.4, 0.3, 0.2, 0.1], vector a = (0.7, 1, 0.3, 0.6), vector b sẽ là b = (1, 0.7, 0.6, 0.3) và F(a)=(0.4)(1)+(0.3)(0.7)+(0.2)(0.6)+(0.1)(0.3)=0.76 ý cơ bản của toán này là sắp xếp lại, nghĩa là phần tử cần tích hợp ai không kết hợp với trọng số wi mà một trọng số sẽ kết hợp với một vị trí tương ứng can tập các phần tử tích hợp sau khi đã được sắp xếp. Sự khác nhau giữa các toán tử OWA được phân biệt bởi các trọng số này. Để minh hoạ, chúng ta xét một sẽ trường hợp đặc biệt : (1) F* : trong trường hợp w = w* = [1, 0, ….,0] (2) F* : ứng với w = w* = [0, 0, ….,1] (3) FAVE : tương ứng với w = wAVE = [1/n,1/n,….,1/n] Dễ dàng thấy rằng : F*(a1,a 2,….,a n) = Maxi(ai) F*(a1,a2,…..,an) = Mini(ai) Và FAVE(a1,a2,….,an) = ai 1.2 Một số tính chất của toán tử OWA 1.2.1 Điểm thấp nhất và cao nhất Đối với mỗi toán tử OWA – F ta có: F* (a1,a2,…,an) F(a1,a2,…,an) F*(a1,a2,…,an) Do vậy điểm thấp nhất hay cao nhất của vector a là giới hạn của nó. Rõ ràng : Mini(ai) F(a1,a2,…,an) Maxi(ai) 1.2.2 Tính hoán vị (commutative) Đặt (a1,a2,…,an) là một gói cần tích hợp, và (d1,d2,…,dn) là một trong các hoán vị (permutation) của ai. Khi ấy F(a1,a2,…,an) = F(d1,d2,…,dn) 1.2.3 Tính đơn điệu(monotoicity) Cho ai và ci là các phần tử được chọn lựa của tích hợp. Nếu ai ci, với mỗi i=1,..,n thì F(a1,a2,…,an) F(c1,c2,…,cn) trong đó toán tử OWA – F có trọng số w cố định. 1.2.4 Tính luỹ đẳng (idempotancy) Nếu ai = a với mọi i thì F(a1,a2,…,an) = a Từ 4 tính chất trên chúng ta thấy toán tử OWA có những tính chất kết hợp cơ bản như một toán tử trung bình. 1.3 Các độ đo quan trọng gắn với toán tử OWA 1.3.1 Độ phân tán hay entropy (dispersion or entropy) Độ phân tán hay entropy của vector w được xác định bởi công thức : Disp(w) = -wi ln wi 1.3.2 Độ đo tính tuyển (orness) Độ đo tính tuyển (orness) của một vector w được cho bởi công thức : orness (w) = Có thể thấy orness(w*) = 1, orness(w*) = 0, orness(wAVE) = 0.5 1.3.3 Độ đo tính hội (andness) Độ đo tính hội (andness) của một vector w được định nghĩa như sau: andness(w) = 1 – orness(w) Độ đo Andness cũng thể hiện xu hướng của toán tử OWA, nhưng ngược với độ đo Orness. Độ đo này càng lớn thì trọng số tập trung chủ yếu vào các giá trị nhỏ. Nếu w và w’ là hai vector OWA có n thứ nguyên và : w1 = w1’, ij hoặc k; wj = wj’ + ; wk = wk’ - ; với > 0 , j orness(w’). 2. Toán tử tích hợp ngôn ngữ (Linguistic Ordered Weighted Averaging Operator – LOWA) 2.1 Định nghĩa Toán tử LOWA được định nghĩa dựa trên toán tử OWA trong môi trường giá trị số đã định nghĩa ở trên, và dựa trên phép tổ hợp lồi của các nhãn ngôn ngữ được định nghĩa bởi J. Delgado và F.Herrera cùng các cộng sự như sau : Cho S ={s1, s2, .., sT} là tập nhãn, sắp toàn phần s1 im-1> ... >i1. Cho w={w1, w2, ..., wn} là vector trọng số, wiẻ[0,1] và ồi wi=1. Toán tử LOWA là một tổ hợp thực của của vector a với trọng số w, Low : (a,w) S cho bởi công thức sau : Low: (a,w) = C { (wim, aim), (1-wim, Low(a’,w’) } ở đây a’={ai(m-1),...,ai1}, w’=[w’i1, w’i2, ...,w’i(m-1)], w’=wj/(1-wim), C là phép tổ hợp của 2 nhãn (si,sj), j>=i với trọng số wi>0, wi>0, wi+wj=1, C{(wj, sj),(wi, si)}=sk, với k=i +round(wj (j-i)), round là phép làm tròn số. Ví dụ: Cho a=(s1, s2, s3). Cho w=(0.2,0.3,0.5). Khi đó b=(s3, s2, s1) w3=0.5, w2=0.3, w1=0.2 và Low(a,w)=C{(0.5,s3), (0.5, Low((s2, s1),(0.2/0.5,0.3/0.5))} Vì Low((s2, s1), (0.2/0.5,0.3/0.5))=C{(3/5, s3), (2/5, s2)}=sk1 k1=1+round((3/5)(2-1)=1+1=2 Do vậy, Low(a,w)=C{(0.5,s3),(0.5, s2)}=sk, k= 2+round(0.5(3-2))=3 Cuối cùng Low(w, a)=s3 2.2 Một số tính chất của toán tử LOWA. Toán tử LOWA có một vài tính chất của toán tử OWA mà Yager đã đưa ra như tính đơn điệu, tính giao hoán, and và or. Trước khi đưa ra các tính chất chúng ta hãy xem xét các mệnh đề sau: Cho A =[a1, a2, ..., an] là một vector nhãn có thứ tự (a1 ³ a2³...³an) và aiẻ S thì an Ê f (a1, a2,..., an) Ê a1 a) Tính đơn điệu (monotonicity) Cho A=[ a1, a2,..., an ] và B=[ b1, b2, ..., bn] là hai vector đã được sắp xếp với mọi j aj ³ bj thì f(A) ³ f(B) b) Tính giao hoán (commutative) Cho A =[ a1, a2, ..., an ] là tập cần tổng hợp và B = [b1, b2,...,bn] là một hoán vị bất kỳ nào đó của ai thì f(A) = f(B). IV. Vai trò của các chuyên gia Tầm quan trọng của người ra quyết định : Việc quyết định xin ý kiến chuyên gia nào và độ quan trọng của mỗi chuyên gia là do chủ tịch hội đồng. Trên thực tế chủ tịch hội đồng là một chuyên gia nhưng không nhất thiết trực tiếp tham gia đánh giá. Xét bài toán so sánh các dự án: A={A1, A2,….,An}, nhờ vào phân tích để sắp xếp các dự án. Để đánh giá nó nhất là trong các bài toán phức tạp, ví dụ như đánh giá con người, trong các cuộc thi hoa hậu ... thì việc thu thập ý kiến của chuyên gia được coi là rất quan trọng. Bài toán đặt ra là phải sắp xếp và tìm ra phương án tối ưu trong tập phương án A cho trước. Sau đây chúng ta sẽ tìm hiểu một số bài toán phân tích so sánh các dự án mà ở đó chuyên gia cho ý kiến ở các dạng khác nhau như : Chuyên gia cho ý kiến bằng điểm (bằng số). Chuyên gia cho ý kiến bằng lời (bằng từ ngữ). 4.1. Chuyên gia cho ý kiến bằng điểm S={0, … ,10} Bài toán : Cho : - A={A1, A2,…,An} là tập các phương án - E ={ e1, e2,……, em} là tập các chuyên gia cho ý kiến - Cố vấn tham gia Hội đồng đánh giá. - W= [w1, w2,….., wm] là vector trọng số đánh giá độ quan trọng của các chuyên gia , - Tập nhãn S ={0, …,10} là những điểm mà chuyên gia Ei (với i=) sẽ đánh giá cho phương án Ai ( với i=). Gọi P(ai) : Là điểm của chuyên gia k cho phương án ai, với điều kiện các điểm số này phải được chọn từ tập S. Chọn phương án được cả hội đồng nhất trí là phương án tối ưu nhất. Phương pháp : Dùng toán tử trung bình sắp xếp có trọng số (OWA). Pgộp (ai) = , với i= Phương án tối ưu = maxPgộp(ai) , với i= Ví dụ : A = {a1, a2, a3, a4} - Có 4 phương án E = {e1, e2, e3, e4} - Có 4 chuyên gia W=(0.4, 0.3, 0.2, 0.1) - Trọng số (độ quan trọng của 4 chuyên gia trong Hội đồng). S = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10} là tập giá trị các điểm số. Chuyên gia sẽ chọn các điểm số trong tập nhãn S này để đưa ý kiến đánh giá của mình cho từng phương án. Giả sử : 4 chuyên gia cho điểm từng phương án như sau : Đối với phương án a1 : P1(a1)=7 , P 2(a1)=6, P3(a1)=8, P4(a1)=8 Pgộp(a1)=7(0.4)+6=7 Đối với phương án a2 : P1(a2)=5 , P 2(a2)=6, P3(a2)=5, P4(a2)=5 Pgộp(a2)==5.3 Đối với phương án a3 : P1(a3)=7 , P 2(a3)=8, P3(a3)=8, P4(a3)=8 Pgộp(a3)==7.6 Đối với phương án a4 : P1(a4)=4 , P 2(a4)=5, P3(a4)=4, P4(a4)=5 Pgộp(a4) = =4.4 Phương án tốt nhất = maxPgộp(ai)=7.6 ( Là phương án a3) Kết luận: Phương án A3 được cả Hội đồng đánh giá tốt nhất, được 7.6 điểm 4.2. Chuyên gia cho ý kiến bằng lời Bài toán : Cho : - A={A1, A2,…,An} là tập các phương án - E ={ e1, e2,……, em} là tập các chuyên gia cho ý kiến ( Cố vấn tham gia Hội đồng đánh giá). - W= [w1, w2,….., wm] là vector trọng số, đánh giá độ quan trọng của các chuyên gia , với - Tập nhãn S ={s1, s2,….,sT}, S lẻ, sắp toàn phần s1 < s2 <….< sT là những từ mà chuyên gia Ei (với i=) sẽ đánh giá cho phương án Ai ( với i=) . Gọi P(ai) : Là ý kiến của chuyên gia k cho phương án ai, ý kiến này phải được chọn từ tập S cho trước. Chọn phương án được cả hội đồng nhất trí là phương án tối ưu nhất. Phương pháp : Dùng toán tử tích hợp ngôn ngữ (LOWA). Thuật toán : Gồm các bước như sau : Thu thập các vector {PK} Xác định lại w, nếu thì ta phải thực hiện bước 3(chuẩn hoá) sao cho , nếu thì thực hiện bước 4 Chuẩn hoá : w , w0 = 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] = (5) Thu thông tin đánh giá mỗi phương án ai (cho bằng từ) của các chuyên gia (sử dụngToán tử LOWA) Pgộp(ai) = Low(S,U(i)) Với U(i)=[u1, u2,….,ut,…..,uT] , ut= IC(i)[St] với mỗi t. Phương án tối ưu là = MaxPgộp(ai) với i = Ví dụ : Cho A= {A1, A2, A3} : Có 3 phương án E = {e1, e2,e3 } : Có 3 chuyên gia đánh giá W= {0.2, 0.3, 0.5} : vector trọng số của các chuyên gia, đánh giá độ quan trọng của mỗi chuyên gia. S là tập nhãn ngôn ngữ, S ={s1, s2, s3, s4, s5, s6, s7} tương ứng với các từ ngữ để chuyên gia chọn, đánh giá các phương án như sau : S = {Kém, Yếu, Trung bình, Trung bình Khá, Khá, Giỏi, Xuất sắc} Như vậy : s1-“Kém” s2-“Yếu” s3-“Trung bình” s4-“Trung bìnhKhá” s5-“Khá” s6-“Giỏi” s7-“Xuất sắc” Bước (1) : Thu thập các vector {PK} Giả sử : P1(A1)=s1 , P2(A1)=s2, P3(A1)=s3 P1(A2)=s2 , P2(A2)=s3, P3(A2)=s4 P1(A3)=s3 , P2(A3)=s4, P3(A3)=s5 Bước (2) : W = {0.2, 0.3, 0.5} Bước (3) : IC s1 s2 s3 s4 s5 s6 s7 A1 0.2 0.3 0.5 0 0 0 0 A2 0 0.2 0.3 0.5 0 0 0 A3 0 0 0.2 0.3 0.5 0 0 Bước (4) : Pgộp(A1) = Low((s3, s2, s1),(0.2, 0.3, 0.5)) = C((s3,0.5),(0.5, Low(a’,w’))) = sk1 Low(a’,w’)=C((s2,s1),(2/5, 3/5))=1+Round(3/5(2-1)) =2= s2 Sk1= C((s3,0.5),(0.5,s2))=2+Round(0.5(3-2))=3=s3 =“Trung bình” Hội đồng nhất trí đánh giá phương án A1 là “Trung bình” Pgộp(A2) = Low((s4, s3, s2),(0.2, 0.3, 0.5)) = C((s4,0.5),(0.5, Low(a’,w’))) = sk1 Low(a’,w’)=C((s3,s2),(2/5, 3/5))=2+Round(3/5(2-1)) =3= s3 Sk1= C((s4,0.5),(0.5,s3))=3+Round(0.5(3-2))=4=s4 =“Trung bình Khá” Hội đồng nhất trí đánh giá phương án A2 là “Trung bình Khá” Pgộp(A3) = Low((s5, s4, s3),(0.2, 0.3, 0.5)) = C((s5,0.5),(0.5, Low(a’,w’))) = sk1 Low(a’,w’)=C((s4,s3),(2/5, 3/5))=3+Round(3/5(2-1)) = 4= s4 Sk1= C((s5,0.5),(0.5,s4))=4+Round(0.5(3-2))=5=s5 =“Khá” Hội đồng nhất trí đánh giá phương án A3 là “Khá”. Phương án tối ưu là là phương án A3 , được cả Hội đồng đánh giá là : “Khá” Chương II Visual basic với các giao diện thu thông tin I. ngôn ngữ lập trình Visual basic 1. Giới thiệu chung Ngày nay, khi hệ điều hành Windows gần như đã thống lĩnh hầu hết các máy PC trên toàn thế giới, các ứng dụng sẽ được phát triển theo hệ điều hành. Từ khi Microsoft Windows 95 ra đời đã mở ra một kỷ nguyên mới cho công nghệ thông tin. Các ngôn ngữ lập trình đã phát triển không ngừng, đáp ứng được sự tích hợp khác chạy cùng môi trường. VISUAL BASIC là một trong những công cụ lập trình theo hướng đối tượng, can thiệp tới mọi ứng dụng trong Windows (Access, Excel, Winword,...). Việc tạo ra các đối tượng là đơn giản trong Visual Basic, tạo ra các ActiveX (ứng dụng trên các Intranet) tương ứng với Applet của Java. Một ứng dụng đang chạy ở chế độ máy đơn có thể chuyển sang ActiveX (chạy Server). Chương trình được viết bằng Visual Basic có thể chuyển ngay sang Java. Và Visual Basic có thể truy nhập tới tất cả các cơ sở dữ liệu như : Oracle, SQL Server, Access, Foxpro... VISUAL BASIC cung cấp đầy đủ các đối tượng trong thư viện sẵn có của nó. Các đối tượng như DAO (Đối tượng truy cập dữ liệu - Data Access Object), RDO (Đối tượng dữ liệu từ xa – Remote Data Object) để truy cập tới Database, các đối tượng điều khiển như TextBox, ComboBox, DBGrid, DataControl ... dùng để thiết kế giao diện và hiển thị dữ liệu lấy từ các đối tượng Database, Recordset và Resultset. Các đối tượng điều khiển là các tệp .OCX. Với Visual Basic chúng ta rất dễ dàng sửa đổi một đối tượng điều khiển đã có thành đối tượng của mình bằng cách thêm hoặc bớt các đặc tính của nó. VISUAL BASIC có một hệ soạn thảo tuyệt vời. Các thủ tục không cần sắp xếp tuần tự như Pascal, C, hay C++. Các thủ tục của Visual Basic được viết ra sắp xếp theo các đối tượng. Để thiết kế các thủ tục (các sự kiện) của một đối tượng nào đó bất kì, ta chỉ cần kích đúp chuột lên đối tượng đó. Những lợi điểm khi dùng Visual Basic chính là ở chỗ tiết kiệm thời gian và công sức hơn so với các ngôn ngữ lập trình khác khi xây dựng cùng một ứng dụng. Vì vậy, em đã lựa chọn ngôn ngữ lập trình hướng đối tượng Visual Basic làm môi trường để xây dựng chương trình của mình. 2. Lựa chọn cách lưu trữ thông tin Dữ liệu của chương trình là thông tin về tiêu chuẩn, khả năng lựa chọn tương đối thích hợp với các file cơ sở dữ liệu của các hệ quản trị cơ sở dữ liệu như Microsoft Access, SQL Server..... Việc lưu trữ dữ liệu dưới dạng cơ sở sữ liệu rất thuận lợi cho việc phân tán, quản lý, đặc biệt khi dữ liệu quá lớn. Nhưng nó cũng có nhược điểm là mỗi lần thay đổi bài toán thì chúng ta phải tạo một cơ sở dữ liệu cho bài toán có cùng cấu trúc dữ liệu và việc này thì tốn nhiều bộ nhớ cho cấu trúc chương trình. Tuy nhiên, để thuận tiện cho việc sử dụng, em quyết định lưu trữ dữ liệu trong hệ quản trị cơ sở dữ liệu Microsoft Access. Microsoft Access có một giao diện tinh xảo và dễ dùng để tạo các đối tượng cơ sở dữ liệu . 3. Hướng dẫn cài đặt Visual Basic 6.0 Sử dụng chương trình Setup, ta có thể cài đặt Visual Basic trên máy tính. Chương trình Setup sẽ cài đặt Visual Basic và các thành phần khác từ đĩa CD vào đĩa cứng. Chương trình này còn cài đặt các tập tin cần thiết để xem tài liệu trên đĩa CD MSDN (Microsoft Developer Network). Nếu cần, ta có thể cài đặt riêng phần tài liệu và ví dụ mẫu của Visual Basic. Lưu ý rằng ta không thể thi hành Visual Basic bằng cách chỉ copy các tâp tin từ CD-ROM vào đĩa cứng. Ta phải dùng chương trình Setup để giải nén và cài đặt các tập tin vào thư mục thích hợp. Trước khi cài đặt Visual Basic, ta phải đảm bảo rằng máy tính phải đạt được một số đòi hỏi cấu hình tối thiểu, đọc qua tập tin Readme, xác định thư mục gốc trên đĩa cài đặt. 3.1 Kiểm tra các yêu cầu về thiết bị và hệ thống Để thi hành Visual Basic, ta cần có các thiết bị và chương trình cài đặt trên máy tính. Các yêu cầu về hệ thống bao gồm : Microsoft Windows 98 trở lên, hoặc Microsoft Windows NT Word-Station 4.0 (nên dùng Service Pack 3) trở lên. Bộ vi xử lý : nên dùng Pentium III trở lên hoặc bộ vi xử lý Alpha hoạt động với Microsoft Windows NT Workstation. Một ổ đĩa CD-ROM. Màn hình VGA hoặc màn hình độ phân giải cao được hỗ trợ bởi Microsoft Windows. 32 MB RAM cho Windows 98, 64 MB RAM trở lên cho Windows NT Workstation. Một bàn phím, một thiết bị chuột hoặc các thiết bị trỏ tương thích khác. 3.2 Đọc tập tin Readme Tập tin Readme liệt kê các sửa đổi trên tài liệu của Visual Basic từ khi nó được phát hành. Ta có thể tìm ra tập tin này bằng cách chọn vào mục Read Me First trong màn hình cài đặt đầu tiên, hoặc trong thư mục gốc của đĩa CD-ROM cài đặt. Tập tin này còn có thể được truy cập từ Visual Basic Start Page trong tài liệu. Kiểm tra phần đầu của tập tin này để nắm được thông tin mới, chi tiết về cài đặt Visual Basic. 3.3 Cài đặt Visual Basic từ đĩa CD Đặt đĩa CD vào ổ đĩa CD-ROM Dùng lệnh thích hợp với môi trường hệ điều hành để thi hành chương trình Setup chứa trong thư mục gốc trên đĩa số 1. Nếu hệ thống hỗ trợ AutoPlay, chương trình Setup sẽ tự động nạp khi ta đặt đĩa vào ổ cứng. Chọn Install Visual Basic 6.0 Lần lượt làm theo các hướng dẫn trên màn hình. 3.4 Cài đặt Visual Basic từ đĩa cứng Để có thể sử dụng chương trình, chúng ta thực hiện cài đặt như sau: Vào thư mục chứa bộ cài Visual Basic Chạy file setup.exe hoặc Install.exe Tuân theo hướng dẫn để cài đặt. 3.5 Khởi động Visual Basic Sau khi đã hoàn tất thủ tục cài đặt, ta có thể khởi động Visual Basic bằng cách sử dụng nút Start trên thanh công việc của Windows. Nếu hệ thống hỗ trợ AutoPlay, ta còn có thể khởi động Visual Basic bằng cách đặt đĩa Visual Basic vào ổ đĩa. II. xây dựng giao diện trong visual basic 1. MENU Hình 1 : Thanh Menu trong màn hình Visual Basic Có 2 loại Menu : Menu thả xuống (drop-down menu) : là dạng menu thông dụng nhất Menu bật ra (pop-up menu) : thường hiển thị khi ta nhấn nút phải chuột (right mouse) 1.1 Dùng trình soạn thảo Menu để tạo Menu Menu không chứa trong hộp công cụ như những điều khiển khác mà được thiết kế bằng trình soạn thảo menu. Từ Menu Tools, chọn Menu Editor để mở chương trình này hoặc dùng Ctrl + E. Ví dụ 1 : Tạo Menu ngang Hình 2 : Cửa sổ Menu Editor tạo menu ngang Ví dụ 2 : Tạo Menu dọc Hình 3 : Cửa sổ Menu Editor tạo menu dọc 1.2 Các thuộc tính của Menu Thuộc tính Menu không chứa trong cửa sổ thuộc tính như các điều khiển khác mà đặt trong trình soạn thảo menu. 1.2.1 Thuộc tính Caption Là chuỗi ký tự hiển thị trên menu. Ví dụ : File, Open, Save… 1.2.2 Thuộc tính Name Phải được đặt duy nhất và dễ nhớ. Có 2 cách đặt tên : Nhóm các mục có cùng cha trên menu vào chung một dãy các điều khiển và dùng chung một tên. Mỗi mục có tên riêng, nhưng nên bắt đầu bằng mnu. Ví dụ: tên của menu File là mnuFile. 2. Sử dụng điều khiển Msflexgrid Để sử dụng MSFlexGrid trong Visual Basic, ta làm như sau: Chọn menu Project Components Hộp thoại Components xuất hiện. Trong danh sách các thành phần, cuộn xuống và tìm “Microsoft MSFlexGrid Control 6.0 ” Chọn vào hộp đánh dấu trong danh sách và nhấn OK. Điều khiển MSFlexGrid được thêm vào hộp công cụ. 2.1 Đưa dữ liệu vào điều khiển MSFlexGrid Ta có thể đưa dữ liệu vào điều khiển thông qua thuộc tính và phương thức của MSFlexGrid. Bắt đầu với thuộc tính Rows và Columns, nó sẽ cung cấp các ô để ta đưa dữ liệu vào. Ví dụ : FlexGrid1.Rows = 2 FlexGrid1.Columns = 4 Hai câu lệnh trên sẽ tạo một lưới có 8 ô, gồm 2 dòng và 4 cột. Sau khi tạo dòng và cột, ta có thể duyệt qua từng ô để đưa dữ liệu vào. Ta thực hiện điều này bằng cách quy định thuộc tính Row và Col của lưới; nó xác định vị trí ô hiện hành. Sau đó, gán dữ liệu vào ô hiện hành bằng cách dùng thuộc tính Text của ô. Thuộc tính Text có thể được dùng để xem hay quy định dữ liệu của ô hiện hành. Ví dụ : MSFlexGrid1.Col = 1 MSFlexGrid1.Row = 1 MSFlexGrid1.Text = “MSFlexGrid” 2.2 Dùng phương thức AddItem để đưa dữ liệu vào FlexGrid Thay vì định trước số dòng và số cột, ta còn có thể dùng phương thức AddItem để điền dữ liệu vào lưới, không cần biết trước số lượng dữ liệu là bao nhiêu. 2.3 Sử dụng FlexGrid với cơ sở dữ liệu Ta có thể điền dữ liệu vào điều khiển FlexGrid bằng cách kết nối điều khiển với một điều khiển dữ liệu. Khi đó, dữ liệu hiển thị trên lưới được xác định bởi điều khiển dữ liệu; ta không cần dùng phương thức AddItem hay các thuộc tính, phương thức khác để điền dữ liệu vào lưới nữa. 3. TextBox TextBox dùng để nhập thông tin từ bàn phím hoặc hiển thị thông tin từ biến bộ nhớ. Sau đây em xin giới thiệu một số sự kiện và phương thức chính của TextBox nhằm phục vụ cho đồ án. 3.1 Sự kiện Click (), DblClick () : Sự kiện này được thực hiện khi nhấn, kích đúp chuột lên TextBox. GotFocus (), LostFocus () : được thực hiện khi con trỏ hội tụ và rời khỏi TextBox. Change : được thực hiện khi thuộc tính Text thay đổi . 3.2 Phương thức SetFocus : đưa con trỏ hội tụ vào TextBox, phương thức SetFocus được áp dụng cho mọi đối tượng. Ví dụ : Viết đoạn chương trình nhập ngày vào TextBox, nếu nhập giá trị không hợp lệ thì sẽ có thông báo là “Invalid Date !”, và đưa con trỏ hội tụ vào TextBox để người sử dụng nhập lại giá trị. 4. Hộp thoại Hộp thoại (Dialog) là một trong những cách thức để Windows giao tiếp với người sử dụng. Ví dụ : Private Sub Form_QueryUnload(Cancel As Integer, UnloadMode As Integer) i = MsgBox(" Ban co muon thoat khoi chuong trinh khong ? ", vbYesNo) If i = vbNo Then Cancel = True End If End Sub 5. Một số công cụ xây dựng giao diện khác Label : Là đối tượng dùng để đưa thông tin cho các TextBox, có các thuộc tính cơ bản : Name : Tên của Label Caption : Nội dung tiêu đề của label CheckBox : Name : Tên của CheckBox Caption : Nội dung tiêu đề của CheckBox Option : Name : Tên của Option Caption : Nội dung tiêu đề của Option Frame : dùng đề chứa các đối tượng khác để thuận tiện cho việc điều khiển Name : Tên của Frame Caption : Nội dung tiêu đề của Frame. Command: Name : Tên của Command. Caption : Nội dung tiêu đề của Command. ComonDialog : Là đối tượng điều khiển không nhìn thấy trong lúc chạy chương trình. Đối tượng này dùng để gọi các hộp thoại chung của Windows. Ví dụ : ShowOpen : dùng để mở FileName. ShowSave : dùng để Save FileName. Để sử dụng đối tượng này ta phải khởi động Visual Basic, sau đó : Vào Project. Vào Components. Đánh dấu vào “Microsoft Common Dialog Control 6.0”. III. sử dụng điều khiển dữ liệu để tạo giao diện người sử dụng Ta có thể dùng một điều khiển dữ liệu để quản lý kết nối giữa biểu mẫu Visual Basic và một cơ sở dữ liệu. Điều khiển dữ liệu còn cung cấp chức năng duyệt dữ liệu đơn giản, cho phép ứng dụng duyệt qua một Recordset, thêm và cập nhật mẩu tin. Trong Visual Basic có 2 điều khiển dữ liệu thông dụng, đó là: Điều khiển DAO (Data Access Object) Điều khiển ADO (ActiveX Data Object) 1. DAO DAO là một thư viện DLL, được dùng chủ yếu để thao tác trên dữ liệu trong một cơ sở dữ liệu đã có. Thi hành truy vấn, cập nhật mẩu tin, và thi hành các hoạt động bảo trì là sở trường của DAO. Thư viện DAO hoàn toàn xử lý cơ sở dữ liệu trên máy Client. Visual Basic tạo ra ActiveX DLL, ActiveX EXE và được đặt ở trên máy chủ, dùng DAO trực tiếp kết nối vào Database. Visual Basic ở Client truy nhập trực tiếp vào ActiveX để nhận yêu cầu và gửi kết quả. Với mô hình này đáp ứng được các yêu cầu sau : ứng dụng có tốc độ không phụ thuộc vào đường kết nối Khi thay đổi, phát triển chương trình chỉ cần thay đổi, phát triển trên máy chủ, không phải thay đổi các ứng dụng ở Client. Cách thiết lập tham chiếu đến DAO : 1. Từ Menu Project chọn References 2. Hộp thoại References xuất hiện. 3. Từ danh sách các thư viện, chọn vào hộp đánh dấu “Microsoft DAO 3.6 Objects Library”. Nhấn OK. 2. ADO ADO hiện nay được Microsoft xem là kỹ thuật để truy cập cơ sở dữ liệu từ Web Server. Bởi vì ADO được cung cấp dưới dạng thư viện ActiveX Server (tương tự như DAO), ta có thể thoải mái dùng ADO trong ứng dụng Visual Basic. Là thư viện dùng để kết nối tới các cơ sở dữ liệu đặc biệt qua OLEDB. OLEDB là giao diện (interface) được nhúng vào các ứng dụng trên công nghệ mới, tăng tốc độ truy cập cơ sở dữ liệu. ADO được ứng dụng trong tất cả các ngôn ngữ lập trình. Cách thiết lập tham chiếu đến ADO trong ứng dụng Visual Basic: Từ menu Project chọn References Hộp thoại References xuất hiện Chọn vào hộp đánh dấu “Microsoft ActiveX Data Objects 2.x Library” rồi nhấn OK. Do thư viện ADO có một số tính năng, ưu điểm hơn hẳn DAO nên ở đồ án này em sẽ dùng thư viện ADO để quản lý kết nối giữa biểu mẫu Visual Basic với cơ sở dữ liệu. Để thuận tiện cho việc sử dụng, em quyết định lưu trữ dữ liệu trong hệ quản trị cơ sở dữ liệu Microsoft Access. Chương III Xây dựng các giao diện để thu và xử lý sơ bộ ý kiến của các chuyên gia ở hai chương trước chúng ta đã tìm hiểu về vai trò của các chuyên gia và làm quen với ngôn ngữ lập trình Visual Basic, các công cụ làm việc của Visual Basic trong việc thiết kế giao diện thu thông tin. ở chương III, chúng ta sẽ dùng Visual Basic để xây dựng các giao diện thu ý kiến của các chuyên gia. Sau đây chúng ta sẽ tìm hiểu một số bài toán phân tích so sánh các phương án mà ở đó chuyên gia cho ý kiến ở các dạng khác nhau như : Cho ý kiến bằng điểm (bằng số) Cho ý kiến bằng lời (bằng từ ngữ) Xây dựng chương trình Giao diện chính của chương trình : Giới thiệu đề tài, giáo viên hướng dẫn và tác giả của chương trình : 3. Chương trình : Có hai cách nhập dữ liệu : Nhập dữ liệu từ File và nhập dữ liệu từ bàn phím. I. Nhập dữ liệu từ file cho trước 1. Chuyên gia cho ý kiến bằng điểm số từ 0,…,10 Giả sử có dữ liệu đầu vào như sau : Có 15 vận động viên tham gia môn thi “trượt băng nghệ thuật”, tên của các vận động viên như sau : 1. Nguyễn Hằng Nga 2. Trần Mai Thu 3. Mai Thu Lan 4. Nguyễn Thu Trang 5. Lê Hằng 6. Nghiêm Thị Dung Bùi Thu Huyền 8. Lê Ngọc Hân 9. Nguyễn Hồng Hạnh Đinh Kim Huệ Lương Thu Huyền Đoàn Kiều Hương Ngô Bích Liên Chu Minh Loan Nguyễn Xuân Thu Có 10 chuyên gia. Trọng số (độ quan trọng) W tương ứng của các chuyên gia là : Nguyễn Bá Duẩn trọng số là 0.1 Nguyễn Trần Tuấn Anh trọng số là 0.0 Nguyễn Minh Hằng trọng số là 0.1 Nguyễn Hải Yến trọng số là 0.2 Nguyễn Thu Phương trọng số là 0.1 Lê Thu Huyền trọng số là 0.1 Nguyễn Ngọc Hoàng trọng số là 0.2 Nguyễn Văn Thành trọng số là 0.1 Nguyễn Thành Trung trọng số là 0.0 Nguyễn Công Nguyên trọng số là 0.1 Ta coi mỗi thí sinh là một phương án, từng thí sinh được các chuyên gia cho điểm như sau : 1. Đối với thí sinh : Nguyễn Hằng Nga Chuyên gia Nguyễn Bá Duẩn cho 7 điểm Chuyên gia Nguyễn Trần Tuấn Anh cho 6 điểm Chuyên gia Nguyễn Minh Hằng cho 8 điểm Chuyên gia Nguyễn Hải Yến cho 8 điểm Chuyên gia Nguyễn Thu Phương cho 8 điểm Chuyên gia Lê Thu Huyền cho 6 điểm Chuyên gia Nguyễn Ngọc Hoàng cho 7.5 điểm Chuyên gia Nguyễn Văn Thành cho 7 điểm Chuyên gia Nguyễn Thành Trung cho 9 điểm Chuyên gia Nguyễn Công Nguyên cho 5 điểm 2. Đối với thí sinh : Trần Mai Thu Chuyên gia Nguyễn Bá Duẩn cho 5 điểm Chuyên gia Nguyễn Trần Tuấn Anh cho 6 điểm Chuyên gia Nguyễn Minh Hằng cho 5 điểm Chuyên gia Nguyễn Hải Yến cho 5 điểm Chuyên gia Nguyễn Thu Phương cho 6 điểm Chuyên gia Lê Thu Huyền cho 6 điểm Chuyên gia Nguyễn Ngọc Hoàng cho 8.6 điểm Chuyên gia Nguyễn Văn Thành cho 8 điểm Chuyên gia Nguyễn Thành Trung cho 6 điểm Chuyên gia Nguyễn Công Nguyên cho 5 điểm 3. Đối với thí sinh : Mai Thu Lan Chuyên gia Nguyễn Bá Duẩn cho 7 điểm Chuyên gia Nguyễn Trần Tuấn Anh cho 8 điểm Chuyên gia Nguyễn Minh Hằng cho 8 điểm Chuyên gia Nguyễn Hải Yến cho 8 điểm Chuyên gia Nguyễn Thu Phương cho 7 điểm Chuyên gia Lê Thu Huyền cho 8 điểm Chuyên gia Nguyễn Ngọc Hoàng cho 6 điểm Chuyên gia Nguyễn Văn Thành cho 9.5 điểm Chuyên gia Nguyễn Thành Trung cho 9 điểm Chuyên gia Nguyễn Công Nguyên cho 8 điểm 4. Đối với thí sinh : Nguyễn Thu Trang Chuyên gia Nguyễn Bá Duẩn cho 4 điểm Chuyên gia Nguyễn Trần Tuấn Anh cho 5 điểm Chuyên gia Nguyễn Minh Hằng cho 4 điểm Chuyên gia Nguyễn Hải Yến cho 5 điểm Chuyên gia Nguyễn Thu Phương cho 6 điểm Chuyên gia Lê Thu Huyền cho 6 điểm Chuyên gia Nguyễn Ngọc Hoàng cho 8 điểm Chuyên gia Nguyễn Văn Thành cho 6.7 điểm Chuyên gia Nguyễn Thành Trung cho 9 điểm Chuyên gia Nguyễn Công Nguyên cho 6 điểm 5. Đối với thí sinh : Lê Hằng Chuyên gia Nguyễn Bá Duẩn cho 5 điểm Chuyên gia Nguyễn Trần Tuấn Anh cho 5 điểm Chuyên gia Nguyễn Minh Hằng cho 5 điểm Chuyên gia Nguyễn Hải Yến cho 5 điểm Chuyên gia Nguyễn Thu Phương cho 5 điểm Chuyên gia Lê Thu Huyền cho 8 điểm Chuyên gia Nguyễn Ngọc Hoàng cho 9 điểm Chuyên gia Nguyễn Văn Thành cho 8.4 điểm Chuyên gia Nguyễn Thành Trung cho 0 điểm Chuyên gia Nguyễn Công Nguyên cho 8 điểm 6. Đối với thí sinh : Nghiêm Thị Dung Chuyên gia Nguyễn Bá Duẩn cho 9 điểm Chuyên gia Nguyễn Trần Tuấn Anh cho 8 điểm Chuyên gia Nguyễn Minh Hằng cho 9 điểm Chuyên gia Nguyễn Hải Yến cho 9 điểm Chuyên gia Nguyễn Thu Phương cho 5 điểm Chuyên gia Lê Thu Huyền cho 8 điểm Chuyên gia Nguyễn Ngọc Hoàng cho 6 điểm Chuyên gia Nguyễn Văn Thành cho 8.7 điểm Chuyên gia Nguyễn Thành Trung cho 7 điểm Chuyên gia Nguyễn Công Nguyên cho 9.6 điểm 7. Đối với thí sinh : Bùi Thu Huyền Chuyên gia Nguyễn Bá Duẩn cho 7 điểm Chuyên gia Nguyễn Trần Tuấn Anh cho 7 điểm Chuyên gia Nguyễn Minh Hằng cho 7 điểm Chuyên gia Nguyễn Hải Yến cho 7 điểm Chuyên gia Nguyễn Thu Phương cho 7 điểm Chuyên gia Lê Thu Huyền cho 7 điểm Chuyên gia Nguyễn Ngọc Hoàng cho 8 điểm Chuyên gia Nguyễn Văn Thành cho 9.5 điểm Chuyên gia Nguyễn Thành Trung cho 7 điểm Chuyên gia Nguyễn Công Nguyên cho 6.7 điểm 8. Đối với thí sinh : Lê Ngọc Hân Chuyên gia Nguyễn Bá Duẩn cho 8 điểm Chuyên gia Nguyễn Trần Tuấn Anh cho 8 điểm Chuyên gia Nguyễn Minh Hằng cho 6 điểm Chuyên gia Nguyễn Hải Yến cho 5 điểm Chuyên gia Nguyễn Thu Phương cho 9 điểm Chuyên gia Lê Thu Huyền cho 8 điểm Chuyên gia Nguyễn Ngọc Hoàng cho 8.7 điểm Chuyên gia Nguyễn Văn Thành cho 9 điểm Chuyên gia Nguyễn Thành Trung cho 8 điểm Chuyên gia Nguyễn Công Nguyên cho 8 điểm 9. Đối với thí sinh : Nguyễn Hồng Hạnh Chuyên gia Nguyễn Bá Duẩn cho 8 điểm Chuyên gia Nguyễn Trần Tuấn Anh cho 8 điểm Chuyên gia Nguyễn Minh Hằng cho 8.6 điểm Chuyên gia Nguyễn Hải Yến cho 6 điểm Chuyên gia Nguyễn Thu Phương cho 8.9 điểm Chuyên gia Lê Thu Huyền cho 9.3 điểm Chuyên gia Nguyễn Ngọc Hoàng cho 8.5 điểm Chuyên gia Nguyễn Văn Thành cho 7.9 điểm Chuyên gia Nguyễn Thành Trung cho 7 điểm Chuyên gia Nguyễn Công Nguyên cho 8.9 điểm 10. Đối với thí sinh : Đinh Kim Huệ Chuyên gia Nguyễn Bá Duẩn cho 9.5 điểm Chuyên gia Nguyễn Trần Tuấn Anh cho 9 điểm Chuyên gia Nguyễn Minh Hằng cho 8.8 điểm Chuyên gia Nguyễn Hải Yến cho 8.9 điểm Chuyên gia Nguyễn Thu Phương cho 8 điểm Chuyên gia Lê Thu Huyền cho 8 điểm Chuyên gia Nguyễn Ngọc Hoàng cho 8 điểm Chuyên gia Nguyễn Văn Thành cho 8.8 điểm Chuyên gia Nguyễn Thành Trung cho 9 điểm Chuyên gia Nguyễn Công Nguyên cho 8.7 điểm 11. Đối với thí sinh : Lương Thu Huyền Chuyên gia Nguyễn Bá Duẩn cho 5 điểm Chuyên gia Nguyễn Trần Tuấn Anh cho 8 điểm Chuyên gia Nguyễn Minh Hằng cho 7.8 điểm Chuyên gia Nguyễn Hải Yến cho 8 điểm Chuyên gia Nguyễn Thu Phương cho 6.9 điểm Chuyên gia Lê Thu Huyền cho 6 điểm Chuyên gia Nguyễn Ngọc Hoàng cho 9 điểm Chuyên gia Nguyễn Văn Thành cho 8.8 điểm Chuyên gia Nguyễn Thành Trung cho 8 điểm Chuyên gia Nguyễn Công Nguyên cho 7 điểm 12. Đối với thí sinh : Đoàn Kiều Hương Chuyên gia Nguyễn Bá Duẩn cho 7 điểm Chuyên gia Nguyễn Trần Tuấn Anh cho 7.8 điểm Chuyên gia Nguyễn Minh Hằng cho 7.7 điểm Chuyên gia Nguyễn Hải Yến cho 6.9 điểm Chuyên gia Nguyễn Thu Phương cho 8 điểm Chuyên gia Lê Thu Huyền cho 9.3 điểm Chuyên gia Nguyễn Ngọc Hoàng cho 7 điểm Chuyên gia Nguyễn Văn Thành cho 7 điểm Chuyên gia Nguyễn Thành Trung cho 9 điểm Chuyên gia Nguyễn Công Nguyên cho 9.7 điểm 13. Đối với thí sinh : Ngô Bích Liên Chuyên gia Nguyễn Bá Duẩn cho 7 điểm Chuyên gia Nguyễn Trần Tuấn Anh cho 8.6 điểm Chuyên gia Nguyễn Minh Hằng cho 6.8 điểm Chuyên gia Nguyễn Hải Yến cho 6 điểm Chuyên gia Nguyễn Thu Phương cho 8.6 điểm Chuyên gia Lê Thu Huyền cho 9 điểm Chuyên gia Nguyễn Ngọc Hoàng cho 6.8 điểm Chuyên gia Nguyễn Văn Thành cho 9 điểm Chuyên gia Nguyễn Thành Trung cho 8 điểm Chuyên gia Nguyễn Công Nguyên cho 7 điểm 14. Đối với thí sinh : Chu Minh Loan Chuyên gia Nguyễn Bá Duẩn cho 7 điểm Chuyên gia Nguyễn Trần Tuấn Anh cho 8.5 điểm Chuyên gia Nguyễn Minh Hằng cho 7 điểm Chuyên gia Nguyễn Hải Yến cho 8.6 điểm Chuyên gia Nguyễn Thu Phương cho 8.2 điểm Chuyên gia Lê Thu Huyền cho 7.9 điểm Chuyên gia Nguyễn Ngọc Hoàng cho 8.2 điểm Chuyên gia Nguyễn Văn Thành cho 7 điểm Chuyên gia Nguyễn Thành Trung cho 7 điểm Chuyên gia Nguyễn Công Nguyên cho 7 điểm 15. Đối với thí sinh : Nguyễn Xuân Thu Chuyên gia Nguyễn Bá Duẩn cho 6 điểm Chuyên gia Nguyễn Trần Tuấn Anh cho 8điểm Chuyên gia Nguyễn Minh Hằng cho 7.7 điểm Chuyên gia Nguyễn Hải Yến cho 8 điểm Chuyên gia Nguyễn Thu Phương cho 6.3 điểm Chuyên gia Lê Thu Huyền cho 8 điểm Chuyên gia Nguyễn Ngọc Hoàng cho 5 điểm Chuyên gia Nguyễn Văn Thành cho 6 điểm Chuyên gia Nguyễn Thành Trung cho 9 điểm Chuyên gia Nguyễn Công Nguyên cho 9 điểm Giao diện chương trình mở dữ liệu từ File: Kết quả thực hiện : Đánh giá : Sau khi thống nhất, cả hội đồng nhất trí cho mỗi thí sinh ( mỗi phương án) điểm như sau : Phương án tốt nhất : Thí sinh có số điểm cao nhất là : Đinh Kim Huệ với số điểm là 8.56 điểm. 2. Chuyên gia cho ý kiến bằng Lời Tập nhãn S ={ Kém, Yếu, Trung bình, Trung bình Khá, Khá, Giỏi, Xuất sắc } Giả sử có dữ liệu đầu vào như sau: Có 10 học sinh cần được xếp loại học lực, 10 học sinh có tên như sau: Lương Thu Huyền Trần Văn Trung Nguyễn Văn Bình Trần Văn Thắng Nguyễn Anh Vũ Nguyễn Vĩnh Hưng Nguyễn Thành Trung Nguyễn Đức Toàn Chu Minh Loan Nguyễn Minh Hằng Có 6 thành viên trong hội đồng tham gia đánh giá học lực của các học sinh, 6 chuyên gia này có tên và trọng số (độ quan trọng) W tương ứng như sau: Lê Ngọc Hân trọng số là 0.1 Lê Huyền trọng số là 0.2 Trần Tuấn Anh trọng số là 0.1 Nguyễn Công Nguyên trọng số là 0.1 Nguyễn Bá Duẩn trọng số là 0.2 Lê Việt Thắng trọng số là 0.3 Ta coi mỗi học sinh là một phương án, từng học sinh được các chuyên gia cho ý kiến đánh giá như sau : 1. Đối với học sinh : Lương Thu Huyền - Chuyên gia Lê Ngọc Hân đánh giá là : Kém - Chuyên gia Lê Huyền đánh giá là : Yếu - Chuyên gia Trần Tuấn Anh đánh giá là: Trung bình - Chuyên gia Nguyễn Công Nguyên đánh giá là : Khá - Chuyên gia Nguyễn Bá Duẩn đánh giá là : Khá - Chuyên gia Lê Việt Thắng đánh giá là :Giỏi 2. Đối với học sinh : Trần Văn Trung - Chuyên gia Lê Ngọc Hân đánh giá là : Yếu - Chuyên gia Lê Huyền đánh giá là : Trung bình - Chuyên gia Trần Tuấn Anh đánh giá là: Trung bình Khá - Chuyên gia Nguyễn Công Nguyên đánh giá là : Trung bình Khá - Chuyên gia Nguyễn Bá Duẩn đánh giá là : Giỏi - Chuyên gia Lê Việt Thắng đánh giá là : Khá 3. Đối với học sinh : Nguyễn Văn Bình - Chuyên gia Lê Ngọc Hân đánh giá là : Trung bình - Chuyên gia Lê Huyền đánh giá là : Trung bình Khá - Chuyên gia Trần Tuấn Anh đánh giá là: Khá - Chuyên gia Nguyễn Công Nguyên đánh giá là : Yếu - Chuyên gia Nguyễn Bá Duẩn đánh giá là : Trung bình Khá - Chuyên gia Lê Việt Thắng đánh giá là :Khá 4. Đối với học sinh : Trần Văn Thắng - Chuyên gia Lê Ngọc Hân đánh giá là : Kém - Chuyên gia Lê Huyền đánh giá là : Kém - Chuyên gia Trần Tuấn Anh đánh giá là: Trung bình Khá - Chuyên gia Nguyễn Công Nguyên đánh giá là : Kém - Chuyên gia Nguyễn Bá Duẩn đánh giá là : Yếu - Chuyên gia Lê Việt Thắng đánh giá là :Trung bình Khá 5. Đối với học sinh : Nguyễn Anh Vũ - Chuyên gia Lê Ngọc Hân đánh giá là : Giỏi - Chuyên gia Lê Huyền đánh giá là : Khá - Chuyên gia Trần Tuấn Anh đánh giá là: Trung bình Khá - Chuyên gia Nguyễn Công Nguyên đánh giá là : Trung bình Khá - Chuyên gia Nguyễn Bá Duẩn đánh giá là : Kém - Chuyên gia Lê Việt Thắng đánh giá là : Kém 6. Đối với học sinh : Nguyễn Vĩnh Hưng - Chuyên gia Lê Ngọc Hân đánh giá là : Giỏi - Chuyên gia Lê Huyền đánh giá là : Xuất sắc - Chuyên gia Trần Tuấn Anh đánh giá là: Khá - Chuyên gia Nguyễn Công Nguyên đánh giá là : Giỏi - Chuyên gia Nguyễn Bá Duẩn đánh giá là : Khá - Chuyên gia Lê Việt Thắng đánh giá là : Giỏi 7. Đối với học sinh : Nguyễn Thành Trung - Chuyên gia Lê Ngọc Hân đánh giá là : Trung bình - Chuyên gia Lê Huyền đánh giá là : Khá - Chuyên gia Trần Tuấn Anh đánh giá là: Giỏi - Chuyên gia Nguyễn Công Nguyên đánh giá là : Khá - Chuyên gia Nguyễn Bá Duẩn đánh giá là : Khá - Chuyên gia Lê Việt Thắng đánh giá là : Khá 8. Đối với học sinh : Nguyễn Đức Toàn - Chuyên gia Lê Ngọc Hân đánh giá là : Trung bình Khá - Chuyên gia Lê Huyền đánh giá là : Trung bình Khá - Chuyên gia Trần Tuấn Anh đánh giá là: Giỏi - Chuyên gia Nguyễn Công Nguyên đánh giá là : Khá - Chuyên gia Nguyễn Bá Duẩn đánh giá là : Khá - Chuyên gia Lê Việt Thắng đánh giá là : Trung bình Khá 9. Đối với học sinh : Chu Minh Loan - Chuyên gia Lê Ngọc Hân đánh giá là : Giỏi - Chuyên gia Lê Huyền đánh giá là : Xuất sắc - Chuyên gia Trần Tuấn Anh đánh giá là: Yếu - Chuyên gia Nguyễn Công Nguyên đánh giá là : Giỏi - Chuyên gia Nguyễn Bá Duẩn đánh giá là : Khá - Chuyên gia Lê Việt Thắng đánh giá là : Giỏi 10. Đối với học sinh : Nguyễn Minh Hằng - Chuyên gia Lê Ngọc Hân đánh giá là : Xuất sắc - Chuyên gia Lê Huyền đánh giá là : Khá - Chuyên gia Trần Tuấn Anh đánh giá là: Khá - Chuyên gia Nguyễn Công Nguyên đánh giá là : Khá - Chuyên gia Nguyễn Bá Duẩn đánh giá là : Giỏi - Chuyên gia Lê Việt Thắng đánh giá là : Xuất sắc Giao diện chính của chương trình mở dữ liệu từ File : Kết quả thực hiện: Đánh giá: Ta coi mỗi học sinh là một phương án, sau khi thống nhất, cả hội đồng nhất trí xếp loại cho mỗi học sinh ( mỗi phương án )như sau : Phương án tốt nhất : Học sinh có học lực tốt nhất là Nguyễn Vĩnh Hưng, được Hội đồng nhất trí xếp loại Giỏi. II. Nhập dữ liệu từ bàn phím 1. Chuyên gia cho ý kiến bằng Điểm số Chương trình được thiết kế như sau : Có 3 thẻ công cụ để người sử dụng làm việc : thẻ Chuyên gia, Phương án, Điểm. Thẻ “Chuyên gia” Nhập Tên chuyên gia Nhập Trọng số chuyên gia Nhập Mã chuyên gia Trọng số chuyên gia và mã chuyên gia phải là kiểu số, nếu người sử dụng nhập dữ liệu không phải là kiểu số thì chương trình sẽ đưa ra thông báo “Trọng số chuyên gia phải là dạng số” hay “Mã chuyên gia phải là kiểu số”. Tên chuyên gia, trọng số chuyên gia và mã chuyên gia không được để trống, nếu một trong 3 mục đó còn rỗng thì chương trình sẽ có thông báo “Bạn chưa nhập dữ liệu thông tin” Thẻ “Phương án” Nhập Tên phương án Nhập Mã phương án Mã phương án quy định phải là dạng số, nếu người sử dụng nhập dữ liệu không phải là dạng số thì chương trình sẽ có thông báo “Mã phương án phải là dạng số”. Thẻ “Điểm” Thẻ này chỉ dùng để nhập điểm từ 0 đến 10, quy định kiểu dữ liệu là dạng số, nếu không phải là số chương trình sẽ có thông báo “Các đánh giá phải là dạng số” nếu nhập điểm bé hơn 0 hoặc điểm lớn hơn 10 chương trình sẽ thông báo “Bạn phải nhập điểm số trong khoảng từ 0 đến 10”. Chương trình sẽ kiểm tra tính hợp lệ của dữ liệu nhập vào, nếu dữ liệu không hợp lệ chương trình sẽ đưa ra thông báo, và bắt bạn phải nhập đúng kiểu dữ liệu. Sau khi người sử dụng nhập đầy đủ thông tin cần đánh giá (các thông tin này phải có tính hợp lệ) người sử dụng có thể chọn nút “ Đồng ý ”, chương trình sẽ thực hiện tiếp công việc. 2. Chuyên gia cho ý kiến bằng lời Chương trình được thiết kế như sau : Có 3 thẻ công cụ để người sử dụng làm việc : thẻ Chuyên gia, Phương án, Đánh giá. 1. Thẻ “Chuyên gia” Nhập Tên chuyên gia Nhập Trọng số chuyên gia Nhập Mã chuyên gia Trọng số chuyên gia và mã chuyên gia phải là kiểu số, nếu người sử dụng nhập dữ liệu không phải là kiểu số thì chương trình sẽ đưa ra thông báo “Trọng số chuyên gia phải là dạng số” hay “Mã chuyên gia phải là kiểu số”. Tên chuyên gia, trọng số chuyên gia và mã chuyên gia không được để trống, nếu một trong 3 mục đó còn rỗng thì chương trình sẽ có thông báo “Bạn chưa nhập dữ liệu thông tin” 2. Thẻ “Phương án” Nhập Tên phương án Nhập Mã phương án Mã phương án quy định phải là dạng số, nếu người sử dụng nhập dữ liệu không phải là dạng số thì chương trình sẽ có thông báo “Mã phương án phải là dạng số”. 3. Thẻ “Đánh giá” Thẻ này chỉ dùng để nhập ý kiến đánh giá của các chuyên gia, quy định dữ liệu nhập vào phải là một trong các từ sau: “KéM, YếU, TRUNG BìNH, TRUNG BìNH KHá, KHá, GIỏI, XUấT SắC”, nếu dữ liệu nhập vào không phải là một trong số các từ này thì chương trình sẽ có thông báo “Kiểu dữ liệu không hợp lệ, đánh giá của chuyên gia phải là một trong số các từ : kém, yếu, trung bình, trung bình khá, khá, giỏi, xuất sắc”. Sau khi người sử dụng nhập đầy đủ thông tin hợp lệ cần đánh giá, người sử dụng có thể chọn nút “ Đồng ý ”, chương trình sẽ thực hiện tiếp công việc. Mục lục Tài liệu tham khảo Bùi Công Cường, Kiến thức cơ sở của hệ mờ , Institute of Mathematics, Preprint 2000/32, Hà Nội, 2000. Hệ mờ và ứng dụng, Biên tập tập thể : Nguyễn Hoàng Phương, Bùi Công Cường, Nguyễn Doãn Phước, Phan Xuân Minh, Chu Văn Hỷ, NXB Khoa học và Kỹ thuật, 1998, Hà Nội. Bùi Công Cường, Cơ sở toán học của các hệ mờ, Giáo trình , Đại học Bách Khoa Hà Nội. L.A.Zadeh, Fuzzy sets, Inform and Control , vol 8, 1965, 338-353 Bùi Công Cường, Logic mờ và các ứng dụng đa dạng của nó.Viện Toán học Hà Nội, Preprint 99/35, Hà Nội, 1999. Bùi Công Cường - Suy rộng toán tử OWA của Yager và ứng dụng vào xử lý thông tin trong các hệ tri thức, Hệ mờ, mạng Nơron và ứng dụng, NXB Khoa học kỹ thuật 2001.

Các file đính kèm theo tài liệu này:

  • doc28689.doc
Tài liệu liên quan