1
BỘ GIÁO DỤC VÀ ĐÀO TẠO VIỆN KH&CN VIỆT NAM
VIỆN CÔNG NGHỆ THÔNG TIN Vũ Đức Thái NGHIÊN CỨU ỨNG DỤNG MẠNG NƠ RON TẾ BÀO CNN
TRONG VIỆC GIẢI PHƯƠNG TRÌNH VI PHÂN ĐẠO
HÀM RIÊNG
Chuyên ngành: Bảo đảm toán học cho máy tính
và hệ thống tính toán
Mã số: 62 46 35 01
LUẬN ÁN TIẾN SĨ TOÁN HỌC
3
LỜI CAM ĐOAN
Tôi xin cam đoan những nội dung được đề xuất trong luận án là hoàn
toàn mới, chưa có tác giả nào công bố.
Các kết quả đạt được trong quá trình nghiên cứu là hoàn toàn trung
thực khách quan.
Tôi xin chịu trách nhiệm về những lời cam đoan trên.
Hà Nội, ngày 15 tháng 12 năm 2011
Người cam đoan
NCS Vũ Đức Thái
1.3. Phương pháp nghiên cứu 13
1.4. Ý nghĩa khoa học và thực tiễn 14
CHƯƠNG 2: TỔNG QUAN VỀ MẠNG NƠ RON TẾ BÀO VÀ
PHƯƠNG TRÌNH ĐẠO HÀM RIÊNG 15
2.1. Giới thiệu công nghệ Mạng nơ ron tế bào. 15
2.2. Các khái niệm cơ bản về công nghệ mạng nơ ron tế bào 22
2.3. Kiến trúc của máy tính mạng nơ ron tế bào CNN-UM. 32
2.4. Một số thao tác xử lý trên CNN-UM. 37
2.5. Khái quát về phương trình đạo hàm riêng 39
2.6. Mối quan hệ động học giữa CNN và PDE 42
2.7. Giải phương trình đạo hàm riêng Burger sử dụng công nghệ CNN 48
2.8. Hạn chế của công nghệ CNN và giải pháp 49
2.9. Phương pháp huấn luyện CNN bằng mẫu học 51
2.10. Kết luận 53
CHƯƠNG 3: PHÁT TRIỂN PHƯƠNG PHÁP GIẢI PHƯƠNG
TRÌNH ĐẠO HÀM RIÊNG BẰNG CÔNG NGHỆ CNN 54
5
3.1. Khái quát hoá các dạng PDE giải trên CNN 54
3.2. Bài toán phương trình dòng chảy thuỷ lực 63
3. 3. Bài toán thuỷ lực hai chiều 83
3.4. Bài toán thuỷ lực hỗn hợp 94
3.5. Bài toán ô nhiễm khí quyển 100
3.6. Kết luận. 109
CHƯƠNG 4: KẾT QUẢ VÀ BÀN LUẬN 110
4.1. Tóm tắt các kết quả đạt được 110
4.2. Các đóng góp mới của luận án 111
4.3. Kết luận và kiến nghị 111
DANH MỤC CÔNG TRÌNH CỦA TÁC GIẢ 113
TÀI LIỆU THAM KHẢO 115
z: Giá trị ngưỡng của hệ mạng nơ ron tế bào.
: Toán tử nhân chập.
ij
()xt
: Giá trị trạng thái của tế bào trong mạng nơ ron tế bào hai chiều (MxN)
~
( , ,t)xz
: Ký hiệu ẩn hàm trong phương trình đạo hàm riêng tương ứng với mô hình
mạng nơ ron tế bào.
( , )x i j
: Giá trị trạng thái của các điểm rời rạc trong không gian sai phân của phương
trình vi phân đạo hàm riêng.
2. Các chữ viết tắt
ASIC (Application Special Intergrated Circuit): Mạch IC chuyên dụng
CMOS (Complimentary Metal Oxide Semiconductor): Một loại chip sử dụng công
nghệ vật liệu bán dẫn).
CNN (Cellular Neural Network): Công nghệ mạng nơ ron tế bào
CNN-UM (CNN-Universal Machine): Máy tính mạng nơ ron tế bào
COS (CNN Operating System): Hệ điều hành máy tính CNN
CPDDE (Cellular Partial Difference Differential Equation): Phương trình vi phân
đạo hàm riêng sai phân tế bào.
FPGA (Field Programmable Logic Array): Ma trận cổng lôgic lập trình được
ODE (Ordinary Differential Equation): Phương trình vi phân
7
PDE (Partial differential Equation): Phương trình vi phân đạo hàm riêng (trong luận
án dùng thuật ngữ tiếng Việt là “phương trình đạo hàm riêng”)
SWE (Shallow Water Equation): Phương trình mô tả trạng thái dòng nước trong
Bảng 3.4 Giá trị ban đầu của bài toán Hồ nước.
Bảng 3.5 Giá trị sau khi tính toán của bài toán Hồ nước.
Bảng 3.6 Các tham số trong bài toán ô nhiễm khí quyển. 9
DANH MỤC CÁC HÌNH VẼ ĐỒ THỊ
CHƯƠNG 2
Hình 2.1 Thiết bị Bi-i V301F High-Speed Smart Camera
Hình 2.2 Kiến trúc CNN chuẩn
Hình 2.3 Kiến trúc bên trong một tế bào của CNN tuyến tính đơn giản
Hình 2.4 Các dạng láng giềng của CNN, (a) r =1; (b) r = 2
Hình 3.15 Kiến trúc mạch khối cho bài toán dòng chảy một chiều
Hình 3.16 Mạch tính toán cho mỗi tế bào hàm h(x,t); Q(x,t)
Hình 3.17 Kiến trúc vỉ mạch EP2C35, và một phần tử LE
Hình 3.18 Khối tính toán cho một cặp tế bào h, Q (khối) thứ i
Hình 3.19 Kiến trúc Chip CNN có các khối tế bào tính toán cho một cặp h,Q
Hình 3.20 Mô hình mạng CNN dùng cơ chế pipelines và thanh ghi dịch
Hình 3.21 Thiết bị EP2C35 và hệ thống thực nghiệm
Hình 3.22 Kết quả tính toán trên CNN (chip EP2C35)
Hình 3.23 Hình ảnh kết quả tính toán của h, Q trên chip CNN
Hình 3.24 Mô hình vùng biển cần tính toán trong bài toán
Hình 3.25 Mô hình toán học của bài toán thuỷ lực
Hình 3.26 Cửa sổ nhập tham số và mẫu
Hình 3.27 Giá trị ban đầu của hàm h, u, v
Hình 3.28 Kết quả xử lý của hàm h, u, v
Hình 3.29 Sơ đồ khối CNN cho phương trình thuỷ lực hai chiều
Hình 3.30 Kiến trúc khối tính toán cho các ẩn hàm h, u, v
Hình 3.31 Hình ảnh hồ và đập nước
Hình 3.32 Mô hình liên kết giữa sông và hồ
Hình 3.33 Mô hình phân tích dòng chảy trong hồ có liên kết với sông
Hình 3.34 Mô hình toán học mô tả dòng chảy trong hồ có liên kết với sông
Hình 3.35 Hình ảnh gây ô nhiễm môi trường của khí thải
Hình 3.36 Giao diện nhập các tham số và mẫu cho bài toán
Hình 3.37 Kết quả mô phỏng bài toán ô nhiễm khí quyển
Hình 3.38 Sơ đồ khối các tế bào của hệ CNN 3D
Hình 3.39 Kiến trúc khối tính toán cho một tế bào trong mạng CNN của bài toán ô
nhiễm khí quyển
11
độ nhanh trong một hệ thống nhỏ gọn ONCHIP thì mô hình global trên không phù
hợp. Hơn nữa, khi đầu vào của hệ thống là một luồng thông tin biến đổi nhanh (như
luồng tín hiệu video) thì việc tính toán của máy PC có thể không đáp ứng được, vì
khi xử lý xong thì kết quả không còn giá trị do tính không kịp thời. Có thể nói máy
tính PC (có một hay nhiều lõi) hiện nay đã đạt đến giới hạn vật lý về kích thước và
tốc độ của mạch tích hợp VLSI nên khó đáp ứng cho những bài toán yêu cầu cao
hơn. Người ta cần tìm kiếm một phương thức tính toán mới thích hợp, có hiệu quả
thoả mãn các nhu cầu tính toán.
Nghiên cứu về cấu tạo và sự hoạt động của hệ thần kinh người ta đã thấy cấu
trúc của hệ thần kinh gồm các nơ ron xử lý phân tán rải khắp cơ thể đến cơ quan
thần kinh trung ương. Khi xử lý các nơ ron liên kết cục bộ với nhau để vừa xử lý,
vừa truyền tín hiệu từ bất cứ phần nào của cơ thể đến não bộ, do vậy quá trình xử lý
song song diễn ra cực kỳ nhanh làm cho con người có những phản xạ thích ứng kịp
thời khi gặp các tác nhân kích thích từ môi trường. Từ những tham khảo về mô hình
mạng nơ ron sinh học và lý thuyết về mạng nơ ron thông thường (mạng Hopfield),
năm 1988 Leon O Chua và Lin Yang đưa ra ý tưởng về một kiến trúc tính toán mới
trở thành một công nghệ xử lý, tính toán song song vật lý đó là công nghệ mạng nơ
ron tế bào (Cellular Neural Network-CNN) [12],[13]. Năm 1993, Tamás Roska và
L. O Chua đưa ra mô hình kiến trúc của máy tính mạng nơ ron tế bào (CNN
Universal Machine-CNN UM) làm cơ sở cho việc chế tạo phần cứng. Từ đó, với sự
phát triển của công nghệ vi mạch mật độ cao VLSI các nhà sản xuất đã nghiên cứu
chế tạo ra các chip CNN thương mại. Chip CNN ban đầu là một hệ thống ONCHIP
có 8x8 phần tử xử lý (gọi là cell-tế bào) liên kết cục bộ với nhau xử lý song song và
chỉ xử lý giá trị nhị phân. Đến nay với công nghệ vi mạch số các nhà nghiên cứu đã
xây dựng chip CNN có tên gọi là Programmable Optical Array Computer (POAC)
có kích thước lớn tới 500x500 [37]. Nếu cấu hình bằng công nghệ chip FPGA có
thể đạt 512x512 thậm chí 1028x1028 tế bào [23], [34].
Nhiều thế hệ chip khác nhau dựa trên công nghệ CNN đã được chế tạo phục
13
14
PDE mô tả bài toán thuỷ lực và bài toán ô nhiễm khí quyển.
Để nghiên cứu tiếp cận một lĩnh vực tính toán khoa học với những công cụ
mạnh, hiệu quả, Luận án tiến hành nghiên cứu nắm bắt những cơ sở toán học, kiến
trúc mạch phần cứng, thuật toán xử lý, khả năng ứng dụng của CNN. Qua đó, lựa
chọn, đề xuất phương pháp giải một số phương trình đạo hàm riêng và thực hiện
giải theo các thuật toán của CNN, cụ thể:
-Luận án đã đề xuất nghiên cứu giải phương trình dòng chảy một chiều:
Nghiên cứu mô hình toán học, thiết kế mẫu, chứng minh sự ổn định của mạng với
tập mẫu tìm được. Chứng minh sự tương đương toán học giữa mô hình sai phân và
mô hình CNN. Mô phỏng tính toán theo thuật toán CNN trên Matlab, thiết kế mạch
và cấu hình trên chip EP2C35 tạo thành mạng CNN cho bài toán; so sánh kết quả
tính toán trên máy PC và tính toán bằng mạng CNN xây dựng trên chip FPGA. Nội
dung này được trình bày trong Mục 3.2 của Luận án. Những kết quả nghiên cứu này
có trong các tài liệu ở mục [1], [2], [4], trong Danh mục công trình của tác giả.
-Luận án nghiên cứu phương trình thuỷ lực hai chiều bao gồm: Đề xuất mô
hình thuật toán, thiết kế mẫu, xây dựng mô hình kiến trúc phần cứng, chứng minh
sự ổn định của mạng và sự tương đương giữa mô hình sai phân và mô hình mạng
CNN. Cài đặt mô phỏng thuật toán trên Matlab, phân tích tài nguyên chip cần cho
chế tạo phần cứng. Các nội dung này được trình bày tại Mục 3.3 của Luận án và có
trong mục [3], [6] phần Danh mục công trình của tác giả.
-Luận án đề xuất thuật toán CNN giải phương trình thuỷ lực hỗn hợp và cài
đặt mô phỏng tính toán trên Matlab trong Mục 3.4 của Luận án và trong mục [5],
Danh mục công trình của tác giả.
- Luận án nghiên cứu thuật toán, thiết kế mẫu, phân tích sự ổn định của mạng
CNN 3D giải phương trình mô tả hiện tượng ô nhiễm khí quyển, tiến hành cài đặt
thực nghiệm mô phỏng tính toán cho bài toán trên Matlab và thiết kế kiến trúc tính
toán trên công nghệ FPGA. Nội dung này được trình bày trong Mục 3.5 của Luận
án và có trong các tài liệu ở mục [8], [9] Danh mục công trình của tác giả.
1.3. Phương pháp nghiên cứu
16 Chương 2.
Tổng quan về Mạng nơ ron tế
bào và phương trình đạo hàm riêng
2.1. Giới thiệu công nghệ mạng nơ ron tế bào
2.1.1. Lịch sử phát triển của máy tính mạng nơ ron tế bào
Năm 1988, Leon O Chua và Lin Yang đưa ra ý tưởng về kiến trúc máy tính
mạng nơ ron tế bào (Cellular Neural Network) [12],[13]. Trong đó, các tác giả đã
nêu những nội dung cơ bản cho một mô hình tính toán song song, bao gồm kết cấu
mạch điện, phương trình toán học mô tả hoạt động của hệ thống. Bài báo cũng phân
tích, chứng minh sự làm việc ổn định của mạng bằng các cơ sở toán học, đưa ra mô
hình mô phỏng thuật toán với những ví dụ cụ thể. Đây là những khái niệm, nguyên
tắc cơ bản, làm nền tảng cho việc nghiên cứu về công nghệ CNN. Mô hình mạch
điện của Chua đã trở thành kiến trúc lõi cho việc thiết kế các chip CNN sau này.
Sau đó là một loạt các bài viết về việc thiết kế chip CNN ứng dụng cho bài toán xử
lý ảnh và nhận dạng là lĩnh vực đầu tiên được ứng dụng công nghệ CNN.
kính mắt sinh học (Bionic Eyeglass) là dạng camera hai chiều trợ giúp cho người
khiếm thị sử dụng như mắt nhân tạo [26].
2.1.2. Một số thành tựu ứng dụng CNN trên thế giới hiện nay
-Với chip XC2VP30 của hãng Xilinx và hệ phát triển Virtex-II Pro các nhà
18
nghiên cứu R. Yeniceri và M. E. Yalcm thuộc đại học Công nghệ Istanbul (Thổ nhĩ
kỳ) đã mô phỏng tính năng của các loài sinh vật vào chế tạo rô bốt gắn camera nhận
dạng ảnh động, tạo cho rô bốt khả năng trao đổi thông tin, phối hợp hoạt động tập
thể cùng thực thi một nhiệm vụ chung. Các thông số có thể đưa vào hệ thống trong
khi phần cứng đang xử lý, do vậy có thể cập nhật điều kiện động của môi trường để
tính toán cho từng vị trí, làm cho hệ điều khiển rô bốt có tính linh hoạt với thời gian
thực [8],[39].
- Các nhà khoa học tại đại học Santiago (Tây Ban Nha) đã nghiên cứu việc
truyền sóng hai chiều trong môi trường động không gian - thời gian, áp dụng thuật
toán và kiến trúc tính toán song song của CNN cho bài toán truyền sóng để tính toán
tất cả các đường truyền có thể và tìm ra đường đi tối ưu trong điều khiển rô bốt tự
hành [27].
- Hai nhà nghiên cứu A. Kis và G. Vásárhelyi làm việc tại các phòng thí
nghiệm MTA-MFA, MTA SZTAKI và Anyos Jedlik (Hungary) đã nghiên cứu việc
thu nhận tín hiệu của bộ não người với độ nhạy cao, áp dụng khả năng này cho rô
bốt để điều khiển các thao tác công nghệ với độ chính xác cao, khắc phục yếu tố
tâm lý của con người. Sản phẩm này được ứng dụng trong một số rô bốt yêu cầu có
các thao tác chính xác trong các động tác nhạy cảm về tâm lý. Ý tưởng trên được
thực hiện với thiết bị TactoLogic và phần mềm TactoSoft [22].
- Một số nhà nghiên cứu tại đại học Wolfgang Von Goethe (Đức) đã áp dụng
chip EyeRIS 1.2 của ANAFOCUS thực hiện giám sát các mối hàn chất lượng cao tự
động điều chỉnh chế độ hàn cho cánh tay rô bốt hàn [15].
2.1.3. Những kết quả ứng dụng CNN để giải phương trình đạo hàm riêng
- Các nhà nghiên cứu F. Pardo, P. Lospez và D. Cabelo của đại học
ional Ocean Model on FPGAs" của các tác giả Z. Nagy, P. Szolgay thuộc đại học
Veszprém (Hungary) mô tả kiến trúc digital CNN-UM với mô hình Falcom đã khắc
phục nhược điểm của CNN-UM về độ chính xác. Kiến trúc này hiệu quả hơn kiến
trúc máy tính analog thế hệ trước về kích thước mảng tế bào, độ chính xác. Các tác
giả đã thực thi giải phương trình đạo hàm riêng mô tả dòng chảy không nén có trong
nhiều lĩnh vực khoa học như khí động lực học, khí tượng học, hải dương học xuất
20
phát từ hệ phương trình Navier-Stockes. Mô hình Falcom có thể thực thi cấu hình
bằng ngôn ngữ Handle-C trên chip FPGA có tên là RC200 cỡ trung bình của hãng
Celoxica. Hạn chế của phương pháp này là tốc độ chưa cao và độ rộng của bus nhớ
hạn chế, (tuy nhiên tốc độ cũng đạt tới 60 lần nhanh hơn chip Pentium IV 3 GHz).
Các tác giả đang nghiên cứu mô hình bài toán truyền chất lỏng trong không gian 3
chiều POM (Princeton Ocean Model), với các phương trình mô tả phức tạp hơn
nhiều, sử dụng chip FPGA thế hệ mới (Vertex 5, Vertiex 6 có hàng triệu cổng). Hai
vấn đề khó khăn phải giải quyết là: kiến trúc CNN đa lớp có kết nối với nhau rất
phức tạp gây sai số và không ổn định; độ rộng các bus I/O và số thực dấu phảy động
chiếm nhiều bộ nhớ dẫn đến chiếm nhiều tài nguyên của chip FPGA [49].
Trong cuốn “Modeling of Thermal Two Dimensional Free Turbulent Jet by a
Three layers Two Time Scale Cellular Neural Network” (NXB Springer Berlin,
1999), các tác giả A. Shabani, M. B. Menhaj và H. B. Tabrizi đã dùng mô hình
CNN 3D mô hình hóa phương trình đạo hàm riêng mô tả sự biến thiên nhiệt độ, vận
tốc của một tên lửa bay tự do trong không gian ba chiều với miền thời gian liên tục,
(như vậy phương trình mô tả có ba biến không gian và một biến thời gian). Kết quả
này đã được so sánh với các kết quả tính toán trước cho thấy độ chính xác khá cao.
Từ bài toán này các tác giả khẳng định có thể điều chỉnh mẫu của hệ CNN để đạt
được một công cụ mạnh để giải bài toán với kích thước lớn [43].
Các tác giả K. Hadad và A. Piroozmand của đại học Shiraz, Trung tâm
nghiên cứu hạt nhân Shirax (Iran) đã giới thiệu trong bài báo “Application of
Cellular Neural Network (CNN) Method to the Nuclear Reactor Dynamics
Tiềm năng ứng dụng CNN đã và đang mở rộng về mặt nguyên lý, từ việc lọc
ảnh phức tạp theo phương thức truyền thống; xử lý tín hiệu sinh học; giải phương
Hình 2.1 Thiết bị Bi-i V301F High-Speed Smart Camera
22
trình đạo hàm riêng; phân tích mô hình phi tuyến mô tả một số hệ vật lý Hiện nay,
quá trình xử lý không gian - thời gian phỏng theo xử lý của võng mạc mắt đã được
xây dựng, sử dụng hệ CNN thị giác, gồm tập rất lớn các phần tử “xử lý tương tự”
giống nhau và có tương tác cục bộ trong quá trình xử lý. Trọng số tương tác trong
không gian biến là hữu hạn cho thấy mạng làm việc chỉ phụ thuộc vào những biến
lân cận và có ít biến toàn cục. Bộ xử lý có thể xử lý “luồng” ảnh nhị phân hay đa
mức xám. Một số hệ thống cơ điện tử đã được thiết kế, chế tạo dựa trên mạch CNN
ứng dụng trong việc điều khiển truyền động với những khớp quay nhiều bậc tự do
phức tạp.
Trong tương lai CNN được sử dụng rộng rãi như: theo dõi, phân tích tia lửa
điện trong lò hồ quang; dò tìm khoáng sản trong phạm vi rộng dựa trên ảnh hồng
ngoại; theo dõi hiện tượng dị thường trong địa vật lý; thực hiện những nhiệm vụ
sinh trắc như nhận dạng vân tay, trích chọn đặc trưng dấu vết; tăng cường ảnh trong
nhận dạng, ứng dụng trong y tế theo dõi phân tích triệu chứng của não bộ, xử lý
chuỗi DNA Kết hợp với các cơ cấu chấp hành, công nghệ CNN còn cho phép ứng
dụng trong điều khiển tự động, trong các dây chuyền sản xuất công nghiệp, các hệ
xử lý thời gian thực.
Bên cạnh những ưu thế, CNN cũng có những nhược điểm nhất định. Do
trên nguyên tắc chung, thậm chí với mỗi bài toán ta phải thiết kế một kiến trúc phần
cứng riêng phù hợp với các tham số và ràng buộc cụ thể. Kiến trúc CNN là hệ thống
onchip gồm tập các tế bào liên kết cục bộ với với nhau tạo thành lưới, có nhiều
dạng lưới được đưa ra như lưới hình chữ nhật, tam giác, lục giác [41].
2.1.2. Kiến trúc chuẩn của CNN
Kiến trúc CNN chuẩn là một mảng hình chữ nhật kích thước MxN các tế
bào, mỗi tế bào tại toạ độ (i,j) ký hiệu là C(i,j) giống như các toạ độ trong không
gian Đề các hai chiều [12]. Chỉ số dòng i, cột j thỏa mãn điều kiện:
1 ; 1i M j N
Hình 2.2 minh hoạ cho một mạng CNN chuẩn, trong đó mỗi ô biểu diễn cho
một tế bào C(i,j) có liên kết trực tiếp với các tế bào láng giềng. 24 Một trong những đặc trưng của CNN là mỗi tế bào là một hệ thống động,
phi tuyến nhưng liên kết từng cặp là tuyến tính, nói cách khác cấu trúc không gian
của mảng là tuyến tính.
của các tế
bào láng giềng, và qua điện áp hồi tiếp điều khiển từ đầu ra của các tế bào láng
giềng v
ykl
). Gọi I
xy
(i,j;k,l), I
xu
(i,j;k,l) là những nguồn dòng điều khiển điện áp tuyến
tính, được tính toán theo công thức I
xy
(i,j;k,l) = A(ij,kl).v
ykl
và I
xu
(i,j;k,l)= B(ij,kl).v
ukl
Hình 2.2 Kiến trúc CNN chuẩn
1
2
3
Cột
j
N
1
2
3
Dòng i
M
yx
R
y
Hình 2.3 Kiến trúc bên trong một tế bào của CNN tuyến tính đơn giản
v
uij25
với mọi tế bào C(k,l) là láng giềng của tế bào C(i,j). Phần tử phi tuyến duy nhất
trong mỗi một tế bào là nguồn dòng được điều khiển bởi điện áp
ij
1
()
xy x
y
I f v
R
với
f(.) là hàm tuyến tính từng đoạn (piecewise linear). Cặp hệ số A
ij,kl
và B
ij,kl
được gọi
là toán tử hồi tiếp mẫu và toán tử điều khiển mẫu.
Giá trị kết quả xử lý chính là điện áp trạng thái của từng tế bào, do vậy các
xử lý được thông qua biến trạng thái đặc trưng cho điện áp này.