Tải bản đầy đủ (.pdf) (65 trang)

Nghiên cứu ứng dụng công nghệ mạng nơron tế bào vào giải phương trình navier stokes cho dòng chảy không nén hai chiều

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1 MB, 65 trang )

ĐẠI HỌC
THÁIentries
NGUYÊN
Error!
No index
found.
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG

LÊ HỒNG QUANG

NGHIÊN CỨU ỨNG DỤNG CÔNG NGHỆ
MẠNG NƠRON TẾ BÀO VÀO GIẢI HỆ
PHƯƠNG TRÌNH NAVIER - STOKES CHO DÒNG CHẢY
KHÔNG NÉN HAI CHIỀU

Chuyên ngành: Khoa học máy tính
Mã số: 60.48.01

LUẬN VĂN THẠC SĨ KHOA HỌC MÁY TÍNH

NGƯỜI HƯỚNG DẪN KHOA HỌC: TS. VŨ ĐỨC THÁI

Thái Nguyên - Năm 2015
i


LỜI CAM ĐOAN
Tôi cam đoan đây là công trình nghiên cứu của riêng tôi, dưới sự hướng
dẫn của TS. Vũ Đức Thái. Các số liệu, kết quả nêu trong luận văn là trung
thực, bảo đảm tính khách quan, luận văn này cho đến nay chưa được bảo vệ
tại bất kỳ hội đồng nào và chưa hề được công bố trên bất kỳ phương tiện nào


khác. Các tài liệu tham khảo có nguồn gốc xuất xứ rõ ràng.
Tác giả xin chịu trách nhiệm về những lời cam đoan trên.
Thái nguyên, ngày ..... tháng ..... năm 2015
Tác giả luận văn

Lê Hồng Quang

ii


LỜI CẢM ƠN
Em xin chân thành cảm ơn thầy giáo TS. Vũ Đức Thái đã trực tiếp giao
cho em đề tài, tận tình hướng dẫn và tạo mọi điều kiện cho em hoàn thành
luận văn.
Em xin chân thành cảm ơn các thầy cô giáo, các cán bộ nhân viên
phòng Đào tạo, Lãnh đạo Trường Đại học Công nghệ Thông tin và Truyền
thông đã giúp đỡ tạo điều kiện cho em hoàn thành bản luận văn này.
Tôi cũng xin chân thành cảm ơn sự quan tâm giúp đỡ của gia đình, bạn
bè và tập thể lớp Cao học K12G đã cổ vũ động viên tôi hoàn thành tốt luận
văn của mình.
Thái nguyên, ngày ...... tháng...... năm 2015
Học viên

Lê Hồng Quang

iii


MỤC LỤC
Trang

MỞ ĐẦU ....................................................................................................... 1
CHƯƠNG 1: LÝ THUYẾT CƠ SỞ............................................................ 2
1.1. Tổng quan về công nghệ mạng nơron tế bào........................................ 2
1.1.1. Giới thiệu công nghệ mạng nơron tế bào ................................... 2
1.1.2. Kiến trúc mạng nơ ron tế bào ..................................................... 5
1.1.3. Các định nghĩa về mạng nơ ron tế bào ......................................... 6
1.1.4. Các phương trình cơ bản của mạng nơron tế bào ......................... 8
1.1.5. Kiến trúc của máy tính mạng Nơron CNN-UM ........................... 13
1.1.6. Các dạng kiến trúc mạng CNN ................................................... 16
1.1.7. Các kết quả đạt được về công nghệ mạng Nơron tế bào hiện
nay........................................................................................................ 22
1.2. Công nghệ FPGA .............................................................................. 25
1.2.1. Giới thiệu công nghệ FPGA ........................................................ 25
1.2.2. Kiến trúc FPGA tổng quát. ......................................................... 26
1.2.3. Ứng dụng của công nghệ FPGA ................................................. 28
1.3. Phương trình đạo hàm riêng............................................................... 29
1.3.1. Tổng quan về phương trình đạo hàm riêng ................................. 29
1.3.2. Một số phương trình đạo hàm riêng tiêu biểu ............................. 30
CHƯƠNG 2................................................................................................. 32
PHƯƠNG PHÁP GIẢI HỆ PHƯƠNG TRÌNH NAVIER – STOKES
CHO DÒNG CHẢY KHÔNG NÉN HAI CHIỀU TRÊN CNN ................. 32
2.1. Tổng quan về Hệ phương trình Navier - Stokes cho dòng chảy
không nén hai chiều.................................................................................. 32
2.2. Mô hình hình học và các điều kiện của hệ phương trình Navier Stokes cho dòng chảy không nén hai chiều............................................... 33
2.3. Phân tích Hệ phương trình Navier - Stokes cho dòng chảy không
nén hai chiều theo thuật toán CNN. .......................................................... 35
iv


2.4. Thiết kế mẫu cho mạng CNN giải Hệ phương trình Navier Stokes cho dòng chảy không nén hai chiều............................................... 38

2.5. Thiết kế mạng CNN giải Hệ phương trình Navier - Stokes cho
dòng chảy không nén hai chiều................................................................. 39
2.5.1. Thiết kế phần cứng FPGA theo mẫu CNN.................................. 39
2.5.2. Lưu đồ thuật toán tính toán bằng CNN ....................................... 42
2.5.3. Phát triển chế tạo mạng CNN trên FPGA ................................... 44
CHƯƠNG 3: MÔ PHỎNG TÍNH TOÁN GIẢI HỆ PHƯƠNG
TRÌNH NAVIER – STOKES CHO DÒNG CHẢY KHÔNG NÉN
HAI CHIỀU TRÊN MATLAB .................................................................. 45
3.1. Các thông số và ràng buộc ................................................................. 45
3.2. Mô phỏng trên Matlab và kết quả tính toán ....................................... 45
3.2.1. Xác định thuật toán tính toán trên Matlab .................................. 45
3.2.2. Kết quả giá trị tính toán .............................................................. 47
3.3. Đánh giá kết quả tính toán ................................................................. 53
3.4. So sánh, đánh giá phương pháp giải hệ phương trình Navier - Stokes
cho dòng chảy không nén hai chiều sử dụng mạng Nơron với các phương
pháp khác.........................................................................................................53
KẾT LUẬN................................................................................................. 54

v


DANH MỤC CÁC HÌNH
Trang
Hình 1.1: Kiến trúc CNN chuẩn……………………….…......……………. 5
Hình 1.2: Một cell của CNN tuyến tính đơn giản……….……………........

6

Hình 1.3: Mô tả một hệ CNN 1D có 5 tế bào………………..…………….


9

Hình 1.4: Dạng đồ thị hàm ra của một tế bào……………………………... 10
Hình 1.5: Các dạng điều kiện của tế bào biên …………………………….. 12
Hình 1.6: Cấu trúc đầy đủ của tế bào CNN-UM……………..……..……... 13
Hình 1.7: Mô hình công nghệ của CNN-UM mở rộng……………..…..…. 13
Hình 1.8: CNN với r=1; r=2…………………………………..….………... 14
Hình 1.9: Một số kiến trúc CNN không chuẩn…………………....………. 17
Hình 1.10: Kiến trúc CNN hai chiều 3 lớp……………………….….…….

17

Hình 1.11: CNN không gian bất biến với 3 láng giềng………..…….…….. 20
Hình 1.12: Mô tả cấu trúc tương tác của CNN tổng quát…………………. 20
Hình 1.13: CNN hồi tiếp bằng 0: C(0,B,z)………………………………... 21
Hình 1.14: Mạch điện của CNN có hồi tiếp bằng 0 ……………...….……. 21
Hình 1.15: CNN đầu vào bằng 0, C(A,0,z)……………...….……………... 22
Hình 1.16: Mạch điện CNN đầu vào bằng 0:C(A,0,z)………...……….…. 22
Hình 1.17: Kiến trúc tổng thể FPGA……………………………..………..

27

Hình 1.18: Kiến trúc khối Logic của FPGA……………………..………...

27

Hình 2.1 : Mô hình dòng chảy bài toán…….……………………………… 33
Hình 2.2 : Hình ảnh dòng chảy trên sông .….……………………………..

34


Hình 2.3 : Hình ảnh hệ tọa độ mô phỏng trên sông .….…………………... 34
Hình 2.4 : Sơ đồ khối CNN cho hệ phương trình hai chiều…….…………. 40
Hình 2.5: Kiến trúc khối tính toán cho các ẩn hàm p, u, v….……………... 42

Hình 2.6: Lưu đồ thuật toán tính toán bằng CNN………...………….. 43
Hình 3.1: Mô tả các giá trị đầu vào ……...………………………………... 49
Hình 3.2: Mô tả các giá trị đầu ra ………………………………....………

vi

53


DANH MỤC CÁC BẢNG
Trang
Bảng 3.1: Các tham số vật lý cho bài toán thủy lực hai chiều........................45
Bảng 3.2. Giá trị ban đầu của các nghiệm pi,j(0), ui,j(0), vi,j(0)........................48
Bảng 3.3. Giá trị kết quả của các nghiệm pi,j(t+Δt), ui,j(t+Δt), vi,j(t+Δt)........52

vii


DANH MỤC CÁC CHỮ VIẾT TẮT
Viết tắt

Tiếng Anh

Tiếng Việt


CNN

Cellular Neural Network

Công nghệ mạng nơron tế bào

PDE

Partial Difference Equation

Phương trình đạo hàm riêng

FPGA

Field Programmable Logic Array Ma trận cổng logic lập trình được

VLSI

Very Large Scale Intergrated
VHSIC hardware description

Chip tích hợp mật độ cao
Ngôn ngữ đặc tả phần cứng dùng

language

lập trình cấu hình chip FPGA

VHDL


viii


MỞ ĐẦU
Trong nhiều bài toán khoa học các đại lượng biến thiên phức tạp theo nhiều
tham số không gian, thời gian và các điều kiện ràng buộc của các quy luật tự
nhiên, định luật vật lý, hóa học.... Để giải quyết các bài toán trên thường đưa đến
việc giải phương trình vi phân, thậm chí là phương trình vi phân đạo hàm riêng.
Phương trình vi phân có nhiều loại, có nhiều cách giải khác nhau như: phương
pháp giải tích, phương pháp phần tử hữu hạn, phương pháp sai phân, phương
pháp không lưới. Để giải trên máy tính PC hoặc các công cụ tính toán chuyên
dụng ta phải rời rạc hóa mô hình liên tục với các công thức sai phân. Các máy
tính PC hiện nay có thể giải được nhưng với tốc độ hạn chế, một số trường hợp
không đáp ứng được với ứng dụng trong thời gian thực.
Công nghệ mạng nơ ron tế bào CNN là mô hình tính toán song song vật lý với
các mảng các chip có mật độ lớn thực hiện tính toán đồng thời. Việc áp dụng công
nghệ mạng nơron tế bào vào giải phương trình đạo hàm riêng đạt được tốc độ tính
toán rất cao đáp ứng nhu cầu cho các bài toán trong thời gian thực.
Luận văn này thực hiện nghiên cứu về công nghệ CNN và ứng dụng vào giải Hệ
phương trình Navier - Stokes cho dòng chảy không nén hai chiều một dạng phương
trình đạo hàm riêng phức tạp trong cơ học thủy lực. Đề tài này tập trung nghiên cứu
các nội dung sau:
- Công nghệ CNN: Mô hình toán học, điện tử và nguyên tắc thiết kế mạng CNN
vào một bài toán cụ thể; một số ứng dụng cơ bản của CNN đã được triển khai
trên thế giới và tại Việt Nam.
- Hệ phương trình Navier - Stokes mô tả bài toán thủy lực hai chiều: Xây dựng
phương trình sai phân và mô hình kiến trúc mạng CNN cho bài toán.
- Mô phỏng tính toán theo thuật toán CNN trên Matlab, đánh giá kết quả.

1



CHƯƠNG 1: LÝ THUYẾT CƠ SỞ
1.1. Tổng quan về công nghệ mạng nơron tế bào
1.1.1. Giới thiệu công nghệ mạng nơron tế bào
Trước kia nhiều người cho rằng hoạt động của máy tính điện tử giống cơ chế
hoạt động của bộ não con người. Tuy nhiên hiện nay vấn đề đó đã trở nên rõ ràng là
nơron và các tế bào thần kinh có cơ chế hoạt động hoàn toàn khác. Đối với các máy
tính số hiện nay việc xử lý tín hiệu âm thanh, hình ảnh, hương vị, tín hiệu tiếp xúc là
những vấn đề phức tạp đòi hỏi độ tính toán lớn, ngược lại ở các sinh vật sống việc
xử lý các chuỗi tín hiệu này là rất đơn giản. Tương tự như vậy các tín hiệu trong tự
nhiên đều dưới dạng liên tục và các “ máy tính nơron” trong cơ thể sinh vật xử lý
các dòng tín hiệu liên tục này không phải bằng phương pháp số hoá.
Hệ nơron tính toán ở các sinh vật sống thường xử lý mảng tín hiệu tương
tự (analog) có tính liên tục về thời gian và biên độ. Cấu trúc gồm nhiều lớp mảng
2D nơron có các kết nối mạng cục bộ (local) là chủ yếu. Có nơron được tích hợp
với các tế bào cảm biến (sensing) và tế bào tác động (actuating). Các nơron hoạt
động với độ trễ thay đổi và có cả hoạt động dạng sóng kích hoạt. Các dữ liệu và
sự kiện là các mảng tín hiệu phụ thuộc cả không gian và thời gian.
Rõ ràng với các tính chất cơ bản hiện nêu trên máy tính số hiện nay khó có
khả năng tiếp cận đến khả năng xử lý của các sinh vật sống. Để có thể chế tạo
được hệ thống điện tử có khả năng tính toán tương tự như hệ nơron tính toán, đòi
hỏi ta phải thay đổi về kiến trúc, về thuật toán, về công nghệ và khă năng xử lý
song song của hang vạn hoặc hàng triệu bộ xử lý trên một chip. Mạng nơron tế
bào (viết tắt là CNN - Cellular Neural Network) là một giải pháp mở đầu cho loại
máy tính vạn năng xử lý mảng dữ liệu đầy tiềm năng này.
Phát minh ra mạng nơron tế bào của L. Chua và L. Yang đưa ra từ năm
1988 dựa trên tư tưởng chung là sử dụng một mảng đơn giản các tế bào kết nối
cục bộ để xây dựng một hệ thống xử lý tín hiệu analog. Đặc điểm mấu chốt của


2


mạng nơron là xử lý song song không đồng bộ, liên tục và ảnh hưởng toàn cục
của các phần từ mạng.
Khối mạch cơ bản của mạng CNN được gọi là tế bào (cell). Nó chứa các
phần tử mạch tuyến tính và phi tuyến. Tiêu biểu là các tụ tuyến tính, các điện trở
tuyến tính, các nguồn điều khiển tuyến tính, phi tuyến và các nguồn độc lập. Mỗi
một tế tào trong CNN chỉ kết nối tới các tế bào láng giềng. Các tế bào liền kề có
thể ảnh hưởng trực tiếp tới nhau. Các tế bào không có liên kết trực tiếp có thể tác
động đến các tế bào khác gián tiếp bởi sự tác động bởi sự làn truyền của mạng
CNN. Nhiều bài toán tính toán phức tạp được thực hiện trong hệ CNN như
những mô đun được định nghĩa trước. Khi xử lý những tín hiệu được đưa vào
những lưới không gian hình học 2 chiều hoặc 3 chiều những phần tử xử lý đơn
giản (cell). Những tương tác trực tiếp giữa các giá trị tín hiệu trong một phạm vi
lân cận nhất định của một cell tạo ra hệ CNN là một ma trận các vi xử lý động.
Các tương tác động diễn ra theo nguyên tắc: các phần tử xử lý (cell) chỉ tương tác
trực tiếp với các láng giếng nhất định.
Trong một vài mô hình, phương trình toán học cơ bản mô tả CNN tương
ứng với không gian rời rạc hoá của phương trình đạo hàm riêng phi tuyến. Sự
tương tác trong hệ thống giống như hiện tượng khuếch tán cơ học. Tương tác này
cũng có thể mô hình hoá như cơ chế lan truyền của phản ứng hoá học hay sự tiến
hoá sinh học.
Mô hình sinh học của bộ não liên quan đến đặc trưng của từng loài, và xu
hướng tiến hoá của hệ thống sinh học còn hình thành nên mô hình không gian thời gian trong não bộ để thực hiện những vai trò, chức năng cốt yếu trong nhận
thức thế giới thực.
Khái niệm về CNN dựa trên cơ sở một vài khía cạnh của nơ ron sinh học
và được mô phỏng bằng mạch tích hợp IC. Ví dụ trong bộ não phương tiện tương
tác được cung cấp bởi ma trận cực lớn các nơ ron đang tồn tại mà năng lượng của
nó nhận được từ việc đốt glucô và ôxy, trong khi với CNN phương tiện tương tác


3


được cung cấp bởi sự tương tác cục bộ của các tế bào (active cell) mà các khối
mạch của nó gồm các linh kiện điện tử phi tuyến với nguồn năng lượng một
chiều DC.
CNN có nhiều khả năng và triển vọng ứng dụng trong xử lý ảnh và nhận
dạng. Trong những ứng dụng như vậy CNN như một bộ lọc hai chiều xử lý song
song ảnh đầu vào và đưa ra ảnh đầu ra đã qua xử lý với thời gian liên tục mà có
ưu thế cho việc xử lý ảnh kích thước lớn với yêu cầu tốc độ đáp ứng trong thời
gian thực. Hơn nữa CNN có khả năng tương tác trong phạm vi nhỏ có thể dễ liên
kết với chíp tích hợp cao (VLSI).
Sự hoàn thiện chíp CNN đặc trưng bởi kích thước và chức năng một vài
loại có mẫu cố định là 256 tế bào (cell), một số loại khác có kích thước giới hạn
là 30 cells. Hiện nay có loại chíp có thể lập trình có kích thước 65356 cells. Khả
năng lập trình được và tốc độ cao làm cho CNN phù hợp tốt hơn với các xử lý
phi tuyến, nó cho phép nhận được và xử lý tín hiệu phi tuyến. Tuy vậy những ưu
thế thực sự của CNN là nó tương đương với chíp có mật độ tích hợp lớn tiêu thụ
nhiều năng lượng.
Tiềm năng ứng dụng CNN thực ra đã 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 hay những vấn đề xử lý
tín hiệu sinh học, phương trình vi phân đạo hàm riêng, mô hình phi tuyến và hệ
thống 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. Tương tự võng mạc, CNN gồm tập rất lớn
các phần tử xử lý tương tự giống nhau, những phần tử này có khả năng tương tác
cục bộ để xử lý. Trọng số tương tác trong không gian biến 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 tự do. Bộ xử lý
có thể xử lý dạng ảnh nhị phân hay đa cấp xám
Hệ CNN đang được nghiên cứu, ứng dụng hiện nay có nhiều khả năng, từ

việc khởi tạo tín hiệu tương tự ban đầu đến biểu diễn trạng thái không gian - thời
gian động. Thực tế, một số hệ thống cơ điện tử đã được thiết kế, xây dựng, sử dụng.

4


Sự phát triển ứng dụng dựa trên mạch CNN ban đầu đang được mở rộng, như 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.
Từ khi ra đời hệ thống CNN, công nghệ CNN đã bùng nổ cùng với những kiến
trúc máy tính tương tự, máy tính vạn năng (Universal Machine-UM) đã được
phát minh.
1.1.2. Kiến trúc mạng nơ ron tế bào
Kiến trúc mạng CNN hiện nay đã phát triển có nhiều mô hình đa dạng, tuỳ
thuộc mỗi bài toán xử lý mạng có thể là một chiều, hai chiều, ba chiều hình cầu,
lục giác…, đây là vấn đề khác nhau cơ bản giữa máy tính PC với máy tính CNNUM.
Để đơn giản, ta xét kiến trúc CNN chuẩn, một kiến trúc CNN chuẩn bao
gồm một mảng hình chữ nhật MxN các tế bào (cell) C(i,j) với toạ độ Đề các (i,j);
i = 1,…,M; j = 1,…,N (Hình 1.1).

Hình 1.1: Kiến trúc CNN chuẩn

Mỗi tế bào là một phần tử xử lý C (i,j) và liên kết chỉ ra tương tác giữa các
cell. 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 từng cặp là tuyến tính. Nói cách khác mảng là phi tuyến, nhưng
cấu trúc không gian của nó là tuyến tính.

5


vxij


vuij

Eij

I


C

vyij

Rx
Ry



Ixu(ij,kl)

Ixy(ij,kl)

Iyx

Hình 1.2. Một cell của CNN tuyến tính đơn giản

Một ví dụ điển hình của ô C(i,j) của CNN được chỉ ra trong hình 1.2. Các
thông số vxij, vyij vuij lần lượt là trạng thái, đầu ra, đầu vào của điện áp. Với điện
áp trạng thái vxij được giả sử rằng điều kiện ban đầu có độ lớn nhỏ hơn hay bằng
1. Điện áp vào vuij giả sử là hằng số với độ lớn nhỏ hơn hay bằng 1. Mỗi cell
C(i,j) chứa một điện áp nguồn độc lập Eij, một nguồn dòng độc lập I, 1 tụ tuyến

tính C, 2 trở tuyến tính Rx và Ry. Ixy(i,j;k,l) và Ixu(i,j;k,l) là nguồn dòng điều
khiển điện áp tuyến tính với đặc tính Ixy(i,j:k,l) = Aij,kl vykl và Ixu(i,j:k,l) = Bij,kl vukl
đối với mọi C(k,l) Nr(i,j). Phần tử phi tuyến duy nhất trong mỗi một cell là
nguồn dòng điều khiển điện áp ngược.

Ixy = (1/R)f(vxy). Cặp hệ số

Aij,kl và Bij,kl được gọi là hệ số hồi tiếp mẫu và hệ số điều khiển mẫu. Chúng ta
giả sử rằng mọi cell đều có cùng tham số và như vậy có cùng mẫu (biến không
gian). Tên gọi mẫu vô tính được sử dụng để nhấn mạnh đặc trưng này của biến.
Điều này có nghĩa là tập 2.(2r+1)2 +1 số thực Aij,kl và Bij,kl xác định hoàn toàn
hoạt động của hệ CNN hai chiều có độ lớn bất kỳ. Các mẫu có thể được diễn tả
bằng dạng thu gọn bởi các bảng hoặc ma trận.
1.1.3. Các định nghĩa về mạng nơ ron tế bào
Khi phát triển lý thuyết về mạng nơ ron tế bào, các nhà nghiên cứu đã đưa
ra một số định nghĩa có tính hình thức về kiến trúc mạng:
Định nghĩa 1: Hệ mạng nơ ron tế bào - CNN là:

6


a) Ma trận 2-, 3- hoặc n- chiều của những phần tử động giống nhau (gọi là tế bào
- cell)
b) Mỗi tế bào có hai thuộc tính:
- Chỉ tương tác trong vùng có bán kính là r
- Mọi biến trạng thái là tín hiệu có giá trị liên tục
Định nghĩa 2: CNN là mạch phi tuyến động kích thước lớn được tạo bởi cặp các
phần tử liên kết với nhau, phân bố đều trong không gian mà mỗi phần tử là một
mạch tích hợp gọi là cell. Mạng này có thể có cấu trúc hình chữ nhật, lục giác
đều, cầu v.v... Hệ CNN cấu trúc MxN được định nghĩa một cách toán học theo 4

đặc tả sau:
1) CNN là phần tử động học nghĩa là trạng thái điện áp của tế bào thay đổi theo
thời gian tùy theo tương tác giữa nó và các láng giềng.
2) Luật tiếp hợp trong CNN biểu diễn sự tương tác cục bộ trong từng cặp lân cận
trong các tế bào láng giềng, mỗi tế bào có: Điều kiện ban đầu; Điều kiện biên.
Chú ý:
- Giá trị của biến không gian thì luôn luôn rời rạc và biến thời gian T có
thể là liên tục hay rời rạc.
- Tương tác giữa các cell thì luôn luôn xảy ra thông qua mẫu vô tính mà có
thể là hàm phi tuyến của trạng thái x, đầu ra y, và đầu vào u của mỗi cell C(i,j)
trong lân cận Nr có bán kính r;
Nr(i,j) = {C(k,l)|max{|k-i|,|l-j|}  r, 1 k  M, 1  l  M}
Mẫu vô tính có ý nghĩa hình học mà chúng ta có thể sử dụng để mô tả hình dạng
hình học và đưa ra phương pháp thiết kế đơn giản.

7


1.1.4. Các phương trình cơ bản của mạng nơron tế bào
Một lớp MxN mạng nơron tê bào chuẩn được định nghĩa bởi một mảng
hình chữ nhật MxN các cell C(i,j) xác định tại (i,j); i = 1,…M; j = 1,…N. Mỗi
cell C(i,j) được định nghĩa toán học bởi:
Phương trình trạng thái:
(1.1)
Trong đó:
xi,j(t) là biến trạng thái của tế bào,
Nr là tập các điểm lân cận có tương tác với điểm (i,j) chính là các điểm
thuộc mặt cầu tác dụng Sr.
Hàm ykl(t) là hàm mô tả điện áp ra;
ukl(t) là hàm mô tả điện áp vào.

Mẫu A(i,j;k,l) gọi là mẫu hồi tiếp của tế bào C(i,j); mẫu B(i,j;k,l) gọi là mẫu điều
khiển của tế bào C(i,j), nếu chọn dạng mẫu 3x3 ta có:

Các mẫu A, B nói lên quan hệ động học của mỗi tế bào với các láng giềng
của nó trong hệ. Hình 1.5 mô tả một hệ CNN 1D có 5 tế bào (có 2 tế bào biên
[41] ) có mẫu A = [1 2 -1]; B=0; z=0:

8


Hình 1.3: Mô tả một hệ CNN 1D có 5 tế bào
Định nghĩa 1.1: Mẫu Aij,kl có tính đối xứng (hay còn gọi là mẫu vô tính) nếu
thỏamãn: Aij,kl =Akl,ij, với 1< i < M; 1< j < N; kl là chỉ số các láng giềng của C(i,j).
Định nghĩa 1.2: Trong CNN, phép nhân chập (convolution) được xác định:
(1.2)
trong đó r là số nguyên dương theo Định nghĩa 3 và A là tập mẫu có dạng ma
trận tương ứng, ak,l là phần tử của A; y là giá trị của một hàm trong CNN tại vị
trí tế bào C(i,j). Giả sử r=1 ta có:

Đây là phép toán có độ phức tạp cao nhưng rất hay dùng trong các tính toán
của CNN thể hiện cho các liên kết cục bộ giữa tế bào hiện hành và các láng giềng.
Với định nghĩa toán tử nhân chập trên thì phương trình (1.3) có thể viết đơn giản:
(1.3)
Các trọng số liên kết A, B thể hiện các xử lý, tương tác của mỗi tế bào
trong các bài toán ứng dụng cụ thể. Ví dụ như trong xử lý ảnh, mỗi giá trị của
một điểm ảnh khi xử lý là quá trình tính toán, tương tác với các điểm lân cận
9


thông qua các trọng số liên kết này để thay đổi các tham số về điểm ảnh ban đầu

tùy theo yêu cầu của bài toán xử lý (làm mờ, làm rõ, xóa nhiễu...). Trong ứng
dụng giải phương trình sai phân, điện áp trạng thái của mỗi điểm trong lưới sai
phân được tính toán thông qua các giá trị, trọng số liên kết với điểm lân cận và
giá trị trạng thái trước đó của tế bào C(i,j). Giá trị trạng thái mới của tế bào C(i,j)
chính là nghiệm của phương trình vi phân.
* Phương trình đầu ra:

1
1
yij  f (xij )  | xij 1|  | xij -1|
2
2

(1.4)

Đây được gọi là chuẩn phi tuyến

Hình 1.4 : Dạng đồ thị hàm ra của một tế bào

hàm f(xij) tuyến tính có giá trị trong khoảng xác định [-1,1]

Giá trị hàm ra yij được đưa vào mẫu hồi tiếp A để tính toán trạng thái của
tế bào C(i,j) cho bước thời gian tiếp theo, ngoài ra giá trị này còn gửi cho tế bào
lân cận như thông tin lan truyền. Như vậy, khi hoạt động hệ CNN vừa xử lý tín
hiệu tại chỗ (local) bằng việc thay đổi trạng thái của tế bào, vừa lan truyền thông
tin qua các lân cận đến toán bộ mạng CNN (global). Mô hình toán học này thể
hiện tính “nơ ron” của CNN như các nơ ron thần kinh của cơ thể sống vừa trực

10



tiếp thực hiện các xử lý tại chỗ vừa truyền thông tin lên não bộ để ra các quyết
định xử lý toàn cục.
Thực ra, tùy theo kiến trúc CNN cũng có trường hợp không có sự lan
truyền tín hiệu trong toàn mạng CNN, ta gọi là CNN không ghép cặp. Có trường
hợp hệ CNN không có tín hiệu vào (mẫu B=0) mà chỉ thay đổi trạng thái ban đầu
với các tương tác nội tại trong CNN.
* Trạng thái ban đầu:
xij(0); i=1,…, M; j=1,…, N
* Đầu vào: Trước khi xử lý, ta phải thiết lập giá trị trạng thái ban đầu cho mỗi tế
bào.
Giá trị này được mô tả bằng phương trình đầu vào:
vuij = Eij

1  i  M; 1  j  N

* Các ràng buộc: Để đảm bảo cho hệ CNN làm việc ổn định cần có một số điều
kiện ràng buộc, những điều kiện nay đã được nghiên cứu chứng minh về mặt
toán học. Ở đây chỉ đưa ra điều kiện ràng buộc về điện áp trạng thái ban đầu và
điện áp vào. Dựa trên cơ sở này, khi thiết kế mạch tế bào người ta chọn các giá
trị tụ điện C và điện trở Rx, Ry cho thích hợp.
|vxij(0)|  1

1  i  M; 1  j  N

|vuij(0)|  1

1  i  M; 1  j  N

* Các tham số giả định: Giả thiết này thể hiện tính đối xứng và được gọi là thuộc

tính “vô tính” của tế bào, các tế bào có thể hoán đổi vị trí cho nhau nhưng không
ảnh hưởng tới quá trình tính toán, nghĩa là các tế bào có kiến trúc giống hệt nhau
giúp cho việc chế tạo dễ dàng, đơn giản:
A(i,j;k,l) = A(k,l;i,j) 1  i  M; 1  j  N
C > 0; Rx > 0
trong đó C, Rx là điện dung và điện trở tuyến tính trong mạch điện của tế bào.
* Điều kiện của tế bào biên: Các bài toán xử lý trên CNN hầu hết là cho mảng dữ
liệu (xử lý ảnh số, giải phương trình đạo hàm riêng...). Ta cần quan tâm đến các

11


giá trị biên trong mảng tế bào. Với CNN, có các kiểu điều kiện biên Dirichlet,
Neumann, Ring. Xét các dạng điều kiện biên trên một hàng (theo chiều cột chúng
ta cũng có các định nghĩa tương tự):
- Điều kiện biên cố định (Fixed-Dirichlet), trong Hình 1.5.a

trong một hàng thì v0 là điện thế của tế bào bên trái nhất vM+1là điện thế của tế
bào bên phải nhất. Hai dãy tế bào bên phải và bên trái có điện thế cố định E1, và
E2 (gọi là điện thế đất có thể chọn E1 = E2 = 0).
- Điều kiện biên biến thiên (Zero Flux-Neumann), trong Hình 1.5.b

ta chọn giá trị biên bằng giá trị điểm kề với nó trong cùng hàng, về mặt điện thế
ta có thể chọn với giá trị bất kỳ cho v1, vM.
- Điều kiện biên tuần hoàn (Periodic-Ring), trong Hình 1.5.c

điều kiện biên này ta thấy giá trị điện thế của tế bào bên trái nhất bằng điện thế
của tế bào bên phải nhất.
E1


x0

X1

.

.

.

xM

V1
V1

x0

x0

E2

(a)

VM

(b)

V1

(c)


VM
x1

.

.

.

xM

V1
VM

xM+1

xM+1
VM

x1

.

.

.

xM


xM+1

Hình 1.5: Các dạng điều kiện của tế bào biên

12


1.1.5. Kiến trúc của máy tính mạng Nơron CNN-UM
Máy tính vạn năng CNN-UM có thể được coi là mảng các tế bào xử lý phi
tuyến đa chiều được liên kết cục bộ. CNN-UM có khả năng xử lý tín hiệu hỗn
hợp tương tự số do vậy có tên Analogic (Analog-logic) computer. Khác với các
máy tính lai (hybrid), ở máy tính CNN không có các bộ biến đổi A/D và D/A và
cũng không có khái niệm biểu diễn các giá trị tương tự bằng số. Tất cả tín hiệu và
phép tính cơ bản đều là tương tự hoặc logic.

Hình 1.6: Cấu trúc đầy đủ của tế bào CNN-UM
Mô hình công nghệ của CNN-UM mở rộng được mô tả dưới dạng mạng có
liên kết và một tế bào với giao diện liên kết như trong Hình 1.7.

Hình 1.7: Mô hình công nghệ của CNN-UM mở rộng
Trong đó:
OPT (Optical Sensor): thu nhận tín hiệu đầu vào trực tiếp cho tế bào
mà không cần bộ chuyển đổi A/D.
13


LAM (Local Analog Memory) và LLM (Local Logic Memory): lưu trữ các
giá trị analog và logic của tế bào.
LLU (Local Logic Unit) và LAOU (Local Analog Output Unit): thực hiện
các phép tính toán logic và tương tự cho mỗi tế bào của mình, các kết quả của

mỗi tế bào được lưu trữ trong các bộ nhớ cục bộ.
LCCU (Local Communication And Control Unit): điều khiển và trao đổi
thông tin giữa các cell lân cận và tới khối lập trình toàn cục (GAPU).
GAPU (Global Analogic Programming Unit): Có các thanh ghi và khối
điều khiển toàn cục.
Cấu trúc của máy CNN-UM được mô tả trong hình sau:

Hình 1.8: CNN với r=1; r=2.
Mạng nơ ron tế bào gồm các tế bào có cấu trúc đồng nhất. Lõi của các tế
bào này thực hiện chức năng của hệ động lực chuẩn tế bào CNN như mô tả trong
hình 2 (Analog CNN nucleus). Để mạng có thể hoạt động và có khả năng lập
trình thay đổi các trọng liên kết, ở mỗi tế bào đều có bộ nhớ, các thanh ghi, các
khối vào ra và truyền thông cục bộ. Ngoài ra toàn mạng còn có khối lập trình
toàn cục GAPU (Global Analogic Program Unit) phục vụ cho điều hành toàn
mạng.
APR (Analog Programming instruction Register): lưu trữ các trọng số của
tế bào mạng CNN. Trong trường hợp r = 1 tổng số trọng số lưu trữ là 19 số thực.

14


LPR (Logic Program instruction Register): chứa các lệnh logic cần thực
hiện cho các tế bào.
SCR (Switch Configution Register): Chứa các thông số khởi động và các
tham số cho các chức năng hoạt động của các tế bào.
GACU (Global Analogic Control Unit): Lưu các lệnh tuần tự của chương
trình chính và thực hiện các chức năng điều khiển toàn cục khác.
Khối đầu ra tương tự cục bộ (LAOU) là thiết bị nhiều đầu vào, một đầu
ra đơn giản. Hàm cho các giá trị tín hiệu liên tục của nó giống khối logic cục
bộ (LLU) cho các giá trị logic. Nó phối hợp các giá trị cục bộ tương tự trong

đầu ra đơn giản.
Khối truyền thông và điều khiển cục bộ (LCCU) nhận chương trình thủ
tục trong mỗi cell từ khối chương trình tương tự toàn cục (GAPU) cụ thể là:
- Các giá trị mẫu tương tự (A, B, z).
- Hàm mã hoá logic cho khối logic cục bộ.
- Cấu hình chuyển mạch của các phần tín hiệu cell đặc biệt và một số đặt
trong các khối hàm (ví dụ f(.), LAOU, GW(.)).
Nghĩa là tại cùng một thời điểm chúng ta cần các thanh ghi trong GAPU
cho 3 loại thông tin, cụ thể là:
- Thanh ghi chương trình analog (APR) cho các mẫu CNN.
- Thanh ghi chương trình logic (LPR) cho các hàm LLU.
- Thanh ghi cấu hình chuyển mạch (SCR).
Một thuật toán chạy trong CNN-UM có thể được tuần tự thực hiện qua các
lệnh analog và logic. Mức độ kết quả trung gian có thể được tổ hợp và lưu trữ
cục bộ. Các phép tính analog được định nghĩa bởi các trọng liên kết tuyến tính
hoặc phi tuyến. Đầu ra có thể được định nghĩa cả trong trạng thái xây dựng hoặc
không xây dựng của mạng. Các phép tính logic (AND, OR, NOT…) và số học
(cộng, trừ…) có thể được thực hiện trong mỗi tế bào. Dữ liệu có thể được chuyển
đổi giữa các bộ nhớ LAM và LLM.

15


Khối điều khiển tương tự toàn cục lưu trữ dãy các lệnh. Mỗi lệnh chứa
mã toán tử (mẫu hoặc logic), mã lựa chọn cho các tham số của toán tử (mã cho
19 giá trị: A, B, z; hoặc mã của hàm logic cục bộ) và cấu hình chuyển mạch.
Các tham số được chứa trong các thanh ghi (APR, LPR, SCR).
1.1.6. Các dạng kiến trúc mạng CNN
* Phân loại theo hình trạng
Về mặt hình trạng mạch (topology) chúng ta có thể phân loại CNN thành

các mô hình khác nhau. Ngoài kiến trúc chuẩn như đã giới thiệu trên, sau đây
chúng ta xét một số mô hình tiêu biểu:
+ CNN không đồng nhất: (NUP – CNN) có hai loại tế bào được mô tả bởi ô
trắng và đen trong Hình 1.9.a. Cấu trúc NUP-CNN có chứa hơn một kiểu tế bào
trên lưới trong khi các tế bào tương tác với nhau là biến không gian.
+ CNN đa lân cận (MNS-CNN: Multiple Neighborhood Size – CNN): CNN có
hai kiểu lân cận như Hình 1.9.b. Mọi chip trong mạch có cấu tạo phần cứng
giống nhau nhưng chia làm hai lớp lưới (P, S). Lưới P có các lân cận

r=1; lưới

S là lớp trên hoặc dưới của lưới P có r=3. Kiến trúc MNS-CNN có chứa những
lớp có những lưới và lân cận khác nhau, chúng mô phỏng theo hệ thống tế bào tự
nhiên. Trường hợp đặc biệt của MNS-CNN với hai kiểu lân cận chỉ chứa một
chip trong lớp S, và mọi chíp khác đều kết nối tới con chíp này. Như đã nói CNN
có cấu tạo rất linh hoạt tùy theo yêu cầu giải quyết xử lý của mỗi bài toán, do vậy
người ta cũng đưa ra mô hình MSN-CNN. Loại MSN-CNN không phổ biến chỉ
sử dụng trong một số trường hợp đặc biệt cho những bài toán thích hợp.

16


(b)

(a)

Hình 1.9: Một số kiến trúc CNN không chuẩn
(a) Không đồng nhất; (b) Đa lân cận
+ Kiến trúc CNN đa lớp: Như đã xét ở phần trước, một lớp CNN đơn, mỗi tế bào
chỉ có một biến trạng thái. Với bài toán có nhiều biến trạng thái (như giải hệ

phương trình vi phân có nhiều biến) người ta cần một hệ có nhiều lớp gọi là cấu
trúc đa lớp. Trong cấu trúc CNN đa lớp có nhiều biến trạng thái cho mỗi đầu vào.
Khái niệm đa lớp nhấn mạnh đến sự tương tác giữa các biến trong một lớp, giữa
các lớp. Có thể hình dung một hệ CNN đa lớp là kết hợp của nhiều lớp đơn xếp
chồng lên nhau, ngoài tương tác giữa các tế bào trong một lớp còn có tương tác
giữa các lớp.
Khi có nhiều biến trạng thái ta có thể chọn nhiều kiểu tương tác đồng thời
cho mỗi biến trạng thái khác nhau. Thuộc tính này làm cho CNN cực kỳ linh hoạt
và cho phép chúng ta giải quyết những bài toán xử lý phức tạp.
23

22

21

Hình 1.10: Kiến trúc CNN hai chiều 3 lớp
17


×