B ng 5.8 Các đ it ng th uc module th ut toán GA
4.5.6 Các ci ti nđ phù hp vi 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:
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 .
) (x fc ) (x fp c w p w Mi n t i u Pareto
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. ) (x fc ) (x fp Lo i gene t t nh t Gene t ng đ i t t Gene x u
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.
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 i c pi x f x f F 1 ) ( ) (
trong đó fpi(x) 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á).
) (x fc ) (x fp t bi n ) (x fc ) (x fp Gene b Gene m Gene con t t Gene con x u
) (x
fc
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:
) / 1 ( ) ( i i i i* pi x w p x x f = − − và ( ) (1 | |/ ) * c c p w x fc = c − c − trong đó wi là đ quan tr ng c a thu c tính i. i p
là giá tr mà ng i dùng mong đ i thu c tính i.
i x là giá tr c a thu c tính i * i x 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ó.
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.
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.
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
“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:
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.
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.
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.
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
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 xu t int 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
tho i
smallint 13 Screen Color Màn hình char(10)
14 Screen Resolution phân gi i c a màn hình char(10) 15 GPRS GPRS Bit
16 FM Nghe radio FM bit
17 Message Lo i tin nh n h tr nvarchar(50) 18 Camera Ch p hình nvarchar(50) 19 MP3 Nghe nh c MP3 bit