ĐẠI HỌC THÁI NGUYÊN

TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG

Nguyễn Văn Thịnh

TRỰC QUAN HOÁ TRẠNG THÁI

GIAO THÔNG HÀ NỘI TRÊN NỀN BẢN ĐỒ SỐ

LUẬN VĂN THẠC SỸ

CHUYÊN NGÀNH KHOA HỌC MÁY TÍNH

THÁI NGUYÊN - 2015

ĐẠI HỌC THÁI NGUYÊN

TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG

Nguyễn Văn Thịnh

TRỰC QUAN HOÁ TRẠNG THÁI

GIAO THÔNG HÀ NỘI TRÊN NỀN BẢN ĐỒ SỐ

Chuyên ngành: Khoa học máy tính

Mã số: 60 48 0101

LUẬN VĂN THẠC SỸ

CHUYÊN NGÀNH KHOA HỌC MÁY TÍNH

Giáo viên hướng dẫn: TS. Nguyễn Ngọc Hóa

THÁI NGUYÊN - 2015

LỜI CẢM ƠN

Trong quá trình học tập và hoàn thành luận văn tốt nghiệp, tôi đã nhận được rất

nhiều sự giúp đỡ, động viên nhiệt tình từ thầy cô, gia đình và bạn bè. Và đó đã trở

thành một nguồn động lực lớn giúp tôi có thể thực hiện được luận văn nghiên cứu

được giao. Với tất cả sự cảm kích và trân trọng, tôi xin được gửi lời cảm ơn sâu sắc

đến tất cả mọi người.

Tôi xin bày tỏ sự cám ơn đặc biệt tới thầy TS Nguyễn Ngọc Hóa, người đã định

hướng cho tôi trong lựa chọn đề tài luận văn, đưa ra những nhận xét quý giá và trực

tiếp hướng dẫn tôi trong suốt quá trình nghiên cứu và hoàn thành luận văn tốt nghiệp.

Tôi xin cảm ơn các thầy cô trong Trường Đại học Công Nghệ Thông Tin và

truyền thông – Đại học Thái Nguyên đã dạy bảo tận tình cho tôi trong suốt khoảng

thời gian học tập tại trường.

Xin được gửi lời cảm ơn sâu sắc nhất tới gia đình của mình, nguồn động viên

và cổ vũ lớn lao và là động lực giúp tôi thành công trong công việc và trong cuộc

sống.

Cuối cùng, xin cảm ơn tập thể lớp cao học CNTT K12E và đặc biệt những

người bạn tốt đã ở bên tôi, khuyến khích, động viên tôi và cho tôi những lời khuyên

chân thành trong cuộc sống và học tập.

Xin trân trọng cảm ơn!

i

Thái Nguyên, ngày 25 tháng 08 năm 2015 Học viên Nguyễn Văn Thịnh

LỜI CAM ĐOAN

Tôi xin cam đoan kết quả đạt được trong luận văn là sản phẩm của riêng cá nhân

tôi. Những điều được trình bày trong toàn bộ nội dung của luận văn, hoặc là của cá

nhân hoặc là được tổng hợp từ nhiều nguồn tài liệu. Tất cả các tài liệu tham khảo đều

có xuất xứ rõ ràng và được trích dẫn hợp pháp.

Tôi xin hoàn toàn chịu trách nhiệm theo quy định cho lời cam đoan của mình.

ii

Thái Nguyên, ngày 25 tháng 08 năm 2015 Học viên Nguyễn Văn Thịnh

MỤC LỤC

LỜI CẢM ƠN..................................................................................................... i

LỜI CAM ĐOAN .............................................................................................. ii

MỤC LỤC ......................................................................................................... ii

DANH MỤC CÁC HÌNH VẼ ............................................................................ v

DANH MỤC BẢNG BIỂU .............................................................................. vi

LỜI MỞ ĐẦU .................................................................................................... 1

CHƯƠNG 1: KHÁI QUÁT VỀ TRỰC QUAN HOÁ VÀ BÀI TOÁN TRỰC QUAN HÓA TRẠNG THÁI GIAO THÔNG HÀ NỘI .................................... 2

1.1. Khái quát trực quan hóa ........................................................................... 2

1.1.1. Trực quan hóa ................................................................................... 2

1.1.2. Trực quan hóa dữ liệu ....................................................................... 6

1.1.3. Trực quan hóa dữ liệu biểu diễn trạng thái giao thông .................. 18

1.2. Bài toán trực quan Hóa trạng thái giao thông Hà Nội ........................... 29

1.2.1. Bối cảnh hệ thống giao thông hiện nay của nước ta .......................... 29

1.2.2. Bài toán trực quan hóa trạng thái hóa giao thông Hà Nội trên nền bản

đồ số ........................................................................................................ 30

1.2.3. Mô hình trực quan hóa trạng thái giao thông ..................................... 31

1.2.4. Mô hình kiến trúc hệ thống giải pháp trực quan hoá trạng thái giao

thông ........................................................................................................ 33

CHƯƠNG 2: MỘT SỐ HỖ TRỢ TRỰC QUAN HÓA TRẠNG THÁI GIAO THÔNG HÀ NỘI TRÊN NỀN BẢN ĐỒ SỐ ................................................. 34

2.1.Kỹ thuật và thuật toán ứng dụng trực quan hóa trạng thái giao thông ... 34

2.1.1. Heatmap trực quan hóa tình trạng trên tuyến đường giao thông . 34

2.1.2. Xây dựng biểu đồ thống kê dữ liệu trạng thái giao thông ........... 40

iii

2.1.3. D3JS ............................................................................................. 41

2.1.4. Vẽ đồ họa thực hiện trực quan hóa ................................................. 43

2.2. Giải pháp trong quá trình triển khai ...................................................... 46

2.2.1. Kết hợp Leaflet và Heatmap ........................................................... 46

2.2.2. Thao tác với dữ liệu dạng GeoJSON .............................................. 46

2.2.3. Kết nối cơ sở dữ liệu ....................................................................... 47

2.2.4. Cập nhật dữ liệu thời gian thực ...................................................... 47

2.3. Công cụ hỗ trợ trực quan hoá trạng thái giao thông .............................. 47

2.3.1. Google Maps ................................................................................... 47

2.3.2. Google Maps API ........................................................................... 47

2.3.3. PostgreSQL/PostGIS ...................................................................... 48

2.3.4. Apache ............................................................................................ 50

2.3.5. Leaflet ............................................................................................. 51

CHƯƠNG 3: THỰC NGHIỆM VÀ ĐÁNH GIÁ HỆ THỐNG TRỰC QUAN

HÓA TRẠNG THÁI GIAO THÔNG HÀ NỘI ................................................ 52

3.1. Phân tích thiết kế hệ thống .................................................................... 52

3.1.1. Kiến trúc hệ thống .......................................................................... 52

3.1.2. Chức năng hệ thống ........................................................................ 53

3.1.3. Lược đồ cơ sở dữ liệu ..................................................................... 55

3.2. Xây dựng ứng dụng và thử nghiệm ....................................................... 60

3.2.1. Môi trường ứng dụng ...................................................................... 60

3.2.2. Dữ liệu thử nghiệm ......................................................................... 60

3.3. Kết quả thử nghiệm ............................................................................... 61

3.4. Đánh giá ................................................................................................. 65

KẾT LUẬN ...................................................................................................... 66

iv

TÀI LIỆU THAM KHẢO ................................................................................ 68

DANH MỤC CÁC HÌNH VẼ

Hình 1.1: Trực quan hóa khoa học mô phỏng sự bất ổn định Raleigh-Taylor bởi

sự hòa trộn giữa 2 chất lưu. ......................................................................................... 3

Hình 1.2 : Trực quan hóa dữ liệu là một trong các bước trong phân tích và trình diễn dữ liệu. ................................................................................................................. 7

Hình 1.3: Mô hình khái niệm của trực quan hóa ............................................. 10

Hình 1.4: Vai trò của mô hình dữ liệu trong phần mềm trực quan hóa .......... 10

Hình 1.5: Sơ đồ mô tả mô hình tham khảo trực quan hóa thông tin ............... 11

Hình 1.6: Một trực quan hóa dữ liệu mạng xã hội ........................................... 13 Hình 1.7: Bản chất của trực quan hóa dựa vào đánh giá mối quan hệ giữa 3

thành phần. ................................................................................................................ 15

Hình 2.1: Mô hình trực quan hóa trạng thái giao thông ................................... 31

Hình 2.2: Mô hình kiến trúc hệ thống WebGIS ............................................... 33

Hình 2.3 : kết quả hiển thị các điểm trên bản đồ .............................................. 36

Hình 2.4 : Kết quả vẽ theo phương pháp “đóng hộp” ...................................... 36 Hình 2.5 : Kết quả vẽ theo phương pháp mật độ nhân ..................................... 38

Hình 2.6 : Tập các điểm biểu diễn trên tuyến đường ....................................... 39

Hình 2.7 : Luật vẽ trực giao ............................................................................. 44

Hình 3.1: Mô hình kiến trúc ............................................................................. 52

Hình 3.2 : Sơ đồ áp dụng mô hình trực quan hóa............................................. 54

Hình 3.3: Lược đồ cơ sở dữ liệu ....................................................................... 56

Hình 3.4: Màn hình chương trình thử nghiệm ................................................. 62

Hình 3.5: Biểu đồ tổng hợp trạng thái giao thông theo thời điểm.................... 63

Hình 3.6: Biểu đồ tổng hợp trạng thái giao thông theo ngày ........................... 63

v

Hình 3.7: Biểu đồ tổng hợp trạng thái giao thông theo tuần ............................ 64 Hình 3.8: Biểu đồ tổng hợp trạng thái giao thông theo tháng .......................... 64 Hình 3.9: Trực quan trạng thái giao thông trên bản đồ theo thời điểm chọn ... 65

DANH MỤC BẢNG BIỂU

Bảng 3.1: Trường dữ liệu thông tin trạng thái giao thông ............................... 57 Bảng 3.2: Trường dữ liệu thông tin tuyến đường giao thông .......................... 58

Bảng 3.3: Trường dữ liệu thống kê trạng thái giao thông theo ngày ............... 58 Bảng 3.4: Trường dữ liệu thống kê trạng thái giao thông theo tuần ................ 59

Bảng 3.5: Trường dữ liệu thống kê trạng thái giao thông theo tháng .............. 59

vi

Bảng 3.6: Trường dữ liệu thống kê trạng thái giao thông theo năm ................ 60

LỜI MỞ ĐẦU

Giao thông là một vấn đề quan trọng, trong đó ùn tắc giao thông vẫn là vấn đề

“nóng” của các đô thị lớn, để giải quyết tình trạng ùn tắc giao thông trên địa bàn Hà

Nội, ngành giao thông cần đẩy mạnh việc ứng dụng CNTT một cách tổng thể. Đó là

các giải pháp thu thập thông tin giao thông; quy hoạch, điều tiết đường sá; điều khiển

giao thông; xác định lưu lượng và cung cấp thông tin giao thông tới người tham gia

giao thông, cảnh báo sớm cho người tham gia giao thông về tình trạng ùn tắc tại các

tuyến phố, để người dân chủ động thay đổi phương tiện, hướng đi trên đường …

Thực trạng đó chính là động lực chính để em chọn đề tài luận văn là “Trực quan

hoá trạng thái giao thông Hà Nội trên nền bản đồ số” để thực hiện luận văn Cao học.

Trong luận văn nghiên cứu mã số 01C-04/08-2014-2 của Sở KH-CN Hà Nội về

“Hệ thống thông tin trạng thái giao thông thành phố Hà Nội: Thực trạng và giải pháp”,

xây dựng thu thập và cung cấp thông tin trạng thái giao thông của một số tuyến phố

chính Hà Nội. Dựa vào những kết quả thu thập được dữ liệu trạng thái giao thông Hà

Nội từ các nguồn khác nhau (từ VOV giao thông, từ cộng đồng, từ các hệ thống

camera giám sát giao thông, …).

Với mục tiêu của cụ thể cần làm là ta hiển thị bản đồ các tuyến đường giao thông

Hà Nội dựa trên nền bản đồ số, trên bản đồ này trực quan hình ảnh giao thông thời

gian thực và hiển thị biểu đồ thống kê các mức độ tắc nghẽn giao thông tại các thời

điểm. Từ đó cho phép người tham gia giao thông, cán bộ quản lý giao thông đô thị,…

có thể quan sát, nắm bắt phân tích được một cách đầy đủ và dễ hình dung, dễ đánh

giá, so sánh trạng thái các điểm nóng giao thông trong thành phố.

Nội dung luận văn được trình bày trong các chương chính sau:

Chương 1 – Khái quát về Trực quan hóa và bài toán trực quan hóa trạng thái

giao thông Hà Nội

Chương 2 - Một số hỗ trợ trực quan hóa trạng thái giao thông Hà Nội trên nền

bản đồ số

Chương 3 - Thực nghiệm và đánh giá hệ thống Trực quan hóa trạng thái giao

1

thông Hà Nội

CHƯƠNG 1: KHÁI QUÁT VỀ TRỰC QUAN HOÁ VÀ BÀI TOÁN TRỰC QUAN HÓA TRẠNG THÁI GIAO THÔNG HÀ NỘI

1.1. Khái quát trực quan hóa

1.1.1. Trực quan hóa

Trực quan hóa (visualization) là kỹ thuật tạo ra những hình ảnh, biểu đồ để

diễn tả thông điệp. Trực quan hóa nghiên cứu trình bày một cách trực quan, tương tác

khối dữ liệu trừu tượng để tăng cường nhận thức của con người. Trực quan hóa thông

qua những hình tượng trực quan đã diễn tả những ý tưởng trừu tượng và cụ thể từ

thủa sơ khai của loài người. Những ví dụ trong lịch sử như những hình vẽ trong hang

động, chữ tượng hình Ai Cập, hình học Hi Lạp và những phương pháp mang tính

cách mạng của những bản vẽ kỹ thuật dành cho mục tiêu khoa học và công nghệ của

Leonardo da Vinci [4].

Ngày nay, trực quan hóa đã mở rộng ứng dụng trong các ngành khoa học, đào

tạo, công nghệ, môi trường tương tác, dược, .... điển hình của ứng dụng trực quan hóa

là sử dụng đồ họa máy tính. Việc phát minh ra đồ họa máy tính có thể là sự phát triển

quan trọng nhất của trực quan hóa kể từ khi phát minh ra cách phối cảnh trung tâm

từ thời kỳ Phục Hưng. Và sự phát triển của animation cũng giúp gia tăng trực quan

hóa.

Việc sử dụng trực quan hóa để biểu diễn dữ liệu không phải là hiện tượng mới.

Nó đã được sử dụng trong bản đồ, bản vẽ khoa học, những sơ đồ dữ liệu từ hàng ngàn

năm trước. Đồ họa máy tính ngay từ khi ra đời đã được sử dụng để nghiên cứu các

vấn đề khoa học. Tuy nhiên, trong những ngày đầu sự thiếu năng lực đồ họa đã hạn

chế lợi ích của chúng. Tầm quan trọng của trực quan hóa như hiện nay bắt đầu từ năm

1987 khi xuất bản cuốn “Visualization in Scientific Computing, a special issue of

Computer Graphics”. Từ đó đã có vài hội nghị, hội thảo đã được bảo trợ bởi IEE

Computer Society và ACM SIGGRAPH dành cho những chủ đề thông thường và

2

những lĩnh vực đặc biết như trực quan hóa khối lượng.

Hầu hết mọi người thấy gần gũi với những hoạt họa số được sinh ra để biểu diễn

dữ liệu khí tượng trong những bản tin thời tiết trên tivi, qua đó có thể phân biệt giữa

những mô hình thực tế với những ảnh vệ tinh được thể hiện trong chương trình. Trên

TV cũng thường có những trực quan hóa khoa học như thể hiện hoạt động của máy

tính, hay những sự tái hiện hoạt động của phố xá hoặc những tai nạn máy bay, hay là

những hoạt động của tàu vũ trụ. Một dạng động khác của trực quan hóa là những hoạt

họa giáo dục hoặc những biểu diễn theo thời gian có khả năng làm nổi bật sự hiểu

biết về hệ thống biến đổi theo thời gian.

Trực quan hóa khoa học thường được thực hiện bởi những phần mềm chuyên

biệt. Một số phần mềm chuyên biệt đó được phát hành dưới dạng mã mở và thường

là bắt nguồn từ các trường đại học, trong môi trường học thuật thì việc chia sẻ công

cụ phần mềm và cho phép sử dụng mã nguồn là bình thường. Bên cạnh đó, cũng có

nhiều phần mềm bản quyền trực quan hóa khoa học.

Hình 1.1: Trực quan hóa khoa học mô phỏng sự bất ổn định Raleigh-Taylor bởi

sự hòa trộn giữa 2 chất lưu.

 Trực quan hóa khoa học (Scientific visualization)

Trực quan hóa khoa học là sự biến đổi, lựa chọn và biểu diễn dữ liệu từ

thử nghiệm hoặc mô phỏng với cấu trúc hình học tuyệt đối hoặc rõ ràng để cho

phép khảo sát, phân tích và hiểu dữ liệu. Trực quan hóa khoa học quan tâm và

3

nhấn mạnh sự biểu diễn dữ liệu và sử dụng chủ yếu là kỹ thuật đồ họa và hoạt

họa. Phần quan trọng nhất của trực quan hóa khoa học là biểu diễn trực quan

các thí nghiệm và hiện tượng như nó đã xảy ra. Những khu vực truyền thống

của trực quan hóa khoa học là: trực quan hóa dòng chảy, y khoa, thiên văn,

hóa học

 Trực quan hóa thông tin (Information visualization)

Trực quan hóa thông tin tập trung những công cụ máy tính hỗ trợ để

khảo sát lượng lớn dữ liệu trừu tượng. Cụm từ “information visualization” bao

hàm lựa chọn, định dạng và biểu diễn dữ liệu theo dạng dễ hiểu và tham khảo

cho người sử dụng. Điều quan trọng trong trực quan hóa thông tin là cường độ

trực quan và tính tương tác. Những công nghệ mạnh mẽ cho phép người sử

dụng thay đổi trực quan trong thời gian thực tạo ra khả năng tuyệt vời cảm

nhận về nguyên mẫu và mối quan hệ cấu trúc với dữ liệu trừu tượng ban đầu.

 Trực quan hóa giáo dục (Educational visualization)

Trực quan hóa giáo dục ít khi sử dụng bộ giả lập mà thường tạo trước

ở máy tính các hình ảnh về cái gì đó để phục vụ cho giáo dục. Nó rất hữu ích

khi dạy những chủ đề khó như cấu trúc nguyên tử bởi vì nguyên tử quá nhỏ để

nghiên cứu dễ dàng mà không tốn kém và rất khó có điều kiện để sử dụng

những trang bị kỹ thuật cao cấp khi nghiên cứu

 Trực quan hóa tri thức (Knowledge visualization)

Là sử dụng biểu diễn trực quan hóa để chuyển đổi tri thức giữa ít nhất

2 người để cải thiện cách thức truyền tri thức bằng cách sử dụng các phương

thức trực quan hóa sử dụng máy tính và không sử dụng máy tính bổ sung nhau.

Một số định dạng trực quan như: trực quan hóa bằng bảng phác thảo, biểu đồ,

hình ảnh, đối tượng, tương tác, các ứng dụng trực quan hóa thông tin và trực

quan hóa ảo.

 Trực quan hóa sản phẩm (Product visualization)

Trực quan hóa sản phẩm bao gồm các công nghệ phần mềm trực quan

để quan sát và vận hành mô hình 3D, bản vẽ kỹ thuật và những tài liệu liên

4

quan khác của các thành phần sản xuất và khối lượng lớn các sản phẩm. Đó là

một phần chủ chốt trong quản lý vòng đời sản phẩm. Phần mềm trực quan hóa

sản phẩm điển hình cung cấp hình ảnh thực cấp độ cao của sản phẩm đó trước

khi sản xuất. Mục đích của chức năng này xuyên suốt từ thiết kế và tạo kiểu

dáng đến bán hàng và tiếp thị. Trực quan hóa sản phẩm là một hướng quan

trọng của quá trình phát triển sản phẩm.

 Truyền thông trực quan (Visual communication)

Truyền thông trực quan là phương pháp truyền những ý tưởng thông

qua hiển thị trực quan thông tin. Căn bản nó liên quan đến ảnh 2 chiều, nó bao

gồm: chữ và số, nghệ thuật, ký hiệu và các tài nguyên điện tử. Nghiên cứu hiện

nay hướng đến thiết kế web và tiện ích hướng đồ họa.

 Phân tích trực quan (Visual analytics)

Phân tích trực quan tập trung vào sự tương tác giữa con người với hệ

thống trực quan hóa như một phần của quá trình phân tích dữ liệu. Phân tích

trực quan được định nghĩa như là “môn khoa học phân tích được hỗ trợ bởi

giao diện tương tác trực quan”.

Trọng tâm của nó là sự trình bày thông tin trong không gian thông tin

lớn và thay đổi liên tục. Nghiên cứu phân tích trực quan tinh lọc những sự vận

hành thực tế và tri giác khiến cho người dùng xác định được những kết quả

định trước và khám phá những kết quả không định trước không không gian

thông tin phức tạp.

Để trình bày dữ liệu một cách hiệu quả, việc trực quan hóa dữ liệu nên:

- Hiển thị dữ liệu

- Tạo cho người xem có những suy nghĩ về chất hơn là về các phương pháp

luận, thiết kế đồ họa, công nghệ sản xuất đồ họa hay những thứ khác

- Tránh bóp méo dữ liệu

- Trình bày nhiều số trong một không gian nhỏ

- Làm dữ liệu lớn trở nên mạch lạc

- Kích thích mắt để so sánh các phần khác nhau của dữ liệu

5

- Trình bày dữ liệu chi tiết ở nhiều cấp độ, từ tổng quan đến chi tiết

- Được tích hợp chặt chẽ với các mô tả thống kê và lời nói của một tập dữ

liệu

1.1.2. Trực quan hóa dữ liệu

Trực quan hóa dữ liệu (data visualization hay data visualization) là một phân

nhánh của trực quan hóa với những thống kê được trình bày bằng đồ họa và các thông

tin địa lý hoặc dữ liệu không gian (như những bản đồ chuyên đề) được phân tán trong

các dạng biểu đồ.

Trực quan hóa dữ liệu được quan niệm bởi nhiều ngành lý thuyết tương đương

như một mô hình hiện đại của truyền thông trực quan. Nó không thuộc riêng một lĩnh

vực nào mà là sự giao thoa của nhiều ngành. Một số người quan niệm nó như một

nhánh hiện đại của thống kê mô tả, một số khác coi nó là công cụ phát triển lý thuyết

nền. Nó bao gồm sự sáng tạo và nghiên cứu phương thức trình diễn trực quan dữ liệu.

Mục tiêu chính của trực quan hóa dữ liệu là truyền thông tin rõ ràng và hiệu quả

cho người sử dụng thông qua đồ họa được lựa chọn như bảng biểu hoặc biểu đồ. Một

trực quan hóa hiệu quả giúp cho người dùng đưa ra các phân tích và luận điểm về dữ

liệu và luận cứ. Nó khiến dữ liệu phức tạp trở thành dễ hiểu và dễ sử dụng hơn. Người

sử dụng có thể có những động tác phân tích đặc biệt như tạo phép so sánh, nhân quả

và áp dụng thiết kế đồ họa (để hiển thị so sánh, nhân quả…). Bảng biểu thường được

dùng khi xem xét phép đo lường của một biến và các loại biểu đồ sẽ hiển thị kết quả

hoặc liên hệ với dữ liệu của một hay nhiều biến.

Trực quan hóa dữ liệu có cả tính khoa học và nghệ thuật. Tốc độ dữ liệu sinh ra

ngày càng lớn cùng với sự gia tăng của nền kinh tế phụ thuộc vào thông tin. Dữ liệu

được tạo bởi hoạt động internet và sự tăng khối lượng cảm biến môi trường như dữ

liệu vệ tinh và camera giao thông dẫn đến “Big Data”. Gia công, phân tích và liên kết

dữ liệu hiện có ở nhiều định dạng khác nhau là thách thức lớn cho trực quan hóa dữ

6

liệu.

a) Tổng quan.

Hình 1.2 : Trực quan hóa dữ liệu là một trong các bước trong phân tích và trình

diễn dữ liệu.

Trực quan hóa dữ liệu hướng đến những công nghệ sử dụng để truyền dữ liệu

hoặc thông tin bằng cách chuyển đổi chúng thành các đối tượng trực quan được trình

bày bằng đồ họa. Mục đích chính là làm cho thông tin rõ ràng và hiệu quả khi sử

dụng. Nó là một trong các bước trong phân tích dữ liệu hoặc khoa học dữ liệu. Theo

Friedman (2008) thì “Mục tiêu chính của trực quan hóa dữ liệu để làm thông tin rõ

ràng và hiệu quả thông qua phương tiện đồ họa. Nó không có nghĩa trực quan hóa dữ

liệu cần phải trông thật tẻ nhạt vì mục đích hiệu quả hay là trông thật phức tạp vì mục

đích làm đẹp. Để truyền tải tính hiệu quả thì thẩm mỹ và chức năng phải đi cùng nhau,

cung cấp cái nhìn vào bên trong khối dữ liệu phức tạp và rải rác bằng cách liên kết

các khía cạnh chính của nó bằng cách trực quan hơn. Do đó, người thiết kế thường

thất bại khi cố gắng đạt sự cân bằng giữa hình thức và chức năng, tạo nên sản phẩm

đẹp tuyệt vời nhưng lại không chứa đựng được mục tiêu chính của nó là truyền tải

thông tin”

Bởi vậy, Fernanda Viegas và Martin M. Wattenberg đã đề xuất một ý tưởng trực

quan hóa không chỉ là truyền tải thông tin rõ ràng mà còn khiến cho người xem chú

7

ý và chờ đợi.

Trực quan hóa dữ liệu liên hệ gần với trình bày dữ liệu bằng đồ họa, trực quan

hóa thông tin, trực quan hóa khoa học, phân tích khảo sát dữ liệu và thống kê đồ họa.

Trong thiên niên kỷ mới, trực quan hóa dữ liệu đa trở thành lĩnh vực năng động trong

nghiên cứu, giảng dạy và phát triển. Trực quan hóa dữ liệu đã liên kết trực quan hóa

khoa học và trực quan hóa thông tin.

Sơ đồ Charles Joseph Minard của Napoleon vào tháng Ba năm 1862 - một ví dụ đầu tiên của một đồ họa thông tin

b) Những đặc điểm hiển thị hiệu quả bằng đồ họa

Người sử dụng của hiển thị dữ liệu thực thi những công tác phân tích cụ thể như

tạo sự so sánh hay xác định nguyên nhân sự việc. Nguyên tắc thiết kế của hiện thị dữ

liệu bằng đồ họa là cân phải hỗ trợ các công tác phân tích đó. Nó tuân theo nguyên

tắc sau: Một thống kê trình bày bằng đồ họa xuất sắc bao gồm rất nhiều ý tưởng phức

tạp để truyền tải một cách đúng đắn, chính xác và hiệu quả. Hiển thị bằng đồ họa cần

phải:

- Hiển thị được dữ liệu

- Hiển thị thực chất dữ liệu hơn là phương pháp, thiết kế đồ hoạc hay công nghệ

xây dựng đồ họa.

- Tránh bóp méo ý nghĩa của dữ liệu

- Hiển thị nhiều chữ số trong không gian nhỏ

- Tạo sự liên kết trong khối dữ liệu lớn

8

- Khuyến khích thị giác so sánh giữa các phần dữ liệu

- Bộc lộ dữ liệu ở một vài cấp chi tiết, từ tổng quan tới cấu trúc tinh

- Phục vụ một mục đích rõ ràng vừa phải: Diễn tả, khảo sát, sắp xếp dữ liệu hoặc

biểu diễn, trang trí.

- Kết hợp chặt chẽ giữa thống kê với diễn tả bằng lời về khối dữ liệu.

1.1.2.1. Kiến trúc và mô hình trực quan hóa dữ liệu

a) Mô hình khái niệm [6,7]

Mặc dụ trực quan hóa đã thay đổi nhanh chóng trong những thế kỷ gần đây,

những công cụ và hệ thống hỗ trợ cho nó được phát triển đặc trưng hơn là được thiết

kế chính thức. Thêm vào đó, có 2 phương hướng trực quan hóa song hành nhau. Thứ

1 là do sự tăng trưởng dữ liệu kèm theo sự giảm giá của thiết bị phần cứng hỗ trợ;

Khi đó trực quan hóa thể hiện ở dạng quan trọng hơn trước kia đặc biệt là trong các

lĩnh vực ứng dụng. Tuy nhiên, công nghệ hỗ trợ thường không áp dụng được cho

nhiều ứng dụng. Xu hướng thứ 2 xuất phát từ sự dư thừa trong dữ liệu. Một cách tiếp

cận không định trước tiêu biểu không định trước được độ lớn và phức tạp của vấn đề.

Thay vì yêu cầu tính toán, sự truy cập dự liệu là trở ngại thông thường. Bước đầu tiên

để phân tích trực quan hóa thành các tập chuyển đổi có thể làm nổi bật những giới

hạn được xác định bằng mô hình khái niệm và phép phân loại phát triển.

- Mô hình dữ liệu: Biểu diễn sự hiển thị dữ liệu

- Mô hình người dùng: biểu diễn yêu cầu mà người dùng cần đáp ứng.

- Mô hình tương tác: Biểu diễn sự tương tác giữa người dùng và hệ thống trực

quan hóa.

- Mô hình tính toán: Biểu diễn công thức tính toán

- Mô hình truyền thông: Biểu diễn sự tương tác giữa các thành phần trong hệ

thống.

- Mô hình hiển thị: Biểu diễn kết quả thực thi các thuật toán biểu diễn dữ liệu.

Mặc dù ý tưởng này đã được đề xuất từ trước đây nhưng cũng có những giới

hạn khi chúng được xem như một tập các lớp. Hình bên trái thể hiện sự tương tác

giữa các lớp của một trực quan hóa điển hình được hiển thị bao gồm các mũi tên có

9

màu sắc khác nhau. Hình bên phải thể hiện rõ hơn vai trò của mô hình dữ liệu.

Hình 1.3: Mô hình khái niệm của trực quan hóa

 Các mô hình dữ liệu

Mô hình dữ liệu là sự biểu diễn của dữ liệu, nó mô tả dữ liệu và cách sử

dụng dữ liệu. Như tại hình 1.4 thể hiện mô hình dữ liệu là lớp biểu diễn

logic và nằm ở giữa lớp biểu diễn vật lý và biểu diễn trực quan

Hình 1.4: Vai trò của mô hình dữ liệu trong phần mềm trực quan hóa

Trong trường hợp đặc biệt, lớp này cung cấp công cụ thông thường cho tất cả

ứng dụng cho định dạng dữ liệu, cung cấp siêu dữ liệu. tạo công thức, thực thi. Lớp

này cung cấp khả năng tính toán, phân tích và công cụ trực quan hóa, cung cấp hạ

tầng để truy cập và biểu diễn dữ liệu. Giống như một hệ thống quản lý dựa trên dữ

10

liệu, nó sẽ ở bên trên hệ điều hành và cho phép xây dựng các ứng dụng. Từ đó, mô

hình dữ liệu sẽ ẩn đằng sau hệ thống tính toán ở bên dưới để mô phỏng, phân tích và

trực quan hóa để người dùng tập trung vào nhận thức dữ liệu thông qua các cơ chế

thông thường để truy cập, sử dụng và trao đổi.

b) Mô hình tham khảo trực quan hóa thông tin

Mô hình tham khảo trực quan hóa thông tin là một kiến trúc phần mềm mẫu phá

vỡ quy trình trực quan hóa thành chuỗi các bước riêng rẽ, từ thu nhận dữ liệu và mô

hình hóa đến mã hóa trực quan dữ liệu thành sự biểu diễn các hiển thị tương tác. Quá

trình này được minh họa ở hình sau.

Hình 1.5: Sơ đồ mô tả mô hình tham khảo trực quan hóa thông tin

Dữ liệu nguồn được ánh xạ đến các bảng dữ liệu phía sau trực quan hóa. Những

bảng dữ liệu phía sau này sau đó được sử dụng để xây dựng trừu tượng trực quan của

dữ liệu, mô hình hóa các tính chất trực quan như vị trí, màu sắc, hình dáng,…Trừu

tượng trực quan này sau đó được dùng để tạo cái nhìn tương tác với dữ liệu, với người

sử dụng sự tương tác có khả năng thay đổi hiệu quả tại tất cả các mức của hệ thống.

- Bước đầu tiên là tập hợp dữ liệu nguồn để tiến hành trực quan. Chúng có thể

là bảng các hình, các đồ họa mạng xã hội, cấu trúc file hoặc bất kỳ tập dữ liệu nào

đó.

- Dữ liệu nguồn này sau đó được dùng để xây dựng các bảng dữ liệu, đó là

11

những đặc trưng bên trong của dữ liệu khi nó được trực quan. Tiến trình chuyển đổi

từ dữ liệu nguồn sang bảng dữ liệu có thể chỉ tập trung vào đọc dữ liệu ở file hoặc cơ

sở dữ liệu nhưng cũng có thể bao gồm cả chuyển đổi dữ liệu.

- Những bảng kết quả (cỏ thể biểu diễn cấu trúc dữ liệu theo hệ thống như biểu

đồ hoặc cây) sau đó được ánh xạ trực quan để tạo ra trừu tượng trực quan là một mô

hình dữ liệu bao gồm các đặc trưng trực quan như các lớp không gian, màu sắc, kích

thước, hình thể. Những trừu tượng trực quan này có nhiệm vụ chứa đầy đủ thong tin

cần thiết để biểu diễn trực quan dữ liệu.

- Hành động biểu diễn dữ liệu trong trừu tượng trực quan được thực hiện thông

qua tiến trình chuyển đổi quang cảnh, trong đó các thành phần biểu diễn sẽ vẽ ra nội

dung của trừu tượng trực quan thành các quang cảnh tương tác. Những quang cảnh

này có thể cung cấp những cách nhìn khác nhau của dữ liệu, ví dụ như cung cấp cách

di chuyển và zoom đến khu vực đặc biệt bằng cách sử dụng chuỗi các hiển thị nhỏ và

phức tạp để hiển thị các hình ảnh nhanh của dữ liệu thay đổi liên tục.

- Người sử dụng tương tác với trực quan hóa (thường thông qua đầu vào là chuột

và bàn phím) có thể phản hồi vào tiến trình này, gây ra sự thay đổi hoặc cập nhật bất

cứ trạng thái nào của trực quan hóa. Ví dụ như kéo một đối tượng, phóng đến một

quang cảnh hoặc mở một file dữ liệu khác.

Mô hình tham khảo trình bày ở trên khá giống với mẫu mô hình hiển thị điều

khiển (model-view-controller) thiết kế để thực thi giao diện người sử dụng.Mẫu này

phân chia thành phần giao diện người sử dụng thành:

- Một mô hình chứa những dữ liệu trả về

- Một hoặc nhiều hướng nhìn thể hiện nội dung của mô hình

- Bộ phận điều khiển cho phép người sử dụng bổ sung, cập nhập mô hình và

hướng nhìn theo đáp ứng.

Mô hình trực quan hóa tham chiếu này mở rộng mẫu thông thường bằng cách thêm

vào các mức. Những bảng dữ liệu chứa những mô hình dữ liệu cơ bản cho rất nhiều

loại trực quan hóa mà mỗi sự trừu tượng trực quan chưa một mô hình trực quan riêng

12

với hướng nhìn và điều khiển của chính nó.

c) Kiến trúc trình bày dữ liệu.

Hình 1.6: Một trực quan hóa dữ liệu mạng xã hội

Kiến trúc trình bày dữ liệu (Data presentation architecture - DPA) là tập các kỹ

năng hướng tới việc xác định, định vị, điều khiển, định dạng và biểu diễn dữ liệu theo

cách tối ưu hóa việc truyền tải ý nghĩa và kiến thức.

DPA được trình bày bởi Kelly Lautt như sau:” DPA là tập kỹ năng then chốt

cho thành công và giá trị của Kinh doanh thông minh (Business Intelligence). DPA

là sự kết hợp của số học, dữ liệu và thống kê để khám phá ra thông tin có giá trị từ dữ

liệu và khiến nó có thể sử dụng được, liên kết và tương tác với các hoạt động trực

quan hóa dữ liệu, truyền thông, tổ chức tâm lý và quản lý thay đổi nhằm cung cấp

giải pháp kinh doanh thông minh với xu hướng dữ liệu, tính toán thời gian phân phối,

định dạng và trực quan hóa sẽ trở thành sự hỗ trợ hiệu quả nhất và là phương thức,

chiến thuật và chiến lược hành xử cho mục tiêu doanh nghiệp hay tổ chức. DPA

không phải là IT hay tập kỹ năng kinh doanh mà nó tồn tại như một lĩnh vực chuyên

môn riêng.

Đối tượng

13

DPA có 2 đối tượng chính:

- Sử dụng dữ liệu để cung cấp kiến thức theo cách hiệu suất nhất có thể: ít nhiễu,

hoàn thiện và dữ liệu không cần thiết hoặc chi tiết được đưa vào nhóm theo sự cần

thiết và vai trò)

- Sử dụng dữ liệu để cung cấp kiến thức theo cách hiệu lực nhất có thể: Cung

cấp dữ liệu phù hợp, kịp thời và hoàn thiện nhất cho người dùng theo cách rõ ràng,

dễ hiểu nhất để truyền đạt những ý nghĩa quan trọng. Nó có thể hoạt động và giúp

cho hiểu biết, hành động và ra quyết định hiệu quả.

Phạm vi

Với những đối tượng ở trên, hoạt động thực tế của PDA bao gồm:

- Tạo cơ chế phân phát hiệu quả cho mỗi nhóm thành viên dựa trên vai trò,

nhiệm vụ, vị trí và truy cập công nghệ.

- Xác định ý nghĩa quan trọng của từng nhóm thành viên cần dựa trên ngữ cảnh.

- Xác định chu kỳ cần thiết để cập nhật dữ liệu

- Xác định chính xác thời gian trình bày dữ liệu

- Tìm được dữ liệu chính xác dữ liệu cần thiết

- Tận dụng phù hợp các phân tích, nhóm, trực quan hóa và các dạng trình diễn

khác.

1.1.2.2. Thiết kế trực quan hóa dữ liệu

Trực quan hóa dữ liệu dẫn đến việc trình bày một cách trực quan dữ liệu được

lựa chọn sẽ bao gồm:

- Thuật toán vẽ (có thể cho phép người dùng điểu chỉnh nhưng thường là được

sinh ra bởi các phương thức của máy tính).

- Dễ dàng sinh ra với dữ liệu khác nhau (cùng định dạng thì có thể sử dụng lại

để biểu diễn những tập dữ liệu khác nhau với tính chất cà số chiều tương tự)

- Thiếu tính thẩm mỹ

- Dữ liệu được làm giàu tương đối

Trực quan hóa dữ liệu ban đầu được thiết kế bởi con người nhưng sau đó được

vẽ theo thuật toán với các phần mềm vẽ đồ họa, đồ thị, sơ đồ. Điểm lợi của phương

14

pháp này là mối quan hệ để dễ dạng cập nhật hoặc sinh ra trực quan với dữ liệu mới.

 Bộ 3 Designer-Reader-Data

Có thể hiểu trực quan hóa dữ liệu được hỗ trợ bởi bộ 3 giống như chiếc

ghế 3 chân gồm người thiết kế, người xem và dữ liệu. Mỗi bộ phận tác động

dựa trên vai trò của mình để tạo nên một trực quan hóa ổn định, hiệu quả.

Mỗi chân của chiếc ghế có mối liên hệ với 2 chiếc còn lại. Khi tính toán,

đánh giá được mức độ quan trọng của các mối quan hệ sẽ dẫn đến xác định

được dạng trực quan hóa cần sử dụng như thể hiện ở Hình dưới

Hình 1.7: Bản chất của trực quan hóa dựa vào đánh giá mối quan hệ giữa 3

thành phần.

Người thiết kế

Người thiết kế biết được mục tiêu cần đạt được của trực quan hóa và tạo ra trực

quan hóa vì những lý do đó. Có ý thức về động cơ, mục đích và sự ưu tiên sẽ giúp

người thiết kế tạo ra trực quan hóa thành công hơn là tạo một sự biểu diễn trực quan

dữ liệu đơn thuần.

Người đọc

Điểm ảnh hưởng thứ 2 là người đọc. Sự mong đợi tiếp thu của người đọc đóng

vai trò đặc biệt trong bộ 3 này, nó có thể là trợ thủ lớn nhất hay trở ngại lớn nhất hoặc

15

cả 2 trong quá trình thực hiện mục tiêu truyền thông rõ ràng.

Dữ liệu

Điểm ảnh hưởng thứ 3 tác động đến thiết kế trực quan hóa là dữ liệu. Trực quan

hóa tốt nhất là thể hiện được đặc điểm thú vị của tập dữ liệu ta làm việc. Dữ liệu khác

nhau yêu cầu những phương thức, cách giải mã, kỹ thuật hiển thị khác nhau để thể

hiện đặc điểm của nó. Trong khi những dạng thức trực quan hóa mặc định chiếm vị

trí đặc biệt và có thể xảy ra với thiết kế đúng được chọn trước, đôi khi dữ liệu lại cung

cấp tri thức mới khi phương thức hoặc dạng thức trực quan hóa khác được sử dụng.

Cách ta chọn dạng thức trực quan hóa thể hiện khía cạnh tốt nhất của dữ liệu là

phải có hiểu biết về dữ liệu, tôn trọng dữ liệu. Thay vì cố gắng chuyển về định dạng

phù hợp thì hãy cân nhắc đến giá trị vốn có, quan hệ và cấu trúc của dữ liệu. Những

câu hỏi điển hình bao gồm:

- Hệ thống là gì? (time-series, hierarchy, …)

- Có bao nhiêu chiều cần thể hiện? Những chiều nào là quan trọng nhất?

- Kiểu liên kết là gì?

- Các biến hoạt động thế nào?

- Giá trị có thể phân đoạn? Liên tục hay không liên tục? Có tuyến tính hay

không? Giới hạn như thế nào?

- Có bao nhiêu phân đoạn cần thể hiện?

Sự hiểu biết về hình dạng của dữ liệu sẽ dẫn đến quyết định thiết kế chính

xác. Mỗi quan hệ liên quan và tính chất của dữ liệu cần được giải mã với một

tính chất trực quan phù hợp; Đặc điểm của mỗi chiều dữ liệu dẫn đến một cách

giải mã tính chất trực quan phù hợp

 Các trạng thái của quá trình

Cần phải làm những trường phù hợp như một phần của tiến trình đơn

lẻ. Người thiết kế đồ họa có thể học kỹ thuật máy tính cần thiết để trực quan

hóa và người thực hiện thống kê có thể liên kết đến dữ liệu hiệu quả hơn do

hiểu được những điểm trực quan chính của dữ liệu bên cạnh dữ liệu được trình

16

bày.

Tiến trình hiểu dữ liệu bắt đầu với tập số liệu và câu hỏi. Các bước sau đây là

thủ tục dẫn đến câu trả lời:

Thu thập

Thu thập dữ liệu từ file ở ổ đĩa hoặc từ nguồn dữ liệu trên mạng.

Phân tích cú pháp

Cung cấp một số cấu trúc để hiểu ý nghĩa dữ liệu và xếp loại.

Lọc

Bỏ những dữ liệu không cần thiết.

Khai phá

Sử dụng các phương thức trong thống kê và khai phá dữ liệu như một cách để

nhận thức mẫu hoặc đặt dữ liệu theo ngữ cảnh chính xác.

Biểu diễn

Chọn một mô hình trực quan cơ sở như đồ thị, danh sách hoặc cây để biểu diễn

dữ liệu.

Cải tiến

Cải tiến sự biểu diễn cơ sở để làm nó rõ ràng và trực quan hơn.

Tương tác

Bổ sung các phương thức để điều chỉnh dữ liệu hoặc điều khiển những đặc điểm,

nội dung cho phép hiển thị.

Tất nhiên những bước trên không bắt buộc phải theo một cách cứng nhắc. Trong

quá trình thực hiện có thể bỏ qua một số bước tùy theo tính chất, độ phức tạp của dữ

liệu hoặc yêu cầu trực quan hóa.

Một phần của vấn đề với phương thức đơn lẻ để xử lý dữ liệu là các trường riêng

rẽ dẫn đến cần những người khác nhau để xử lý. Khi nó xảy ra, sẽ có phần nào đó bị

mất trong quá trình chuyển đổi.

1.1.2.3. Trực quan hóa dữ liệu theo địa lý

Trực quan hóa theo địa lý (Geovisualization) hướng đến một tập hợp các công

cụ và kỹ thuật hỗ trợ phân tích dữ liệu theo địa lý thông qua sử dụng trực quan hóa

17

tương tác. Như là sự liên kết giữa trực quan hóa khoa học và trực quan hóa thông tin,

trực quan hóa theo địa lý nhấn mạnh khả năng xây dựng kiến thức từ những kiến thức

được lưu trữ hoặc thông tin được truyền tải. Để làm được điều đó, trực quan hóa theo

địa lý truyền tải thông tin địa lý theo cách kết hợp sự hiểu biết của con người, cho

phép khảo sát dữ liệu và tạo quyết định.

Theo truyền thống, bản đồ tính có khả năng khảo sát giới hạn, sự diễn tả đồ họa

gắn bó chặt chẽ với thông tin địa lý như ở dưới đây. GIS và trực quan hóa theo địa lý

cho phép bản đồ có tính tương tác cao hơn; bao gồm khả năng khảo sát các lớp khác

nhau của bản đồ, phóng to – thu nhỏ bản đồ, thay đổi biểu diễn trực quan của bản đồ

số. Trực quan hóa theo địa lý trình diễn một tập các công nghệ và thực thi bản đồ gia

tăng khả năng của vi xử lý hiện đại để đưa ra sự thay đổi bản đồ trong thời gian thực,

cho phép người dùng thay đổi dữ liệu được ánh xạ ngay lập tức.

1.1.2.4. Một số loại bản đồ trực quan hóa dữ liệu theo địa lý

Sử dụng bản đồ có lẽ là lĩnh vực lớn nhất trong trực quan hóa dữ liệu. Có nhiều

biến thể trong sử dụng bản đồ trong trực quan hóa dữ liệu, mỗi cái có một thế mạnh

riêng. Mỗi biến thể này có thể bao gồm cả những biến thể khác và có thể tiến xa hơn

như tạo thành một loại bản đồ mới. Dưới đây là tổng quan một số dạng thông thường.

Choropleth là một trong số loại bản đồ thường sử dụng trong trực quan hóa dữ

liệu bằng bản đồ. Giống như tên gọi thì màu sắc là thành phần quan trọng của loại

bản đồ này. Màu sắc được gán cho các giá trị dữ liệu khác nhau và giá trị cho mỗi

vùng được sử dụng để tô màu cho vùng đó. Phương pháp này khá dễ hiểu nhưng lại

có vài vấn đề về đồ họa khi khó phân biệt màu sắc đối với những giá trị lân cận nhau.

1.1.3. Trực quan hóa dữ liệu biểu diễn trạng thái giao thông

1.1.3.1. Khả năng ứng dụng trực quan hóa dữ liệu biểu diễn trạng thái giao thông

Hệ thống giao thông tồn tại trong ít nhất 2 dạng không gian: Thứ 1 là dạng không gian địa lý và một dạng không kém phần quan trọng đó là không gian thời gian, nó thể hiện mối quan hệ với thời gian đã trải qua được tạo ra bởi hệ thống. Sự

khác biệt giữa không gian địa lý và không gian thời gian đó là những tính chất của chúng bao gồm bên trong hệ thống giao thông.

18

Có 2 điểm quan trọng trong trực quan hóa dữ liệu cho hệ thống giao thông gồm:

- Dùng mô hình ảo để thể hiện trạng thái của mạng giao thông để quản lý và

công bố.

- Trực quan hóa bằng hình ảnh để mô phỏng đầu ra.

Như ví dụ dưới đây mô phỏng hệ thống Điều khiển xe tải tự động (AGVS) và

đồ thị mô tả thời gian chờ đợi theo số lượng xe tải. Phần mềm là một trực quan hóa mô phỏng hệ thống hoạt động thế nào. Nó có khả năng hoạt động ở cả mô hình động

và mô hình tĩnh. Ở trạng thái tĩnh, người dùng có thể theo dõi đường đi theo thời gian

còn ở trạng thái động, sự chuyển động được điều khiển bởi bộ đếm thời gian.

Hình 1.1 Đồ thị mô tả thời gian chờ đợi theo số lượng xe tải

Theo hướng của luận văn này là tìm hiểu kỹ thuật trực quan hóa cho mô phỏng

giao thông nhiều tác nhân, do đó khảo sát hiệu quả của ứng dụng là mục tiêu chính.

Hughes đã nghiên cứu xu hướng và phương pháp trực quan hóa dữ liệu giao thông.

Dựa trên đó, đưa ra 2 kỹ thuật chính dùng để trực quan hóa cho hệ thống giao thông gồm:

- Trực quan hóa sử dụng bản đồ: Do dữ liệu tự nhiên của hệ thống giao thông thường dựa trên các thông tin địa lý, sử dụng bản đồ làm nền và trực quan hóa các dữ liệu giao thông trên đó. Điển hình là các thông tin đường giao thông quan hệ với nhau bao gồm: nguồn, đích và đường đi giữa chúng. Do đó, sẽ càng có ý nghĩa để sử dụng bản đồ để trực quan hóa những dữ liệu này.

- Sử dụng Score Cards và Dash boards: Các kỹ thuật này có thể sử dụng để theo

19

dõi Khóa chỉ thị hiệu năng (Key Performance Indicators - KPIs) của hệ thống và cả

những thay đổi cấp hệ thống. Một ví dụ mô hình trực quan của Score Cards bằng cách sử dụng biểu đồ dạng cột để trực quan hóa KPIs như hình 1.21 dưới đây.

Hình 1.2 Ví dụ sử dụng Score Cards và Dash boards

1.1.3.2. Tham khảo trực quan hóa dữ liệu biểu diễn trạng thái giao thông [21]

Nhóm MIT Big Data Initiative tại CSAIL đã tổ chức một cuộc thi với mục đích

khuyến khích suy nghĩ về dữ liệu và sử dụng dữ liệu để xác định các vấn đề xã hội.

Big Data hứa hẹn một thế giới tốt hơn khi dữ liệu được sử dụng để đưa ra các quyết

định tốt hơn từ việc đầu tư tiền đến quản lý sức khỏe, dạy dỗ con cái và quản lý thành

phố, quản lý tài nguyên …. Những thay đổi được cho phép bởi sự phát triển của

những công nghệ và công cụ mới cho ta khả năng đo lường, giám sát, ghi lại, tổng hợp và truy vấn tất các các loại dữ liệu về chúng ta và thế giới xung quanh chúng ta.

MIT Big Data Challenge sẽ xác định những thách thức thực tế ở những lĩnh vực

khác nhau như giao thông, sức khỏe, tài chính và giáo dục và tạo những bộ dữ liệu có sẵn cho cuộc thi. Mục đích là cung cấp cho cộng đồng MIT cơ hội mới và duy nhất để thể hiện dữ liệu có thể tạo ra sự thay đổi.

Cuộc thi MIT Big Data Challenge đầu tiên được phát động ngày 12 tháng 11 năm 2013 với sự kết hợp với thanh phố Boston và đồng bảo trợ Transportation@MIT hướng tới giao thông ở khu kinh doanh của thành phố Boston. Thách thức được tạo

ra với bộ dữ liệu taxi đón và trả khách qua 7 tháng từ 05/2012 đến 11/2012gồm hơn 2,3 triệu chuyến taxi, các sự kiện địa phương, các bản ghi về môi trường xã hội và

20

thời tiết với mục tiêu dự báo yêu cầu xe taxi ở khu thương mại của Boston và tạo ra

trực quan hóa để cung cấp cách mới để hiểu mẫu giao thông công cộng của thành phố. Những địa điểm bên ngoài quận thương mại trung tâm đã được loại bỏ.

Thành phố Boston mong muốn tăng cường cái nhìn mới về việc mọi người sử

dụng phương thức giao thông đến và đi ở khu vực thương mại của Boston như thế nào. Yêu cầu cấp bách của Cảnh sát đường phố Boston là đưa tất cả các trạng thái

giao thông trở lên hiệu quả và sử dụng dữ liệu thời gian thực để hoạch định giao thông

thuận tiện hơn giữa các trạng thái giao thông. Với sự tắc nghẽn đô thị gia tăng, những

nhà hoạch định cần tìm phương thức mới để cải tiến giao thông như cung cấp cho

mọi người nhiều lựa chọn để di chuyển từ 1 điểm đến điểm khác như: đi bộ, xe đạp, ô tô, hoặc sử dụng phương tiện công cộng và bằng cách giảm bớt và định tuyến hiệu quả những xe tải trong thành phố.

21

Dưới đây là một số kết quả đạt được của các đội tham dự:

Hình 1.3 Kết quả cuộc thi MIT Big Data Challenge

22

Cartogram là một phương pháp làm giảm nhẹ vấn đề vùng thể hiện của

phương pháp choropleth. Cartogram hiển thị bản đồ trực quan thông qua việc

định lại kích thước các đối tượng trên bản đồ. Trong Cartogram, các đối tượng

địa lý dạng vùng sẽ được thể hiện với hình dạng không phải tương ứng với

diện tích thật của chúng, mà là tương ứng với một biến định lượng khác – ví

23

dụ như dân số, GDP, …

Cartogram dân số thế giới 2000 (Nguồn: SASI Group-University of Sheffield) Proportional Symbol là một phương pháp làm giảm nhẹ vấn đề vùng thể hiện

của phương pháp choropleth. Điển hình của nó là một bản đồ sử dụng các hình khối

tròn hoặc định dạng khác ở giữa một vùng. Kích thước của các khối quan hệ với giá

trị dữ liệu. Một biến thể thường thấy của phương pháp này là sử dụng các biểu đồ

tròn cho các hình khối để thể hiện nhiều thông tin trong một bản đồ. Đôi khi, phương

pháp này gặp vấn đề che khuất nhưng nó có thể được giải quyết bằng cách điều chỉnh

24

độ mờ hoặc sử dụng các tỷ lệ biểu tượng phù hợp.

Người ta có thể kết hợp phương pháp proportional symbol với cartograms để có một

bản đồ lai, phương pháp này tương đối hiệu quả để biểu diễn dữ liệu.

Pinpoint hiển thị vị trí chính xác của đối tượng. Chúng hiện đang ngày càng

phổ biến khi mà dữ liệu gốc thường bao gồm cả vị trí chính xác. Những bản đồ thể

hiện người dùng twitter và ảnh flickr thường được trực quan theo cách này. Một phiên

bản phổ biến của nó là những bản đồ cho phép tìm kiếm như google maps để hiển thị

25

chính xác địa điểm của đối tượng tìm kiếm.

Connection tương tự như pinpoint nhưng được bổ sung các điểm và đường nối

giữa các điểm đó. Trong những ví dụ về kỹ thuật này, những đường nối là trừu tượng

(như các cuộc gọi điện thoại hay những trả lời tweet) và được biểu diễn là các đường

trên bản đồ.

Bản đồ nổi tiếng về chiến dịch của Napoleon là một phiên bản của connection

với đại lượng được thêm vào là chiều rộng của đường kết nối thể hiện lực lượng quân

26

đội.

Subway là một phiên bản của connection. Đường kết nối là quan trọng nhất

trong những bản đồ này, vị trí các ga không cần chính xác. Các bản đồ này thường

được thiết kế bằng cách đơn giản hóa đoạn đường thành các đường theo một vài góc

khác nhau.

Isopleth có ý nghĩa là khoảng giá trị và nó chính là những gì phương pháp này

thể hiện. Chúng ta thường bắt gặp những bản đồ này với dữ liệu thời tiết như: Bản đồ

27

radar, nhiệt độ, lượng mưa….

Stream plots thường không được hấy trong những bản đồ địa lý thông thường.

Chúng hiển thị giống như hướng gió khiến có cảm giác liên quan đến thời tiết. Người

ta thường kết hợp loại bản đồ này với isopleth.

Prism là một dạng bản đồ 3D với nhiều vấn đề. Kỹ thuật này bao hàm cả việc

thay đổi chiều cao của vùng dựa trên giá trị độ cao. Vấn đề lớn nhất của phương pháp

này là thường có một vài vùng bị khuất sau những cột cao hơn của vùng khác. Cũng

rất khó đọc các giá trị trên đối tượng 3D và còn khó hơn nữa là việc đặt thước tỷ lệ

28

trên bản đồ.

1.2. Bài toán trực quan Hóa trạng thái giao thông Hà Nội

1.2.1. Bối cảnh hệ thống giao thông hiện nay của nước ta

Trong những năm gần đây, khi nền kinh tế Việt Nam chuyển từ nền kinh tế tập

trung sang nền kinh tế thị trường thì kinh tế Việt Nam có nhiều điểm sáng, mức sống

người dẫn cũng từ đó cải thiện. Nền kinh tế phát triển đi liền với đó là một vấn đề

người dân đổ dồn đến thành phố làm thành phố trở lên đông đúc gây nên một vấn nạn

là ùn tắc giao thông.

Theo ước tính hiện nay thành phố Hà nội có khoảng 207.090 xe ô tô các loại,

1.921.822 xe máy, 1.000.000 xe đạp, 300 xe xích lô, chưa kể các phương tiện đăng

ký lưu hành ngoại tỉnh trong thành phố. Và theo đánh giá của Phòng Cảnh sát giao

thông Hà Nội, hiện các tuyến đường trong khu vực nội thành chỉ đáp ứng được 30%

lượng phương tiện hiện có. Với tốc độ phát triển phương tiện là 12-15% / năm như

hiện nay thì tình trạng ùn tắc sẽ ngày càng nghiêm trọng hơn trong các năm tới.

Ùn tắc giao thông thường xảy ra ở các giao lộ (ngã ba ngã tư…), trên đường hai

chiều và thường xảy ra vào giờ cao điểm từ 7h-8h30 và 17-19h. Và tại những điểm

ùn tắc, các phương tiện tham gia giao thông chỉ có thể nhích từng centimet.

Ùn tắc giao thông đã ảnh hưởng nghiêm trọng đến đời sống xã hội. Không chỉ

gây thiệt hại to lớn về kinh tế, với tác động gây ô nhiễm môi trường, ùn tắc giao thông

đã và đang gây nguy hại cho sức khỏe con người và làm suy giảm chất lượng cuộc

sống đô thị. [1]

Có rất nhiều nguyên nhân gây ra tình trạng ùn tắc:

- Sự tăng trưởng kinh tế và sự gia tăng mật độ dân số ở thành ohoos lớn.

- Cơ sở hạ tầng giao thông yếu kém, thiếu đồng bộ, quỹ đất cho phát triển

giao thông quá ít.

- Hệ thống vận tải hành khách công cộng còn thiếu và yếu

- Công tác quản lý, tổ chức giao thông đô thị còn nhiều yếu kém và bất cập

- Tình trạng dân trí, ý thức tự giác của người tham gia giao thông còn thấp

Trong nhiều năm qua, các cơ quan chức năng TP Hà Nội đã nỗ lực không ngừng

29

để hạn chế tắc đường, nâng cao năng lực giao thông. Tuy nhiên do các nguyên nhân

chính kể trên và nhiều nguyên nhân khác nên tình hình ùn tắc giao thông chưa được

giải quyết tốt.

Đã có rất nhiều giải pháp được thực hiện để giảm vấn đề ùn tắc.

- Giải pháp về quy hoạch: Xây dựng quy hoạch giao thông đô thị có tính bền

vững phù hợp với sự phát triển của thành phố

- Đầu tư phát triển cơ sở hạ tầng hiện đại, đồng bộ. Nâng cấp hệ thống mặt

đường, vỉa hè, hệ thống nút giao thông. Xây dựng các hệ thống cầu vượt

và hầm qua các nút giao.

- Phát triển hệ thống giao thông công cộng

- Hoàn thiện công tác quản lý tổ chức giao thông đô thị. Hoàn chỉnh luật

giao thông đô thị, bãi bỏ sửa lại những bản pháp luật giao thông đô thị đã

lạc hậu. Tổ chức lắp đặt đèn điều khiển giao thông tại nút chưa có đèn

- Tăng cường tuyên truyền giáo dục dân trí về ý thức chấp hành nghiêm chỉ

luật giao thông đô thị

Ngoài những giải pháp đã nêu ở trên, có một giải pháp giúp phần nào giảm được

tình trạng ùn tắc là cung cấp cho người giao thông một cái nhìn toàn cảnh về mật độ

giao thông của các tuyến đường. Điều này giúp cho người tham gia giao thông có

phương án thích hợp trong việc di chuyển qua các tuyến đường để giảm bớt ùn tắc

1.2.2. Bài toán trực quan hóa trạng thái hóa giao thông Hà Nội trên nền bản đồ số

Bài toán trực quan hóa trạng thái giao thông Hà Nội trên nền bản đồ số cụ thể

là ta hiển thị bản đồ các tuyến đường giao thông Hà Nội dựa trên nền bản đồ số, trên

bản đồ này trực quan hình ảnh giao thông thời gian thực và hiển thị biểu đồ thống kê

các mức độ tắc nghẽn giao thông tại các thời điểm.

Như vậy hệ thống sẽ cung cấp tình trạng giao thông theo thời gian thực một

cách trực quan. Việc này có thể giúp cho người tham gia giao thông chủ động trong

việc đi lại của mình, và giúp đỡ quá trình phân tích lập kế hoạch của các nhà hoạch

định trong lĩnh vực giao thông. Người tham giao giao thông có thể biết hiện tại tuyến

đường nào đang ùn tắc hoặc tuyến đường nào thưa để chủ động di chuyển tránh ùn

30

tắc. Các nhà hoạch định trong lĩnh vực giao thông có thể biết được tuyến đường nào

hay ùn tắc, ùn tắc vào thời điểm nào để đưa ra giải pháp xử lý ùn tắc một cách tốt

nhất.

Theo nhiều nghiên cứu thì việc tiếp thu thông tin của con người qua thị giác tốt

hơn các giác quan khác.Vì vậy,trực quan hóa hệ thống giao thông là một giải giải

pháp lý tưởng để đưa thông tin đến cho người dùng. Trực quan hóa thông tin cho

phép trình biểu diễn lượng lớn dữ liệu và sẽ giúp người dùng tiếp thu được nhiều hơn.

Hệ thống sẽ nhận một lượng lớn dữ liệu đầu vào đó là tình trạng giao thông ở

thời điểm hiện tại. Sau đó dữ liệu sẽ được phân tích, xử lý để hiển thị trên web một

cách trực quan. Việc trình bày dữ liệu trên web phải hữu ích với các kiểu người dùng

khác nhau.

1.2.3. Mô hình trực quan hóa trạng thái giao thông

Từ bối cảnh hệ thống giao thông cùng với bài toán trực quan hóa trạng thái giao

thông chúng tôi đưa ra mô hình trực quan hóa dữ liệu trạng thái giao thông bao gồm

các thành phần như hình 2.1. Các thành phần của mô hình được phân tích cụ thể ở

dưới đây

Hình 2.1: Mô hình trực quan hóa trạng thái giao thông

Dữ liệu trạng thái giao thông: Đây là dữ liệu thể hiện trạng thái giao thông của các tuyến đường mà hệ thống cần thể hiện. Dữ liệu này được cập nhật theo thời gian thể hiện mật độ giao thông theo thời gian và khoảng thời gian thể hiện trên bản đồ trực quan hóa.

31

- Dữ liệu bản đồ: Lưu trữ dữ liệu bản đồ nền của khu vực thể hiện trực quan hóa. Đồng thời lưu trữ dữ liệu địa lý của các tuyến đường nghiên cứu của hệ thống.

Từ những dữ liệu này là căn cứ để xây dựng và hiển thị bản đồ. Dữ liệu này tương đối ổn định.

- Tổng hợp dữ liệu trạng thái giao thông: Quá trình này sẽ tổng hợp giá trị dữ

liệu trạng thái giao thông của cả đợt dữ liệu để xây dựng Biểu đồ trực quan hóa. Mỗi

đợt dữ liệu cập nhật sẽ xây dựng thành một cột dữ liệu trong biểu đồ, giá trị của cột thể hiện trạng thái giao thông của toàn bộ hệ thống tương ứng với thời gian cập nhật

dữ liệu.

- Phân tích dữ liệu trạng thái giao thông: Quá trình này kết hợp dữ liệu trạng

thái giao thông với dữ liệu bản đồ của từng tuyến phố được cung cấp dữ liệu để xây

dựng lớp bản đồ trực quan hóa về trạng thái giao thông của từng tuyến phố trong thời gian tương ứng.

- Xây dựng bản đồ nền: Quá trình này sử dụng dữ liệu bản đồ có sẵn và các công

cụ GIS để xây dựng bản đồ nền phục vụ trực quan hóa dữ liệu.

- Biểu diễn trực quan hóa dữ liệu trạng thái giao thông tổng hợp: Là kết quả của

quá trình tổng hợp dữ liệu trạng thái giao thông. Đây là biểu đồ dạng cột thể hiện

trạng thái giao thông của toàn bộ hệ thống tương ứng với từng khoảng thời gian hiển

thị trạng thái giao thông.

- Biểu diễn trực quan hóa trạng thái giao thông của các tuyến đường cụ thể: Là

kết quả của quá trình Phân tích dữ liệu trạng thái giao thông. Biểu diễn này thể hiện

trực quan giá trị của trạng thái giao thông tại từng tuyến phố bằng lớp bản đồ với các

điểm đặc trưng phân bố dọc tuyến phố và sử dụng màu sắc của các điểm để thể hiện

tình trạng giao thông. Tuyến phố có tình trạng tắc nghẽn càng lớn sẽ thể hiện bằng số

lượng điểm tập trung lớn, màu đỏ thể hiện mật độ đông hơn so với màu xanh.

- Bản đồ nền: Là kết quả trình bày bản đồ từ dữ liệu GIS. Bản đồ này làm nền

để trình bày các trực quan hóa dữ liệu.

- Các kết quả bao gồm: Bản đồ nền, Biểu diễn trực quan hóa dữ liệu trạng thái

giao thông tổng hợp, Biểu diễn trực quan hóa trạng thái giao thông của các tuyến

đường cụ thể sẽ được hiển thị trên một trang web tổng hợp để phục vụ người dùng

32

theo dõi, phân tích, sử dụng kết quả.

1.2.4. Mô hình kiến trúc hệ thống giải pháp trực quan hoá trạng thái giao thông Để thực hiện mô hình trực quan hóa trạng thái giao thông trình bày tại mục

1.2.3, đáp ứng các yêu cầu trong phần đặt vấn đề của luận văn, luận văn đề xuất hệ

thống áp dụng mô hình cung cấp bản đồ trực tuyến (WebGIS).

WebGIS là một hệ thống thông tin địa lý được phân bố qua môi trường mạng

máy tính để phân phối và truyền tải thông tin địa lý trực diện trên Internet. Việc tích

hợp công nghệ GIS và Internet đã tạo ra cơ hội để mọi người đều có thể sử dụng dữ

liệu và các chức năng GIS mà không cần cài đặt bất kỳ một phần mềm GIS chuyên

dụng nào. Yêu cầu của WebGIS là phải có các hệ thống phần mềm chạy trên nền độc

lập, sử dụng mạng theo chuẩn TCP/IP (TCP/IP là một hệ thống giao thức – một tập

hợp các giao thức hỗ trợ việc lưu truyền trên mạng) để có thể kết nối đến Internet và

trình duyệt Web.

Bất cứ công nghệ WebGIS nào cũng phải thỏa mãn trước hết kiến trúc ba tầng

(3-tier) thông dụng của môt ứng dụng Web. Tùy thuộc vào từng công nghệ riêng biệt

của từng hãng mà chúng có khả năng phát triển, mở rộng thành kiến trúc đa tầng (n-

tier) hay không. Kiến trúc 3-tier được mô tả như hình 2.2.

Hình 2.2: Mô hình kiến trúc hệ thống WebGIS

Mô hình trực quan hóa dữ liệu trạng thái giao thông sẽ cài đặt tại Web Server

33

trên hệ thống WebGIS đảm bảo thỏa mãn các yêu cầu về nội dung cũng như kỹ thuật.

CHƯƠNG 2: MỘT SỐ HỖ TRỢ TRỰC QUAN HÓA TRẠNG THÁI

GIAO THÔNG HÀ NỘI TRÊN NỀN BẢN ĐỒ SỐ

2.1. Kỹ thuật và thuật toán ứng dụng trực quan hóa trạng thái giao thông

2.1.1. Heatmap trực quan hóa tình trạng trên tuyến đường giao thông

Heatmap hỗ trợ trực quan hóa dữ liệu được sử dụng để biểu diễn dữ liệu trong

đó các giá trị được thể hiện bằng màu sắc. Heatmap cho phép người dùng có thể hiểu

và phân tích bộ dữ liệu phức tạp, heatmap thu thập dữ liệu tự động, heatmap hiển thị

các dữ liệu thu thập tự động trong thời gian thực [4].

Có nhiều cách để hiển thị heamap nhưng tất cả đều có một điểm chung là sử

dụng màu sắc để truyền đạt các mối quan hệ giữa các giá trị dữ liệu.

Để trực quan hóa tình trạng giao thông trên các tuyến đường cụ thể, luận văn đề xuất kỹ thuật sử dụng kết hợp thông tin về tình trạng giao thông của từng tuyến đường

và đặc trưng địa lý của từng tuyến đường.

Đầu vào của bước này bao gồm thông tin địa lý của tuyến đường và giá trị trạng

thái giao thông của nó tại những thời điểm xác định.

Tại mỗi tuyến đường giao thông ta có các điểm đặc trưng cố định. Tùy theo tình

trạng giao thông nhận được, ta sẽ tiến hành bổ sung thêm các điểm khác nằm trên

tuyến đường đó đồng thời thể hiện tình trạng giao thông trên tuyến đường đó bằng

màu sắc của các điểm. Để biểu diễn những điểm này luận văn đề xuất sử dụng

Heatmaps với cách pha màu là màu đỏ cho giá trị lớn nhất và màu xanh cho giá trị

nhỏ nhất.

Như vậy, tình trạng giao thông trên các tuyến đường được thể hiện trực quan

trên bản đồ bao gồm:

- Mật độ điểm đại diện trên tuyến đường. - Thể hiện bằng màu sắc ứng với giá trị trạng thái giao thông của các điểm đại

diện trên tuyến đường.

2.1.1.1. Thuật toán Heatmap để hình dung sự đa dạng điểm

Bài toán ví dụ ứng dụng lập bản đồ khu vực của sự đa dạng loài cao. Cho một

số loài, mỗi nhà máy duy nhất đã được ánh xạ, kết quả trong một số đỉnh cao, nhưng

với rất ít ý nghĩa về sự đa dạng của khu vực. Các khu vực khác thực sự có sự đa dạng

34

cao.

x y cat 0.8 8.1 B

1.1 8.9 A 1.6 7.7 C

2.2 8.2 D 7.5 0.9 A

7.5 1.2 A 8.1 1.5 A

8.7 0.3 A 1.9 2.1 B

4.5 7.0 C 3.8 4.0 D

6.6 4.8 A 6.2 2.4 B

2.2 9.1 B 1.7 4.7 C

7.5 7.3 D 9.2 1.2 A

- Dữ liệu đầu vào :

35

- kết quả hiển thị dữ liệu trên bản đồ :

Hình 2.3 : kết quả hiển thị các điểm trên bản đồ

Ở góc phía trên, bên trái là vùng mà dữ liệu có sự khác biệt rất lớn trong khi

phía dưới bên phải tập trung nhiều điểm nhưng không có sự khác biệt. Có 2 cách trực

quan hóa sự khác biệt có thể sử dụng heatmap truyền thống hoặc tính toán số mức

hiển thị ở mỗi vùng. Như những hình 2.4 thể hiện thì những phương pháp này có giới

hạn sử dụng khi heatmap hiển thị sự tập trung nhất trong vùng phía dưới bên phải

trong khi phương pháp “đóng hộp” có vẻ chỉ đúng nếu chỉ có 1 mức (thể hiện ở chỗ

tăng kích thước vùng đóng hộp thì kết quả dẫn đến không thể phân biệt được).

Hình 2.4 : Kết quả vẽ theo phương pháp “đóng hộp”

Một phương thức khác để cải tiến thuật toán heatmap truyền thống là tính số

36

điểm có mức khác nhau trong bán kính xác định và sử dụng số tính được như trọng

số của điểm khi sinh ra heatmap. Tuy nhiên, nó có thể dẫn đến một kết quả không

mong muốn khác là sự tăng cường lẫn nhau sẽ dẫn đến kết quả chênh lệch quá mức.

Như vậy, những điểm gần nhau có cùng mức sẽ tiếp tục thể hiện sự tập trung cao

không như những khu vực như nhau.

2.1.1.2. Thuật toán Heatmap để hiển thị mật độ nhân

Mô tả thuật toán như sau:

1. Tính toán số mức của tập dữ liệu

2. Với mỗi pixel ở hình ảnh đầu ra:

 Với mỗi mức:

o Tính toán khoảng cách gần nhất đến điểm đại diện (r)[giới

hạn các bán kính có ảnh hưởng nhỏ]

o Đặt trọng số 1/r2

((heatmap_A@1 >= 1) + (heatmap_A@1 < 1) * heatmap_A@1) +

((heatmap_B@1 >= 1) + (heatmap_B@1 < 1) * heatmap_B@1) +

((heatmap_C@1 >= 1) + (heatmap_C@1 < 1) * heatmap_C@1) +

((heatmap_D@1 >= 1) + (heatmap_D@1 < 1) * heatmap_D@1)

Tính toán heatmap cho mỗi mức thực hiện theo công thức sau:

37

Và kết quả trả về như hình 2.5

Hình 2.5 : Kết quả vẽ theo phương pháp mật độ nhân

Một cách tiếp cận để làm điều này sẽ là nguyên tố một thuật toán truyền thống

heatmap cho số điểm của các thể loại khác nhau trong vòng bán kính được xác định,

và sau đó sử dụng tính đó là trọng lượng cho điểm khi tạo ra heatmap.

2.1.1.3. Thuật toán xây dựng tập biểu diễn cuả tuyến đường

Để tạo heatmap trên một tuyến đường, ta căn cứ vào tọa độ của tập các điểm

cơ sở của tuyến đường. Một tuyến đường bao gồm nhiều đoạn thẳng nối tiếp nhau,

tập các điểm đầu và điểm cuối các đoạn đó là tập điểm cơ sở của tuyến đường. Sau

đó, tùy vào giá trị tình trạng đường giao thông, ta sẽ bổ sung các điểm phù hợp vào

giữa các điểm đã có để tăng mật độ điểm tạo thành tập điểm biểu diễn (như hình 2.6)

và hiển thị màu sắc của tập điểm biểu diễn này theo giá trị tình trạng giao thông tương

38

ứng.

Hình 2.6 : Tập các điểm biểu diễn trên tuyến đường

Thuật toán xây dựng tập biểu diễn cuả tuyến đường: - B1: Xác định tập điểm cơ sở của tuyến đường là T1 được sắp theo thứ tự từ

điểm đầu đến điểm cuối trên tuyến đường.

- B2: Đặt tập điểm biểu diễn T2 = T1.

- B3: Duyệt từ đầu đến hết tập T2:

Xác định khoảng cách l giữa 2 điểm kế tiếp trong T2:

 Nếu l < r thì tiếp tục chuyển sang cặp điểm tiếp theo trong T2

 Nếu l ≥ r thì: Bổ sung 1 điểm ở giữa 2 điểm đang xét vào trong tập T2

và quay lại thực hiện B3.

Trong đó: r là khoảng cách được xác định theo các trạng thái giao thông.

Kết quả cuối cùng của thuật toán tạo ra các điểm cách đều nhau có khoảng cách

39

nhỏ hơn r trên một đoạn đường như hình 2.6

2.1.2. Xây dựng biểu đồ thống kê dữ liệu trạng thái giao thông

Biểu đồ thống kê tình trạng giao thông tại các thời điểm trong ngày trong đó

chiều x thể hiện thời gian và khoảng duy trì của tình trạng giao thông, chiều y thể

hiện giá trị tổng hợp trạng thái giao thông của hệ thống theo thời gian.

Trong phạm vi luận văn đề xuất tính giá trị thống kê này là giá trị trung bình của các tuyến phố theo trọng số phù hợp. Khi đó, giá trị thống kê trạng thái giao thông

là đại lượng tỷ lệ thuận với giá trị trạng thái giao thông của từng tuyến đường cụ thể.

Mục 2.1.1. đã mô tả kỹ thuật trực quan hóa tình trạng giao thông của tuyến

đường cụ thể. Trong đó, tình trạng giao thông của tuyến đường thể hiện bằng Mật độ, số lượng điểm đại diện trên tuyến đường và Giá trị màu sắc ứng với giá trị trạng thái

giao thông của các điểm đại diện trên tuyến đường.

Do đó, phương pháp để xác định giá trị thống kê trạng thái giao thông của hệ

thống đơn giản là giá trị trung bình của toàn bộ điểm đại diện trên các tuyến đường

trong hệ thống.

Từ giá trị thống kê trạng thái giao thông của hệ thống và thời gian, khoảng duy

trì đã có sẵn dễ dàng xây dựng được biểu đồ thể hiện tổng hợp trạng thái giao thông.

2.1.2.1. Thuật toán tính giá trị trung bình tại mỗi thời điểm.

Để xây dựng biểu đồ thống kê dữ liệu trạng thái giao thông cần kết nối đến cơ

sở dữ liệu và tính trạng thái giao thông tổng hợp của toàn bộ hệ thống theo thời điểm,

ngày, tuần và tháng, năm. Do khối lượng tính toán lớn, phần này sẽ được tính toán

tại phía server. Dữ liệu trạng thái giao thông theo ngày, tuần, tháng, năm được tính

toán khi kết thúc ngày, tuần, tháng, năm và lưu sẵn trong cơ sở dữ liệu. Dữ liệu trạng

thái giao thông theo thời điểm được tính toán trực tiếp khi có yêu cầu xây dựng biểu

đồ.

Đoạn code dưới đây lấy dữ liệu trạng thái giao thông trung bình tại mỗi thời

password=123456")

or die('Could not connect: ' . pg_last_error());

$result = pg_query("SELECT b.id, b.dt, b.idroad, (select AVG(a.state) from tb_traffic a where

a.dt = b.dt) as state FROM tb_traffic b where dt>='".$fromDate."' and dt<='".$toDate."' and idroad = 1 order by dt desc");

40

điểm có dữ liệu:

$temp = array(); while($myrow = pg_fetch_assoc($result)) { $temp[] = $myrow; } echo json_encode($temp); pg_close($dbconn); ?>

Dữ liệu trạng thái giao thông tổng hợp theo ngày, tuần, tháng, năm được lấy

trực tiếp trong các bảng lưu trong cơ sở dữ liệu do đã được tính toán và lưu lại từ

trước.

Dữ liệu sau khi tính toán sẽ được khai báo tập đối tượng JSON trong D3js để

d.dt = parseDate(d.dt); d.state = +d.state;

d3.json('data2.php?fromdate='+fromDate+'&todate='+toDate, function(error, data) {

data.forEach(function (d) { });

đưa vào xây dựng biểu đồ.

2.1.3. D3JS

D3 hay D3js có tên đầy đủ là Data-Driven Documents là một thư viện Javascript

để trực quan hóa, tương tác dữ liệu trong các trình duyệt Web. Nó là một thư viện

được sử dụng để thao tác với HTML và SVG dựa trên dữ liệu. D3js được phát triển

bởi tác giả Michael Bostock và cộng đồng đông đảo lập trình viên từ khắp nơi trên

thế giới. D3js hoàn toàn là mã nguồn mở được miễn phí trên GitHub. D3js được phát

hành theo giấy phép BSD vì vậy người dùng có thể sử dụng, sửa đổi code cho cả mục

đích phi thương mại hay thương mại.

2.1.3.1. Các thành phần cơ bản trong D3js

D3js cho phép kết nối dữ liệu tùy với DOM, và sau đó áp dụng các phép biến đổi điều hướng dữ liệu. Ví dụ, ta có thể sử dụng D3js để tạo ra 1 bảng HTML từ một mảng các số.

Selections Sửa đổi trang web sử dụng W3C DOM API là một việc nhàm chán. Tên phương

var paragraphs = document.getElementsByTagName("p"); for (var i = 0; i < paragraphs.length; i++) { var paragraph = paragraphs.item(i); paragraph.style.setProperty("color", "white", null); }

41

thức dài dòng, ví dụ để thay đổi màu sắc của đoạn văn bản ta viết như sau:

Trong khi đó sử dụng D3js ta có thể viết ngắn gọn hơn: d3.selectAll("p").style("color", "white");

Lệnh trên áp dụng với tất cả các phần tử “p” trong trang web, ta có thể thao tác

với chỉ 1 phần tử khi cần thiết:

d3.select("p").style("color", "white"); Các bộ chọn trong D3js được định nghĩa theo chuẩn W3C Selectors API và hỗ trợ tốt với các trình duyệt hiện đại, đồng thời nó cũng tương tích ngược với các trình duyệt cũ. Các phần tử có thể được lựa chọn bằng cách sử dụng một loại các thuộc

tính như class, id, attribute…

Kết nối dữ liệu Trực quan hóa dữ liệu là quá trình xử lý để ánh xạ dữ liệu đến hình ảnh trực

quan. Dữ liệu ở bên trong và hình ảnh trực quan thể hiện ra bên ngoài. Việc trực quan

có thể thể hiện bằng việc hiển thị trên biểu đồ với dữ liệu lớn tạo ra những thanh cao

hơn hoặc màu sắc tươi sáng hơn. D3js làm việc với dữ liệu bằng cách kết nối các giá

trị dữ liệu đầu vào đến các phần tử trong DOM.

Chúng ta sử dụng phương thức selection.data() để kết nối dữ liệu đến phần tử

trong DOM. Có 2 điều chúng ta cần trước tiên khi có thể liên kết dữ liệu:

- Dữ liệu - Lựa chọn phần tử để kết nối dữ liệu trong DOM

Dữ liệu

Trong bối cảnh lập trình trực quan, dữ liệu được lưu trữ trong một tập tin, thường

là kiểu text hoặc nhị phân. D3 rất thông minh trong việc xử lý các loại dữ liệu khác nhau, nó chấp nhận bất kỳ mảng các số, chuỗi, hoặc đối tượng. Nó có thể xử lý dữ liệu dạng JSON và nó còn có phương thức được dựng sẵn

Tương tác Mục đích của trực quan hóa dữ liệu là giúp người dùng có được thông tin từ

42

lượng lớn dữ liệu thô một cách nhanh chóng và hiệu quả thông qua phép ẩn dụ, liên kết mô hình và nhận thức. Tuy nhiên có một khía cạnh quan trọng của trực quan hóa

đó là sự tượng tác của người dùng. Tương tác giúp mang lại giá trị rất lớn trong việc tiếp nhận thông tin trong trực quan hóa.

Các phương pháp mà D3js hỗ trợ người dùng tương tác trong trực quan hóa:

- Tương tác với các sự kiện chuột - Tương tác với thiết bị cảm ứng đa điểm - Tương tác phóng to/nhỏ và xoay

Tương tác với hành vi kéo, thả.

2.1.4. Vẽ đồ họa thực hiện trực quan hóa

Vẽ đồ họa là một cách để trực quan hóa. Vị trí của những nút và cạnh có thể chi

phối khả năng sử dụng, đọc và thẩm mỹ. Thuật toán được dùng để định vị gọi là

“Thuật toán Graphics Layout Algorithms” (Thuật toán trình bày đồ họa). Có nhiều

thuật toán trình bày đồ họa khác nhau với những cách nhìn định vị khác nhau.

Đây là phương pháp phù hợp nhất để trực quan hóa trạng thái giao thông trong

luận văn này bởi vì thực tế là việc định vị các nút và giá trị thuộc tính của nó là nhân

tố chính của hệ thống giao thông.

Những nguyên tắc cho vẽ đồ họa chỉ ra những thông số quan trọng nhất, để vẽ

đồ họa cần tìm hiểu về: Quy tắc vẽ, Mỹ học, Ràng buộc.

- Quy tắc vẽ

Quy tắc vẽ là những luật cơ bản trong quá trình vẽ cần phải thỏa mãn để được

chấp nhận.

Trong thực tế, quy tắc vẽ là những luật cơ bản cần tuân theo trong khi vẽ đồ

họa. Những luật này đi kèm với ngữ cảnh và miền ứng dụng cụ thể. Ví dụ tại hình 2.7

thể hiện một luật vẽ trong vẽ trực giao là đồ họa được vẽ như một chuỗi các đoạn

43

thay đổi ngang và dọc như hình 2.7 dưới đây.

Hình 2.7 : Luật vẽ trực giao

Bởi vì thực tế là những lý thuyết về trực quan hóa dữ liệu bằng đồ họa đối với

mỗi hệ thống khác nhau sẽ phải phù hợp với mục đích xây dựng của nó. Do đó, với

hệ thống trực quan hóa trạng thái giao thông cũng cần đưa ra những quy tắc vẽ cụ

thể.

- Mỹ học

Mỹ học của đồ họa liên quan tới các thông số làm tăng tính dễ đọc thông qua

các vấn đề tập trung vào mỹ học. Lập những công thức theo ccs quy tắc để vẽ một đồ

họa tốt, ví dụ các quy tắc để chuẩn hóa chiều dài cạnh như: Tối thiểu những chiều dài

cạnh lớn nhất, tối đa chiều dài cạnh nhỏ nhất, tối thiểu tổng chiều dài cạnh, tối thiếu

số lượng chiều dài khác biệt.

Một số quy tắc về tính thẩm mỹ được áp dụng rộng rãi để có thể tăng khả năng

đọc đồ họa như sau:

 Tối thiểu số cạnh giao nhau

 Tối thiểu những chỗ uốn cong, ngã rẽ

 Tối đa tính đối xứng cấu trúc

 Các nút gần nhau có liên hệ với nhau

 Vẽ các đường thẳng nhất có thể

Trong trường hợp có xung đột giữa các quy tắc mỹ học trong vẽ đồ họa, ta cần

những thủ tục chọn tập quy tắc để hình vẽ dễ đọc nhất. Một số nghiên cứu thực tế đã

đặt độ ưu tiên cho những quy tắc mỹ học trên. Kết quả của nó cho thấy quy tắc Tối

44

thiểu số cạnh giao nhau là quan trọng nhất và các quy tác như Tối thiểu những chỗ

uốn cong, ngã rẽ và Tối đa tính đối xứng cấu trúc thì ít hiệu quả hơn đối với khả năng

đọc của con người. Mặc dù vậy, vẫn cần thêm những khái niệm về ngữ cảnh và miền

ứng dụng cho sự ưu tiên về quy tắc mỹ học. Những quy tắc riêng phù hợp với hệ

thống trực quan hóa trạng thái giao thông cụ thể sẽ được đưa ra.

- Ràng buộc

“Đặc trưng ngữ nghĩa có thể được diễn tả bởi phương tiện là những ràng buộc

trong quá trình vẽ”. Dựa vào thực tế trên, với những đặc trưng yêu cầu biết về ý nghĩa

hình vẽ, ta có thể xác định các ràng buộc cho vẽ đồ họa. Ví dụ nếu có một tập các nút

quan trọng hơn trong miền ứng dụng cụ thể, sẽ cần trở lên dễ đọc và có ý nghĩa hơn

bằng cách sử dụng ràng buộc đặt chúng vào giữa hình vẽ. Một số nghiên cứu đã phân

chia các dạng khác nhau của ràng buộc gồm:

 CENTER: Đặt tập nút xác định vào giữa đồ họa.

 DIMENS: Gán chiều thể hiện biểu tượng cho những nút định sẵn.

 EXTERN: Đặt những nút định sẵn ở phía ngoài của đồ họa.

 NEIGH: Đặt nhóm các nút càng gần nhau càng tốt.

 SHAPE: Vẽ một đồ họa phụ so với đồ họa định trước.

 STREAM: Đặt chuỗi các nút trên một đường.

Những ràng buộc trên được xác định là quan trọng nhất trong miền ứng dụng là

hệ thống trạng thái giao thông với mục đích đạt được đồ họa dễ đọc hơn.

2.1.4.1. Thuật toán Graphics Layout Algorithms

Có một vài phương thức thông thường để sắp xếp những nút và cạnh. Những

phương thức thông thường và quan trọng nhất được liệt kê dưới đây:

- Thuật toán vẽ dựa vào lực: Trong thuật toán trình bày này, mạng các nút và

cạnh được mô phỏng như hệ thống điện. Có những lực hút và đẩy giữa các nút và

cạnh, vị trí của nút sẽ thay đổi phù hợp tương ứng. Mục đích của thuật toán này nhằm

giảm năng lượng kèm theo để trình bày đồ họa. Thuật toán này sẽ lặp lại liên tục cho

đến khi năng lượng của hệ thống đạt trạng thái cân bằng.

- Phương pháp dựa vào địa lý: Theo phương thức này, vị trí của nút dựa vào

45

thuộc tính địa lý của nút trên bản đồ.

- Cấu trúc liên kết vòng tròn (Circular topology): Thuật toán biểu diễn này đặt

các nút trên vòng tròn, các cạnh đi qua nhau ở trung tâm của vòng tròn.

Sự lựa chọn các phương thức phần lớn dựa vào miền dữ liệu được trực quan

hóa. Ví dụ trong trường hợp cụ thể với mạng xã hội thì phương thức Cấu trúc liên kết

vòng tròn có ý nghĩa hơn. Trong luận văn này, phương pháp dựa vào địa lý sẽ được

sử dụng vì nó đáp ứng nhu cầu người dùng trong bối cảnh thể hiện trực quan trạng

thái giao thông.

2.2. Giải pháp trong quá trình triển khai

2.2.1. Kết hợp Leaflet và Heatmap

Để vẽ điểm heatmap trên bản đồ nền được xây dựng bằng leaftet, ta phải có sự

kết hơp giữa Leaflet và Heatmap. Giải pháp được đưa ra là sử dụng thư viện leaflet-

heatmap.js

2.2.2. Thao tác với dữ liệu dạng GeoJSON

GeoJSON là một định dạng mã hóa cho một loạt các cấu trúc dữ liệu địa lý. Một

đối tượng GeoJSON có thể đại diện cho một hình học, một tính năng hoặc một tập

các tính năng. GeoJSON hổ trợ các loại hình sau: 1 điểm, 1 đường thẳng, đa giác, đa

điểm, đa cạnh….

Leaflet hổ trợ tất cả các loại GeoJSON. Feature và FeatureCollections cho phép

"type": "Feature", "properties": { "name": "Coors Field", "amenity": "Baseball Stadium", "popupContent": "This is where the Rockies play!" }, "geometry": {

"type": "Point", "coordinates": [-104.99404, 39.75621] }

var geojsonFeature = { };

46

mô tả các thực thể (features) và thuộc tính(properties):

2.2.3. Kết nối cơ sở dữ liệu

Để xây dựng các chức năng của ứng dụng phải kết nối đến cơ sở dữ liệu lấy

thông tin. Để sử dụng PHP kết nối cơ sở dữ liệu Postgre, sử dụng PHP Interface APIs.

Dưới đây là một đoạn code để kết nối cơ sở dữ liệu.

2.2.4. Cập nhật dữ liệu thời gian thực

Khi lựa chọn chế độ “Chạy theo thời gian thực” hệ thống tự động kiểm tra cơ

sở dữ liệu để cập nhật dữ liệu mới nhất để hiển thị trạng thái giao thông. Thời gian

cài đặt trong chương trình thử nghiệm là 10 phút. Thời gian này có thể thay đổi tùy

theo yêu cầu trong thực tế.

2.3. Công cụ hỗ trợ trực quan hoá trạng thái giao thông

2.3.1. Google Maps

Google Maps là một dịch vụ ứng dụng và công nghệ bản đồ trực tuyến

miễn phí được cung cấp bởi Google, hỗ trợ nhiều dịch vụ khác của Google

nổi bật là dẫn đường. Nó cho phép thấy bản đồ đường sá, đường đi cho xe

đạp, cho người đi bộ và xe hơi, và những địa điểm kinh doanh trong khu vực

cũng như khắp nơi trên thế giới.

2.3.2. Google Maps API

Google Maps API là một phương thức cho phép 1 website sử dụng

dịch vụ bản đồ của Google và nhúng vào website của mình. Dịch vụ của

47

google bao gồm hiển thị bản đồ, rê chuột, zoom, đánh dấu trên bản đồ…

Các ứng dụng xây dựng trên maps được nhúng vào trang web cá nhân

thông qua các thẻ javascripts nên việc sử dụng API google rất dễ dàng.

Google Map API đã được nâng cấp lên phiên bản thứ 3. Phiên bản này

hỗ trợ không chỉ cho các máy để bàn truyền thống mà cho cả các thiết bị di

động. Nhanh hơn và nhiều hơn các ứng dụng.

Điều quan trọng là các dịch vụ hoàn toàn miễn phí với việc xây dựng

một ứng dụng nhỏ. Trả phí nếu đó là việc sử dụng cho mục đích kinh doanh,

doanh nghiệp.

2.3.3. PostgreSQL/PostGIS

Hệ thống dự kiến triển khai cài đặt DB Server sử dụng hệ quản

trị cơ sở dữ liệu PostgreSQL.

PostgreSQL là hệ thống quản trị cơ sở dữ liệu quan hệ đối tượng

dựa trên POSTGRES bản 4.2, được phát triển tại trường đại học California

tại phòng nghiên cứu máy tính Berkeley. Nó là một chương trình mã nguồn

mở xây dựng trên mã nguồn ban đầu của đại học Berkeley. Nó hỗ trợ một

phần rất lớn cho SQL chuẩn và cung cấp nhiều tính năng hiện đại như :

- Câu truy vấn phức hợp (complex query)

- Khóa ngoại (foreign key)

- Thủ tục sự kiện (trigger)

- Các khung nhìn (view)

- Tính toàn vẹn của các giao dịch (integrity transactions)

- Việc kiểm tra truy cập đồng thời đa phiên bản (multiversion

concurrency control)

Ngoài ra, PostgreSQL có thể được mở rộng bởi nhiều người

dùng bằng nhiều cách. Ví dụ, người dùng có thể thêm kiểu dữ liệu, hàm, toán

tử, hàm tập hợp, phương thức đánh chỉ mục và ngôn ngữ thủ tục.

So sánh giữa 3 hệ quản trị cơ sở dữ liệu MySQL, Oracle và

PostgreSQL thì thấy rằng, hệ quản trị cơ sở dữ liệu PostgreSQL rất mạnh,

nó hoạt động được trên hầu hết các hệ điều hành, hỗ trợ rất nhiều tính năng

48

cơ bản, và hỗ trợ rất nhiều kiểu đánh chỉ mục.

Ngày nay, PostgreSQL là một trong những hệ quản trị cơ sở lớn

nhất hiện có. Với những tính năng được chỉ ra dưới đây, chúng ta có cái nhìn

tổng quan về PostgreSQL :

- Trong quan hệ đối tượng PostgreSQL, mọi bảng định nghĩa như

một lớp. PostgreSQL thực thi kế thừa giữa các bảng, hàm và toán tử là đa hình.

- Cú pháp chuẩn của PostgreSQL tuân thủ theo chuẩn của SQL92

và nhiều tính năng của SQL99.

- PostgreSQL cung cấp nhiều kiểu dữ liệu. Bên cạnh kiểu dữ liệu

numeric, string thông thường, nó còn cung cấp kiểu dữ liệu geometry,

boolean và kiểu dữ liệu được thiết kết đặc biệt để dùng cho các địa chỉ

mạng.

- Khả năng mở rộng là một trong những tính năng của PostgreSQL.

Nếu với những gì mà PostgreSQL cung cấp mà ta vẫn chưa hài lòng, ta

có thể thêm vào PostgreSQL. Ví dụ, ta có thể thêm vào kiểu dữ liệu mới,

hàm và toán tử mới và các thủ tục mới.

Ngoài nhu cầu lưu trữ các kiểu dữ liệu thông thường như kiểu

chuỗi, kiểu số, kiểu ngày tháng, người sử dụng còn có thêm nhu cầu lưu trữ

các kiểu dữ liệu không gian để lưu trữ các đối tượng như Point, Line,

Polygon. Do đó, PostgreSQL còn hỗ trợ kiểu dữ liệu hình học (geometry)

như Point, Line, Polygon…Và PostGIS chính là công cụ được bổ sung cho

PostgreSQL để hỗ trợ hiện thị đối tượng địa lý.

PostGIS là một mã nguồn mở, mở rộng không gian cho

PostgreSQL. CSDL không gian trong PostGIS được sử dụng cho hiệu suất

sử dụng cao đa người dùng truy cần đến tập dữ liệu có tính liền mạch.

PostGIS đã được chứng nhận là “Simple Features for SQL”, tuân thủ theo

Open Geospatial Consortium. PostGIS được phát hành lần đầu tiên vào năm

2001, và hiện đang được sử dụng trên khắp thế giới như một máy chủ hoạt

động với hiệu suất cao cho các đối tượng không gian.

49

Đặc điểm của PostGIS:

Do PostGIS được sử dụng như một CSDL không gian, nên nó

bao gồm tất cả các đặc điểm của CSDL không gian. Ngoài ra, nó còn có

những đặc trưng như:

- Các kiểu dữ hình học như Point, Linestring, Polygon, Multipoint,

multilinestring, Multipolygons và Geometrycollection.

- Các toán tử không gian cho phép xác định các phép đo không gian địa

lý như tính diện tích, tính khoảng cách, tính độ dài, và tính chu vi. PostGIS

hỗ trợ các hàm như : ST_Area(), ST_Length(), ST_Perimeter(),

ST_Distance()…các hàm này thường thực hiện chức năng kiểu phép đo.

- Các toán tử không gian cho phép xác định không gian địa lý. Các thao

tác như phép hợp, so sánh sự khác nhau giữa các đối tượng hình học. Các

toán tử được PostGIS hỗ trợ để làm việc này có thể là : ST_Difference() : trả

về phần khác nhau giữa 2 đối tượng hình học hay hàm ST_Buffer()…

- PostGIS cung cấp việc đánh chỉ mục không gian tốc độ cao sử dụng

GisT hoặc R-tree. Công cụ đánh chỉ mục không gian mà PostGIS hỗ trợ làm

tăng tốc cho truy vấn không gian đặc biệt là trên bảng dữ liệu lớn.

- Chỉ mục hỗ trợ chọn lọc, cung cấp việc thực hiện truy vấn bản đồ pha

trộn truy vấn không gian hoặc truy vấn không có không gian.

2.3.4. Apache

Apache hay là chương trình máy chủ HTTP là một chương trình dành

cho máy chủ đối thoại qua giao thức HTTP. Apache chạy trên các hệ điều

hành tương tự như Unix, Microsoft Windows, Novell Netware và các hệ điều

hành khác. Apache đóng một vai trò quan trọng trong quá trình phát triển của

mạng web thế giới (World Wide Web).

Apache được phát triển và duy trì bởi một cộng đồng mã nguồn mở

dưới sự bảo trợ của Apache Software Foundation. Apache được phát hành

50

với giấy phép Apache License và là một phần mềm tự do và miễn phí.

2.3.5. Leaflet

Leaflet là một thư viện Javascript mã nguồn mở cho việc tương tác với bản đồ.

JavaScript, theo phiên bản hiện hành, là một ngôn ngữ lập trình kịch bản dựa trên đối

tượng được phát triển từ các ý niệm nguyên mẫu. Ngôn ngữ này được dùng rộng rãi

cho các trang web, nhưng cũng được dùng để tạo khả năng viết script sử dụng các đối

tượng nằm sẵn trong các ứng dụng. Nó vốn được phát triển bởi Brendan Eich tại Hãng

truyền thông Netscape với cái tên đầu tiên Mocha, rồi sau đó đổi tên thành LiveScript,

và cuối cùng thành JavaScript.

*Ưu điểm của Javascript:

- Hoàn toàn miễn phí và dễ học.

- JavaScript được thiết kế độc lập với hệ điều hành. Nó có thể chạy trên bất kỳ

hệ điều hành nào có trình duyệt hỗ trợ JavaScript.

- Dễ dàng tương tác, điều khiển và tránh bớt việc xử lý từ phía server

- Nắm vững kiến thức JavaScript bây giờ rất hữu dụng cho các bạn sau này để

có thê tiếp thu những công nghệ mới mà nó được gói gọn vào những ngôn ngữ

như : Ajax , Atlas ….

*Nhược điểm của Javascript:

- Javascript không có trình biên dịch riêng mà được diễn dịch và chạy bởi trình

duyệt hỗ trợ nó. Chính vì thế, nếu trình duyệt không hỗ trợ, hoặc không bật

JavaScript, nó sẽ không chạy được.

- JavaScript có thể làm ứng dụng web của bạn trở nên nặng nề hơn.

- Bảo mật kém. Không có khả năng giấu mã.

Leaflet được phát triển bởi Vladimir Agafonkin. Leaflet thì được thiết kế đơn

giản, nhanh chóng và dễ sử dụng. Nó sử dụng được trên môi trường Desktop,Mobile

51

vì nó sử dụng HTML5, CSS3.

CHƯƠNG 3: THỰC NGHIỆM VÀ ĐÁNH GIÁ HỆ THỐNG TRỰC

QUAN HÓA TRẠNG THÁI GIAO THÔNG HÀ NỘI

Trong các chương trước tôi đã trình bày về cơ sở lý thuyết, bài toán đặt ra, các

thuật toán ứng dụng và hướng tới xây dựng hệ thống Trực quan hóa trạng thái giao

thông Hà Nội trên nền bản đồ số. Trong chương này tôi sẽ trình bày về phân tích thiết

kế hệ thống và xây dựng ứng dụng thử nghiệm, đánh giá về những kết quả của ứng

dụng cùng với đó đưa ra hướng phát triển tiếp theo cho hệ thống được hoàn thiện

hơn.

3.1. Phân tích thiết kế hệ thống

3.1.1. Kiến trúc hệ thống

Phân tích các yêu cầu đầu vào, kết hợp với các mô hình, công cụ, đã trình bày

của luận văn đưa ra mô hình triển khai hệ thống như hình sau [4]:

52

Hình 3.1: Mô hình kiến trúc

Trong đó dữ liệu đầu vào được cập nhật vào cơ sở dữ liệu. Ứng dụng trực quan hóa tình trạng giao thông Hà Nội được xây dựng đưa lên Web server và có quan hệ

với các thành phần khác của hệ thống như trên hình. Googe Maps API sẽ tương tác

với dịch vụ bản đồ của Google để hiển thị bản đồ nền và trực quan dữ liệu trạng thái

giao thông từng tuyến phố cụ thể.

Hệ thống cơ bản được xây dựng trên mô hình với chi tiết từng lớp như sau:

- Lớp người dùng (Client Tier)

Lớp này bao gồm người dùng và quản trị hệ thống.

- Lớp giữa (Applications)

Ở lớp này sẽ được chia ra thành 3 lớp con:

 Lớp tương tác với người dùng: người dùng sẽ tương tác với hệ thống thông

qua những hành động như chọn mục nhập mới, sửa, xóa, tìm kiếm hay

click chọn điểm có trên bản đồ và xem được thông tin về camera giám sát

tại điểm đó.

 Lớp điều khiển: Lớp này sẽ điều khiển những tương tác của người dùng

ứng với luồng xử lý nào.

 Lớp model: Lớp có chức năng mô hình hóa những tương tác của người

dùng theo mô hình hướng đối tượng (một object sẽ gồm những phương

thức và thuộc tính tương ứng)

- Lớp thứ ba (Database layer)

Lớp lưu trữ dữ liệu để thực hiện có kết quả được mọi thao tác của người dùng.

3.1.2. Chức năng hệ thống

Các thành phần trong ứng dụng phát triển theo Mô hình trực quan hóa trạng

thái giao thông trình bày tại mục 1.2.3. Theo phân tích đề xuất áp dụng các kỹ thuật

trình bày tại mục 2.1 và các thuật toán sử dụng “Thuật toán Heatmap để hiển thị mật

53

độ nhân”, “Thuật toán tính giá trị trung bình tại mỗi thời điểm”, thuật toán trình bày

đồ họa “Thuật toán Graphics Layout Algorithms “, sử dụng Leaflet để trình bày dữ

liệu bản đồ, Heatmap để biểu diễn trực quan trạng thái dữ liệu các tuyến đường và

D3js để xây dựng đồ thị biểu diễn trực quan dữ liệu trạng thái giao thông tổng hợp

theo thời gian. Sơ đồ áp dụng mô hình để phát triển ứng dụng như hình 3.2.

Hình 3.2 : Sơ đồ áp dụng mô hình trực quan hóa

Các chức năng hệ thống được mô tả cụ thể dưới đây:

- Nhóm chức năng hiển thị, thao tác bản đồ nền: Nhóm các chức năng này cho

phép hiển thị bản đồ nền dạng tile và các thao tác cơ bản như phóng to, thu nhỏ, dịch

chuyển bản đồ bằng chuột và nút điều khiển.

- Chức năng hiển thị trực quan dữ liệu trạng thái giao thông trên các tuyến

đường: Chức năng này kết hợp dữ liệu địa lý và dữ liệu trạng thái giao thông tại một

thời điểm để tạo ra một lớp bản đồ dạng heatmap trên nền bản đồ số. Các điểm

heatmap nằm dọc theo đoạn đường có giá trị trạng thái giao thông được lấy từ cơ sở

dữ liệu. Mật độ các điểm càng lớn càng thể hiện trạng thái giao thông đông đúc. Đồng

thời với đó, dùng màu sắc và bán kính điểm hiển thị để thể hiện trạng thái giao thông.

Điểm màu đỏ thể hiện mật độ đông hơn so với điểm có màu xanh. Điểm có trạng thái

giao thông lớn sẽ có bán kính lớn hơn.

- Chức năng hiển trực quan dữ liệu trạng thái giao thông tổng hợp: Tại mỗi thời

54

điểm xác định trạng thái giao thông tổng hợp của các tuyến phố khảo sát bằng giá trị

trung bình của trạng thái giao thông từng tuyến. Biểu đồ sẽ thể hiện giá trị tổng hợp

của trạng thái giao thông này theo thời gian. Dữ liệu qua các ngày được tổng hợp để

xây dựng biểu đồ. Do thời gian có thể kéo dài nên biểu đồ này có 1 biểu đồ phụ ở

phía dưới để người dùng có thể phóng tới thời điểm cần quan tâm để xem chi tiết.

Chức năng này có lựa chọn xem biểu đồ tổng hợp trạng thái giao thông theo từng thời

điểm lấy dữ liệu hoặc xem biểu đồ tổng hợp trạng thái giao thông của cả ngày, tuần,

tháng, năm.

- Tiện ích khi chọn vào thời điểm thể hiện trạng thái giao thông tổng hợp trên

biểu đồ thì bản đồ hiển thị trạng thái giao thông tại từng tuyến phố tại thời điểm đó.

- Chức năng lựa chọn thời gian để xem trực quan dữ liệu trạng thái giao thông

cho phép người dùng chọn thời gian quan tâm để xem.

- Chức năng phóng ở biểu đồ để xem các biểu đồ trạng thái giao thông tổng hợp

ở các mức khác nhau: Biểu đồ thể hiện trạng thái giao thông trung bình theo thời điểm

lấy mẫu, theo ngày, theo tuần, theo tháng, năm.

- Chức năng cập nhật dữ liệu theo thời gian thực. Hệ thống sẽ tự động cập nhật

dữ liệu để hiển thị trạng thái giao thông mới nhất có trong cơ sở dữ liệu.

3.1.3. Lược đồ cơ sở dữ liệu

Dữ liệu sau khi được chuẩn hóa, đưa vào cơ sở dữ liệu phục vụ trực quan hóa

gồm có 02 bảng được lưu trữ trong cơ sở dữ liệu PostgreSQL/PostGIS lưu thông tin

và tình trạng giao thông của các tuyến đường, và 04 bảng lưu thông tin tình trạng giao

thông tổng hợp theo ngày, tuần, tháng, năm. Lược đồ cơ sở dữ liệu của hệ thống như

55

hình 3.3.

Hình 3.3: Lược đồ cơ sở dữ liệu

Mô tả cụ thể các bảng dữ liệu trong lược đồ cơ sở dữ liệu:

Bảng Thông tin trạng thái giao thông Mã bảng: tb_traffic

Kiểu dữ liệu: Bảng dữ liệu

Mô tả: Bảng dữ liệu tb_traffic thể hiện thông tin trạng thái giao thông tại các

tuyến đường xác định trong các thời điểm cụ thể.

Các trường dữ liệu trong bảng tb_traffic:

STT Mã trường Kiểu dữ liệu Tên trường Mô tả

1 ID bigint Mã Khóa chính của bảng dữ

liệu.

2 road_id int Mã tuyến đường Mã tuyến đường khảo sát.

3 status int Trạng thái

Dạng số trong khoảng từ 0- 5 lưu giá trị tình trạng giao thông của tuyến đường. Giá trị lớn ứng với tình

trạng đường tắc nghẽn. Các mức cụ thể gồm:

0: Thông thoáng

1: Dễ đi

56

2: Hơi đông

3: Đông đúc 4: Tắc

5: Tắc nghẽn

4 time datetime Thời gian Thời điểm có dữ liệu đánh

giá tình trạng giao thông.

5 duration int Khoảng thời gian Khoảng thời gian duy trì

tình trạng giao thông tính

bằng phút.

6 description ntext Mô tả

Mô tả thêm về thông tin trạng thái giao thông.

Bảng 3.1: Trường dữ liệu thông tin trạng thái giao thông

Bảng Thông tin tuyến đường giao thông Mã bảng: tb_street

Kiểu dữ liệu: Bảng dữ liệu

Mô tả: Bảng dữ liệu tb_ street thể hiện thông tin của các tuyến đường xác định.

Các trường dữ liệu trong bảng tb_ street:

STT Mã trường Kiểu dữ liệu Tên trường Mô tả

1 ID bigint Mã Khóa chính của bảng dữ

liệu. Là mã tuyến đường

khảo sát.

2 name ntext Tên tuyến Tên tuyến đường khảo sát.

đường

3 direction int

Hướng di chuyển

Hướng di chuyển của tuyến đường khảo sát. Giá trị : 0: Tuyến phố hai chiều

1: Tuyến phố một chiều từ điểm đầu đến điểm cuối -1: Tuyến phố một chiều từ

điểm cuối đến điểm đầu

4 description ntext Mô tả

57

Mô tả thêm về thông tin tuyến đường giao thông.

5 geom geometry Thông tin địa lý Dữ liệu địa lý của tuyến

đường (theo kiểu Polyline).

Bảng 3.2: Trường dữ liệu thông tin tuyến đường giao thông

Thống kê trạng thái giao thông theo ngày Mã bảng: tb_day_statistics

Kiểu dữ liệu: Bảng dữ liệu

Mô tả: Bảng dữ liệu tb_day_statistics thống kê trạng thái giao thông tổng hợp

theo ngày. Dữ liệu của bảng này dữ liệu tổng hợp trung bình trạng thái giao thông

của cả hệ thống theo ngày.

Các trường dữ liệu trong bảng tb_day_statistics:

STT Mã trường Kiểu dữ liệu Tên trường Mô tả

1 ID bigint Mã Khóa chính của bảng dữ

liệu.

2 day date Ngày thống kê Ngày thống kê dữ liệu trạng

thái giao thông trung bình.

3 status real Trạng thái giao Giá trị trạng thái giao thông

thông trung bình ngày.

Bảng 3.3: Trường dữ liệu thống kê trạng thái giao thông theo ngày

Thống kê trạng thái giao thông theo tuần Mã bảng: tb_week_statistics

Kiểu dữ liệu: Bảng dữ liệu Mô tả: Bảng dữ liệu tb_week_statistics thống kê trạng thái giao thông tổng hợp theo tuần. Dữ liệu của bảng này dữ liệu tổng hợp trung bình trạng thái giao thông của cả hệ thống theo tuần.

Các trường dữ liệu trong bảng tb_week_statistics:

STT Mã trường Kiểu dữ liệu Tên trường Mô tả

1 ID bigint Mã

58

Khóa chính của bảng dữ liệu.

2 week date Tuần thống kê

Ngày đại diện (đầu tiên) của tuần thống kê dữ liệu trạng

thái giao thông trung bình.

3 status real Trạng thái giao Giá trị trạng thái giao thông

thông trung bình tuần.

Bảng 3.4: Trường dữ liệu thống kê trạng thái giao thông theo tuần

Thống kê trạng thái giao thông theo tháng Mã bảng: tb_month_statistics Kiểu dữ liệu: Bảng dữ liệu

Mô tả: Bảng dữ liệu tb_ month _statistics thống kê trạng thái giao thông tổng

hợp theo tháng. Dữ liệu của bảng này dữ liệu tổng hợp trung bình trạng thái giao

thông của cả hệ thống theo tháng.

Các trường dữ liệu trong bảng tb_ month _statistics:

STT Mã trường Kiểu dữ liệu Tên trường Mô tả

1 ID bigint Mã Khóa chính của bảng dữ

liệu.

2 month date Tháng thống kê Ngày đại diện (đầu tiên) của

tháng thống kê dữ liệu trạng

thái giao thông trung bình.

3 status real

Trạng thái giao thông Giá trị trạng thái giao thông trung bình tháng.

Bảng 3.5: Trường dữ liệu thống kê trạng thái giao thông theo tháng

Thống kê trạng thái giao thông theo năm Mã bảng: tb_year_statistics

59

Kiểu dữ liệu: Bảng dữ liệu

Mô tả: Bảng dữ liệu tb_ year _statistics thống kê trạng thái giao thông tổng hợp theo năm. Dữ liệu của bảng này dữ liệu tổng hợp trung bình trạng thái giao thông của

cả hệ thống theo năm.

Các trường dữ liệu trong bảng tb_ year _statistics:

STT Mã trường Kiểu dữ liệu Tên trường Mô tả

1 ID bigint Mã Khóa chính của bảng dữ

liệu.

2 year date Năm thống kê Ngày đại diện (đầu tiên) của

năm thống kê dữ liệu trạng thái giao thông trung bình.

3 status real Trạng thái giao Giá trị trạng thái giao thông

thông trung bình năm.

Bảng 3.6: Trường dữ liệu thống kê trạng thái giao thông theo năm

3.2. Xây dựng ứng dụng và thử nghiệm

3.2.1. Môi trường ứng dụng

- Thiết lập môi trường phát triển PHP với các thư viện javascript đã giới thiệu:

D3.js, Heatmap.js, Leaflet.js, leaflet-heatmap.js.

- Máy chủ web: Apache

- Hệ quản trị cơ sở dữ liệu: PostgreSQL/PostGIS

- Google Maps API: để khai thác dịch vụ bản đồ của Google

3.2.2. Dữ liệu thử nghiệm

Dữ liệu được tạo để phục vụ thử nghiệm hệ thống trong khoảng thời gian từ

01/06/2014 đến 30/7/2015 theo lược đồ cơ sở dữ liệu:

Dữ liệu về đường giao thông: 5 đoạn đường gồm:

- Ngã ba Phạm Văn Đồng - Trần Quốc Hoàn (Hướng đi cầu Thăng Long)

- Ngã ba Phạm Văn Đồng - Hoàng Quốc Việt (Hướng đi cầu Thăng Long)

- Ngã ba Phạm Văn Đồng - Hoàng Quốc Việt (Hướng đi Phạm Hùng)

- Ngã tư Khuất Duy Tiến - Nguyễn Trãi (Hướng đi Nguyễn Xiển)

- Ngã tư Nguyễn Trãi - Nguyễn Xiển (Hướng đi Ngã Tư Sở)

60

Dữ liệu về trạng thái giao thông:

Dữ liệu được sinh ngẫu nhiên cho toàn bộ 5 đoạn đường trong khoảng thời gian

từ 01/06/2014 đến 30/7/2015, thời điểm lấy dữ liệu trạng thái giao thông 15 phút/lần.

Tổng số 198.890 bản ghi dữ liệu.

Dữ liệu thống kê trạng thái giao thông tổng hợp theo ngày, tuần, tháng:

Theo yêu cầu, dữ liệu này sẽ được tính toán và cập nhật tự động cơ sở dữ liệu

vào cuối ngày, tuần, tháng.

Dưới đây là FUNCTION tính dữ liệu trạng thái giao thông trung bình trong

CREATE FUNCTION f_lv_tbngay(IN fromdate date, IN todate date) RETURNS SETOF f_lv_tbngay AS $BODY$ DECLARE r somefun_type; query text := ''; var_match somefun_type; BEGIN query := 'SELECT b.dt::date as dt, 1.25 FROM tb_traffic b where b.dt>='''||cast(fromdate as

date)||'''

and b.dt<='''||cast(todate as date)||''' and b.idroad = 1 group by b.dt::date order by b.dt::date

asc';

RETURN NEXT var_match;

FOR var_match IN EXECUTE(query) LOOP END LOOP;

FOR r IN EXECUTE(query) LOOP query:='select '''||r.ngay||''', AVG(a.state) as tb from tb_traffic a where a.dt::date = '''||r.ngay||''' '; END LOOP; END; $BODY$ LANGUAGE plpgsql VOLATILE COST 100 ROWS 1000; ALTER FUNCTION f_lv_tbngay(date, date) OWNER TO postgres;

ngày (tính toán cho tuần, tháng được làm tương tự) được cài đặt trong PostgreSQL:

Dữ liệu thử nghiệm của các bảng này trong cơ sở dữ liệu gồm: Bảng

tb_day_statistics có 424 bản ghi, Bảng tb_ week_statistics có 14 bản ghi,

Bảng tb_ month _statistics có 61 bản ghi.

3.3. Kết quả thử nghiệm

Thực hiện các thiết kế và kỹ thuật đã giới thiệu, xây dựng hệ thống thử nghiệm

61

trực quan hóa trạng thái giao thông trên nền web như hình 3.4

Ứng dụng thử nghiệm đã hiển thị được trực quan hóa dữ liệu các tuyến phố trên

nền bản đồ và xây dựng đồ thị thể hiện kết quả tổng hợp trạng thái giao thông của hệ

thống theo thời gian như các yêu cầu về chức năng hệ thống đã phân tích tại mục

3.1.2.

Hệ thống đã được cài đặt thử nghiệm và kết quả màn hình chính hệ thống thử

nghiệm được minh hoạ như hình sau:

Hình 3.4: Màn hình chương trình thử nghiệm

Khi lựa chọn “Chạy theo thời gian thực”, dữ liệu hiển thị trực quan trên bản đồ

thể hiện sự thay đổi trạng thái của ngày cuối cùng được cập nhật trong cơ sở dữ liệu.

Người dùng cũng có thể lựa chọn ngày để xem biểu diễn trực quan hóa trạng thái giao

thông. Dữ liệu hiển thị trực quan trên bản đồ và biểu đồ thể hiện trạng thái giao thông

của ngày được lựa chọn.

Người dùng chọn ngày và nhấn nút “Chọn” để hiển thị trực quan trạng thái giao

thông trên bản đồ và biểu đồ thể hiện trạng thái giao thông tổng hợp của hệ thống

theo ngày được chọn. Do khoảng hiển thị trên biểu đồ lớn, người dùng có thể chọn

khoảng thời gian để xem chi tiết hơn hoặc di chuyển theo khoảng thời gian đã chọn

62

ở biểu đồ phụ bên dưới.

Có thể sử dụng nút “+”, “-” để tăng giảm mức các loại biểu đồ thể hiện trực

quan trạng thái giao thông tổng hợp theo thời điểm, ngày, tuần, tháng.

Hình 3.5 là biểu đồ thể hiện trạng thái giao thông tổng hợp các thời điểm trong

ngày 25/6/2015. Trục x thể hiện thời gian trong ngày, trục y thể hiện giá trị trung bình

trạng thái giao thông toàn bộ hệ thống theo các thời điểm lấy mẫu trong ngày. Tương

tự có các biểu đồ thể hiện trạng thái giao thông theo ngày (Hình 3.6 - Trạng thái giao

thông tổng hợp các ngày), theo tuần (Hình 3.7 - Trạng thái giao thông tổng hợp tuần),

theo tháng (Hình 3.8 - Trạng thái giao thông tổng hợp các tháng).

Giá trị trạng thái giao thông tương ứng với tình trạng của đoạn đường là: 0:

Thông thoáng; 1: Dễ đi; 2: Hơi đông; 3: Đông đúc; 4: Tắc; 5: Tắc nghẽn

Hình 3.5: Biểu đồ tổng hợp trạng thái giao thông theo thời điểm

Hình 3.6: Biểu đồ tổng hợp trạng thái giao thông theo ngày

63

Hình 3.7: Biểu đồ tổng hợp trạng thái giao thông theo tuần

Hình 3.8: Biểu đồ tổng hợp trạng thái giao thông theo tháng

Người dùng có thể chọn thời điểm trên biểu đồ để hiển thị trực quan trạng thái

giao thông trên bản đồ như hình 3.10 thể hiện trạng thái giao thông của 5 đoạn đường

64

vào thời điểm hiện tại ngày 30 tháng 6 năm 2015.

Hình 3.9: Trực quan trạng thái giao thông trên bản đồ theo thời điểm chọn

3.4. Đánh giá

Qua những kết quả thực nghiệm đã đạt được và trình bày ở trên, nhận thấy rằng

hệ thống đã phần nào đáp ứng được những yêu cầu bài toán đặt ra. Qua thực nghiệm

cho thấy hệ thống có sự tương tác với khung hệ thống và cung cấp đến người tham

gia giao thông Hà Nội trực tuyến trên Internet (Web), khai thác được những tính năng,

tiện ích, tính trực quan từ dịch vụ bản đồ số.

Tuy nhiên hệ thống vẫn có nhiều những điểm chưa thực sự tốt. Giao diện hệ

thống mới chỉ đáp ứng được các chức năng đơn giản cơ bản của người dùng chứ chưa

65

có nhiều chức năng chuyên sâu hơn phục vụ việc sắp xếp theo dõi.

KẾT LUẬN

Trong bối cảnh xã hội như hiện nay vấn đề giao thông đường bộ là một trong

những vấn đề lớn trong đó ùn tắc giao thông cũng là vấn đề “nóng” được xã hội quan

tâm. Việc ứng dụng công nghệ thông tin vào hệ thống giao thông đường bộ là giải

pháp đã được ứng dụng ở rất nhiều nơi trên thế giới và mang lại hiệu quả rất lớn. Ở

Hà Nội đã đầu tư nhiều công trình giao thông đường bộ, hệ thống giao thông song

việc áp dụng CNTT, công nghệ hiện đại để quản lý, khai thác hệ thống giao thông

cũng như việc áp dụng CNTT để điều tiết giao thông còn hạn chế. Vì vậy giao thông

thông minh với hạ tầng CNTT hiện đại được xem là một giải pháp tốt để giảm ùn tắc

và tai nạn giao thông.…Với thực trạng đó, luận văn này đã chú trọng đến việc tìm

hiểu, nghiên cứu và xây dựng mô hình trực quan hoá trạng thái giao thông Hà Nội

trên nền bản đồ số.

Qua quá trình nghiên cứu và thực hiện luận văn đã đạt được những kết quả sau:

- Trình bày khái quát hóa về trực quan hóa trạng thái giao hà nội và bài

toán trực quan hóa trạng thái giao thông Hà Nội trên nền bản đồ số.

- Hệ thống hóa một số kỹ thuật liên quan đến việc giải quyết bài toán trực

quan hóa trạng thái giao thông Hà Nội trên nền bản đồ số.

- Cài đặt thử nghiệm hệ thống trực quan hóa trạng thái giao thông cho địa

bàn Hà Nội với 5 đoạn đường bao gồm: Ngã ba Phạm Văn Đồng - Trần

Quốc Hoàn (Hướng đi cầu Thăng Long); Ngã ba Phạm Văn Đồng -

Hoàng Quốc Việt (Hướng đi cầu Thăng Long); Ngã ba Phạm Văn Đồng

- Hoàng Quốc Việt (Hướng đi Phạm Hùng); Ngã tư Khuất Duy Tiến -

Nguyễn Trãi (Hướng đi Nguyễn Xiển); Ngã tư Nguyễn Trãi - Nguyễn

Xiển (Hướng đi Ngã Tư Sở)

Tuy nhiên do hạn chế về thời gian, khả năng tìm hiểu, thiếu sót về kinh nghiệm

nên kết quả thu được còn rất hạn chế và cần tiếp tục xây dựng và cải thiện nhiều hơn

nữa trong tương lai sắp tới.

66

Hướng phát triển tiếp theo của luận văn là:

- Xây dựng hoàn thiện hơn các chức năng đã có, cải thiện hiệu suất và

hướng tới việc áp dụng chương trình cho toàn địa bàn Hà Nội.

- Có tiện ích dự báo ngắn hạn trạng thái giao thông tuyến phố.

- Cho phép người dùng đăng ký nhận thông tin trạng thái giao thông theo

lộ trình tuỳ biến.

- Cho phép quảng bá thông tin trạng thái trực tiếp trên đầu tuyến phố và

đưa ra những khuyến cáo cho người tham gia giao thông trên màn hình

lớn.

- Thêm các chức năng cho phép người dùng tương tác nhiều hơn với ứng

dụng hệ thống.

Trong thời gian tới, tôi sẽ cố gắng hoàn thiện hơn đề tài luận văn của mình để

có thể phục vụ một cách tốt nhất các nhu cầu đã đặt ra nói riêng và các nhu cầu của

67

người dùng nói chung.

TÀI LIỆU THAM KHẢO

[1]. Sở KH-CN Hà Nội, mã số 01C-04/08-2014-2 đề tài “Hệ thống thông tin trạng thái giao thông thành phố Hà Nội: Thực trạng và giải pháp”. [2]. Nguyễn Văn Chương, “Mô phỏng giao thông đường bộ sử dụng NetLogo”, khoá luận tốt nghiệp, trường Đại học Công nghệ, 2013. [3]. Đào Quang Quân, “Xây dựng hệ thống bản đồ số hỗ trợ tích hợp camera giám sát”, khoá luận tốt nghiệp, trường Đại học Công nghệ, 2013. [4]. Phạm Đức Dương, “Mô hình và trực quan hoá dữ liệu trạng thái giao thông trên nền Web”, luận văn tốt nghiệp, trường Đại học Công nghệ, 2015. [5]. TS. Trần Vân Anh, ThS. Nguyễn Thị Yên Giang (2011), Bài giảng Hệ thống thông tin địa lý, Trường Đại học Mỏ Địa chất Hà Nội. [6]. Noah Iliinsky, Julie Steele (2011), Designing Data Visualizations, O’Reilly. [7]. Andy Kirk (2012), Data Visualization: a successful design process, Packt Publishing. [8]. Li, Ming-wei; Yun, Jun, "Calculating the contribution rate of intelligent transportation system for the smooth general characteristic of urban traffic," Management Science & Engineering (ICMSE), 2014 International Conference on , vol., no., pp.1855,1859, 17-19 Aug. 2014. [9]. Rong-Jong Wai; Jeng-Dao Lee; Kun-Lun Chuang, "Real-Time PID Control Strategy for Maglev Transportation System via Particle Swarm Optimization," Industrial Electronics, IEEE Transactions on , vol.58, no.2, pp.629,646, Feb. 2011. [10]. Zhu Yongjun; Zhu Xueli; Zhu Shuxian; Guo shenghui, "Intelligent transportation system based on Internet of Things," World Automation Congress (WAC), 2012 , vol., no., pp.1,3, 24-28 June 2012. [11]. Baselice, Fabio; Ferraioli, Giampaolo; Matuozzo, Gianfranco; Pascazio, Vito; Schirinzi, Gilda, "3D automotive imaging radar for transportation systems monitoring," Environmental Energy and Structural Monitoring Systems (EESMS), 2014 IEEE Workshop on , vol., no., pp.1,5, 17- 18 Sept. 2014. [12]. Ling Li; Ting Wang, "Design and Implement of Vehicle Monitoring System Using 3G Technology," Industrial Control and Electronics , vol., no., Engineering (ICICEE), 2012 International Conference on pp.832,835, 23-25 Aug. 2012. [13]. Liang Xu; Shasha Gao; Haitao Zhang, "Dynamic bus monitoring and scheduling system based on ArcGIS Server technology," Computer

68

Science and Information Processing (CSIP), 2012 International Conference on , vol., no., pp.1438,1441, 24-26 Aug. 2012. [14]. http://bigdata.csail.mit.edu/challenge [15]. Tom Barker (2013), Pro Data Visualization using R and JavaScript, Apress. [16]. Scott Murray (2010), Interactive Data Visualization for the Web, O’Reilly.

69