SlideShare a Scribd company logo
1 of 53
ĐẠI HỌC BÁCH KHOA HÀ NỘI
VIỆN CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG
──────── * ────────
ĐỒ ÁN
TỐT NGHIỆP ĐẠI HỌC
NGÀNH CÔNG NGHỆ THÔNG TIN
XÂY DỰNG THUẬT TOÁN PHÂN CÔNG
GIAO HÀNG CHO HỆ THỐNG CHỢ ĐIỆN
TỬ TRỰC TUYẾN MBAY
Sinh viên thực hiện: Nguyễn Văn Hạ
Lớp CNTT2-K55
Giáo viên hướng dẫn: ThS Vũ Đức Vượng
HÀ NỘI 5-2015
HUST SOICT Xây dựng thuật toán phân công giao việc cho hệ thống MBay ĐATN 2015
Sinh viên Nguyễn Văn Hạ SHSV: 20102648 Lớp: CNTT2-K55 Trang 2
PHIẾU GIAO NHIỆM VỤ ĐỒ ÁN TỐT NGHIỆP
1. Thông tin về sinh viên
Họ và tên sinh viên: Nguyễn Văn hạ
Điện thoại liên lạc: 0966706637 Email: nvhabk@gmail.com
Lớp: Công nghệ thông tin 2 Hệ đào tạo: Đại học chính quy
Đồ án tốt nghiệp được thực hiện tại: Đại học Bách Khoa Hà Nội.
Thời gian làm ĐATN: Từ ngày 01/02/2015 đến 25/05 /2015.
2. Mục đích nội dung của ĐATN
Mục đích nhóm: Xây dựng hệ thống chợ điện tử trực tuyến Mbay trên nền Mobile và Web
nhằm hỗ trợ một cách trực tiếp và hiệu quả cho các khách hàng, chủ cửa hàng và nhân viên
giao hàng trong công việc của họ.
Mục đích cá nhân: Xây dựng thuật toán gợi ý phân công giao việc tự động cho hệ thống
Mbay.
3. Các nhiệm vụ cụ thể của ĐATN
• Phân tích các chức năng của hệ thống, phân việc cho thành viên trong nhóm
• Thuật toán phân công giao hàng trực tuyến
• Tìm hiểu thuật toán đàn kiến, bài toán người du lịch, thuật toán tối ưu đàn kiến ACO
• Tạo ứng dụng tự động phân công giao hàng trực tuyến
4. Lời cam đoan của sinh viên:
Tôi – Nguyễn Văn Hạ - cam kết ĐATN là công trình nghiên cứu của bản thân tôi
dưới sự hướng dẫn của ThS Vũ Đức Vượng
Các kết quả nêu trong ĐATN là trung thực, không phải là sao chép toàn văn của bất kỳ công
trình nào khác.
Hà Nội, Ngày 08 tháng 03 năm 2015
Tác giả ĐATN
Nguyễn Văn Hạ
5. Xác nhận của giáo viên hướng dẫn về mức độ hoàn thành của ĐATN và cho phép bảo vệ:
Hà Nội, Ngày 20 tháng 05 năm 2015
Giáo viên hướng dẫn
Vũ Đức Vượng
HUST SOICT Xây dựng thuật toán phân công giao việc cho hệ thống MBay ĐATN 2015
Sinh viên Nguyễn Văn Hạ SHSV: 20102648 Lớp: CNTT2-K55 Trang 3
TÓM TẮT ĐỒ ÁN
Đồ án tốt nghiệp có tên “XÂY DỰNG THUẬT TOÁN PHÂN CÔNG GIAO HÀNG
CHO HỆ THỐNG CHỢ ĐIỆN TỬ TRỰC TUYẾN MBAY”. Đây là một ứng dụng phục vụ
hoạt động thương mại điện tử chạy trên Web và mobile, cho phép người tiêu dùng dễ tìm
kiếm các sản phẩm giá rẻ gần nơi họ sinh sống, so sánh được giá cả trên thị trường, tìm hiểu
thông tin sản phẩm, đặt mua. Giúp doanh nghiệp, cửa hàng giới thiệu các sản phẩm tới người
tiêu dùng, và phân công giao hàng, thống kê về tài chính. Giúp người giao hàng tìm được lộ
trình đường đi một cách tội ưu nhất nhằm giảm chi phí, tối ưu hóa lợi nhuận. Ứng dụng là
một phần trong cơ sở hạ tầng cần xây dựng để đáp ứng được hoạt động thương mại điện tử
đang ngày một khởi sắc tại Việt Nam.
Đồ án đã đi sâu vào khảo sát sự phát triển của thương mại điện tử, sự phát triển của
smartphone, các mối quan hệ giữa chúng cũng như hiện trạng các giải pháp để thoả mãn các
nhu cầu về thương mại điện tử. Từ những điểm mạnh và điểm hạn chế được rút ra, ứng dụng
được triển khai phù hợp với hiện trạng thương mại điện tử nước nhà.
Bên cạnh việc nghiên cứu các vấn đề và giải pháp, trong khuôn khổ đồ án cũng nói
chi tiết viêc thiết kế và cài đặt một ứng dụng hỗ trợ việc bán hàng trực tuyến Mbay định
hướng theo giải pháp được nêu ra. Một số ý tưởng và yêu cầu cơ bản đã được triển khai
thành công trong ứng dụng.
Cuối cùng đồ án đi vào đánh giá lại ứng dụng đã triển khai, để thấy được điểm tốt và
điểm chưa tốt cũng như vạch ra các nhiệm vụ và phương hướng phát triển trong tương lai để
triển khai hoàn thiện hệ thống trên môi trường thực tế.
HUST SOICT Xây dựng thuật toán phân công giao việc cho hệ thống MBay ĐATN 2015
Sinh viên Nguyễn Văn Hạ SHSV: 20102648 Lớp: CNTT2-K55 Trang 4
ABSTRACT
Thesis titled "DEVELOPE A DELIVERY ALGORITHM FOR DELIVERY
SYSTEMS ELECTRONICS FAIR ONLINE MBAY" This is an application fỏr service e-
commerce activities on the Web and mobile run, lets consumers easily search for cheap
products near where they live, comparable market prices, inquire product, bid. Helping
businesses, showrooms and products to consumers, and assign delivery, financial statistics.
Helping people find the route of delivery an optimal way in order to reduce costs and
optimize profitability. The application is part of the infrastructure should be developed to
meet the e-commerce activities are increasingly flourishing in Vietnam.
Development of the survey went deep into the development of e-commerce, the
development of smartphones, the relationship between them and the current state of solutions
to meet the needs of e-commerce. From the strengths and weaknesses are drawn, the
application is implemented consistent with the current state of the country's e-commerce.
Besides studying the problem and the solution, in the framework detailed blueprint
also said the design and install an application that supports online sales solution oriented
Mbay yet. Some ideas and basic requirements were successfully implemented in the
application.
Finally blueprints go on revaluation of deployed applications, to see the good points
and the location was not good, as well as outlining the mission and direction of development
in the future to improve the system deployed on environment International.
HUST SOICT Xây dựng thuật toán phân công giao việc cho hệ thống MBay ĐATN 2015
Sinh viên Nguyễn Văn Hạ SHSV: 20102648 Lớp: CNTT2-K55 Trang 5
LỜI CẢM ƠN
Để có thểhoàn thànhđồ án tốt nghiệpđềtài “XÂY DỰNG HỆ THỐNG CHỢ
ĐIỆN TỬ TRỰC TUYẾN MBAY – XÂY DỰNG ỨNG DỤNG CHO KHÁCH
HÀNG TRÊN MOBILE Phần phân công giao hàng”, ngoài sự nỗ lực của bản thân
còn có sự giúp đỡ của rất nhiều thầy cô, bạn bè và gia đình.
Em xin gửi lời cảm ơn chân thànhđến Th.s Vũ Đức Vượng, giảng viên Bộ môn
Kỹ Thuật phần mềm, Viện công nghệ thông tin người đã tận tình hướng dẫn, chỉ bảo
em trong suốt quá trình làm đồ án.
Em cũng xin chân thành cảm ơn các thầy cô giáo trong trường Đại học Bách
Khoa các thầy cô trong Bộ môn Viện CNTT & Truyền thông nói riêng đã dạy dỗ cho
em kiến thức về các môn đại cương cũng như các môn chuyên ngành, giúp em có
được cơ sở lý thuyết vững vàng và tạo điều kiện giúp đỡ em trong suốt quá trình học
tập.
Cuối cùng, em xin chân thành cảm ơn gia đình và bạn bè, đã luôn tạo điều
kiện, quan tâm, giúp đỡ, động viên em trong suốt quá trình học tập và hoàn thành đồ
án tốt nghiệp.
Hà Nội, tháng 5 năm 2015
Sinh viên
Nguyễn Văn Hạ
HUST SOICT Xây dựng thuật toán phân công giao việc cho hệ thống MBay ĐATN 2015
Sinh viên Nguyễn Văn Hạ SHSV: 20102648 Lớp: CNTT2-K55 Trang 6
MỤC LỤC
PHIẾU GIAO NHIỆM VỤ ĐỒ ÁN TỐT NGHIỆP ..................................................2
TÓM TẮT ĐỒ ÁN ............................................................................................................3
MỤC LỤC ...........................................................................................................................6
DANH MỤC HÌNH ẢNH ................................................................................................8
DANH MỤC BẢNG..........................................................................................................9
DANH MỤC CÁC TỪ VIẾT TẮT............................................................................. 10
MỞ ĐẦU........................................................................................................................... 11
PHẦN 1: ĐẶT VẤN ĐỀ VÀ ĐỊNH HƯỚNG GIẢI PHÁP .................................. 12
Chương 1: Tổng quan về đề tài ................................................................................... 12
1.1 Đặt vấn đề............................................................................................................... 12
1.2 Mục đích của đồ án .............................................................................................. 13
1.3 Phương pháp tiếp cận và hướng giải quyết:.................................................... 14
1.4 Công cụ hỗ trợ....................................................................................................... 16
1.4.1 MySQL............................................................................................................ 16
1.4.2 Apache PHP .................................................................................................... 16
1.4.3 Windows Server 2008 ................................................................................... 17
Chương 2: Thuật toán tối ưu hoá đàn kiến ACO ................................................... 19
2.1 Đàn kiến tự nhiên ................................................................................................. 19
2.2 Đàn kiến nhân tạo ................................................................................................ 20
2.2.1 Phương pháp tìm đường đi mô phỏng hành vi con kiến........................... 20
2.2.2 Quy tắc cập nhật mùi và bay hơi.................................................................. 21
Chương 3: Phương pháp ACO giải bài toán người giao hàng ............................. 23
3.1 Bài toán người giao hàng và đồ thị có cấu trúc .............................................. 23
3.2 Các thuật toán ACO cho bài toán TSP ............................................................. 24
3.3 Số lượng kiến......................................................................................................... 25
3.4 Nhận xét chung về các thuật toán ACO ........................................................... 26
Chương 4: Thuật toán phân công giao hàng ............................................................ 27
4.1 Thuật toán phân công giao hàng cho 1 cửa hàng .......................................... 27
4.2 Phương pháp sắp xếp đơn hàng gần nhau ...................................................... 27
4.3 Phương pháp topsis để sắp xếp thứ tự ưu tiên các nhân viên ...................... 28
Chương 5: Ứng dụng giao hàng tự động và sắp xếp lộ trình giao hàng ............ 31
5.1 Phân công công việc............................................................................................. 31
HUST SOICT Xây dựng thuật toán phân công giao việc cho hệ thống MBay ĐATN 2015
Sinh viên Nguyễn Văn Hạ SHSV: 20102648 Lớp: CNTT2-K55 Trang 7
5.2 Thiết kế tổng quan ................................................................................................ 31
5.2.1 Khung nhìn usecase ....................................................................................... 31
5.2.2 Khung nhìn Logic .......................................................................................... 34
5.2.3 Khung nhìn vật lý........................................................................................... 34
5.3 Thiết kế chi tiết...................................................................................................... 34
5.4 Thiết kế cơ sở dữ liệu ........................................................................................... 42
Chương 6: Đánh giá kết quả, ưu nhược điểm, khả năng ứng dụng.................... 48
6.1 Kết quả đạt được ................................................................................................... 48
6.2 Đánh giá kết quả................................................................................................... 50
KẾT LUẬN ...................................................................................................................... 52
Tổng kết............................................................................................................................ 52
Hướng phát triển của đồ án ......................................................................................... 52
TÀI LIỆU THAM KHẢO ............................................................................................ 53
HUST SOICT Xây dựng thuật toán phân công giao việc cho hệ thống MBay ĐATN 2015
Sinh viên Nguyễn Văn Hạ SHSV: 20102648 Lớp: CNTT2-K55 Trang 8
DANH MỤC HÌNH ẢNH
Hình 2 - 1: Hành vi của đàn kiến khi gặp vật cản trong thực tế ................................. 19
Hình 4 - 1: Sử dụng kĩ thuật chia để trị trong phân công giao hàng .......................... 28
Hình 5 - 1: Tác nhân của hệ thống ................................................................................. 31
Hình 5 - 2: Biểu đồ usecase Phân công giao hàng tự động......................................... 33
Hình 5 - 3: Mô hình tương tác chung của hệ thống...................................................... 34
Hình 5 - 4: Khung nhìn vật lý khi triển khai hệ thống................................................. 34
Hình 5 - 5: Biểu đồ hoạt động Phân công thật các đơn hàng cho các nhân viên...... 37
Hình 5 - 6: Biểu đồ hoạt động chức năng phân đơn hàng cho nhân viên.................. 38
Hình 5 – 7: Biểu đồ trình tự Phân công giao hàng tạm thời........................................ 39
Hình 5 – 8 Biểu đồ trình tự Phân công giao hàng thật cho nhân viên ....................... 39
Hình 5 - 8: Package Diagram.......................................................................................... 40
Hình 5 – 9: Biểu đồ lớp chi tiết chức năng phân công giao hàng tự động................ 41
Hình 5 - 10: Các bảng trong cơ sở dữ liệu .................................................................... 42
Hình 5 – 11: Khởi chạy mBay.jar từ Windows ............................................................ 49
Hình 5 – 12: Chu trình giao hàng tối ưu cho nhân viên............................................... 50
HUST SOICT Xây dựng thuật toán phân công giao việc cho hệ thống MBay ĐATN 2015
Sinh viên Nguyễn Văn Hạ SHSV: 20102648 Lớp: CNTT2-K55 Trang 9
DANH MỤC BẢNG
Bảng 3 – 1: Một số thuật toán ACO theo thứ tự thời gian phát triển......................... 25
Bảng 5 – 1: Phân công nhiệm vụ từng thành viên trong nhóm. ................................. 31
Bảng 5 – 2: Usecase phân công giao hàng .................................................................... 35
Bảng 5 – 3: U001. Phân công tạm thời các đơn hàng cho các nhân viên. ................ 36
Bảng 5 – 4: U002. Phân công thật các đơn hàng cho các nhân viên. ........................ 36
HUST SOICT Xây dựng thuật toán phân công giao việc cho hệ thống MBay ĐATN 2015
Sinh viên Nguyễn Văn Hạ SHSV: 20102648 Lớp: CNTT2-K55 Trang 10
DANH MỤC CÁC TỪ VIẾT TẮT
Thuật ngữ Tên đầy đủ Liên kết ngoài
ACO Ant Colony Optimization
http://citeseerx.ist.psu.edu/viewdoc
/download?doi=10.1.1.70.1052&re
p=rep1&type=pdf
AS Ant System
http://en.wikipedia.org/wiki/Ant_c
olony_optimization_algorithms
ACS Ant Colony System
http://en.wikipedia.org/wiki/Ant_c
olony_optimization_algorithms
TSP
Travelling Salesman
Problem
http://en.wikipedia.org/wiki/Travel
ling_salesman_problem
S-ACO
Simple Ant Colony
Optimization
http://en.wikipedia.org/wiki/Ant_c
olony_optimization_algorithms
TUTH Tối ưu tổ hợp
TOPSIS
The Technique for Order of
Preference by Similarity to
Ideal Solution
http://en.wikipedia.org/wiki/TOPSI
S
HUST SOICT Xây dựng thuật toán phân công giao việc cho hệ thống MBay ĐATN 2015
Sinh viên Nguyễn Văn Hạ SHSV: 20102648 Lớp: CNTT2-K55 Trang 11
MỞ ĐẦU
Trong vòng 3 tháng thực hiên, đồ án có nhiệm vụ xây dựng thuật toán phân
công giao việc cho hệ thống Mbay. Sau đó đi vào xây dựng một sản phẩm theo định
hướng giải pháp được đưa ra.
Đồ án gồm 2 phần lớn được chia cụ thể như sau:
Phần 1 – Đặt vấn đề và định hướng giải pháp: Phần này đi vào phân tích các vấn
đề, hiện trạng giải quyết cũng như các điểm hạn chế của các giải pháp này, từ đó đề
xuất giải pháp mới. Phần 1 bao gồm các chương lớn:
Chương 1: Tổng quan về đề tài
Chương 2: Thuật toán tối ưu hóa đàn kiến ACO
Chương 3: Phương pháp ACO giải bài toán người giao hàng
Phần 2 – Các kết quả đạt được: Phần này trình bày cụ thể kết quả của đồ án bao
gồm phân tích thiết kế chi tiết cũng như cài đặt và triển khai một thuật toán phân công
giao việc cho hệ thống Mbay đồng thời thử nghiệm và đánh giá thuật toán. Phần này
bao gồm các chương lớn.
Chương 4: Thuật toán phân công giao hàng
Chương 5: Ứng dụng phân công giao hàng tự động và sắp xếp lộ trình giao hàng
Chương 6: Đánh giá kết quả, ưu nhược điểm, khả năng ứng dụng
HUST SOICT Xây dựng thuật toán phân công giao việc cho hệ thống MBay ĐATN 2015
Sinh viên Nguyễn Văn Hạ SHSV: 20102648 Lớp: CNTT2-K55 Trang 12
PHẦN 1: ĐẶT VẤN ĐỀ VÀ ĐỊNH HƯỚNG GIẢI PHÁP
Chương 1: Tổng quan về đề tài
1.1 Đặt vấn đề
Internet phát triển mạnh mẽ sẽ là động lực để thúc đẩy sự tăng trưởng buôn
bán trên phạm vi toàn cầu. Thương mại điện tử đã đem lại cho các doanh nghiệp một
nguồn lợi nhuận khổng lồ. Những ứng dụng về thương mại điện tử cũng ra đời trên 2
nền tảng Web và mobile như Amazon (Mỹ), Alibaba (Trung Quốc) rất thành công và
thu được rất nhiều lợi nhuận. Ở Việt Nam có 1 số ứng dụng như Foody, Vật giá,
Lazada giới thiệu về các mặt hàng điện từ, đồ ăn, quần áo... Mang lại sự tiện lợi cho
người dùng.
Sự phát triển của các điện thoại thông minh, các nhà sản xuất đã tập trung vào
phân khúc giá rẻ, chỉ với tầm 2 triệu đồng thì đã có thể sở hữu một chiếc điện thoại
Android, Windows phone giá rẻ, màn hình lớn, đủ để trải nghiệm và cài đặt các ứng
dụng cần thiết. Một trong những ứng dụng không thể thiếu trên điện thoại là bản đồ,
mạng xã hội, ứng dụng nhắn tin miễn phí, ứng dụng tìm kiếm địa điểm, mua sắm...
Sự phát triển mạnh mẽ của ngành thương mại điện tử và thiết bị điện tử đã mở
ra nhiều cách quảng bá sản phẩm. Một cửa hàng có thể có nhiều phương pháp quảng
bá sản phẩm của mình như đăng báo, phát tờ rơi, tạo một trang web giới thiệu sản
phẩm. Nhưng trong tiềm lực kinh tế hạn chế các cửa hàng nhỏ khó có thể duy trì một
trang bán hàng trực tuyến, tốn tiền trong việc xây dựng và vận hành một Website và
chi phí quảng cáo sản phẩm tới người tiêu dùng. Để giảm chi phí trên và quảng bá tốt
các sản phẩm tới người tiêu dùng, Họ cần một ứng dụng dễ tương tác, có các chức
năng cần thiết: giới thiệu sản phẩm, nhận các đơn hàng, phân công giao hàng, chỉ
đường đi ... Ứng dụng đó cần dễ sử dụng giúp tăng doanh số bán hàng, tăng lợi nhuận
và phải bỏ một chi phí rất nhỏ.
Nhu cầu mua sắm con người càng ngày càng tăng, Họ không có thời gian nhiều
để đến tận nơi mua hàng, Họ muốn được đặt hàng và sau 1 khoảng thời gian thì sản
phẩm đã có trong tay họ. Cùng 1 sản phẩm cùng nhà sản xuất, người tiêu dùng muốn
biết được sản phẩm nào giá rẻ nhất, sản phẩm nào đang được khuyến mãi để mua
sắm.
Từ những nhu cầu của các cửa hàng và người tiêu dùng. Cần xây dựng được
một hệ thống đáp ứng được các yêu cầu trên. Để thu hút được đối tượng người sử
dụng trên hệ thống cần phải có các chức năng mang lại lợi ích thiết thực cho họ.
HUST SOICT Xây dựng thuật toán phân công giao việc cho hệ thống MBay ĐATN 2015
Sinh viên Nguyễn Văn Hạ SHSV: 20102648 Lớp: CNTT2-K55 Trang 13
Từ những lý do trên, cùng với việc tham khảo chức năng của các ứng dụng về
mua sắm trước nhóm đề xuất xây dựng “hệ thống bán hàng trực tuyến Mbay” nhằm
mục đích tạo ra một sản phẩm giúp đem lại lợi ích cho cả người sử dụng, các chủ cửa
hàng và nhân viên để từ đó thu hút được ngày càng nhiều người sử dụng hệ thống.
Với mục tiêu thu hút hai đối tượng người sử dụng trên hệ thống sẽ cần có các
chức năng sau để thỏa mãn các nhu cầu của người sử dụng:
Đối với khách hàng:
- Chức năng hiển thị các thông tin của cửa hàng bao gồm các thông tin về địa
chỉ, liên hệ, thực đơn, sản phẩm, giá… của cửa hàng nhằm giúp khách hàng
lựa chọn cửa hàng phù hợp với mình nhất.
Đối với chủ cửa hàng hệ thống sẽ xây dựng hẳn một chương trình quản lý cho chủ
cửa hàng để củ cửa hàng có thể quản lý cửa hàng của mình được dễ dàng hơn:
- Chức năng quản lý thông tin cửa hàng nhằm giúp chủ cửa hàng quản lý thông
tin cửa hàng của mình.
- Chức năng quản lý bài viết giúp chủ cửa hàng tạo các bài viết đưa lên cửa hàng
của mình nhằm các mục đích, thông báo hay quảng cáo.
- Chức năng quản lý sản phẩm bao gồm quản lý thông tin, giá cả sản phẩm…
giúp chủ cửa hàng quản lý được các sản phẩm của cửa hàng và quảng cáo các
sản phẩm đến người dùng.
- Các chức năng quản lý đơn hàng bao gồm: quản lý nhân viên giao hàng, quản
lý đơn hàng, phân công giao hàng nhằm trợ giúp chủ cửa hàng dễ dàng hơn
trong việc quản lý đơn và phân công giao hàng.
- Chức năng thống kê
Đối với nhân viên giao hàng hệ thống sẽ trợ giúp việc quản lý các đơn hàng
cần giao, xây dựng lộ trình giao hàng, giúp cho người giao hàng có thể giao hàng một
cách thuận lợi, xem doanh thu hàng tháng
Với mục tiêu tiếp cận dễ dàng đến người sử dụng nhóm hướng đến xây dựng
hệ thống trên nền tảng web, mobile, là hai nền tảng được sử dụng thông dụng nhất ở
thời điểm hiện tại. Toàn bộ phần này xin đọc ở phần tiếp theo.
1.2 Mục đích của đồ án
Phần việc cực kì quan trọng của hệ thống liên quan đến toàn bộ hoạt động, ảnh
hưởng tới phân bổ nhân lực, phân bổ tài nguyên, chính sách giá, đặc tính chất lượng
của hệ thống giao hàng đó chính là hoạt động phân công giao hàng cho từng nhân
viên giao hàng.
HUST SOICT Xây dựng thuật toán phân công giao việc cho hệ thống MBay ĐATN 2015
Sinh viên Nguyễn Văn Hạ SHSV: 20102648 Lớp: CNTT2-K55 Trang 14
Phân công giao hàng hợp lý mang lại nhiêu lợi ích:
- Thời gian: giảm thiểu thời gian giao hàng, đồng nghĩa với việc giao hàng cho
khách hàng đúng thời điểm cam kết, đảm bảo uy tín của hệ thống.
- Tài nguyên: tiếtkiệm chi phí nhiên liệu khi với cung đường ngắn, ít tắc và hợp
lý.
- Nhân lực: Giảm chi phí thuê nhân công với kế hoạch phân công tốt.
- Chính sách giá: mang lại lợi thế về giá so với các đối thủ cạnh tranh tương
đương với hệ thống Mbay.
Như vậy phân công giao hàng là một bài toán lớn, chịu sự chi phối của nhiều
yếu tố như số lượng đơn hàng, kích thước, số lượng hàng hoá tương ứng, vị trí giao
hàng so với các kho chứa hàng. Phân công giao hàng còn là cơ sở cho các hoạt động
hậu kinh doanh khác như tính lương cho nhân viên, tính chi phí vận chuyển.
Với tiềm năng của thị trường thương mại điện tử Việt Nam, bất kì hệ thống
nào cũng cần phải đối phó với số lượng đơn hàng cực lớn tại một thời điểm. Hoặc là
hàng vạn đơn hàng cho một ngày giao dịch. Như vậy việc phân công giao hàng bằng
tay (thủ công) sẽ không đáp ứng được nhu cầu cho một hệ thống lớn như vậy.
Tình hình thực tế yêu cầu cần phải có một phần hệ thống đảm nhiệm chức
năng phân công giao hàng. Trong đó lõi cơ bản nhất chính là một thuật toán phân
công giao hàng. Thuật toán này cần đáp ứng nhiều yêu cầu, trong đó đáp ứng được
số lượng lớn đơn hàng, xử lý với nhiều tham số.
Một yêu cầu khác chính là phân công số lượng lớn nhưng vẫn đảm bảo sự
chính xác và tin cậy. Tính chính xác được hiểu là không nhầm lẫn giữa các đơn hàng.
Tính tin cậy có nghĩa là các đơn hàng được phân công cho nhân viên sao cho tổng
quãng đường (tương ứng là thời gian) để giao đơn hàng đó là nhỏ nhất.
Việc nghiên cứu chi tiết thuật toán phân công giao hàng được nói rõ hơn trong
các phần tiếp theo của báo cáo này.
1.3 Phương pháp tiếp cận và hướng giải quyết:
Từ thực tế trên và thông qua tìm hiểu mô hình chợ thương mại trong thực tế,
nhóm chúng tôi quyết định đề xuất xây dựng một hệ thống chợ trực tuyến Mbay,
nhằm mục đích xây dựng một hệ thống chợ trực tuyến lớn theo mô hình chợ thương
mại trong thực tế, cho phép nhiều gian hàng với nhiều chủ cửa hàng hoạt động, sản
phẩm đa dạng, phục vụ mọi yêu cầu mua sắm của khách hàng với mức độ hài lòng
cao nhất.
Hệ thống sẽ được xây dựng với các thành phần sau:
HUST SOICT Xây dựng thuật toán phân công giao việc cho hệ thống MBay ĐATN 2015
Sinh viên Nguyễn Văn Hạ SHSV: 20102648 Lớp: CNTT2-K55 Trang 15
 Ứng dụng trên nền Web:
o Khách hàng:
 Ghé thăm các gian hàng
 Xem thông tin các gian hàng: Mặt hàng, thông tin sản phẩm
 Xem bản đồ tới các cửa hàng
 Đặt mua sản phẩm
o Chủ cửa hàng:
 Đăng ký mở gian hàng, hoặc quản lý các gian hàng vô chủ
 Thiết lập các thông tin gian hàng
 Quản lý danh sách nhân viên giao hàng
o Quản lý gian hàng:
 Phân công giao hàng cho nhân viên giao hàng
 Giao hàng cho nhân viên giao hàng
 Ghi nhận kết quả giao hàng
 Đánh giá nhân viên
 Theo dõi doanh thu của cửa hàng
 Cập nhật thông tin cho hàng hóa: Giá cả, khuyến mại, …
o Quản trị mbay
 Quản lý giao diện, tùy biến
 Cho phép đăng ký mở gian hàng, chuyển gian hàng sang trạng thái
hoạt động
 Quản lý các gian hàng
 Đăng quảng cáo
 Thống kê doanh số từ các cửa hàng
 Quản lý người dùng
 Ứng dụng trên nền Mobile:
o Ứng dụng cho khách hàng:
 Tìm kiếm các cửa hàng, sản phẩm
 Xem thông tin các cửa hàng, sản phẩm
 Đặt hàng
 Xác thực người dùng
o Ứng dụng cho người giao hàng:
 Nhận đơn hàng để giao
 Tìm đường đi tới khách hàng
 Bàn giao sản phẩm, xác nhận từ khách hàng, nhận tiền
 Nộp tiền thanh toán
Mục tiêu của hệ thống là xây dựng một “chợ điện tử trực tuyến”, hướng tới
người dùng phổ thông, vì vậy cả nhóm hướng tới xây dựng 2 ứng dụng trên nền Web
và mobile, là 2 nền tảng rất phổ biền hiện nay.
HUST SOICT Xây dựng thuật toán phân công giao việc cho hệ thống MBay ĐATN 2015
Sinh viên Nguyễn Văn Hạ SHSV: 20102648 Lớp: CNTT2-K55 Trang 16
Với nền tảng Web, hệ thống chú trọng xây dựng các chức năng quản lý cho
quản trị mbay và chủ cửa hàng, sử dụng framework PHP Symphony để xây dựng.
Với nền tảng Mobile, ứng dụng cho khách hàng sẽ chú trọng xây dựng các
chức năng Tìm kiếm, Đặt hàng, tương tác với sản phẩm; ứng dụng cho nhân viên giao
hàng tập trung vào việc lấy đơn hàng và tìm kiếm lộ trình trên bản đồ. Ứng dụng sẽ
chạy trên hệ điều hàng Android, là hệ điều hành phổ biến nhất và có số lượng người
sử dụng lớn nhất trên di động hiện nay.
Trên đây là phần đề xuất phương pháp tiếp cận và hướng giải quyết, tiếp theo
sẽ là phần giới thiệu về các công nghệ sử dụng. Do khuôn khổ của đồ án, phần công
nghệ sử dụng tôi sẽ trình bày các công nghệ đã được sử dụng để xây dựng nhiệm vụ
của mình.
Thành viên Nhiệm vụ
Bảo Xây dựng trang Web
Phương Ứng dụng android cho khách hàng
Khang Ứng dụng android cho người giao hàng
Hạ Thuật toán phân công giao hàng
1.4 Công cụ hỗ trợ
1.4.1 MySQL
MySQL là hệ quản trị cơ sở dữ liệu tự do nguồn mở phổ biến nhất thế giới và
được các nhà phát triểnrất ưa chuộng trong quá trình phát triểnứng dụng. Vì MySQL
là cơ sở dữ liệu tốc độ cao, ổn định và dễ sử dụng, có tính khả chuyển, hoạt động trên
nhiều hệ điều hành cung cấp một hệ thống lớn các hàm tiện ích rất mạnh.
Với tốc độ và tính bảo mật cao, MySQL rất thích hợp cho các ứng dụng có
truy cập CSDL trên internet. MySQL hoàn toàn miễn phí Nó có nhiều phiên bản cho
các hệ điều hành khác nhau: phiên bản Win32 cho các hệ điều hành dòng Windows,
Linux, Mac OS X, Unix, FreeBSD, NetBSD, Novell NetWare, SGI Irix, Solaris,
SunOS,...
MySQL là một trong những ví dụ rất cơ bản về Hệ Quản trị Cơ sở dữ liệuquan
hệ sử dụng Ngôn ngữ truy vấn có cấu trúc (SQL).
MySQL được sử dụng cho việc bổ trợ PHP, Perl, và nhiều ngôn ngữ khác, nó
làm nơi lưu trữ những thông tin trên các trang web viết bằng PHP hay Perl,...
1.4.2 Apache PHP
Apache là phần mềm máy chủ Web được dùng nhiều nhất hiện nay. Cùng
với PHP giúp cho Apache chạy được file .php. Một phần mở rộng quan trọng khác
HUST SOICT Xây dựng thuật toán phân công giao việc cho hệ thống MBay ĐATN 2015
Sinh viên Nguyễn Văn Hạ SHSV: 20102648 Lớp: CNTT2-K55 Trang 17
đó là cơ sở dữ liệu. Khi bạn phát triển một ứng dụng web bạn sẽ nhanh chóng thấy
rằng PHP và một Database là gần như không thể tách rời.
1.4.3 Windows Server 2008
HUST SOICT Xây dựng thuật toán phân công giao việc cho hệ thống MBay ĐATN 2015
Sinh viên Nguyễn Văn Hạ SHSV: 20102648 Lớp: CNTT2-K55 Trang 18
Microsoft Windows Server 2008 là thế hệ kế tiếp của hệ điều hành Windows
Server, có thể giúp các chuyên gia công nghệ thông tin có thể kiểm soát tối đa cơ sở
hạ tầng của họ và cung cấp khả năng quản lý và hiệu lực chưa từng có, là sản phẩm
hơn hẳn trong việc đảm bảo độ an toàn, khả năng tin cậy và môi trường máy chủ vững
chắc hơn các phiên bản trước đây.
Windows Server 2008 cung cấp những giá trị mới cho các tổ chức bằng việc
bảo đảm tất cả người dùng đều có thể có được những thành phần bổ sung từ các dịch
vụ từ mạng. Windows Server 2008 cũng cung cấp nhiều tính năng vượt trội bên trong
hệ điều hành và khả năng chuẩn đoán, cho phép các quản trị viên tăng được thời gian
hỗ trợ cho công việc của doanh nghiệp.
Windows Server 2008 xây dựng trên sự thành công và sức mạnh của hệ điều
hành đã có trước đó là Windows Server 2003 và những cách tân có trong bản Service
Pack 1 và Windows Server 2003 R2. Mặc dù vậy Windows Server 2008 hoàn toàn
hơn hẳn các hệ điều hành tiền nhiệm.
Windows Server 2008 được thiết kế để cung cấp cho các tổ chức có được nền
tảng sản xuất tốt nhất cho ứng dụng, mạng và các dịch vụ web từ nhóm làm việc đến
những trung tâm dữ liệu với tính năng động, tính năng mới có giá trị và những cải
thiện mạnh mẽ cho hệ điều hành cơ bản.
Thêm vào tính năng mới, Windows Server 2008 cung cấp nhiều cải thiệm tốt
hơn cho hệ điều hành cơ bản so với Windows Server 2003.
Những cải thiện có thể thấy được gồm có các vấn đề về mạng, các tính năng
bảo mật nâng cao, truy cập ứng dụng từ xa, quản lý role máy chủ tập trung, các công
cụ kiểm tra độ tin cậy và hiệu suất, nhóm chuyển đổi dự phòng, sự triển khai và hệ
thống file. Những cải thiện này và rất nhiều cải thiện khác sẽ giúp các tổ chức tối đa
được tính linh hoạt, khả năng sẵn có và kiểm soát được các máy chủ của họ
HUST SOICT Xây dựng thuật toán phân công giao việc cho hệ thống MBay ĐATN 2015
Sinh viên Nguyễn Văn Hạ SHSV: 20102648 Lớp: CNTT2-K55 Trang 19
Chương 2: Thuật toán tối ưu hoá đàn kiến ACO
2.1 Đàn kiến tự nhiên
Kiến là một loài có tổ chức cao, mỗi con kiến khi di chuyển sẽ để lại một vết
hoăc chất được gọi pheromone. Đặc điểm sinh hóa học của vết mùi là có khả năng ứ
đọng, bay hơi và là phương tiện để đánh dấu và để đàn kiến trao đổi thông tin khi tìm
kiếm thức ăn. Khi đi tìm kiếm thức ăn, sau khi tìm thấy nguồn thức ăn, thì mỗi con
kiến sẽ tìm ra đường đi của nó để đi từ tổ tới nguồn thức ăn. Chúng sẽ giao tiếp trao
đổi thông tin với nhau, sau một thời gian cả đàn kiến gần như tìm ra và đi theo con
đường ngắn nhất từ tổ kiến tới nguồn thức ăn.
Cách tìm đường đi của kiến thực được minh họa ở hình 2.2 với ví dụ sau: Các
con kiến đang đi trên một con đường thẳng từ tổ kiến A đến nguồn thức ăn E. Một
lúc sau, đột nhiên có một chướng ngại vật cản trên đường đi, lúc này đường đi từ A
đến E bị chia làm 2 hướng. Vậy các con kiến sẽ đi theo hướng nào? Kết quả là đàn
kiến sẽ chọn nhánh ngắn nhất.
Hình 2 - 1: Hành vi của đàn kiến khi gặp vật cản trong thực tế
HUST SOICT Xây dựng thuật toán phân công giao việc cho hệ thống MBay ĐATN 2015
Sinh viên Nguyễn Văn Hạ SHSV: 20102648 Lớp: CNTT2-K55 Trang 20
2.2 Đàn kiến nhân tạo
Để mô mô phỏng kiến tự nhiên, người ta dùng tác tử (multiagent) làm đàn kiến
nhân tạo, trong đó mỗi con kiến có nhiều khả năng hơn kiến tự nhiên. Mỗi con kiến
nhân tạo sẽ có bộ nhớ riêng, có khả năng ghi nhớ các đỉnh đã thăm trong hành trình
và tính được độ dài đường đi nó chọn, Ngoài ra các con kiến có thể trao đổi thông tin
được với nhau, thực hiện tính toán cần thiết, cập nhật mùi,...
Nhờ các con kiến nhân tạo này Dorigo (1991) đã xây dựng hệ kiến (AS) giải
bài toán người chào hàng, hiệu quả của nó so với các phương pháp mô phỏng tự nhiên
như SA, GA đã được kiểm chứng bằng thực nghiệm và được phát triển, ứng dụng
phong phú với tên gọi chung là phương pháp ACO
2.2.1 Phương pháp tìm đường đi mô phỏng hành vi con kiến
Các con kiến sẽ tiến hành tìm đường đi từ đỉnh xuất phát qua một loạt các đỉnh và
quay trở về đỉnh ban đầu, tại đỉnh i một con kiến sẽ chọn đỉnh j chưa được đi qua
trong tập láng giềng của i theo xác suất sau :
(S )
*
(c | s )
*
p
ij
ij ijp
ij
ij ij
c N
p
 
 
 
 



trong đó
-Sp :là hành trình thứ p
- N : là tập các đỉnh láng giềng của i chưa được con kiến hiện tại đi qua.
- cij : hành trình từ đỉnh i tới đỉnh j
- p : tỉ lệ
- ij : lượng pheromone trên cij
HUST SOICT Xây dựng thuật toán phân công giao việc cho hệ thống MBay ĐATN 2015
Sinh viên Nguyễn Văn Hạ SHSV: 20102648 Lớp: CNTT2-K55 Trang 21
- ij : hệ số heuristic, thường được gán
ij
ij
Q
d
  , trong đó dij là chi phí giữa i
và j , Q là một hằng số nào đó, giúp đánh giá chính xác hơn sự lựa chọn của con kiến
khi quyết định đi từ đỉnh u qua đỉnh v
- α, β : là hai tham số đưa vào, 𝞪 đặc trưng cho mức độ ảnh hưởng của vết mùi và 𝞫
đặc trưng cho mức độ ảnh hưởng của thông tin heuristics của bài toán
Ta có thể hiểu công thức trên đơn giản như sau: quyết định lựa chọn đỉnh tiếp
theo để đi của con kiến được lựa chọn ngẫu nhiên theo xác suất (tức là đỉnh nào có
xác suất cao hơn sẽ có khả năng được chọn cao hơn, nhưng không có nghĩa là các
đỉnh có xác suất thấp hơn không được chọn mà nó được chọn với cơ hội thấp hơn mà
thôi). Và xác suất này (hay khả năng chọn đỉnh tiếp theo của con kiến) tỷ lệ thuận với
nồng độ vết mùi trên cạnh được chọn (theo đặc tính của con kiến tự nhiên) và tỷ lệ
nghịch với độ dài cạnh, là những hệ số điểu khiển việc lựa chọn của con kiến nghiêng
về phía nào.
2.2.2 Quy tắc cập nhật mùi và bay hơi
Sau khi và trong quá trình các con kiến tìm đường đi các vết mùi ( ) được cập
nhật lại, vì chúng bị biến đổi do quá trình bay hơi và do quá trình tích lũy của các con
kiến trên cạnh đó. Có rất nhiều cách cập nhật mùi, mỗi cách có ảnh hưởn nhất định
đến chất lượng của thuật toán. Đây là 1 phương pháp cập nhật mùi đơn giản.
Sau mỗi vòng lặp (các con kiến đều tìm được hành trình riêng của mình), vết
mùi trên mỗi cạnh được cập nhật lại theo công thức sau :
ijij ij  
trong đó   (0,1) gọi là tham số bay hơi (sở dĩ gọi như vậy vì sau mỗi lần cập nhật
lượng mùi trên cạnh (i,j) sẽ mất đi một lượng . Ngoài lượng bay hơi mất đi đó mỗi
cạnh (i, j) còn được tích tụ thêm một lượng mùi nhất định tùy thuộc vào từng con
kiến đi qua, cụ thể được tính như sau :
ij ij +
k
Q
L
  
trong đó :Q là một hằng số,Lk là độ dài hành trình của con kiến thứ k.
Nhờ việc cập nhật mùi này, sau mỗi vòng lặp (hay sau mỗi lần các con kiến đi
hết hành trình), nồng độ vết mùi trên các cạnh sẽ thay đổi (hoặc giảm hoặc tăng dần)
HUST SOICT Xây dựng thuật toán phân công giao việc cho hệ thống MBay ĐATN 2015
Sinh viên Nguyễn Văn Hạ SHSV: 20102648 Lớp: CNTT2-K55 Trang 22
ảnh hưởng đến quyết định chọn của các con kiến, có thể ở bước lặp này chọn một
cạnh để đi nhưng đến bước lặp khác vẫn con kiến đó lại không đi qua cạnh đó nữa.
Nhờ vậy thuật toán có khả năng tìm được lời giải tốt trong những trường hợp dữ liệu
cực lớn.
HUST SOICT Xây dựng thuật toán phân công giao việc cho hệ thống MBay ĐATN 2015
Sinh viên Nguyễn Văn Hạ SHSV: 20102648 Lớp: CNTT2-K55 Trang 23
Chương 3: Phương pháp ACO giải bài toán người giao hàng
3.1 Bài toán người giao hàng và đồ thị có cấu trúc
Bài toán người giao hàng là một bài toán thuộc loại bài toán du lịch
(Travelling Salesman problem (TSP)). Đây là một bài toán khá nổi tiếng trong lĩnh
vực tối ưu tổ hợp được nghiên cứu trong lý thuyết khoa học máy tính. Nội dung của
nó khá đơn giản, nó được phát biểu như sau: Cho một danh sách các thành phố và
khoảng cách giữa chúng, nhiệm vụ là phải tìm đường đi ngắn nhất có thể mà chỉ thăm
mỗi thành phố đúng 1 lần.
Bài toán được lần đầu tiên đưa ra như một vấn đề toán học vào năm 1930 và
là một trong số những bài toán được nghiên cứu chuyên sâu trong lĩnh vực tổ hợp
thời đó. Nó được sử dụng như một sự đánh giá cho nhiều phương thức tối ưu khác
nhau. Thậm chí bài toán là thuộc lớp NP khó, một lượng rất lớn các heuristic và
phương thức tìm kiếm cụ thể đã được biết đến vì vậy một vài trường hợp của bài
toán với khoảng chục nghìn thành phố đã được giải quyết.
TSP có một vài ứng dụng thậm chí trong dạng thức nguyên thuỷ của nó như
lập kế hoạch, logistic, và sản xuất các microchip. Thay đổi đi chút ít nó xuất hiện như
một bài toán con trong rất nhiều lĩnh vực như việc phân tích gen trong sinh học. Trong
những ứng dụng này, khái niệm thành phố có thể thay đổi thành khách hàng, các điểm
hàn trên bảng mạch, các mảnh DNA trong gen, và khái niệm khoảng cách có thể biểu
diễn bởi thời gian du lịch hay giá thành, hay giống như sự so sánh giữa các mảnh
DNA với nhau. Trong nhiều ứng dụng, các hạn chế truyền thống như giới hạn tài
nguyên hay giới hạn thời gian thậm chí còn làm cho bài toán trở nên khó hơn.
TSP có thể được mô hình như một đồ thị, các đỉnh của đồ thị tương ứng với
các thành phố và các cạnh thì tương ứng với đường nối giữa các thành phố, chiều dài
của một cạnh tương ứng với khoang cách giữa 2 thành phố. Một đường đi trong bài
toán TSP là một chu trình Hamilton trên đồ thị và một lời giải tối ưu của bài toán là
chu trình Hamilton ngắn nhất.
Thường thì đồ thị là đồ thị đầy đủ, vì vậy mọi cặp cạnh đều được nối bởi các
cạnh. Đây là bước đơn giản hóa bài toán vì việc tìm chu trình Hamilton trong một đồ
thị đầy đủ là dễ. Các bài toán mà không phải 2 thành phố nào cũng được nối với nhau
có thể được chuyển đổi thành đồ thị đầy đủ bằng cách thêm những cạnh có độ dài lớn
giữa cách thành phố này, những cạnh sẽ không xuất hiện trong chu trình tối ưu.
Đồ thị có hướng 𝐺 = (𝑉, 𝐸) với tập đỉnh V = {1, 2, …, n} và tập các cung E.
Đồ thị có ma trận chi phí không âm không thỏa mãn tính chất bất đẳng thức tam giác
HUST SOICT Xây dựng thuật toán phân công giao việc cho hệ thống MBay ĐATN 2015
Sinh viên Nguyễn Văn Hạ SHSV: 20102648 Lớp: CNTT2-K55 Trang 24
C = {cij | i, j=1, 2, …, n}, với cij là khoảng cách giữa hai đỉnh i và j. Ta có, cij ≥ 0 nếu
có cung đi từ đỉnh i đến đỉnh j và cij = + ∞ nếu không có cung đi từ đỉnh i đến đỉnh j.
Mục tiêu của bài toán TSP là tìm một chu trình Hamilton có độ dài ngắn nhất,
do đó lời giải tối ưu của bài toán TSP là một hoán vị của tập n đỉnh {1,2,.., } (n )n N
sao cho hàm độ dài ( )f  nhỏ nhất, trong đó
1
( ) ( 1) ( ) (1)
1
( )
n
i i n
i
f d d   



 
Trong tất cả các thuật toán ACO giải bài toán TSP, vết mùi được gán trên các
cạnh và do đó ijd dùng để chỉ thông tin học tăng cường phục vụ mở rộng tuần tự lời
giải từ i đến j . Thông tin heuristic trên cạnh ( , )i j sẽ kí hiệu là ij và là nghịch đảo
độ dài cạnh ij
ij
1
d
  .
Khi đó, đồ thị cấu trúc của bài toán là đồ thị đầy đủ ( , , )G V E H . Nếu
0 ,...,k nx u u  là đường đi mở rộng được, tức là các đỉnh iu là khác nhau và k n
thì ( )k ukJ x N là các đỉnh mà đường kx chưa đi đến. Các thuật toán ACO cho bài toán
TSP đều được thực hiện trên đồ thị cấu trúc này.
3.2 Các thuật toán ACO cho bài toán TSP
Thuật toán ACO có thể áp dụng trực tiếp cho bài toán TSP với đồ thị cấu trúc
 , ,G V E H có không gian tìm kiếm chính là tập hợp các hành trình cụ thể. Ràng
buộc  sẽ được thoả mã khi hành trình do kiến xây dựng là một hành trình đúng (chu
trình Hamilton), biểu diễn mộ hoán vị các chỉ số của các thành phố.
Quá trình kiến xây dựng lời giải theo thủ tục bước ngẫu nhiên được thực hiện
như sau:
1. Lựa chọn thành phố xuất phát (có thể dựa theo một số tiêu chí nào đó)
2. Thực hiện lặp bước mở rộng bằng cách thêm một thành phố kiến chưa đi qua
cho đến khi tất cả thành phố đều được thăm. Tính xác suất lựa chọn đỉnh mới
theo giá trị thông tin mùi và thông tin heuristic, chọn ngẫu nhiên đỉnh mới
thêm vào theo phân bố xác suất ngẫu nhiên này.
3. Quay trở lại thành phố xuất phát
Sau khi tất cả kiến xây dựng xong hành trình, các con kiến sẽ để lại vết mùi
trên các cạnh kiến đi qua. Trong một số trường hợp, trước khi thêm mùi, các hành
trình xây dựng được có thể được cải tiến bằng cách áp dụng thủ tục tìm kiếm cục bộ.
Lược đồ thuật toán ACO giải quyết bài toán TSP được mô tả như sau:
HUST SOICT Xây dựng thuật toán phân công giao việc cho hệ thống MBay ĐATN 2015
Sinh viên Nguyễn Văn Hạ SHSV: 20102648 Lớp: CNTT2-K55 Trang 25
Procedure: Thuật_toán_SACO_TSP;
Dữ liệu vào: G(V, E);
Kết quả ra: Một chu trình và tổng độ dài của nó;
Begin:
Khởi tạo tham số, khởi tạo ma trận mùi;
Khởi tạo quần thể kiến với kích thước m
for k = 1 to m do
Kiến m xây dựng lời giải;
Cập nhật lời giải tốt nhất;
Cập nhật mùi
end for
Đưa ra lời giải tốt nhất;
End.
Thuật toán ACO đầu tiên (thuật toán AS) giải bài toán TSSP đã đạt được hiệu
quả khả quan, nhưng chưa phải là thuật toán tốt nhất cho bài toán này. Tuy nhiên AS
đóng vai trò rất quan trọng trong các thuật toán mở rộng, cải tiến của thuật toán ACO
về sau. Sự khác biệt chính giữa các thuật toán mở rộng của AS như: thuật toán elitist
AS, rank-based AS và MAX-MIN,… là cách thức cập nhật mùi khác nhau. Bảng dưới
đây cho thấy đa số các thuật toán ACO mới đều được thử nghiệm trên TSP.
Thuật toán ACO TSP Tác giả (thời gian công bố)
Ant System Có Dorigo (1992),Maniezzo & Colorni (1991, 1996)
Elitist AS Có Dorigo (1992),Maniezzo & Colorni (1991, 1996)
Ant – Q Có Gambardella & Dorigo (1995)
Ant Colony
System
Có Gambardella & Dorigo (1997)
Max-Min Ant
System
Có Stutzle & Hoos (1996, 2000)
Rank-based AS Có Bullnhermer, Hartl & Strauss (1997, 1999)
ANTS Không Maniezzo (1999)
Hyper-cube AS Không Blum, Roli & Dorigo (2001)
TSIACO Có Zhaojun Zhang, Zuren Feng (2011)
Bảng 3 – 1: Một số thuật toán ACO theo thứ tự thời gian phát triển
3.3 Số lượng kiến
Trong giai đoạn đầu vết mùi không thể giúp kiến tìm đường đi dẫn tới các lời
tốt. Nếu sử dụng số lượng kiến quá ít thì sẽ không tìm được lời giải, hoặc tìm được
nhưng chưa đủ tốt, như vậy việc cập nhật mùi sẽ được cập nhật trên những lời giải
không tốt. Sử dụng thuật toán tìm kiếm cục bộ xung quanh các lời giải không tốt này
khiến cho thuật toán trở nên kém hiệu quả. Có thể khắc phục điều này bằng cách tăng
số lượng cá thể trong quần thể kiến lên, để tăng khả năng tìm được lời giải tốt sau khi
chạy thuật toán.
HUST SOICT Xây dựng thuật toán phân công giao việc cho hệ thống MBay ĐATN 2015
Sinh viên Nguyễn Văn Hạ SHSV: 20102648 Lớp: CNTT2-K55 Trang 26
3.4 Nhận xét chung về các thuật toán ACO
Nhờ kết hợp thông tin heuristic, thông tin học tăng cường và mô phỏng hoạt
động của đàn kiến, các thuật toán ACO có ưu điểm sau:
Việc tìm kiếm ngẫu nhiên dựa trên các thông tin heuristic trở nên linh hoạt và
mềm dẻo trên miền rộng hơn so với các phương pháp heuristic đã có. Do đó cho ta
lời giải tốt hơn và có thể tìm được lời giải tối ưu.
Học tăng cường thông qua thông tin về cường độ vết mùi cho phép từng bước
thu hẹp không gian tìm kiếm mà vẫn không bỏ qua các lời giải tốt, do đó nâng cao
được độ tin cậy và chất lượng của thuật toán.
Khi áp dụng ACO cho bài toán cụ thể, ba yếu tố sau có ảnh hưởng quyết định tới
hiệu quả thuật toán:
1. Xây dựng đồ thị có cấu trúc thích hợp. Việc xây dựng đồ thị cấu trúc để tìm
được lời giải cho bài toán theo thủ tục tuần tự là không khó. Khó khăn chính
là các bài toán cỡ lỡn thường có không gian tìm kiếm quá rộng, thời gian chạy
tuần tự hết hàng trăm năm. Như vậy đòi hỏi ta phải sử dụng các ràng buộc 
một cách hợp lý để giảm miền tìm kiếm của kiến.
2. Chọn thông tin heuristic. Thông tin heuristic tốt sẽ tăng hiệu quả thuật toán.
Tuy nhiên trong nhiều bài toán không có thông tin này thì có thể đánh giá xác
suất tìm thành phố lân cận là như nhau. Khi đó ban đầu thuật toán chỉ đơn
thuần chạy theo phương thức tìm kiếm ngẫu nhiên, vết mùi thể hiện định
hướng của học tăng cường và thuật toán vẫn thực hiện được.
3. Chọn quy tắc cập nhật mùi. Quy tắc cập nhật mùi thể hiện chiến lược học của
thuật toán. Vì đây là thông tin lưu giữ lại duy nhất sau mỗi lượt quần thể kiến
tìm kiếm lời giải. Trong khi các đồ thị có cấu trúc và thông tin heuristic phụ
thuộc vào các bài cụ thể, quy tắc cập nhật mùi lại là yếu tố phổ biến và thường
dùng để đặt tên cho thuật toán.
HUST SOICT Xây dựng thuật toán phân công giao việc cho hệ thống MBay ĐATN 2015
Sinh viên Nguyễn Văn Hạ SHSV: 20102648 Lớp: CNTT2-K55 Trang 27
Chương 4: Thuật toán phân công giao hàng
4.1 Thuật toán phân công giao hàng cho 1 cửa hàng
Bước 1. Lấy danh sách các cửa hàng cần sắp xếp, các danh sách hóa đơn,
danh sách nhân viên đang rỗi.
Bước 2: Sắp xếp các đơn hàng có vị trí gần nhau.
Bước 3: Sắp xếp thứ tự yêu tiên của nhân viên giao hàng theo Lương tháng
và lương ngày bằng phương pháp TOPSIS
Bước 4: Phân công giao hàng.
Bước 4.1: Ban đầu phân công tạm thời các đơnhàng cho các nhân viên.
Bước 4.2: Nếu có yêu cầu từ nhân viên giao hàng cần lấy đi giao. Lấy
các đơn hàng chia tạm thời cho nhân viên đó. Chạy thuật toán ACOTSP để
đánh lịch trình và tính thời gian dự kiến giao hàng
4.2 Phương pháp sắp xếp đơn hàng gần nhau
Từ 1 cửa hàng các đơn hàng được chia thành các vùng, mỗi nhân viên giao
hàng sẽ chỉ phụ trách 1 vùng nhất định, Làm như vậy sẽ tiết kiệm được quãng đường
đi giao hàng. Kỹ thuật này gần giống kỹ thuật chia để trị, Chia bài toán thành nhiều
bài toán nhỏ và sau đó lời giải của các bài toán nhỏ được tổng hợp lại thành lời giải
cho bài toán ban đầu.
Mỗi cửa hàng có đặc trưng là chỉ nhận giao hàng trong 1 khoảng cách nhất
định, đó gọi là bán kính hoạt động của cửa hàng(R).
Nếu của hàng có bán kính (R) giao hàng vừa phải thì chúng ta có thể chia
thành 4 vùng, Mỗi đơn hàng sẽ được gán số vùng.
Nếu cửa hàng có bán kính giao hàng lớn, số lượng đơn hàng nhiều thì ban đầu
chia thành 4 vùng, sau đó lại tiếp tục mỗi vùng cho chia làm 4 vùng tiếp, rỗi gán số
vùng cho đơn hàng đó.
HUST SOICT Xây dựng thuật toán phân công giao việc cho hệ thống MBay ĐATN 2015
Sinh viên Nguyễn Văn Hạ SHSV: 20102648 Lớp: CNTT2-K55 Trang 28
Hình 4 - 1: Sử dụng kĩ thuật chia để trị trong phân công giao hàng
4.3 Phương pháp topsis để sắp xếp thứ tự ưu tiên các nhân viên
Quan sát thêm các phương án lý tưởng với các giá trị tốt nhất (xấu nhất) ở các
thuộc tính, sau đó tính khoảng cách và độ tương tự của các phương án so với các
phương án lý tưởng Dựa vào kết quả để sắp xếp thứ tự hoặc lựa chọn
Đây là phương pháp quyết định đa tiêu chí, nhằm lấy ra một lựa chọn tốt nhất
(giải pháp lý tưởng nhất) và lựa chọn tồi nhất (giải pháp tiêu cực nhất) từ tập các lựa
chọn.
Kỹ thuật này được đưa ra lần đầu vào năm 1980 bởi Kwangsun Yoon và
Hwang ChingLai. Sau này kỹ thuật này còn được phát triển thêm bởi các nhà khoa
học khác và được hoàn thiện vào năm 1993.
HUST SOICT Xây dựng thuật toán phân công giao việc cho hệ thống MBay ĐATN 2015
Sinh viên Nguyễn Văn Hạ SHSV: 20102648 Lớp: CNTT2-K55 Trang 29
Các bước trong phương pháp topsis
Bước 1: Chuẩn hóa, đưa ra các giá trị về rij  [0,1]
Bước 2: Tính giá trị theo trọng số vij = rij * wj
Bước 3: Tính các giải pháp lý tưởng
- A* = (v1
* , v2
* , v3
* ,..., vm
*), với vj
* là giá trị tốt nhất của Xj
- A= (v1
- , v2
- , v3
- ,..., vm
-), với vj
- là giá trị tốt nhất của Xj
Bước 4: Tính khoảng cách
Si
* =  *
–
2
j ij jv v , Si
- =  – 

2
j ij jv v
Bước 5: Tính độ tương tự :
*
* *



i
i
i i
S
C
S S
Ví dụ Topsis để sắp xếp thứ tự ưu tiên được nhận hàng trước của nhân viên. Để chọn
nhân viên có độ ưu tiên được giao hàng trước. Tức là nhân viên có thu nhập thấp
trong 1 ngày và trong 1 tháng, Ta phải kết hợp cả 2 trọng số này lại để tạo 1 trọng
số sắp xếp thứ tự ưu tiên cho các nhân viên
Ta có bảng lương của nhân viên như sau
Nhân viên Lương ngày hiện tại Lương tháng hiện tại
A 3 $ 20$
B 10$ 10$
C 7$ 50$
D 3$ 7$
E 9$ 15$
Với bộ trọng số
WEIGHT_DAY = 0.85;
WEIGHT_MONTH =0.15;
Bước 1: chuẩn hóa các giá trị
Vì thuộc tính lương theo ngày và lương theo tháng đều là thuộc tính giá
(thuộc tính giá trị càng thấp càng tốt)
HUST SOICT Xây dựng thuật toán phân công giao việc cho hệ thống MBay ĐATN 2015
Sinh viên Nguyễn Văn Hạ SHSV: 20102648 Lớp: CNTT2-K55 Trang 30
2
1
1
ij
ij
ij
i
xr
x


Ma trận chuẩn hóa
Nhân viên Lương ngày hiện tại Lương tháng hiện tại
A 0.6476 0.2573
B 0.1943 0.5147
C 0.2775 0.1029
D 0.6476 0.7352
E 0.2159 0.3431
Bước 2: Tính giá trị theo trọng số
Nhân viên Lương ngày hiện tại Lương tháng hiện tại
A 0.5504 0.0386
B 0.1651 0.0772
C 0.2359 0.0154
D 0.5504 0.1103
E 0.1835 0.0515
Bước 3: Các giải pháp lý tưởng
A* =(0.5504, 0.1103)
A- =(0.1651, 0.0154)
Bước 4 : Tính khoảng cách tới giải pháp lý tưởng
S* =( 0.0717 , 0.3867 , 0.3285 , 0.0 , 0.3716);
S- = (0.386 , 0.0618 , 0.0708 , 0.3968 , 0.0404)
Bước 5 : Độ đo tương tự tới giải pháp lý tưởngC* =(0.8434 , 0.1377 , 0.1772 , 1.0 ,
0.0981)
Sắp xếp thứ tự ưu tiên
 Theo S* : D > A > C > B > E
 Theo S- : D > A > C > B > E
 Theo C* : D > A > C > B > E
HUST SOICT Xây dựng thuật toán phân công giao việc cho hệ thống MBay ĐATN 2015
Sinh viên Nguyễn Văn Hạ SHSV: 20102648 Lớp: CNTT2-K55 Trang 31
Chương 5: Ứng dụng giao hàng tự động và sắp xếp lộ trình giao hàng
5.1 Phân công công việc
Thành viên Nhiệm vụ
Bảo Xây dựng trang Web
Phương Ứng dụng android cho khách hàng
Khang Ứng dụng android cho người giao hàng
Hạ Thuật toán phân công giao hàng
Bảng 5 – 1: Phân công nhiệm vụ từng thành viên trong nhóm.
5.2 Thiết kế tổng quan
5.2.1 Khung nhìn usecase
Hình 5 - 1: Tác nhân của hệ thống
Hệ thống bao gồm các tác nhân sau:
HUST SOICT Xây dựng thuật toán phân công giao việc cho hệ thống MBay ĐATN 2015
Sinh viên Nguyễn Văn Hạ SHSV: 20102648 Lớp: CNTT2-K55 Trang 32
 Tên tác nhân: Quản trị mbay
Mô tả: Người đóng vai trò ban quản lý của chợ
Hoạt động của tác nhân đối với hệ thống: Quản trị mbay có các chức năng quản
lý của chợ:
o Mở các gian hàng trống, chưa có chủ
o Cho phép người dùng đăng ký làm chủ gian hàng
o Quản lý chủ gian hàng
o Quản lý các gian hàng: Xóa các gian hàng có dấu hiệu lừa đảo
o Giải quyết các tranh chấp khi có phát sinh giữa khách hàng với chủ gian
hàng
 Tên tác nhân: Chủ gian hàng
Mô tả: Là chủ của các gian hàng, cửa hàng.
Hoạt động của tác nhân đối với hệ thống: Chủ gian hàng có các chức năng:
o Đăng ký mở gian hàng, hoặc quản lý các gian hàng vô chủ
o Thiết lập các gian hàng
o Quản lý nhân viên
 Tên tác nhân: Quản lý gian hàng
Mô tả: Là người thay mặt chủ cửa hàng thực hiện các nhiệm vụ quản lý nhà hàng.
Hoạt động của tác nhân đối với hệ thống: Quản lý gian hàng thực hiện các chức
năng quản lý nhà hàng:
o Phân công giao hàng cho nhân viên giao hàng
o Giao hàng cho nhân viên giao hàng
o Ghi nhận kết quả giao hàng
o Đánh giá nhân viên
o Theo dõi doanh thu của cửa hàng
o Cập nhật thông tin cho hàng hóa: Giá cả, khuyến mại, …
 Tên tác nhân: Nhân viên giao hàng
Mô tả: Là người được chủ gian hàng cấp phép cho làm nhân viên giao hàng của
cửa hàng
Hoạt động của tác nhân đối với hệ thống: Người giao hàng thực hiện các chức
năng:
o Nhận đơn hàng để giao
o Nhận các mặt hàng trong đơn hàng
o Tìm lộ trình giao hàng tới khách hàng
o Bàn giao sản phẩm
o Nhận tiền và lấy xác nhận từ khách hàng
o Nộp tiền thanh toán
HUST SOICT Xây dựng thuật toán phân công giao việc cho hệ thống MBay ĐATN 2015
Sinh viên Nguyễn Văn Hạ SHSV: 20102648 Lớp: CNTT2-K55 Trang 33
 Tên tác nhân: Khách hàng
Mô tả: Là những người sử dụng hệ thống để mua hàng
Hoạt động của tác nhân với hệ thống: Khách hàng có thể thực hiện các chức
năng:
o Tìm kiếm các mặt hàng, gian hàng
o Xem thông tin các mặt hàng, gian hàng
o Xem thông tin bình luận, đánh giá về sản phẩm, gian hàng
o Xem xét, đánh giá giá cả, chất lượng sản phẩm của các gian hàng khác
nhau
o Bình luận, đánh giá về một sản phẩm, một gian hàng
o Đặt hàng
o Thanh toán tiền hàng, xác nhận với nhân viên giao hàng
Đồ án là một hệ thống thương mại điệntử lớn, được phát triểnbởi nhóm 4 sinh
viên. Phần đóng góp của em được giới hạn trong bài toán phân công giao hàng cho
nhân viên sao cho tối ưu nhất. Biểu đồ usecase tương ứng với phần phân công giao
hàng tự động được thể hiện ở hình sau đây.
Hình 5 - 2: Biểu đồ usecase Phân công giao hàng tự động
HUST SOICT Xây dựng thuật toán phân công giao việc cho hệ thống MBay ĐATN 2015
Sinh viên Nguyễn Văn Hạ SHSV: 20102648 Lớp: CNTT2-K55 Trang 34
5.2.2 Khung nhìn Logic
Hình 5 - 3: Mô hình tương tác chung của hệ thống
5.2.3 Khung nhìn vật lý
Hình 5 - 4: Khung nhìn vật lý khi triển khai hệ thống.
5.3 Thiết kế chi tiết
STT Mã UC Tên UC Mô tả ngắn gọn
Trình duyệt desktop
App di động
HUST SOICT Xây dựng thuật toán phân công giao việc cho hệ thống MBay ĐATN 2015
Sinh viên Nguyễn Văn Hạ SHSV: 20102648 Lớp: CNTT2-K55 Trang 35
1 U001 Phân công tạm thời
các đơn hàng cho các
nhân viên
Phân công tạm thời các đơn hàng của 1
cửa hàng cho các nhân viên
2 U002 Phân công thật các
các đơn hàng cho các
nhân viên
Khi chủ cửa hàng hoặc quản lý cửa
hàng, tiếpnhận yêu cầu lấy hàng đi giao
từ nhân viên. Hệ thống phân công các
đơn hàng tạm thời cho nhân viên đó và
chạy thuật toán ACO để sắp xếp lộ trình
cho nhân viên
Bảng 5 – 2: Usecase phân công giao hàng
ID U001
Tên Phân công tạm thời các đơn hàng cho các nhân viên
Mô tả tóm tắt Phân công tạm thời các đơn hàng của 1 cửa hàng cho các
nhân viên
Tác nhân Hệ thống
Điều kiện Tiền
ĐK
Hệ điều hành kích hoạt được tiến trình tự động Mbay.jar
Hậu
ĐK
Phân công được các đơn hàng cho nhân viên và cập nhật dữ
liệu
Dòng sự
kiện chính
A1. Hệ thống truy vấn dữ liệu về các cửa hàng, các đơn hàng chưa
giao, các nhân viên đang rỗi
A2. Hệ thống phân công tạm thời các đơn hàng cho các nhân viên
A3. Hệ thống cập nhật cơ sở dữ liệu
A4. Hệ thống ghi log file
Dòng sự
kiện khác
A1.1: Tại cửa hàng i : không có đơn hàng chưa giao hoặc không có
nhân viên nào rỗi.
A2.1: Hệ thống ghi ra File log nội dung : dữ liệu Null
Các quy tắc
nghiệp vụ
Hệ điều hành phải kích hoạt tiến trinh java.exe -jar Mbay.jar
HUST SOICT Xây dựng thuật toán phân công giao việc cho hệ thống MBay ĐATN 2015
Sinh viên Nguyễn Văn Hạ SHSV: 20102648 Lớp: CNTT2-K55 Trang 36
Bảng 5 – 3: U001. Phân công tạm thời các đơn hàng cho các nhân viên.
ID U002
Tên Phân công thật các các đơn hàng cho các nhân viên
Mô tả tóm tắt Khi chủ cửa hàng hoặc quản lý cửa hàng, tiếp nhận yêu cầu
lấy hàng đi giao từ nhân viên. Hệ thống phân công các đơn
hàng tạm thời cho nhân viên đó và chạy thuật toán ACO để
sắp xếp lộ trình cho nhân viên
Tác nhân Chủ cửa hàng hoặc quản lý cửa hàng
Điều kiện Tiền
ĐK
Chủ cửa hàng hoặc quản lý cửa hàng giao hàng cho nhân
viên và cập nhật dữ liệu
Hậu
ĐK
Với 1 nhân viên đã nhận các đơn hàng, Thuật toán sắp xếp
được lộ trình, tính chi phí, thời gian cụ thể cho mỗi đơn hàng.
Dòng sự
kiện chính
A1. Tác nhân vào mục quản lý đơn hàng trên Web
A2. Hệ thống hiện thị các danh sách nhân viên đã có các đơn hàng
tạm thời
A2. Tác nhân chọn giao các đơn hàng cho nhân viên đó
A3. Hệ thống lấy danh sách các đơn hàng cửa người đó, và chạy thuật
toán ACO để sắp xếp lộ trình
A4. Hệ thống cập nhật dữ liệu và hiển thị kết quả trên Web
Dòng sự
kiện khác
Không có
Các quy tắc
nghiệp vụ
Bảng 5 – 4: U002. Phân công thật các đơn hàng cho các nhân viên.
HUST SOICT Xây dựng thuật toán phân công giao việc cho hệ thống MBay ĐATN 2015
Sinh viên Nguyễn Văn Hạ SHSV: 20102648 Lớp: CNTT2-K55 Trang 37
Hình 5 - 5: Biểu đồ hoạt động Phân công thật các đơn hàng cho các nhân viên
HUST SOICT Xây dựng thuật toán phân công giao việc cho hệ thống MBay ĐATN 2015
Sinh viên Nguyễn Văn Hạ SHSV: 20102648 Lớp: CNTT2-K55 Trang 38
Hình 5 - 6: Biểu đồ hoạt động chức năng phân đơn hàng cho nhân viên
HUST SOICT Xây dựng thuật toán phân công giao việc cho hệ thống MBay ĐATN 2015
Sinh viên Nguyễn Văn Hạ SHSV: 20102648 Lớp: CNTT2-K55 Trang 39
Hình 5 – 7: Biểu đồ trình tự Phân công giao hàng tạm thời
Hình 5 – 8 Biểu đồ trình tự Phân công giao hàng thật cho nhân viên
HUST SOICT Xây dựng thuật toán phân công giao việc cho hệ thống MBay ĐATN 2015
Sinh viên Nguyễn Văn Hạ SHSV: 20102648 Lớp: CNTT2-K55 Trang 40
Hình 5 - 8: Package Diagram
- Package Assign: Gói phân công giao hàng tự động
- Packageg ACOTSP : Gói chứa thuật toán Ant Colony Optimization
- Package DB: Gói tương tác với cơ sở dữ liệu
- Package Entity: gói thực thể với các bảng cơ sở dữ liệu. Ví dụ các
lớp Point.java, Employer.java, Bill.java.
HUST SOICT Xây dựng thuật toán phân công giao việc cho hệ thống MBay ĐATN 2015
Sinh viên Nguyễn Văn Hạ SHSV: 20102648 Lớp: CNTT2-K55 Trang 41
Hình 5 – 9: Biểu đồ lớp chi tiết chức năng phân công giao hàng tự động
HUST SOICT Xây dựng thuật toán phân công giao việc cho hệ thống MBay ĐATN 2015
Sinh viên Nguyễn Văn Hạ SHSV: 20102648 Lớp: CNTT2-K55 Trang 42
5.4 Thiết kế cơ sở dữ liệu
Hình 5 - 10: Các bảng trong cơ sở dữ liệu
BẢNG CSDL USER:
HUST SOICT Xây dựng thuật toán phân công giao việc cho hệ thống MBay ĐATN 2015
Sinh viên Nguyễn Văn Hạ SHSV: 20102648 Lớp: CNTT2-K55 Trang 43
BẢNG CSDL ROLE:
TÊN BIẾN KIỂU DỮ LIỆU Ràng buộc Mô tả
IdRole INT(11) Khoá chính ID vai trò
Name VARCHAR(60) Not Null Tên vai trò
Role VARCHAR(20) Not Null Vai trò
BẢNG USERROLES:
TÊN BIẾN KIỂU DỮ LIỆU Ràng buộc Mô tả
Id INT(11) Khoá chính ID
IdUser INT(11) Not Null Id người dùng
IdRole INT(11) Not Null Id vai trò
BẢNG COMMENT:
TÊN BIẾN KIỂU DỮ LIỆU Ràng buộc Mô tả
TÊN BIẾN KIỂU DỮ LIỆU Ràng buộc Mô tả
IdUser INT(11) Khoá chính ID người dùng hệ thống
User VARCHAR(30) Unique Tên đăng nhập
Password VARCHAR(40) Not Null Mật khẩu
Name VARCHAR(60) Not Null Họ tên
Adress VARCHAR(255) Not Null Địa chỉ người dùng
Avatar VARCHAR(255) Allow Null Ảnh đại diện
Phone VARCHAR(11) Not Null Điện thoại
Mobile VARCHAR(11) Not Null Điện thoại
Email VARCHAR(60) Unique Email
CreateAt DATETIME Allow Null Ngày tạo
IsActive VARCHAR(32) Allow Null Trạng thái kích hoạt
slug VARCHAR(255) Allow Null Tên hiển thị trên URL
State INT(11) Not Null Trạng thái nhân viên giao
hàng
reset_pass VARCHAR(32) Allow Null Yêu cầu reset mật khẩu
HUST SOICT Xây dựng thuật toán phân công giao việc cho hệ thống MBay ĐATN 2015
Sinh viên Nguyễn Văn Hạ SHSV: 20102648 Lớp: CNTT2-K55 Trang 44
IdCmt INT(11) Khoá chính ID
IdProduct INT(11) Khoá ngoại Id sản phẩm
Body VARCHAR(255) Not null Nội dung lời nhận xét
CreateAt DATETIME Not null Ngày tạo
IdUser INT(11) Khoá ngoại ID người nhận xét
BẢNG SESSIONS
TÊN BIẾN KIỂU DỮ LIỆU Ràng buộc Mô tả
sess_id VARBINARY(128) Khoá chính Phiên làm việc
sess_data BLOB Not Null Dữ liệu phiên làm việc
sess_time INT(10) Not Null Thời gian sống của phiên làm
việc
sess_lifetime MEDIUMINT(9) Not Null
BẢNG USERSTORE
Tên biến KIỂU DỮ
LIỆU
Ràng buộc Mô tả
Id INT(11) Khoá chính ID
CreateAt DATETIME Allow Null Ngày tạo
IdEmployee INT(11) Khoá ngoại ID Nhân viên
IdStore INT(11) Khoá ngoại ID cửa hàng
Active TINYINT(1) Allow Null Trạng thái nhân viên trong cửa
hàng
BẢNG PHIEN
TÊN BIẾN KIỂU DỮ
LIỆU
Ràng buộc Mô tả
IdPhien INT(11) Khoá chính ID
startat DATETIME Allow Null Thời gian bắt đầu của phiên giao
hàng
finishat DATETIME Allow Null Thời gian kết thúc phiên giao hàng
km INT(11) Allow Null Quãng đường đi được ở phiên đó
IdEmployee INT(11) Khoá ngoại Người giao hàng
HUST SOICT Xây dựng thuật toán phân công giao việc cho hệ thống MBay ĐATN 2015
Sinh viên Nguyễn Văn Hạ SHSV: 20102648 Lớp: CNTT2-K55 Trang 45
BẢNG BILL
TÊN BIẾN KIỂU DỮ LIỆU Ràng buộc Mô tả
IdBill INT(11) Khoá chính ID
CreateAt DATETIME Allow Null Ngày tạo
Address VARCHAR(60) Not Null Địa chỉ giao hàng
ShipTime DATETIME Allow Null Thời gian giao hàng
Position INT(11) Allow Null Thứ tự đơn hàng đó trong
phiên
IdPhien INT(11) Allow Null ID phiên giao hàng
IdCustomer INT(11) Khoá ngoại ID khách hàng
IdStore INT(11) Khoá ngoại ID cửa hàng
State INT(11) Not Null Trạng thái đơn hàng
LAT DOUBLE Not Null Vĩ dộ
LON DOUBLE Not Null Kinh độ
actualtime DATETIME Allow Null Thời gian giao hàng thực tế
BẢNG CATEGORYSTORE
BẢNG STORE
TÊN BIẾN KIỂU DỮ LIỆU Ràng buộc Mô tả
IdCategoryStore INT(11) Khoá chính ID
CategoryName VARCHAR(60) Not Null Tên loại cửa hàng
Description VARCHAR(255) Allow Null Nội dung
Slug VARCHAR(255) Not Null Tên đường dẫn trên URL
HUST SOICT Xây dựng thuật toán phân công giao việc cho hệ thống MBay ĐATN 2015
Sinh viên Nguyễn Văn Hạ SHSV: 20102648 Lớp: CNTT2-K55 Trang 46
TÊN BIẾN KIỂU DỮ LIỆU Ràng buộc Mô tả
IdStore INT(11) Khoá chính ID
Name VARCHAR(255) Not Null Tên
Image VARCHAR(255) Allow Null Hình ảnh
Adress VARCHAR(255) Not Null Địa chỉ
PrimaryPhone VARCHAR(255) Not Null Điện thoại
CreateAt DATETIME Not Null Thời gian tạo
Actived TINYINT(1) Allow Null Trang thái hoạt động
Distance INT(11) Allow Null Bán kính giao hàng
Automatic TINYINT(1) Allow Null Tự đông phân công giao
hàng
slug VARCHAR(255) Not Null Tên hiển thị trên URL
IdCategoryStore INT(11) Khoá ngoại
IdBoss INT(11) Khoá ngoại ID chủ cửa hàng
report VARCHAR(255) Allow Null
LAT DOUBLE Not Null Vĩ độ cửa hàng
LON DOUBLE Not Null Kinh độ cửa hàng
BẢNG BILLDETAIL
Tên biến KIỂU DỮ
LIỆU
Ràng buộc Mô tả
Id INT(11) Khoá chính ID
IdBill INT(11) Khoá ngoại ID cửa hàng
IdProduct INT(11) Khoá ngoại ID sản phẩm
number INT(11) Not null Số lượng sản phẩm
BẢNG PRODUCTIMAGE
TÊN BIẾN KIỂU DỮ LIỆU Ràng buộc Mô tả
Id INT(11) Khoá
chính
ID
ImageSrc VARCHAR(255) Not Null Đường dẫn hình ảnh
IdProduct INT(11) Not Null ID sản phẩm
HUST SOICT Xây dựng thuật toán phân công giao việc cho hệ thống MBay ĐATN 2015
Sinh viên Nguyễn Văn Hạ SHSV: 20102648 Lớp: CNTT2-K55 Trang 47
BẢNG CATEGORY
TÊN BIẾN KIỂU DỮ LIỆU RÀNG BUỘC MÔ TẢ
IdCategory INT(11) Khoá chính ID
Tag VARCHAR(60) Allow Null
Name VARCHAR(60) Not Null Tên thể loại sản phẩm
Description VARCHAR(255) Allow Null Nội dung
Active TINYINT(1) Allow Null Trạng thái
KeyWord VARCHAR(10) Allow Null Từ khoá tìm kiếm
slug VARCHAR(255) Not Null Tên hiển thị trên URL
IdCatStore INT(11) Khoá ngoại ID cửa hàng
BẢNG PRODUCT
TÊN BIẾN KIỂU DỮ LIỆU RÀNG BUỘC MÔ TẢ
IdProduct INT(11) Khoá chính ID
Name VARCHAR(60) Not Null Tên sản phẩm
IdCategory INT(11) Khoá ngoại ID thể loại
Tag VARCHAR(10) Allow Null
KeyWord VARCHAR(10) Allow Null Từ khoá
slug VARCHAR(255) Not Null Tên hiển thị trên URL
BẢNG STOREPRODUCT
TÊN BIẾN KIỂU DỮ LIỆU RÀNG BUỘC MÔ TẢ
Id INT(11) Khoá chính
IdStore INT(11) Khoá ngoại ID cửa hàng
IdProduct INT(11) Khoa ngoại ID sản phẩm
Detail VARCHAR(255) Allow Null Chi tiết
Price INT(11) Not Null Giá thật
SalePrice INT(11) Allow Null Giá khi giảm
Sale VARCHAR(255) Allow Null
Active TINYINT(1) Allow Null Trạng thái sản phẩm
DateBegin DATETIME Allow Null Ngày bắt đầu khuyến
mãi
DateEnd DATETIME Allow Null Ngày kết thúc khuyến
mãi
createat DATETIME Allow Null Ngày tạo
updateat DATETIME Allow Null Ngày cập nhất mới
HUST SOICT Xây dựng thuật toán phân công giao việc cho hệ thống MBay ĐATN 2015
Sinh viên Nguyễn Văn Hạ SHSV: 20102648 Lớp: CNTT2-K55 Trang 48
Chương 6: Đánh giá kết quả, ưu nhược điểm, khả năng ứng dụng
6.1 Kết quả đạt được
Kết quả nghiên cứu đã xây dựng thành công ứng dụng gợi ý giao hàng tự động cho
hệ thống mbay. Với bộ dữ liệu
- 15 cửa hàng với địa điểm ở Hà Nội
- Mỗi cửa hàng có tầm khoảng 15-20 sản phẩm
- Mỗi cửa hàng có hơn một nhân viên giao hàng đang rỗi.
- Mỗi cửa hàng tại thời điểm thuật toán chạy sẽ có 40,50 đơn hàng được tạo
ngẫu nhiên
- Có 100 khách hàng trong hệ thống
Môi trường thử nghiệm thực tế
- Hệ điều hành: máy chủ ảo VPS Windows Server 2008
- Apache PHP 5.5, Mysql 5.6
- Java JDK 1.7
Chạy thử nghiệm ứng dụng
Sử dụng công cụ Task Scheduler tích hợp sẵn trong Windows để tự khởi động
chương trìng java.exe –jar mbay.jar
Đặt trong vòng 5 phút, Hệ điều hành Windows sẽ kích hoạt lại tiến trình java.exe –
jar mbay.jar
HUST SOICT Xây dựng thuật toán phân công giao việc cho hệ thống MBay ĐATN 2015
Sinh viên Nguyễn Văn Hạ SHSV: 20102648 Lớp: CNTT2-K55 Trang 49
Hình 5 – 11: Khởi chạy mBay.jar từ Windows
Kết quả chạy thử nghiệm :
Với của hàng có Idstore = 1 và có 30 đơn hàng và hiện tại chỉ có 1 nhân viên giao
hàng đang rỗi
Với địa điểm 30 đơn hàng có vị trí toạ độ như sau
Vị trí 0 [21.021035 , 105.841451] Vị trí cửa hàng,vị trí xuất phát
Vị trí 1 [21.0113972 , 105.8561946]
Vị trí 2 [21.0373732 , 105.8537085]
Vị trí 3 [21.0197978 , 105.8263103]
Vị trí 4 [21.0202193 , 105.8164842]
Vị trí 5 [21.0141834 , 105.8505145]
Vị trí 6 [21.0165798 , 105.8504266]
Vị trí 7 [20.9972105 , 105.8450375]
Vị trí 8 [21.0008726 , 105.8348482]
Vị trí 9 [21.0097566 , 105.8221182]
Vị trí 10 [21.0432988 , 105.8308301]
Vị trí 11 [21.042777 , 105.8373434]
Vị trí 12 [21.0070204 , 105.8628889]
Vị trí 13 [21.0377219 , 105.8386193]
Vị trí 14 [21.0142647 , 105.8438075]
Vị trí 15 [21.0185057 , 105.8422794]
Vị trí 16 [21.0333582 , 105.8287007]
Vị trí 17 [21.020724 , 105.8350958]
Vị trí 18 [21.0075024 , 105.8388949]
Vị trí 19 [21.0216676 , 105.8406434]
Vị trí 20 [21.019214 , 105.8465329]
Vị trí 21 [21.0194522 , 105.8501732]
Vị trí 22 [21.0162073 , 105.8448095]
Vị trí 23 [21.0321479 , 105.847258]
Vị trí 24 [21.0210331 , 105.8162065]
Vị trí 25 [21.0192594 , 105.8418901]
Vị trí 26 [21.0299824 , 105.8395877]
Vị trí 27 [21.0106729 , 105.8176505]
Vị trí 28 [21.0195331 , 105.8598292],
Vị trí 29 [21.0311337 , 105.8234428]
Vị trí 30 [21.0336148 , 105.8395568]
Khi chạy thuật toán: nhân viên cửa hàng có Idstore =1 nhận 30 đơn hàng và trình tự
giao hàng như sau 0 19 17 18 7 8 9 27 4 24 3 29 16 10 11 13 30 26 23 2
28 12 1 5 6 21 20 22 14 15 25
HUST SOICT Xây dựng thuật toán phân công giao việc cho hệ thống MBay ĐATN 2015
Sinh viên Nguyễn Văn Hạ SHSV: 20102648 Lớp: CNTT2-K55 Trang 50
Hình 5 – 12: Chu trình giao hàng tối ưu cho nhân viên
6.2 Đánh giá kết quả
Cả nhóm đã xây dựng hệ thống Mbay, triển khai được được hệ thống mbay, chạy trên
2 nền tảng Web và mobile.
Cá nhân đã xây dựng được ứng dụng phân công giao hàng và phân công thứ tự giao
hàng
Ưu điểm :
HUST SOICT Xây dựng thuật toán phân công giao việc cho hệ thống MBay ĐATN 2015
Sinh viên Nguyễn Văn Hạ SHSV: 20102648 Lớp: CNTT2-K55 Trang 51
Nhóm : Hệ thống Mbay có giao diện dễ dùng dễ tương tác đầy đủ các chức năng ban
đầu thiết kế.
Cá nhân :Hoàn thành nhiệm vụ được giao
Dùng thuật toán chia để trị : các danh sách đơn hàng thành các vùng nhỏ,
Mỗi nhân viên quản lý mỗi vùng nhằm rút ngắn đường đi giao hàng giảm chi phí và
thời gian giao hàng.
Áp dụng được thuật toán đàn kiến từ dữ liệu googlemaps để sắp xếp trình
tự giao hàng.
Nhược điểm :
+) Bộ dữ liệu thử nghiệm còn ít, chưa thực tế.
+) Chưa tích hợp trong số thời gian vào thuật toán, Mới chỉ dùng trọng số khoảng
cách của các đơn hàng.
HUST SOICT Xây dựng thuật toán phân công giao việc cho hệ thống MBay ĐATN 2015
Sinh viên Nguyễn Văn Hạ SHSV: 20102648 Lớp: CNTT2-K55 Trang 52
KẾT LUẬN
Tổng kết
Đồ án bước đầu đã hiểu được thuật toán phân công giao hàng trực tuyến và
hiểu được một phần thuật toán đàn kiến, Và cũng đã ứng dụng thành công vào hệ
thống Mbay. Thông qua việc xây dựng ứng dụng này, em đã tích lỹ được thêm nhiều
kinh nghiệm về lập trình java và hiểu rõ 2 thuật toán phân công giao hàng, thuật toán
đàn kiến.Tuy nhiên, do nhiều yếu tố chủ quan và khách quan như thời gian eo hẹp,
trình độ còn nhiều hạn chế cũng như đề tài Mbay tương đối lớn nên đồ án vẫn còn
các nhược điểm sau : chưa đi sâu vào phân tích yêu cầu phần mềm, phân tích thiết kế
hệ thống Mbay. Chưa thể đi sâu vào phân tích các biến thể của thuật toán đàn kiến,
so sánh về hiệu năng từng biết thể. Ứng dụng chỉ sử dụng biết thể cơ bản của thuật
toán ACO, chưa đánh giá hiệu năng của thuật toán phân công, thuật toán phân công
còn cứng nhắt, không có chế độ tuỳ biến cho từng cửa hàng.
Trong tương lại, Ứng dụng mbay sẽ được triển khai thực tế, Và từ những dữ
liệu thực tế và thu tập ý kiến của người dùng thì Mbay sẽ được tối ưu hơn, khắc phục
những nhược điểm hiện tại.
Hướng phát triển của đồ án
Đề tài “xây dựng hệ thống chợ điện tử trực tuyến mbay –Thuật toán phân công giao
hàng tự động” trong khuôn khổ của đồ án này chỉ dừng lại ở nghiên cứu và cài đặt
thử nghiệm ban đầu trên tập dữ liệu mẫu, chưa thực tế. Có nhiều hướng phát triểncho
đề tài phân công giao hàng như sau :
- Triển khai hệ thống mbay trên thực tế, với các chính sách quảng cáo, thu hút
nhiều người sửa dụng.
- Chuyển đổi thuật toán chạy trên nền tảng PHP để tối ưu hoá vấn đề phần cứng
và tối thiểu cách tương tác với hệ thống, Làm quy trình phân công giao hàng
rõ ràng hơn.
- Tạo ra các phương pháp giao hàng khác trong đó chủ cửa hàng tuỳ biến được
các tham số.
- Thiết kế học máy trên bộ dữ liệu phân công giao hàng cũ, để thuật toán trở nên
tối ưu hơn.
HUST SOICT Xây dựng thuật toán phân công giao việc cho hệ thống MBay ĐATN 2015
Sinh viên Nguyễn Văn Hạ SHSV: 20102648 Lớp: CNTT2-K55 Trang 53
TÀI LIỆU THAM KHẢO
[1] Marco Dorigo, Thomas Stutzle, Marco Colony Optimization, 1999.
[2] Ant Colony Algorith, www.codeproject.com, truy cập lần cuối 1/5/2015.
[3] ACO, http://wikipedia.org, truy cập lần cuối ngày 1/5/2015.
[4] TSP, http://wikipedia.org, truy cập lần cuối ngày 1/5/2015.
[5] G. L. Nemhauser and L. A. Wolsey, Interger and Combinatorial Optimization,
Wiley-Interscience, 1998
[6] F. Rossi, P. Van Beek, and T. Walsh, Eds. Handbook of Constraint
Programming, Elsevier, 2006
[7] T. Gonzalez, Handbook of Approximation Algorithms and Metaheuristics,
Chapman and Hall/CRC, 2007
[8] M. Dorigo and T. Stutzle, Ant Colony Optimization, Bradford Books, London,
2004
[9] Ban Hà Bằng, Nguyễn Đức Nghĩa, Tạp chí tin học và điều khiển học T.29 S.3(
2013) 285-297
[10] M. Dorigo & L.M. Gambardella: đề xuất. Ant Colony System, IEEE
Transactions on Evolutionary Computation, 1(1):53-66,1997.

More Related Content

What's hot

Báo cáo thực tập athena
Báo cáo thực tập athenaBáo cáo thực tập athena
Báo cáo thực tập athenaLe Chuong
 
Báo Cáo Thực Tập Tốt Nghiệp Tại ATHENA
Báo Cáo Thực Tập Tốt Nghiệp Tại ATHENA Báo Cáo Thực Tập Tốt Nghiệp Tại ATHENA
Báo Cáo Thực Tập Tốt Nghiệp Tại ATHENA Bui Ngoc Tam
 
Quang cao qua mang xa hoi Facebook Twitter...
Quang cao qua mang xa hoi Facebook Twitter...Quang cao qua mang xa hoi Facebook Twitter...
Quang cao qua mang xa hoi Facebook Twitter...snoosy
 
Báo cáo thực tập tốt nghiệp xây dựng website bằng laravel
Báo cáo thực tập tốt nghiệp xây dựng website bằng laravelBáo cáo thực tập tốt nghiệp xây dựng website bằng laravel
Báo cáo thực tập tốt nghiệp xây dựng website bằng laraveljackjohn45
 
Báo cáo đồ án tôt nghiệp: Xây dựng Website bán hàng thông minh
Báo cáo đồ án tôt nghiệp: Xây dựng Website bán hàng thông minhBáo cáo đồ án tôt nghiệp: Xây dựng Website bán hàng thông minh
Báo cáo đồ án tôt nghiệp: Xây dựng Website bán hàng thông minhnataliej4
 
Báo Cáo Thực Tập Thiết Kế Wedsite Bằng Joomla
Báo Cáo Thực Tập Thiết Kế Wedsite Bằng JoomlaBáo Cáo Thực Tập Thiết Kế Wedsite Bằng Joomla
Báo Cáo Thực Tập Thiết Kế Wedsite Bằng JoomlaNgoc Son
 
Báo cáo thực tập - Nhơn Mỹ - Trần Nguyên An - 2016
Báo cáo thực tập - Nhơn Mỹ - Trần Nguyên An - 2016Báo cáo thực tập - Nhơn Mỹ - Trần Nguyên An - 2016
Báo cáo thực tập - Nhơn Mỹ - Trần Nguyên An - 2016nhonmy luu
 
HOẠT ĐỘNG TRUYỀN THÔNG CỦA CÁC CƠ QUAN HÀNH CHÍNH NHÀ NƢỚC CẤP TRUNG ƢƠNG TẠI...
HOẠT ĐỘNG TRUYỀN THÔNG CỦA CÁC CƠ QUAN HÀNH CHÍNH NHÀ NƢỚC CẤP TRUNG ƢƠNG TẠI...HOẠT ĐỘNG TRUYỀN THÔNG CỦA CÁC CƠ QUAN HÀNH CHÍNH NHÀ NƢỚC CẤP TRUNG ƢƠNG TẠI...
HOẠT ĐỘNG TRUYỀN THÔNG CỦA CÁC CƠ QUAN HÀNH CHÍNH NHÀ NƢỚC CẤP TRUNG ƢƠNG TẠI...PinkHandmade
 
đồ áN cơ sở 2 đề tài xây dựng website kinh doanh phụ kiện thú cưng
đồ áN cơ sở 2 đề tài xây dựng website kinh doanh phụ kiện thú cưngđồ áN cơ sở 2 đề tài xây dựng website kinh doanh phụ kiện thú cưng
đồ áN cơ sở 2 đề tài xây dựng website kinh doanh phụ kiện thú cưngnataliej4
 
Proposal-Nhịp Cầu Doanh nhân-Điền Quân Media
Proposal-Nhịp Cầu Doanh nhân-Điền Quân Media Proposal-Nhịp Cầu Doanh nhân-Điền Quân Media
Proposal-Nhịp Cầu Doanh nhân-Điền Quân Media Ezio Nguyễn
 
Slide báo cáo đồ án tốt nghiệp "Website cửa hàng điện thoại trực tuyến"
Slide báo cáo đồ án tốt nghiệp "Website cửa hàng điện thoại trực tuyến"Slide báo cáo đồ án tốt nghiệp "Website cửa hàng điện thoại trực tuyến"
Slide báo cáo đồ án tốt nghiệp "Website cửa hàng điện thoại trực tuyến"Tú Cao
 
Baocaothuctap nguyen tuatduyen_t246
Baocaothuctap nguyen tuatduyen_t246Baocaothuctap nguyen tuatduyen_t246
Baocaothuctap nguyen tuatduyen_t246nhonmy luu
 
Báo cáo thực tập - Nhơn Mỹ - Nguyễn Xuân Thu- 2016
Báo cáo thực tập - Nhơn Mỹ - Nguyễn Xuân Thu- 2016Báo cáo thực tập - Nhơn Mỹ - Nguyễn Xuân Thu- 2016
Báo cáo thực tập - Nhơn Mỹ - Nguyễn Xuân Thu- 2016nhonmy luu
 
BÁO CÁO NHẬP MÔN THƯƠNG MẠI ĐIỆN TỬ 8 ĐIỂM
BÁO CÁO NHẬP MÔN THƯƠNG MẠI ĐIỆN TỬ 8 ĐIỂMBÁO CÁO NHẬP MÔN THƯƠNG MẠI ĐIỆN TỬ 8 ĐIỂM
BÁO CÁO NHẬP MÔN THƯƠNG MẠI ĐIỆN TỬ 8 ĐIỂMHoà Đoàn
 
Báo cáo thực tập cuối kỳ đề tài xây dựng website thương mại điện tử bằng Open...
Báo cáo thực tập cuối kỳ đề tài xây dựng website thương mại điện tử bằng Open...Báo cáo thực tập cuối kỳ đề tài xây dựng website thương mại điện tử bằng Open...
Báo cáo thực tập cuối kỳ đề tài xây dựng website thương mại điện tử bằng Open...vanphu2103
 
Bctt hồng thắm
Bctt hồng thắmBctt hồng thắm
Bctt hồng thắmnhonmy luu
 

What's hot (20)

Báo cáo thực tập athena
Báo cáo thực tập athenaBáo cáo thực tập athena
Báo cáo thực tập athena
 
Báo Cáo Thực Tập Tốt Nghiệp Tại ATHENA
Báo Cáo Thực Tập Tốt Nghiệp Tại ATHENA Báo Cáo Thực Tập Tốt Nghiệp Tại ATHENA
Báo Cáo Thực Tập Tốt Nghiệp Tại ATHENA
 
Quang cao qua mang xa hoi Facebook Twitter...
Quang cao qua mang xa hoi Facebook Twitter...Quang cao qua mang xa hoi Facebook Twitter...
Quang cao qua mang xa hoi Facebook Twitter...
 
Báo cáo thực tập tốt nghiệp xây dựng website bằng laravel
Báo cáo thực tập tốt nghiệp xây dựng website bằng laravelBáo cáo thực tập tốt nghiệp xây dựng website bằng laravel
Báo cáo thực tập tốt nghiệp xây dựng website bằng laravel
 
Báo cáo đồ án tôt nghiệp: Xây dựng Website bán hàng thông minh
Báo cáo đồ án tôt nghiệp: Xây dựng Website bán hàng thông minhBáo cáo đồ án tôt nghiệp: Xây dựng Website bán hàng thông minh
Báo cáo đồ án tôt nghiệp: Xây dựng Website bán hàng thông minh
 
Báo Cáo Thực Tập Thiết Kế Wedsite Bằng Joomla
Báo Cáo Thực Tập Thiết Kế Wedsite Bằng JoomlaBáo Cáo Thực Tập Thiết Kế Wedsite Bằng Joomla
Báo Cáo Thực Tập Thiết Kế Wedsite Bằng Joomla
 
Báo cáo thực tập - Nhơn Mỹ - Trần Nguyên An - 2016
Báo cáo thực tập - Nhơn Mỹ - Trần Nguyên An - 2016Báo cáo thực tập - Nhơn Mỹ - Trần Nguyên An - 2016
Báo cáo thực tập - Nhơn Mỹ - Trần Nguyên An - 2016
 
HOẠT ĐỘNG TRUYỀN THÔNG CỦA CÁC CƠ QUAN HÀNH CHÍNH NHÀ NƢỚC CẤP TRUNG ƢƠNG TẠI...
HOẠT ĐỘNG TRUYỀN THÔNG CỦA CÁC CƠ QUAN HÀNH CHÍNH NHÀ NƢỚC CẤP TRUNG ƢƠNG TẠI...HOẠT ĐỘNG TRUYỀN THÔNG CỦA CÁC CƠ QUAN HÀNH CHÍNH NHÀ NƢỚC CẤP TRUNG ƢƠNG TẠI...
HOẠT ĐỘNG TRUYỀN THÔNG CỦA CÁC CƠ QUAN HÀNH CHÍNH NHÀ NƢỚC CẤP TRUNG ƢƠNG TẠI...
 
đồ áN cơ sở 2 đề tài xây dựng website kinh doanh phụ kiện thú cưng
đồ áN cơ sở 2 đề tài xây dựng website kinh doanh phụ kiện thú cưngđồ áN cơ sở 2 đề tài xây dựng website kinh doanh phụ kiện thú cưng
đồ áN cơ sở 2 đề tài xây dựng website kinh doanh phụ kiện thú cưng
 
Proposal-Nhịp Cầu Doanh nhân-Điền Quân Media
Proposal-Nhịp Cầu Doanh nhân-Điền Quân Media Proposal-Nhịp Cầu Doanh nhân-Điền Quân Media
Proposal-Nhịp Cầu Doanh nhân-Điền Quân Media
 
Đề tài: Chương trình đăng ký đề tài nghiên cứu khoa học qua web
Đề tài: Chương trình đăng ký đề tài nghiên cứu khoa học qua webĐề tài: Chương trình đăng ký đề tài nghiên cứu khoa học qua web
Đề tài: Chương trình đăng ký đề tài nghiên cứu khoa học qua web
 
Hệ thống tự động phân luồng câu hỏi và giải đáp yêu cầu, 9đ
Hệ thống tự động phân luồng câu hỏi và giải đáp yêu cầu, 9đHệ thống tự động phân luồng câu hỏi và giải đáp yêu cầu, 9đ
Hệ thống tự động phân luồng câu hỏi và giải đáp yêu cầu, 9đ
 
Slide báo cáo đồ án tốt nghiệp "Website cửa hàng điện thoại trực tuyến"
Slide báo cáo đồ án tốt nghiệp "Website cửa hàng điện thoại trực tuyến"Slide báo cáo đồ án tốt nghiệp "Website cửa hàng điện thoại trực tuyến"
Slide báo cáo đồ án tốt nghiệp "Website cửa hàng điện thoại trực tuyến"
 
Baocaothuctap nguyen tuatduyen_t246
Baocaothuctap nguyen tuatduyen_t246Baocaothuctap nguyen tuatduyen_t246
Baocaothuctap nguyen tuatduyen_t246
 
Đề tài: Ứng dụng học từ vựng tiếng anh trên điện thoại, HAY, 9đ
Đề tài: Ứng dụng học từ vựng tiếng anh trên điện thoại, HAY, 9đĐề tài: Ứng dụng học từ vựng tiếng anh trên điện thoại, HAY, 9đ
Đề tài: Ứng dụng học từ vựng tiếng anh trên điện thoại, HAY, 9đ
 
Đề tài: Cài đặt một web server đơn giản trên một board vi xử lý
Đề tài: Cài đặt một web server đơn giản trên một board vi xử lýĐề tài: Cài đặt một web server đơn giản trên một board vi xử lý
Đề tài: Cài đặt một web server đơn giản trên một board vi xử lý
 
Báo cáo thực tập - Nhơn Mỹ - Nguyễn Xuân Thu- 2016
Báo cáo thực tập - Nhơn Mỹ - Nguyễn Xuân Thu- 2016Báo cáo thực tập - Nhơn Mỹ - Nguyễn Xuân Thu- 2016
Báo cáo thực tập - Nhơn Mỹ - Nguyễn Xuân Thu- 2016
 
BÁO CÁO NHẬP MÔN THƯƠNG MẠI ĐIỆN TỬ 8 ĐIỂM
BÁO CÁO NHẬP MÔN THƯƠNG MẠI ĐIỆN TỬ 8 ĐIỂMBÁO CÁO NHẬP MÔN THƯƠNG MẠI ĐIỆN TỬ 8 ĐIỂM
BÁO CÁO NHẬP MÔN THƯƠNG MẠI ĐIỆN TỬ 8 ĐIỂM
 
Báo cáo thực tập cuối kỳ đề tài xây dựng website thương mại điện tử bằng Open...
Báo cáo thực tập cuối kỳ đề tài xây dựng website thương mại điện tử bằng Open...Báo cáo thực tập cuối kỳ đề tài xây dựng website thương mại điện tử bằng Open...
Báo cáo thực tập cuối kỳ đề tài xây dựng website thương mại điện tử bằng Open...
 
Bctt hồng thắm
Bctt hồng thắmBctt hồng thắm
Bctt hồng thắm
 

Viewers also liked

Giáo trình Phân tích và thiết kế giải thuật - CHAP 1
Giáo trình Phân tích và thiết kế giải thuật - CHAP 1Giáo trình Phân tích và thiết kế giải thuật - CHAP 1
Giáo trình Phân tích và thiết kế giải thuật - CHAP 1Nguyễn Công Hoàng
 
Giáo trình Phân tích và thiết kế giải thuật - CHAP 5
Giáo trình Phân tích và thiết kế giải thuật - CHAP 5Giáo trình Phân tích và thiết kế giải thuật - CHAP 5
Giáo trình Phân tích và thiết kế giải thuật - CHAP 5Nguyễn Công Hoàng
 
Social Media for Lawyers : Networking Through the Internet
Social Media for Lawyers : Networking Through the InternetSocial Media for Lawyers : Networking Through the Internet
Social Media for Lawyers : Networking Through the InternetKevin O'Keefe
 
Síntesis Amoris Laetitia (la alegría del amor)
Síntesis Amoris Laetitia (la alegría del amor)Síntesis Amoris Laetitia (la alegría del amor)
Síntesis Amoris Laetitia (la alegría del amor)Diocesis Tlaxcala
 
ARQUITECTURA Y URBANISMO EN EL MUNDO AMERICANO ANTES DE LA CONQUISTA
ARQUITECTURA Y URBANISMO EN EL MUNDO AMERICANO ANTES DE LA CONQUISTAARQUITECTURA Y URBANISMO EN EL MUNDO AMERICANO ANTES DE LA CONQUISTA
ARQUITECTURA Y URBANISMO EN EL MUNDO AMERICANO ANTES DE LA CONQUISTAstephannie nava
 
How to Acquire Mobile Users using Facebook by Stephanie Shum
How to Acquire Mobile Users using Facebook by Stephanie Shum How to Acquire Mobile Users using Facebook by Stephanie Shum
How to Acquire Mobile Users using Facebook by Stephanie Shum Edith Yeung
 
Nanotech2010 High Throughput
Nanotech2010 High ThroughputNanotech2010 High Throughput
Nanotech2010 High ThroughputGeorge Fitzgerald
 
Yorkshire Tea – Greatest Tea Challenge
Yorkshire Tea – Greatest Tea Challenge Yorkshire Tea – Greatest Tea Challenge
Yorkshire Tea – Greatest Tea Challenge Newsworks
 
James Seow-Resume-3-8-2016
James Seow-Resume-3-8-2016James Seow-Resume-3-8-2016
James Seow-Resume-3-8-2016SEOW JAMES
 
A developers view on Material Design
A developers view on Material DesignA developers view on Material Design
A developers view on Material DesignManikanta G
 
Local SEO - Don't Risk Your Business
Local SEO - Don't Risk Your BusinessLocal SEO - Don't Risk Your Business
Local SEO - Don't Risk Your BusinessGreg Gifford
 
What can we learn from the future? - Imogen Casebourne and Lars Hyland @ Lear...
What can we learn from the future? - Imogen Casebourne and Lars Hyland @ Lear...What can we learn from the future? - Imogen Casebourne and Lars Hyland @ Lear...
What can we learn from the future? - Imogen Casebourne and Lars Hyland @ Lear...Epic
 

Viewers also liked (14)

Giáo trình Phân tích và thiết kế giải thuật - CHAP 1
Giáo trình Phân tích và thiết kế giải thuật - CHAP 1Giáo trình Phân tích và thiết kế giải thuật - CHAP 1
Giáo trình Phân tích và thiết kế giải thuật - CHAP 1
 
Giáo trình Phân tích và thiết kế giải thuật - CHAP 5
Giáo trình Phân tích và thiết kế giải thuật - CHAP 5Giáo trình Phân tích và thiết kế giải thuật - CHAP 5
Giáo trình Phân tích và thiết kế giải thuật - CHAP 5
 
Social Media for Lawyers : Networking Through the Internet
Social Media for Lawyers : Networking Through the InternetSocial Media for Lawyers : Networking Through the Internet
Social Media for Lawyers : Networking Through the Internet
 
Síntesis Amoris Laetitia (la alegría del amor)
Síntesis Amoris Laetitia (la alegría del amor)Síntesis Amoris Laetitia (la alegría del amor)
Síntesis Amoris Laetitia (la alegría del amor)
 
ARQUITECTURA Y URBANISMO EN EL MUNDO AMERICANO ANTES DE LA CONQUISTA
ARQUITECTURA Y URBANISMO EN EL MUNDO AMERICANO ANTES DE LA CONQUISTAARQUITECTURA Y URBANISMO EN EL MUNDO AMERICANO ANTES DE LA CONQUISTA
ARQUITECTURA Y URBANISMO EN EL MUNDO AMERICANO ANTES DE LA CONQUISTA
 
How to Acquire Mobile Users using Facebook by Stephanie Shum
How to Acquire Mobile Users using Facebook by Stephanie Shum How to Acquire Mobile Users using Facebook by Stephanie Shum
How to Acquire Mobile Users using Facebook by Stephanie Shum
 
Nanotech2010 High Throughput
Nanotech2010 High ThroughputNanotech2010 High Throughput
Nanotech2010 High Throughput
 
Yorkshire Tea – Greatest Tea Challenge
Yorkshire Tea – Greatest Tea Challenge Yorkshire Tea – Greatest Tea Challenge
Yorkshire Tea – Greatest Tea Challenge
 
James Seow-Resume-3-8-2016
James Seow-Resume-3-8-2016James Seow-Resume-3-8-2016
James Seow-Resume-3-8-2016
 
TESTIMONIALS
TESTIMONIALSTESTIMONIALS
TESTIMONIALS
 
Chap009
Chap009Chap009
Chap009
 
A developers view on Material Design
A developers view on Material DesignA developers view on Material Design
A developers view on Material Design
 
Local SEO - Don't Risk Your Business
Local SEO - Don't Risk Your BusinessLocal SEO - Don't Risk Your Business
Local SEO - Don't Risk Your Business
 
What can we learn from the future? - Imogen Casebourne and Lars Hyland @ Lear...
What can we learn from the future? - Imogen Casebourne and Lars Hyland @ Lear...What can we learn from the future? - Imogen Casebourne and Lars Hyland @ Lear...
What can we learn from the future? - Imogen Casebourne and Lars Hyland @ Lear...
 

Similar to Nguyenvanha 20102648

Tiểu luận thẩm định dự án đầu tư trung tâm kỹ năng Anoz5
Tiểu luận thẩm định dự án đầu tư trung tâm kỹ năng Anoz5Tiểu luận thẩm định dự án đầu tư trung tâm kỹ năng Anoz5
Tiểu luận thẩm định dự án đầu tư trung tâm kỹ năng Anoz5Dịch vụ Làm Luận Văn 0936885877
 
Đánh giá sự hài lòng của khách hàng đối với dịch vụ Internet ADSL của FPT tại...
Đánh giá sự hài lòng của khách hàng đối với dịch vụ Internet ADSL của FPT tại...Đánh giá sự hài lòng của khách hàng đối với dịch vụ Internet ADSL của FPT tại...
Đánh giá sự hài lòng của khách hàng đối với dịch vụ Internet ADSL của FPT tại...luanvantrust
 
Luận Văn Xây Dựng Website Bán Hàng Đa Cấp Bằng Asp.Net.doc
Luận Văn Xây Dựng Website Bán Hàng Đa Cấp Bằng Asp.Net.docLuận Văn Xây Dựng Website Bán Hàng Đa Cấp Bằng Asp.Net.doc
Luận Văn Xây Dựng Website Bán Hàng Đa Cấp Bằng Asp.Net.doctcoco3199
 
Luận Văn Tim Hiểu Dịch Vụ Web Cho Thiết Bị Di Dộng Va Ứng Dụng.doc
Luận Văn Tim Hiểu Dịch Vụ Web Cho Thiết Bị Di Dộng Va Ứng Dụng.docLuận Văn Tim Hiểu Dịch Vụ Web Cho Thiết Bị Di Dộng Va Ứng Dụng.doc
Luận Văn Tim Hiểu Dịch Vụ Web Cho Thiết Bị Di Dộng Va Ứng Dụng.docsividocz
 
Bao cao thuc tap athena - Phạm Thành Phước
Bao cao thuc tap athena - Phạm Thành PhướcBao cao thuc tap athena - Phạm Thành Phước
Bao cao thuc tap athena - Phạm Thành Phướcthanhphuocbt
 
Ql du an phan mem tren web
Ql du an phan mem tren webQl du an phan mem tren web
Ql du an phan mem tren webVcoi Vit
 
Quan ly du_an_phan_mem_tren_web
Quan ly du_an_phan_mem_tren_webQuan ly du_an_phan_mem_tren_web
Quan ly du_an_phan_mem_tren_webViet Nam
 
Quan ly du_an_phan_mem_tren_web
Quan ly du_an_phan_mem_tren_webQuan ly du_an_phan_mem_tren_web
Quan ly du_an_phan_mem_tren_webDuy Vọng
 
Luận Văn Xây Dựng Hệ Thống Hóa Đơn Điện Tử Trên Nền Tảng Web Sử Dụng Các Dịch...
Luận Văn Xây Dựng Hệ Thống Hóa Đơn Điện Tử Trên Nền Tảng Web Sử Dụng Các Dịch...Luận Văn Xây Dựng Hệ Thống Hóa Đơn Điện Tử Trên Nền Tảng Web Sử Dụng Các Dịch...
Luận Văn Xây Dựng Hệ Thống Hóa Đơn Điện Tử Trên Nền Tảng Web Sử Dụng Các Dịch...sividocz
 
CÁC YẾU TỐ ẢNH HƯỞNG ĐẾN QUYẾT ĐỊNH MUA SẮM MẶT HÀNG THỜI TRANG CÔNG SỞ NỮ TR...
CÁC YẾU TỐ ẢNH HƯỞNG ĐẾN QUYẾT ĐỊNH MUA SẮM MẶT HÀNG THỜI TRANG CÔNG SỞ NỮ TR...CÁC YẾU TỐ ẢNH HƯỞNG ĐẾN QUYẾT ĐỊNH MUA SẮM MẶT HÀNG THỜI TRANG CÔNG SỞ NỮ TR...
CÁC YẾU TỐ ẢNH HƯỞNG ĐẾN QUYẾT ĐỊNH MUA SẮM MẶT HÀNG THỜI TRANG CÔNG SỞ NỮ TR...lamluanvan.net Viết thuê luận văn
 
Đề tài Thực Trạng Hoạt Động Kinh Doanh Tại Công Ty Cp Thiết Kế Xây Lắp Viễn Đ...
Đề tài Thực Trạng Hoạt Động Kinh Doanh Tại Công Ty Cp Thiết Kế Xây Lắp Viễn Đ...Đề tài Thực Trạng Hoạt Động Kinh Doanh Tại Công Ty Cp Thiết Kế Xây Lắp Viễn Đ...
Đề tài Thực Trạng Hoạt Động Kinh Doanh Tại Công Ty Cp Thiết Kế Xây Lắp Viễn Đ...sividocz
 
Báo cáo Đào tạo TMĐT 2022 - Bằng Lái Xe Quốc tế
Báo cáo Đào tạo TMĐT 2022 - Bằng Lái Xe Quốc tếBáo cáo Đào tạo TMĐT 2022 - Bằng Lái Xe Quốc tế
Báo cáo Đào tạo TMĐT 2022 - Bằng Lái Xe Quốc tếBBcom
 
Nghiên cứu khoa học Những Yếu Tố Ảnh Hưởng Đến Ý Định Đặt Chỗ Điện Tử Của Ngư...
Nghiên cứu khoa học Những Yếu Tố Ảnh Hưởng Đến Ý Định Đặt Chỗ Điện Tử Của Ngư...Nghiên cứu khoa học Những Yếu Tố Ảnh Hưởng Đến Ý Định Đặt Chỗ Điện Tử Của Ngư...
Nghiên cứu khoa học Những Yếu Tố Ảnh Hưởng Đến Ý Định Đặt Chỗ Điện Tử Của Ngư...Dịch vụ Làm Luận Văn 0936885877
 
Luận văn ngàng công nghệ thông tin Hệ Thống Quản Lý Dịch Vụ Đi Chợ Thuê.doc
Luận văn ngàng công nghệ thông tin Hệ Thống Quản Lý Dịch Vụ Đi Chợ Thuê.docLuận văn ngàng công nghệ thông tin Hệ Thống Quản Lý Dịch Vụ Đi Chợ Thuê.doc
Luận văn ngàng công nghệ thông tin Hệ Thống Quản Lý Dịch Vụ Đi Chợ Thuê.docsividocz
 
Xay dung dich_vu_thuong_mai_dien_tu
Xay dung dich_vu_thuong_mai_dien_tuXay dung dich_vu_thuong_mai_dien_tu
Xay dung dich_vu_thuong_mai_dien_tuViet Nam
 
Xay dung dich_vu_thuong_mai_dien_tu
Xay dung dich_vu_thuong_mai_dien_tuXay dung dich_vu_thuong_mai_dien_tu
Xay dung dich_vu_thuong_mai_dien_tuDuy Vọng
 
Đồ án xây dựng website trang báo thương mại điện tử
Đồ án xây dựng website trang báo thương mại điện tử Đồ án xây dựng website trang báo thương mại điện tử
Đồ án xây dựng website trang báo thương mại điện tử Luanvantot.com 0934.573.149
 

Similar to Nguyenvanha 20102648 (20)

Xây Dựng Hệ Thống Thông Tin Phục Vụ Thi Trắc Nghiệm Trực Tuyến.doc
Xây Dựng Hệ Thống Thông Tin Phục Vụ Thi Trắc Nghiệm Trực Tuyến.docXây Dựng Hệ Thống Thông Tin Phục Vụ Thi Trắc Nghiệm Trực Tuyến.doc
Xây Dựng Hệ Thống Thông Tin Phục Vụ Thi Trắc Nghiệm Trực Tuyến.doc
 
Tiểu luận thẩm định dự án đầu tư trung tâm kỹ năng Anoz5
Tiểu luận thẩm định dự án đầu tư trung tâm kỹ năng Anoz5Tiểu luận thẩm định dự án đầu tư trung tâm kỹ năng Anoz5
Tiểu luận thẩm định dự án đầu tư trung tâm kỹ năng Anoz5
 
Đánh giá sự hài lòng của khách hàng đối với dịch vụ Internet ADSL của FPT tại...
Đánh giá sự hài lòng của khách hàng đối với dịch vụ Internet ADSL của FPT tại...Đánh giá sự hài lòng của khách hàng đối với dịch vụ Internet ADSL của FPT tại...
Đánh giá sự hài lòng của khách hàng đối với dịch vụ Internet ADSL của FPT tại...
 
Luận Văn Xây Dựng Website Bán Hàng Đa Cấp Bằng Asp.Net.doc
Luận Văn Xây Dựng Website Bán Hàng Đa Cấp Bằng Asp.Net.docLuận Văn Xây Dựng Website Bán Hàng Đa Cấp Bằng Asp.Net.doc
Luận Văn Xây Dựng Website Bán Hàng Đa Cấp Bằng Asp.Net.doc
 
Luận Văn Tim Hiểu Dịch Vụ Web Cho Thiết Bị Di Dộng Va Ứng Dụng.doc
Luận Văn Tim Hiểu Dịch Vụ Web Cho Thiết Bị Di Dộng Va Ứng Dụng.docLuận Văn Tim Hiểu Dịch Vụ Web Cho Thiết Bị Di Dộng Va Ứng Dụng.doc
Luận Văn Tim Hiểu Dịch Vụ Web Cho Thiết Bị Di Dộng Va Ứng Dụng.doc
 
Bao cao thuc tap athena - Phạm Thành Phước
Bao cao thuc tap athena - Phạm Thành PhướcBao cao thuc tap athena - Phạm Thành Phước
Bao cao thuc tap athena - Phạm Thành Phước
 
Ql du an phan mem tren web
Ql du an phan mem tren webQl du an phan mem tren web
Ql du an phan mem tren web
 
Quan ly du_an_phan_mem_tren_web
Quan ly du_an_phan_mem_tren_webQuan ly du_an_phan_mem_tren_web
Quan ly du_an_phan_mem_tren_web
 
Quan ly du_an_phan_mem_tren_web
Quan ly du_an_phan_mem_tren_webQuan ly du_an_phan_mem_tren_web
Quan ly du_an_phan_mem_tren_web
 
Luận Văn Xây Dựng Hệ Thống Hóa Đơn Điện Tử Trên Nền Tảng Web Sử Dụng Các Dịch...
Luận Văn Xây Dựng Hệ Thống Hóa Đơn Điện Tử Trên Nền Tảng Web Sử Dụng Các Dịch...Luận Văn Xây Dựng Hệ Thống Hóa Đơn Điện Tử Trên Nền Tảng Web Sử Dụng Các Dịch...
Luận Văn Xây Dựng Hệ Thống Hóa Đơn Điện Tử Trên Nền Tảng Web Sử Dụng Các Dịch...
 
CÁC YẾU TỐ ẢNH HƯỞNG ĐẾN QUYẾT ĐỊNH MUA SẮM MẶT HÀNG THỜI TRANG CÔNG SỞ NỮ TR...
CÁC YẾU TỐ ẢNH HƯỞNG ĐẾN QUYẾT ĐỊNH MUA SẮM MẶT HÀNG THỜI TRANG CÔNG SỞ NỮ TR...CÁC YẾU TỐ ẢNH HƯỞNG ĐẾN QUYẾT ĐỊNH MUA SẮM MẶT HÀNG THỜI TRANG CÔNG SỞ NỮ TR...
CÁC YẾU TỐ ẢNH HƯỞNG ĐẾN QUYẾT ĐỊNH MUA SẮM MẶT HÀNG THỜI TRANG CÔNG SỞ NỮ TR...
 
Đề tài Thực Trạng Hoạt Động Kinh Doanh Tại Công Ty Cp Thiết Kế Xây Lắp Viễn Đ...
Đề tài Thực Trạng Hoạt Động Kinh Doanh Tại Công Ty Cp Thiết Kế Xây Lắp Viễn Đ...Đề tài Thực Trạng Hoạt Động Kinh Doanh Tại Công Ty Cp Thiết Kế Xây Lắp Viễn Đ...
Đề tài Thực Trạng Hoạt Động Kinh Doanh Tại Công Ty Cp Thiết Kế Xây Lắp Viễn Đ...
 
Báo cáo Đào tạo TMĐT 2022 - Bằng Lái Xe Quốc tế
Báo cáo Đào tạo TMĐT 2022 - Bằng Lái Xe Quốc tếBáo cáo Đào tạo TMĐT 2022 - Bằng Lái Xe Quốc tế
Báo cáo Đào tạo TMĐT 2022 - Bằng Lái Xe Quốc tế
 
Nghiên cứu khoa học Những Yếu Tố Ảnh Hưởng Đến Ý Định Đặt Chỗ Điện Tử Của Ngư...
Nghiên cứu khoa học Những Yếu Tố Ảnh Hưởng Đến Ý Định Đặt Chỗ Điện Tử Của Ngư...Nghiên cứu khoa học Những Yếu Tố Ảnh Hưởng Đến Ý Định Đặt Chỗ Điện Tử Của Ngư...
Nghiên cứu khoa học Những Yếu Tố Ảnh Hưởng Đến Ý Định Đặt Chỗ Điện Tử Của Ngư...
 
Luận văn ngàng công nghệ thông tin Hệ Thống Quản Lý Dịch Vụ Đi Chợ Thuê.doc
Luận văn ngàng công nghệ thông tin Hệ Thống Quản Lý Dịch Vụ Đi Chợ Thuê.docLuận văn ngàng công nghệ thông tin Hệ Thống Quản Lý Dịch Vụ Đi Chợ Thuê.doc
Luận văn ngàng công nghệ thông tin Hệ Thống Quản Lý Dịch Vụ Đi Chợ Thuê.doc
 
Xay dung dich_vu_thuong_mai_dien_tu
Xay dung dich_vu_thuong_mai_dien_tuXay dung dich_vu_thuong_mai_dien_tu
Xay dung dich_vu_thuong_mai_dien_tu
 
Xay dung dich_vu_thuong_mai_dien_tu
Xay dung dich_vu_thuong_mai_dien_tuXay dung dich_vu_thuong_mai_dien_tu
Xay dung dich_vu_thuong_mai_dien_tu
 
Đồ án xây dựng website trang báo thương mại điện tử
Đồ án xây dựng website trang báo thương mại điện tử Đồ án xây dựng website trang báo thương mại điện tử
Đồ án xây dựng website trang báo thương mại điện tử
 
Phát triển hoạt động truyền thông mạng xã hội Facebook cho các sản phẩm của C...
Phát triển hoạt động truyền thông mạng xã hội Facebook cho các sản phẩm của C...Phát triển hoạt động truyền thông mạng xã hội Facebook cho các sản phẩm của C...
Phát triển hoạt động truyền thông mạng xã hội Facebook cho các sản phẩm của C...
 
Xây dựng kế hoạch truyền thông của hệ thống trường việt mỹ tại nhà thiếu nhi ...
Xây dựng kế hoạch truyền thông của hệ thống trường việt mỹ tại nhà thiếu nhi ...Xây dựng kế hoạch truyền thông của hệ thống trường việt mỹ tại nhà thiếu nhi ...
Xây dựng kế hoạch truyền thông của hệ thống trường việt mỹ tại nhà thiếu nhi ...
 

Recently uploaded

TÀI LIỆU BỒI DƯỠNG HỌC SINH GIỎI LÝ LUẬN VĂN HỌC NĂM HỌC 2023-2024 - MÔN NGỮ ...
TÀI LIỆU BỒI DƯỠNG HỌC SINH GIỎI LÝ LUẬN VĂN HỌC NĂM HỌC 2023-2024 - MÔN NGỮ ...TÀI LIỆU BỒI DƯỠNG HỌC SINH GIỎI LÝ LUẬN VĂN HỌC NĂM HỌC 2023-2024 - MÔN NGỮ ...
TÀI LIỆU BỒI DƯỠNG HỌC SINH GIỎI LÝ LUẬN VĂN HỌC NĂM HỌC 2023-2024 - MÔN NGỮ ...Nguyen Thanh Tu Collection
 
cac-cau-noi-tthcm.pdf-cac-cau-noi-tthcm-
cac-cau-noi-tthcm.pdf-cac-cau-noi-tthcm-cac-cau-noi-tthcm.pdf-cac-cau-noi-tthcm-
cac-cau-noi-tthcm.pdf-cac-cau-noi-tthcm-KhnhHuyn546843
 
sách sinh học đại cương - Textbook.pdf
sách sinh học đại cương   -   Textbook.pdfsách sinh học đại cương   -   Textbook.pdf
sách sinh học đại cương - Textbook.pdfTrnHoa46
 
Các điều kiện bảo hiểm trong bảo hiểm hàng hoá
Các điều kiện bảo hiểm trong bảo hiểm hàng hoáCác điều kiện bảo hiểm trong bảo hiểm hàng hoá
Các điều kiện bảo hiểm trong bảo hiểm hàng hoámyvh40253
 
SÁNG KIẾN ÁP DỤNG CLT (COMMUNICATIVE LANGUAGE TEACHING) VÀO QUÁ TRÌNH DẠY - H...
SÁNG KIẾN ÁP DỤNG CLT (COMMUNICATIVE LANGUAGE TEACHING) VÀO QUÁ TRÌNH DẠY - H...SÁNG KIẾN ÁP DỤNG CLT (COMMUNICATIVE LANGUAGE TEACHING) VÀO QUÁ TRÌNH DẠY - H...
SÁNG KIẾN ÁP DỤNG CLT (COMMUNICATIVE LANGUAGE TEACHING) VÀO QUÁ TRÌNH DẠY - H...Nguyen Thanh Tu Collection
 
GIÁO TRÌNH KHỐI NGUỒN CÁC LOẠI - ĐIỆN LẠNH BÁCH KHOA HÀ NỘI
GIÁO TRÌNH  KHỐI NGUỒN CÁC LOẠI - ĐIỆN LẠNH BÁCH KHOA HÀ NỘIGIÁO TRÌNH  KHỐI NGUỒN CÁC LOẠI - ĐIỆN LẠNH BÁCH KHOA HÀ NỘI
GIÁO TRÌNH KHỐI NGUỒN CÁC LOẠI - ĐIỆN LẠNH BÁCH KHOA HÀ NỘIĐiện Lạnh Bách Khoa Hà Nội
 
Kiểm tra cuối học kì 1 sinh học 12 đề tham khảo
Kiểm tra cuối học kì 1 sinh học 12 đề tham khảoKiểm tra cuối học kì 1 sinh học 12 đề tham khảo
Kiểm tra cuối học kì 1 sinh học 12 đề tham khảohoanhv296
 
Giới thiệu Dự án Sản Phụ Khoa - Y Học Cộng Đồng
Giới thiệu Dự án Sản Phụ Khoa - Y Học Cộng ĐồngGiới thiệu Dự án Sản Phụ Khoa - Y Học Cộng Đồng
Giới thiệu Dự án Sản Phụ Khoa - Y Học Cộng ĐồngYhoccongdong.com
 
SLIDE - Tu van, huong dan cong tac tuyen sinh-2024 (đầy đủ chi tiết).pdf
SLIDE - Tu van, huong dan cong tac tuyen sinh-2024 (đầy đủ chi tiết).pdfSLIDE - Tu van, huong dan cong tac tuyen sinh-2024 (đầy đủ chi tiết).pdf
SLIDE - Tu van, huong dan cong tac tuyen sinh-2024 (đầy đủ chi tiết).pdfhoangtuansinh1
 
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...Nguyen Thanh Tu Collection
 
GIÁO ÁN DẠY THÊM (KẾ HOẠCH BÀI DẠY BUỔI 2) - TIẾNG ANH 7 GLOBAL SUCCESS (2 CỘ...
GIÁO ÁN DẠY THÊM (KẾ HOẠCH BÀI DẠY BUỔI 2) - TIẾNG ANH 7 GLOBAL SUCCESS (2 CỘ...GIÁO ÁN DẠY THÊM (KẾ HOẠCH BÀI DẠY BUỔI 2) - TIẾNG ANH 7 GLOBAL SUCCESS (2 CỘ...
GIÁO ÁN DẠY THÊM (KẾ HOẠCH BÀI DẠY BUỔI 2) - TIẾNG ANH 7 GLOBAL SUCCESS (2 CỘ...Nguyen Thanh Tu Collection
 
powerpoint mẫu họp phụ huynh cuối kì 2 học sinh lớp 7 bgs
powerpoint mẫu họp phụ huynh cuối kì 2 học sinh lớp 7 bgspowerpoint mẫu họp phụ huynh cuối kì 2 học sinh lớp 7 bgs
powerpoint mẫu họp phụ huynh cuối kì 2 học sinh lớp 7 bgsNmmeomeo
 
Đề cương môn giải phẫu......................
Đề cương môn giải phẫu......................Đề cương môn giải phẫu......................
Đề cương môn giải phẫu......................TrnHoa46
 
1.DOANNGOCPHUONGTHAO-APDUNGSTEMTHIETKEBTHHHGIUPHSHOCHIEUQUA (1).docx
1.DOANNGOCPHUONGTHAO-APDUNGSTEMTHIETKEBTHHHGIUPHSHOCHIEUQUA (1).docx1.DOANNGOCPHUONGTHAO-APDUNGSTEMTHIETKEBTHHHGIUPHSHOCHIEUQUA (1).docx
1.DOANNGOCPHUONGTHAO-APDUNGSTEMTHIETKEBTHHHGIUPHSHOCHIEUQUA (1).docxTHAO316680
 
3-BẢNG MÃ LỖI CỦA CÁC HÃNG ĐIỀU HÒA .pdf - ĐIỆN LẠNH BÁCH KHOA HÀ NỘI
3-BẢNG MÃ LỖI CỦA CÁC HÃNG ĐIỀU HÒA .pdf - ĐIỆN LẠNH BÁCH KHOA HÀ NỘI3-BẢNG MÃ LỖI CỦA CÁC HÃNG ĐIỀU HÒA .pdf - ĐIỆN LẠNH BÁCH KHOA HÀ NỘI
3-BẢNG MÃ LỖI CỦA CÁC HÃNG ĐIỀU HÒA .pdf - ĐIỆN LẠNH BÁCH KHOA HÀ NỘIĐiện Lạnh Bách Khoa Hà Nội
 
kinh tế chính trị mác lênin chương hai và hàng hoá và sxxhh
kinh tế chính trị mác lênin chương hai và hàng hoá và sxxhhkinh tế chính trị mác lênin chương hai và hàng hoá và sxxhh
kinh tế chính trị mác lênin chương hai và hàng hoá và sxxhhdtlnnm
 
PHƯƠNG THỨC VẬN TẢI ĐƯỜNG SẮT TRONG VẬN TẢI
PHƯƠNG THỨC VẬN TẢI ĐƯỜNG SẮT TRONG VẬN TẢIPHƯƠNG THỨC VẬN TẢI ĐƯỜNG SẮT TRONG VẬN TẢI
PHƯƠNG THỨC VẬN TẢI ĐƯỜNG SẮT TRONG VẬN TẢImyvh40253
 
BỘ LUYỆN NGHE VÀO 10 TIẾNG ANH DẠNG TRẮC NGHIỆM 4 CÂU TRẢ LỜI - CÓ FILE NGHE.pdf
BỘ LUYỆN NGHE VÀO 10 TIẾNG ANH DẠNG TRẮC NGHIỆM 4 CÂU TRẢ LỜI - CÓ FILE NGHE.pdfBỘ LUYỆN NGHE VÀO 10 TIẾNG ANH DẠNG TRẮC NGHIỆM 4 CÂU TRẢ LỜI - CÓ FILE NGHE.pdf
BỘ LUYỆN NGHE VÀO 10 TIẾNG ANH DẠNG TRẮC NGHIỆM 4 CÂU TRẢ LỜI - CÓ FILE NGHE.pdfNguyen Thanh Tu Collection
 
GNHH và KBHQ - giao nhận hàng hoá và khai báo hải quan
GNHH và KBHQ - giao nhận hàng hoá và khai báo hải quanGNHH và KBHQ - giao nhận hàng hoá và khai báo hải quan
GNHH và KBHQ - giao nhận hàng hoá và khai báo hải quanmyvh40253
 

Recently uploaded (20)

TÀI LIỆU BỒI DƯỠNG HỌC SINH GIỎI LÝ LUẬN VĂN HỌC NĂM HỌC 2023-2024 - MÔN NGỮ ...
TÀI LIỆU BỒI DƯỠNG HỌC SINH GIỎI LÝ LUẬN VĂN HỌC NĂM HỌC 2023-2024 - MÔN NGỮ ...TÀI LIỆU BỒI DƯỠNG HỌC SINH GIỎI LÝ LUẬN VĂN HỌC NĂM HỌC 2023-2024 - MÔN NGỮ ...
TÀI LIỆU BỒI DƯỠNG HỌC SINH GIỎI LÝ LUẬN VĂN HỌC NĂM HỌC 2023-2024 - MÔN NGỮ ...
 
cac-cau-noi-tthcm.pdf-cac-cau-noi-tthcm-
cac-cau-noi-tthcm.pdf-cac-cau-noi-tthcm-cac-cau-noi-tthcm.pdf-cac-cau-noi-tthcm-
cac-cau-noi-tthcm.pdf-cac-cau-noi-tthcm-
 
sách sinh học đại cương - Textbook.pdf
sách sinh học đại cương   -   Textbook.pdfsách sinh học đại cương   -   Textbook.pdf
sách sinh học đại cương - Textbook.pdf
 
Các điều kiện bảo hiểm trong bảo hiểm hàng hoá
Các điều kiện bảo hiểm trong bảo hiểm hàng hoáCác điều kiện bảo hiểm trong bảo hiểm hàng hoá
Các điều kiện bảo hiểm trong bảo hiểm hàng hoá
 
SÁNG KIẾN ÁP DỤNG CLT (COMMUNICATIVE LANGUAGE TEACHING) VÀO QUÁ TRÌNH DẠY - H...
SÁNG KIẾN ÁP DỤNG CLT (COMMUNICATIVE LANGUAGE TEACHING) VÀO QUÁ TRÌNH DẠY - H...SÁNG KIẾN ÁP DỤNG CLT (COMMUNICATIVE LANGUAGE TEACHING) VÀO QUÁ TRÌNH DẠY - H...
SÁNG KIẾN ÁP DỤNG CLT (COMMUNICATIVE LANGUAGE TEACHING) VÀO QUÁ TRÌNH DẠY - H...
 
GIÁO TRÌNH KHỐI NGUỒN CÁC LOẠI - ĐIỆN LẠNH BÁCH KHOA HÀ NỘI
GIÁO TRÌNH  KHỐI NGUỒN CÁC LOẠI - ĐIỆN LẠNH BÁCH KHOA HÀ NỘIGIÁO TRÌNH  KHỐI NGUỒN CÁC LOẠI - ĐIỆN LẠNH BÁCH KHOA HÀ NỘI
GIÁO TRÌNH KHỐI NGUỒN CÁC LOẠI - ĐIỆN LẠNH BÁCH KHOA HÀ NỘI
 
Kiểm tra cuối học kì 1 sinh học 12 đề tham khảo
Kiểm tra cuối học kì 1 sinh học 12 đề tham khảoKiểm tra cuối học kì 1 sinh học 12 đề tham khảo
Kiểm tra cuối học kì 1 sinh học 12 đề tham khảo
 
Giới thiệu Dự án Sản Phụ Khoa - Y Học Cộng Đồng
Giới thiệu Dự án Sản Phụ Khoa - Y Học Cộng ĐồngGiới thiệu Dự án Sản Phụ Khoa - Y Học Cộng Đồng
Giới thiệu Dự án Sản Phụ Khoa - Y Học Cộng Đồng
 
SLIDE - Tu van, huong dan cong tac tuyen sinh-2024 (đầy đủ chi tiết).pdf
SLIDE - Tu van, huong dan cong tac tuyen sinh-2024 (đầy đủ chi tiết).pdfSLIDE - Tu van, huong dan cong tac tuyen sinh-2024 (đầy đủ chi tiết).pdf
SLIDE - Tu van, huong dan cong tac tuyen sinh-2024 (đầy đủ chi tiết).pdf
 
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
 
GIÁO ÁN DẠY THÊM (KẾ HOẠCH BÀI DẠY BUỔI 2) - TIẾNG ANH 7 GLOBAL SUCCESS (2 CỘ...
GIÁO ÁN DẠY THÊM (KẾ HOẠCH BÀI DẠY BUỔI 2) - TIẾNG ANH 7 GLOBAL SUCCESS (2 CỘ...GIÁO ÁN DẠY THÊM (KẾ HOẠCH BÀI DẠY BUỔI 2) - TIẾNG ANH 7 GLOBAL SUCCESS (2 CỘ...
GIÁO ÁN DẠY THÊM (KẾ HOẠCH BÀI DẠY BUỔI 2) - TIẾNG ANH 7 GLOBAL SUCCESS (2 CỘ...
 
powerpoint mẫu họp phụ huynh cuối kì 2 học sinh lớp 7 bgs
powerpoint mẫu họp phụ huynh cuối kì 2 học sinh lớp 7 bgspowerpoint mẫu họp phụ huynh cuối kì 2 học sinh lớp 7 bgs
powerpoint mẫu họp phụ huynh cuối kì 2 học sinh lớp 7 bgs
 
Đề cương môn giải phẫu......................
Đề cương môn giải phẫu......................Đề cương môn giải phẫu......................
Đề cương môn giải phẫu......................
 
1.DOANNGOCPHUONGTHAO-APDUNGSTEMTHIETKEBTHHHGIUPHSHOCHIEUQUA (1).docx
1.DOANNGOCPHUONGTHAO-APDUNGSTEMTHIETKEBTHHHGIUPHSHOCHIEUQUA (1).docx1.DOANNGOCPHUONGTHAO-APDUNGSTEMTHIETKEBTHHHGIUPHSHOCHIEUQUA (1).docx
1.DOANNGOCPHUONGTHAO-APDUNGSTEMTHIETKEBTHHHGIUPHSHOCHIEUQUA (1).docx
 
3-BẢNG MÃ LỖI CỦA CÁC HÃNG ĐIỀU HÒA .pdf - ĐIỆN LẠNH BÁCH KHOA HÀ NỘI
3-BẢNG MÃ LỖI CỦA CÁC HÃNG ĐIỀU HÒA .pdf - ĐIỆN LẠNH BÁCH KHOA HÀ NỘI3-BẢNG MÃ LỖI CỦA CÁC HÃNG ĐIỀU HÒA .pdf - ĐIỆN LẠNH BÁCH KHOA HÀ NỘI
3-BẢNG MÃ LỖI CỦA CÁC HÃNG ĐIỀU HÒA .pdf - ĐIỆN LẠNH BÁCH KHOA HÀ NỘI
 
kinh tế chính trị mác lênin chương hai và hàng hoá và sxxhh
kinh tế chính trị mác lênin chương hai và hàng hoá và sxxhhkinh tế chính trị mác lênin chương hai và hàng hoá và sxxhh
kinh tế chính trị mác lênin chương hai và hàng hoá và sxxhh
 
1 - MÃ LỖI SỬA CHỮA BOARD MẠCH BẾP TỪ.pdf
1 - MÃ LỖI SỬA CHỮA BOARD MẠCH BẾP TỪ.pdf1 - MÃ LỖI SỬA CHỮA BOARD MẠCH BẾP TỪ.pdf
1 - MÃ LỖI SỬA CHỮA BOARD MẠCH BẾP TỪ.pdf
 
PHƯƠNG THỨC VẬN TẢI ĐƯỜNG SẮT TRONG VẬN TẢI
PHƯƠNG THỨC VẬN TẢI ĐƯỜNG SẮT TRONG VẬN TẢIPHƯƠNG THỨC VẬN TẢI ĐƯỜNG SẮT TRONG VẬN TẢI
PHƯƠNG THỨC VẬN TẢI ĐƯỜNG SẮT TRONG VẬN TẢI
 
BỘ LUYỆN NGHE VÀO 10 TIẾNG ANH DẠNG TRẮC NGHIỆM 4 CÂU TRẢ LỜI - CÓ FILE NGHE.pdf
BỘ LUYỆN NGHE VÀO 10 TIẾNG ANH DẠNG TRẮC NGHIỆM 4 CÂU TRẢ LỜI - CÓ FILE NGHE.pdfBỘ LUYỆN NGHE VÀO 10 TIẾNG ANH DẠNG TRẮC NGHIỆM 4 CÂU TRẢ LỜI - CÓ FILE NGHE.pdf
BỘ LUYỆN NGHE VÀO 10 TIẾNG ANH DẠNG TRẮC NGHIỆM 4 CÂU TRẢ LỜI - CÓ FILE NGHE.pdf
 
GNHH và KBHQ - giao nhận hàng hoá và khai báo hải quan
GNHH và KBHQ - giao nhận hàng hoá và khai báo hải quanGNHH và KBHQ - giao nhận hàng hoá và khai báo hải quan
GNHH và KBHQ - giao nhận hàng hoá và khai báo hải quan
 

Nguyenvanha 20102648

  • 1. ĐẠI HỌC BÁCH KHOA HÀ NỘI VIỆN CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG ──────── * ──────── ĐỒ ÁN TỐT NGHIỆP ĐẠI HỌC NGÀNH CÔNG NGHỆ THÔNG TIN XÂY DỰNG THUẬT TOÁN PHÂN CÔNG GIAO HÀNG CHO HỆ THỐNG CHỢ ĐIỆN TỬ TRỰC TUYẾN MBAY Sinh viên thực hiện: Nguyễn Văn Hạ Lớp CNTT2-K55 Giáo viên hướng dẫn: ThS Vũ Đức Vượng HÀ NỘI 5-2015
  • 2. HUST SOICT Xây dựng thuật toán phân công giao việc cho hệ thống MBay ĐATN 2015 Sinh viên Nguyễn Văn Hạ SHSV: 20102648 Lớp: CNTT2-K55 Trang 2 PHIẾU GIAO NHIỆM VỤ ĐỒ ÁN TỐT NGHIỆP 1. Thông tin về sinh viên Họ và tên sinh viên: Nguyễn Văn hạ Điện thoại liên lạc: 0966706637 Email: nvhabk@gmail.com Lớp: Công nghệ thông tin 2 Hệ đào tạo: Đại học chính quy Đồ án tốt nghiệp được thực hiện tại: Đại học Bách Khoa Hà Nội. Thời gian làm ĐATN: Từ ngày 01/02/2015 đến 25/05 /2015. 2. Mục đích nội dung của ĐATN Mục đích nhóm: Xây dựng hệ thống chợ điện tử trực tuyến Mbay trên nền Mobile và Web nhằm hỗ trợ một cách trực tiếp và hiệu quả cho các khách hàng, chủ cửa hàng và nhân viên giao hàng trong công việc của họ. Mục đích cá nhân: Xây dựng thuật toán gợi ý phân công giao việc tự động cho hệ thống Mbay. 3. Các nhiệm vụ cụ thể của ĐATN • Phân tích các chức năng của hệ thống, phân việc cho thành viên trong nhóm • Thuật toán phân công giao hàng trực tuyến • Tìm hiểu thuật toán đàn kiến, bài toán người du lịch, thuật toán tối ưu đàn kiến ACO • Tạo ứng dụng tự động phân công giao hàng trực tuyến 4. Lời cam đoan của sinh viên: Tôi – Nguyễn Văn Hạ - cam kết ĐATN là công trình nghiên cứu của bản thân tôi dưới sự hướng dẫn của ThS Vũ Đức Vượng Các kết quả nêu trong ĐATN là trung thực, không phải là sao chép toàn văn của bất kỳ công trình nào khác. Hà Nội, Ngày 08 tháng 03 năm 2015 Tác giả ĐATN Nguyễn Văn Hạ 5. Xác nhận của giáo viên hướng dẫn về mức độ hoàn thành của ĐATN và cho phép bảo vệ: Hà Nội, Ngày 20 tháng 05 năm 2015 Giáo viên hướng dẫn Vũ Đức Vượng
  • 3. HUST SOICT Xây dựng thuật toán phân công giao việc cho hệ thống MBay ĐATN 2015 Sinh viên Nguyễn Văn Hạ SHSV: 20102648 Lớp: CNTT2-K55 Trang 3 TÓM TẮT ĐỒ ÁN Đồ án tốt nghiệp có tên “XÂY DỰNG THUẬT TOÁN PHÂN CÔNG GIAO HÀNG CHO HỆ THỐNG CHỢ ĐIỆN TỬ TRỰC TUYẾN MBAY”. Đây là một ứng dụng phục vụ hoạt động thương mại điện tử chạy trên Web và mobile, cho phép người tiêu dùng dễ tìm kiếm các sản phẩm giá rẻ gần nơi họ sinh sống, so sánh được giá cả trên thị trường, tìm hiểu thông tin sản phẩm, đặt mua. Giúp doanh nghiệp, cửa hàng giới thiệu các sản phẩm tới người tiêu dùng, và phân công giao hàng, thống kê về tài chính. Giúp người giao hàng tìm được lộ trình đường đi một cách tội ưu nhất nhằm giảm chi phí, tối ưu hóa lợi nhuận. Ứng dụng là một phần trong cơ sở hạ tầng cần xây dựng để đáp ứng được hoạt động thương mại điện tử đang ngày một khởi sắc tại Việt Nam. Đồ án đã đi sâu vào khảo sát sự phát triển của thương mại điện tử, sự phát triển của smartphone, các mối quan hệ giữa chúng cũng như hiện trạng các giải pháp để thoả mãn các nhu cầu về thương mại điện tử. Từ những điểm mạnh và điểm hạn chế được rút ra, ứng dụng được triển khai phù hợp với hiện trạng thương mại điện tử nước nhà. Bên cạnh việc nghiên cứu các vấn đề và giải pháp, trong khuôn khổ đồ án cũng nói chi tiết viêc thiết kế và cài đặt một ứng dụng hỗ trợ việc bán hàng trực tuyến Mbay định hướng theo giải pháp được nêu ra. Một số ý tưởng và yêu cầu cơ bản đã được triển khai thành công trong ứng dụng. Cuối cùng đồ án đi vào đánh giá lại ứng dụng đã triển khai, để thấy được điểm tốt và điểm chưa tốt cũng như vạch ra các nhiệm vụ và phương hướng phát triển trong tương lai để triển khai hoàn thiện hệ thống trên môi trường thực tế.
  • 4. HUST SOICT Xây dựng thuật toán phân công giao việc cho hệ thống MBay ĐATN 2015 Sinh viên Nguyễn Văn Hạ SHSV: 20102648 Lớp: CNTT2-K55 Trang 4 ABSTRACT Thesis titled "DEVELOPE A DELIVERY ALGORITHM FOR DELIVERY SYSTEMS ELECTRONICS FAIR ONLINE MBAY" This is an application fỏr service e- commerce activities on the Web and mobile run, lets consumers easily search for cheap products near where they live, comparable market prices, inquire product, bid. Helping businesses, showrooms and products to consumers, and assign delivery, financial statistics. Helping people find the route of delivery an optimal way in order to reduce costs and optimize profitability. The application is part of the infrastructure should be developed to meet the e-commerce activities are increasingly flourishing in Vietnam. Development of the survey went deep into the development of e-commerce, the development of smartphones, the relationship between them and the current state of solutions to meet the needs of e-commerce. From the strengths and weaknesses are drawn, the application is implemented consistent with the current state of the country's e-commerce. Besides studying the problem and the solution, in the framework detailed blueprint also said the design and install an application that supports online sales solution oriented Mbay yet. Some ideas and basic requirements were successfully implemented in the application. Finally blueprints go on revaluation of deployed applications, to see the good points and the location was not good, as well as outlining the mission and direction of development in the future to improve the system deployed on environment International.
  • 5. HUST SOICT Xây dựng thuật toán phân công giao việc cho hệ thống MBay ĐATN 2015 Sinh viên Nguyễn Văn Hạ SHSV: 20102648 Lớp: CNTT2-K55 Trang 5 LỜI CẢM ƠN Để có thểhoàn thànhđồ án tốt nghiệpđềtài “XÂY DỰNG HỆ THỐNG CHỢ ĐIỆN TỬ TRỰC TUYẾN MBAY – XÂY DỰNG ỨNG DỤNG CHO KHÁCH HÀNG TRÊN MOBILE Phần phân công giao hàng”, ngoài sự nỗ lực của bản thân còn có sự giúp đỡ của rất nhiều thầy cô, bạn bè và gia đình. Em xin gửi lời cảm ơn chân thànhđến Th.s Vũ Đức Vượng, giảng viên Bộ môn Kỹ Thuật phần mềm, Viện công nghệ thông tin người đã tận tình hướng dẫn, chỉ bảo em trong suốt quá trình làm đồ án. Em cũng xin chân thành cảm ơn các thầy cô giáo trong trường Đại học Bách Khoa các thầy cô trong Bộ môn Viện CNTT & Truyền thông nói riêng đã dạy dỗ cho em kiến thức về các môn đại cương cũng như các môn chuyên ngành, giúp em có được cơ sở lý thuyết vững vàng và tạo điều kiện giúp đỡ em trong suốt quá trình học tập. Cuối cùng, em xin chân thành cảm ơn gia đình và bạn bè, đã luôn tạo điều kiện, quan tâm, giúp đỡ, động viên em trong suốt quá trình học tập và hoàn thành đồ án tốt nghiệp. Hà Nội, tháng 5 năm 2015 Sinh viên Nguyễn Văn Hạ
  • 6. HUST SOICT Xây dựng thuật toán phân công giao việc cho hệ thống MBay ĐATN 2015 Sinh viên Nguyễn Văn Hạ SHSV: 20102648 Lớp: CNTT2-K55 Trang 6 MỤC LỤC PHIẾU GIAO NHIỆM VỤ ĐỒ ÁN TỐT NGHIỆP ..................................................2 TÓM TẮT ĐỒ ÁN ............................................................................................................3 MỤC LỤC ...........................................................................................................................6 DANH MỤC HÌNH ẢNH ................................................................................................8 DANH MỤC BẢNG..........................................................................................................9 DANH MỤC CÁC TỪ VIẾT TẮT............................................................................. 10 MỞ ĐẦU........................................................................................................................... 11 PHẦN 1: ĐẶT VẤN ĐỀ VÀ ĐỊNH HƯỚNG GIẢI PHÁP .................................. 12 Chương 1: Tổng quan về đề tài ................................................................................... 12 1.1 Đặt vấn đề............................................................................................................... 12 1.2 Mục đích của đồ án .............................................................................................. 13 1.3 Phương pháp tiếp cận và hướng giải quyết:.................................................... 14 1.4 Công cụ hỗ trợ....................................................................................................... 16 1.4.1 MySQL............................................................................................................ 16 1.4.2 Apache PHP .................................................................................................... 16 1.4.3 Windows Server 2008 ................................................................................... 17 Chương 2: Thuật toán tối ưu hoá đàn kiến ACO ................................................... 19 2.1 Đàn kiến tự nhiên ................................................................................................. 19 2.2 Đàn kiến nhân tạo ................................................................................................ 20 2.2.1 Phương pháp tìm đường đi mô phỏng hành vi con kiến........................... 20 2.2.2 Quy tắc cập nhật mùi và bay hơi.................................................................. 21 Chương 3: Phương pháp ACO giải bài toán người giao hàng ............................. 23 3.1 Bài toán người giao hàng và đồ thị có cấu trúc .............................................. 23 3.2 Các thuật toán ACO cho bài toán TSP ............................................................. 24 3.3 Số lượng kiến......................................................................................................... 25 3.4 Nhận xét chung về các thuật toán ACO ........................................................... 26 Chương 4: Thuật toán phân công giao hàng ............................................................ 27 4.1 Thuật toán phân công giao hàng cho 1 cửa hàng .......................................... 27 4.2 Phương pháp sắp xếp đơn hàng gần nhau ...................................................... 27 4.3 Phương pháp topsis để sắp xếp thứ tự ưu tiên các nhân viên ...................... 28 Chương 5: Ứng dụng giao hàng tự động và sắp xếp lộ trình giao hàng ............ 31 5.1 Phân công công việc............................................................................................. 31
  • 7. HUST SOICT Xây dựng thuật toán phân công giao việc cho hệ thống MBay ĐATN 2015 Sinh viên Nguyễn Văn Hạ SHSV: 20102648 Lớp: CNTT2-K55 Trang 7 5.2 Thiết kế tổng quan ................................................................................................ 31 5.2.1 Khung nhìn usecase ....................................................................................... 31 5.2.2 Khung nhìn Logic .......................................................................................... 34 5.2.3 Khung nhìn vật lý........................................................................................... 34 5.3 Thiết kế chi tiết...................................................................................................... 34 5.4 Thiết kế cơ sở dữ liệu ........................................................................................... 42 Chương 6: Đánh giá kết quả, ưu nhược điểm, khả năng ứng dụng.................... 48 6.1 Kết quả đạt được ................................................................................................... 48 6.2 Đánh giá kết quả................................................................................................... 50 KẾT LUẬN ...................................................................................................................... 52 Tổng kết............................................................................................................................ 52 Hướng phát triển của đồ án ......................................................................................... 52 TÀI LIỆU THAM KHẢO ............................................................................................ 53
  • 8. HUST SOICT Xây dựng thuật toán phân công giao việc cho hệ thống MBay ĐATN 2015 Sinh viên Nguyễn Văn Hạ SHSV: 20102648 Lớp: CNTT2-K55 Trang 8 DANH MỤC HÌNH ẢNH Hình 2 - 1: Hành vi của đàn kiến khi gặp vật cản trong thực tế ................................. 19 Hình 4 - 1: Sử dụng kĩ thuật chia để trị trong phân công giao hàng .......................... 28 Hình 5 - 1: Tác nhân của hệ thống ................................................................................. 31 Hình 5 - 2: Biểu đồ usecase Phân công giao hàng tự động......................................... 33 Hình 5 - 3: Mô hình tương tác chung của hệ thống...................................................... 34 Hình 5 - 4: Khung nhìn vật lý khi triển khai hệ thống................................................. 34 Hình 5 - 5: Biểu đồ hoạt động Phân công thật các đơn hàng cho các nhân viên...... 37 Hình 5 - 6: Biểu đồ hoạt động chức năng phân đơn hàng cho nhân viên.................. 38 Hình 5 – 7: Biểu đồ trình tự Phân công giao hàng tạm thời........................................ 39 Hình 5 – 8 Biểu đồ trình tự Phân công giao hàng thật cho nhân viên ....................... 39 Hình 5 - 8: Package Diagram.......................................................................................... 40 Hình 5 – 9: Biểu đồ lớp chi tiết chức năng phân công giao hàng tự động................ 41 Hình 5 - 10: Các bảng trong cơ sở dữ liệu .................................................................... 42 Hình 5 – 11: Khởi chạy mBay.jar từ Windows ............................................................ 49 Hình 5 – 12: Chu trình giao hàng tối ưu cho nhân viên............................................... 50
  • 9. HUST SOICT Xây dựng thuật toán phân công giao việc cho hệ thống MBay ĐATN 2015 Sinh viên Nguyễn Văn Hạ SHSV: 20102648 Lớp: CNTT2-K55 Trang 9 DANH MỤC BẢNG Bảng 3 – 1: Một số thuật toán ACO theo thứ tự thời gian phát triển......................... 25 Bảng 5 – 1: Phân công nhiệm vụ từng thành viên trong nhóm. ................................. 31 Bảng 5 – 2: Usecase phân công giao hàng .................................................................... 35 Bảng 5 – 3: U001. Phân công tạm thời các đơn hàng cho các nhân viên. ................ 36 Bảng 5 – 4: U002. Phân công thật các đơn hàng cho các nhân viên. ........................ 36
  • 10. HUST SOICT Xây dựng thuật toán phân công giao việc cho hệ thống MBay ĐATN 2015 Sinh viên Nguyễn Văn Hạ SHSV: 20102648 Lớp: CNTT2-K55 Trang 10 DANH MỤC CÁC TỪ VIẾT TẮT Thuật ngữ Tên đầy đủ Liên kết ngoài ACO Ant Colony Optimization http://citeseerx.ist.psu.edu/viewdoc /download?doi=10.1.1.70.1052&re p=rep1&type=pdf AS Ant System http://en.wikipedia.org/wiki/Ant_c olony_optimization_algorithms ACS Ant Colony System http://en.wikipedia.org/wiki/Ant_c olony_optimization_algorithms TSP Travelling Salesman Problem http://en.wikipedia.org/wiki/Travel ling_salesman_problem S-ACO Simple Ant Colony Optimization http://en.wikipedia.org/wiki/Ant_c olony_optimization_algorithms TUTH Tối ưu tổ hợp TOPSIS The Technique for Order of Preference by Similarity to Ideal Solution http://en.wikipedia.org/wiki/TOPSI S
  • 11. HUST SOICT Xây dựng thuật toán phân công giao việc cho hệ thống MBay ĐATN 2015 Sinh viên Nguyễn Văn Hạ SHSV: 20102648 Lớp: CNTT2-K55 Trang 11 MỞ ĐẦU Trong vòng 3 tháng thực hiên, đồ án có nhiệm vụ xây dựng thuật toán phân công giao việc cho hệ thống Mbay. Sau đó đi vào xây dựng một sản phẩm theo định hướng giải pháp được đưa ra. Đồ án gồm 2 phần lớn được chia cụ thể như sau: Phần 1 – Đặt vấn đề và định hướng giải pháp: Phần này đi vào phân tích các vấn đề, hiện trạng giải quyết cũng như các điểm hạn chế của các giải pháp này, từ đó đề xuất giải pháp mới. Phần 1 bao gồm các chương lớn: Chương 1: Tổng quan về đề tài Chương 2: Thuật toán tối ưu hóa đàn kiến ACO Chương 3: Phương pháp ACO giải bài toán người giao hàng Phần 2 – Các kết quả đạt được: Phần này trình bày cụ thể kết quả của đồ án bao gồm phân tích thiết kế chi tiết cũng như cài đặt và triển khai một thuật toán phân công giao việc cho hệ thống Mbay đồng thời thử nghiệm và đánh giá thuật toán. Phần này bao gồm các chương lớn. Chương 4: Thuật toán phân công giao hàng Chương 5: Ứng dụng phân công giao hàng tự động và sắp xếp lộ trình giao hàng Chương 6: Đánh giá kết quả, ưu nhược điểm, khả năng ứng dụng
  • 12. HUST SOICT Xây dựng thuật toán phân công giao việc cho hệ thống MBay ĐATN 2015 Sinh viên Nguyễn Văn Hạ SHSV: 20102648 Lớp: CNTT2-K55 Trang 12 PHẦN 1: ĐẶT VẤN ĐỀ VÀ ĐỊNH HƯỚNG GIẢI PHÁP Chương 1: Tổng quan về đề tài 1.1 Đặt vấn đề Internet phát triển mạnh mẽ sẽ là động lực để thúc đẩy sự tăng trưởng buôn bán trên phạm vi toàn cầu. Thương mại điện tử đã đem lại cho các doanh nghiệp một nguồn lợi nhuận khổng lồ. Những ứng dụng về thương mại điện tử cũng ra đời trên 2 nền tảng Web và mobile như Amazon (Mỹ), Alibaba (Trung Quốc) rất thành công và thu được rất nhiều lợi nhuận. Ở Việt Nam có 1 số ứng dụng như Foody, Vật giá, Lazada giới thiệu về các mặt hàng điện từ, đồ ăn, quần áo... Mang lại sự tiện lợi cho người dùng. Sự phát triển của các điện thoại thông minh, các nhà sản xuất đã tập trung vào phân khúc giá rẻ, chỉ với tầm 2 triệu đồng thì đã có thể sở hữu một chiếc điện thoại Android, Windows phone giá rẻ, màn hình lớn, đủ để trải nghiệm và cài đặt các ứng dụng cần thiết. Một trong những ứng dụng không thể thiếu trên điện thoại là bản đồ, mạng xã hội, ứng dụng nhắn tin miễn phí, ứng dụng tìm kiếm địa điểm, mua sắm... Sự phát triển mạnh mẽ của ngành thương mại điện tử và thiết bị điện tử đã mở ra nhiều cách quảng bá sản phẩm. Một cửa hàng có thể có nhiều phương pháp quảng bá sản phẩm của mình như đăng báo, phát tờ rơi, tạo một trang web giới thiệu sản phẩm. Nhưng trong tiềm lực kinh tế hạn chế các cửa hàng nhỏ khó có thể duy trì một trang bán hàng trực tuyến, tốn tiền trong việc xây dựng và vận hành một Website và chi phí quảng cáo sản phẩm tới người tiêu dùng. Để giảm chi phí trên và quảng bá tốt các sản phẩm tới người tiêu dùng, Họ cần một ứng dụng dễ tương tác, có các chức năng cần thiết: giới thiệu sản phẩm, nhận các đơn hàng, phân công giao hàng, chỉ đường đi ... Ứng dụng đó cần dễ sử dụng giúp tăng doanh số bán hàng, tăng lợi nhuận và phải bỏ một chi phí rất nhỏ. Nhu cầu mua sắm con người càng ngày càng tăng, Họ không có thời gian nhiều để đến tận nơi mua hàng, Họ muốn được đặt hàng và sau 1 khoảng thời gian thì sản phẩm đã có trong tay họ. Cùng 1 sản phẩm cùng nhà sản xuất, người tiêu dùng muốn biết được sản phẩm nào giá rẻ nhất, sản phẩm nào đang được khuyến mãi để mua sắm. Từ những nhu cầu của các cửa hàng và người tiêu dùng. Cần xây dựng được một hệ thống đáp ứng được các yêu cầu trên. Để thu hút được đối tượng người sử dụng trên hệ thống cần phải có các chức năng mang lại lợi ích thiết thực cho họ.
  • 13. HUST SOICT Xây dựng thuật toán phân công giao việc cho hệ thống MBay ĐATN 2015 Sinh viên Nguyễn Văn Hạ SHSV: 20102648 Lớp: CNTT2-K55 Trang 13 Từ những lý do trên, cùng với việc tham khảo chức năng của các ứng dụng về mua sắm trước nhóm đề xuất xây dựng “hệ thống bán hàng trực tuyến Mbay” nhằm mục đích tạo ra một sản phẩm giúp đem lại lợi ích cho cả người sử dụng, các chủ cửa hàng và nhân viên để từ đó thu hút được ngày càng nhiều người sử dụng hệ thống. Với mục tiêu thu hút hai đối tượng người sử dụng trên hệ thống sẽ cần có các chức năng sau để thỏa mãn các nhu cầu của người sử dụng: Đối với khách hàng: - Chức năng hiển thị các thông tin của cửa hàng bao gồm các thông tin về địa chỉ, liên hệ, thực đơn, sản phẩm, giá… của cửa hàng nhằm giúp khách hàng lựa chọn cửa hàng phù hợp với mình nhất. Đối với chủ cửa hàng hệ thống sẽ xây dựng hẳn một chương trình quản lý cho chủ cửa hàng để củ cửa hàng có thể quản lý cửa hàng của mình được dễ dàng hơn: - Chức năng quản lý thông tin cửa hàng nhằm giúp chủ cửa hàng quản lý thông tin cửa hàng của mình. - Chức năng quản lý bài viết giúp chủ cửa hàng tạo các bài viết đưa lên cửa hàng của mình nhằm các mục đích, thông báo hay quảng cáo. - Chức năng quản lý sản phẩm bao gồm quản lý thông tin, giá cả sản phẩm… giúp chủ cửa hàng quản lý được các sản phẩm của cửa hàng và quảng cáo các sản phẩm đến người dùng. - Các chức năng quản lý đơn hàng bao gồm: quản lý nhân viên giao hàng, quản lý đơn hàng, phân công giao hàng nhằm trợ giúp chủ cửa hàng dễ dàng hơn trong việc quản lý đơn và phân công giao hàng. - Chức năng thống kê Đối với nhân viên giao hàng hệ thống sẽ trợ giúp việc quản lý các đơn hàng cần giao, xây dựng lộ trình giao hàng, giúp cho người giao hàng có thể giao hàng một cách thuận lợi, xem doanh thu hàng tháng Với mục tiêu tiếp cận dễ dàng đến người sử dụng nhóm hướng đến xây dựng hệ thống trên nền tảng web, mobile, là hai nền tảng được sử dụng thông dụng nhất ở thời điểm hiện tại. Toàn bộ phần này xin đọc ở phần tiếp theo. 1.2 Mục đích của đồ án Phần việc cực kì quan trọng của hệ thống liên quan đến toàn bộ hoạt động, ảnh hưởng tới phân bổ nhân lực, phân bổ tài nguyên, chính sách giá, đặc tính chất lượng của hệ thống giao hàng đó chính là hoạt động phân công giao hàng cho từng nhân viên giao hàng.
  • 14. HUST SOICT Xây dựng thuật toán phân công giao việc cho hệ thống MBay ĐATN 2015 Sinh viên Nguyễn Văn Hạ SHSV: 20102648 Lớp: CNTT2-K55 Trang 14 Phân công giao hàng hợp lý mang lại nhiêu lợi ích: - Thời gian: giảm thiểu thời gian giao hàng, đồng nghĩa với việc giao hàng cho khách hàng đúng thời điểm cam kết, đảm bảo uy tín của hệ thống. - Tài nguyên: tiếtkiệm chi phí nhiên liệu khi với cung đường ngắn, ít tắc và hợp lý. - Nhân lực: Giảm chi phí thuê nhân công với kế hoạch phân công tốt. - Chính sách giá: mang lại lợi thế về giá so với các đối thủ cạnh tranh tương đương với hệ thống Mbay. Như vậy phân công giao hàng là một bài toán lớn, chịu sự chi phối của nhiều yếu tố như số lượng đơn hàng, kích thước, số lượng hàng hoá tương ứng, vị trí giao hàng so với các kho chứa hàng. Phân công giao hàng còn là cơ sở cho các hoạt động hậu kinh doanh khác như tính lương cho nhân viên, tính chi phí vận chuyển. Với tiềm năng của thị trường thương mại điện tử Việt Nam, bất kì hệ thống nào cũng cần phải đối phó với số lượng đơn hàng cực lớn tại một thời điểm. Hoặc là hàng vạn đơn hàng cho một ngày giao dịch. Như vậy việc phân công giao hàng bằng tay (thủ công) sẽ không đáp ứng được nhu cầu cho một hệ thống lớn như vậy. Tình hình thực tế yêu cầu cần phải có một phần hệ thống đảm nhiệm chức năng phân công giao hàng. Trong đó lõi cơ bản nhất chính là một thuật toán phân công giao hàng. Thuật toán này cần đáp ứng nhiều yêu cầu, trong đó đáp ứng được số lượng lớn đơn hàng, xử lý với nhiều tham số. Một yêu cầu khác chính là phân công số lượng lớn nhưng vẫn đảm bảo sự chính xác và tin cậy. Tính chính xác được hiểu là không nhầm lẫn giữa các đơn hàng. Tính tin cậy có nghĩa là các đơn hàng được phân công cho nhân viên sao cho tổng quãng đường (tương ứng là thời gian) để giao đơn hàng đó là nhỏ nhất. Việc nghiên cứu chi tiết thuật toán phân công giao hàng được nói rõ hơn trong các phần tiếp theo của báo cáo này. 1.3 Phương pháp tiếp cận và hướng giải quyết: Từ thực tế trên và thông qua tìm hiểu mô hình chợ thương mại trong thực tế, nhóm chúng tôi quyết định đề xuất xây dựng một hệ thống chợ trực tuyến Mbay, nhằm mục đích xây dựng một hệ thống chợ trực tuyến lớn theo mô hình chợ thương mại trong thực tế, cho phép nhiều gian hàng với nhiều chủ cửa hàng hoạt động, sản phẩm đa dạng, phục vụ mọi yêu cầu mua sắm của khách hàng với mức độ hài lòng cao nhất. Hệ thống sẽ được xây dựng với các thành phần sau:
  • 15. HUST SOICT Xây dựng thuật toán phân công giao việc cho hệ thống MBay ĐATN 2015 Sinh viên Nguyễn Văn Hạ SHSV: 20102648 Lớp: CNTT2-K55 Trang 15  Ứng dụng trên nền Web: o Khách hàng:  Ghé thăm các gian hàng  Xem thông tin các gian hàng: Mặt hàng, thông tin sản phẩm  Xem bản đồ tới các cửa hàng  Đặt mua sản phẩm o Chủ cửa hàng:  Đăng ký mở gian hàng, hoặc quản lý các gian hàng vô chủ  Thiết lập các thông tin gian hàng  Quản lý danh sách nhân viên giao hàng o Quản lý gian hàng:  Phân công giao hàng cho nhân viên giao hàng  Giao hàng cho nhân viên giao hàng  Ghi nhận kết quả giao hàng  Đánh giá nhân viên  Theo dõi doanh thu của cửa hàng  Cập nhật thông tin cho hàng hóa: Giá cả, khuyến mại, … o Quản trị mbay  Quản lý giao diện, tùy biến  Cho phép đăng ký mở gian hàng, chuyển gian hàng sang trạng thái hoạt động  Quản lý các gian hàng  Đăng quảng cáo  Thống kê doanh số từ các cửa hàng  Quản lý người dùng  Ứng dụng trên nền Mobile: o Ứng dụng cho khách hàng:  Tìm kiếm các cửa hàng, sản phẩm  Xem thông tin các cửa hàng, sản phẩm  Đặt hàng  Xác thực người dùng o Ứng dụng cho người giao hàng:  Nhận đơn hàng để giao  Tìm đường đi tới khách hàng  Bàn giao sản phẩm, xác nhận từ khách hàng, nhận tiền  Nộp tiền thanh toán Mục tiêu của hệ thống là xây dựng một “chợ điện tử trực tuyến”, hướng tới người dùng phổ thông, vì vậy cả nhóm hướng tới xây dựng 2 ứng dụng trên nền Web và mobile, là 2 nền tảng rất phổ biền hiện nay.
  • 16. HUST SOICT Xây dựng thuật toán phân công giao việc cho hệ thống MBay ĐATN 2015 Sinh viên Nguyễn Văn Hạ SHSV: 20102648 Lớp: CNTT2-K55 Trang 16 Với nền tảng Web, hệ thống chú trọng xây dựng các chức năng quản lý cho quản trị mbay và chủ cửa hàng, sử dụng framework PHP Symphony để xây dựng. Với nền tảng Mobile, ứng dụng cho khách hàng sẽ chú trọng xây dựng các chức năng Tìm kiếm, Đặt hàng, tương tác với sản phẩm; ứng dụng cho nhân viên giao hàng tập trung vào việc lấy đơn hàng và tìm kiếm lộ trình trên bản đồ. Ứng dụng sẽ chạy trên hệ điều hàng Android, là hệ điều hành phổ biến nhất và có số lượng người sử dụng lớn nhất trên di động hiện nay. Trên đây là phần đề xuất phương pháp tiếp cận và hướng giải quyết, tiếp theo sẽ là phần giới thiệu về các công nghệ sử dụng. Do khuôn khổ của đồ án, phần công nghệ sử dụng tôi sẽ trình bày các công nghệ đã được sử dụng để xây dựng nhiệm vụ của mình. Thành viên Nhiệm vụ Bảo Xây dựng trang Web Phương Ứng dụng android cho khách hàng Khang Ứng dụng android cho người giao hàng Hạ Thuật toán phân công giao hàng 1.4 Công cụ hỗ trợ 1.4.1 MySQL MySQL là hệ quản trị cơ sở dữ liệu tự do nguồn mở phổ biến nhất thế giới và được các nhà phát triểnrất ưa chuộng trong quá trình phát triểnứng dụng. Vì MySQL là cơ sở dữ liệu tốc độ cao, ổn định và dễ sử dụng, có tính khả chuyển, hoạt động trên nhiều hệ điều hành cung cấp một hệ thống lớn các hàm tiện ích rất mạnh. Với tốc độ và tính bảo mật cao, MySQL rất thích hợp cho các ứng dụng có truy cập CSDL trên internet. MySQL hoàn toàn miễn phí Nó có nhiều phiên bản cho các hệ điều hành khác nhau: phiên bản Win32 cho các hệ điều hành dòng Windows, Linux, Mac OS X, Unix, FreeBSD, NetBSD, Novell NetWare, SGI Irix, Solaris, SunOS,... MySQL là một trong những ví dụ rất cơ bản về Hệ Quản trị Cơ sở dữ liệuquan hệ sử dụng Ngôn ngữ truy vấn có cấu trúc (SQL). MySQL được sử dụng cho việc bổ trợ PHP, Perl, và nhiều ngôn ngữ khác, nó làm nơi lưu trữ những thông tin trên các trang web viết bằng PHP hay Perl,... 1.4.2 Apache PHP Apache là phần mềm máy chủ Web được dùng nhiều nhất hiện nay. Cùng với PHP giúp cho Apache chạy được file .php. Một phần mở rộng quan trọng khác
  • 17. HUST SOICT Xây dựng thuật toán phân công giao việc cho hệ thống MBay ĐATN 2015 Sinh viên Nguyễn Văn Hạ SHSV: 20102648 Lớp: CNTT2-K55 Trang 17 đó là cơ sở dữ liệu. Khi bạn phát triển một ứng dụng web bạn sẽ nhanh chóng thấy rằng PHP và một Database là gần như không thể tách rời. 1.4.3 Windows Server 2008
  • 18. HUST SOICT Xây dựng thuật toán phân công giao việc cho hệ thống MBay ĐATN 2015 Sinh viên Nguyễn Văn Hạ SHSV: 20102648 Lớp: CNTT2-K55 Trang 18 Microsoft Windows Server 2008 là thế hệ kế tiếp của hệ điều hành Windows Server, có thể giúp các chuyên gia công nghệ thông tin có thể kiểm soát tối đa cơ sở hạ tầng của họ và cung cấp khả năng quản lý và hiệu lực chưa từng có, là sản phẩm hơn hẳn trong việc đảm bảo độ an toàn, khả năng tin cậy và môi trường máy chủ vững chắc hơn các phiên bản trước đây. Windows Server 2008 cung cấp những giá trị mới cho các tổ chức bằng việc bảo đảm tất cả người dùng đều có thể có được những thành phần bổ sung từ các dịch vụ từ mạng. Windows Server 2008 cũng cung cấp nhiều tính năng vượt trội bên trong hệ điều hành và khả năng chuẩn đoán, cho phép các quản trị viên tăng được thời gian hỗ trợ cho công việc của doanh nghiệp. Windows Server 2008 xây dựng trên sự thành công và sức mạnh của hệ điều hành đã có trước đó là Windows Server 2003 và những cách tân có trong bản Service Pack 1 và Windows Server 2003 R2. Mặc dù vậy Windows Server 2008 hoàn toàn hơn hẳn các hệ điều hành tiền nhiệm. Windows Server 2008 được thiết kế để cung cấp cho các tổ chức có được nền tảng sản xuất tốt nhất cho ứng dụng, mạng và các dịch vụ web từ nhóm làm việc đến những trung tâm dữ liệu với tính năng động, tính năng mới có giá trị và những cải thiện mạnh mẽ cho hệ điều hành cơ bản. Thêm vào tính năng mới, Windows Server 2008 cung cấp nhiều cải thiệm tốt hơn cho hệ điều hành cơ bản so với Windows Server 2003. Những cải thiện có thể thấy được gồm có các vấn đề về mạng, các tính năng bảo mật nâng cao, truy cập ứng dụng từ xa, quản lý role máy chủ tập trung, các công cụ kiểm tra độ tin cậy và hiệu suất, nhóm chuyển đổi dự phòng, sự triển khai và hệ thống file. Những cải thiện này và rất nhiều cải thiện khác sẽ giúp các tổ chức tối đa được tính linh hoạt, khả năng sẵn có và kiểm soát được các máy chủ của họ
  • 19. HUST SOICT Xây dựng thuật toán phân công giao việc cho hệ thống MBay ĐATN 2015 Sinh viên Nguyễn Văn Hạ SHSV: 20102648 Lớp: CNTT2-K55 Trang 19 Chương 2: Thuật toán tối ưu hoá đàn kiến ACO 2.1 Đàn kiến tự nhiên Kiến là một loài có tổ chức cao, mỗi con kiến khi di chuyển sẽ để lại một vết hoăc chất được gọi pheromone. Đặc điểm sinh hóa học của vết mùi là có khả năng ứ đọng, bay hơi và là phương tiện để đánh dấu và để đàn kiến trao đổi thông tin khi tìm kiếm thức ăn. Khi đi tìm kiếm thức ăn, sau khi tìm thấy nguồn thức ăn, thì mỗi con kiến sẽ tìm ra đường đi của nó để đi từ tổ tới nguồn thức ăn. Chúng sẽ giao tiếp trao đổi thông tin với nhau, sau một thời gian cả đàn kiến gần như tìm ra và đi theo con đường ngắn nhất từ tổ kiến tới nguồn thức ăn. Cách tìm đường đi của kiến thực được minh họa ở hình 2.2 với ví dụ sau: Các con kiến đang đi trên một con đường thẳng từ tổ kiến A đến nguồn thức ăn E. Một lúc sau, đột nhiên có một chướng ngại vật cản trên đường đi, lúc này đường đi từ A đến E bị chia làm 2 hướng. Vậy các con kiến sẽ đi theo hướng nào? Kết quả là đàn kiến sẽ chọn nhánh ngắn nhất. Hình 2 - 1: Hành vi của đàn kiến khi gặp vật cản trong thực tế
  • 20. HUST SOICT Xây dựng thuật toán phân công giao việc cho hệ thống MBay ĐATN 2015 Sinh viên Nguyễn Văn Hạ SHSV: 20102648 Lớp: CNTT2-K55 Trang 20 2.2 Đàn kiến nhân tạo Để mô mô phỏng kiến tự nhiên, người ta dùng tác tử (multiagent) làm đàn kiến nhân tạo, trong đó mỗi con kiến có nhiều khả năng hơn kiến tự nhiên. Mỗi con kiến nhân tạo sẽ có bộ nhớ riêng, có khả năng ghi nhớ các đỉnh đã thăm trong hành trình và tính được độ dài đường đi nó chọn, Ngoài ra các con kiến có thể trao đổi thông tin được với nhau, thực hiện tính toán cần thiết, cập nhật mùi,... Nhờ các con kiến nhân tạo này Dorigo (1991) đã xây dựng hệ kiến (AS) giải bài toán người chào hàng, hiệu quả của nó so với các phương pháp mô phỏng tự nhiên như SA, GA đã được kiểm chứng bằng thực nghiệm và được phát triển, ứng dụng phong phú với tên gọi chung là phương pháp ACO 2.2.1 Phương pháp tìm đường đi mô phỏng hành vi con kiến Các con kiến sẽ tiến hành tìm đường đi từ đỉnh xuất phát qua một loạt các đỉnh và quay trở về đỉnh ban đầu, tại đỉnh i một con kiến sẽ chọn đỉnh j chưa được đi qua trong tập láng giềng của i theo xác suất sau : (S ) * (c | s ) * p ij ij ijp ij ij ij c N p            trong đó -Sp :là hành trình thứ p - N : là tập các đỉnh láng giềng của i chưa được con kiến hiện tại đi qua. - cij : hành trình từ đỉnh i tới đỉnh j - p : tỉ lệ - ij : lượng pheromone trên cij
  • 21. HUST SOICT Xây dựng thuật toán phân công giao việc cho hệ thống MBay ĐATN 2015 Sinh viên Nguyễn Văn Hạ SHSV: 20102648 Lớp: CNTT2-K55 Trang 21 - ij : hệ số heuristic, thường được gán ij ij Q d   , trong đó dij là chi phí giữa i và j , Q là một hằng số nào đó, giúp đánh giá chính xác hơn sự lựa chọn của con kiến khi quyết định đi từ đỉnh u qua đỉnh v - α, β : là hai tham số đưa vào, 𝞪 đặc trưng cho mức độ ảnh hưởng của vết mùi và 𝞫 đặc trưng cho mức độ ảnh hưởng của thông tin heuristics của bài toán Ta có thể hiểu công thức trên đơn giản như sau: quyết định lựa chọn đỉnh tiếp theo để đi của con kiến được lựa chọn ngẫu nhiên theo xác suất (tức là đỉnh nào có xác suất cao hơn sẽ có khả năng được chọn cao hơn, nhưng không có nghĩa là các đỉnh có xác suất thấp hơn không được chọn mà nó được chọn với cơ hội thấp hơn mà thôi). Và xác suất này (hay khả năng chọn đỉnh tiếp theo của con kiến) tỷ lệ thuận với nồng độ vết mùi trên cạnh được chọn (theo đặc tính của con kiến tự nhiên) và tỷ lệ nghịch với độ dài cạnh, là những hệ số điểu khiển việc lựa chọn của con kiến nghiêng về phía nào. 2.2.2 Quy tắc cập nhật mùi và bay hơi Sau khi và trong quá trình các con kiến tìm đường đi các vết mùi ( ) được cập nhật lại, vì chúng bị biến đổi do quá trình bay hơi và do quá trình tích lũy của các con kiến trên cạnh đó. Có rất nhiều cách cập nhật mùi, mỗi cách có ảnh hưởn nhất định đến chất lượng của thuật toán. Đây là 1 phương pháp cập nhật mùi đơn giản. Sau mỗi vòng lặp (các con kiến đều tìm được hành trình riêng của mình), vết mùi trên mỗi cạnh được cập nhật lại theo công thức sau : ijij ij   trong đó   (0,1) gọi là tham số bay hơi (sở dĩ gọi như vậy vì sau mỗi lần cập nhật lượng mùi trên cạnh (i,j) sẽ mất đi một lượng . Ngoài lượng bay hơi mất đi đó mỗi cạnh (i, j) còn được tích tụ thêm một lượng mùi nhất định tùy thuộc vào từng con kiến đi qua, cụ thể được tính như sau : ij ij + k Q L    trong đó :Q là một hằng số,Lk là độ dài hành trình của con kiến thứ k. Nhờ việc cập nhật mùi này, sau mỗi vòng lặp (hay sau mỗi lần các con kiến đi hết hành trình), nồng độ vết mùi trên các cạnh sẽ thay đổi (hoặc giảm hoặc tăng dần)
  • 22. HUST SOICT Xây dựng thuật toán phân công giao việc cho hệ thống MBay ĐATN 2015 Sinh viên Nguyễn Văn Hạ SHSV: 20102648 Lớp: CNTT2-K55 Trang 22 ảnh hưởng đến quyết định chọn của các con kiến, có thể ở bước lặp này chọn một cạnh để đi nhưng đến bước lặp khác vẫn con kiến đó lại không đi qua cạnh đó nữa. Nhờ vậy thuật toán có khả năng tìm được lời giải tốt trong những trường hợp dữ liệu cực lớn.
  • 23. HUST SOICT Xây dựng thuật toán phân công giao việc cho hệ thống MBay ĐATN 2015 Sinh viên Nguyễn Văn Hạ SHSV: 20102648 Lớp: CNTT2-K55 Trang 23 Chương 3: Phương pháp ACO giải bài toán người giao hàng 3.1 Bài toán người giao hàng và đồ thị có cấu trúc Bài toán người giao hàng là một bài toán thuộc loại bài toán du lịch (Travelling Salesman problem (TSP)). Đây là một bài toán khá nổi tiếng trong lĩnh vực tối ưu tổ hợp được nghiên cứu trong lý thuyết khoa học máy tính. Nội dung của nó khá đơn giản, nó được phát biểu như sau: Cho một danh sách các thành phố và khoảng cách giữa chúng, nhiệm vụ là phải tìm đường đi ngắn nhất có thể mà chỉ thăm mỗi thành phố đúng 1 lần. Bài toán được lần đầu tiên đưa ra như một vấn đề toán học vào năm 1930 và là một trong số những bài toán được nghiên cứu chuyên sâu trong lĩnh vực tổ hợp thời đó. Nó được sử dụng như một sự đánh giá cho nhiều phương thức tối ưu khác nhau. Thậm chí bài toán là thuộc lớp NP khó, một lượng rất lớn các heuristic và phương thức tìm kiếm cụ thể đã được biết đến vì vậy một vài trường hợp của bài toán với khoảng chục nghìn thành phố đã được giải quyết. TSP có một vài ứng dụng thậm chí trong dạng thức nguyên thuỷ của nó như lập kế hoạch, logistic, và sản xuất các microchip. Thay đổi đi chút ít nó xuất hiện như một bài toán con trong rất nhiều lĩnh vực như việc phân tích gen trong sinh học. Trong những ứng dụng này, khái niệm thành phố có thể thay đổi thành khách hàng, các điểm hàn trên bảng mạch, các mảnh DNA trong gen, và khái niệm khoảng cách có thể biểu diễn bởi thời gian du lịch hay giá thành, hay giống như sự so sánh giữa các mảnh DNA với nhau. Trong nhiều ứng dụng, các hạn chế truyền thống như giới hạn tài nguyên hay giới hạn thời gian thậm chí còn làm cho bài toán trở nên khó hơn. TSP có thể được mô hình như một đồ thị, các đỉnh của đồ thị tương ứng với các thành phố và các cạnh thì tương ứng với đường nối giữa các thành phố, chiều dài của một cạnh tương ứng với khoang cách giữa 2 thành phố. Một đường đi trong bài toán TSP là một chu trình Hamilton trên đồ thị và một lời giải tối ưu của bài toán là chu trình Hamilton ngắn nhất. Thường thì đồ thị là đồ thị đầy đủ, vì vậy mọi cặp cạnh đều được nối bởi các cạnh. Đây là bước đơn giản hóa bài toán vì việc tìm chu trình Hamilton trong một đồ thị đầy đủ là dễ. Các bài toán mà không phải 2 thành phố nào cũng được nối với nhau có thể được chuyển đổi thành đồ thị đầy đủ bằng cách thêm những cạnh có độ dài lớn giữa cách thành phố này, những cạnh sẽ không xuất hiện trong chu trình tối ưu. Đồ thị có hướng 𝐺 = (𝑉, 𝐸) với tập đỉnh V = {1, 2, …, n} và tập các cung E. Đồ thị có ma trận chi phí không âm không thỏa mãn tính chất bất đẳng thức tam giác
  • 24. HUST SOICT Xây dựng thuật toán phân công giao việc cho hệ thống MBay ĐATN 2015 Sinh viên Nguyễn Văn Hạ SHSV: 20102648 Lớp: CNTT2-K55 Trang 24 C = {cij | i, j=1, 2, …, n}, với cij là khoảng cách giữa hai đỉnh i và j. Ta có, cij ≥ 0 nếu có cung đi từ đỉnh i đến đỉnh j và cij = + ∞ nếu không có cung đi từ đỉnh i đến đỉnh j. Mục tiêu của bài toán TSP là tìm một chu trình Hamilton có độ dài ngắn nhất, do đó lời giải tối ưu của bài toán TSP là một hoán vị của tập n đỉnh {1,2,.., } (n )n N sao cho hàm độ dài ( )f  nhỏ nhất, trong đó 1 ( ) ( 1) ( ) (1) 1 ( ) n i i n i f d d         Trong tất cả các thuật toán ACO giải bài toán TSP, vết mùi được gán trên các cạnh và do đó ijd dùng để chỉ thông tin học tăng cường phục vụ mở rộng tuần tự lời giải từ i đến j . Thông tin heuristic trên cạnh ( , )i j sẽ kí hiệu là ij và là nghịch đảo độ dài cạnh ij ij 1 d   . Khi đó, đồ thị cấu trúc của bài toán là đồ thị đầy đủ ( , , )G V E H . Nếu 0 ,...,k nx u u  là đường đi mở rộng được, tức là các đỉnh iu là khác nhau và k n thì ( )k ukJ x N là các đỉnh mà đường kx chưa đi đến. Các thuật toán ACO cho bài toán TSP đều được thực hiện trên đồ thị cấu trúc này. 3.2 Các thuật toán ACO cho bài toán TSP Thuật toán ACO có thể áp dụng trực tiếp cho bài toán TSP với đồ thị cấu trúc  , ,G V E H có không gian tìm kiếm chính là tập hợp các hành trình cụ thể. Ràng buộc  sẽ được thoả mã khi hành trình do kiến xây dựng là một hành trình đúng (chu trình Hamilton), biểu diễn mộ hoán vị các chỉ số của các thành phố. Quá trình kiến xây dựng lời giải theo thủ tục bước ngẫu nhiên được thực hiện như sau: 1. Lựa chọn thành phố xuất phát (có thể dựa theo một số tiêu chí nào đó) 2. Thực hiện lặp bước mở rộng bằng cách thêm một thành phố kiến chưa đi qua cho đến khi tất cả thành phố đều được thăm. Tính xác suất lựa chọn đỉnh mới theo giá trị thông tin mùi và thông tin heuristic, chọn ngẫu nhiên đỉnh mới thêm vào theo phân bố xác suất ngẫu nhiên này. 3. Quay trở lại thành phố xuất phát Sau khi tất cả kiến xây dựng xong hành trình, các con kiến sẽ để lại vết mùi trên các cạnh kiến đi qua. Trong một số trường hợp, trước khi thêm mùi, các hành trình xây dựng được có thể được cải tiến bằng cách áp dụng thủ tục tìm kiếm cục bộ. Lược đồ thuật toán ACO giải quyết bài toán TSP được mô tả như sau:
  • 25. HUST SOICT Xây dựng thuật toán phân công giao việc cho hệ thống MBay ĐATN 2015 Sinh viên Nguyễn Văn Hạ SHSV: 20102648 Lớp: CNTT2-K55 Trang 25 Procedure: Thuật_toán_SACO_TSP; Dữ liệu vào: G(V, E); Kết quả ra: Một chu trình và tổng độ dài của nó; Begin: Khởi tạo tham số, khởi tạo ma trận mùi; Khởi tạo quần thể kiến với kích thước m for k = 1 to m do Kiến m xây dựng lời giải; Cập nhật lời giải tốt nhất; Cập nhật mùi end for Đưa ra lời giải tốt nhất; End. Thuật toán ACO đầu tiên (thuật toán AS) giải bài toán TSSP đã đạt được hiệu quả khả quan, nhưng chưa phải là thuật toán tốt nhất cho bài toán này. Tuy nhiên AS đóng vai trò rất quan trọng trong các thuật toán mở rộng, cải tiến của thuật toán ACO về sau. Sự khác biệt chính giữa các thuật toán mở rộng của AS như: thuật toán elitist AS, rank-based AS và MAX-MIN,… là cách thức cập nhật mùi khác nhau. Bảng dưới đây cho thấy đa số các thuật toán ACO mới đều được thử nghiệm trên TSP. Thuật toán ACO TSP Tác giả (thời gian công bố) Ant System Có Dorigo (1992),Maniezzo & Colorni (1991, 1996) Elitist AS Có Dorigo (1992),Maniezzo & Colorni (1991, 1996) Ant – Q Có Gambardella & Dorigo (1995) Ant Colony System Có Gambardella & Dorigo (1997) Max-Min Ant System Có Stutzle & Hoos (1996, 2000) Rank-based AS Có Bullnhermer, Hartl & Strauss (1997, 1999) ANTS Không Maniezzo (1999) Hyper-cube AS Không Blum, Roli & Dorigo (2001) TSIACO Có Zhaojun Zhang, Zuren Feng (2011) Bảng 3 – 1: Một số thuật toán ACO theo thứ tự thời gian phát triển 3.3 Số lượng kiến Trong giai đoạn đầu vết mùi không thể giúp kiến tìm đường đi dẫn tới các lời tốt. Nếu sử dụng số lượng kiến quá ít thì sẽ không tìm được lời giải, hoặc tìm được nhưng chưa đủ tốt, như vậy việc cập nhật mùi sẽ được cập nhật trên những lời giải không tốt. Sử dụng thuật toán tìm kiếm cục bộ xung quanh các lời giải không tốt này khiến cho thuật toán trở nên kém hiệu quả. Có thể khắc phục điều này bằng cách tăng số lượng cá thể trong quần thể kiến lên, để tăng khả năng tìm được lời giải tốt sau khi chạy thuật toán.
  • 26. HUST SOICT Xây dựng thuật toán phân công giao việc cho hệ thống MBay ĐATN 2015 Sinh viên Nguyễn Văn Hạ SHSV: 20102648 Lớp: CNTT2-K55 Trang 26 3.4 Nhận xét chung về các thuật toán ACO Nhờ kết hợp thông tin heuristic, thông tin học tăng cường và mô phỏng hoạt động của đàn kiến, các thuật toán ACO có ưu điểm sau: Việc tìm kiếm ngẫu nhiên dựa trên các thông tin heuristic trở nên linh hoạt và mềm dẻo trên miền rộng hơn so với các phương pháp heuristic đã có. Do đó cho ta lời giải tốt hơn và có thể tìm được lời giải tối ưu. Học tăng cường thông qua thông tin về cường độ vết mùi cho phép từng bước thu hẹp không gian tìm kiếm mà vẫn không bỏ qua các lời giải tốt, do đó nâng cao được độ tin cậy và chất lượng của thuật toán. Khi áp dụng ACO cho bài toán cụ thể, ba yếu tố sau có ảnh hưởng quyết định tới hiệu quả thuật toán: 1. Xây dựng đồ thị có cấu trúc thích hợp. Việc xây dựng đồ thị cấu trúc để tìm được lời giải cho bài toán theo thủ tục tuần tự là không khó. Khó khăn chính là các bài toán cỡ lỡn thường có không gian tìm kiếm quá rộng, thời gian chạy tuần tự hết hàng trăm năm. Như vậy đòi hỏi ta phải sử dụng các ràng buộc  một cách hợp lý để giảm miền tìm kiếm của kiến. 2. Chọn thông tin heuristic. Thông tin heuristic tốt sẽ tăng hiệu quả thuật toán. Tuy nhiên trong nhiều bài toán không có thông tin này thì có thể đánh giá xác suất tìm thành phố lân cận là như nhau. Khi đó ban đầu thuật toán chỉ đơn thuần chạy theo phương thức tìm kiếm ngẫu nhiên, vết mùi thể hiện định hướng của học tăng cường và thuật toán vẫn thực hiện được. 3. Chọn quy tắc cập nhật mùi. Quy tắc cập nhật mùi thể hiện chiến lược học của thuật toán. Vì đây là thông tin lưu giữ lại duy nhất sau mỗi lượt quần thể kiến tìm kiếm lời giải. Trong khi các đồ thị có cấu trúc và thông tin heuristic phụ thuộc vào các bài cụ thể, quy tắc cập nhật mùi lại là yếu tố phổ biến và thường dùng để đặt tên cho thuật toán.
  • 27. HUST SOICT Xây dựng thuật toán phân công giao việc cho hệ thống MBay ĐATN 2015 Sinh viên Nguyễn Văn Hạ SHSV: 20102648 Lớp: CNTT2-K55 Trang 27 Chương 4: Thuật toán phân công giao hàng 4.1 Thuật toán phân công giao hàng cho 1 cửa hàng Bước 1. Lấy danh sách các cửa hàng cần sắp xếp, các danh sách hóa đơn, danh sách nhân viên đang rỗi. Bước 2: Sắp xếp các đơn hàng có vị trí gần nhau. Bước 3: Sắp xếp thứ tự yêu tiên của nhân viên giao hàng theo Lương tháng và lương ngày bằng phương pháp TOPSIS Bước 4: Phân công giao hàng. Bước 4.1: Ban đầu phân công tạm thời các đơnhàng cho các nhân viên. Bước 4.2: Nếu có yêu cầu từ nhân viên giao hàng cần lấy đi giao. Lấy các đơn hàng chia tạm thời cho nhân viên đó. Chạy thuật toán ACOTSP để đánh lịch trình và tính thời gian dự kiến giao hàng 4.2 Phương pháp sắp xếp đơn hàng gần nhau Từ 1 cửa hàng các đơn hàng được chia thành các vùng, mỗi nhân viên giao hàng sẽ chỉ phụ trách 1 vùng nhất định, Làm như vậy sẽ tiết kiệm được quãng đường đi giao hàng. Kỹ thuật này gần giống kỹ thuật chia để trị, Chia bài toán thành nhiều bài toán nhỏ và sau đó lời giải của các bài toán nhỏ được tổng hợp lại thành lời giải cho bài toán ban đầu. Mỗi cửa hàng có đặc trưng là chỉ nhận giao hàng trong 1 khoảng cách nhất định, đó gọi là bán kính hoạt động của cửa hàng(R). Nếu của hàng có bán kính (R) giao hàng vừa phải thì chúng ta có thể chia thành 4 vùng, Mỗi đơn hàng sẽ được gán số vùng. Nếu cửa hàng có bán kính giao hàng lớn, số lượng đơn hàng nhiều thì ban đầu chia thành 4 vùng, sau đó lại tiếp tục mỗi vùng cho chia làm 4 vùng tiếp, rỗi gán số vùng cho đơn hàng đó.
  • 28. HUST SOICT Xây dựng thuật toán phân công giao việc cho hệ thống MBay ĐATN 2015 Sinh viên Nguyễn Văn Hạ SHSV: 20102648 Lớp: CNTT2-K55 Trang 28 Hình 4 - 1: Sử dụng kĩ thuật chia để trị trong phân công giao hàng 4.3 Phương pháp topsis để sắp xếp thứ tự ưu tiên các nhân viên Quan sát thêm các phương án lý tưởng với các giá trị tốt nhất (xấu nhất) ở các thuộc tính, sau đó tính khoảng cách và độ tương tự của các phương án so với các phương án lý tưởng Dựa vào kết quả để sắp xếp thứ tự hoặc lựa chọn Đây là phương pháp quyết định đa tiêu chí, nhằm lấy ra một lựa chọn tốt nhất (giải pháp lý tưởng nhất) và lựa chọn tồi nhất (giải pháp tiêu cực nhất) từ tập các lựa chọn. Kỹ thuật này được đưa ra lần đầu vào năm 1980 bởi Kwangsun Yoon và Hwang ChingLai. Sau này kỹ thuật này còn được phát triển thêm bởi các nhà khoa học khác và được hoàn thiện vào năm 1993.
  • 29. HUST SOICT Xây dựng thuật toán phân công giao việc cho hệ thống MBay ĐATN 2015 Sinh viên Nguyễn Văn Hạ SHSV: 20102648 Lớp: CNTT2-K55 Trang 29 Các bước trong phương pháp topsis Bước 1: Chuẩn hóa, đưa ra các giá trị về rij  [0,1] Bước 2: Tính giá trị theo trọng số vij = rij * wj Bước 3: Tính các giải pháp lý tưởng - A* = (v1 * , v2 * , v3 * ,..., vm *), với vj * là giá trị tốt nhất của Xj - A= (v1 - , v2 - , v3 - ,..., vm -), với vj - là giá trị tốt nhất của Xj Bước 4: Tính khoảng cách Si * =  * – 2 j ij jv v , Si - =  –   2 j ij jv v Bước 5: Tính độ tương tự : * * *    i i i i S C S S Ví dụ Topsis để sắp xếp thứ tự ưu tiên được nhận hàng trước của nhân viên. Để chọn nhân viên có độ ưu tiên được giao hàng trước. Tức là nhân viên có thu nhập thấp trong 1 ngày và trong 1 tháng, Ta phải kết hợp cả 2 trọng số này lại để tạo 1 trọng số sắp xếp thứ tự ưu tiên cho các nhân viên Ta có bảng lương của nhân viên như sau Nhân viên Lương ngày hiện tại Lương tháng hiện tại A 3 $ 20$ B 10$ 10$ C 7$ 50$ D 3$ 7$ E 9$ 15$ Với bộ trọng số WEIGHT_DAY = 0.85; WEIGHT_MONTH =0.15; Bước 1: chuẩn hóa các giá trị Vì thuộc tính lương theo ngày và lương theo tháng đều là thuộc tính giá (thuộc tính giá trị càng thấp càng tốt)
  • 30. HUST SOICT Xây dựng thuật toán phân công giao việc cho hệ thống MBay ĐATN 2015 Sinh viên Nguyễn Văn Hạ SHSV: 20102648 Lớp: CNTT2-K55 Trang 30 2 1 1 ij ij ij i xr x   Ma trận chuẩn hóa Nhân viên Lương ngày hiện tại Lương tháng hiện tại A 0.6476 0.2573 B 0.1943 0.5147 C 0.2775 0.1029 D 0.6476 0.7352 E 0.2159 0.3431 Bước 2: Tính giá trị theo trọng số Nhân viên Lương ngày hiện tại Lương tháng hiện tại A 0.5504 0.0386 B 0.1651 0.0772 C 0.2359 0.0154 D 0.5504 0.1103 E 0.1835 0.0515 Bước 3: Các giải pháp lý tưởng A* =(0.5504, 0.1103) A- =(0.1651, 0.0154) Bước 4 : Tính khoảng cách tới giải pháp lý tưởng S* =( 0.0717 , 0.3867 , 0.3285 , 0.0 , 0.3716); S- = (0.386 , 0.0618 , 0.0708 , 0.3968 , 0.0404) Bước 5 : Độ đo tương tự tới giải pháp lý tưởngC* =(0.8434 , 0.1377 , 0.1772 , 1.0 , 0.0981) Sắp xếp thứ tự ưu tiên  Theo S* : D > A > C > B > E  Theo S- : D > A > C > B > E  Theo C* : D > A > C > B > E
  • 31. HUST SOICT Xây dựng thuật toán phân công giao việc cho hệ thống MBay ĐATN 2015 Sinh viên Nguyễn Văn Hạ SHSV: 20102648 Lớp: CNTT2-K55 Trang 31 Chương 5: Ứng dụng giao hàng tự động và sắp xếp lộ trình giao hàng 5.1 Phân công công việc Thành viên Nhiệm vụ Bảo Xây dựng trang Web Phương Ứng dụng android cho khách hàng Khang Ứng dụng android cho người giao hàng Hạ Thuật toán phân công giao hàng Bảng 5 – 1: Phân công nhiệm vụ từng thành viên trong nhóm. 5.2 Thiết kế tổng quan 5.2.1 Khung nhìn usecase Hình 5 - 1: Tác nhân của hệ thống Hệ thống bao gồm các tác nhân sau:
  • 32. HUST SOICT Xây dựng thuật toán phân công giao việc cho hệ thống MBay ĐATN 2015 Sinh viên Nguyễn Văn Hạ SHSV: 20102648 Lớp: CNTT2-K55 Trang 32  Tên tác nhân: Quản trị mbay Mô tả: Người đóng vai trò ban quản lý của chợ Hoạt động của tác nhân đối với hệ thống: Quản trị mbay có các chức năng quản lý của chợ: o Mở các gian hàng trống, chưa có chủ o Cho phép người dùng đăng ký làm chủ gian hàng o Quản lý chủ gian hàng o Quản lý các gian hàng: Xóa các gian hàng có dấu hiệu lừa đảo o Giải quyết các tranh chấp khi có phát sinh giữa khách hàng với chủ gian hàng  Tên tác nhân: Chủ gian hàng Mô tả: Là chủ của các gian hàng, cửa hàng. Hoạt động của tác nhân đối với hệ thống: Chủ gian hàng có các chức năng: o Đăng ký mở gian hàng, hoặc quản lý các gian hàng vô chủ o Thiết lập các gian hàng o Quản lý nhân viên  Tên tác nhân: Quản lý gian hàng Mô tả: Là người thay mặt chủ cửa hàng thực hiện các nhiệm vụ quản lý nhà hàng. Hoạt động của tác nhân đối với hệ thống: Quản lý gian hàng thực hiện các chức năng quản lý nhà hàng: o Phân công giao hàng cho nhân viên giao hàng o Giao hàng cho nhân viên giao hàng o Ghi nhận kết quả giao hàng o Đánh giá nhân viên o Theo dõi doanh thu của cửa hàng o Cập nhật thông tin cho hàng hóa: Giá cả, khuyến mại, …  Tên tác nhân: Nhân viên giao hàng Mô tả: Là người được chủ gian hàng cấp phép cho làm nhân viên giao hàng của cửa hàng Hoạt động của tác nhân đối với hệ thống: Người giao hàng thực hiện các chức năng: o Nhận đơn hàng để giao o Nhận các mặt hàng trong đơn hàng o Tìm lộ trình giao hàng tới khách hàng o Bàn giao sản phẩm o Nhận tiền và lấy xác nhận từ khách hàng o Nộp tiền thanh toán
  • 33. HUST SOICT Xây dựng thuật toán phân công giao việc cho hệ thống MBay ĐATN 2015 Sinh viên Nguyễn Văn Hạ SHSV: 20102648 Lớp: CNTT2-K55 Trang 33  Tên tác nhân: Khách hàng Mô tả: Là những người sử dụng hệ thống để mua hàng Hoạt động của tác nhân với hệ thống: Khách hàng có thể thực hiện các chức năng: o Tìm kiếm các mặt hàng, gian hàng o Xem thông tin các mặt hàng, gian hàng o Xem thông tin bình luận, đánh giá về sản phẩm, gian hàng o Xem xét, đánh giá giá cả, chất lượng sản phẩm của các gian hàng khác nhau o Bình luận, đánh giá về một sản phẩm, một gian hàng o Đặt hàng o Thanh toán tiền hàng, xác nhận với nhân viên giao hàng Đồ án là một hệ thống thương mại điệntử lớn, được phát triểnbởi nhóm 4 sinh viên. Phần đóng góp của em được giới hạn trong bài toán phân công giao hàng cho nhân viên sao cho tối ưu nhất. Biểu đồ usecase tương ứng với phần phân công giao hàng tự động được thể hiện ở hình sau đây. Hình 5 - 2: Biểu đồ usecase Phân công giao hàng tự động
  • 34. HUST SOICT Xây dựng thuật toán phân công giao việc cho hệ thống MBay ĐATN 2015 Sinh viên Nguyễn Văn Hạ SHSV: 20102648 Lớp: CNTT2-K55 Trang 34 5.2.2 Khung nhìn Logic Hình 5 - 3: Mô hình tương tác chung của hệ thống 5.2.3 Khung nhìn vật lý Hình 5 - 4: Khung nhìn vật lý khi triển khai hệ thống. 5.3 Thiết kế chi tiết STT Mã UC Tên UC Mô tả ngắn gọn Trình duyệt desktop App di động
  • 35. HUST SOICT Xây dựng thuật toán phân công giao việc cho hệ thống MBay ĐATN 2015 Sinh viên Nguyễn Văn Hạ SHSV: 20102648 Lớp: CNTT2-K55 Trang 35 1 U001 Phân công tạm thời các đơn hàng cho các nhân viên Phân công tạm thời các đơn hàng của 1 cửa hàng cho các nhân viên 2 U002 Phân công thật các các đơn hàng cho các nhân viên Khi chủ cửa hàng hoặc quản lý cửa hàng, tiếpnhận yêu cầu lấy hàng đi giao từ nhân viên. Hệ thống phân công các đơn hàng tạm thời cho nhân viên đó và chạy thuật toán ACO để sắp xếp lộ trình cho nhân viên Bảng 5 – 2: Usecase phân công giao hàng ID U001 Tên Phân công tạm thời các đơn hàng cho các nhân viên Mô tả tóm tắt Phân công tạm thời các đơn hàng của 1 cửa hàng cho các nhân viên Tác nhân Hệ thống Điều kiện Tiền ĐK Hệ điều hành kích hoạt được tiến trình tự động Mbay.jar Hậu ĐK Phân công được các đơn hàng cho nhân viên và cập nhật dữ liệu Dòng sự kiện chính A1. Hệ thống truy vấn dữ liệu về các cửa hàng, các đơn hàng chưa giao, các nhân viên đang rỗi A2. Hệ thống phân công tạm thời các đơn hàng cho các nhân viên A3. Hệ thống cập nhật cơ sở dữ liệu A4. Hệ thống ghi log file Dòng sự kiện khác A1.1: Tại cửa hàng i : không có đơn hàng chưa giao hoặc không có nhân viên nào rỗi. A2.1: Hệ thống ghi ra File log nội dung : dữ liệu Null Các quy tắc nghiệp vụ Hệ điều hành phải kích hoạt tiến trinh java.exe -jar Mbay.jar
  • 36. HUST SOICT Xây dựng thuật toán phân công giao việc cho hệ thống MBay ĐATN 2015 Sinh viên Nguyễn Văn Hạ SHSV: 20102648 Lớp: CNTT2-K55 Trang 36 Bảng 5 – 3: U001. Phân công tạm thời các đơn hàng cho các nhân viên. ID U002 Tên Phân công thật các các đơn hàng cho các nhân viên Mô tả tóm tắt Khi chủ cửa hàng hoặc quản lý cửa hàng, tiếp nhận yêu cầu lấy hàng đi giao từ nhân viên. Hệ thống phân công các đơn hàng tạm thời cho nhân viên đó và chạy thuật toán ACO để sắp xếp lộ trình cho nhân viên Tác nhân Chủ cửa hàng hoặc quản lý cửa hàng Điều kiện Tiền ĐK Chủ cửa hàng hoặc quản lý cửa hàng giao hàng cho nhân viên và cập nhật dữ liệu Hậu ĐK Với 1 nhân viên đã nhận các đơn hàng, Thuật toán sắp xếp được lộ trình, tính chi phí, thời gian cụ thể cho mỗi đơn hàng. Dòng sự kiện chính A1. Tác nhân vào mục quản lý đơn hàng trên Web A2. Hệ thống hiện thị các danh sách nhân viên đã có các đơn hàng tạm thời A2. Tác nhân chọn giao các đơn hàng cho nhân viên đó A3. Hệ thống lấy danh sách các đơn hàng cửa người đó, và chạy thuật toán ACO để sắp xếp lộ trình A4. Hệ thống cập nhật dữ liệu và hiển thị kết quả trên Web Dòng sự kiện khác Không có Các quy tắc nghiệp vụ Bảng 5 – 4: U002. Phân công thật các đơn hàng cho các nhân viên.
  • 37. HUST SOICT Xây dựng thuật toán phân công giao việc cho hệ thống MBay ĐATN 2015 Sinh viên Nguyễn Văn Hạ SHSV: 20102648 Lớp: CNTT2-K55 Trang 37 Hình 5 - 5: Biểu đồ hoạt động Phân công thật các đơn hàng cho các nhân viên
  • 38. HUST SOICT Xây dựng thuật toán phân công giao việc cho hệ thống MBay ĐATN 2015 Sinh viên Nguyễn Văn Hạ SHSV: 20102648 Lớp: CNTT2-K55 Trang 38 Hình 5 - 6: Biểu đồ hoạt động chức năng phân đơn hàng cho nhân viên
  • 39. HUST SOICT Xây dựng thuật toán phân công giao việc cho hệ thống MBay ĐATN 2015 Sinh viên Nguyễn Văn Hạ SHSV: 20102648 Lớp: CNTT2-K55 Trang 39 Hình 5 – 7: Biểu đồ trình tự Phân công giao hàng tạm thời Hình 5 – 8 Biểu đồ trình tự Phân công giao hàng thật cho nhân viên
  • 40. HUST SOICT Xây dựng thuật toán phân công giao việc cho hệ thống MBay ĐATN 2015 Sinh viên Nguyễn Văn Hạ SHSV: 20102648 Lớp: CNTT2-K55 Trang 40 Hình 5 - 8: Package Diagram - Package Assign: Gói phân công giao hàng tự động - Packageg ACOTSP : Gói chứa thuật toán Ant Colony Optimization - Package DB: Gói tương tác với cơ sở dữ liệu - Package Entity: gói thực thể với các bảng cơ sở dữ liệu. Ví dụ các lớp Point.java, Employer.java, Bill.java.
  • 41. HUST SOICT Xây dựng thuật toán phân công giao việc cho hệ thống MBay ĐATN 2015 Sinh viên Nguyễn Văn Hạ SHSV: 20102648 Lớp: CNTT2-K55 Trang 41 Hình 5 – 9: Biểu đồ lớp chi tiết chức năng phân công giao hàng tự động
  • 42. HUST SOICT Xây dựng thuật toán phân công giao việc cho hệ thống MBay ĐATN 2015 Sinh viên Nguyễn Văn Hạ SHSV: 20102648 Lớp: CNTT2-K55 Trang 42 5.4 Thiết kế cơ sở dữ liệu Hình 5 - 10: Các bảng trong cơ sở dữ liệu BẢNG CSDL USER:
  • 43. HUST SOICT Xây dựng thuật toán phân công giao việc cho hệ thống MBay ĐATN 2015 Sinh viên Nguyễn Văn Hạ SHSV: 20102648 Lớp: CNTT2-K55 Trang 43 BẢNG CSDL ROLE: TÊN BIẾN KIỂU DỮ LIỆU Ràng buộc Mô tả IdRole INT(11) Khoá chính ID vai trò Name VARCHAR(60) Not Null Tên vai trò Role VARCHAR(20) Not Null Vai trò BẢNG USERROLES: TÊN BIẾN KIỂU DỮ LIỆU Ràng buộc Mô tả Id INT(11) Khoá chính ID IdUser INT(11) Not Null Id người dùng IdRole INT(11) Not Null Id vai trò BẢNG COMMENT: TÊN BIẾN KIỂU DỮ LIỆU Ràng buộc Mô tả TÊN BIẾN KIỂU DỮ LIỆU Ràng buộc Mô tả IdUser INT(11) Khoá chính ID người dùng hệ thống User VARCHAR(30) Unique Tên đăng nhập Password VARCHAR(40) Not Null Mật khẩu Name VARCHAR(60) Not Null Họ tên Adress VARCHAR(255) Not Null Địa chỉ người dùng Avatar VARCHAR(255) Allow Null Ảnh đại diện Phone VARCHAR(11) Not Null Điện thoại Mobile VARCHAR(11) Not Null Điện thoại Email VARCHAR(60) Unique Email CreateAt DATETIME Allow Null Ngày tạo IsActive VARCHAR(32) Allow Null Trạng thái kích hoạt slug VARCHAR(255) Allow Null Tên hiển thị trên URL State INT(11) Not Null Trạng thái nhân viên giao hàng reset_pass VARCHAR(32) Allow Null Yêu cầu reset mật khẩu
  • 44. HUST SOICT Xây dựng thuật toán phân công giao việc cho hệ thống MBay ĐATN 2015 Sinh viên Nguyễn Văn Hạ SHSV: 20102648 Lớp: CNTT2-K55 Trang 44 IdCmt INT(11) Khoá chính ID IdProduct INT(11) Khoá ngoại Id sản phẩm Body VARCHAR(255) Not null Nội dung lời nhận xét CreateAt DATETIME Not null Ngày tạo IdUser INT(11) Khoá ngoại ID người nhận xét BẢNG SESSIONS TÊN BIẾN KIỂU DỮ LIỆU Ràng buộc Mô tả sess_id VARBINARY(128) Khoá chính Phiên làm việc sess_data BLOB Not Null Dữ liệu phiên làm việc sess_time INT(10) Not Null Thời gian sống của phiên làm việc sess_lifetime MEDIUMINT(9) Not Null BẢNG USERSTORE Tên biến KIỂU DỮ LIỆU Ràng buộc Mô tả Id INT(11) Khoá chính ID CreateAt DATETIME Allow Null Ngày tạo IdEmployee INT(11) Khoá ngoại ID Nhân viên IdStore INT(11) Khoá ngoại ID cửa hàng Active TINYINT(1) Allow Null Trạng thái nhân viên trong cửa hàng BẢNG PHIEN TÊN BIẾN KIỂU DỮ LIỆU Ràng buộc Mô tả IdPhien INT(11) Khoá chính ID startat DATETIME Allow Null Thời gian bắt đầu của phiên giao hàng finishat DATETIME Allow Null Thời gian kết thúc phiên giao hàng km INT(11) Allow Null Quãng đường đi được ở phiên đó IdEmployee INT(11) Khoá ngoại Người giao hàng
  • 45. HUST SOICT Xây dựng thuật toán phân công giao việc cho hệ thống MBay ĐATN 2015 Sinh viên Nguyễn Văn Hạ SHSV: 20102648 Lớp: CNTT2-K55 Trang 45 BẢNG BILL TÊN BIẾN KIỂU DỮ LIỆU Ràng buộc Mô tả IdBill INT(11) Khoá chính ID CreateAt DATETIME Allow Null Ngày tạo Address VARCHAR(60) Not Null Địa chỉ giao hàng ShipTime DATETIME Allow Null Thời gian giao hàng Position INT(11) Allow Null Thứ tự đơn hàng đó trong phiên IdPhien INT(11) Allow Null ID phiên giao hàng IdCustomer INT(11) Khoá ngoại ID khách hàng IdStore INT(11) Khoá ngoại ID cửa hàng State INT(11) Not Null Trạng thái đơn hàng LAT DOUBLE Not Null Vĩ dộ LON DOUBLE Not Null Kinh độ actualtime DATETIME Allow Null Thời gian giao hàng thực tế BẢNG CATEGORYSTORE BẢNG STORE TÊN BIẾN KIỂU DỮ LIỆU Ràng buộc Mô tả IdCategoryStore INT(11) Khoá chính ID CategoryName VARCHAR(60) Not Null Tên loại cửa hàng Description VARCHAR(255) Allow Null Nội dung Slug VARCHAR(255) Not Null Tên đường dẫn trên URL
  • 46. HUST SOICT Xây dựng thuật toán phân công giao việc cho hệ thống MBay ĐATN 2015 Sinh viên Nguyễn Văn Hạ SHSV: 20102648 Lớp: CNTT2-K55 Trang 46 TÊN BIẾN KIỂU DỮ LIỆU Ràng buộc Mô tả IdStore INT(11) Khoá chính ID Name VARCHAR(255) Not Null Tên Image VARCHAR(255) Allow Null Hình ảnh Adress VARCHAR(255) Not Null Địa chỉ PrimaryPhone VARCHAR(255) Not Null Điện thoại CreateAt DATETIME Not Null Thời gian tạo Actived TINYINT(1) Allow Null Trang thái hoạt động Distance INT(11) Allow Null Bán kính giao hàng Automatic TINYINT(1) Allow Null Tự đông phân công giao hàng slug VARCHAR(255) Not Null Tên hiển thị trên URL IdCategoryStore INT(11) Khoá ngoại IdBoss INT(11) Khoá ngoại ID chủ cửa hàng report VARCHAR(255) Allow Null LAT DOUBLE Not Null Vĩ độ cửa hàng LON DOUBLE Not Null Kinh độ cửa hàng BẢNG BILLDETAIL Tên biến KIỂU DỮ LIỆU Ràng buộc Mô tả Id INT(11) Khoá chính ID IdBill INT(11) Khoá ngoại ID cửa hàng IdProduct INT(11) Khoá ngoại ID sản phẩm number INT(11) Not null Số lượng sản phẩm BẢNG PRODUCTIMAGE TÊN BIẾN KIỂU DỮ LIỆU Ràng buộc Mô tả Id INT(11) Khoá chính ID ImageSrc VARCHAR(255) Not Null Đường dẫn hình ảnh IdProduct INT(11) Not Null ID sản phẩm
  • 47. HUST SOICT Xây dựng thuật toán phân công giao việc cho hệ thống MBay ĐATN 2015 Sinh viên Nguyễn Văn Hạ SHSV: 20102648 Lớp: CNTT2-K55 Trang 47 BẢNG CATEGORY TÊN BIẾN KIỂU DỮ LIỆU RÀNG BUỘC MÔ TẢ IdCategory INT(11) Khoá chính ID Tag VARCHAR(60) Allow Null Name VARCHAR(60) Not Null Tên thể loại sản phẩm Description VARCHAR(255) Allow Null Nội dung Active TINYINT(1) Allow Null Trạng thái KeyWord VARCHAR(10) Allow Null Từ khoá tìm kiếm slug VARCHAR(255) Not Null Tên hiển thị trên URL IdCatStore INT(11) Khoá ngoại ID cửa hàng BẢNG PRODUCT TÊN BIẾN KIỂU DỮ LIỆU RÀNG BUỘC MÔ TẢ IdProduct INT(11) Khoá chính ID Name VARCHAR(60) Not Null Tên sản phẩm IdCategory INT(11) Khoá ngoại ID thể loại Tag VARCHAR(10) Allow Null KeyWord VARCHAR(10) Allow Null Từ khoá slug VARCHAR(255) Not Null Tên hiển thị trên URL BẢNG STOREPRODUCT TÊN BIẾN KIỂU DỮ LIỆU RÀNG BUỘC MÔ TẢ Id INT(11) Khoá chính IdStore INT(11) Khoá ngoại ID cửa hàng IdProduct INT(11) Khoa ngoại ID sản phẩm Detail VARCHAR(255) Allow Null Chi tiết Price INT(11) Not Null Giá thật SalePrice INT(11) Allow Null Giá khi giảm Sale VARCHAR(255) Allow Null Active TINYINT(1) Allow Null Trạng thái sản phẩm DateBegin DATETIME Allow Null Ngày bắt đầu khuyến mãi DateEnd DATETIME Allow Null Ngày kết thúc khuyến mãi createat DATETIME Allow Null Ngày tạo updateat DATETIME Allow Null Ngày cập nhất mới
  • 48. HUST SOICT Xây dựng thuật toán phân công giao việc cho hệ thống MBay ĐATN 2015 Sinh viên Nguyễn Văn Hạ SHSV: 20102648 Lớp: CNTT2-K55 Trang 48 Chương 6: Đánh giá kết quả, ưu nhược điểm, khả năng ứng dụng 6.1 Kết quả đạt được Kết quả nghiên cứu đã xây dựng thành công ứng dụng gợi ý giao hàng tự động cho hệ thống mbay. Với bộ dữ liệu - 15 cửa hàng với địa điểm ở Hà Nội - Mỗi cửa hàng có tầm khoảng 15-20 sản phẩm - Mỗi cửa hàng có hơn một nhân viên giao hàng đang rỗi. - Mỗi cửa hàng tại thời điểm thuật toán chạy sẽ có 40,50 đơn hàng được tạo ngẫu nhiên - Có 100 khách hàng trong hệ thống Môi trường thử nghiệm thực tế - Hệ điều hành: máy chủ ảo VPS Windows Server 2008 - Apache PHP 5.5, Mysql 5.6 - Java JDK 1.7 Chạy thử nghiệm ứng dụng Sử dụng công cụ Task Scheduler tích hợp sẵn trong Windows để tự khởi động chương trìng java.exe –jar mbay.jar Đặt trong vòng 5 phút, Hệ điều hành Windows sẽ kích hoạt lại tiến trình java.exe – jar mbay.jar
  • 49. HUST SOICT Xây dựng thuật toán phân công giao việc cho hệ thống MBay ĐATN 2015 Sinh viên Nguyễn Văn Hạ SHSV: 20102648 Lớp: CNTT2-K55 Trang 49 Hình 5 – 11: Khởi chạy mBay.jar từ Windows Kết quả chạy thử nghiệm : Với của hàng có Idstore = 1 và có 30 đơn hàng và hiện tại chỉ có 1 nhân viên giao hàng đang rỗi Với địa điểm 30 đơn hàng có vị trí toạ độ như sau Vị trí 0 [21.021035 , 105.841451] Vị trí cửa hàng,vị trí xuất phát Vị trí 1 [21.0113972 , 105.8561946] Vị trí 2 [21.0373732 , 105.8537085] Vị trí 3 [21.0197978 , 105.8263103] Vị trí 4 [21.0202193 , 105.8164842] Vị trí 5 [21.0141834 , 105.8505145] Vị trí 6 [21.0165798 , 105.8504266] Vị trí 7 [20.9972105 , 105.8450375] Vị trí 8 [21.0008726 , 105.8348482] Vị trí 9 [21.0097566 , 105.8221182] Vị trí 10 [21.0432988 , 105.8308301] Vị trí 11 [21.042777 , 105.8373434] Vị trí 12 [21.0070204 , 105.8628889] Vị trí 13 [21.0377219 , 105.8386193] Vị trí 14 [21.0142647 , 105.8438075] Vị trí 15 [21.0185057 , 105.8422794] Vị trí 16 [21.0333582 , 105.8287007] Vị trí 17 [21.020724 , 105.8350958] Vị trí 18 [21.0075024 , 105.8388949] Vị trí 19 [21.0216676 , 105.8406434] Vị trí 20 [21.019214 , 105.8465329] Vị trí 21 [21.0194522 , 105.8501732] Vị trí 22 [21.0162073 , 105.8448095] Vị trí 23 [21.0321479 , 105.847258] Vị trí 24 [21.0210331 , 105.8162065] Vị trí 25 [21.0192594 , 105.8418901] Vị trí 26 [21.0299824 , 105.8395877] Vị trí 27 [21.0106729 , 105.8176505] Vị trí 28 [21.0195331 , 105.8598292], Vị trí 29 [21.0311337 , 105.8234428] Vị trí 30 [21.0336148 , 105.8395568] Khi chạy thuật toán: nhân viên cửa hàng có Idstore =1 nhận 30 đơn hàng và trình tự giao hàng như sau 0 19 17 18 7 8 9 27 4 24 3 29 16 10 11 13 30 26 23 2 28 12 1 5 6 21 20 22 14 15 25
  • 50. HUST SOICT Xây dựng thuật toán phân công giao việc cho hệ thống MBay ĐATN 2015 Sinh viên Nguyễn Văn Hạ SHSV: 20102648 Lớp: CNTT2-K55 Trang 50 Hình 5 – 12: Chu trình giao hàng tối ưu cho nhân viên 6.2 Đánh giá kết quả Cả nhóm đã xây dựng hệ thống Mbay, triển khai được được hệ thống mbay, chạy trên 2 nền tảng Web và mobile. Cá nhân đã xây dựng được ứng dụng phân công giao hàng và phân công thứ tự giao hàng Ưu điểm :
  • 51. HUST SOICT Xây dựng thuật toán phân công giao việc cho hệ thống MBay ĐATN 2015 Sinh viên Nguyễn Văn Hạ SHSV: 20102648 Lớp: CNTT2-K55 Trang 51 Nhóm : Hệ thống Mbay có giao diện dễ dùng dễ tương tác đầy đủ các chức năng ban đầu thiết kế. Cá nhân :Hoàn thành nhiệm vụ được giao Dùng thuật toán chia để trị : các danh sách đơn hàng thành các vùng nhỏ, Mỗi nhân viên quản lý mỗi vùng nhằm rút ngắn đường đi giao hàng giảm chi phí và thời gian giao hàng. Áp dụng được thuật toán đàn kiến từ dữ liệu googlemaps để sắp xếp trình tự giao hàng. Nhược điểm : +) Bộ dữ liệu thử nghiệm còn ít, chưa thực tế. +) Chưa tích hợp trong số thời gian vào thuật toán, Mới chỉ dùng trọng số khoảng cách của các đơn hàng.
  • 52. HUST SOICT Xây dựng thuật toán phân công giao việc cho hệ thống MBay ĐATN 2015 Sinh viên Nguyễn Văn Hạ SHSV: 20102648 Lớp: CNTT2-K55 Trang 52 KẾT LUẬN Tổng kết Đồ án bước đầu đã hiểu được thuật toán phân công giao hàng trực tuyến và hiểu được một phần thuật toán đàn kiến, Và cũng đã ứng dụng thành công vào hệ thống Mbay. Thông qua việc xây dựng ứng dụng này, em đã tích lỹ được thêm nhiều kinh nghiệm về lập trình java và hiểu rõ 2 thuật toán phân công giao hàng, thuật toán đàn kiến.Tuy nhiên, do nhiều yếu tố chủ quan và khách quan như thời gian eo hẹp, trình độ còn nhiều hạn chế cũng như đề tài Mbay tương đối lớn nên đồ án vẫn còn các nhược điểm sau : chưa đi sâu vào phân tích yêu cầu phần mềm, phân tích thiết kế hệ thống Mbay. Chưa thể đi sâu vào phân tích các biến thể của thuật toán đàn kiến, so sánh về hiệu năng từng biết thể. Ứng dụng chỉ sử dụng biết thể cơ bản của thuật toán ACO, chưa đánh giá hiệu năng của thuật toán phân công, thuật toán phân công còn cứng nhắt, không có chế độ tuỳ biến cho từng cửa hàng. Trong tương lại, Ứng dụng mbay sẽ được triển khai thực tế, Và từ những dữ liệu thực tế và thu tập ý kiến của người dùng thì Mbay sẽ được tối ưu hơn, khắc phục những nhược điểm hiện tại. Hướng phát triển của đồ án Đề tài “xây dựng hệ thống chợ điện tử trực tuyến mbay –Thuật toán phân công giao hàng tự động” trong khuôn khổ của đồ án này chỉ dừng lại ở nghiên cứu và cài đặt thử nghiệm ban đầu trên tập dữ liệu mẫu, chưa thực tế. Có nhiều hướng phát triểncho đề tài phân công giao hàng như sau : - Triển khai hệ thống mbay trên thực tế, với các chính sách quảng cáo, thu hút nhiều người sửa dụng. - Chuyển đổi thuật toán chạy trên nền tảng PHP để tối ưu hoá vấn đề phần cứng và tối thiểu cách tương tác với hệ thống, Làm quy trình phân công giao hàng rõ ràng hơn. - Tạo ra các phương pháp giao hàng khác trong đó chủ cửa hàng tuỳ biến được các tham số. - Thiết kế học máy trên bộ dữ liệu phân công giao hàng cũ, để thuật toán trở nên tối ưu hơn.
  • 53. HUST SOICT Xây dựng thuật toán phân công giao việc cho hệ thống MBay ĐATN 2015 Sinh viên Nguyễn Văn Hạ SHSV: 20102648 Lớp: CNTT2-K55 Trang 53 TÀI LIỆU THAM KHẢO [1] Marco Dorigo, Thomas Stutzle, Marco Colony Optimization, 1999. [2] Ant Colony Algorith, www.codeproject.com, truy cập lần cuối 1/5/2015. [3] ACO, http://wikipedia.org, truy cập lần cuối ngày 1/5/2015. [4] TSP, http://wikipedia.org, truy cập lần cuối ngày 1/5/2015. [5] G. L. Nemhauser and L. A. Wolsey, Interger and Combinatorial Optimization, Wiley-Interscience, 1998 [6] F. Rossi, P. Van Beek, and T. Walsh, Eds. Handbook of Constraint Programming, Elsevier, 2006 [7] T. Gonzalez, Handbook of Approximation Algorithms and Metaheuristics, Chapman and Hall/CRC, 2007 [8] M. Dorigo and T. Stutzle, Ant Colony Optimization, Bradford Books, London, 2004 [9] Ban Hà Bằng, Nguyễn Đức Nghĩa, Tạp chí tin học và điều khiển học T.29 S.3( 2013) 285-297 [10] M. Dorigo & L.M. Gambardella: đề xuất. Ant Colony System, IEEE Transactions on Evolutionary Computation, 1(1):53-66,1997.