Các bài toán tính toán khoa học và công nghệ mạng nơ ron tế bào Trong sự phát triển của nhiều lĩnh vực khoa học, công nghệ hiện nay, việc tính toán phức tạp như giải các phương trình đạ
Trang 1Chương 1 Mở đầu
1.1 Các bài toán tính toán khoa học và công nghệ mạng nơ ron tế bào
Trong sự phát triển của nhiều lĩnh vực khoa học, công nghệ hiện nay, việc tính toán phức tạp như giải các phương trình đại số, phương trình vi phân, phương trình đạo hàm riêng, mô phỏng cho các hệ thống, cơ sở dữ liệu lớn đang đặt ra những nhu cầu về những giải pháp tính toán mới Các nhà khoa học cần có những công cụ tính toán mạnh, có kích thước số lớn và tốc độ cao để có thể đáp ứng yêu cầu tính toán Với các bài toán trong kỹ thuật có những xử lý với tín hiệu liên tục, tương tác trong thời gian thực, trong các hệ điều khiển, kết quả tính toán là tín hiệu đưa ra cho các hệ thứ cấp chấp hành thì quá trình tính toán này cần sử dụng những công cụ tính toán sao cho kịp thời với các tiến trình của giới tự nhiên
Hiện nay tốc độ của máy tính PC đã được cải thiện đáng kể Mặt khác, ý tưởng xây dựng một mạng toàn cầu (global) liên kết nhiều máy tính cùng tham gia tính toán đã được đề xuất và đang triển khai thực hiện tại nhiều nước trên thế giới cũng như tại Việt Nam để có thể giải quyết những bài toán khoa học lớn có quy mô rộng, quá trình tính toán liên tục, lâu dài xử lý cho những kho dữ liệu lớn phức tạp
Trang 2Tuy vậy, với những bài toán quy mô nhỏ nhưng cũng cần tính toán nhiều, tốc
độ 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
Trang 3vụ các bài toán ứng dụng trong nhiều lĩnh vực Đặc điểm quan trọng của công nghệ CNN là kích thước mạng nhỏ gọn, không cần sự điều khiển kết nối, trao đổi dữ liệu phức tạp như trong mạng máy tính thông thường
Hàng năm các hội thảo về CNN được tổ chức để trao đổi chia xẻ những thành tựu trong nghiên cứu và phát triển ứng dụng công nghệ này Hội thảo về CNN2008 (từ 14-16/07/2008 tại Tây Ban Nha) đã có gần 250 báo cáo được trình bày; Hội thảo CNNA2010 được tổ chức tại đại học Berkeley (California-US) từ ngày 3-5 tháng 02/2010 có khoảng trên 100 báo cáo Trong đó, vấn đề nổi trội là ứng dụng vật liệu mới memristor để xây dựng bộ nhớ trong các hệ CNN; các bài toán ứng dụng xử lý song song trong việc tạo khả năng “nhìn” cho các rô bốt, hệ điều khiển tự động; các hệ CNN đa lõi, đa lớp cũng được giới thiệu nhiều Hiện nay các trung tâm nghiên cứu về CNN có ở châu Âu (Hungary, Tây ban nha, Italia, Anh, Thổ Nhĩ kỳ), Mỹ Tại châu Á đã có một số nước tham gia nghiên cứu như Trung Quốc, Hàn Quốc, Nhật Bản Tại Việt Nam, hiện nay mới chỉ có một nhóm nghiên cứu tại Viện Công nghệ thông tin - Viện KH&CN Việt Nam, và một số trường đang triển khai đào tạo và nghiên cứu như ĐHBK Hà Nội, ĐHQG Hà Nội, đại học Thái Nguyên Trong các Hội thảo, tạp chí trong nước mới có một số ít bài nói về công nghệ CNN [3],[4]
1.2 Những nội dung nghiên cứu trong luận án
Trong lĩnh vực tính toán khoa học đang cần giải quyết rất nhiều bài toán liên quan đến giải phương trình đạo hàm riêng xuất hiện trong thực tế Một số bài toán
về môi trường như sự ô nhiễm khí quyển, ô nhiễm nguồn nước trong các dòng sông,
hồ chứa , các hiện tượng biến động khí quyển xảy ra trong không gian vũ trụ, trong các đại dương, sông hồ như giông, bão, sóng thần, động đất là những bài toán được nhiều người quan tâm nghiên cứu Nhất là trong tình hình hiện nay, sự ấm lên của trái đất, hiệu ứng nhà kính gây ra những thảm hoạ thiên nhiên rất nghiêm trọng đối với môi trường và sự sống, chúng ta cần có những tính toán dự báo chính xác để phòng tránh, hạn chế thiệt hại do thiên tai Xuất phát từ thực tế đó, cùng với việc nghiên cứu công nghệ CNN, Luận án thực hiện nghiên cứu áp dụng giải một số
Trang 4PDE 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
Trang 5Để đạt được mục đích nghiên cứu, luận án đã sử dụng các phương pháp: Phương pháp luận nghiên cứu về công nghệ CNN (mô hình toán học, lý thuyết về kiến trúc mạch điện tử, kiến trúc phần cứng CNN, điều kiện ổn định, ngôn ngữ đặc
tả phần cứng để cấu hình mạng, các thuật toán, công cụ hỗ trợ); phương pháp sai phân giải các phương trình đạo hàm riêng (lược đồ sai phân, điều kiện tồn tại duy nhất nghiệm, sự ổn định, độ chính xác của nghiệm); phương pháp thiết kế, sử dụng ngôn ngữ mô tả phần cứng VHDL, Verilog lập trình cấu hình và lập trình tính toán trên chip FPGA thông qua giao diện của máy PC
1.4 Ý nghĩa khoa học và thực tiễn
Về mặt khoa học luận án đã đề xuất một phương pháp mới dựa trên công nghệ tính toán song song CNN để giải một số phương trình PDE cụ thể, qua đó phát triển tập mẫu trong thư viện mẫu CNN phục vụ cho việc giải PDE
Về mặt thực tiễn: từ những nghiên cứu ban đầu này hình thành các cơ sở lý luận, các kỹ năng, kinh nghiệm triển khai áp dụng công cụ CNN vào giải PDE; góp phần giới thiệu công nghệ CNN tại Việt Nam, kết quả nghiên cứu là những tài liệu phục vụ giảng dạy, học tập nghiên cứu tại các cơ sở đào tạo, tạo cơ hội trao đổi học hỏi với các nhà nghiên cứu trong nước và thế giới
Trang 6Chươ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
Năm 1993, Tamás Roska và Leon Chua lần đầu tiên giới thiệu kiến trúc của máy tính mạng nơ ron tế bào (CNN-UM) [33] với những chip analog lập trình theo thuật toán Các nhà nghiên cứu thuộc Office of Naval Research, National Science
Trang 7Foundation, University of California (US) và Hungarian Academy of Sciences (Hungary) đã thiết kế, chế tạo ra nền tảng phần cứng (plaform) để thực thi ý tưởng
về kiến trúc chip CNN của Roska và Chua
Chip CNN analog được chế tạo lần đầu tiên vào năm 1993 có tên là CNN Universal Processor trên nguyên tắc xử lý đa lớp cho phép tính toán với dữ liệu dạng ma trận Chip này được thiết kế có kiến trúc 8x8 tế bào, với giao diện làm việc, bộ nhớ analog, chuyển mạch lô gic và chương trình phần mềm Từ đó khẳng định tính khả thi và tiềm năng của công nghệ CNN Đến năm 2000 có tới sáu nhà sản xuất tham gia chế tạo chip analog dựa trên nguyên tắc đưa ra năm 1993 Hãng AnaForcus phát triển kết quả nghiên cứu của đại học Seville bắt đầu thiết kế mô hình cho chip ACE để đưa vào sản xuất hàng loạt Chip ACE đầu tiên được sản xuất
có kích thước 20x20 phục vụ cho bài toán xử lý ảnh nhị phân sau đó phát triển chip
có kích thước 48x48 xử lý cho ảnh đa mức xám Trong khi phát triển về kích thước thì tính năng của chip cũng được cải thiện về tốc độ, chức năng xử lý, thiết bị vào
ra Thiết bị vào ra với các cảm biến nhiều đầu cho phép xử lý tương tác giữa “thu
dữ liệu vào”, “xử lý” và “đưa kết quả ra” trong môi trường thời gian thực Tiếp đó AnaForcus đã sản xuất chip CASE có ba lớp 32x32 tế bào đưa vào thiết bị thị giác nhân tạo Eye - RIS có phần cứng, phần mềm và những công cụ trợ giúp tích hợp vào chung trong một hệ thống xử lý Vào năm 2003, AnaLogic Computer phát triển
bo mạch thị giác PCI-X tích hợp với chíp ACE4k, chip xử lý tín hiệu số DSP (Digital Signal Processing) của hãng Texas Intrument và thiết bị thu ảnh nhanh (high-speed-frame-grabber) vào một hệ thống cho phép giao tiếp với máy PC để mở rộng khả năng ứng dụng và tính năng của công nghệ CNN analog Năm 2006, hãng AnaLogic Computer tiếp tục phát triển thiết bị camera thông minh tốc độ cao (Bi-I Ultra High Speed Smart Camera) và dự định phát triển thiết bị này thành sản phẩm 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à
Trang 8nghiê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 Valladolid (Tây Ban Nha) đã thiết kế mô hình CNN 3D rời rạc theo thời gian, tính toán cho phương trình truyền nhiệt trong không gian ba chiều và đã chế tạo chip trên công nghệ FPGA Virtex 2 cho bài toán và cài đặt tính toán bằng ngôn ngữ Handel-C và VHDL đạt tốc độ nhanh hơn máy PC Pentium 4 tốc độ 3 GHz tới 34 lần Các tác giả cũng khẳng định nếu dùng chíp Virtex 5 thì tốc độ có thể tăng lên
Trang 9tới 160 - 200 lần [24]
- Các nhà nghiên cứu Z Voroshazi, A Kiss, Z Nagy và P Szolgay của đại học Pannonia, đại học Pázmány Péter Catholic và phòng thí nghiệm máy tính sóng, viện nghiên cứu Tự động hóa Budapest (Hungary) đã thiết kế chế tạo mô hình CNN
mở rộng có khối GAPU nhúng trong các chip FPGA RC203 và RC2000 của hãng Celoxica kết hợp giữa tính toán phân bố tốc độ cao và lập trình song song của hai khối ACE4k và ACE16k giải hệ phương trình hypebolic mô tả dòng chảy động phi tuyến đạt được tốc độ nhanh hơn 66 lần so với chip Intel Core2Duo T7200 tốc độ 2 GHz [38]
- Các giáo sư F Gollas, R Tetzlaff tại đại học Wolfgang Dresden (Đức) đã
áp dụng hệ CNN phản ứng- khuyếch tán (Reaction Difusion- CNN) phân tích mô tả xấp xỉ tín hiệu điện não đồ của các bệnh nhân động kinh [19]
- Giáo sư Angela Slalova thuộc viện Toán - Tin (Institute of Mathematics and Informatics) Bulgary đã áp dụng mô hình CNN vào giải phương trình vi phân Black-Schole mô tả sự biến thiên giá cả theo các điều kiện thị trường thực tế xây dựng thuật toán giải bài toán đơn, và ý tưởng tiếp theo sẽ phát triển với bài toán đa hình cho tổng thể các mặt hàng [35]
Các nhà nghiên cứu F Sargeni, V Bonaiuto của đại học Rome (Italia) đã thực hiện thiết kế mạch CNN giải phương trình PDE truyền tương tác với các điều kiện biên khác nhau và các phương pháp sai phân khác nhau Vấn đề này được trình
bày trong cuốn” “Programmable CNN Analogue Chip for RD-PDE Multi-Method
Simulations” do NXB Kluwer Academic (USA) xuất bản năm 2005 [44]
Trong bài báo "Emulated Digital CNN-UM Implementation of a 3
Dimens-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
Trang 10phá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 Equations” về ứng dụng CNN đa lớp mô hình hóa phương trình động học của phản
ứng hạt nhân Các tác giả đưa ra mô hình kiến trúc mạch CNN thực nghiệm tính toán và so sánh kết quả với phương pháp giải số mô phỏng trên Matlab cho thấy có kết quả tốt hơn về tương tác không gian-thời gian và rất phù hợp với tính toán cho các phản ứng hạt nhân Kết quả tính toán theo thời gian thực giúp cho việc điều khiển diễn biến của phản ứng có tính khả thi áp dụng vào nghiên cứu các phản ứng thực nghiệm cỡ nhỏ trong tàu vũ trụ [20]
Trang 112.1.4 Những xu hướng phát triển của CNN
Một số nhà sản xuất theo hướng chế tạo theo khách hàng như nhóm nghiên cứu tại đại học Studi Catania (Italia) chế tạo chip CNN điều khiển rô bốt sáu chân Các nhà nghiên cứu tại đại học Quốc gia Chiao Tung (Trung Quốc) đang thiết kế chip RM-CNN cho bài toán mẫu học và nhận dạng; các nhà khoa học tại viện Công nghệ Quốc gia Lien Ho (Trung Quốc) đang phát triển chip MMCNN để nghiên cứu tính động học (dynamic) của CNN vào các ứng dụng tính toán thời gian thực
Đến nay, có nhiều bài toán ứng dụng cần đến công nghệ CNN, là động lực thúc đẩy làm cho kiến trúc của CNN phát triển cả về mạch phần cứng cũng như ngôn ngữ sử dụng Do kiến trúc động và linh hoạt của CNN, với mỗi bài toán ứng dụng chúng ta có thể thiết kế khối xử lý số học, và lô gic có đặc thù riêng dựa trên nguyên lý cấu tạo nền tảng của CNN Với những công nghệ mới cho phép tái cấu hình phần cứng (reconfiguration) như FPGA, rất nhiều mô hình CNN đã được thiết
kế chế tạo và triển khai chứng minh tính ổn định, ưu thế tính toán của CNN Với một chip CNN trên thị trường hiện nay (ví dụ ACE16k có kich thước 128x128 tế bào) có thể tương đương với một hệ tính toán song song của nhiều máy PC tốc độ cao tiêu thụ nhiều năng lượng Hình 2.1 là loại camera CNN có tên là Bi-i V301F mới nhất hiện nay với nhiều ứng dụng như theo dõi đa mục tiêu, giám sát an ninh, thị giác máy
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
Trang 12trì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 nhiễu, ảnh hưởng của các thông số vật lý của mạch điện, giá trị xử lý tín hiệu là analog dẫn đến độ chính xác của kết quả xử lý trên CNN không cao Một số trạng thái làm việc nằm ở vùng không ổn định trên đường đặc tuyến của mạch, thậm chí
ở vùng nhiễu loạn (chaos), đây là vấn đề còn đang được nghiên cứu giải quyết trong
lý thuyết ổn định của CNN và trong các bài toán ứng dụng cụ thể Kết quả đưa ra các thiết bị ra (màn hình máy tính, thiết bị lưu trữ ) phải qua chuyển đổi cũng gây nên sai số thứ cấp Một số dạng dữ liệu không thể xử lý, hoặc xử lý không hiệu quả
về kinh tế, kỹ thuật bằng công nghệ
Như vậy trên thế giới, việc nghiên cứu ứng dụng CNN vào giải phương trình đạo hàm riêng đã được phát triển mạnh mẽ với nhiều dạng bài toán khẳng định tính
khả thi của công nghệ CNN, (website http://www.analogic-computers.com)
Trang 13Tại Việt Nam việc nghiên cứu ứng dụng CNN vào giải PDE chưa nhiều mới chỉ có một vài bài báo có tính chất giới thiệu khái quát và ứng dụng giải một vài phương trình của CNN, chưa đi sâu vào xây dựng thiết kế mạch cho một bài toán tính toán cụ thể Để hòa nhập cùng với sự phát triển chung của thế giới trong lĩnh vực, việc nghiên cứu CNN nói chung và nghiên cứu ứng dụng vào giải PDE tại Việt Nam là cần thiết và đang là thời điểm thích hợp để triển khai, khai thác tiềm năng của một công cụ tính toán mạnh cho các bài toán tính toán khoa học kỹ thuật
2.2 Khái niệm cơ bản về công nghệ mạng nơ ron tế bào
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 Ban đầu, CNN chủ yếu được ứng dụng trong xử lý ảnh và nhận dạng có dữ liệu xử lý dạng ma trận tương ứng với kiến trúc mảng tế bào của mạng CNN, các thao tác xử lý trên mỗi điểm ảnh cũng đơn giản phần lớn là các phép xử lý analog và các phép toán số học lô gic Dần dần, với khả năng lập trình được và tốc độ xử lý cao cho phép CNN có thể nhận và xử lý tín hiệu phi tuyến của nhiều hệ tính toán xử lý khác, bổ sung thêm các phép toán lô gic mở rộng khả năng ứng dụng của CNN Đặc điểm quan trọng của hệ CNN là kiến trúc phần cứng không giống nhau, nghĩa là có nhiều dạng phần cứng được chế tạo dựa 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 i M; 1 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
Trang 14Mộ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
Một ví dụ điển hình của một tế bào C(i,j) được chỉ ra trong Hình 2.3, các
thông số v xij, v yij v uij lần lượt là điện áp trạng thái, đầu ra, đầu vào Với điện áp trạng
thái v xij tại thời điểm ban đầu được chọn có độ lớn nhỏ hơn hay bằng 1 Điện áp vào
v uij là hằng số với độ lớn nhỏ hơn hay bằng 1 Mỗi tế bào C(i,j) chứa một điện áp
nguồn độc lập E ij ; một nguồn dòng độc lập I; một tụ tuyến tính C, hai điện trở tuyến tính R x và R y Gọi m là số các tế bào láng giềng của tế bào C(i,j) thì có nhiều nhất là 2m nguồn điện áp liên kết (thông qua điện áp vào điều khiển v ukl 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
Trang 15vớ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( )
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
Khi xử lý, các tế bào nhận được lệnh, tập lệnh này giống nhau cho mọi tế bào, nói cách khác mọi tế bào trong toàn không gian nhận được lệnh giống nhau Với CNN, lệnh được gọi là mẫu (template), một chương trình xử lý được tạo ra bởi nhiều mẫu xắp xếp theo trình tự xử lý (như khái niệm chương trình trong máy PC) Khái niệm mẫu rất quan trọng trong toàn bộ quá trình hoạt động của CNN chúng ta
sẽ nghiên cứu kỹ về mẫu trong các phần sau Mọi tế bào trong một hệ CNN cụ thể
có kiến trúc giống nhau nghĩa là giống nhau về phần cứng, có cùng tham số, có cùng mẫu, do đó có tên gọi là kiến trúc vô tính (hay mẫu vô tính) 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 Chúng ta có một số định nghĩa quan trọng về mô hình CNN [41]
Định nghĩa 2.1: Hệ CNN là ma trận n chiều (n=1,2,3 ) của những phần tử động,
giống nhau, mỗi phần tử là một mạch tích hợp gọi là tế bào (cell), có hai thuộc tính:
- Chỉ liên kết vật lý với các tế bào trong phạm vi láng giềng xác định,
- Mọi giá trị trạng thái của tế bào là những tín hiệu có giá trị liên tục
Định nghĩa 2.2: CNN là mạch điện phi tuyến động (dynamic) có kích thước lớn
được tạo bởi cặp các tế bào liên kết với nhau, phân bố đều trong không gian Mạch này có thể có cấu trúc hình chữ nhật, lục giác đều, cầu Với những đặc trưng:
- Mỗi tế bào của CNN là phần tử động,
- Luật tiếp hợp trong CNN biểu diễn sự tương tác từng cặp của tế bào C(i,j) với các tế bào láng giềng của nó,
- Mỗi tế bào có điều kiện biên và điều kiện ban đầu
Trang 16Định nghĩa 2.3: Phạm vi ảnh hưởng của tế bào C(i,j) là tập hợp tất cả các tế bào
láng giềng nằm trong mặt cầu Sr(i,j) có bán kính r (r là số nguyên dương) thoả mãn:
Sr(i,j) = {C(k,l) | max {|k – i|, |l – j|} ≤ r} (2.1)
1≤k≤M, 1≤l≤N Phạm vi ảnh hưởng nói lên những tế bào C(k,l) có liên kết vật lý trực tiếp với
tế bào C(i,j) Cũng có thể biểu diễn Sr(i,j) dưới dạng (2r+1)x(2r+1) láng giềng Dễ thấy nếu r =1 ta có dạng 3x3 với 8 láng giềng; r =2 có dạng 5x5 với 24 láng giềng;
r =3 có dạng 7x7 với 48 láng giềng (Hình 2.4)
Các tế bào trong mạng CNN cơ bản là có cấu tạo giống nhau, trừ một số tế
bào ở vị trí đặc biệt Một tế bào C(i,j) được gọi là tế bào thông thường nếu tồn tại tất
cả các tế bào láng giềng C(k,l) Sr(i,j) Nếu không thì C(i,j) được gọi là tế bào đường biên hoặc tế bào góc, (Hình 2.5)
Hình 2.4 Các dạng láng giềng của CNN, (a) r =1; (b) r = 2
Hình 2.5 Các tế bào đường biên, góc của mạng
tế bào đường biên
tế bào góc
Trang 17Các tế bào này có cấu tạo đơn giản hơn thậm chí chỉ là một tụ điện để đưa vào giá trị biên ứng với giá trị trên biên của các bài toán Có một số trường hợp sử dụng tế bào biên ảo, về mạch điện chỉ là một đường nối tiếp đất với giá trị điện áp
dv t
với 1 iM; 1 jN trong đó, C là điện dung của tụ điện tuyến tính, R x là điện trở tuyến tính Các điện
áp vxij gọi là điện áp trạng thái của tế bào (Ci,j); v ykl ,v ukl được gọi là điện áp ra, vào của các tế bào láng giềng C(k,l) của tế bào C(i,j) Sr gọi là hình cầu tác dụng được
xác định theo công thức (2.1) Đại lượng I gọi là dòng điện ngưỡng của tế bào C(i,j)
(có vai trò như giá trị chốt cho các tác vụ của hệ thần kinh, khi kích thích vượt quá giới hạn của giá trị ngưỡng thì mới có phản ứng trả lời, nếu kích thích dưới mức ngưỡng thì không có)
các điểm thuộc mặt cầu tác dụng Sr Hàm y kl (t) là hàm mô tả điện áp ra; u kl (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ó:
Trang 18;,()1,1
;,(
)1,
;,()
,
;,()1,
;,(
)1,1
;,(),1
;,()1,1
;,(
j i j i A j i j i A j
i j i A
j i j i A j
i j i A j
i j i A
j i j i A j i j i A j
i j i A A
;,(),1
;,()1,1
;,(
)1,
;,()
,
;,()1,
;,(
)1,1
;,(),1
;,()1,1
;,(
j i j i B j i j i B j
i j i B
j i j i B j
i j i B j
i j i B
j i j i B j i j i B j
i j i B B
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 2.6 mô tả một hệ CNN 1D có 5 tế bào (có 2 tế bào biên [41])
Trang 19Đâ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 (2.2.2) có thể viết đơn giản:
x t x t A y t B u t z (2.2.4)
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 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
v yij xij xij (2.3.1)
N j M
;11
Phương trình này mô tả điện áp ra v yij chính là giá trị điện áp tín hiệu xử lý được lan truyền trong hệ CNN từ tế bào này sang tế bào khác làm cho hệ CNN có tính lan truyền tương tác toàn cục Về mặt toán học chúng ta biểu diễn điện áp này như là hàm của điện áp trạng thái:
Trang 20hàm f(x ij) tuyến tính có giá trị trong khoảng xác định [-1,1]
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ướ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:
v uij E ij với 1 iM; 1 jN (2.4)
Các giá trị này tương ứng với giá trị ban đầu của phương trình vi phân khi áp dụng CNN để giải phương trình vi phân hoặc ảnh đầu vào đối với bài toán xử lý ảnh Giá trị ban đầu chính bằng điện áp một chiều trong mạch CNN trong Hình 2.3
Trang 21Để đả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
1
|)0(
|v xij 1iM;1 jN (2.5.1)
1
|
|v uij 1 iM; 1 jN (2.5.2)
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) với 1 iM; 1 jN (2.6.1)
C>0; Rx >0 (2.6.2)
trong đó C, R x là điện dung và điện trở tuyến tính trong mạch điện của tế bào
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 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 2.8.a
x 0 v 0 = E 1 ; x M+1 v M+1 = E 2
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 E 1 , và E 2 (gọi
là điện thế đất có thể chọn E 1 = E 2 = 0)
- Điều kiện biên biến thiên (Zero Flux-Neumann), trong Hình 2.8.b
x 0 v 0 = v 1 ; x M+1 v M+1 = v M
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 v 1 , v M
Trang 22- Điều kiện biên tuần hoàn (Periodic-Ring), trong Hình 2.8.c
x 0 v 0 = v M ; x M+1 v M+1 = v 1
đ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
2.2.3 Thuộc tính động học và sự ổn định của CNN
Trước khi phát minh ra nguyên lý công nghệ CNN, đã nhiều mô hình máy tính song song được đề xuất và thiết kế phần cứng Tuy nhiên do tính phức tạp và tương tác động về điện của các phần tử xử lý trong mạch làm cho hệ làm việc không ổn định Mặt khác, khi số phần tử tăng lên dòng điện và điện áp trong mạch thay đổi phức tạp, thậm chí có thể vượt qua giới hạn làm việc của mạch gây quá tải
và phá hỏng các linh kiện của mạch điện Với mạng CNN, do kiến trúc liên kết cục
bộ đã giải quyết vấn đề khó khăn trên Ngay từ khi đưa ra mô hình hoạt động của CNN, Chua và Lyang đã chứng minh chặt chẽ sự ổn định của mạng dựa trên một số tính chất [12], [13]
Tính chất 2.1: Với mọi trường hợp, điện áp trạng thái v xij của mỗi tế bào C(i,j) luôn
luôn có giới hạn bị chặn bởi một giá trị v max có thể tính toán được theo công thức:
tính chất trên giúp ta tính toán được giá trị v max (khi thiết lập chế độ làm việc cho
mạng) theo công thức (2.7) khi biết R x , C, I và các giá trị của A, B
Trong quá trình xử lý khi thiết lập các giá trị ban đầu cho hệ, hệ CNN có sự
Trang 23biến thiên quá độ của dòng điện, điện áp trong toàn mạch Người ta đã chứng minh
ổn định của mạch CNN sau thời gian quá độ dựa trên phương pháp Lyapunov về mạch phi tuyến
Định nghĩa 2.6: Định nghĩa hàm E(t) mô tả dạng năng lượng của CNN là hàm vô
hàm E(t) trên là hàm của điện áp vào v u và điện áp ra v y vì những điện áp này ảnh
hưởng đến sự ổn định và quá trình lan truyền trong mạng Nếu E(t) tăng vô hạn sẽ
gây ra điện áp trong mạch sẽ lớn đến vô cùng phá vỡ mọi phần tử trong mạch Nếu
E(t) giảm vô hạn năng lượng trong mạch không đảm bảo độ lớn và không tồn tại
Tính chất sau khẳng định cho sự giới nội của hàm E(t)
Tính chất 2.2: Hàm vô hướng E(t) trong (2.8) bị chặn bởi Emax:
ax t
ax | ( ) | m
m E t E
với
ax ( , ) ( , ) ( , ) ( , )
Trang 24Công nghệ mạch số đã có những ưu thế nhất định trong việc xây dựng những mạch khối, thực thi những thao tác trong các hệ thống phức tạp Hầu hết các mạch
số đều được tạo thành từ những khối chuyên dụng đơn giản Phần lõi của CNN và kiến trúc CNN-UM cũng được xây dựng trên những khối mạch như vậy, bao gồm:
- Tụ điện (capacitor)
- Điện trở (resistor, transitor)
- Nguồn dòng được điều khiển bởi điện áp (Voltage Controlled Current Source-VCCS)
Các chip của CNN hiện nay là các chip VLSI được chế tạo bằng công nghệ CMOS, đã đạt tới kích thước rất nhỏ, tốc độ cao, tạo điều kiện cho việc nâng cao tốc độ của máy tính số như trong các thế hệ mới của máy Mạng CNN là mảng ONCHIP các tế bào, mỗi tế bào được tạo ra bằng việc tích hợp từ các phần tử mạch điện trên để có thể thực hiện những xử lý phức tạp trong toàn hệ thống (Hình 2.9)
Điện trở có thể được chế tạo từ các transitor; nguồn dòng VCCS (Voltage Controlled Current Source) được thực hiện bằng các mạch khuếch đại thuật toán OTA (Operational Transconductance Amplifier) hoặc transitor tiếp hợp OTS (One Transitor Synapse), mạch OTA là mạch cơ bản trong cấu hình CMOS CNN
Trong phần lõi CNN, sự tương tác giữa các tế bào được thực hiện bởi khối VCCS, tổng hợp các dòng từ các láng giềng đến một tế bào kích hoạt Sau xử lý, tín hiệu đưa đến các tế bào khác cũng thông qua dòng điện được liên kết trực tiếp Nếu thêm chuyển mạch (switch), cổng lô gic (logic gate) và thanh ghi lô gic (logic register) vào 3 khối đã mô tả trên, ta có mô hình CNN mở rộng (CNN Universal Machine, CNN-UM) Như vậy có 6 khối cơ bản trong kết cấu phần cứng trên để đủ
Hình 2.9 Các khối cơ bản dùng trong kết cấu CNN
Trang 25hình thành một máy tính CNN-UM Mô hình mạng CNN-UM mở rộng được mô tả trong Hình 2.10
Kiến trúc trong Hình 2.10 có kết cấu tương tự như trong Hình 2.3 nhưng phân biệt rõ các khối “vào”- “xử lý” - “ra” Sự tương tác được tính toán dựa trên
tổng các trọng số A(i,j;k,l) và B(i,j;k,l) là điện dẫn liên kết mạch Những phần tử
thêm vào là bộ nhớ tương tự cục bộ (Local Analog Memory- LAM) và phần tử ra tương tự cục bộ (Local Analog Output Unit-LAOU)
2.3.2 Cấu trúc của tế bào CNN mở rộng
Mô hình công nghệ của CNN-UM đượ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 2.11
Hình 2.10 Cấu trúc đầy đủ của tế bào CNN -UM
LAOU LLU
APR: Analog Instruction Register
LPR: Logic Program Register
SCR: Switch Configuration Register
GACU: Global Analogic Control Unit
LAM: Local Analogue Memory
LCCU: Local Communication and Control Unit LAOU: Local Analogue Output Unit
LLU: Local Logic Unit
Trang 26- Phần LAOU (Local Analog Output Unit) là thiết bị nhiều đầu vào, một đầu ra analog Như đã nói trên, các tế bào xử lý tín hiệu từ tập các tín hiệu vào cục bộ với các trọng số liên kết tương ứng (các mẫu), sau khi xử lý đưa đến đầu ra thì chỉ có một cổng ra duy nhất biểu diễn bởi hàm tuyến tính yij.
- Phần LCCU (Local Communication and Control Unit) là thiết bị nhận lệnh của chương trình, trong mỗi một tế bào từ GAPU (Global Analog Programming Unit), gồm có các tín hiệu:
+ Giá trị mẫu analog (A,B,z)
+ Mã các chức năng lô gic của LLU
+ Mã lệnh chuyển mạch cho các tế bào đặc tả đường tín hiệu và một số tham
số cài đặt trong các phần tử chức năng như f(.), LAOU, GW(.)
- Các thanh ghi để lưu trữ các thông tin:
+ Thanh ghi analog cho tập mẫu CNN (APR- Analog Program Register) + Thanh ghi lô gic cho chức năng xử lý lô gic (LPR-Logic Program Register) + Thanh ghi chuyển mạch cấu hình (SCR- Switch Configuration Register)
- Các tế bào biên: Như đã giới thiệu trong Chương 1, hệ CNN có các tế bào biên nằm ở vị trí ngoài cùng của mạng, có cấu tạo khác với các tế bào bình thường, chỉ làm nhiệm vụ đưa giá trị biên vào hệ và tạo liên kết với các tế bào khác Đôi khi người ta còn dùng khái niệm tế bào ảo (thực chất liên kết về điện áp nối thẳng xuống “đất”, hoặc đơn giản chỉ là một tụ điện như trong Hình 2.6)
Chương trình xử lý trong CNN được thực hiện thông qua các lệnh (mẫu), mỗi lệnh ứng với một mẫu Trong thư viện của CNN có tập các mẫu cơ bản và ngày càng được bổ sung phong phú hơn Người lập trình còn có thể tự thiết kế cho mỗi bài toán những mẫu đặc trưng tuỳ theo yêu cầu xử lý Khi xử lý bài toán, chúng ta phải xây dựng mô hình toán học cho bài toán và tìm các mẫu sau đó cho thực thi với các phép xử lý analogic
2.3.3 Cấu trúc lập trình trên CNN-UM
Máy tính CNN-UM hiện nay có thể liên kết với các máy PC để nhận dữ liệu vào và hiển thị qua màn hình của máy tính Tuy nhiên CNN-UM cũng có thể liên
Trang 27kết với Camera để nhận dữ liệu vào (trong Hình 2.12)
Về tổng quan các chức năng của một hệ thống hoàn chỉnh gồm 3 phần:
- Bộ Compiler và Interpreter
- Hệ điều hành CNN (CNN Operating System-COS) và giao diện vật lý CNN chuẩn (CNN Physic Interface- CPI) Hệ điều khiển trên PC có thể tích hợp trên mainboard của máy PC gọi là PCS (CNN Prototyping System Board)
- Nền tảng kết cấu vật lý (platform) cho CNN-UM: Cũng như máy tính PC, mỗi xử lý đều được xây dựng nên từ các câu lệnh, có thể đóng gói thành các hàm thư viện CNN UM cũng cung cấp cho người dùng một tập thư viện các mẫu và ngày càng được bổ sung thêm
File nguồn chương
dịch Alpha
Trình biên dịch AMC
và giao diện
Thư viện công cụ
Output
Lệnh, dữ liệu đưa
ra từ CPS Lệnh, dữ liệu đưa vào CPS
Hệ điều hành CNN (COS)
Tín hiệu đưa từ chip vào CPS
Tín hiệu từ CPS vào chip CNN
Trang 28Các nhà nghiên cứu CNN đang tiếp tục phát triển các tập lệnh cũng như các thuật toán ứng dụng mở rộng khả năng ứng dụng của máy tính CNN-UM Để hiểu
rõ những vấn đề cơ bản các phép xử lý trong CNN-UM, chúng ta xét những xử lý đơn giản trong bài toán xử lý ảnh nhị phân, từ đó có thể hiểu được bản chất các thao tác của CNN-UM
2.4 Một số thao tác xử lý trên CNN-UM
2.4.1 Chương trình xử lý trên CNN-UM
Cũng như trong máy PC, một chương trình là một tập lệnh được xử lý tuần
tự cho từng tế bào (nhưng song song trên toàn chip CNN) nhằm đạt được mục đích
xử lý nào đó Trong CNN một lệnh được hiểu là một template (mẫu), một nhiệm vụ
có thể thực hiện bằng việc áp dụng nhiều mẫu hoặc một mẫu nhiều lần Chương trình của CNN như là một tiến trình có sử dụng nhiều mẫu để biến “cái vào” thành
“cái ra” Chúng ta có thể đặc tả một chương trình con như sau:
- Xác định những tham số vào, ra
- Xác định những tác vụ xử lý
- Mô tả hình thức thuật toán
- Thi hành chương trình CNN
Việc mô tả chương trình CNN có 3 cách:
- Lược đồ phần cứng: Mỗi lệnh của CNN được thi hành bởi chip CNN mở rộng như đã trình bày ở trên, tuy nhiên với mỗi tác vụ (tập các xử lý) ta có thể thiết
kế một mô hình phần cứng riêng để giúp cho nhập tín hiệu vào, xử lý và đưa tín hiệu kết quả xử lý ra phù hợp Điều này khác cơ bản với máy PC trên máy PC mọi chương trình đều chạy trên một phần cứng duy nhất Dữ liệu đưa vào CNN UM cũng khác biệt với dữ liệu của máy PC có thể là tín hiệu số, hay tương tự; từ cơ sở
dữ liệu hay là từ các cảm biến ; dữ liệu ra có thể đưa vào điều khiển cơ cấu chấp hành thứ cấp, cũng có thể qua máy PC, đưa ra màn hình, bộ nhớ ngoài )
- Một danh sách các lệnh tuần tự gọi là một chương trình được viết bằng hệ
từ vựng của các toán tử tương tự và lô gic mà chạy được trên phần cứng CNN (gọi
là ngôn ngữ CNN analogic hay ngôn ngữ ) Trình biên dịch Alpha được sử dụng
Trang 29để dịch mã nguồn thành lệnh có thể được hiểu và thi hành trên các chip CNN
2.4.2 Điều khiển toàn cục và cục bộ
Một khối gọi là ảnh hưởng toàn cục nếu đầu ra của nó phụ thuộc, hay ảnh
hưởng đến tất cả các tế bào trong hệ Cũng như tất cả các hệ thống có thể lập trình
được, CNN cần một đồng hồ (clock) Đồng hồ chính là một phần tử có phạm vi
toàn cục (global) nó chỉ đạo toàn bộ hệ thống thực thi tác vụ trong thời gian xác
định thống nhất của nó, nghĩa là trong một chu kỳ đồng hồ này toàn bộ hệ thi hành
cùng một lệnh (mẫu) Đồng hồ còn được dùng để thiết lập các trạng thái chuyển
mạch (thực hiện các trạng thái cho phép, không cho phép, chốt ) mà tại đó chỉ một
lệnh được thi hành
2.4.3 Lệnh trong CNN
Giả sử chúng ta xét với bài toán xử lý ảnh, một lệnh của ngôn ngữ là toán
tử định nghĩa mẫu như sau:
TemplateName(InputImage,InitialStateImage,OutputImage,TimeInterval,boundaryCond)
trong đó: TemplateName: tên mẫu; InputImage: ảnh vào; OutputImage: ảnh ra sau
khi đã xử lý; TimeInterval: thời gian xử lý là thời gian thay đổi giá trị điểm ảnh (hay
trạng thái của tế bào biểu diễn điểm ảnh đó); BoundaryCond: điều kiện biên
Ví dụ mẫu dò biên như sau:
EDGE(LLM1,LLM2,LLM3,10,-1)
Có nghĩa là: Lệnh (mẫu) dò biên EDGE áp dụng cho ảnh vào, trạng thái khởi
tạo, và ảnh ra xác định bởi các tham số vào (LLM1) lưu trữ bởi LLM2, đưa ra bởi
LLM3, tại thời điểm 10 giây, giá trị biên là -1
Trong xử lý ảnh, nhiều trường hợp chúng ta phải xác định có điểm “đen” nào
trong tập các điểm “trắng” không, chúng ta gọi toán tử GW(.) để kiểm tra thuộc tính
này, GW(.) được định nghĩa như sau:
Cho trước một ảnh nhị phân P có chứa MxN điểm (pixel):
GW(P) =
1 (yes) nếu tất cả các pixel của P là trắng (1)
-1 (No) nếu ít nhất một pixel là đen (-1); có một số trường hợp nhận giá trị (0) giống như trong máy tính PC
Trang 30Hàm này được ứng dụng trong nhiều các phép xử lý lô gic khác mà có kết quả ứng với hai giá trị nhị phân (True/False)
2.5 Khái quát về phương trình đạo hàm riêng
2.5.1 Phương trình đạo hàm riêng tuyến tính [5]
Cấp cao nhất của đạo hàm riêng của u có mặt trong (2.11) gọi là cấp của toán
tử A
Định nghĩa 2.7: Phương trình (2.10) với toán tử A cấp m và các hàm u, f thỏa mãn
các điều kiện trên gọi là phương trình đạo hàm riêng cấp m
Xét phương trình tuyến tính cấp hai tổng quát trong n
R
: 2
Trang 31- Phương trình (2.12) được gọi là phương trình loại Elliptic tại điểm x0 nếu n n
hoặc n n
- Phương trình (2.12) được gọi là phương trình loại Hyperbolic tại điểm x0 nếu (n n 1 và n 1) hoặc (n n 1và n 1)
- Ngoài ra có thể là một số dạng khác như Parabolic hoặc Ultrahyperbolic
- Phương trình (2.12) là phương trình loại Elliptic, Hyperbolic, Parabolic trên tập hợp nếu nó là Elliptic, Hyperbolic, Parabolic trên mọi điểm của
2.5.2 Phương pháp sai phân
Lưới sai phân:
gọi là bước lưới theo y Đặt
x a ih y c jk i N j M Mỗi điểm ( , x yi j) gọi là một nút lưới
ký hiệu là nút ( , ) i j Tập tất cả các nút bên trong ký hiệu là hk; tập tất cả các nút biên ký hiệu là hk, tập hk = hk hk gọi là một lưới sai phân trên
Hàm lưới: Mỗi hàm số xác định tại các nút của lưới gọi là một hàm lưới, giá trị của
hàm lưới u x y ( , ) tại nút lưới ( , ) i j viết tắt là ui j, Mỗi hàm u x y ( , ) xác định tại mọi
( , ) x y tạo ra hàm lưới u xác định bởi ui j,
riêng đến cấp m liên tục trong = Giả sử bài toán có nghiệm 4
Trang 32O(h +k ) là một vô cùng bé bậc hai Ta nói toán tử hk xấp xỉ toán
tử , điều đó cho phép thay phương trình vi phân bằng phương trình sai phân:
Trang 33Ta được bài toán sai phân hoàn chỉnh: tìm hàm lưới u tại các nút ( , ) i j thoả mãn hệ phương trình sai phân (2.14) với điều kiện biên (2.15) Như vậy việc tìm nghiệm xấp xỉ của bài toán vi phân (2.13) với độ chính xác cấp hai được đưa về việc giải bài toán sai phân (2.14) với điều kiện (2.15) bằng các phương pháp đại số
2.6 Mối quan hệ động học giữa CNN và PDE
2.6.1 Mô hình toán học đặc trưng của CNN
Mô hình toán học của CNN gồm tập lớn các phương trình vi phân có liên kết với nhau hình thành nên không gian toán học phong phú, động về kiến trúc thời gian-không gian [44] tuân theo các lý thuyết về ổn định [5] Phương trình đạo hàm riêng là mô hình điển hình cho mô tả các hiện tượng tương tác động không gian-thời gian xảy ra trong vật lý, hóa học, và sinh học Mối quan hệ về mặt toán học giữa CNN và PDE đã được nhiều người nghiên cứu đã cho thấy CNN là một mô hình động học cho nhiều tương tác có cấu trúc thời gian-không gian xảy ra trong phương trình đạo hàm riêng
PDE có thể sai phân thành hệ các phương trình đại số tuyến tính và giải bằng phương pháp thông thường (phương pháp số) và có thể cài đặt trên máy PC Cho đến nay nhiều phương trình đã được cài đặt thành công đảm bảo về độ chính xác có khả năng áp dụng hiệu quả trong các tính toán khoa học
Phương pháp sai phân đã chứng tỏ ưu việt trong việc mô hình hóa và giải các phương trình vi phân cũng như phương trình đạo hàm riêng Bản chất của việc sai phân là thay miền không gian liên tục của hàm bằng một lưới rời rạc với số bước chia đủ nhỏ mà giá trị mỗi điểm trên lưới xấp xỉ với giá trị của điểm tương ứng trong phương trình ban đầu với sai số chấp nhận được Giữa các điểm chia có các ràng buộc thông qua các phương trình mô tả để tính toán giá trị của từng điểm theo yêu cầu bài toán Ngoài ra hệ PDE thường có tính chất động theo miền thời gian do vậy quá trình giải các PDE là bài toán động theo bước thời gian Hạn chế của máy
PC là không thể hiện được bước thời gian thực mà chỉ giả định, nghĩa là kết quả
tính toán ra sau khoảng thời gian ∆t nào đó là một kết quả tĩnh có thể lưu trữ trong
bộ nhớ hoặc file dữ liệu Kết quả này không thể đưa vào các hệ điều khiển thời gian
Trang 34thực được
Qua việc nghiên cứu kiến trúc thời gian-không gian CNN cho thấy hoàn toàn
có thể mô tả biểu diễn PDE bằng các thuộc tính động học và khả năng xử lý thời gian thực ở một số khía cạnh sau:
- Các tế bào liên kết cục bộ tạo thành lưới n chiều (n=1,2,3 ) tùy theo số chiều của PDE cần giải, các liên kết cục bộ thông qua các trọng số liên kết, trọng số này sẽ thể hiện ràng buộc giữa các điểm trong lưới sai phân của PDE
- Mỗi tế bào trong chip CNN có vai trò tính toán cho một điểm trong lưới sai phân của PDE, như vậy việc tính toán xảy ra song song đồng thời trong toàn không gian sai phân và có tốc độ tính toán cực nhanh so với máy PC, [18],[34,[44]
- Do kiến trúc liên kết cục bộ của các tế bào dẫn đến việc dễ dàng tăng số tế bào trong mạng nhưng vẫn đảm bảo hệ làm việc ổn định Ưu điểm này vượt trội hơn hẳn so với một số kiến trúc khác khi tăng phần tử xử lý gây ra sự mất ổn định trong mạng So với xử lý trên máy PC kích thước lớn của không gian tính toán sẽ phải thực hiện nhiều vòng lặp gây ảnh hưởng rất lớn đến tốc độ xử lý và sai số tích luỹ
- Tín hiệu đưa vào xử lý có thể là tín hiệu analog với các phép toán analogic
xử lý trực tiếp nên kết quả đưa ra rất nhanh và dễ dàng đưa ra các thiết bị thứ cấp, hiện nay tốc độ xử lý của tế bào CNN tới 1012 phép tính/giây [3],[34]
- Thời gian tính toán của một tế bào chỉ là thời gian quá độ của mạch điện tế bào (thời gian thay đổi trạng thái của mỗi tế bào) nên chỉ cỡ micro giây có thể áp dụng tính toán cho một hệ động lực thay đổi theo thời gian gần như liên tục Khả năng này cho phép thiết kế các hệ xử lý động như thị giác máy, nhận dạng mục tiêu
di động, theo dõi đa mục tiêu
- Sau một số lần thực nghiệm tính toán có thể lưu lại các trọng số liên kết như là ”mẫu học” cho hệ như vậy hệ CNN còn có khả năng biết học, một thuộc tính quan trọng của hệ nơ ron để tìm ra mẫu tối ưu cho mỗi bài toán
- Quá trình xử lý còn thông qua sự hồi tiếp của hệ, nên hệ có khả năng tự điều chỉnh một tính chất rất phù hợp cho việc thiết kế các hệ điều khiển tự động
- Trong quá trình xử lý cục bộ của từng tế bào, đầu ra còn được liên kết qua
Trang 35các lân cận và lan truyền toàn cục cho toàn hệ Do đó CNN còn có khả năng lan truyền tín hiệu trong quá trình xử lý Các tác vụ phân chia thành mức local và global làm cho việc xử lý trong CNN linh hoạt và hiệu quả
- Mỗi tế bào có một số đầu vào và một đầu ra các đầu vào có thể lấy từ cơ sở
dữ liệu, từ các cảm biến, từ bộ nhớ ngoài tùy theo nhiệm vụ xử lý đặc biệt CNN
có khả năng xử lý dữ liệu dạng LUỒNG Do vậy nó có các đầu vào rất linh hoạt cho nhiều loại bài toán Đầu ra cũng có thể đưa ra bộ nhớ lưu trữ hoặc các hệ xử lý thứ cấp thông qua các tín hiệu tương tự hay tín hiệu số
- Bản chất của việc sử dụng CNN là ta phân rã các điểm sai phân thành từng nút tính toán rời rạc theo không gian và tìm các thông số liên kết cục bộ để xây dựng kiến trúc phần cứng Tại mỗi điểm nút ta có một tế bào tính toán tương ứng do
đó có thể xây dựng được một hệ tính toán song song vật lý thực thi tính toán
Nhiều phương trình đã được mô phỏng qua các trạng thái hoạt động của hệ CNN khẳng định khả năng giải phương trình đạo hàm riêng trên CNN Khi triển khai cho mỗi bài toán ta cần nghiên cứu một rõ ràng đầy đủ mối quan hệ giữa mô hình CNN và PDE nhằm xác định đảm bảo hệ CNN thiết kế cho bài toán tương đương với hệ PDE ban đầu
Trước hết, ta phải xây dựng mô hình toán học mô tả kiến trúc vật lý cho hệ CNN gọi là phương trình sai phân vi phân CNN chuẩn (Cellular Partial Difference Differntial Equation-CPDDE) Sau đó phải chứng minh tính tương đương của phương trình này với phương trình đạo hàm riêng ban đầu Vấn đề tương đương có thể tách thành hai: Nghiệm của phương trình CPDDE xấp xỉ chấp nhận được về sai
số so với nghiệm chính xác của PDE ban đầu; hai mô hình CPDDE và PDE ban đầu tương đương về không gian động học, nghĩa là kiến trúc không gian các tế bào của
hệ CNN phải tương ứng với các điểm trên lưới sai phân thu được sau khi rời rạc PDE ban đầu
2.6.2 Điều kiện để PDE giải được bằng CNN
Phương trình cơ bản của CNN (phương trình trạng thái 2.2) là phương trình
vi phân, do vậy việc sử dụng CNN để giải phương trình đạo hàm riêng dựa trên
Trang 36phương trình này Tuy vậy, lớp các PDE rất rộng, để có thể áp dụng CNN vào để giải cần có những điều kiện ràng buộc nhất định Nói cách khác chỉ những dạng PDE thỏa mãn điều kiện mới giải được bằng CNN
Mô hình toán học chuẩn của CNN được gọi là CPDDE (Cellular Partial Difference Differential Equations) với một số giả thiết: mẫu là tuyến tính trong không gian đồng nhất; đầu vào và ngưỡng có giá trị là không (0); điều kiện biên kiểu zero flux Từ đó ta đưa ra một số định nghĩa [18]:
Định nghĩa 2.9: Một mô hình phương trình đạo hàm riêng sai phân vi phân tế bào
(Cellular Partial Difference Differential Equation - CPDDE) là một hệ NxM phương
trình vi phân thường phi tuyến:
với điều kiện x ij (0) = x 0ij
Biến trạng thái xij là các điểm trên lưới đều hình chữ nhật được xác định
bằng hai chỉ số (1≤ i ≤ N, 1≤ j ≤ M); f(.) là hàm phi tuyến đặc trưng cho đầu ra thuộc miền C(R); A
Định nghĩa 2.10: Tập các PDE tương ứng của phương trình (2.16), với hai biến
không gian z, w xác định trong miền hình chữ nhật (0≤ z ≤ l z , 0≤ w≤ l w) với các điều kiện ban đầu ( , ,0) 0( , )
~
~
w z x w z
x là hàm Ccủa 3 biến z,w,t; L A (D z ,D w ) và L C (D z ,D w) là hàm đa
thức khác hằng số của toán tử vi phân không gian
l
w z
z ; (1 iN, 1 j M) (2.18)
Trang 37với h z và h w là bước rời rạc không gian
Nghiên cứu mối quan hệ giữa PDE và CNN, khi xây dựng mô hình CPDDE phải thể hiện được cấu trúc không gian-thời gian trong cùng miền của PDE (nghĩa
là (0≤ z ≤ l z , 0≤ w≤ l w ), do đó các mẫu của CPDDE T A , T C phải được chọn phù hợp
với bước rời rạc trong không gian sai phân của PDE: h z = l z /N và h w = l w /M và các
mẫu này là các đa thức dạng 1/h z ; 1/h w
Định nghĩa 2.12: Chuẩn của một véc tơ trên lưới chữ nhật v ={v ij (1≤ i ≤N,1≤ j≤
M)} được xác định:
||v||g =supij|v ij| (2.19)
Định nghĩa 2.13: Một CPDDE được định nghĩa trong (2.16) xấp xỉ với mô hình
PDE mô tả bởi (2.17) nếu và chỉ nếu tồn tại toán tử vi phân không gian L A (D z ,D w),
L C (D z ,D w) mà :
0
||
)(
||
lim:
) 0 , 0 ( ) ,
]}
,)(,)[(
h m j h n i x f T
r m r n
C mn w
z r
m r n
A mn
,,([
{),()
(
~
~
t jh ih x D D L t jh ih x f D D L
Định nghĩa 2.14: Một mô hình CPDDE mô tả bằng phương trình (2.16) tương
đương về hình thái với PDE (2.17) với bước rời rạc không gian h z và h w nếu tồn tại
hàm g(.) trong không gian C 0 mà:
2 0 1
Trang 38 của hệ rời rạc hóa được
trong (2.18) tại thời điểm t=t 2 với điều kiện ban đầu g x( 0)
Định nghĩa 2.14 đưa
đến thuộc tính cho các bước rời rạc không gian h z , h w như sau :
- Nếu PDE phi tuyến được định nghĩa bởi công thức (2.17) tồn tại duy nhất nghiệm trong một miền hút attractor với điều kiện ban đầu~x z w( , , 0)x z w~0( , )thì hệ CPDDE tương đương cũng có một miền attractor tương ứng
- Nếu PDE phi tuyến được định nghĩa bởi (2.17) có một tập S các nghiệm ổn định A {A1,A2 A S}
diễn hiện tượng không gian-thời gian như nhau, trái lại mỗi mô hình sẽ có những thể
hiện thuộc tính động học khác nhau
Định lý 2.1 [18]: Cho phương trình CNN chuẩn (2.16) có các mẫu T A(hz,hw) và
T C (h z ,h w ) xấp xỉ với các PDE trong (2.17) với (h z ,h w) (0,0) Các bước rời rạc của
PDE trong không gian sai phân là h z =h * z và h w =h * w Có thể kiểm tra tính tương đương giữa CNN và PDE bằng 2 bước sau:
- Với ε >0, kiểm tra để đảm bảo phương trình (2.16) không có điểm rẽ nhánh
(bifurcation) nào trong khoảng 0< h z < ε; 0<h w< ε (điểm rẽ nhánh là một điểm không ổn định nằm giữa hai vị trí liền kề)
- Đảm bảo phương trình (2.16) không tồn tại điểm rẽ nhánh trong miền 0<h z <h * z+ε;
0<h w < h * w+ε
Trang 39Thoả mãn hai bước kiểm tra trên thì phương trình (2.16) tương đương với (2.17) Hay hệ phương trình CNN cho ở (2.16) có thể biểu diễn xấp xỉ bằng các phương trình PDE (2.17) Nếu không hệ CPDDE không tương đương với hệ PDE ban đầu hay ta nói là rộng hơn lớp PDE
2.7 Giải phương trình đạo hàm riêng Burger sử dụng công nghệ CNN
Trong quá trình áp dụng CNN để giải PDE có điểm khác cơ bản với phương pháp số là mọi tế bào trong hệ CNN có phương trình toán học mô tả giống nhau nên ta quy ước chỉ xây dựng phương trình mô tả cho một tế bào, các chỉ số (i,j) xác định tế bào ở vị trí thứ i,j trong mạng
Phương trình Burger được các nhà nghiên cứu hàng đầu về CNN như T Roska, L.O Chua, D Wolf, T Kozek, R Tetzlaff và F Puffer tiến hành phân tích
áp dụng giải thuật CNN để giải, thuật toán được mô phỏng trên Matlab [32] Đây là phương trình phi tuyến mô tả mật độ của các hạt chất lỏng chuyển động hỗn độn do nội năng phân tử trong khối chất lỏng Giả thiết vận tốc các hạt tăng lên tỷ lệ với mật độ của các hạt Phương trình mô tả như sau :
),(),(),(),(1),(
2
2
t x F x
t x u t x u x
t x u R t
t x
không trao đổi nhiệt với bên ngoài Khai triển Taylor cho phương trình Burger ta được dạng sai phân (cho tế bào ở vị trí thứ i trong hệ CNN):
2
( ) 2
Trang 40Với điều kiện biên của bài toán x0 = -10; x N =10; R=30; bước không gian
∆x=0,05; bước thời gian ∆t=0.00001 (s), kết quả tính toán của bài toán được minh
họa trong Hình 2.13
Như vậy, về mạch điện CNN chúng ta phải thiết kế một dãy tế bào CNN tuyến tính và một dãy tế bào CNN phi tuyến ứng với hai mẫu tuyến tính và phi tuyến ghép nối với nhau tạo thành mạng CNN hai lớp
2.8 Hạn chế của công nghệ CNN và giải pháp
Từ nghiên cứu các bài toán được giải trên CNN, nhóm nghiên cứu đưa ra những đánh giá về việc ứng dụng CNN vào giải phương trình đạo hàm riêng
- Sai số do sai phân phương trình ban đầu và lấy các giá trị xấp xỉ
Ví dụ khi khai triển:
1( , ) ( , )
Hình 2.13 Kết quả giải phương trình Burger