ƢU KHI GIA CÔNG TRÊN MÁY PHAY CNC
3.2 Ứng dụng mạng mờ nơron và giải thuật ABC xác định mối quan hệ thực nghiệm giữa chế độ cắt và thông số đầu ra
Sử dụng mô hình mạng mờ nơ ron làm mô hình toán học xác định mối quan hệ thực nghiệm giữa chế độ cắt với các yếu tố đầu ra quan tâm như: độ nhám bề mặt (Rz, Ra), bước nhám (Rsn), bước sóng (S), lực cắt (F), nhiệt cắt (), lượng mòn dao (hs), năng suất cắt Q…
Mục đích của mạng là tìm một qui luật toán học thể hiện mối quan hệ giữa yếu tố đầu vào và đầu ra tốt nhất.
3.2.1 Các chỉ tiêu đánh giá chất lượng mô hình toán học mạng
Các tham số mạng đã được xác định khi thiết lập mạng mờ nơ ron. Do vậy cần tìm các thông số mạng để giá trị kết xuất bởi mạng ra y luôn bám được giá trị đo thực tế d với một tiêu chuẩn xác định. Tiêu chuẩn đó phải phản ánh được bản chất của mối quan hệ thực nghiệm chính xác.
Gọi bộ thông số giá trị đo thực tế là: x(i),d(i)) với i=1,2…n Trong đó:
x là bộ giá trị đầu vào: x(i)x1(i),x2(i),x3(i)T
x1 là biến đầu vào của mạng thể hiện vận tốc cắt: x1=V (m/phút) x2 là biến đầu vào của mạng thể hiện lượng tiến dao S: x2=S (mm/răng) x3 là biến đầu vào của mạng thể hiện chiều sâu cắt t: x3=t (mm) d là bộ giá trị đầu ra tương ứng với x(i): d(i)d1(i),d2(i),d3(i),d4(i)T
d1 là đầu ra đo nhấp nhô tế vi Rz (hay Ra) d2 là đầu ra năng suất cắt Q
d3 là lực cắt F
d4 là lượng mòn dao hs
- Gọi i là sai lệch phần trăm tương đối giữa giá trị kết xuất của mạng và giá trị thực đo đạc được tại bộ giá trị thí nghiệm thứ i là:
% 100 .
i i i
i d
y d
(3.1)
- Sai số trung bình trên toàn bộ dữ liệu mẫu thí nghiệm đưa vào tb là:
m
m
i i tb
1
(3.2)
Trong đó m là số bộ dữ liệu đưa vào mạng
- Độ phân tán sai số dự đoán của các sai số i quanh giá trị sai số trung bình là:
1
1
2
m
m
i
tb
i
(3.3)
- Độ lệch trung bình bình phương của toàn bộ tập dữ liệu E:
Gọi e là độ lệch của mỗi điểm dữ liệu:
i i
i d y
e (3.4)
Tổng giá trị sai lệch cho n bộ dữ liệu là 2E, trong đó:
n
i
ei
E
1 2
2
1 (3.5)
Một mô hình mạng có các tham số mạng tốt thì giá trị sai số trung bình tb và độ phân tán sai số càng nhỏ càng tốt (tb, ), hay giá trị E càng nhỏ càng tốt. Quá trình tìm bộ tham số mạng được thực hiện thông qua quá trình lặp với một bộ tham số được chọn ban đầu ngẫu nhiên. Mỗi vòng lặp tìm ra được một bộ tham số tương ứng và làm giảm giá trị sai số trung bình, độ phân tán sai số hay giá trị E. Vì vậy có thể so sánh độ tốt hay xấu của các bộ tham số mạng qua một trong 2 tiêu chuẩn sau:
- So sánh bộ giá trị (tb, ) của mỗi bộ tham số mạng - So sánh độ lệch trung bình bình phương E
Nếu sử dụng chỉ số E làm tiêu chuẩn so sánh, đánh giá độ tốt xấu của mỗi bộ tham số mạng như một điều kiện dừng cho bài toán tìm tham số mạng thì có thể xảy ra tại một số điểm nào đó trong bộ dữ liệu sẽ có sai lệch giữa giá trị kết xuất ra bởi mạng và giá trị thực là lớn. Nó không phản ánh được độ tập trung của sai số hay phân tán của sai số. Nếu hai bộ tham số đều cho E như nhau nhưng có thể cho độ phân tán của sai số là khác nhau. Ở đây mong muốn sai lệch cho các điểm dữ liệu phải nhỏ và các sai lệch đó không được phân tán quá rộng. Nếu phân tán quá rộng thì độ chênh lệch giữa sai số lớn nhất và nhỏ nhất sẽ rất lớn gây ra độ chính xác dự đoán mối quan hệ cũng không cao. Ngược lại ưu điểm khi dùng tiêu chuẩn E làm tiêu chuẩn dừng thì quá trình tính toán sẽ đơn giản hơn, nhanh hơn.
Nếu sử dụng giá trị sai số trung bình và độ phân tán sai số làm tiêu chuẩn dừng cho bài toán, qúa trình tính toán nhiều hơn nhưng lại cho khả năng điều chỉnh mô hình mạng chính xác với mô hình thực tế hơn. Trong luận án sử dụng sai lệch E làm công cụ giảm sai số toàn bộ mẫu và dùng sai số trung bình, phương sai của sai số làm tiêu chuẩn dừng cho bài toán.
3.2.2 Giải thuật ABC và lan truyền ngược xác định các tham số hệ thống mạng
Các tham số toán học của mô hình mạng đã được xác định cụ thể khi chọn các hàm liên thuộc và số biến đầu vào cụ thể. Giá trị hàm sai lệch E, sai số i, sai số trung bình tb, độ phân tán sai số là hàm quan hệ phụ thuộc vào các tham số hệ thống của mạng. Gọi các tham số của mạng là một vector w mà các thành phần wi là các thông số xác định các hàm liên thuộc và các trọng số pi. Bộ tham số hệ thống của mạng w được xác định qua vector tham số:
T n
i w
w w w
w[ 1, 2,..., ,..., ] (3.6)
Giá trị kết xuất đầu ra của mạng là hàm quan hệ phụ thuộc vào bộ tham số mạng:
w f
y (3.7)
Các giá trị sai i, tb, , E cũng là những hàm quan hệ phụ thuộc vào bộ tham số mạng
w
i
i
; tb tb w ; w ; EE w . Để xác định bộ tham số w sao cho giá trị đầu ra của mạng bám sát được giá trị thực di, sử dụng hai giải thuật là lan truyền ngược và giải thuật ABC.
a) Sơ đồ giải thuật lan truyền ngược
Từ phân tích và sử dụng phương pháp giảm dốc Gradient trong chương 2, thiết lập sơ đồ thuật toán lan truyền ngược điều chỉnh các tham số hệ thống mạng thể hiện như hình 3.2. Quá trình bắt đầu bởi việc khởi tạo ngẫu nhiên bộ tham số hệ thống mô hình mạng. Bộ tham số đầu tiên này thực chất là một nghiệm w0 trong không gian nghiệm và xác định một mô hình toán học mạng. Với bộ tham số nghiệm ban đầu w0 tính toán các giá trị đầu ra kết xuất bởi mạng tương ứng yi. Tính toán các giá trị sai lệch ei, i, tương ứng với các bộ dữ liệu và cả tập dữ liệu vào, thực hiện quá trình lặp và kiểm tra điều kiện dừng. Nếu điều kiện dừng không thỏa mãn thì thực hiện quá trình điều chỉnh cập nhật các giá trị tham số hệ thống mới theo thuật toán. Quá trình cập nhật này tạo ra một bộ tham số hệ thống mới chính là một nghiệm w mới trong không gian nghiệm. Thực hiện kiểm tra vòng lặp giới hạn và sai số trung bình. Nếu sai số trung bình lớn hơn sai số trung bình cho phép hay số lần lặp không vượt quá giới hạn dừng thì tiếp tục quá trình lặp còn ngược lại thì kết thúc và
cập nhật lại bộ tham số hệ thống, lưu kết quả và thoát khỏi vòng lặp. Thuật toán sử dụng 2 tiêu chuẩn dừng là sai số trung bình và số lần lặp. Mục đích sử dụng 2 tiêu chuẩn lặp là nhằm tránh máy bị treo khi không thỏa mãn điều kiện dừng sai số trung bình nhỏ hơn sai số trung bình cho phép.
Nhược điểm lớn nhất của giải thuật lan truyền ngược là khả năng làm giảm sai lệch E phụ thuộc nhiều vào điểm khởi tạo ban đầu w0 và hệ số học như đã được phân tích trong chương 2 nhưng ưu điểm là tốc độ hội tụ nhanh. Nếu có điểm khởi tạo nghiệm ban đầu tốt cho đầu vào thuật toán lan truyền ngược thì quá trình hội tụ về các tiêu chuẩn dừng sẽ nhanh hơn.
b) Sơ đồ giải thuật trí tuệ bầy ong nhân tạo
Giải thuật bầy ong nhân tạo thuộc lớp trí tuệ bầy đàn, dựa trên quan sát tự nhiên của bầy ong khi tìm mật hoa. Đàn ong với các cá thể được chia làm 3 nhóm ong khác nhau: ong thợ, ong tìm kiếm, ong giám sát. Các cá thể ong luôn giữ mối liên hệ với nhau thông qua khu vực trao đổi thông tin. Ong thợ được điều đi khắp nơi để tìm kiếm nguồn mật hoa, một nguồn mật hoa là đại diện cho một nghiệm w của bài toán và do một ong thợ đảm nhiệm.
Số lượng ong thợ trong quần thể bầy ong cũng chính là số lượng nghiệm sử dụng để khám phá nghiệm tối ưu. Ong giám sát ở tại trung tâm trao đổi thông tin đón nhận thông tin từ ong thợ đưa về, so sánh lượng mật hoa tại các nguồn thức ăn và sẽ ra quyết định chọn nguồn mật để khai thác tiếp theo căn cứ độ giàu có của nguồn mật. Nguồn mật càng giàu có thì càng có cơ hội được chọn để khai thác. Ong tìm kiếm là ong sẽ đi theo một hướng bất kỳ để tìm nguồn thức ăn mới, và khi tìm thấy nguồn thức ăn mới thì con ong này sẽ biến thành ong thợ. Qui trình tìm mật hoa được sử dụng để tìm nghiệm tối ưu cho bài toán tối ưu. Với lý thuyết qui trình tìm kiếm mật hoa của đàn ong nhưng ứng dụng nó để thành giải thuật thì tùy vào mục đích và mức độ phức tạp của bài toán để thiết lập gải thuật cho tối ưu về chiến lược thời gian thực khi thực hiện thuật toán. Gải thuật trong luận án sử dụng giải các bài toán tối ưu trong cơ khí với cách tiếp cận làm giảm thời gian thực khi thực hiện thuật toán.
Hàm sai lệch E=E(w), trong đó w là vector tham số hệ thống mạng. Cũng giống như thuật toán lan truyền ngược là cần tìm bộ tham số w* để giá trị hàm sai lệch hay sai lệch trung bình tb, độ phân tán sai số đạt giá trị nhỏ nhất. Bản chất của bài toán ở đây cũng là bài toán tối ưu sử dụng phương pháp lặp số với giải thuật trí tuệ bầy đàn của loài ong. Dựa trên quy trình của bầy ong như ở trên, thuật toán ABC được thiết lập theo sơ đồ giải thuật như hình 3.3 và bao gồm các bước chính sau đây:
Bước 1: Khởi tạo quần thể nghiệm ban đầu
Khái niệm nghiệm ở đây được hiểu chính là nguồn thức ăn trong quá trình tìm kiếm, vì con ong luôn có xu hướng tìm nguồn thức ăn nhiều mật nhất hay chính là tìm nghiệm tối ưu của hàm. Khởi tạo một quần thể nghiệm ban đầu v0=(v1,v2,..vj,..vm)0 gồm m nghiệm ban đầu, tức là một tập hợp các nghiệm vj hay một cách khác là tập hợp các vector được khởi tạo một cách hoàn toàn ngẫu nhiên. Mỗi vector vj là đại diện của một nghiệm, với số các thông số của vector chính là số biến của hàm mục tiêu là E(w) hay tb, . Các thông số của vector này là tọa độ của nghiệm đó.
Số ong thợ bằng số ong giám sát và cũng chính là số lượng nghiệm trong quần thể vì mỗi một ong thợ chỉ đại diện được cho một nghiệm trong quá trình tìm kiếm nghiệm tối ưu. Tùy vào độ phức tạp của hàm mà khởi tạo số lượng nghiệm ban đầu. Hàm càng phức tạp thì số lượng nghiệm hay số ong thợ khởi tạo càng lớn vì như vậy khoảng không gian tìm kiếm sẽ rộng hơn, thuận lợi hơn cho việc tìm đến nghiệm tối ưu.
Một vector nghiệm vj được khởi tạo ngẫu nhiên:
vj=(w1j,w2j,w3j,…wij,…wnj) (3.8) trong đó:
wij là tham số thực được khởi tạo ngẫu nhiên trong khoảng [0,1]
Khởi tạo như vậy sẽ được một vector với các tham số thuộc không gian số thực. Hình 3.4 là đồ thị minh họa việc khởi tạo quần thể nghiệm ban đầu với các nghiệm có giá trị khác nhau
Bước 2: Tạo nghiệm mới do ong thợ
Quy trình tìm nghiệm mới này được áp dụng cho tất cả các nghiệm trong quần thể khởi tạo thể hiện trong sơ đồ thuật toán 3.5. Ong thợ sẽ tìm nguồn thức ăn mới xung quanh nguồn thức ăn nó vừa tìm được và quá trình tìm kiếm đó được gọi là quá trình khai thác.
Quần thể nghiệm ban đầu có m nghiệm thì tương ứng cũng có m ong thợ. Vị trí mỗi ong thợ là một vị trí nghiệm. Vì vậy khi tạo các nghiệm mới do ong thợ chính là tạo ra một vị trí nghiệm mới. Vị trí mới tìm được sẽ được so sánh với vị trí cũ về số lượng mật, do đó nếu vị trí mới tốt hơn thì thay vị trí cũ bằng vị trí mới, còn nếu ngược lại thì vị trí cũ vẫn sẽ giữ nguyên. Tại vị trí nguồn thức ăn thứ j vector nghiệm là vj, khảo sát lân cận xung quanh nguồn thức ăn xem có vị trí nào tốt hơn hay không, tạo ra các nghiệm mới xung quanh nghiệm cũ vj là vj‟, các thông số của nghiệm mới dựa trên các giá trị của các thông số của nghiệm cũ vj và chỉ làm thay đổi một thông số tại vị trí thứ i nào đó:
vj‟
=(w1j,w2j,…,wij‟,…wnj), i=1†n, j=1†m (3.9) Trong đó:
wij‟
=wij+rkj(wij-wik) (3.10) - rkj là một số ngẫu nhiên trong khoảng [-1,1]
- wik là tham số thứ i vủa vector nghiệm thứ k là vk trong quần thể nghiệm đã có, vector nghiệm vk được chọn hoàn toàn ngẫu nhiên và khác với vector nghiệm vj. Việc tạo nghiệm mới do ong thợ được tiến hành theo quy trình:
+ Tạo quần thể gồm m nghiệm do vậy có m ong thợ + Đặt biến i: là biến đếm ong thợ
+ Ban đầu i =0
Quá trình tìm ra nghiệm mới không đảm bảo được nghiệm mới là tốt hơn nghiệm cũ nên phải thực hiện so sánh tác động của nghiệm cũ và nghiệm mới để lựa chọn. Tính giá trị của hàm mục tiêu E(v) cho hai giá trị nghiệm cũ và mới là: E(vj) và E(vj‟
).
- Nếu E(vj‟
) <E(vj) thì nghiệm mới vj‟
tốt hơn nghiệm cũ do vậy sẽ thay thế nghiệm cũ vj trong quần thể nghiệm bằng vj‟
. - Nếu E(vj‟
) ≥ E(vj) thì nghiệm mới vj‟
xấu hơn nghiệm cũ do vậy sẽ giữ nguyên nghiệm cũ vj trong quần thể nghiệm.
Quá trình tìm nghiệm mới do ong thợ xung quanh nghiệm cũ và được diễn ra cho các cá thể nghiệm trong toàn bộ quần thể nghiệm. Do vậy sau quá trình này một quần thể nghiệm mới được sinh ra và chứa các cá thể nghiệm tốt hơn quần thể trước đó.
Bước 3: Đánh giá mức độ - tốt xấu của nghiệm
Mỗi ong thợ khi quay trở về tổ truyền đạt lại cho ong giám sát thông tin về nguồn thức ăn mà nó tìm được. Ong giám sát thông qua những thông tin từ tất cả ong thợ mang về sẽ đánh giá được mức độ giàu có của nguồn thức ăn hay nói cách khác là mức độ tốt –xấu của nghiệm.
Đối với bài toán tìm tối ưu cực đại, nên ưu tiên tìm những nghiệm cho giá trị càng lớn càng tốt, còn bài toán tối ưu cực tiểu thì ưu tiên tìm những nghiệm cho giá trị càng nhỏ càng tốt. Khi tìm bộ thông số mạng mong muốn giá trị sai lệch E càng nhỏ càng tốt còn khi giải bài toán tối ưu năng suất gia công thì mong muốn giá trị Q càng lớn càng tốt. Dưới đây trình bày đánh giá mức độ tốt xấu của nghiệm cho bài toán E càng nhỏ càng tốt với bài toán năng suất thì cũng tương tự chỉ khác thay vì xét p thì xét (1-p). Việc đánh giá mức độ tốt- xấu của nghiệm được thông qua quy trình sau:
Gọi Ej là giá trị của hàm E(v) tương ứng với vector nghiệm vj: Ej=E(vj) với j=1†m
Gọi E là tổng giá trị của các vector trong quần thể
m
j
Ej
E
1
(3.11)
Gọi pj là đại lượng đặc trưng cho giá trị tốt-xấu của vector thứ j trong quần thể :
m
j j j j
j
E E E p E
1
(3.12)
Suy ra:
1
1
m
j
pj (3.13)
Như vậy, nếu Ej càng lớn thì tần suất pj càng lớn, để thuận lợi cho tính toán bài toán tối ưu cực tiểu đặt:
j
j p
k 1 (3.14)
Nếu pj càng lớn thì kj càng nhỏ và ngược lại nếu pj càng nhỏ thì kj càng lớn. Nếu kj càng lớn thì khả năng được ong giám sát chọn sẽ càng cao. Hình 3.6 minh họa về xác suất ong giám sát lựa chọn nghiệm để tập trung khai thác. Nếu đoạn kj càng lớn thì khả năng thu hút sự tập trung của các ong giám sát đến sẽ lớn hơn các đoạn khác nghĩa là xác suất được chọn sẽ cao hơn.
Bước 4: Tạo nghiệm mới do ong giám sát
Tại tổ ong, ong giám sát sẽ đánh giá những thông tin đưa về từ ong thợ để chọn ra những nghiệm nào tốt và những nghiệm nào xấu. Nghiệm càng tốt tức kj càng lớn thì xác suất để ong giám sát tập trung tìm kiếm xung quanh nghiệm đó càng cao, và ngược lại, nghiệm càng xấu tức kj càng nhỏ thì xác suất để ong giám sát tập trung tìm kiếm xung quanh nghiệm đó càng thấp.
Như đã trình bày ở bước 1, số lượng ong giám sát bằng số lượng ong thợ cũng như số lượng nghiệm. Vì vậy, mỗi ong giám sát sẽ tập trung tìm kiếm cùng ong thợ xung quanh nghiệm mà ong thợ đó tìm thấy. Tuy nhiên, do giá trị của nghiệm hay độ tốt –xấu của nghiệm do ong thợ đưa về là khác nhau, nên ong giám sát sẽ ưu tiên tìm kiếm xung quanh những nghiệm tốt hơn. Việc ong giám sát tìm kiếm, khảo sát xung quanh một nghiệm nào đó không đồng nghĩa với việc nó bay đến vị trí nghiệm đó và khảo sát, mà nó sẽ truyền đạt quyết định đến ong thợ tại vị trí nghiệm đó và ong thợ đó sẽ có nhiệm vụ khảo sát xung quanh nghiệm theo chỉ dẫn của ong giám sát
Việc tạo nghiệm mới do ong giám sát được thực hiện theo các bước sau:
+ Quần thể nghiệm bao gồm m nghiệm do đó có m ong giám sát . + Mỗi nghiệm trong quần thể có một giá trị kj được tính trong bước 3 + Đặt ra 2 biến
j : Đếm nghiệm, 1≤ j ≤ m t : Đếm ong giám sát, 1≤ t ≤ m