Hồn thiện trang web để nĩ cĩ thể áp dụng một cách thực tế: giao diện thân thiện và gần gủi hơn, hồn thiện chức năng thanh tốn.
Cải tiến phương pháp đánh giá trên miền Pareto để cĩ thể cho ra kết quả xâu xát hơn và để tránh tình trạng cho ra các kết quả khác nhau qua các lần chạy.
Hổ trợ thêm để người dùng cĩ thể chọn ra sản phẩm cuối cùng trong số các sản phẩm mà ta đã đề nghị. Vì chỉ cần cĩ 2 sự chọn lựa là ta đã phải đưa ra quyết định. Chúng ta cĩ thể áp dụng các phương pháp giải quyết tối ưu cũ (tiêu tốn nhiều thời gian hơn) như AHP, Tweak Utility...
Phụ lục A Bài tốn tối ưu đa mục tiêu A.1 Sự ra đời
Tất cả các lĩnh vực như kỹ thuật, khoa học, kinh doanh, và khoa học xã hội và tự nhiên đều liên quan đến việc quyết định phân bổ,hoạch định các tài nguyên hạn hẹp cho các hoạt động,ví dụ quyết định đầu tư kinh doanh,phân cơng cơng việc, phân bổ tài nguyên v.v... Những hoạt động này đều liên quan đến việc đo lường và tối ưu các hiệu xuất, mục tiêu.
Trong một trường hợp cụ thể nào đĩ, các mục tiêu cĩ thể được tối ưu hĩa một cách độc lập để đạt được kết quả tốt nhất ứng với mục tiêu đĩ. Tuy nhiên một kết quả chấp nhận được cho tồn bộ các mục tiêu khĩ cĩ thể tìm ra theo cách đĩ. Bởi vì việc tối ưu hĩa một mục tiêu cĩ thể dẫn đến kết quả của một hoặc nhiều mục tiêu khác trở nên tồi tệ. Ví dụ trong việc chế tạo xe đua làm sao tìm ra được trọng lượng hợp lý của thùng xăng để xe cĩ thể đi một khoảng đường dài mà khơng phải tiếp nhiên liệu (cần một lượng xăng lớn) nhưng khơng làm tăng nhiều khối lượng của xe (làm giảm tốc độ xe).
Tuy nhiên thực tế là chưa cĩ một định nghĩa thống nhất thế nào là tối ưu như trong bài tốn một mục tiêu do đĩ thậm chí rất khĩ để ta cĩ thể so sánh kết quả giữa các phương pháp với nhau bởi vì việc quyết định cái gì là tốt nhất rốt cuộc vẫn thuộc về người ra quyết định.
A.2 Phát biểu bài tốn
Khi một vấn đề được đặt ra trong đĩ cĩ nhiều tiêu chí, mục tiêu kèm theo.Nếu các mục tiêu xung đột với nhau và các biến quyết định cĩ những ràng buộc với nhau thì việc đi tìm giải pháp tối ưu của vấn đề trở thành bài tốn “Tối ưu hĩa đa mục tiêu”
Việc giải quyết bài tốn tối ưu hĩa đa mục tiêu được giải quyết với ý tưởng tương tự bài tốn tối ưu một mục tiêu. Trong bài tốn một mục tiêu để giải quyết bài tốn ta phải đi tìm một tập các các biến quyết định thỏa các ràng buộc và đưa ra một kết quả tối ưu đối với hàm mục tiêu. Bài tốn đa mục tiêu chỉ khác là nĩ phải giải quyết nhiều mục tiêu khác nhau (cĩ thể xung đột với nhau) và thường cho ra một tập các giải pháp tối ưu hoặc khơng so sánh được với nhau.
A.3 Một số định nghĩa A.3.1 Các biến quyết định
Bước đầu tiên trong quá trình tối ưu hĩa là việc cơng thức hĩa vấn đề. Một mơ hình tốn học cần được đưa ra để mơ tả chính xác các hành vi hay giá trị của các tình huống.
Nhìn chung các bài tốn đa mục tiêu đều cĩ thể biểu diễn bằng một vector các hàm trong đĩ ánh xạ m tham số (các biến quyết định) thành một tập n mục tiêu.
Min/Max y = f(x) = (f1(x),f2(x)…fn(x))
Trong đĩ x=(x1, x2,… ,xm) ∈ X y=( y1, y2,… ,yn) ∈ Y
x được gọi là vector quyết định bao gồm m biến quyết định . X được gọi là khơng gian tham số(hay khơng gian tìm kiếm) . y được gọi là vector mục tiêu bao gồm n mục tiêu và Y được gọi là khơng gian mục tiêu.
A.3.2 Các ràng buộc
Bước tiếp theo của việc cơng thức hĩa vẫn đề đĩ là xác định các ràng buộc. Ràng buộc là những điều kiện giữa các biến quyết định mà các giải pháp cần phải thỏa. Các ràng buộc được mơ tả bằng các đẳng thức hoặc bất đẳng thức.
gj(x) ≤ 0 , j = 1,2,…,J hk(x) = 0 , k = 1,2,…,K
A.3.3 Hàm mục tiêu
Bước cuối cùng của việc cơng thức hĩa vấn đề đĩ là định nghĩa các hàm mục tiêu. Đây chính là con số mà người thiết kế cần tối ưu hĩa. Các hàm này được biểu diễn dưới dạng: f(x)=(f1(x),f2(x),…,fn(x))
A.3.4 Dạng chuẩn của vấn đề
Một vấn đề được cơng thức hĩa cĩ dạng chuẩn như sau min/max {f(x):h(x)=0,g(x) ≤0} => x ∈ Rn
Cơng thức trên cĩ thể được diến đạt như sau: tìm một tập các giá trị R của vector quyết định sao cho hàm mục tiêu đạt giá trị nhỏ nhất (lớn nhất) và thỏa các ràng buộc là các dẳng thức h(x) và bất đẳng thức g(x).
A.4 Miền tối ưu Pareto A.4.1 Giới thiệu
Trong bài tốn tối ưu đa mục tiêu, ta mong muốn tìm được một tập giá trị các biến quyết định nhằm tối ưu các hàm mục tiêu. Tập các biến quyết định cho ta một kết quả tối ưu được gọi là một tập tối ưu và được ký hiệu là x*. Miền tối ưu Pareto là một tập hợp chứa các tập tối ưu mà từ đĩ ta cĩ thể chọn ra các giá trị mong muốn (tối ưu).
A.4.2 Tối ưu pareto
Miền khả thi C A B C1 f1 f2 Hình 7.1 - Miền tối ưu Pareto.
Như hình trên miền tối ưu Pareto (đường tơ đậm) là một tập hợp các điểm nếu di chuyển từ điểm này (ví dụ điểm A) đến điểm kia (ví dụ điểm B) trong tập hợp làm cho một mục tiêu bị giảm thì phải cĩ ít nhất một mục tiêu khác tăng lên và ngược lại.
Nĩi cách khác một vector xv = f(xv)=(v1,v2,…,vn) thuộc một tập P được gọi là thuộc miền tối ưu Pareto khi và chỉ khi khơng tồn tại một vector quyết định
xu = f(xu) = (u1,u2,…un) nào thống trị xv ,nghĩa là ∀i ∈{1,…,n}, ui ≤xi và ∃i ∈ {1,…,n}, ui<xi
Như ở hình trên thì A,B,C1 thuộc miền tối ưu Pareto nhưng C thì khơng, vì C bị thống trị bởi C1.
Một phương án x* khơng bị thống trị bởi một phương án nào cả sẽ thuộc về miền tối ưu Pareto. Do vậy việc giải bài tĩan tối ưu hĩa đa mục tiêu là chọn ra từ miền Pareto của bài
tốn một hay một số các phương án tốt nhất theo một nghĩa nào đĩ dựa trên cơ cấu ưu tiên của người ra quyết định.
A.5 Cách tiếp cận bài tốn đa mục tiêu giựa trên thuật giải di truyền A.5.1 Giới thiệu
Khái niệm về áp dụng thuật tốn di truyền vào bài tốn đa mục tiêu đã xuất hiện vào những năm 60 trong một nổ lực nghiên cứu của Rosenberg (1967). Ơng đã đề xuất sử dụng nhiều thuộc tính trong việc mơ phỏng các gene và quần thể các sinh vật dơn bào. Thật ra trong cài đặt của mình ơng chỉ sử dụng một thuộc tính và cách tiếp cận đa mục tiêu khơng thể thấy được trong cài đặt của ơng nhưng nĩ đã trở thành điểm xuất phát cho việc áp dụng giải thuật di truyền vào bài tốn tối ưu đa mục tiêu.
Chúng ta biết rằng thuật tốn di truyền (xem phụ lục B) cần thơng tin về độ thích nghi để làm việc. Cĩ lẽ ý nghĩ đơn giản và tự nhiên nhất đĩ là kết hợp các mục tiêu lại làm một bằng cách sử dụng các phép tốn đại số. Cách tiếp cận này địi hỏi chúng ta phải cung cấp các thơng tin về tầm mức của các mục tiêu. Điều này địi hỏi chúng ta phải biết về hành vi, hoạt động của các hàm mục tiêu, đây khơng phải là một tiến trình đơn giản. Với cách kết hợp các mục tiêu lại với nhau, rõ ràng đây khơng phải là cách đơn giản nhất nhưng cĩ lẽ là một trong những cách hiệu quả nhất bởi vì nĩ khơng địi hỏi phải giao tiếp với người ra quyết định thêm lần nào nữa trong khi thuật tốn đang được thực hiện. Và nếu GA kết thúc bằng một kết quả thích nghi tối ưu thì kết quả này ít nhất sẽ thuộc về một tập các giải pháp tối ưu trong đa số trường hợp.
Cách tiếp cận kết hợp các mục tiêu lại đưa về bài tốn một mục tiêu là một trong các cách được biết đến nhiều nhất trong việc giải bái tốn tối ưu đa mục tiêu vì tính hiệu quả của nĩ. Một số cách tiếp cận theo cách trên đã được đề ra như tổng trọng số, hướng mục đích và tối ưu Min-Max.
A.5.2 Cách tiếp cận tổng trọng số (Weighting objective)
Phương pháp này chúng ta sẽ cộng các hàm mục tiêu lại với nhau và sử dụng các trọng số đối với từng mục tiêu, trọng số này thể hiện sự tương quan về độ quan trong của các mục tiêu. Với cách này các giải pháp trên miền Pareto (vốn khơng so sánh được với nhau) sẽ cĩ thể đánh giá và so sánh được.
∑ = k i i if x w 1 ) ( min hoặc ∑ ( ) * min wifi x ci
Trong đĩ wi ≥ 0 là các trọng số mơ tả mối tương quan độ quan trọng giữa các mục tiêu.Và thường được tạo với cách:
∑ = = k i i w 1 1 Và * i c là một hằng số với ci* =1 fi* và * i
f là giá trị tối ưu của hàm mục tiêu fi .
Rõ ràng kết quả của bài tốn sẽ thay đổi khi các hệ số trọng số thay đổi, và thơng thường các trọng số này khĩ được xác định do đĩ cần một cách tiếp cận khác khi chúng ta phải sử đụng nhiều giá trị trọng số khác nhau. Nhưng trong trường hợp các trọng số được xác định bởi người ra quyết định giựa trên trực giác của mình thì cách này vẫn tỏ ra cĩ hiệu quả.
A.5.3 Cách tiếp cận hướng mục đích (Goal programming)
Cách tiếp cận này được đưa ra và đã đĩng một vai trị then chốt trong các ứng dụng trong lĩnh vực cơng nghiệp.Trong phương pháp này người ra quyết định phải xác định mục đích mà mỗi mục tiêu cần đạt được. Các hàm mục tiêu sẽ cố gắng tìm cách làm tối thiểu hĩa khoảng cách giữa giá trị hiện đạt được của mục tiêu với giá trị đích mà người ra quyết định mong muốn đạt được.
Hình thức đơn giản nhất của phương pháp này là:
F x T x f k i i i − ∈ ∑ = ,| ) ( | min 1
Trong đĩ Ti là giá trị đích mà người ra quyết định mong muốn đạt được ở hàm mục tiêu thứ i, F là vùng khả thi.Trong đĩ mục tiêu của ta bây giờ là làm tối thiểu hĩa khoảng cách giữa giá trị đích và giá trị thực sự mà mục tiêu đạt được.
Phương pháp này sẽ cho ra một giải pháp đơi khi bị thống trị bởi một giải pháp khác nếu đích cần đạt được nằm trong vùng khả thi. Đây cĩ thể là một cách tiếp cận rất hiệu quả nếu chúng ta biết được giá trị đích mà chúng ta mong đợi và giá trị đĩ nằm trong vùng
khả thi. Tuy nhiên người ra quyết định vẫn phải cung cấp các trọng số ưu tiên của các mục tiêu để cho các giải pháp cĩ thể so sánh được, và trong nhiều trường hợp điều này rất khĩ thực hiện nếu khơng biết trước được hình dáng của khơng gian tìm kiếm.
A.5.4 Các cách tiếp cận khác
Một số cách tiếp cận khác để giải bài tốn tối ưu đa mục tiêu khác cũng giựa trên thuật giải di truyền như Min-Max, ràng buộc ε, VEGA…
A.5.5 Cách tiếp cận ràng buộc ε A.6 Tổng kết
Mặc dù rất nhiều nổ lực được đưa ra để giải quyết bài tốn tối ưu đa mục tiêu, tuy nhiên hầu hết đều nhằm để giải quyết các vấn đề cụ thể nào đĩ và chưa cĩ một phương thức nào tỏ ra cĩ hiệu quả trong tất cả các vấn đề. Và cũng chưa cĩ phương cách nào để so sánh tính hiệu quả của các phương pháp.Do đĩ để muơn áp dụng thuật tốn di truyền để giải quyết một bài tốn tối ưu đa mục tiêu thì cĩ rất nhiều chuyện để làm như kích thứoc một quần thể, biểu diễn các biến quyết định, các thao tác của thuật tốn như lai ghép, đột biến. Mặc dù độ phức tạp khi cài đặt thuật tốn khá cao nhưng do kết quả mà nĩ đem lại rỏ ràng rất ấn tượng. Do đĩ việc áp dụng thuật tốn di truyền để giải quyết bài tốn tối ưu đa mục tiêu đang được ngày càng quan tâm và phát triển.
Phụ lục B Thuật giải di truyền B.1 Tổng quát về thuật giải di truyền
Các khái niệm cơ bản của Thuật giải di truyền (Genetic Algorithm-GA) lần đầu tiên được đưa ra bởi Holland [29] vào những năm 70. GA hoạt động dựa trên cơ chế chọn lọc tự nhiên được đề xuất bởi nhà bác học Darwin. Theo cơ chế này, những cá thể thích nghi hơn sẽ tồn tại, và được gọi là “quy luật tồn tại của sự thích nghi”.Tương tự như vậy, thuật giả GA cũng sử dụng cơ chế chọn lọc tự nhiên, theo cách đĩ những giải pháp tối ưu sẽ được tồn tại qua các tiến trình của thuật giải .Nhìn chung thuật giải GA bao gồm các yếu tố :biểu diễn số,tính tốn độ thích nghi,chọn lọc và các thao tác di truyền .Một thuật giải GA tổng quát cĩ dạng như sau:
Tạo nhẫu nhiên quần thể ban đầu P(0), đặt i=0 Lặp
Định giá độ thích nghi của từng cá thể trong P(i)
Chọn các cặp bố mẹ dựa trên độ thích nghi của các cá thể P(i)
Thực hiện các hàm lai ghép và đột biến trên các các cập bố mẹ đã chọn để tạo ra thế
hệ tiếp theo
Cho đến khi “tiêu chuẩn dừng” thỏa mãn.
B.2 Biểu diễn một giải pháp dưới dạng gen
Theo GA mỗi giải pháp cho một vấn đề đều cĩ thể biểu diễn dưới dạng một tấp hợp các tham số. Các tham số này đĩng vai trị như các gene trong một nhiễm sắc thể, và cĩ thể biểu diễn dưới dạng một dạng chuỗi các bit số học. Mỗi nhiễm sắc thể được mã hĩa từ một giải pháp được gọi là “kiểu di truyền” và giải pháp được mã hĩa đĩ được gọi là một
“kiểu hình”. Biểu diễn một vấn đề được dưới dạng gene luơn là phần quan trọng nhất của
thuật giải di truyền.
B.3 Tính độ thích nghi
Một số thực dùng để phản ánh độ tốt của nhiễm sắc thể được gọi là “độ thích nghi”.Nĩ dùng để diễn tả giá trị mục tiêu của nhiễm sắc thể. Việc tính tốn độ thích nghi dùng để xác định chất lượng của một nhiễm sắc thể đối với một mục tiêu của kiểu hình.
B.4 Chọn lọc tự nhiên
Sau khi tính tốn độ thích nghi những nhiễm sắc thể (NST) tốt hơn sẽ cĩ nhiều cơ hội sống sĩt và di truyền sang thế hệ sau hơn. Trong các ứng dụng GA quần thể ban đầu phải được khởi tạo, các nhiễm sắc thể sẽ được khởi tạo ngẫu nhiên. Kích thước của quần thể thay đổi theo từng bài tốn cụ thể. Trong mỗi chu trình tiến hĩa, một số cặp NST sẽ được chọn lọc để nhân giống, tạo ra thế hệ kế tiếp.
B.5 Những hoạt động di truyền
Trong quần thể các cặp gene bố mẹ được chọn sẽ được trộn lẫn và kết hợp lại để tạo ra các cặp gene thế hệ con. Thao tác như vậy gọi là “lai ghép” .
Hình B.1 - Lai ghép trong thuật tốn di truyền.
Thao tác ”đột biến” được thực hiện với tần số thấp để tạo ra các gene mới cho quần thể. Đột biến được thực hiện bằng cách thay đổi ngẫu nhiên một gene trong NST
Hình B.2 - Thao tác đột biến trong thuật tốn di truyền.
B.6 Điều kiện dừng
Các vịng lặp của thuật giải sẽ kết thúc khi gặp điều kiện dừng. Các điều kiện dừng cĩ thể như:
• Đạt số vịng lặp tối đa. • Đạt độ thích nghi tối đa. • Quá thời gian thực hiện. • Đạt ngưỡng tài nguyên.
Tài liệu tham khảo
[1] Nguyễn Tấn Trần Minh Khang, Giải thuật di truyền trong một lớp bài tĩan lập lịch, Luận Văn Thạc sĩ Khoa Học CNTT, 2002.
[2] Nguyễn Hịang Tú Anh, Nghiên cứu và phát triển thuật tĩan tìm luật kết hợp tối ưu trên thuộc tính số, Luận Văn Thạc sĩ Khoa Học CNTT, 2002.
[3] Ngơ Quang Tuấn Huy, Xây dựng hệ thống giải lớp bài tĩan tơi ưu số trên cơ sở thuật giải di truyền, Luận Văn Cử Nhân CNTT, 2002.
[4] DSS Glossary, http://dssresources.com/glossary/