Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 55 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
55
Dung lượng
2,02 MB
Nội dung
LỜI CẢM ƠN Sau thời gian học tập nghiên cứu, em hoàn thành đồ án tốt nghiệp với đề tài: “Nghiên cứu giải thuật SEAMO, ứng dụng xây dựng modul hỗ trợ người dùng cấu hình máy tính” Trước tiên em xin bày tỏ lòng kính trọng biết ơn chân thành đến cô giáo ThS Dương Thị Mai Thương người trực tiếp hướng dẫn tận tình bảo tạo điều kiện giúp đỡ em để hoàn thành đồ án tốt nghiệp Qua thời gian thầy hướng dẫn, em học hỏi nhiều kiến thức bổ ích kinh nghiệm quý báu làm tảng cho trình học tập, làm việc nghiên cứu sau Em xin chân thành cảm ơn thầy cô giáo giảng dạy môn Khoa học máy tính thầy cô giáo giảng dạy Khoa công nghệ thông tin – Trường ĐH Công nghệ thông tin truyền thông – ĐH Thái Nguyên suốt thời gian năm học tập trường trang bị cho em kiến thức cần thiết bổ ích giúp em hoàn thành đồ án tốt nghiệp Với vốn kiến thức tiếp thu trình học không tảng cho trình nghiên cứu thực tâp mà hành trang quí báu để em phát triển công việc thực tiễn tương lai Cuối em kính chúc quý Thầy, Cô dồi sức khỏe thành công nghiệp cao quý Đồ án hoàn thành không tránh khỏi nhiều thiếu sót vấn đề chưa xử lý Em mong nhận thông cảm bảo tận tình quý Thầy cô bạn Thái nguyên, ngày tháng 06 năm 2016 Sinh viên Nguyễn Thế Toàn LỜI CAM ĐOAN Để hoàn thành đồ án tốt nghiệp quy định đáp ứng nhu cầu đề ra, thân em cố gắng nghiên cứu, học tập làm việc thời gian dài với hướng dẫn nhiệt tình cô giáo Th.s Dương Thị Mai Thương thầy cô giáo khoa công nghệ thông tin Em tham khảo số tài liệu nêu phần “Tài liệu tham khảo” không chép nội dung từ đồ án khác Em xin cam đoan lời nói hoàn toàn thật, thông tin sai lệch em xin hoàn toàn chịu trách nhiện trước hội đồng Thái nguyên, ngày… tháng 06 năm 2016 Sinh viên Nguyễn Thế Toàn MỤC LỤC LỜI CẢM ƠN .1 LỜI CAM ĐOAN MỤC LỤC DANH MỤC HÌNH ẢNH MỞ ĐẦU CHƯƠNG 1: TỔNG QUAN VỀ TỐI ƯU ĐA MỤC TIÊU 1.1 Giới thiệu toán tối ưu đa mục tiêu .8 1.1.1 Mô hình toán tối ưu đa mục tiêu có ràng buộc .9 1.1.2 Khái niệm tối ưu Pareto 1.1.3 Khái niệm trội Pareto 1.1.4 Tập lời giải tối ưu Pareto 10 1.2 Bài toán túi (Knapsack) 11 1.2.1 Bài túi dạng 0-1 11 1.2.2 Bài toán túi bị chặn 11 1.2.3 Bài toán túi không bị chặn 12 1.3 Bài toán túi đa mục tiêu 12 1.4 Mô hình toán túi đa mục tiêu .15 1.4.1 Mô hình mã nhị phân .15 1.4.2 Mô hình mã hóa hoán vị 16 1.4.3 Một số ví dụ mã hóa toán túi đa mục tiêu 17 CHƯƠNG 2: GIẢI THUẬT DI TRUYỀN CHO BÀI TOÁN TỐI ƯU ĐA MỤC TIÊU 19 2.1 Giới thiệu giải thuật di truyền 19 2.1.1 Các nguyên tắc giải thuật di truyền 19 2.1.2 Các vấn đề tìm kiếm đa mục tiêu 21 2.1.3 Mô hình tổng quát giải thuật di truyền 22 2.2 Một số thuật toán thường áp dụng giải toán tối ưu đa mục tiêu.23 2.2.1 Thuật toán MOGA 23 2.2.2 Thuật toán VEGA 25 2.2.3 Thuật toán SEAMO, SEAMO2 .26 2.2.4 Thuật toán NSGA, NSGA II 30 2.2.5 Thuật toán SPEA, SPEA 36 CHƯƠNG 3: XÂY DỰNG GIẢI PHÁP HỖ TRỢ NGƯỜI DÙNG CẤU HÌNH MÁY TÍNH .40 3.1 Máy tính số 40 3.2 Phân loại theo nhu cầu 44 3.2.1 Phân loại theo cấu hình 44 3.2.2 Phân loại người sử dụng theo thương hiệu: .44 3.2.3 Phân loại người sử dụng theo hình thức: 45 3.3 Cài đặt thuật toán SEAMO2 47 3.3.1 Thuật toán SEAMO2 47 3.3.2 Dữ liệu toán .47 3.3.3 Mô hình toán tử cho toán máy tính 0-1 đa mục tiêu .49 KẾT LUẬN .52 HƯỚNG PHÁT TRIỂN 53 TÀI LIỆU THAM KHẢO 54 DANH MỤC HÌNH ẢNH Hình 2.1 Mối liên hệ không gian cá thể, vectơ định mục tiêu .21 Hình 2.2: Mô hình tổng quát giải thuật di truyền .23 Hình 2.3: Minh họa thuật toán MOGA 25 Hình 2.4:Minh họa biên chứa nghiệm không trội thứ hạng tương ứng 30 Hình 2.5: Minh họa khoảng cách quy tụ quanh nghiệm i 34 Hình 2.6: Minh họa biên thứ hạng 34 Hình 2.7: Minh họa quy tụ nghiệm quanh nghiệm .35 Hình 2.8: Minh họa tính toán độ thích nghi cá thể .38 Hình 2.9: Minh họa cách xóa bỏ nghiệm có δk nhỏ 39 Hình 3.1: kết thu với liệu 750 thiết bị với kích thước 250 50 Hình 3.2: kết thu với liệu 500 thiết bị với kích thước 250 50 Hình 3.3: kết thu với liệu 100 thiết bị với kích thước 100 51 MỞ ĐẦU Lý chọn đề tài: Trên thực tế, tồn nhiều toán yêu cầu tối ưu hóa đồng thời nhiều mục tiêu (thường cạnh tranh lẫn nhau) ví dụ như: định tuyến phương tiện giao thông để xác định tuyến đường tối ưu nhằm cung cấp dịch vụ cho tập hợp khách hàng liên quan đến số mục tiêu khác nhau: tổng quãng đường (hoặc thời gian thực hiện), lượng xe sử dụng, độ hài lòng khách hàng (giao hàng khoảng thời gian thỏa thuận trước), … hay việc mua máy tính đảm bảo cho đáp ứng yêu cầu cấu hình, thẩm mỹ, thương hiệu với số tiền chi tiêu không vượt giới hạn, … Giải thuật di truyền (GA) mô hình tính toán phổ biến thành công lĩnh vực tính toán thông minh Cùng với kỹ thuật tính toán thông minh khác tính toán mờ (fuzzy computing), mạng Nơ-ron (neural networks), hệ đa tác tử (multi- agent systems), trí tuệ bầy đàn (swarm intelligence), giải thuật di truyền ngày phát triển, áp dụng rộng rãi lĩnh vực sống Đối với toán đa mục tiêu, có nhiều phương pháp nghiên cứu đề xuất thuật toán để giải toán như: MOGA, NSGA2, SPEA2, SEAMO2, … giải thuật SEAMO2 hiệu Với giải thuật SEAMO2, việc thay cá thể vào quần thể (thực chiến lược chọn lọc tự nhiên) độ hội tụ tập nghiệm tối ưu (với lần chạy ngắn) chưa cao quần thể nghiệm đạt ngưỡng tối ưu (với lần chạy dài) nhiều thời gian để loại cá thể không phù hợp Chính vậy, tác giả mạnh dạn nghiên cứu phương pháp cải tiến chiến lược chọn lọc tự nhiên giải thuật SEAMO2 để giải toán tối ưu đa mục tiêu luận văn: “Nghiên cứu giải thuật SEAMO, ứng dụng xây dựng modul hỗ trợ người dùng cấu hình máy tính” Mục đích nghiên cứu Mục tiêu đồ án nghiên cứu toán tử giải thuật di truyền (hay giải thuật tiến hóa nói chung) đặc biệt toán tử chọn lọc tự nhiên để chọn lọc thay lời giải nhằm tối ưu tập lời giải thu giúp cho giải thuật di truyền giải hiệu toán tối ưu đa mục tiêu Mục đích cụ thể đồ án sử dụng toán tử di truyền khác thuật toán SEAMO2, ứng dụng cho toán máy tính đa mục tiêu, thay đổi chiến lược chọn lọc tự nhiên thuật toán nhằm cải tiến thuật toán Phương pháp so sánh với kết thuật toán tối ưu đa mục tiêu khác như: SPEA2, NSGA2 Do mục tiêu đồ án là: Nghiên cứu giải thuật di truyền cho toán đa mục tiêu Nhiệm vụ nghiên cứu Nghiên cứu mô hình giải thuật di truyền có áp dụng nguyên lý tiến hóa sở tiếp cận ý tưởng từ thuật toán di truyền để giải toán máy tính đa mục tiêu như: NSGA2, SPEA2, SEAMO2, cách thức tìm nghiệm thuật toán để cải thiện cải tiến thuật toán di truyền có áp dụng nguyên lý tiến hóa SEAMO2 Đối tượng phạm vi nghiên cứu Tìm hiểu toán tối ưu đa mục tiêu, toán máy tính 0-1 đa mục tiêu Tìm hiểu giải thuật tiến hóa, mô hình giải thuật tiến hóa áp dụng cho toán máy tính - đa mục tiêu Xây dựng ứng dụng giải toán máy tính - đa mục tiêu với giải thuật SEAMO2 đề xuất phương pháp cải tiến giải thuật So sánh kết thực nghiệm phương pháp đề xuất với kết thuật toán khác Phương pháp nghiên cứu Dựa tài liệu thu thập từ nhiều nguồn (tài liệu, báo giảng viên hướng dẫn cung cấp, sách, báo, tạp chí, internet…) tổng hợp, phân tích trình bày lại theo hiểu biết thân Mở rộng cách tiếp cận trước sở phân tích đặc thù giải thuật, toán cần giải để đưa ý kiến, đề xuất cải tiến hợp lý Ứng dụng kết dựa nghiên cứu để xây dựng chương trình thực nghiệm, từ so sánh với kết thuật toán tối ưu đa mục tiêu khác CHƯƠNG 1: TỔNG QUAN VỀ TỐI ƯU ĐA MỤC TIÊU 1.1 Giới thiệu toán tối ưu đa mục tiêu Tối ưu đa mục tiêu (multiobjective optimization) hay gọi tối ưu đa tiêu chuẩn (multicriteria optimization), tối ưu đa nhiệm (multiperformance optimization) hay tối ưu vectơ (vector optimization) định nghĩa toán tìm kiếm vectơ biến định mà thỏa mãn ràng buộc tối ưu hóa hàm vectơ mà thành phần biểu diễn hàm mục tiêu thông thường đối nghịch lẫn Vì thuật ngữ tối ưu có nghĩa tìm kiếm lời giải mà cho giá trị hàm mục tiêu chấp nhận người thiết kế Chúng ta gọi đại lượng số mà giá trị chọn cho toán tối ưu hóa biến định, ký hiệu xi (i=1,…,n) Vectơ x n biến lấy định biểu diễn sau: =(x1,…,xn) Trong toán tối ưu đa mục tiêu luôn có hạn chế đặt đặc trưng đặc biệt môi trường hay tài nguyên có sẵn Các hạn chế phải thỏa mãn việc xem xét lời giải chấp nhận Tổng quát, gọi hạn chế ràng buộc, chúng mô tả phụ thuộc biến lấy định số (hay tham số) toán Các ràng buộc thường biểu diễn dạng bất đẳng thức toán học sau: hk≤0 k=1,…,r Để biết lời giải tốt cần phải có số tiêu chuẩn để đánh giá Các tiêu chuẩn biểu diễn hàm toán học theo biến định, chúng gọi hàm mục tiêu Trong hàm mục tiêu đó, số hàm đối nghịch với số hàm khác, số mục tiêu cực tiểu hóa mục tiêu khác cực đại hóa Các hàm mục tiêu so sánh với nhau, nghĩa chúng đo lường đơn vị giống nhau, hay không so sánh với nhau, nghĩa chúng đo lường đơn vị khác 1.1.1 Mô hình toán tối ưu đa mục tiêu có ràng buộc Chúng ta xét mô hình tối ưu đa mục tiêu có ràng buộc gồm có p hàm mục tiêu fi(x) (i=1, …, p) r hàm (có thể phi tuyến) ràng buộc hk(x) (k=1, …, r) với x=(x1, …, xn) biến định n chiều định nghĩa theo mô hình sau Max[fi(x1, …, xn)] (i=1, …, p) cho hk(x1, …, xn) ≤ ak (k=1, …, r) Chúng ta có vectơ x* cho fi(x*) ≥ fi(x) (i=1, …, p) với tất x lời giải khả thi Nếu trường hợp xảy ra, x* gọi lời giải mong ước (desirable solution) hay lời giải lý tưởng (ideal solution), điều có nghĩa tất fi(x) có cực đại Yf điểm chung x* Nhưng thường lời giải lý tưởng này, nên phải thiết lập tiêu chuẩn để xác định xem lời giải tối ưu Trong đồ án này, xem xét tiêu chuẩn tối ưu theo khái niệm tối ưu Pareto 1.1.2 Khái niệm tối ưu Pareto Khái niệm tối ưu Pareto giới thiệu Vilfredo Pareto vào năm 1896, tạo thành sở cho việc nghiên cứu lĩnh vực Ta có định nghĩa sau : Gọi O(x) = ( f1(x), …, fp(x),g1(x), …, gq(x)) hàm vectơ p+q chiều Gọi Xf tập lời giải khả thi mô hình trên, nghĩa tập vectơ x thỏa mãn điều kiện ràng buộc 1.1.3 Khái niệm trội Pareto Gọi x, y Xf hai lời giải khả thi Ta nói x trội y O(x) tốt O(y), nghĩa : fi(x) ≥ fi(y) (i=1, …, p) gj(x)≤gj(y) (j=1, …, q) i {1, …, p}: fi(x) ≥ fi(y) hay ∃j ∈{1, …, q}: gj(x)≤gj(y) 1.1.4 Tập lời giải tối ưu Pareto Khái niệm: Gọi Xd={x ∈ Xf / ∃ y ∈ Xf cho O(y) tốt O(x)} tập lời giải khả thi bị trội Xf Khi Xp=Xf\Xd tập lời giải khả thi không bị trội Xf hay gọi tập lời giải tối ưu Pareto Xf Tuy nhiên, điểm tối ưu Pareto luôn không nhất, mà có đến tập điểm tối ưu Pareto thường gọi tập lời giải không bị trội (nondominated) Thông thường lớp toán tối ưu đa mục tiêu thiết kế kỹ thuật có tập tối ưu Pareto, toán lại có số lượng lớn lời giải có khả để chọn lựa, điều gây khó khăn điểm: việc phát sinh tập lời giải, hai việc xử lý kết Toàn lời giải tối ưu Pareto gọi tập tối ưu Pareto, vectơ mục tiêu tương ứng thành lập biên (front) Pareto hay mặt (surface) Pareto Trong hầu hết trường hợp, có nhiều lời giải tối ưu khác theo nghĩa Pareto ta phải tìm kiếm giá trị hàm mục tiêu để định giá trị chúng thích hợp gọi trình lấy định Nếu ta biết trước tầm quan trọng tương đối hàm mục tiêu trình lấy định đơn giản Tuy nhiên, nhiều trường hợp ta tầm quan trọng tương đối hàm mục tiêu không đầy đủ hay biểu diễn cách hình thức hóa đầy đủ, nên phương pháp thường không áp dụng thực tế Một cách tổng quát, ta không dễ dàng tìm biểu diễn giải tích cho đường hay mặt chứa điểm tối ưu Pareto thủ tục chuẩn để tính toán điểm Xf cho điểm tương ứng Yf Tuy nhiên, ta có số lượng tương đối đầy đủ điểm ta tiến hành lấy định cuối 10 toàn có nghĩa loại máy móc Đầu tiên máy tính giải toán số học, máy tính đại làm nhiều Từ năm 1990, khái niệm máy tính thực tách rời khỏi khái niệm điện toán trở thành ngành khoa học riêng biệt với nhiều lĩnh vực đa dạng khái niệm hẳn ngành điện toán thông thường gọi công nghệ thông tin Tuy đến ngày nay, số người nhầm lẫn hai khái niệm điện toán công nghệ thông tin Máy tính làm việc thông qua chuyển động phận khí, điện tử (electron), photon, hạt lượng tử hay tượng vật lý khác biết Mặc dù máy tính xây dựng từ nhiều công nghệ khác song gần tất máy tính máy tính điện tử Máy tính trực tiếp mô hình hóa vấn đề cần giải quyết, khả vấn đề cần giải mô gần giống với tượng vật lý khai thác Ví dụ, dòng chuyển động điện tử sử dụng để mô hình hóa chuyển động nước đập Trong phần lớn máy tính ngày nay, trước hết, vấn đề chuyển thành yếu tố toán học cách diễn tả thông tin liên quan thành số theo hệ nhị phân(hệ thống đếm dựa số hay gọi hệ đếm số 2) Sau đó, tính toán thông tin tính toán đại số Boole (Boolean algebra) Các mạch điện tử sử dụng để miêu tả phép tính Bool Vì phần lớn phép tính toán học chuyển thành phép tính Bool nên máy tính điện tử đủ nhanh để xử lý phần lớn vấn đề toán học (và phần lớn thông tin vấn đề cần giải chuyển thành vấn đề toán học).Ý tưởng này, nhận biết nghiên cứu Claude E Shannon - người làm cho máy tính kỹ thuật số (digital computer) đại trở thành thực Máy tính giải tất vấn đề toán học Alan Turing sáng tạo khoa học lý thuyết máy tính đề cập tới vấn đề mà máy tính hay giải 41 Khi máy tính kết thúc tính toán vấn đề, kết hiển thị cho người sử dụng thấy thông qua thiết bị xuất như: bóng đèn, hình, máy in Những người sử dụng máy tính, đặc biệt trẻ em, thường cảm thấy khó hiểu ý tưởng máy tính máy, "suy nghĩ" hay "hiểu" hiển thị Máy tính đơn giản thi hành tìm kiếm khí bảng màu đường thẳng lập trình trước, sau thông qua thiết bị đầu (màn hình, máy in, ) chuyển đổi chúng thành ký hiệu mà người cảm nhận thông qua giác quan (hình ảnh hình, chữ văn in ra) Chỉ có não người mỡi nhận thức ký hiệu tạo thành chữ hay số gắn ý nghĩa cho chúng Trong quan điểm máy tính thứ mà "nhận thấy" (kể máy tính coi có khả tự nhận biết) hạt electron tương đương với số Kiến trúc Von Neumann chia máy tính làm bốn phận chính: Đơn vị số học lôgic (ALU), Mạch điều khiển (control circuitry), Bộ Nhớ Các thiết bị Xuất/Nhập (I/O) Bộ nhớ Bộ nhớ máy tính có phần nhớ nhớ Trong hệ thống nhớ nối tiếp ô đánh số thứ tự, ô chứa phần nhỏ thông tin Thông tin thị cho máy tính Mỗi ô chứa liệu mà máy tính cần để thi hành thị Nội dung ô nhớ thay đổi thời điểm Kích thước ô nhớ số lượng ô nhớ thay đổi theo máy tính giống công nghệ sử dụng việc chế tạo nhớ, từ relay - điện tới ống chứa thủy ngân, từ băng từ tới transistor hay IC 42 Bộ xử lý (CPU) Đơn vị lôgic số học, (tiếng Anh Arithmetic and Logic Unit, viết tắt ALU), thiết bị thực phép tính phép tính số học (cộng, trừ, nhân, chia,…), cácphép tính lôgic (AND, OR, NOT,…) phép so sánh (ví dụ: so sánh nội dung hai byte xem có nhau) Đơn vị nơi mà "công việc thực sự" thực thi Đơn vị kiểm soát theo dõi byte nhớ có chứa thị để máy tính thực thi, cung cấp cho ALU thị cần phải thực thi chuyển kết thu tới vị trí thích hợp nhớ Sau điều diễn ra, đơn vị kiểm soát chuyển tới thị (thông thường nằm địa sau), không thị thị nhảythông báo cho máy tính thị nằm địa khác Khi tham chiếu tới nhớ, thị thời sử dụng số phương thức đánh địa (addressing mode) để xác định địa liên quan nhớ Một số bo mạch chủ máy tính gắn hai hay nhiều xử lý Các loại máy tính phục vụ thường có hai hay nhiều xử lý Thiết bị Xuất/Nhập (I/O) Thiết Bị Xuất/Nhập cho phép máy tính thu nhận thông tin từ bên qua thiết bị Nhập Sau xử lý Hệ Điều Hành Trung ương sẻ gửi kết công việc đến Thiết Bị Xuất Các Thiết Bị Nhập bao gồm: Con Trỏ (Con Chuột), Bàn Phím, Ổ Đĩa Mềm, Ổ Đĩa CD, Webcam, Touchpad Các Thiết Bị Xuất bao gồm: Màn Hình, Máy In, ổ USB flash, Ổ Cứng Di Động tới thiết bị không thông dụng Ổ ZIP Công việc thiết bị nhập (input) mã hóa (chuyển đổi) thông tin từ nhiều định dạng sang dạng liệu mà máy tính xử lý Các thiết bị xuất (output) ngược lại, thực công việc giải mã liệu thành thông tin mà người sử dụng hiểu Với ý nghĩa hệ thống máy tính coi hệ thống xử lý liệu 43 Nhận thấy kiến thức của đại phân dân cư hạn hẹp Hay chưa hiểu rõ hết sức mạnh cấu hình máy tính Dẫn tới trường hợp mua máy tính cấu hình cao tốn chi phí, lại không phù hợp với mục đích sử dụng Câu hỏi đặt để chọn máy tính phù hợp tài chính, đầy đủ sức mạnh để phục vụ mục đích làm việc, học tập, giải trí… tất người 3.2 Phân loại theo nhu cầu Tùy thuộc vào nhu cầu, mục đích sử dụng, tài cá nhân mà phân loại theo nhóm người sử dụng cho phù hợp với việc mua máy tính người 3.2.1 Phân loại theo cấu hình Phân loại người sử dụng theo nhóm cấu hình bản: + Cấu hình máy tính văn phòng: Phù hợp với công việc soạn thảo văn bản, đọc báo, facebook,… + Cấu hình máy tính dành cho game thủ: Cấu hình mạnh, giá thành vừa phải, phù hợp với game + Cấu hình dành cho dân đồ họa: với nhu cầu đồ họa , cấu hình tập trung vào card đồ họa chip để tăng tốc độ xử lý +Cấu hình dành cho quán net, quán game: cấu hình thích hợp để phục vụ game tại, phù hợp vùng miền STT Cấu hình Giá trị ASUS DELL HP LENOVO SONY 3.2.2 Phân loại người sử dụng theo thương hiệu: Vấn đề chọn mua laptop, bạn bắt gặp nhiều thương hiệu khác Tuy nhiên, dù có khó khăn phải đưa nhãn hàng phù hợp với nhu cầu Nói đến độ tin cậy thương hiệu, có 44 thể liệt kê tên tuổi hàng đầu làng công nghệ Thế giới, xếp hạng theo bầu chọn người dùng + Một thương hiệu đáng tin cậy có lẽ Apple Series Macbook có là tên nhiều biết đến, họ chưa nhìn thấy tận mắt Với tính vô độc đáo, khác biệt hoàn toàn so với thương hiệu khác, Apple thương hiệu cho cảm hứng +Thương hiệu laptop yêu thích Lenovo Nổi tiếng với series ThinkPad IdeaPad, nhà sản xuất Trung Quốc cho đời nhiều sản phẩm mang tính cách tân Sự thành công Lenovo nằm khả đáp ứng nhu cầu khách hàng sản phẩm thực tế + Xếp hạng danh sách thương hiệu đặc biệt, “đẹp người đẹp nết” Đến với Alienware, bạn có nhiều lựa chọn tính năng, phụ thuộc vào khả tài sẵn sàng chi trả cho sản phẩm bạn + Eee line giúp Asus “hạ cánh” vị trí thứ Nhà sản xuất đến từ Đài Loan giới chuyên gia đánh giá cao đóng góp việc đổi tính laptop Với mức giá dễ chịu, phù hợp với nhiều người, series netbook Eee Asus trở nên vô tiếng + Tiếp đến Sony tên tiếng người tiên phong nhiều sản phẩm công nghệ không riêng Laptop Nổi tiếng với sản phẩm chất lượng cao mình, laptop mang thương hiệu đánh giá tốt thiết kế lẫn tính STT Thương hiệu Giá trị APPLE LENOVO ALIENWARE ASUS SONY 3.2.3 Phân loại người sử dụng theo hình thức: + Hình thức với dân văn phòng phù hợp với công việc cần nhỏ gọn bắt mắt thuận tiện cho việc mang theo 45 + Hình thức với game thủ cần hình lớn, hiển thị sắc nét mượt mà để tương thích với game hành + Hình thức cho dân đồ họa cần thiết kế bắt mắt, khỏe khoắn, tạo cảm hứng cao làm việc STT Hình thức, mẫu mã Giá trị APPLE LENOVO ASUS ACER DELL Ngoài ra, công nghệ máy tính phát triển Việt Nam Hiện thị trường máy tính trở nên đa dạng với mẫu mã kiểu cách cấu hình mới, nên việc lựa chọn máy tính với nhiều người khó khăn Vì để giúp bạn chọn cho máy tính tốt phù hợp với mục đích mình, toán đưa vài hỗ trợ tốt cho người dùng cách lựa chọn cấu hình máy tính chi tiết thuận tiện Bài toán đưa hỗ trợ người dùng theo tiêu chí: Máy tính cấu hình cao Máy tính theo thương hiệu Máy tính theo hình thức, mẫu mã Từ toán túi toán tối ưu hóa tổ hợp Ta xây dựng toán đặt tên từ vấn đề chọn tối ưu xây dựng máy tính (với giới hạn số tiền) để cho thiết bị tối ưu Nội dung toán : Một người dùng mua máy tính cửa hàng có n máy tính có giá trị khác nhau, người dùng có số tiền định Vậy người dùng nên làm để mua đước máy tính tối ưu chất lượng giới hạn số tiền có M 46 Cửa hàng đưa nhiều loại thiết bị thay tư vấn cho người dùng chọn làm để chọn lọai thiết bị tốt để xây dựng thành máy tính hoàn chỉnh đáp ứng tiêu chí đưa 3.3 Cài đặt thuật toán SEAMO2 3.3.1 Thuật toán SEAMO2 Để cải thiện mục tiêu SEAMO2 thực thay chiến lược sử dụng trình lựa chọn Thuật toán SEAMO2 chế để đảm bảo giải pháp phân bố Việc thay chiến lược để đảm bảo hai mục tiêu là: tìm chiến lược tốt sử dụng để cải thiện thuật toán SEAMO2 Các thủ tục lựa chọn thuật toán SEAMO2 đơn giản, không dựa giá trị fitness hay mối quan hệ trội Hơn việc cài đặt thuật toán SEAMO2 nhanh đơn giản thuật toán tiến hóa khác có thông số để điều chỉnh 3.3.2 Dữ liệu toán Một người dùng mua máy tính cửa hàng, cửa hàng có n máy tính có giá trị khác nhau cấu hình chức sử dụng khác Nhưng người dùng có m số tiền định, mục đích sử dụng Trong người dùng có hiểu biết hạn chế máy tính, họ nên mua loại máy tính phù hợp với mục đích sử dụng m số tiền họ có Khi có người thuộc phận chăm sóc khách hàng, họ có trách nhiệm cung cấp thông tin, giới thiệu sản phẩm cho khách hàng Nhân viên chăm sóc khách hàng quảng bá đến đối tác tâm tư, nguyện vọng để đáp ứng nhu cầu cho khách hàng Trong công ty hay cửa hàng, nhân viên chia làm nhiều phận khác nhau(nhân viên kỹ thuật, nhân viên hành chính, nhân viên bán hàng….) họ quản lí khách hàng, lưu lại thông tin,cũng số tiền mà khách hàng mua từ công ty để có chế độ ưu đãi đặc biệt khách hàng quen thuộc.Sau mua sản phẩm, khách hàng chọn phương thức toán phù hợp với điều kiện mình,việc giúp khách hàng tiết kiệm nhiều thời gian Bên cạnh đó, với 47 thay đổi cuả cấu thị trường giá bán sản phẩm thay đổi thường xuyên theo giá thị trường, nhân viên quản lý phải cập nhật giá bán thường xuyên cho sản phẩm cho khách hàng giá thị trường thay đổi Vậy toán phát biểu toán học sau: Cực đại hóa Sao cho Trong : n số máy tính với giá trị pj>0 m số tiền với sức chứa ci>0, thiết bị j có trọng số cấu hình wi,j ≥ từ máy tính i, {0,1} để thiết bị xj chọn hay không chọn Mục tiêu toán để chọn tập thiết bị cho có giá trị đối đa Các thiết bị lựa chọn phải không vượt số tiền m mà khách hàng có Sau hiểu tâm lý khách hàng nhân viên chăm sóc khách hàng cung cấp số cấu hình máy tính: Hãng CPU RAM Ổ cứng máy tính Fujitsu Dell Core i3- 4GB 6100U DDR4 Core i3- 4GB 5005U DDR3 500GB Màn Car đồ Cảm hình họa ứng 13.3'' Không 22.299.000 15.6'' Intel HD Graphics 520, Intel HD Không 8.999.000 HD Graphics không 8.499.000 HD 500GB Giá thành 5500 ASUS Core i3- 4GB 5005U DDR3 500GB 15.6'' Intel HD HD Graphics 5500, 48 HP Core i3 4GB 500GB 5005U DDR3L HDD 14'' HD Intel HD không 8.999.000 không 21.990.000 Intel HD Graphics 5500, không 7.999.000 Intel HD Graphics 5500, không 6.999.000 Graphics 5500, APPLE Core i5- 4GB 128GB 11.6'' Intel® 5250U DDR3 SSD HD HD Graphics 6000 LENOVO core i3 4GB 5005U DDR3L 500GB 14''/Bảo hành vàng ACER Core i3 2GB 5005U DDR3L 500GB 14'' HD 3.3.3 Mô hình toán tử cho toán máy tính 0-1 đa mục tiêu Đồ án sử dụng hai mô hình cho toán máy tính 0-1 đa mục tiêu mô hình mã nhị phân mô hình mã hoán vị 3.3.3.1 Mô hình mã nhị phân Trong mô hình mã nhị phân đồ án sử dụng toán tử lai ghép khác Single point crossover, Two point crossover Uniform crossover, sử dụng phép đột biến Bit inversion (với xác suất đột biến 1%) liệu kn750.2 (với 750 thiết bị mục tiêu) với kích thước quần thể 250 Kết thu được: 49 Hình 3.1: kết thu với liệu 750 thiết bị với kích thước 250 Với 500 thiết bị mục tiêu kích thước quần thể 250 Kết thu được: Hình 3.2: kết thu với liệu 500 thiết bị với kích thước 250 50 Với 100 thiết bị mục tiêu kích thước quần thể 100 Kết thu được: Hình 3.3: kết thu với liệu 100 thiết bị với kích thước 100 51 KẾT LUẬN Đồ án tìm hiểu số mô hình chiến lược tiến hóa đơn giản cho toán tối ưu đa mục tiêu Tìm hiểu cách tiếp cận trước thuật toán SEAMO2 đề xuất số cải tiến: Cài đặt mô hình biểu diễn toán tử di truyền giải thuật SEAMO2 áp dụng với toán túi đa mục tiêu để tìm mô hình phù hợp giải thuật Tìm hiểu, phân tích trường hợp xảy chiến lược chọn lọc, thay cá thể vào quần thể giải thuật SEAMO2 để tìm phương pháp cải tiến giải thuật Dựa giải thuật SEAMO2, đồ án đề xuất phương pháp để cải thiện trường hợp lựa chọn ngẫu nhiên chiến lược chọn cá thể thay giải thuật cách lựa chọn cá thể xấu (đáng thay nhất) khoảng không gian giới hạn cá thể Ưu điểm phương pháp hệ đầu quần thể (hoặc chạy giải thuật với lần chạy ngắn) việc tìm cá thể phù hợp để thay giúp cho quần thể hội tụ biên Pareto nhanh chạy với lần chạy dài (số hệ lớn) hệ cuối (khi quần thể đạt ngưỡng tối ưu) việc hạn chế không gian tìm kiếm giúp tiết kiệm thời gian Đồ án thực nghiệm so sánh kết thu với giải thuật SEAMO2, giải thuật SEAMO2 cải tiến số giải thuật tối ưu đa mục tiêu khác Kết hạn chế giải pháp chưa tối ưu việc cải tiến giải thuật lần chạy dài 52 HƯỚNG PHÁT TRIỂN Cải thiện thuật toán với trường hợp số hệ lớn Với lần chạy dài, phương pháp chưa đóng góp nhiều quần thể đạt ngưỡng tối ưu việc tìm kiếm cá thể thay dựa khái niệm trội gặp khó khăn Do đó, mục tiêu đồ án hướng tới cải thiện đặc điểm việc tìm kiếm cá thể thay Cải thiện phương pháp lựa chọn khoảng không gian để tìm kiếm cá thể thay Ứng dụng thuật toán vào toán thực tế Một điều hạn chế đồ án chưa áp dụng thuật toán cải thiện vào toán thực tế để kiểm nghiệm kết Mục tiêu hướng tới đồ án mô hình hóa toán thực tế như: hỗ trợ người dùng việc chọn tour du lịch, hỗ trợ người dùng cân đối thu – chi, … để thuật toán áp dụng vào toán thực tế 53 TÀI LIỆU THAM KHẢO Tiếng Việt Lê Văn Hiệp, Một lớp phương pháp giải toán tối ưu nhiều mục tiêu, Luận văn thạc sĩ toán học, 2009 Tiến sĩ Nguyễn Đình Thúc,Trí tuệ nhân tạo – Lập trình tiến hóa: Cấu trúc liệu + Thuật giải di truyền = Chương trình tiến hóa,Nhà Xuất Bản Giáo Dục Tiếng Anh Aravind Seshadri,A fast and elitist multi-objective genetic algorithm: NSGA-II, IEEE Transactions on Evolutionary Computation 6: pp 182–197 C L Mumford, Simple Population Replacement Strategies for a Steady-State Multi-Objective Evolutionary Algorithm, Genetic an Evolutionary Computation Conference (GECCO), Seattle, Washington, USA, June 2004 C L Mumford (Valenzuela) (2003), Comparing representations and recombination operators for the multi-objective 0/1 knapsack problem, Congress on Evolutionary Computation (CEC), Canberra, Australia, 12th December 2003 (to appear) Deb, K,Multi-Objective Optimization Using Evolutionary Algorithms Wiley-Interscience Series in Systems and Optimization, Chichester, John Wiley & Sons, 2001 Eckart Zitzler, Evolutionary Algorithms for Multiobjective Optimixation: Methods and Application Ph D thesis, Swiss Federal Institute of Technology (ETH) Zurch, 1999 Fonseca, C M., P J Fleming Genetic Algorithms for Multiobjective Optimization: Formulation, Discussion and Generalization, – In: Proc of the 5th International Conference on Genetic Algorithms, San Mateo, California, University of Illinois at Urbana-Champaign (Stephanie Forrest, Ed.), Morgan Ka uffman Publishers, 1993, 416-423 Silvano Martello and Paolo Toth,KnapsackProblems Algorithms and Computer Implementations, Wiley, 1990 54 10 Schaffer, J D Some Experiments in Machine Learning Using Vector Evaluated Genetic Algorithms Ph D Thesis, Vanderbilt University, Nashville, TN, 1984 11 Schaffer, J D Multiple Objective Optimization with Vector Evaluated Genetic Algorithms In: Genetic Algorithms and Their Applications Proc of the First International Conference on Genetic Algorithms, Lawrence Erlbaum, 1985, 93-100 12 Srinivas, N., K Deb Multiobjective Nondominated Sorting in Genetic Algorithms Optimization Using Evolutionary Computation, Vol 2, 1994, No 3, 221-248 13 Khoi Nguyen Le, BSc, MRes A study of evolutionary multiobjective algorithms and their application to knapsack and nurse scheduling problems, George green library, March 2011 14 Valenzuela C L, A simple evolutionary algorithm for multi- objective optimization (SEAMO), Congress on Evolutionary Computation (CEC), Honolulu, Hawaii (2002) 717-722 15 Zitzler E, Laumanns M, and Thiele L: SPEA2: Improving the strength Pareto evolutionary algorithm, TIK-Report 103, Department of Electrical Engineering, Swiss Federal Institute of Technology (ETH), Zurich, Switzerland,fzitzler, laumanns, thieleg@tik.ee.ethz.ch.(2001) 16 Zitzler E and Thiele L, Multiobjective evolutionary algorithms: a comparative case study and the strength pareto approach, IEEE Transactions on Evolutionary Computation, 3(4) (1999) 257-271 17 Zitzler, E., M Laumanns, L Thiele SPEA2: Improving the Strength Pareto Evolutionary Algorithm – In: EUROGEN 2001 Evolutionary Methods for Design, Optimization and Control with Applications to Industrial Problems, Athens, Greece (K Giannakoglou et al., Eds.), 2002, 95-100 18 55 [...]... (điều kiện dừng thỏa mãn) End 22 Hình 2.2: Mô hình tổng quát giải thuật di truyền Đã có nhiều công trình nghiên cứu nhằm mô hình hóa toán học giải thuật di truyền, các ảnh hưởng của các toán tử di truyền lên hành vi của giải thuật, đặc biệt là hành vi hội tụ tới nghiệm tối ưu 2.2 Một số thuật toán thường được áp dụng giải bài toán tối ưu đa mục tiêu 2.2.1 Thuật toán MOGA Thuật toán này được đề nghị bởi... lời giải được tìm thấy là thỏa đáng Sự bành trướng của biên không bị chặn nên được cực đại hóa, nghĩa là đối với mỗi mục tiêu có một phạm vi rộng lớn các giá trị được phủ bởi các lời giải không bị chặn Tương ứng với ba mục tiêu trên, khi giải quyết các giải thuật di truyền áp dụng vào các bài toán tối ưu đa mục tiêu ta cần giải quyết các vấn đề sau: 1 Cách thức xử lý các hàm mục tiêu và xây dựng. .. ta phải giải quyết các vấn đề sau : Chọn các đồ vật vào tất cả cái túi có thể Mỗi cái túi có thể tích khác nhau Mỗi đồ vật có thể có trọng lượng và giá trị khác nhau đối với mỗi cái túi 14 1.4 Mô hình bài toán cái túi đa mục tiêu 1.4.1 Mô hình mã nhị phân Mô hình mã nhị phân là mô hình phổ biến nhất, các công trình đầu tiên về giải thuật di truyền thường sử dụng mô hình này Trong mô hình mã nhị... 24 Hình 2.3: Minh họa thuật toán MOGA Thuật toán MOGA Begin Khởi tạo các cá thể trong quần thể P0 ngẫu nhiên Thiết lập t=0 Repeat Đánh giá độ thích nghi của quần thể Dùng phương pháp lựa chọn ngẫu nhiên Áp dụng toán tử lai ghép Áp dụng toán tử đột biến t = t+1 until (điều kiện dừng thỏa mãn) End 2.2.2 Thuật toán VEGA David Shaffer là một trong những người đầu tiên đề nghị một cách cài đặt thuật giải. .. inSu If (nv=0) then Q=Q U{v} j=j+1 Fj= Q End End End 2.2.4.2 Thuật toán NSGA2 Thuật giải này là một phiên bản cải tiến từ NSGA Trong phiên bản này, mỗi lời giải phải xác định xem có bao nhiêu lời giải trội hơn và tập các lời giải trội hơn đó NSGA2 sẽ ước tính mật độ của các lời giải xung quanh một lời giải cụ thể trong quần thể bằng cách tính khoảng cách trung bình giữa hai điểm theo mỗi mục tiêu của... của các giải thuật di truyền trong tìm kiếm và tối ưu đa mục tiêu 2.1.1 Các nguyên tắc căn bản của giải thuật di truyền Tổng quát, một giải thuật di truyền được đặc trưng bởi ba yếu tố sau : Một tập các lời giải ứng viên P Tập P được thay đổi trong quá trình chọn lọc Được xử lý bởi các toán tử di truyền, thường là lai ghép và đột biến Tương tự như tiến hóa trong tự nhiên, các lời giải ứng viên được... j pi ← xj End P= Thực hiện phép lai, đột biến End 2.2.3 Thuật toán SEAMO, SEAMO2 2.2.3.1 Thuật toán SEAMO Thuật toán SEAMO (a simple evolutionary algorithm for multi-objective optimization) là một thuật toán di truyền áp dụng nguyên lý tiên hóa đơn giản được đề xuất bởi Valenzuela .Thuật toán SEAMO sử dụng phương pháp lựa chọn đồng đều và sử dụng các quy tắc đơn giản để thay thế các cá thể trong quần... kiếm đa mục tiêu Vì các giải thuật di truyền có tính thừa kế song song nên các giải thuật di truyền có tiềm năng tìm kiếm được nhiều lời giải tối ưu Pareto trong một lần chạy thử Tuy nhiên, trong nhiều bài toán phức tạp chúng lại không có khả năng phát sinh ra các lời giải không bị chặn hoặc chỉ phát sinh ra rất ít tập tối ưu Pareto mà thôi Vì vậy mục đích tối ưu của một giải thuật di truyền dựa trên... ba lô tương ứng Tuy nhiên, đề xuất trên đã không được sử dụng rộng rãi cho đến khi Zitzler and Thiel đề xuất mô hình mới cho bài toán cái túi đa mục tiêu, mô hình được mô tả bởi Zitzler and Thielelà mô hình đa mục tiêu được mở rộng từ mô hình đơn mục tiêu của Martello và Toth Từ đó, bài toán này đã được sử dụng rộng rãi như là một bài toán chuẩn để đánh giá hiệu suất không chỉ cho các thuật toán tiến... tốt 2.1.3 Mô hình tổng quát giải thuật di truyền Một giải thuật di truyền (hay một chương trình tiến hóa bất kỳ) giải một bài toán cụ thể gồm 5 thành phần: – Cách biểu diễn di truyền cho lời giải của bài toán – Cách khởi tạo quần thể ban đầu – Hàm lượng giá trong vai trò môi trường – Các phép toán di truyền (lựa chọn, lai ghép, đột biến) – Các tham số khác (kích thước quần thể, xác suất áp dụng các phép ... dạn nghiên cứu phương pháp cải tiến chiến lược chọn lọc tự nhiên giải thuật SEAMO2 để giải toán tối ưu đa mục tiêu luận văn: Nghiên cứu giải thuật SEAMO, ứng dụng xây dựng modul hỗ trợ người dùng. .. đa mục tiêu Tìm hiểu giải thuật tiến hóa, mô hình giải thuật tiến hóa áp dụng cho toán máy tính - đa mục tiêu Xây dựng ứng dụng giải toán máy tính - đa mục tiêu với giải thuật SEAMO2 đề xuất... toán NSGA, NSGA II 30 2.2.5 Thuật toán SPEA, SPEA 36 CHƯƠNG 3: XÂY DỰNG GIẢI PHÁP HỖ TRỢ NGƯỜI DÙNG CẤU HÌNH MÁY TÍNH .40 3.1 Máy tính số 40 3.2 Phân loại