Kiến trúc mạng CNN cơ bản

Một phần của tài liệu Điều hướng xe tự hành dùng trí tuệ nhân tạo (Trang 38 - 40)

bản 2.3.1.5. Kiến trúc mạng CNN

Mạng CNN có kiến trúc được hình thành từ các thành phần cơ bản bao gồm Convolution (CONV), Pooling (POOL), ReLU, Fully-connected (FC) về mặt xây dựng kiến trúc tổng quát CNN được mô tả như hình 2.21.

Ta có thể sử dụng công thức cơ bản sau để xây dựng một mạng CNN cơ bản.

[[CONV > RELU] *N > POOL?] *M > [FC > RELU] *K > FC

Trong đó:

[CONV > RELU] *N: Sau lớp convolution là lớp ReLu, kiến trúc hai tầng này có thể lặp lại N lần.

POOLING: Lớp pooling có thể có hoặc không.

[[CONV > RELU] *N > POOL?] *M: sau kiến trúc [CONV > RELU] *N

là lớp pooling, kiến trúc này có thể lặp lại M lần.

[FC > RELU] *K: Trong CNN có thể lặp K lần cấu trúc kiểu sau tầng FC là tầng RELU nhưng trước nó phải có tầng [CONV > RELU].

Tổng quan lại CNN là thuật toán có kiến trúc bao gồm nhiều tầng có chức năng khác nhau trong đó tầng chính hoạt động thông qua cơ chế tích chập. Trong suốt quá trình huấn luyện, CNN sẽ tự động học được các thông số cho các bộ lọc – tương ứng là các đặc trưng theo từng cấp độ khác nhau. Ví dụ trong bài toán phân lớp ảnh, CNN sẽ cố gắng tìm ra các thông số tối ưu cho các bộ lọc tương ứng theo thứ tự pixel >

edges > shapes > facial > high-level features. Đây chính là lý do mà CNN có được kết quả vượt trội so với các thuật toán trước đây.

2.4. Bộ điều khiển PID

Một bộ điều khiển vi tích phân tỉ lệ (bộ điều khiển PID- Proportional Integral Derivative) là một cơ chế phản hồi vòng điều khiển (bộ điều khiển) tổng quát được sử dụng rộng rãi trong các hệ thống điều khiển công nghiệp – bộ điều khiển PID là bộ điều khiển được sử dụng nhiều nhất trong các bộ điều khiển phản hồi. Bộ điều khiển PID sẽ tính toán giá trị "sai số" là hiệu số giữa giá trị đo thông số biến đổi và giátrị đặt mong muốn. Bộ điều khiển sẽ thực hiện giảm tối đa sai số bằng cách điều chỉnh giá trị điều khiển đầu vào. Để đạt được kết quả tốt nhất, các thông số PID sử dụng trong tính toán phải điều chỉnh theo tính chất của hệ thống như được minh họa trong hình 2.22

Giải thuật tính toán bộ điều khiển PID bao gồm 3 thông số riêng biệt, do đó đôi khi nó còn được gọi là điều khiển ba khâu: các giá trị tỉ lệ, tích phân và đạo hàm, viết tắt là P, I, và D. Giá trị tỉ lệ xác định tác động của sai số hiện tại, giá trị tích phân xác định tác động của tổng các sai số quá khứ, và giá trị vi phân xác định tác động của tốc độ biến đổi sai số. Tổng chập của ba tác động này dùng để điều chỉnh quá trình thông qua một phần tử điều khiển như vị trí của van điều khiển hay bộ nguồn của phần tử gia nhiệt. Nhờ vậy, những giá trị này có thể làm sáng tỏ về quan hệ thời gian: P phụ thuộc vào sai số hiện tại, I phụ thuộc vào tích lũy các sai số quá khứ, và D dự đoán các sai số tương lai, dựa vào tốc độ thay đổi hiện tại [9]

Một số ứng dụng có thể chỉ yêu cầu một hoặc hai thông số tùy thuộc vào hệ thống và sẽ được gọi là P, PI hoặc PD

Độ lợi tỉ lệ, Kp: khâu tỷ lệ, giá trị càng lớn thì đáp ứng càng nhanh do đó sai số càng lớn, bù khâu tỉ lệ càng lớn. Một giá trị độ lợi tỉ lệ quá lớn sẽ dẫn đến quá trình mất ổn định và dao động.

Độ lợi tích phân, Ki: giá trị càng lớn kéo theo sai số ổn định bị khử càng nhanh. Đổi lại là độ vọt lố càng lớn: bất kỳ sai số âm nào được tích phân trong suốt đáp ứng

quá độ phải được triệt tiêu tích phân bằng sai số dương trước khi tiến tới trạng thái ổn định

Độ lợi vi phân, Kd: giá trị càng lớn càng giảm độ vọt lố, nhưng lại làm chậm đáp ứng quá độ và có thể dẫn đến mất ổn định do khuếch đại nhiễu tín hiệu trong phép vi phân sai số.

Hình 2.23 cho thấy bộ điều khiển PID để duy trì tốc độ được sử dụng trong xe tự hành. Bộ điều khiển PID tính toán sai số giữa giá trị vận tốc thực tế đo được và giá trị mong muốn điều khiển từ Raspberry Pi 3. Bộ điều khiển sẽ giảm thiểu sai số bằng cách điều chỉnh giá trị điều khiển đầu vào, được gửi đến ESC cũng như của xe động cơ.

Một phần của tài liệu Điều hướng xe tự hành dùng trí tuệ nhân tạo (Trang 38 - 40)

Tải bản đầy đủ (DOC)

(69 trang)
w