Download as pdf or txt
Download as pdf or txt
You are on page 1of 74

Lời cảm ơn

Viết một khóa luận khoa học là một trong những việc khó nhất mà chúng em phải hoàn
thành từ trước đến nay. Trong quá trình thực hiện đề tài chúng em đã gặp rất nhiều khó
khăn và bỡ ngỡ. Nếu không có những sự giúp đỡ và lời động viên chân thành của nhiều
người có lẽ chúng em khó có thể hoàn thành tốt luận văn này.

Đầu tiên chúng em xin gửi lời biết ơn chân thành đến cô Lê Thị Nhàn, người trực tiếp
hướng dẫn chúng em hoàn thành luận văn này.

Chúng em muốn gửi lời cảm ơn đến cô Phạm Thị Bạch Huệ, giáo viên phản biện của luận
văn này. Những ý kiến đóng góp của cô là vô cùng hữu ích, nó giúp chúng em nhận ra
các khuyết điểm của luận văn.

Trên con đường góp nhặt những kiến thức quý báu của ngày hôm nay, các thầy, cô, bạn
bè trường Đại học Khoa học Tự nhiên là những người đã cùng em sát cánh và trải
nghiệm.

Và sau cùng, chúng con xin cảm ơn cha mẹ, những người đã sinh thành, dưỡng dục và
nuôi dạy chúng con nên người. Suốt đời này chúng con luôn ghi nhớ ơn Người.

i
Danh mục các hình

Hình 2.1- Các giai đọan của quá trình ra quyết định. ........................................................5
Hình 2.2 - Ưu điểm của Hệ hỗ trợ ra quyết định. ................................................................5
Hình 2.3 - Các thành phần của Hệ hỗ trợ ra quyết định. .....................................................6
Hình 2.4 Cấu trúc tổng quát của một mô hình.....................................................................7
Hình 3.1 - Amazon đưa ra lý do vì sao các lời đề nghị được đưa ra. ................................15
Hình 3.2 - Đánh giá phim ở movifinder.com....................................................................16
Hình 3.3 - Trang Research. ...............................................................................................17
Hình 3.4 - Danh mục xe ở loại xe chở khách.....................................................................17
Hình 3.5 - Các câu hỏi về đặc tính máy in........................................................................19
Hình 3.6 - Các sản phẩm đề nghị của HP sau khi chọn trả lời cho các câu hỏi.................20
Hình 3.7 - Các câu hỏi của samsungtelecom.com. ...........................................................21
Hình 3.8 - Đánh giá độ quan trọng của các thuộc tính với SmartSort. .............................22
Hình 4.1 - Vector mục tiêu của sản phẩm có 2 thuộc tính.................................................28
Hình 4.2 - Điều hướng về miền tối ưu Pareto....................................................................29
Hình 4.3 Di chuyển trên miền Pareto bằng cách thay đổi trọng số ...................................31
Hình 4.4 - Các trạng thái gen trong quần thể.....................................................................32
Hình 4.5 - Lai ghép. ...........................................................................................................33
Hình 4.6 - Đột biến. ...........................................................................................................33
Hình 5.1 - Lược đồ Usecase...............................................................................................35
Hình 5.2 - Lược đồ trình tự cho usecase Tìm kiếm. ..........................................................36
Hình 5.3 - Lược đồ trình tự cho usecase Xem danh sách sản phẩm được mua nhiều nhất.
....................................................................................................................................36
Hình 5.4 - Xem danh sách sản phẩm mới ra mắt...............................................................37
Hình 5.5 - Lược đồ tuần tự Usecase Sản phẩm được quan tâm nhiều nhất. ......................37
Hình 5.6 - Lược đồ trình tự cho usecase Trợ giúp lựa chọn sản phẩm..............................38
Hình 5.7 - Lược đồ trình tự cho usecase Duyệt sản phẩm theo hãng sản xuất. .................39
Hình 5.8 - Lược đồ trình tự cho usecase Xem thông tin chi tiết........................................39
Hình 5.9 - Lược đồ trình tự cho usecase Thêm hàng vào giỏ............................................40
Hình 5.10 - Lược đồ trình tự cho usecase Xem giỏ hàng. .................................................40
Hình 5.11 – Lược đồ trình tự cho usecase Thanh toán. .....................................................41
Hình 5.12 - Mô hình kiến trúc hệ thống.............................................................................42
Hình 5.13 - Sơ đồ dữ liệu quan hệ. ....................................................................................42
Hình 5.14 - Lược đồ trình tự (mức thiết kế) cho usecase Tìm kiếm..................................45
Hình 5.15 - Lược đồ trình tự (mức thiết kế) cho usecase Xem sản phẩm mới ra mắt......46
Hình 5.16 - Lược đồ trình tự (mức thiết kế) cho usecase Trợ giúp chọn sản phẩm ..........46
Hình 5.17 - Lược đồ trình tự (mức thiết kế) cho usecase Xem thông tin chi tiết ..............47
Hình 5.18 - Lược đồ trình tự (mức thiết kế) cho usecase Thêm hàng vào giỏ ..................47
Hình 5.19 Lược đồ trình tự (mức thiết kế) cho usecase Xem giỏ hàng.............................47
Hình 5.20 - Lược đồ trình tự (mức thiết kế) cho usecase Thanh toán ...............................48
Hình 5.21 Sơ đồ phối hợp giữa các trang web...................................................................48
Hình 5.22 - Sơ đồ lớp ứng dụng WebMobileShop. ..........................................................52
Hình 5.23 - Sơ đồ lớp của module thuật toán GA. ............................................................54
Hình 7.1 - Miền tối ưu Pareto. ...........................................................................................64

ii
Danh mục các bảng

Bảng 3.1 - Các bước cơ bản để tiến hành một giao dịch ...................................................12
Bảng 3.2 - Phân loại hệ hỗ trợ ra quyết định trong E-Commerce......................................13
Bảng 3.3 - Tổng kết so sánh website .................................................................................22
Bảng 5-1-Danh sách các bảng cơ sở dữ liệu......................................................................43
Bảng 5.2 - Bảng dữ liệu tblItems .......................................................................................43
Bảng 5.3 - Bảng dữ liệu tblCaseType................................................................................44
Bảng 5.4 - Bảng dữ liệu tblProducers................................................................................44
Bảng 5.5 - Bảng dữ liệu tblOrders .....................................................................................44
Bảng 5.6 - Bảng dữ liệu tblOrderDetails ...........................................................................45
Bảng 5.7 - Các đối tượng lớp của hệ thống WebMobileShop ...........................................53
Bảng 5.8 - Các đối tượng thuộc module thuật toán GA ....................................................54

iii
Mục lục

Lời cảm ơn ........................................................................................................................... i


Danh mục các hình.............................................................................................................. ii
Danh mục các bảng............................................................................................................ iii
Mục lục .............................................................................................................................. iv
Chương 1 Giới thiệu ............................................................................................................1
1.1 Tổng quan ................................................................................................................1
1.2 Vấn đề đặt ra ............................................................................................................1
1.3 Mục tiêu của luận văn ..............................................................................................2
1.4 Bố cục của luận văn .................................................................................................2
Chương 2 Hệ hỗ trợ ra quyết định .......................................................................................4
2.1 Thế nào là ra quyết định...........................................................................................4
2.2 Quá trình ra quyết định ............................................................................................4
2.2.1 Phân loại quyết định.............................................................................................4
2.2.2 Các giai đoạn của quá trình ra quyết định............................................................4
2.3 Hệ hỗ trợ ra quyết định ............................................................................................5
2.3.1 Khái niệm Hệ hỗ trợ ra quyết định ......................................................................5
2.3.2 Các thành phần của Hệ hỗ trợ ra quyết định........................................................6
2.3.3 Mô hình ra quyết định..........................................................................................7
2.3.4 Phân loại Hệ hỗ trợ ra quyết định ........................................................................8
2.4 Tìm kiếm và đánh giá các lựa chọn một phần rất quan trọng trong hỗ trợ ra quyết
định 10
Chương 3 Mua hàng qua mạng và sự cần thiết của hỗ trợ ra quyết định ..........................11
3.1 Internet đem đến một phương thức mua bán mới..................................................11
3.2 Khảo sát thực trạng mua bán qua mạng.................................................................11
3.3 So sánh giữa phương thức mua hàng truyền thống và mua qua mạng ..................12
3.3.1 Các bước cơ bản để tiến hành một giao dịch mua hàng ....................................12
3.3.2 Các điểm thuận lợi và không thuận lợi trong phương thức mua bán truyền thống
13
3.3.3 Các điểm thuận lợi và không thuận lợi trong phương thức mua bán qua mạng 13
3.4 Khảo sát các trang web bán hàng và sự hỗ trợ khách hàng của chúng ..................13
3.4.1 Khảo sát một số hệ hỗ trợ ra quyết định trong E-Commerce ............................14
3.4.2 Bảng tóm tắt và so sánh .....................................................................................22
3.5 Các tiện ích mà một trang web bán hàng cần cung cấp để có thể Hỗ trợ khách
hàng tốt hơn .......................................................................................................................22
Chương 4 Sử dụng giải thuật di truyền để giải quyết bài toán hỗ trợ chọn sản phẩm khi
mua hàng qua mạng ...........................................................................................................24
4.1 Giới thiệu ...............................................................................................................24
4.2 Các khó khăn khi xây dựng một module hỗ trợ khách hàng chọn sản phẩm ........24
4.3 Vấn đề “đa mục tiêu” khi chọn sản phẩm..............................................................25
4.4 Cách tiếp cận để giải bài toán “Tối ưu đa mục tiêu” khi chọn sản phẩm ..............25
4.5 Chuyển bài toán chọn sản phẩm thành bài toán tối ưu đa mục tiêu.......................26
4.5.1 Lời giải cho bài toán ..........................................................................................26
4.5.2 Các biến quyết định ...........................................................................................26
4.5.3 Các ràng buộc ....................................................................................................26
4.5.4 Các mục tiêu ......................................................................................................27
4.5.5 Hướng đến một lời giải “tối ưu” ........................................................................28
4.5.6 Các cải tiến để phù hợp với bài toán..................................................................31

iv
Chương 5 Phân tích và thiết kế website bán điện thoại di động có hỗ trợ người mua chọn
sản phẩm ............................................................................................................................35
5.1 Phân tích.................................................................................................................35
5.1.1 Mô hình Usecase................................................................................................35
5.1.2 Mô tả các Actor..................................................................................................35
5.1.3 Mô tả các Usecase..............................................................................................35
5.2 Thiết kế ..................................................................................................................41
5.2.1 Thiết kế hệ thống ...............................................................................................41
5.2.2 Thiết kế cơ sở dữ liệu.........................................................................................42
5.2.3 Thiết kế các lớp đối tượng .................................................................................45
Chương 6 Cài đặt ...............................................................................................................55
6.1 Môi trường phát triển ứng dụng.............................................................................55
6.2 Cài đặt chương trình ..............................................................................................55
6.3 Một số màn hình tiêu biểu .....................................................................................56
Chương 7 Kết luận và hướng phát triển.............................................................................60
7.1 Kết luận..................................................................................................................60
7.2 Hướng phát triển ....................................................................................................61
Phụ lục A Bài toán tối ưu đa mục tiêu ........................................................................62
Phụ lục B Thuật giải di truyền........................................................................................68
Tài liệu tham khảo .............................................................................................................71

v
Chương 1

Giới thiệu

1.1 Tổng quan

Trong những năm gần đây, sự phát triển của thương mại điện tử (E-Commerce) đã đem
lại nhiều lợi ích to lớn cho nền kinh tế toàn cầu. Thông qua thương mại điện tử, nhiều loại
hình kinh doanh mới được hình thành, trong đó có mua bán hàng trên mạng. Với hình
thức mới này, người tiêu dùng có thể tiếp cận với hàng hóa một cách dễ dàng và nhanh
chóng hơn rất nhiều so với phương thức mua bán truyền thống.

Những tưởng với những thế mạnh của mình các trang web bán hàng sẽ dần thay thế các
gian hàng hay các siêu thị truyền thống. Nhưng trên thực tế người mua vẫn còn rất mặn
mà với phương pháp mua bán cũ. Một phần vì phương thức mua bán cũ dần dần từng
bước chuyển từ thói quen thành một nếp văn hóa, văn hóa mua sắm. Khi đó người ta xem
hoạt động mua sắm là một hoạt động không thể thiếu trong nền văn hóa đó. Mặt khác, các
trang web bán hàng hiện nay dù đã được phát triển nhưng thực sự vẫn chưa thể thay thế
được các cửa hàng thực tế. Một trong những nguyên nhân của sự thua kém này đó là yếu
tố con người, một yếu tố mà chắc hẳn các trang web bán hàng khó có thể bù đắp được.

Bên cạnh đó, đâu là các nguyên nhân khác gây ra sự thua kém này? Người mua nhận xét
gì về những nổ lực mà các trang web bán hàng đã và đang mang lại? Làm thể nào để nâng
cao hiệu quả của những cửa hàng điện tử này?

1.2 Vấn đề đặt ra

Hiện nay, các hệ thống bán hàng trực tuyến đã tạo nhiều điều kiện thuận lợi để người mua
có thể tiếp cận nhiều mặt hàng cùng lúc. Tuy nhiên, việc trình bày và trang trí quá nhiều
các mặt hàng trên trang web đã gây ra không ít khó khăn cho người mua. Họ khó có thể
chọn ra cho mình một sản phẩm ưng ý nhất.

Để khách hàng có thể đến và mua được một sản phẩm ưng ý thì một lời khuyên, một sự
trợ giúp là rất quan trọng. Một người bán hàng trong phương thức bán hàng truyền thống
là một lợi thế rất lớn. Do đó để phương thức bán hàng qua mạng thực sự phát triển thì bên
cạnh các lợi thế vốn có của mình việc có thêm một “người trợ giúp” là hết sức cần thiết.

Hệ thống hỗ trợ ra quyết định (Decision Support System - DSS) với sự kết hợp của máy
tính đã được áp dụng nhiều trong các công tác quản lý, những công việc tất yếu liên quan

1
đến việc ra quyết định. DSS có thể giúp những nhà quản lý đưa ra các quyết định nhanh
chóng hơn, phức tạp hơn, và nâng cao hiệu suất cũng như chất lượng của các quyết định.

Một hệ thống hỗ trợ ra quyết định tốt có thể đóng vai trò như một người trung gian hỗ trợ
khách hàng đưa ra các quyết định mua hàng đúng đắn. Bằng cách xác định mục đích và
nhu cầu của khách hàng, hệ thống có thể đưa ra một tập các gợi ý giúp cho người mua dễ
dàng chọn lựa sản phẩm yêu thích hơn. Qua đó hiệu suất của việc mua bán hàng trực
tuyến được tăng cao một cách đáng kể.

1.3 Mục tiêu của luận văn

Trước hết luận văn giúp chúng ta nhận ra những mặt thiếu sót của các trang web bán hàng
hiện nay. Những tiện ích, dịch vụ mà các trang web này cần cung cấp hoặc nâng cao hơn
để có thể nâng cao vị thế của mình trong nền kinh tế hàng hóa.

Luận văn sẽ đưa ra một hướng tiếp cận để xây dựng một trong những tiện ích nói trên,
tiện ích hỗ trợ khách hàng ra quyết định chọn sản phẩm. Tiện ích này đóng vai trò như
một người bán hàng có thể thu thập các thông tin về sở thích của khách hàng, sau đó tìm
trong kho hàng vô tận của mình những mặt hàng thích hợp nhất với các sở thích đó.

Luận văn cũng tìm hiểu bài toán tối ưu đa mục tiêu và cách tiếp cận dùng thuật giải di
truyền để giải quyết bài toán. Bài toán này cũng là một khó khăn lớn trong khi tiến hành
lựa chọn và gợi ý sản phẩm cho người mua.

Việc trợ giúp khách hàng chọn lựa sản phẩm là một giai đoạn trong quá trình người mua
quyết định mua sản phẩm. Vì vậy, luận văn sẽ tìm hiểu về hệ hỗ trợ ra quyết định, vị trí
và vai trò của người trợ giúp bán hàng trong quá trình hỗ trợ khách hàng mua sản phẩm.

1.4 Bố cục của luận văn

Bố cục của luận văn được tổ chức thành 7 chương. Chương 1 trình bày tổng quan về sự
cần thiết của hệ hỗ trợ ra quyết định trong môi trường mua bán trực tuyến và mục tiêu của
luận văn.

Chương tiếp theo giới thiệu lý thuyết chung về hệ hỗ trợ ra quyết định. Chương này nêu
ra định nghĩa “Một quyết định là gì?” và “Một hệ hỗ trợ ra quyết định là gì?”. Đây là
những kiến thức nền tảng về hệ thống hỗ trợ ra quyết định như quá trình ra quyết định,
các giai đoạn của quá trình ra quyết định, các mô hình của hệ hỗ trợ ra quyết định, và các
công nghệ thông minh được ứng dụng trong hệ hỗ trợ ra quyết định.

2
Chương 3 là khảo sát và so sánh về các đặc điểm của những hệ hỗ trợ ra quyết định trong
môi trường mua bán trực tuyến.

Chương 4 trình bày một cách tiếp cận để áp dụng hệ hỗ trợ ra quyết định vào quá trình
lựa chọn sản phẩm và mua hàng của khách hàng. Ở đây bài toán tối ưu hóa đa mục tiêu và
các hướng giải quyết được nêu ra.

Chương 5 là phần phân tích thiết kế hệ thống trang web bán hàng và hỗ trợ khách hàng
chọn sản phẩm. Chương 6 là phần cài đặt hệ thống.

Tổng kết và đánh giá của luân văn được trình bày ở chương 7.

3
Chương 2

Hệ hỗ trợ ra quyết định

2.1 Thế nào là ra quyết định

Việc đưa ra quyết định đối với một vấn đề xuất hiện trong khắp các lĩnh vực, hoạt động
của đời sống mà đôi khi chúng ta không nhận ra. Từ những việc đơn giản như chọn một
bộ quần áo để đi dự tiệc cho đến các việc lớn lao như phân bổ ngân sách vào các chương
trình của quốc gia đều là các công việc đưa ra quyết định.

Vậy đưa ra quyết định chính là chọn ra trong các giải pháp khả thi một giải pháp mà theo
người đưa ra quyết định là phù hợp nhất.

2.2 Quá trình ra quyết định

2.2.1 Phân loại quyết định


Có thể phân ra bốn loại quyết định như sau

• Quyết định có cấu trúc (Structured Decision): Các quyết định mà người ra
quyết định biết là chắc chắn đúng.
• Quyết định không cấu trúc (Nonstructured Decision): Các quyết định mà người
ra quyết định biết là có nhiều câu trả lời gần đúng và không có cách nào để tìm
ra câu trả lời chính xác nhất.
• Quyết định đệ quy (Recurring Decision): Các quyết định lặp đi , lặp lại.
• Quyết định không đệ quy (Nonrecurring Decision): Các quyết định không xảy
ra thường xuyên.

2.2.2 Các giai đoạn của quá trình ra quyết định


Theo Simon, các giai đoạn của quá trình ra quyết định bao gồm các pha:

• Nhận định (Intelligence) : Tìm kiếm các tình huống dẫn đến việc phải ra quyết
định, nhận dạng các vấn đề, nhu cầu, cơ hội, rủi ro…
• Thiết kế (Design): Phân tích các hướng tiếp cận để giải quyết vấn đề, đáp ứng
các nhu cầu, tận dụng các cơ hội , hạn chế các rủi ro..
• Lựa chọn (Choice): Cân nhắc và đánh giá từng giải pháp, đo lường hậu qủa của
từng giải pháp và chọn giải pháp tối ưu.
• Tiến hành ra quyết định (Implementation): Thực hiện giải pháp được chọn,
theo dõi kết quả và điều chỉnh khi thấy cần thiết.

4
Hình 2.1- Các giai đọan của quá trình ra quyết định.

2.3 Hệ hỗ trợ ra quyết định

2.3.1 Khái niệm Hệ hỗ trợ ra quyết định


Trong thập niên 1970, Scott Morton đưa ra những khái niệm đầu tiên về Hệ hỗ trợ ra
quyết định (Decision Support Systems-DSS). Ông định nghĩa DSS như là những hệ thống
máy tính tương tác nhằm giúp những người ra quyết định sử dụng dữ liệu và mô hình để
giải quyết các vấn đề không có cấu trúc [5].

Hình 2.2 - Ưu điểm của Hệ hỗ trợ ra quyết định.

5
Cho đến nay chưa có một định nghĩa thống nhất về DSS. Tuy nhiên tất cả đều đồng ý
mục đích cơ bản nhất của DSS là để hỗ trợ và cải tiến việc ra quyết định.

2.3.2 Các thành phần của Hệ hỗ trợ ra quyết định


Một Hệ hỗ trợ ra quyết định gồm có ba thành phần chính

• Quản lí mô hình
• Quản lí dữ liệu
• Quản lí giao diện ngừơi dùng

Quản lí mô hình (Model Management) bao gồm các mô hình ra quyết định (DSS
models) và việc quản lí các mô hình này. Một số ví dụ của các mô hình này bao gồm: mô
hình nếu thì, mô hình tối ưu, mô hình tìm kiếm mục đích, mô hình thống kê.

Quản lí dữ liệu (Data Management) thực hiên công việc lưu trữ các thông tin của hệ và
phục vụ cho viêc lưu trữ, cập nhật, truy vấn thông tin.

Quản lí giao diện ngừơi dùng (User Interface Management) quản lí việc giao tiếp giữa
người dùng cuối và Hệ ra quyết định.

Hình 2.3 - Các thành phần của Hệ hỗ trợ ra quyết định.

6
2.3.3 Mô hình ra quyết định
Một đặc trưng cơ bản của Hệ hỗ trợ ra quyết định là phải có ít nhất một mô hình hỗ trợ ra
quyết định. Việc chọn lựa và xây dựng mô hình nằm trong giai đoạn thứ hai (Design
Phase) của quá trình ra quyết định.

Một mô hình là một khái quát hóa hay trừu tượng hóa của thực tế. Mô hình hóa là việc
khái quát hóa và trừu tượng hóa các vấn đề thực tế thành các mô hình định tính hay định
lượng. Đó là một quy trình kết hợp cả khoa học (sự chính xác, logic) và nghệ thuật (sự
sáng tạo).

Một mô hình thường bao gồm ba thành phần cơ bản:

• Decision Variables: Đây là các lực chọn xác định bởi người ra quyết định.
Chẳng hạn trong bài tóan quyết định đầu tư thì đây là số tiền đầu tư, nơi đầu tư,
thời gian đầu tư…
• Uncontrollable Variables : Đây là các biến không nằm trong sự kiểm sóat của
người ra quyết định (bị tác động bởi các yếu tố bên ngòai). Chẳng hạn trong bài
tóan trên thì đây là tốc độ lạm phát, lãi suất ngân hàng…
• Result Variables: Đây là các biến kết quả của mô hình. Chẳng hạn trong bài
toán trên thì đây là tỉ số lợi nhuận…

UnControllable variables

Meathematical
Decision variables relationships Result variables

Hình 2.4 Cấu trúc tổng quát của một mô hình.


Khi lựa chọn quyết định cuối cùng, người ra quyết định có thể muốn có một quyết định
tối ưu (optimal) hay một quyết định thỏa đáng, gần tối ưu (good enough). Do vậy có thể
chia ra hai loại mô hình hỗ trợ ra quyết định

Mô hình quy chuẩn (Normative Model): Mô hình này xem xét tất cả các phương án và
chọn ra phương án tôi ưu.

Mô hình mô tả (Descriptive Model): Mô hình này xem xét một tập hợp các điều kiện theo
ý người dùng và xem xét các phương án theo hướng các điều kiện này và đưa ra một kết

7
quả thỏa đáng. Vì mô hình này không xem xét hết tất cả các phương án nên kết quả cúôi
cùng có thể chỉ gần tối ưu.

Mô hình quy chuẩn thường được sử dụng trong bài tóan tối ưu hóa một mục tiêu. Mô
hình mô tả thường được sử dụng trong bài tóan tôi ưu hóa đa mục tiêu khi các mục tiêu
này có thể mâu thuẩn nhau.

2.3.4 Phân loại Hệ hỗ trợ ra quyết định


Hệ hỗ trợ ra quyết định được phân loại dựa trên nhiều tiêu chí. Hiện nay, vẫn chưa có
cách phân loại thống nhất. Sau đây là 2 cách phổ biến nhất:

Theo [4], có tất cả năm lọai Hệ hỗ trợ ra quyết định

• Hướng giao tiếp (Communications-Driven DSS)


• Hướng dữ liệu (Data-Driven DSS )
• Hướng tài liệu (Document-Driven DSS)
• Hướng tri thức (Knowledge-Driven DSS)
• Hướng mô hình (Model-Driven DSS)

Hướng giao tiếp - Hệ hỗ trợ ra quyết định sử dụng mạng và công nghệ viễn thông để
liên lạc và cộng tác. Công nghệ viễn thông bao gồm Mạng cục bộ (LAN), mạng diện
rộng (WAN), Internet, ISDN, mạng riêng ảo... là then chốt trong việc hỗ trợ ra quyết
định. Các ứng dụng của hệ hỗ trợ ra quyết định hướng giao tiếp là Phần mềm nhóm
(Groupware), Hội thảo từ xa (Videoconferencing), Bản tin (Bulletin Boards)…

Hướng dữ liệu - Hệ hỗ trợ Ra quyết định dựa trên việc truy xuất và xử lí dữ liệu.
Phiên bản đầu tiên được gọi là Hệ chỉ dành cho việc truy xuất dữ liệu (Retrieval-Only
DSS ). Kho dữ liệu (Datawarehouse) là một Cơ Sở Dữ Liệu tập trung chứa thông tin từ
nhiều nguồn đồng thời sẵn sàng cung cấp thông tin cần thiết cho việc ra quyết định.
OLAP có nhiều tính năng cao cấp vì cho phép phân tích dữ liệu nhiều chiều, ví dụ dữ
liệu bán hàng cần phải được phân tích theo nhiều chiều như theo vùng, theo sản phẩm,
theo thời gian, theo người bán hàng.

Hướng tài liệu - Hệ hỗ trợ ra quyết định dựa trên việc truy xuất và phân tích các văn
bản, tài liệu…Trong một công ty, có thể có rất nhiều văn bản như chính sách, thủ tục,
biên bản cuộc họp, thư tín... Internet cho phép truy xuất các kho tài liệu lớn như các
kho văn bản, hình ảnh, âm thanh… Một công cụ tìm kiếm hiệu quả là một phần quan
trọng đối với các Hệ hỗ trợ ra quyết định dạng này.

8
Hướng tri thức - Hệ hỗ trợ ra quyết định có thể đề nghị và đưa ra những tư vấn cho
người ra quyết định. Những hệ này là các hệ chuyên gia với một kiến thức chuyên
ngành cụ thể, nắm vững các vấn đề trong chuyên ngành đó và có kĩ năng để giải quyết
những vấn đề này. Các công cụ khai mỏ dữ liệu có thể dùng để tạo ra các hệ dạng này.

Theo Holsapple và Whinston (1996) [6] phân ra 6 lọai Hệ hỗ trợ ra quyết định

• Hướng văn bản (Text-Oriented DSS)


• Hướng cơ sở dữ liệu (Database-Oriented DSS)
• Hướng bản tính (Spreasheet-Oriented DSS)
• Hướng người giải quyết (Solver-Oriented DSS)
• Hướng luật (Rule-Oriented DSS)
• Hướng kết hợp (Compound DSS)

Hướng văn bản – Thông tin (bao gồm dữ liệu và kiến thức) được lưu trữ dưới dạng
văn bản. Vì vậy hệ thống đòi hỏi lưu trữ và xử lí các văn bản một cách hiệu quả. Các
công nghệ mới như Hệ quản lí văn bản dựa trên web, Intelligent Agents có thể được sử
dụng cùng với hệ này.

Hướng cơ sở dữ liệu - Cơ sở dữ liệu đóng vai trò chủ yếu trong hệ này.Thông tin
trong cơ sở dữ liệu thường có cấu trúc chặt chẽ, có mô tả rõ ràng. Hệ này cho phép
người dùng truy vấn thông tin dễ dàng và rất mạnh về báo cáo.

Hướng bản tính – Một bản tính là một mô hình để cho phép người dùng thực hiện
việc phân tích trước khi ra quyết định. Bản tính có thể bao gồm nhiều mộ hình thống
kê, lập trình tuyến tính, mộ hình tài chính… Bản tính phổ biến nhất đó là Microsoft
Excel. Hệ này thường được dùng rông rãi trong các hệ liên quan tới người dùng cuối.

Hướng người giải quyết – Một trợ giúp là một giải thuật hay chương trình để giải
quyết một vấn đề cụ thể chẳng hạn như tính lượng hàng đặt tối ưu hay tính tóan xu
hướng bán hàng. Một số trợ gíup khác phức tạp như là tối ưu hóa đa mục tiêu. Hệ này
bao gồm nhiều trợ gíup như vây.

Hướng luật – Kiến thức của hệ này được mô tả trong các quy luật thủ tục hay lí lẽ. Hệ
này còn đựoc gọi là hệ chuyên gia. Các quy luât này có thể là định tính hay định
lượng. Các ví dụ của hệ này như là hướng dẫn không lưu, hướng dẫn giao thông trên
biển, trên bộ…

9
Hướng kết hợp - Một hệ tổng hợp có thể kết hợp hai hay nhiều hơn trong số năm hệ kể
trên.

2.4 Tìm kiếm và đánh giá các lựa chọn một phần rất quan trọng trong hỗ trợ ra
quyết định

Giai đọan lựa chọn (Choice Phase) là giai đoạn quan trọng nhất của quá trình ra quyết
định. Giai đoạn này bao gồm ba bước chính sau đây:

• Tìm kiếm lựa chọn


• Đánh giá lựa chọn
• Giới thiệu lựa chọn

Trong trường hợp người ra quyết định muốn sử dụng mô hình quy chuẩn (normative
model) để tìm kiếm một lựa chọn tối ưu, thì Hệ hỗ trợ ra quyết định có thể sử dụng
phương pháp vét cạn (blind search) để duyệt hết tất cả các lựa chọn hay mô hình toán học
để phân tích. Đối với mô hình mô tả, ta có thể sử dụng phương pháp kinh nghiệm
(heuristic search) để duyệt các lựa chọn dựa trên các quy luật rút ra được từ thử và sai hay
kinh nghiệm.

Phương pháp đánh giá các lựa chọn được quyết định khác nhau trong bài toán một mục
tiêu và bài toán đa mục tiêu. Bài toán một mục tiêu có thể được mô hình hóa bằng bảng ra
quyết định hay cây ra quyết định.

Một trong các phương pháp hiệu quả để giải quyết đa mục tiêu là đo lường trọng số của
các ưu tiên ra quyết định (Analytical Hierarchy Process của ExpertChoice). Một phương
pháp khác là tối ưu hóa dựa trên các mộ hình tóan học tuyến tính (Microsoft Excel,
Lingo…). Một phương pháp khác là lập trình kinh nghiệm sử dụng heuristics như là tabu
search, giải thuật di truyền.

10
Chương 3

Mua hàng qua mạng và sự cần thiết của hỗ trợ ra quyết định

3.1 Internet đem đến một phương thức mua bán mới

Sự phát triển vượt bậc từng ngày của các công nghệ trên Internet đã dần thực sự biến đổi
các hoạt động thương mại làm cho nó mang tính toàn cầu hơn. Các hoạt động kinh doanh
truyền thống giờ đã được số hóa, các khái niệm về E-Commerce, E-Business, E-Market,
Shopping online xuất hiện và ngày càng trở nên phổ biến. Chính công nghệ Internet đã
thực sự kết nối các doanh nghiệp với nhau (B2B – Business To Business) và doanh
nghiệp với khách hàng (B2C – Business To Customer).

Sức mạnh và sự thuận lợi của công nghệ Web đã giúp các công ty, doanh nghiệp đưa các
hoạt động kinh doanh của mình đến gần với người dùng hơn. Sử dụng Web các công ty
có thể đưa đến người dùng từ những mẫu quảng cáo nhỏ, các mặt hàng, dịch vụ mà công
ty cung cấp đến các hoạt động mua bán với khách hàng. Chính điều đó đã hình thành một
phương thức mua bán hoàn toàn mới mẻ và đang trở nên một hoạt động phổ biến trên
Internet , mua bán hàng qua mạng (Shopping Online).

3.2 Khảo sát thực trạng mua bán qua mạng

So với các hoạt động trên mạng khác thì hoạt động mua bán hàng qua mạng vẫn chiếm
một tỷ lệ rất nhỏ nhưng rỏ ràng nó đang phát triển từng ngày.

Theo khảo sát [18]:

• Năm 1997 chỉ có 9,6% người dùng Internet thực hiện mua bán qua mạng.
• 1998 Æ 10,9%
• 1999 Æ 10,4%
• 2000 Æ 13,5%

Khi câu hỏi “Mọi người nghĩ gì về mua hàng qua mạng?Việc mua hàng qua mạng đem
đến những gì?” được đưa ra hỏi (tháng 1 năm 2000) thì cuộc khảo sát [18] nhận được các
kết quả như sau:

Các mặt thuận lợi:

• Bạn có thể mua hàng trong vòng một tiếng và không quan tâm đến thời gian
đóng cửa của cửa hàng (74%)
• Có thể quan sát mọi thứ ngay từ nhà mình (72%)

11
• Một lượng lớn và đủ chủng lọai các mặt hàng và dịch vụ được đưa ra (65%)
• Sự không biên giới,bạn có thể mua hàng từ bất kỳ quốc gia nào (54%)
• Dể dàng so sánh giá cả (52%)

Các mặt không thuận lợi:

• Không thể thử món hàng minh mua (52%)


• Không có các dịch vụ trợ giúp khi mua hàng(30%)
• Có nhiều khó khăn khi giao dịch hoặc trả lại hàng hóa (25%)
• Phương thức thanh toán còn qua phức tạp(31%)
• Người mua hàng tỏ ra hoài nghi khi có quá nhiều thông tin cá nhân được thu
thập (30%)

Và với các yếu tố ảnh hưởng đến việc mua hàng qua mạng trên thì có 2/3 người dùng
khẳng định họ sẽ tiếp tục mua hàng và 1/3 còn lại thì khẳng định họ không có ý định mua
hàng qua mạng, một con số đáng để lưu tâm [18]

3.3 So sánh giữa phương thức mua hàng truyền thống và mua qua mạng

3.3.1 Các bước cơ bản để tiến hành một giao dịch mua hàng
Bảng 3.1 - Các bước cơ bản để tiến hành một giao dịch
Phương thức mua bán truyền thống Phương thức mua bán qua mạng
Chọn một cửa hàng ưng ý có bán sản Chọn một Website ưng ý có bán sản phẩm
phẩm mà mình qua tâm(quen, được giới mà mình qua tâm(quen, được giới thiệu,
thiệu, tình cờ). tìm kiếm trên mạng).
Xem xét các sản phẩm được trình bày Duyệt danh sách các mặt hàng trên trang
trong cửa hàng. Web.
Nhờ người bán hàng tìm sản phẩm mà Tìm kiếm sản phẩm qua các từ khóa (nếu
mình muốn mua. trang có hổ trợ).
Nhờ người bán hàng tư vấn mặt hàng phù Ít được hổ trợ.
hợp với mình.
Tương tác trực tiếp, thử dùng với mặt Không có.
hàng ưng ý.
So sánh với các sản phẩm khác trong cửa So sánh với các sản phẩm khác trên
hàng hoặc một cửa hàng khác. Website (nếu hổ trợ). So sánh với các
trang Web khác.
Chọn mua, thanh toán và nhận sản phẩm. Chọn mua và thanh toán chờ công ty phân
phối sản phẩm.
Hoàn trả nếu không ưng ý. Liên lạc với trang web qua hệ thống mail
và chờ phản hồi.

12
3.3.2 Các điểm thuận lợi và không thuận lợi trong phương thức mua bán truyền
thống
¾ Thuận lợi:
o Người mua có thể “sờ tận tay, thấy tận mắt”.
o Nếu gặp khó khăn có thể nhờ người bán hàng tư vấn.
o Có thể mặt cả giá cả.
o Mua sắm trở thành một văn hóa, làm cho người mua hứng khởi.
o Việc mua sắm đôi khi tốn rất nhiều thời gian.
¾ Không thuận lợi:
o Người mua khó nắm bắt hết các thông tin về mặt hàng mình định mua.
o Các mặt hàng thuộc các nhà cung cấp khác nhau thường được phân bố rải rác
làm cho người mua khó so sánh.
3.3.3 Các điểm thuận lợi và không thuận lợi trong phương thức mua bán qua
mạng
¾ Thuận lợi:
o Người mua dễ dàng nắm bắt được thông tin của mặt hàng định mua.
o Số lượng các mặt hàng rất đa dạng.
o Dễ dàng so sánh các mặt hàng với nhau.
o Thời gian mua sắm ít.
¾ Không thuận lợi:
o Người mua chỉ có thể “thấy” chứ không thể thử, tiếp xúc với mặt hàng.
o Không được tư vấn khi không biết phải chọn mặt hàng nào.
o Không tìm được mặt hàng ưng ý vì có quá nhiều sự chọn lựa.
3.4 Khảo sát các trang web bán hàng và sự hỗ trợ khách hàng của chúng

Các hoạt động hỗ trợ khách hàng ra quyết định mua hàng qua mạng rất đa dạng và được
phân chia theo nhiều cách khác nhau. Sự phân chia ở bảng dưới sử dụng cách phân loại
của ở tài liệu [16], chỉ ra 3 mức hỗ trợ của DSS là hỗ trợ theo hướng truy cập, hỗ trợ theo
hướng giao dịch và hỗ trợ theo hướng quan hệ.

Bảng 3.2 - Phân loại hệ hỗ trợ ra quyết định trong E-Commerce


Mức hỗ Đặc điểm
trợ
Hướng Tất cả các trang web tìm kiếm (không chỉ riêng cho các trang web mua
truy cập bán trực tuyến)
Đặc điểm:
• Tìm kiếm và duyệt tuyến tính.
• Tìm kiếm theo từ khóa.
Hướng Các trang web ở mức này có những đặc điểm sau:

13
giao dịch • Giao diện người dùng tập trung hỗ trợ các hành vi của người
dùng trong các hoạt động giao dịch, mua hàng, đặc biệt là hướng dẫn
lựa chọn sản phẩm.
• Cấu trúc dữ liệu website mua hàng và ứng dụng web server.
• Đòi hỏi nội dung, chất lượng của catalog sản phẩm và giao
diện đồ họa phải cao.
Hướng Đây là những ứng dụng hướng đến mục tiêu chỉ dẫn khách hàng dựa
quan hệ trên tri thức, với các đặc điểm sau:
• Thông qua sở thích và tính cách cá nhân của người tiêu dùng.
• Hỗ trợ các nhắc nhở,quảng cáo, mở rộng dây chyền cung ứng.
• Tìm kiếm theo ngôn ngữ tự nhiên.
Sự sắp xếp này đi từ sự hỗ trợ đơn giản đến tinh vi. Những mức độ này cũng phản ánh sự
tiến triển của các hệ hỗ trợ từ những năm 90 đến nay.

Ở mức 1, DSS dùng nhiều đến các phần mềm đa dụng để tạo những trang mua bán và tìm
kiếm, duyệt đơn giản dựa trên các từ khóa. Những trang web này chủ yếu để lôi kéo
khách hàng và không tốn nhiều chi phí để xây dựng. Chúng là dạng thực thi trên web và
chúng đem lại rất ít các trợ giúp cho người mua với các chức năng truy cập thông tin và
chức năng mua hàng đơn giản.

Mức tiếp theo là một chuỗi cố gắng nhằm hiểu rõ các bước và thao tác xử lý của người
mua trong suốt quá trình diễn ra giao dịch và tạo ra nhiều thiết lập mặc định và khuôn
mẫu để hỗ trợ tốt hơn cho các bước cấu trúc. Những khảo sát về DSS những năm cuối
thập niên 90 của thế kỷ 20 tập trung vào việc làm thế nào hỗ trợ các bước so sánh nhãn
hiệu và sản phẩm. Một thời gian sau, một khảo sát khác cho thấy các hệ thống đang cố
gắng mở rộng điểm này cho các bước mua, thanh toán và giao hàng. Họ cũng kết hợp
được những hướng tiếp cận và mở rộng DSS trên các xử lý quyết định như tài chính, giúp
đỡ khách hàng trực tuyến và quản lý lỗi cũng như tìm kiếm theo ngôn ngữ tự nhiên.

Ở mức cao nhất là những đặc tính của các trang mua bán hàng hóa hiện tại được phát
triển trong thập kỷ đầu của thế kỷ 21 này. Ở đây chúng ta thấy sự thay đổi sang sự hỗ trợ
đối với các quan hệ dựa trên thời gian dài mà người mua có được dựa trên các giao dịch.

3.4.1 Khảo sát một số hệ hỗ trợ ra quyết định trong E-Commerce


3.4.1.a Amazon.com
Amazon.com được thành lập vào năm 1996, là trang web bán sách nổi tiếng hiện nay.
Danh mục sản phẩm của Amazon.com rất phong phú bao gồm: sách, đồ điện tử, đĩa nhạc,
phim ảnh. Sự hỗ trợ khách hàng chọn sản phẩm là riêng rẽ từng loại sản phẩm khác nhau.
Điều này cũng dễ hiểu bởi không thể đề nghị khách hàng mua một quyển sách trong khi

14
họ đang tìm mua một máy điện thoại. Chúng ta sẽ tập trung vào hệ thống hỗ trợ trong
mua bán sách của Amazon.com.

Danh mục sách đề nghị mua (persionalized recommendation): Như nhiều website E-
commerce khác, Amazon.com được cấu trúc với các trang thông tin cho mỗi quyển sách,
đem lại các thông tin chi tiết về nội dung và mua bán. Danh sách các quyển sách đề nghị
mua kèm được thấy ở trang thông tin của mỗi cuốn sách. Thật sự, nó gồm hai danh sách
đề nghị riêng biệt. Phần thứ nhất gồm danh sách những quyển sách thường mua nhất.
Phần thứ hai là danh sách các tác giả của những quyển sách thường xuyên được mua. Mọi
hoạt động duyệt danh mục sách, thêm hàng vào giỏ của người dùng đều được website ghi
nhận để làm cơ sở cho việc đưa ra các đề nghị này.

Ý kiến của bạn (Your Recommendation): Amazon cũng khuyến khích khách hàng
phản hồi trực tiếp các cuốn sách mà họ đã đọc. Khách hàng đánh giá các cuốn sách họ đã
đọc trên thang điểm 5 từ “hated it” đến “loved it”. Những đánh giá này sẽ được dùng như
là đầu vào cho một cơ chế đề nghị (recommendation engine). Do đó, khi đánh giá càng
nhiều quyển sách, khách hàng sẽ nhận được lời đề nghị càng chính xác. Hình dưới cho
phép ta xem việc đánh giá của khách hàng là lý do để Amazon đưa ra các đề nghị đối với
các quyển sách khác. Ví dụ khi ta đánh giá quyển “A Road Ahead” của Bill Gates thì
Amazon đề nghị ta một quyển sách khác cũng của Bill Gates là “Bussiness @ the Speed
of Thought”.

Hình 3.1 - Amazon đưa ra lý do vì sao các lời đề nghị được đưa ra.
Email Notification: Đặc tính này cho phép customers được biết qua email các sản phẩm
mới đã thêm vào catalog của Amazon.com.

Nhận xét của khách hàng (Customer Comments): Nhận xét của khách hàng cho phép
khách hàng nhận được các đề xuất dạng văn bản dựa trên ý kiến của các khách hàng khác.

15
Mỗi một trang thông tin cụ thể về một cuốn sách là đánh giá dựa trên thang điểm 5 biểu
hiện bằng hình ngôi sao và các lời nhận xét của những người đã đọc quyển sách và đưa ra
lời bình. Khách hàng cũng có sự chọn lựa các kết hợp giữa các đề xuất này trong quyết
định mua của họ. Hơn nữa, khách hàng có thể đánh giá các nhận xét này. Với mỗi lời
bình có một câu hỏi “Did this comment help you? ” và khách hàng có thể chọn là “có”
hoặc “không” (yes hoặc no). Kết quả sẽ được liệt kê vào bảng và đưa ra 5 trong 7 người
tìm được các lời nhận xét có ích.

3.4.1.b 3.2.2 MovieFinder.com


MovieFinder.com là trang web phim ảnh được quản lý bởi E!Online. MovieFinder hỗ trợ
người dùng qua các sắp xếp các phim theo đánh giá của chính họ và đánh giá của khách
hàng theo các mức từ A đến F. Các đánh giá của người dùng về các phim họ đã xem thể
hiện ở mục Users Grade. Còn mục Our Grade là đánh giá của những người biên tập trang
web. Hình 3.2. dưới cho ta thấy bộ phim “Kingdom of Heaven” được đánh giá B+ ở cả
hai mục Our Grade và Users Grade. Đối với người dùng đã đăng ký có thể được đánh giá
trực tiếp tại đây.

Hình 3.2 - Đánh giá phim ở movifinder.com


3.4.1.c Carsdirect.com
Carsdirect là một cửa hàng bán xe hơi trên Web, được thành lập vào năm. Carsdirect đưa
ra một danh mục sản phẩm theo hướng tiếp cận với nhu cầu của người dùng. Trang
Research (xem hình 3.3) cho phép chọn xe theo mục đích sử dụng của người mua: xe chở
khách, xe cao cấp, xe tải nhẹ, xe cũ v.v…

16
Hình 3.3 - Trang Research.
Khi chọn một loại xe, trang web tiếp tục đưa người dùng chọn đến danh mục phân loại ở
cấp dưới. Cứ thế người dùng sẽ nhận được danh sách các xe ở danh mục đã chọn. Vấn đề
là danh sách này khá dài. Do đó, các công cụ hỗ trợ xem thông tin như car review (xem
mô tả xe), compare car compare (so sánh xe) để tiếp tục tìm một chiếc xe phù hợp nhất.
Các duyệt qua danh này khá rờm rà nhưng cũng đáng để khách hàng bỏ thời gian tìm
kiếm cho mình chiếc xe ưng ý nhất.

Hình 3.4 - Danh mục xe ở loại xe chở khách.

3.4.1.d ActiveDecisions.com
Trong môi trường mua bán qua mạng, người dùng thường không thể đánh giá tất cả các
tiêu chuẩn so sánh ở mức sâu. Việc này đòi hỏi nhiều thời gian và thao tác phức tạp. Do
đó các trang web đưa ra kịch bản xử lý theo 2 bước để đạt được sự hỗ trợ khách hàng ở
mức sâu. Bước đầu tiên, khách hàng thường được đưa ra một bộ gồm nhiều các sản phẩm
và chỉ ra một bộ con các lựa chọn tốt. Sau đó, các lựa chọn này sẽ được đánh giá ở độ sâu

17
hơn, thực hiện các so sánh các sản phẩm trên các thuộc tính quan trọng và ra quyết định
mua. Một chương trình đóng vai trò là người đề nghị (Recommender Agent-RA) sẽ trợ
giúp cho khách hàng trong bước đầu tiên, đưa ra các sản phẩm lựa chọn. Dựa vào các
thông tin cung cấp đã khảo sát trước hoặc chính từ người mua hàng đối với sở thích của
họ mà RA sẽ đề xuất một bộ sản phẩm hấp dẫn nhất đối với cá nhân đó. Các hướng tiếp
cận sở thích người dùng có thể chia ra thành hai nhóm: hướng đặc tính và hướng nhu cầu.
Một hệ thống theo hướng đặc tính thường yêu cầu khách hàng chỉ ra các sở thích về đặc
tính của sản phẩm như: môt máy chụp ảnh kỹ thuật số phải có độ phân giải ít nhất là 4
Mega Pixel. Các tiếp cận nhu cầu sẽ hỏi người dùng chỉ ra “Nhu cầu cá nhân của họ là
gì?”. Ví dụ tôi cần chụp ảnh ngoại cảnh. Cách tiếp cập theo hướng nhu cầu nên là một
phương pháp phù hợp để hỗ trợ cho người dùng chưa có kinh nghiệm chọn sản phẩm.

Active Decisions Inc. là nhà cung cấp hàng đầu thế giới các giải pháp hướng dẫn mua
hàng. Ứng dụng cung cấp bởi Active Decisions đem lại cho bộ phận mua hàng, các chi
nhánh và các ứng dụng tự phục vụ mục tiêu là lôi kéo càng nhiều khách hàng.

Kỹ thuật chính của Acitve Decisions được xem như là sự kết hợp của Recommender
Agent (RA) và ma trận so sánh (Comparison Matrix-CM). Ma trận so sánh, sự trợ giúp
tạo quyết định dạng thứ hai, là công cụ tương tác được đưa ra nhằm giúp người dùng
trong các so sánh ở mức sâu hơn giữa các sản phẩm đã chọn ở bước một. Một dạng cơ
bản của hướng trợ giúp ra quyết định này, thích hợp như một giỏ hàng hiển thị một ma
trận các hàng là các sản phẩm và các cột là các thuộc tính quan trọng của sản phẩm. Thiết
kế này cho phép người mua so sánh các giá trị của sản phẩm hiệu quả và chính xác hơn.

Các bước tiếp cận của kỹ thuật này thì đầu tiên khách hàng sẽ được hỏi họ tìm cái gì và
cái gì là quan trọng với họ thông qua các hướng tiếp cận theo nhu cầu hay theo đặc tính,
dựa vào đó đưa ra các đề xuất thích hợp cho khách hàng. Khách hàng sẽ chọn một vài sản
phẩm đưa ra để so sánh ở mức cao hơn trong ma trận so sánh. Những sản phẩm được đề
nghị cũng hiển thị với lời giải thích tại sao nó tốt cho người dùng. Một vài giải pháp của
Active Decision sẽ được thấy ở các website www.absound.ca, www.qvc.com ,
www.sonystyle.com, www.jr.com và www.hpshopping.com. Chúng ta sẽ khảo sát một ví
dụ của Active Decision ở website Hpshopping.com.

18
3.4.1.e Hpshopping.com
Hpshopping là một trang web giới thiệu các sản phẩm của hãng HP bao gồm máy tính,
máy PDA, máy in. Trong phần này, chúng ta tập trung vào trang chọn mua máy in
(printer). Các câu hỏi chuyên về tính năng sử dụng của máy in như số trang in, cỡ trang in
thường dùng, cổng kết nối với máy tính, hệ điều hành của máy tính v.v… Kết quả là ba
sản phẩm thích hợp nhất được hiển thị ở ma trận so sánh với cột là các sản phẩm và dòng
là các thuộc tính của sản phẩm máy in. Trong một số trường hợp HPShopping còn đưa ra
một kết quả mạnh hơn yêu cầu của người dùng. Kết quả này là một máy in không chỉ có
đủ các đặc tính theo yêu cầu của người dùng mà còn có thêm một số tính năng khác.

Hình 3.5 - Các câu hỏi về đặc tính máy in.

19
Hình 3.6 - Các sản phẩm đề nghị của HP sau khi chọn trả lời cho các câu hỏi.
3.4.1.f Samsungtelecom.com
Đây là trang hỗ trợ khách hàng tìm kiếm sản phẩm theo nhu cầu của khách hàng qua các
câu hỏi cho người dùng lựa chọn. Nếu như ở website hpshopping.com các câu hỏi tập
trung vào “Sản phẩm cần tìm có đặc điểm gì?“ thì ở đây các câu hỏi tập trung vào “Người
dùng cần mua sản phẩm để làm gì?”. Dựa vào các lựa chọn của khách hàng website đưa
ra các điện thoại phù hợp với người dùng. Cuối cùng, sau quá trình đề xuất các sản phẩm
thích hợp, trang web sẽ hỏi ý kiến người dùng có thỏa mãn với những sản phẩm được đề
xuất hay chưa.

20
Hình 3.7 - Các câu hỏi của samsungtelecom.com.
3.4.1.g Shopping.Yahoo.com/Smartsort
Shopping.yahoo.com là một trong những hệ thống mua sắm lớn nhất hiện nay. Ngoài các
tính năng hỗ trợ tìm kiếm thông thường như duyệt theo catalog, cho khách hàng đánh giá
trên sản phẩm đã mua, người dùng còn có thể tìm các sản phẩm theo sở thích, mục đích
sử dụng qua tính năng Smartsort có trên trang web Yahoo!Shopping gồm nhiều loại mặt
hàng trong đó phần Smartsort hỗ trợ các mặt hàng đồ điện tử như điện thoại di động,
digital camera, PDA, máy tính v.v… Phần khảo sát này ta tập trung vào mặt hàng điện
thoại di động. Tính năng Smartsort của Yahoo!Shoppping hỗ trợ người dùng chọn mức
độ quan trọng của các thuộc tính sản phẩm qua thanh kéo (slider bar). Người dùng đánh
giá độ quan trọng của các đặc tính trên máy điện thoại di động như thời gian dùng pin,
kích cỡ, nhà sản xuất, các tính năng giải trí khác v.v… Yahoo đưa ra 5 mức đánh giá độ
quan trọng đối với tính năng của điện thoại di động như sau: không quan trọng (not
important), ít quan trọng (sightly important), quan trọng (important), rất quan trọng (very
important), hết sức quan trọng(most important). Kết quả đưa ra là 10 máy điện thoại di
động được sắp xếp theo độ quan trọng của các tính năng đã đánh giá trước đây. Trong
danh sách các máy điện thoại đưa ra người dùng có thể tiếp tục chọn vào danh sách so
sánh tiếp theo. Một ma trận so sánh sẽ đưa ra giúp khách hàng dễ dàng so sánh.

21
Hình 3.8 - Đánh giá độ quan trọng của các thuộc tính với SmartSort.
3.4.2 Bảng tóm tắt và so sánh
Bảng 3.3 - Tổng kết so sánh website
STT Website Đặc điểm Mức hỗ
trợ đạt
được
1 Amazon.com Các đặc tính hỗ trợ rất phong phú, hỗ trợ 3
người dùng ở nhiều giai đoạn như tìm kiếm,
hướng dẫn mua.
2 Moviefinder.com Chỉ có 2 đặc điểm đơn giản là danh sách “Top 2
10” và đánh giá điểm cho mỗi phim.
3 Carsdirect.com Catalogue danh mục các xe chứa theo nhu cầu 2
người mua.
4 Samsungtelecom.com Danh sách các câu hỏi được đưa ra nhằm -
đánh giá nhu cầu người dung. Danh sách kết
quả là ma trận so sánh khá hợp đã được sắp
xếp.
5 HpShopping.com Danh sách câu hỏi đưa ra cho khách hàng và 3
ma trận so sánh của danh sách sản phẩm được
đề nghị có nội dung và cách trình bày tốt.
6 Shopping.yahoo.com/ Danh sách đánh giá độ quan trọng các tiêu 3
Smartsort chuẩn của sản phẩm đưa ra kết quả ngay lập
tức.

3.5 Các tiện ích mà một trang web bán hàng cần cung cấp để có thể Hỗ trợ khách
hàng tốt hơn

Qua các phần thống kê bên trên chúng ta thấy rằng “hỗ trợ khách hàng” vẫn là một sự
thiếu hụt nghiêm trọng của các trang web bán hàng hiện nay.

22
Theo một cuộc khảo sát các người thường xuyên mua hàng qua mạng thì các tiện ích hỗ
trợ khách hàng đóng vai trò then chốt trong việc gia tăng số lượng mua hàng qua mạng.

Các tiện ích mà các cửa hàng trên mạng cần cung cấp (tốt hơn)

• Giá cả và hỗ trợ so sánh giá cả.


• Tính bảo mật của các giao dịch.
• Các dịch vụ hỗ trợ khách hàng trong việc mua và hoàn trả hàng hóa.
• Hỗ trợ khách hàng tìm kiếm, chọn lựa sản phẩm.

23
Chương 4

Sử dụng giải thuật di truyền để giải quyết bài toán hỗ trợ chọn sản phẩm khi mua hàng

qua mạng

4.1 Giới thiệu

Để xây dựng được một trang web bán hàng thật sự hoàn hảo đó là sự kết hợp của rất
nhiều yếu tố bao gồm sự quảng bá đến người dùng, giao diện người dùng, các tiện ích hỗ
trợ khách hàng khi mua hàng, các dịch vụ giao hàng và hoàn trả hàng. Trong khuôn khổ
luận văn, chúng em cố gắng đưa ra một cách tiếp cận để xây dựng một trong những yếu tố
trên “hỗ trợ khách hàng chọn sản phẩm khi mua hàng qua mạng”.

Chọn sản phẩm là một trong những phần quan trọng nhất khi mua hàng. Như chương
trước đã phân tích một trong những nguyên nhân chính dẫn đến sự không thành công của
phương thức mua hàng qua mạng đó là người mua không thể chọn ra được một sản phẩm
ưng ý nhất trước vô vàn các mặt hàng được bày ra. Vậy trang web chúng ta xây dựng phải
có nhiệm vụ như một người bán hàng chuyên nghiệp đó là nắm bắt các nhu cầu của người
mua và khuyến cáo cho người mua một số sản phẩm mà mình cho là thích hợp. Mặc dù
quyết định cuối cùng vẫn thuộc về người ra quyết định, ở đây là người mua hàng, tuy
nhiên một lời khuyên cho người dùng vẫn rất quan trọng.

4.2 Các khó khăn khi xây dựng một module hỗ trợ khách hàng chọn sản phẩm

Các khó khăn phi kỹ thuật:

• Không giống như một người bán hàng thực, một người bán hàng có thể qua
cách ứng xử, ăn mặc, thái độ v.v của người mua mà có thể chọn ra các mặt
hàng cho phù hợp. Trang web bán hàng hoàn toàn không biết gì về các thông
tin trên của khách hàng.
• Người mua có thể tự do tương tác, trao đổi với người bán để nói lên nhu cầu,
sở thích của mình. Trong khi mua hàng trên mạng thì yếu tố thời gian là rất
quan trọng, cần phải dung hòa giữa lượng thông tin cần thu thập và thời gian
tiêu tốn của người dùng.
• Trao đổi bằng ngôn ngữ tự nhiên sẽ dễ dàng và hiệu quả hơn. Trong khi đó
người mua chỉ có thể trao đổi với trang web qua một số cách nhất định (thường
được số hóa).

24
Các khó khăn về kỹ thuật:

• Không gian tìm kiếm sản phẩm rất lớn, không thể tìm tuyến tính vì sẽ bắt
khách hàng đợi lâu.
• Cần tạo một kich bản để thu thập thông tin khách hàng sao cho hợp lý, tránh
gây nhàm chán và làm mất nhiều thời gian.
• Vấn đề “đa mục tiêu” (xem phụ lục A), các sở thích của người dùng đôi khi
xung đột hoặc không hợp lý dẫn đên kết quả tìm kiếm thường là “Không tìm
thấy mặt hàng nào phù hợp”. Đây là một trong những điều cấm kỵ nhất của
người bán hàng, để người khách hàng ra về tay không, không những không bán
được hàng mà còn để lại ấn tượng không tốt nơi khách hàng.

4.3 Vấn đề “đa mục tiêu” khi chọn sản phẩm

Có thể thấy khó khăn lớn nhất của module hỗ trợ chọn sản phẩm đó là giải quyết, thỏa
mãn cùng lúc nhiều tiêu chí của người mua về mặt hàng mà khách hàng đó quan tâm.
Các mục tiêu,sở thích này có thể đối chọi nhau.Đây thực chất chính là đi giải quyết bài
toán tối ưu đa mục tiêu (xem phụ lục A), trong đó mỗi mục tiêu chính là các sở thích của
người dùng mà mặt hàng đó phải thỏa. Module này có nhiệm vụ tìm ra sản phẩm phù hợp
(hoặc gần giống) với các sở thích của người mua.

4.4 Cách tiếp cận để giải bài toán “Tối ưu đa mục tiêu” khi chọn sản phẩm

Nội dung của luận văn này là tìm hiểu bài toán tối ưu hóa đa mục tiêu và cách tiếp cận
dùng giải thuật di truyền (Genetic Algorithm - GA). Và áp dụng cách tiếp cận trên để giải
bài toán tối ưu hóa đa mục tiêu khi hỗ trợ khách hàng chọn sản phẩm. Luận văn này chọn
cách tiếp cận trên với các lý do sau:

• Đây là một cách tiếp cận mới mẻ và đang được nhiều người quan tâm,phát
triển và ứng dụng vào nhiều lĩnh vực khác nhau.
• Giải thuật di truyền (GA) giựa trên ý tưởng quần thể tự nhiên, chọn lọc ngẫu
nhiên sẽ làm cho giải thuật có khả năng mạnh mẽ trong việc tìm kiếm một cách
song song. Trong đó tất cả các cá thể trong quẩn thể sẽ được cố gắng tìm kiếm
ở tất cả các hướng trong không gian tìm kiếm qua đó cho phép GA tránh được
tối ưu hóa cục bộ.
• Một thế mạnh của GA trong nhiệm vụ tìm kiếm đó là không lo sợ khả năng
bùng nổ của tổ hợp tìm kiếm.GA đặc biệt tỏ ra hữu hiệu với các không gian tìm
kiếm lớn. Với các không gian tìm kiếm lớn GA không những bảo đảm được tối

25
ưu hóa toàn cục mà còn bảo đảm được thời gian tìm kiếm, một trong những
yêu cầu quan trọng của bài toán.
• Và do đặc trưng của bài toán, chúng ta cần trả về cho người mua một danh sách
các mặt hàng mà theo hệ thống là phù hợp nhất (thông thường từ 3 đến 5 giải
pháp) nên việc sử dụng GA lại càng hợp lý. GA khác các phương pháp tìm
kiếm tuyến tính khác là trong một lần chạy có thể cho ta một tập các giải pháp
thuộc miền Pareto (xem phụ lục A) trong quần thể của nó.

4.5 Chuyển bài toán chọn sản phẩm thành bài toán tối ưu đa mục tiêu

Chúng ta sẽ mô tả bài toán mua hàng thành các khái niệm trong bài toán tối ưu hóa đa
mục tiêu.

4.5.1 Lời giải cho bài toán


Trong bài toán tìm kiếm sản phẩm, người dùng mong muốn chọn ra một mặt hàng thích
hợp do đó sản phẩm tối ưu đối với sở thích người mua chính là lời giải của bài toán.
Nhưng chọn ra chỉ một sản phẩm cho người dùng có vẻ không phù hợp cho lắm, đôi khi
tạo cho người dùng cảm giác bị ép buộc. Do đó giải pháp phù hợp đó là một tập các lời
giải tối ưu, tập hợp này tương tự như những sản phẩm mà một người bán hàng sẽ gợi ý
cho chúng ta khi đã nắm bắt được nhu cầu của khách hàng.

4.5.2 Các biến quyết định


Ở đây các biến quyết định (xem phụ lục A) chính là các thuộc tính cấu thành nên sản
phẩm.

Ví dụ (sản phẩm là điện thoại di động)

X = (Giá, trọng lượng, kiểu dáng, thời gian sử dụng pin)

X là một điểm trong vùng khả thi (xem phụ lục A). Trong ví dụ trên có 4 biến quyết
định.

4.5.3 Các ràng buộc


Trong bài toán “tối ưu đa mục tiêu “ các ràng buộc (xem phụ lục A) chính là các điều
kiện giữa các biến quyết định. Nhưng trong bài toán này không gian tìm kiếm là rời rạc,
các điểm trong không gian tìm kiếm chính là ràng buộc của các biến quyết định. Hay nói
cách khác nếu các giá trị của các biến quyết định cùng tồn tại trong một lời giải thì đó là
một ràng buộc đúng đắn.

Các ràng buộc được mô tả bằng 1 vector:

26
H = (h1 ( x), h2 ( x),..., hn ( x)) với n là số biến quyết định.

Trong đó hk ( x) = ( x k = N k )

Khi đó ràng buộc H thỏa khi ∃ X i ∈ F , X i = ( N 1 , N 2 ,..., N n )

Với F là vùng khả thi, không gian lời giải và trong bài toán này là không gian các sản
phẩm.

4.5.4 Các mục tiêu


Có thể dễ dàng nhận thấy 2 mục tiêu (objective) (xem phụ lục A) mà người mua luôn
nhắm tới là giá cả (cost) và chất lượng của sản phẩm (performance). Người mua luôn
muốn mua được sản phẩm đáp ứng đầy đủ các yêu cầu với một giá rẻ nhất .Và điều khó
khăn ở đây đó là 2 mục tiêu này luôn xung đột với nhau. Một sản phẩm với các tính năng
nổi trội luôn có một cái giá cao hơn một sản phẩm khác và ngược lại do đó thường đi
ngược lại với mong muốn của người mua. Do đó nhiệm vụ của bài toán đa mục tiêu đó là
phải dung hòa cả 2 mục tiêu đó.

Mô tả tổng quát:

min/ max F = ( f p ( x), f c ( x)) . Từ đây ta thống nhất là sẽ dùng min, tức là mục tiêu của ta

là làm tối thiểu hóa vector mục tiêu.

Trong đó F là một vector mô tả 2 mục tiêu chính là cost và performance

f c (x) là hàm mục tiêu cho mục tiêu về giá cả (cost).

f p (x) là hàm mục tiêu cho mục tiêu về chất lượng (performance)

Một ví dụ đơn giản về vector mục tiêu trên một sản phẩm gồm 2 thuộc tính.

Sản phẩm X =(weight, cost) với tính chất giá (cost) càng cao trọng lượng (weight) càng
thấp và người mua muốn một sản phẩm với giá (cost) thấp và trọng lượng (weight) cũng
thấp.

Vector mục tiêu được định nghĩa như sau:

F = ( f p ( X ), f c ( X ))

với f p ( X ) = weight và f c ( X ) = cost

27
fp(X )
Xu hướng người mua

Vùng yêu thích


Vùng khả thi hay
không gian tìm
kiếm

fc (X )

Hình 4.1 - Vector mục tiêu của sản phẩm có 2 thuộc tính.
Trên đây chỉ là trường hợp đơn giản performance của ta chỉ có một thuộc tính. Đối với
trường hợp tổng quát thì sao? Bây giờ hàm mục tiêu về chất lượng (performance) sản
phẩm sẽ trở thành:

f p ( x) = ( f p1 ( x) + f p 2 ( x) + ... + f p ( n −1) ( x)) với n là số thuộc tính của sản phẩm (n-1 vì đã

bỏ qua thuộc tính giá cả)

Nhưng khó khăn đặt ra là các thuộc tính lại không có đơn vị tính giống nhau do đó ta cần

có một số tinh chỉnh để hàm f p (x) có thể thực hiện được. Một cách đơn giản mà ta có

thể áp dụng đó là tinh chỉnh (normalize) các thuộc tính để các thuộc tính đều có giá trị là
một số thực từ 0 đến 1. Bây giờ hàm mục tiêu về performance sẽ có dạng:

f p ( x) = ( f p1 ( x) / X 10 + f p 2 ( x) / X 20 + ... + f p ( n −1) ( x) / X n0−1 ) trong đó X k0 là giá trị lớn nhất

mà thuộc tính X 1 có thể có được.

4.5.5 Hướng đến một lời giải “tối ưu”


Để có được một lời giải tối ưu (hoặc gần tối ưu) chúng ta cần qua 2 giai đoạn:

• Hướng các lời giải của chúng ta về miền tối ưu Pareto (xem phụ lục A)
• Chọn trên miền Pareto một lời giải phù hợp nhất.

4.5.5.a Điều hướng lời giải về miền tối ưu Pareto


Cũng như với cách mua hàng truyền thống ,để người bán hàng có thể chọn ra các sản
phẩm phù hợp thì người mua phải cung cấp các tiêu chí (sở thích) về sản phẩm mà mình
định mua. Cũng tương tự như vậy để giải quyết bài toán này chúng ta cũng phải thu thập
một số thông tin về sản phẩm mà người dùng mong đợi, đây chính là mục tiêu của người
dùng.

28
Chúng ta có thể mô tả một mục tiêu của người dùng bằng một vector như sau:

Pr ef = ( P1 , P2 ,..., Pk ) (Pref - Preference )

Trong đó Pi là một hằng số, mô tả giá trị mà người mua mong muốn có được ở thuộc tính

xi . Và k là số thuộc tính mà người dùng mô tả về sản phẩm.Trong đó 1 ≤ k ≤ n (n là số


thuộc tính của sản phẩm) vì không nhất thiết người dùng phải mô tả tất cả các thuộc tính.

Và mục tiêu của chúng ta là đưa giá trị của các thuộc tính được mô tả về càng gần với giá
trị Pi càng tốt. Đây chính là nơi ta áp dụng hướng tiếp cận hướng mục đích (xem phụ lục

A), mỗi Pi là một mục đích của chúng ta.

Một mục đích trên thuộc tính xi có thể được mô tả một cách đơn giản là:

min f pi ( x) − xi

Và hàm mục tiêu về chất lượng sản phẩm sẽ có dạng:


k
f p ( x) = min(∑ min f pi ( x) − xi )
i =1

Khi tối ưu từng mục đích (goal) chúng ta hi vọng rằng các sản phẩm trong không gian tìm
kiếm của thuật toán di truyền sẽ điều hướng về miền tối ưu Pareto.

f p (x)

P1
P2
Miền tối ưu Pi
Pareto

f c (x)

Hình 4.2 - Điều hướng về miền tối ưu Pareto.

29
4.5.5.b Chọn trên miền tối ưu Pareto lời giải tối ưu nhất
Theo định nghĩa của miền tối ưu Pareto thì những lời giải trên miền này không thể so
sánh với nhau được nữa vì trên miền này không có lời giải nào hoàn toàn thống trị lời giải
khác (xem phụ lục A). Khi chúng ta đã chọn lọc được các lời giải trên miền Pareto (ở
bước trên) thì việc tiếp theo đó là chọn ra trên miền đó 1 hoặc nhiều lời giải mà ta cho là
tốt hơn những lời giải khác (cũng thuộc miền Pareto). Chúng ta phải làm việc này vì trên
miền Pareto không đảm bảo chỉ tồn tại 1 lời giải.

Để chọn ra lời giải tốt hơn trên miền này chúng ta sẽ áp dụng cách tiếp cận Weighting
Objective(xem phụ lục A). Khi đó ta cần thêm các thông tin về mức độ quan trọng của
các mục tiêu (đây là các đánh giá khách quan của người ra quyết định-người mua
hàng).Đây chính là mối tương quan về độ trội của các mục tiêu.

Lúc này vector mô tả sở thích của người mua có dạng:

Pr ef = (( w p1 , P1 ), ( w p 2 , P2 ),..., ( w pk , Pk )) trong đó wi chính là độ quan trọng của mục tiêu

thứ i trong mục tiêu về chất lượng của sản phẩm f pi (x)

Khi đó trọng số quan trọng của mục tiêu về chất lượng sản phẩm (performance) sẽ là :
k
w p = ∑ w pi
i =1

Và độ quan trọng của mục tiêu về giá cả wc

Với các ràng buộc:


k
w p + wc = ∑ w pi + wc = 1
i =1

Khi người dùng thay đổi các trọng số độ quan trọng của các mục tiêu thì các lời giải “tối
ưu” sẽ di chuyển trên miền Pareto. Người ra quyết định có thể thay đổi trọng số này để có
thể chọn ra các lời giải “tối ưu”.

30
f p (x)

Miền tối ưu
Pareto
wc

wp

f c (x)

Hình 4.3 Di chuyển trên miền Pareto bằng cách thay đổi trọng số
4.5.6 Các cải tiến để phù hợp với bài toán.
4.5.6.a Mô tả cấu trúc gene của thuật giải di truyền
Do nhu cầu của bài toán (cần trả về một tập lớn hơn 1 lời giải tối ưu) nên mỗi gen sẽ được
biễu diễn bằng một mảng các định danh của các lời giải trong không gian tím kiếm (trong
trường hợp cụ thể đó là các id của các sản phẩm trong cơ sở dữ liệu). Số lời giải trả về có
thể phụ thuộc vào mong muốn của người dùng (nhưng phải lớn hơn 1, không ai lại muốn
không tìm thấy sản phẩm nào).

Mô tả một gen:

ID1 ID2 … IDn

Trong đó n là số kết quả mà người dùng mong đợi được trả về.

Kết quả tốt nhất mà ta mong đợi để chọn đó là gen mà tất cả các ID trong gen đều nằm
trên miền tối ưu Pareto hoặc tồi hơn có thể có một số ID thuộc Pareto và một số ít hơn
nằm gần miền Pareto. Trường hợp không thành công là không có ID nào thuộc miền
Pareto lúc này thuật giải chưa được hội tụ, hoặc hội tụ quá sớm gây ra tối ưu cục bộ.

31
f p (x)
Gene xấu

Loại gene
tốt nhất
Gene tương
đối tốt

f c (x)

Hình 4.4 - Các trạng thái gen trong quần thể.


4.5.6.b Vai trò của các thao tác chọn lọc, lai ghép, đột biến trên quần thể
Chọn lọc: Quá trình này nhằm mục đích loại bỏ khỏi quần thể những gen chứa các lời
giải xấu (những lời giải nằm xa miền tối ưu Pareto) (xem hình trên). Tuy nhiên vấn đề
cần quan tâm ở đây đó là bảo toán tính tốt và tính đa dạng của quần thể. Khi loại bỏ các
gen xấu chúng ta có thể loại bỏ luôn cả các lời giải tốt (hoặc tương đối tốt) tồn tại trong
gen.

Lai ghép: Đây là một quá trình tự nhiên trong đó các nhiễm sắc thể giữa 2 gen sẽ được
hoán đổi cho nhau. Nhiệm vụ chính của nó là làm tăng tính đa dạng của quần thể, với hi
vọng các gen tốt hơn sẽ được tạo ra.

Chúng ta cần một số cải tiến để bảo đảm rằng các gen đời sau sẽ tốt hơn đời trước. Bởi vì
độ tốt của một gen được xác định bằng tổng độ tốt của mỗi nhiễm sắc thể (gen nào có
nhiều nhiễm sắc thể (NST) trên miền Pareto, hoặc gần miền Pareto hơn thì gen đó tốt
hơn). Nên khi lai ghép ta sẽ chuyển các NST tốt của một gen (bố hoặc mẹ) vào gen của
người còn lại. Như vậy sau khi lai ghép sẽ tạo ra một gen hoàn toàn trội hơn 2 gen bố mẹ,
và một gen sẽ chứa toàn những tính xấu. Khi đó trong quá trình chọn lọc ta chỉ giữ lại
một gen con tốt vừa được tạo ra và một gen (bố hoặc mẹ) tốt hơn. Khi đó ta sẽ vừa bảo
đảm các nhiễm sắc thể tốt sẽ không bị “vô tình” loại bỏ và tính đa dạng của quần thể cũng
vẫn được bảo tồn qua các đời.

32
f p (x) Gene bố

Gene con xấu

Gene con tốt

Gene mẹ

f c (x)

Hình 4.5 - Lai ghép.


Đột biến: Vai trò của thao tác đột biến là để tránh tối ưu hóa cục bộ (các gen chưa tiến
đến được miền Pareto). Qua thao tác đột biến chúng ta sẽ đưa các lời giải tốt hơn vào
không gian quần thể của thuật giải di truyền.

f p (x)

Đột biến

f c (x)

Hình 4.6 - Đột biến.

4.5.6.c Hàm thích nghi


Hàm thích nghi của mỗi sản phẩm sẽ có dạng như sau:
k
F = ∑ f pi ( x) + f c ( x)
i =1

f pi (x)
trong đó là hàm mục tiêu của thuộc tính về chất lượng thứ i (người mua quan tâm
đến k thuộc tính-ngoài giá).

33
f c (x) hàm mục tiêu về giá.

Một sản phẩm tốt khi có giá trị hàm thích nghi lớn hơn.Khi thuật giải cố gắng tối đại hóa
hàm thích nghi, thực chất là đang điều hướng các sản phẩm về miền tối ưu Pareto.

Để kết hợp cả 2 giai đoạn điều hướng chúng ta có thể kết hợp cả 2 cách dùng hướng mục
đích và trọng số quan trọng vào cùng một hàm mục tiêu như sau:

f pi ( x) = wi (1 − p i − x i / x i* )
và f c ( x) = wc (1− | p c − c | / c )
*

trong đó wi là độ quan trọng của thuộc tính i.

p i là giá trị mà người dùng mong đợi ở thuộc tính i.

x i là giá trị của thuộc tính i

x i* là giá trị tối đa mà thuộc tính i có thể có được.

c * là giá tiền tối đa mà một sản phẩm có thể có.

34
Chương 5

Phân tích và thiết kế website bán điện thoại di động có hỗ trợ người mua chọn sản phẩm

5.1 Phân tích

5.1.1 Mô hình Usecase

Hình 5.1 - Lược đồ Usecase.


5.1.2 Mô tả các Actor
Actor khách hàng: Người dùng duy nhất của hệ thống là khách hàng. Hệ thống không yêu
cầu mỗi khách hàng phải có tài khoản riêng. Một người dùng bất kỳ có thể vào hệ thống
tìm và mua điện thoại bất cứ lúc nào.

5.1.3 Mô tả các Usecase


5.1.3.a Usecase Tìm kiếm
Usecase này thực hiện khi khách hàng muốn tìm kiếm sản phẩm điện thoại di động theo
một mức giá và theo một số hãng sản xuất. Người dùng chọn một mức giá trong năm mức
giá sau: và chọn các hãng điện thoại cần tìm. Hệ thống sẽ trả về cho khách hàng danh
sách các máy điện thoại di động của các hãng đã chọn có mức giá đó. Danh sách thể hiện
thông tin sơ bộ về mỗi sản phẩm gồm: tên máy, nhà sản xuất, giá bán, kích cỡ, thời gian
chờ, thời gian đàm thoại. Và đối với mỗi sản phẩm đều cho phép người dùng xem thông
tin chi tiết sản phẩm hoặc đặt mua sản phẩm.

Lược đồ trình tự - luồng cơ bản cho usecase Tìm kiếm

35
Hình 5.2 - Lược đồ trình tự cho usecase Tìm kiếm.
5.1.3.b Usecase Xem danh sách sản phẩm bán chạy nhất
Usecase này nhằm đưa ra cho khách hàng một danh sách các sản phẩm bán chạy nhất của
hệ thống. Hệ thống thể hiển danh sách thông tin sơ bộ về mỗi sản phẩm gồm: tên máy,
nhà sản xuất, giá bán, kích cỡ, thời gian chờ, thời gian đàm thoại. Và đối với mỗi sản
phẩm đều cho phép người dùng xem thông tin chi tiết sản phẩm hoặc đặt mua sản phẩm.

Lược đồ trình tự-luồng cơ bản cho usecase Xem danh sách sản phẩm bán chạy nhất như
sau:

Hình 5.3 - Lược đồ trình tự cho usecase Xem danh sách sản phẩm được mua
nhiều nhất.
5.1.3.c Usecase Xem danh sách sản phẩm mới ra mắt
Usecase này nhằm đưa ra cho khách hàng một danh sách các sản phẩm mới ra mắt trong
tháng. Hệ thống thể hiển danh sách thông tin sơ bộ về mỗi sản phẩm gồm: tên máy, nhà
sản xuất, giá bán, kích cỡ, thời gian chờ, thời gian đàm thoại. Và đối với mỗi sản phẩm
đều cho phép người dùng xem thông tin chi tiết sản phẩm hoặc đặt mua sản phẩm.

Lược đồ trình tự-luồng cơ bản cho usecase Xem danh sách sản phẩm mới ra mắt như sau:

36
Hình 5.4 - Xem danh sách sản phẩm mới ra mắt.
5.1.3.d Usecase Xem danh sách sản phẩm được nhiều người quan tâm
Usecase này nhằm đưa ra cho khách hàng danh sách các sản phẩm được nhiều người xem
chi tiết nhất. Hệ thống thể hiển danh sách thông tin sơ bộ về mỗi sản phẩm gồm: tên máy,
nhà sản xuất, giá bán, kích cỡ, thời gian chờ, thời gian đàm thoại. Và đối với mỗi sản
phẩm đều cho phép người dùng xem thông tin chi tiết sản phẩm hoặc đặt mua sản phẩm.

Lược đồ trình tự-luồng cơ bản cho usecase Xem danh sách sản phẩm được nhiều người
quan tâm như sau:

Hình 5.5 - Lược đồ tuần tự Usecase Sản phẩm được quan tâm nhiều nhất.
5.1.3.e Usecase Trợ giúp chọn sản phẩm
Usecase này thực hiện khi khách hàng muốn tìm kiếm những chiếc điện thoại di động có
các đặc tính mà mình thích. Hệ thống yêu cầu khách hàng đánh giá mức độ quan tâm đối
với các tiêu chuẩn của máy điện thoại di động và giá trị mong muốn của thuộc tính đó. Hệ
thống sẽ trả về danh sách gồm 3 máy điện thoại phù hợp nhất với tiêu chuẩn đã đánh giá
của khách hàng.

Năm tiêu chuẩn cho khách hàng sau đánh giá gồm có: Trọng lượng của máy, thời gian sử
dụng máy, kiểu dáng của máy, các tính năng giải trí có trong máy (bao gồm các tính năng

37
“có camera”,”xem video”,”nghe nhạc MP3”, “nghe radio FM” và “tải nhạc chuông
Midi”), và giá bán của máy. Ta chọn 5 tiêu chuẩn trên tiêu biểu cho sự phong phú thuộc
tính của một máy điện thoại di động. Hai tiêu chuẩn đầu (trọng lượng, thời gian sử dụng
máy) và tiêu chuẩn cuối (giá bán) là những thuộc tính có miền giá trị gần như liên tục, có
thể chia ra các khoảng cho người dùng chọn. Ví dụ thời gian chờ có thể chia ra các
khoảng “ngắn”, ”rất ngắn”, ”trung bình”, “dài”, ”rất dài”. Tiêu chuẩn thứ ba(kiểu dáng
của máy) là thuộc tính có miền giá trị rời rạc, người dùng chọn một kiểu dáng cụ thể của
máy mà họ ưa thích. Tiêu chuẩn thứ tư là sự kết hợp nhiều tính năng của máy điện thoại
di động, người dùng sẽ chọn các tính năng mà họ thích.

Đây sẽ là nơi thuật toán di truyền được áp dụng. Các đánh giá của khách hàng được dùng
tìm kiếm sản phẩm thích hợp nhất trong quần thể sản phẩm của thuật toán di truyền.

Lược đồ trình tự-luồng cơ bản cho usecase Trợ giúp chọn sản phẩm như sau:

Hình 5.6 - Lược đồ trình tự cho usecase Trợ giúp lựa chọn sản phẩm.
5.1.3.f Usecase Duyệt danh mục sản phẩm theo hãng sản xuất
Usecase này thực hiện khi khách hàng muốn xem tất cả các sản phẩm điện thoại di động
của một nhà sản xuất cụ thể. Hệ thống đưa ra các danh sách thông tin sơ bộ về các điện
thoại của nhà sản xuất đã chọn.

Lược đồ trình tự-luồng cơ bản cho usecase Duyệt danh mục sản phẩm theo hãng sản xuất
như sau:

38
Hình 5.7 - Lược đồ trình tự cho usecase Duyệt sản phẩm theo hãng sản xuất.
5.1.3.g Usecase Xem chi tiết
Usecase này thực hiện khi khách hàng muốn xem thông tin chi tiết về một máy điện thoại
di động nào đó từ danh sách các điên thoại. Các thông tin đưa ra cho khách hàng gồm :
Tên nhà sản xuất, model máy, kích thước, trọng lượng, kiểu dáng, băng tần hỗ trợ, độ
phân giải và màu sắc màn hình hiển thị, thời gian đàm thoại và thời gian chờ, giá bán, bộ
nhớ, dạng tin nhắn hỗ trợ, các tính năng giải trí (bao gồm tích hợp máy ảnh, quay video,
nghe nhạc MP3, nghe radio FM) và các tính năng kết nối dữ liệu (bao gồm Java, GPRS,
WAP, Bluetooth). Tại đây, khách hàng có thể đặt mua ngay máy điện thoại này.

Lược đồ trình tự-luồng cơ bản cho usecase Xem chi tiết như sau:

Hình 5.8 - Lược đồ trình tự cho usecase Xem thông tin chi tiết.
5.1.3.h Usecase Thêm hàng vào giỏ
Usecase này thực hiện khi khách hàng muốn chọn một sản phẩm và thêm vào giỏ hàng.
Hệ thống sẽ báo cho khách hàng khi đã thêm sản phẩm vào giỏ thành công.

Lược đồ trình tự-luồng cơ bản cho usecase Thêm hàng vào giỏ như sau:

39
Hình 5.9 - Lược đồ trình tự cho usecase Thêm hàng vào giỏ.
5.1.3.i Usecase Xem giỏ hàng
Usecase này thực hiện khi khách hàng muốn xem danh sách sản phẩm đã đặt mua trong
giỏ hàng. Hệ thống hiển thị danh sách từng sản phẩm đã đặt mua của khách hàng và số
lượng của chúng. Người dùng có thể nhập lại số lượng đặt mua hoặc hủy việc đặt mua
một sản phẩm.

Lược đồ trình tự-luồng cơ bản cho usecase Xem giỏ hàng như sau:

Hình 5.10 - Lược đồ trình tự cho usecase Xem giỏ hàng.


5.1.3.j Usecase Thanh toán
Usecase này thực hiện khi khách hàng muốn thanh toán cho những sản phẩm đã chọn
trong giỏ hàng. Hệ thống sẽ xem khách hàng đã đăng ký thông tin cá nhân chưa. Nếu
chưa hệ thống sẽ buộc khách hàng điền vào thông tin cá nhân bao gồm: Họ tên khách
hàng, địa chỉ, email.

40
Hệ thống sẽ tạo tạo hóa đơn liệt kê các sản phẩm trong giỏ hàng, yêu cầu khách hàng
chọn phương thức giao hàng, phương thức thanh toán. Khách hàng chọn phương thức
giao hàng và phương thức thanh toán thích hợp với mình rồi chấp nhận đặt mua hoặc hủy
không mua.

Lược đồ trình tự-luồng cơ bản cho usecase Thanh toán như sau:

Hình 5.11 – Lược đồ trình tự cho usecase Thanh toán.


5.2 Thiết kế

5.2.1 Thiết kế hệ thống


Hệ thống gồm 2 module chính: Module ứng dụng cửa hàng web bán điện thoại di động và
module áp dụng thuật toán GA tìm kiếm điện thoại theo sở thích người dùng. Mobile ứng
dụng thuật toán GA có thể phân gồm 2 gói riêng biệt. Gói MobilePhoneShop chứa thông
tin các thuộc tính của máy điện thoại di động, có chức năng kết nối và đưa thông tin của
cơ sở dữ liệu lên một nhớ chính. Gói GenecticAlgorithm chứa thuật toán di truyền.

Sơ đồ kiến trúc các thành phần hệ thống:

41
Hình 5.12 - Mô hình kiến trúc hệ thống.
5.2.2 Thiết kế cơ sở dữ liệu
5.2.2.a Lược đồ cơ sở dữ liệu quan hệ

Hình 5.13 - Sơ đồ dữ liệu quan hệ.

42
5.2.2.b Danh sách các bảng
Bảng 5-1-Danh sách các bảng cơ sở dữ liệu
STT Tên bảng Ghi chú
1. tblItems Sản phẩm điện thoại di động

2. tblProducers Hãng sản xuất

3. tblCaseType Danh sách kiểu dáng của điện thoại di động

4. tblOders Đơn đặt hàng

5. tblOderDetails Chi tiết đơn đặt hàng

5.2.2.c Chi tiết các bảng dữ liệu


Bảng 5.2 - Bảng dữ liệu tblItems
STT Tên thuộc tính Ý nghĩa Kiểu dữ liệu Miền giá trị Ghi chú
1 ItemID Mã sản phẩm int Khóa chính
2 ItemModel Tên sản phẩm nvarchar(50)
3 ProducerID Mã hãng sản int
xuất
4 Image Đường dẫn chứa
file hình của sản
phẩm
5 SmallImage
6 Comingdate Ngày ra mắt datetime
7 Height Chiều cao real Đơn vị: mm
8 Length Chiều rộng real Đơn vị: mm
9 Width Độ dày real Đơn vị: mm
10 Weight Trọng lượng smallint Đơnvị: gam
11 Standby Time Thời gian chờ smallint Đơn vị: giờ
12 Talk Time Thời gian đàm smallint
thoại
13 Screen Color Màn hình char(10)
14 Screen Độ phân giải của char(10)
Resolution màn hình
15 GPRS GPRS Bit
16 FM Nghe radio FM bit
17 Message Loại tin nhắn hỗ nvarchar(50)
trợ
18 Camera Chụp hình nvarchar(50)
19 MP3 Nghe nhạc MP3 bit
20 Memory Dung lượng bộ int
nhớ
21 WAP Char(10)

43
22 Bluetooth bit
23 Java Bit
24 Battery nvarchar(50)
25 Networks Mô tả các băng nvarchar(50)
tần hỗ trợ
26 Price float
27 CaseType Mã kiểu dáng int 1-4
28 Midi bit
29 Video Quay video bit
30 Games Mô tả các trò nvarchar(50)
chơi có trong
máy

Bảng 5.3 - Bảng dữ liệu tblCaseType


STT Tên thuộc tính Ý nghĩa Kiểu dữ liệu Miền giá trị Ghi chú
1 CasetypeID Mã kiểu dáng int Khóa chính
2 Description Mô tả nvarchar(20)

Bảng 5.4 - Bảng dữ liệu tblProducers


STT Tên thuộc tính Ý nghĩa Kiểu dữ liệu Miền giá trị Ghi chú
1 ProducerID Mã hãng sản Int Khóa chính
xuất
2 ProducerName Tên hãng sản nvarchar(50)
xuất
3 Website Đường dẫn nvarchar(50)
trang web hãng
sản xuất
4 Logo Đường dẫn chứa nvarchar(50)
hình của hãng
sản xuất

Bảng 5.5 - Bảng dữ liệu tblOrders


STT Tên thuộc tính Ý nghĩa Kiểu dữ liệu Miền giá trị Ghi chú
1 OderID Mã đơn đặt Int Khóa chính
hàng
2 OderDate Ngày đặt datetime
3 CusName Tên khách hàng nvarchar(50)
4 CusAdd Địa chỉ khách nvarchar(50)
hàng
5 CusEmail Email của khách nvarchar(50)
hàng
6 CusTel Điện thoại của char(10)
khách hàng
7 DeliveryAdd Địa chỉ giao nvarchar(50)
hàng
8 Amount Tổng tiền khách float

44
hàng
9 DiscountAmount Phần trăm giảm float
giá
10 ShipCost Phí giao hàng float
11 TotalAmount Tổng tiền thanh float
toán hóa đơn.

Bảng dữ liệu tblOrderDetails


Bảng 5.6 - Bảng dữ liệu tblOrderDetails
STT Tên thuộc tính Ý nghĩa Kiểu dữ Miền giá trị Ghi chú
liệu
1 OrderNumber Số thứ tự của chi Int Khóa chính
tiết trong hóa đơn
2 OrderID Mã hóa đơn Int Khóa chính
3 ItemID Mã sản phẩm Int Khóa chính
4 Quatity Số lượng Int
5 Price Giá Float

5.2.3 Thiết kế các lớp đối tượng


Phần này bao gồm thiết kế các xử lý của đối tượng ở cả ba tầng hoạt động của hệ thống
và sự phối hợp hoạt động giữa chúng ở các mức độ tổng thể và chi tiết đến từng nghiệp
vụ.

5.2.3.a Hiện thực hóa các usecase ở mức thiết kế


Usecase Tìm kiếm

Hình 5.14 - Lược đồ trình tự (mức thiết kế) cho usecase Tìm kiếm.
Usecase Xem danh sách sản phẩm mới ra mắt:

45
Hình 5.15 - Lược đồ trình tự (mức thiết kế) cho usecase Xem sản phẩm mới ra
mắt.
Usecase Trợ giúp chọn sản phẩm

Hình 5.16 - Lược đồ trình tự (mức thiết kế) cho usecase Trợ giúp chọn sản phẩm

46
Usecase Xem chi tiết

Hình 5.17 - Lược đồ trình tự (mức thiết kế) cho usecase Xem thông tin chi tiết
Usecase Thêm hàng vào giỏ

Hình 5.18 - Lược đồ trình tự (mức thiết kế) cho usecase Thêm hàng vào giỏ
Usecase Xem giỏ hàng

Hình 5.19 Lược đồ trình tự (mức thiết kế) cho usecase Xem giỏ hàng

47
Usecase Thanh toán

Hình 5.20 - Lược đồ trình tự (mức thiết kế) cho usecase Thanh toán

5.2.3.b Sơ đồ phối hợp giữa các trang web

Hình 5.21 Sơ đồ phối hợp giữa các trang web

48
5.2.3.c Sơ đồ lớp của ứng dụng web

Hình 5.22 - Sơ đồ lớp ứng dụng WebMobileShop.

52
Các thành phần của sơ đồ:

Bảng 5.7 - Các đối tượng lớp của hệ thống WebMobileShop


STT Lớp Mô tả
1 pageDefault Trang chủ của ứng dụng web
2 pageSearch Trang tìm kiếm sản phẩm theo giá và hãng sản xuất
3 pageCriterionChoose Trang trợ giúp khách hàng lựa chọn sản phẩm thông
qua đánh giá các tiêu chuẩn của sản phẩm
4 pageResult Trang kết quả sản phẩm đề nghị cho khách hàng.
5 pageViewcart Trang xem giỏ hàng.
6 Checkout Trang đặt hàng và kết xuất hóa đơn.
7 BLItems Lớp đối tượng xử lý liên quan đến sản phẩm gồm các
phương thức lấy sản phẩm theo hãng sản xuất, tìm kiếm
sản phẩm theo giá và hãng sản xuất.
8 BLProducer Lớp đối tượng xử lý liên quan đến hãng sản xuất gồm
các phương thức lấy danh sách các hãng sản xuất.
9 OrderItem Lớp đối tượng xử lý các sản phẩm đã đặt hàng.
10 OrderList Lớp đối tượng xử lý liên quan đến danh sách đặt hàng.
11 CustomerPreference Lớp đối tượng chứa các đánh giá khách hàng về mỗi
tiêu chuẩn sản phẩm.
12 Weight Lớp đối tượng chứa thuộc tính trọng lượng của sản
phẩm.
13 Price Lớp đối tượng chứa thuộc tính giá bán của sản phẩm.
14 CaseType Lớp đối tượng chứa thuộc tính kiểu dáng của sản phẩm.
15 Entertainment Lớp đối tượng chứa các thuộc tính giải trí của sản
phẩm.
16 StandbyTime Lớp đối tượng chứa thuộc tính thời gian sử dụng của
sản phẩm.
17 Population Lớp đối tượng chứa các xử lý danh sách sản phẩm của
module thuật toán GA.
18 MobileContainer Lớp đối tượng xử lý dữ liệu danh sách sản phẩm của
module thuật toán GA.
19 DAItems Lớp đối tượng xử lý dữ liệu danh sách sản phẩm.
20 DAProducer Lớp đối tượng xử lý dữ liệu danh sách hãng sản xuất.

53
5.2.3.d Sơ đồ lớp của module thuật toán GA

Hình 5.23 - Sơ đồ lớp của module thuật toán GA.


Các lớp đối tượng trong module này được mô tả trong bảng dưới đây:
Bảng 5.8 - Các đối tượng thuộc module thuật toán GA
STT Lớp Mô tả
1 Genome Lớp đối tượng biểu diễn một gen của thuật toán di
truỳen.
2 Individual Lớp đối tượng biểu diễn một cá thể
3 CustomerPreference Lớp đối tượng chứa các đánh giá khách hàng về mỗi
tiêu chuẩn sản phẩm.
4 Weight Lớp đối tượng chứa thuộc tính trọng lượng của sản
phẩm.
5 Price Lớp đối tượng chứa thuộc tính giá bán của sản phẩm.
6 CaseType Lớp đối tượng chứa thuộc tính kiểu dáng của sản phẩm.
7 Entertainment Lớp đối tượng chứa các thuộc tính giải trí của sản
phẩm.
8 StandbyTime Lớp đối tượng chứa thuộc tính thời gian sử dụng của
sản phẩm.
9 Population Lớp đối tượng chứa các xử lý danh sách sản phẩm, biểu
diễn quần thể của thuật giải di truyền.
10 MobileContainer Lớp đối tượng xử lý dữ liệu danh sách sản phẩm.
11 MobileCriterion Lớp đối tượng cha được xử lý dữ liệu danh sách sản
phẩm từ cơ sở dữ liệu..

54
Chương 6

Cài đặt

6.1 Môi trường phát triển ứng dụng

Hệ thống website được cài đặt dựa trên các môi trường phát triển sau:
• Môi trường cài đặt ứng dung: Visual Studio.NET
• Ngôn ngữ sử dụng: ASP.NET và C#.NET
• Hệ quản trị cơ sở dữ liệu: SQL Server
• Phần mềm mô hình hóa ứng dụng: Rational XDE

6.2 Cài đặt chương trình

Tập tin cơ sở dữ liệu SQL Server được cài đặt tại máy Server.

Hệ chương trình được viết bằng ngôn ngữ C#.NET gồm 2 phần:

• Phần cài đặt thuật toán GA gồm 2 project : project MobilePhoneShop chứa kết nối
và xử lý đến cơ sở dữ liệu và project GeneticAlgorithm chứa cài đặt thuật toán di
truyền theo trọng số. Cả hai project là những Class Library project kết xuất ra tập
tin DLL.
• Phần trang web Mua bán điện thoại di động gồm 1 project WebMobileShop được
cài đặt theo mô hình ứng dụng web 3 tầng:

- Tầng dữ liệu bao gồm các phương thức đọc, ghi cơ sở dữ liệu sử dụng kỹ thuật
ADO.NET để kết nối và truy cập dữ liệu. Các hàm này chứa trong các lớp đối
tượng DABasic, DAItems, DAProducers. Khi khởi động chương trình, hệ
thống đọc vào bộ nhớ chính danh sách thuộc tính của các máy điện thoại di
động. Trong quá trình hoạt động, khi có nhu cầu đọc, ghi dữ liệu, hệ thống kết
nối với Server để đọc các thông tin dữ liệu vào bộ nhớ chính của hệ thống
hoặc ghi dữ liệu từ bộ nhớ chính vào tập tin cơ sở dữ liệu trên Server.

- Tầng xử lý bao gồm các hàm xử lý nghiệp vụ. Các hàm xử lý khi xử lý trên dữ
liệu sẽ thực hiện trực tiếp trên dữ liệu đã được đọc vào bộ nhớ chính. Nếu
chưa có dữ liệu trong bộ nhớ, các hàm xử lý sẽ triệu gọi đến các hàm đọc ghi
dữ liệu ở tầng dữ liệu. Trong chương trình, các hàm xử lý được thiết kế độc
lập với giao diện người dùng.

55
- Tầng giao tiếp bao gồm các hàm hiển thị thông tin và các xử lý dữ liệu có thể
hiện trên màn hình được thiết kế. Các hàm này được cài đặt trực tiếp tại các
trang web. Khi các trang web được triệu gọi, thông tin dữ liệu được lấy từ bộ
nhớ của máy chủ để hiển thị đến trình duyệt của người dùng. Khi có các xử lý
nghiệp vụ xảy ra, các hàm tại tầng giao tiếp sẽ triệu gọi đến các hàm xử lý
nghiệp vụ ở tầng xử lý. Riêng trang trợ giúp lựa chọn sản phẩm sẽ áp dụng mô
hình thuật toán GA bằng cách gọi các hàm trong 2 DLL đã trình bày ở trên.

Với mô hình xử lý như mô tả trên, hệ thống phần nào đã thể hiện được sự hoạt động của
mô hình ba lớp trên môi trường .NET, sự phối hợp cũng như tính độc lập của các lớp đối
tượng được cài đặt tại mỗi tầng và trong toàn ứng dụng.

6.3 Một số màn hình tiêu biểu

Khi gọi ứng dụng web, trang đầu tiên sẽ hiển thị như sau:
Trang web: Default.aspx

Tiêu đề: WebMobileShop Homepage

Ý nghĩa: Trang chủ của ứng dụng

56
Trang web: CriterionChoose.aspx

Ý nghĩa: Trợ giúp người dùng chọn lựa sản phẩm theo các tiêu chuẩn cần có của một máy
điện thoại di động

Trang web: Result.aspx

Ý nghĩa: Danh sách các máy điện thoại đề nghị cho khách hàng sau khi họ đã đánh giá
các tiêu chuẩn ở trang CriterionChoose.aspx

57
Trang web: Viewcart.aspx

Ý nghĩa: Trang chủ của ứng dụng

58
59
Chương 7

Kết luận và hướng phát triển

7.1 Kết luận

Hệ hỗ trợ ra quyết định tuy không phải là một đề tài mới mẻ, với rất nhiều đề tài nghiên
cứu và các nổ lực áp dụng thực tế nó đã dần dà trở thành một bộ phận quan trọng của các
hệ thống thông tin hiện đại. Tuy nhiên các áp dụng của nó vẫn ở mức rất sơ khai và vẫn
chưa có một chuẩn thống nhất.Trong khuôn khổ luận văn chúng em đã tìm hiểu một
cách tổng quan Hệ hỗ trợ ra quyết định.

Bài toán tối ưu hóa đa mục tiêu thực chất là một pha trong Hệ hỗ trợ ra quyết định, giai
đoạn lựa chọn. Đã có rất nhiều cách tiếp cận được đặt ra để giải quyết bài toán này, xong
các cách tiếp cận đó vẫn giựa trên một ứng dụng, một tình huống cụ thể thực tế nào đó.
Và thực tế là chưa có một phương pháp nào có thể thỏa mãn tất cả các tình huống và cũng
chưa có phương pháp nào để so sánh hiệu quả của các phương pháp đó với nhau.Trong
luận văn này chúng em đã cố gắng đưa ra một cái nhìn tổng quát về bài toán tối ưu
hóa đa mục tiêu và một số cách tiếp cận.Trong đó chúng em tập trung vào phương
pháp dùng thuật giải di truyền, một phương pháp còn tương đối mới mẻ.

Và giựa trên phương pháp áp dụng thuật giải di truyền trong bài toán tối ưu hóa đa mục
tiêu ,chúng em cũng đã có những cải tiến để có thể áp dụng vào bài toán cụ thể đó là
“Trợ giúp khách hàng chọn sản phẩm khi mua hàng qua mạng”.

Với cách tiếp cận trên chúng em đã tìm cách áp dụng và xây dựng một trang web bán
điện thoại qua mạng.Trong đó có cài đặt phần trợ giúp để khách hàng có thể chọn một
chiếc vừa ý và nhanh chóng nhất.Do trong khuôn khổ giới hạn của luận văn ,tuy trang
web có thể đáp ứng được các thành phần cơ bản cho một trang web bán hàng nhưng vẫn
còn rất nhiều thiếu sót và hạn chế.

Sau khi cài đặt chúng em nhận thấy rằng với cách tiếp cận này trang web sẽ đảm bảo
được về mặt thời gian.Thế nhưng kết quả trả về có thể khác nhau qua các lần chạy (vì đôi
khi miền tối ưu Pareto có nhiều lời giải). Tuy nhiên một điểm mạnh của phương pháp này
so với các phương pháp tìm kiếm thông thường đó là luôn cho ra kết quả (tối ưu hoặc gần
tối ưu) chứ không phải đưa ra một câu thông báo đáng buồn cho người mua lẫn kẻ bán
“Không thể tìm thấy sản phẩm thích hợp”.

60
7.2 Hướng phát triển

Hoà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, hoàn thiện chức năng thanh toá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...

61
Phụ lục A Bài toá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 toà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
toá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 toá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 toán “Tối ưu hóa đa mục tiêu”

Việc giải quyết bài toá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
toán tối ưu một mục tiêu. Trong bài toán một mục tiêu để giải quyết bài toá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 toá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.

62
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 toá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 toá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).

63
A.4 Miền tối ưu Pareto

A.4.1 Giới thiệu

Trong bài toá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

f2

Mieàn
A
khaû thi

C1

f1

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

64
toá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 toá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 toán di truyền vào bài toá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 toán tối ưu đa mục tiêu.

Chúng ta biết rằng thuật toá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 toá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 toá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 toá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 toá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.

Khi đó vấn đề của chúng ta sẽ được chuyển thành dạng:

65
k
min ∑ wi f i ( x)
i =1

hoặc

min ∑ wi f i ( 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

∑w
i =1
i =1

Và ci* là một hằng số với ci* = 1 f i * và f i * 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 toá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à:
k
min ∑ | f i ( x) − Ti |, x ∈ F
i =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

66
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 toá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 toá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 toán di truyền để giải
quyết một bài toá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 toán như lai ghép, đột biến.

Mặc dù độ phức tạp khi cài đặt thuật toá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 toán di truyền để giải quyết bài toán tối ưu đa
mục tiêu đang được ngày càng quan tâm và phát triển.

67
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 toá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 toá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.

68
B.4 Chọn lọc tự nhiên

Sau khi tính toá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 toá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 toá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 toá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ư:

69
• Đạ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.

70
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/

[5] Gorry,G.A, Scott Morton, A framework for Management Information Systems ,


Sloan Management Review, Vol 13, No 1, (1971).

[6] Efraim Turban và Jay E Aronson, Decision Support Systems and Intelligent Systems

[7] Management Information Systems for the Information Age

[8] Susan Sproule và Norm Archer, Knowledgeable Agents For Search And Choice
Support In E-Commerce: A Decision Support Systems Approach,
http://www.csulb.edu/web/journals/jecr/issues/20004/paper4.pdf

[9] Bing Xu, Zhi-geng Pan và Hong-wei Yang, Agent-based Model for Intelligent
Shopping Assistant and its Application

http://www.vrsj.org/icat/ICAT2003/php/upload/134_camera_ceb49b6ee2a2612fc7c284e9
ccd13cce.pdf

[10] Filippo Menczer và các cộng sự, IntelliShopper: A Proactive, Personal, Private
Shopping Assistant.

http://www.informatics.indiana.edu/fil/Papers/intellishopper.pdf

[11] Nguyễn Đình Thúc, Trí tuệ nhân tạo : Lập trình tiến hóa, Nhà xuất bản giáo dục, Tp
HCM, 2001.

[12] Hoàng Kiếm và Nguyễn Đình Thúc, Về sự hội tụ của hồi quy di truyền, Hội nghị
khoa học trường ĐHKHTN lần 2 , 2000.

[13] Bùi Thế Tâm và Trần Vũ Thiên, Các phương pháp tối ưu hóa , NXB Giao thông Vận
tải, 1998.

71
[14] Carlos A Coello, A comprehensive survey of evolutionary-based multiobjective
optimization techniques, http://www.lania.mx/~ccoello

[15] Carlos M Fonseca và Peter J Fleming, Genetic Algorithms for multiobjective


optimization: Formulation, Discussion and Generalizations

[16] Barry G. Silverman, Mintu Bachann, Khaled Al-Akharas (Dept. of Systems


Engineering, University of Pennsylvania),Implications of Buyer Decision Theory for
Design of eCommerce Websites,2001,pp.24.

[17] J. Ben Schafer, Joseph A. Konstan, John Riedl(Department of Computer Science and
Engineering University of Minnesota),E-Commerce Recommendation Applications,2004.

[18] Jochen Hansen, How new and different are consumer in the digital marketplace?,
The Impact of Networking,Vienna Austria,tháng 9 năm 2000.

72

You might also like