Định nghĩa ngữ nghĩa của cây con trong TAG3P

Một phần của tài liệu Nghiên cứu ngữ nghĩa trong hệ lập trình Gen định hướng bởi văn phạm nối cây và ứng dụng trong xấp xỉ hàm Q luận án tiến sỹ (Trang 56 - 62)

Như chúng ta đã biết, ngữ nghĩa của cây con trong GP dựa vào cây biểu thức có thể định nghĩa và tính toán dễ dàng vì mỗi cây con trong cây biểu thức là cây biểu thức. Do đó, việc tính toán ngữ nghĩa của cây con được tính như một cây biểu thức thông thường.

Như hình vẽ dưới đây, đó là một cây biểu thức biểu diễn cá thể trong GP. Với cây biểu thức như vậy, ngữ nghĩa của cây con (cây được bao bởi đường cong khép kín trong hình vẽ) có thể được định nghĩa là độ tốt của cây con đó. Và như vậy, việc tính ngữ nghĩa của cây con sẽ tương tự như tính toán của một cá thể. Trong ví dụ này, ngữ nghĩa của cây con sẽ được tính là độ tốt của cây con đó, ở đây là hàm (X + X)

46

Hình vẽ 2.4. Ngữ nghĩa trong GP biểu diễn dạng cây biểu thức

Như đã trình bày trong chương 1, TAG3P sử dụng sự biến đổi giữa kiểu Gen (genotype) và kiểu hình (phenotype). Kiểu Gen ở đây là các cây dẫn xuất còn kiểu hình là cây dẫn được. Cây dẫn xuất để ghi lại các thao tác tạo nên cây dẫn được từ các cây cơ bản. Mỗi nút trên cây dẫn xuất là tên của một cây cơ bản, mỗi cung biểu diễn một phép kết nối (nét liền) hoặc một phép thay thế (nét đứt). Ngoài ra, mỗi nút tại đó có áp dụng thao tác viết lại được đánh dấu bằng một địa chỉ Gorn.

Với đặc điểm như vậy, trong hệ TAG3P có vấn đề như sau:

- Các thao tác thực hiện toán tử di truyền như lai ghép, đột biến,…. được thực hiện và thao tác trên cây dẫn xuất.

- Việc tính toán độ tốt của một cá thể lại được tính toán trên cây dẫn được (là cây biểu diễn trong hệ GP thông thường).

Chính vì vậy, ngữ nghĩa của một cây con trong TAG3P rất khó có thể áp dụng cách tính toán tương tự trước đây (dựa trên cây biểu thức).

47

Hình vẽ 2.5. Một ví dụ về cây cơ bản trong văn phạm TAG

Trong hình vẽ trên, tập cây cơ bản biểu diễn văn phạm TAG gồm cây α và hai cây β1,β2. Các cá thể của TAG3P sẽ được tạo ra từ văn phạm này thông qua các phép nối, phép thế được áp dụng trong văn phạm TAG.

Hình vẽ 2.6. Kiểu Gen và kiểu hình trong TAG3P

Trong hình vẽ trên, kiểu Gen là biểu diễn dưới dạng cây dẫn xuất, nó cho biết cấu trúc hình thành của cá thể từ các cây cơ bản và các thao tác được thực hiện. Mã con trong mỗi cá thể của TAG3P là cây con. Mọi mã con đều được

48 biểu diễn, được sử dụng để mã hóa kiểu hình. Tuy nhiên, như đã trình bày ở trên, TAG3P sử dụng sự chuyển đổi giữa kiểu Gen (genotype) và kiểu hình (phenotype), và trong ví dụ trên, kiểu hình chính là dạng cây biểu diễn. Khi đó, việc tính toán độ tốt của cá thể sẽ được thực hiện trên cây biểu diễn này.

Nếu áp dụng tương tự khái niệm ngữ nghĩa đã được đề xuất trong một số nghiên cứu trước đây đối với các biểu diễn GP dạng cây biểu diễn, thì việc tính toán có thể thực hiện được. Ở ví dụ trên, nếu tính ngữ nghĩa của cây con bên tay trái (của cây biểu diễn), cây con này tương ứng với giá trị biểu thức TL*TL. Việc tính toán ngữ nghĩa cây con này thực hiện đơn giản như tính toán độ tốt của cả cây biểu diễn.

Tuy nhiên, vấn đề đối với hệ TAG3P là, cây con trong cây biểu diễn lại không tương ứng với cây con trong kiểu Gen (cây dẫn xuất). Các thao tác thực hiện toán tử di truyền như lai ghép, đột biến,…. được thực hiện và thao tác trên cây dẫn xuất.

Chính vì vậy, việc áp dụng việc tính toán ngữ nghĩa của cây con dựa trên dạng biểu diễn cây biểu thức là không thực hiện được trong TAG3P, mặc dù kiểu hình của cá thể là dạng cây biểu thức.

Hình vẽ 2.7. Tính toán độ đóng góp của cây con

Không giống như GP và GGGP, trong TAG3P, nó có thể đánh giá được sự ảnh hưởng của một cây con đối với độ tốt của cá thể. Nhờ khả năng không cố định về số lượng tham số, nó có thể tạm thời bỏ một cây con ra khỏi cá thể mà

49 vẫn đảm bảo cá thể đó hợp lệ (có thể đánh giá được độ tốt). Do đó có thể đánh giá được mức độ ảnh hưởng của một cây con đối với cá thể bằng cách so sánh độ tốt cá thể đó trong trường hợp có và không có cây con đó.

Như hình vẽ 2.6 ở trên, trong kiểu Gen, ta có thể bỏ (tạm thời bỏ) cây con β2 ra khỏi cá thể, khi đó, cá thể sau khi loại bỏ cây con β2 vẫn là một cá thể hợp lệ (như trong hình 2.7) và kiểu hình được chuyển đổi sẽ có ở bên phải của hình. Và việc tính toán độ tốt của cá thể đó (sau khi đã loại bỏ cây con β2) được thực hiện như bình thường. Ta sẽ so sánh độ tốt cá thể trong trường hợp có và không có cây con đó và qua đó sẽ xác định được mức độ đóng góp của cá thể đó đối với độ tốt của cá thể.

Trong [79], McPhee và đồng nghiệp đã đề xuất khái niệm ngữ nghĩa và ngữ cảnh khi có hoặc không có một cây con. Tuy nhiên khái niệm này chỉ được áp dụng trong bài toán logic.

Trong bài toán thực và với dạng biểu diễn cây biểu thức, trên cơ sở đặc điểm của hệ TAG3P, luận án đề xuất khái niệm ngữ nghĩa của cây con trong TAG3P như sau:

Định nghĩa 2.1: Ng nghĩa ca mt cây con trong TAG3P được xác định là

độđóng góp ca cây con đó đối vi toàn b cây (cá th).

Giá tr ng nghĩa cây con được xác định là hiu ca độ tốt cá thể khi có cây

con và độ tốt của cá thể khi không có cây con đó.

50 Từ định nghĩa ở trê, với ví dụ như trong hình vẽ 2.8, ta có thể tính ngữ nghĩa của cây con (t) như sau:

Bước 1: Tính độ tốt của cá thể.

Để thực hiện việc này, đầu tiên ta sẽ chuyển đổi thành cây dẫn được trong Glex. (adsbygoogle = window.adsbygoogle || []).push({});

Sau đó, quá trình tính toán độ tốt của cá thể được thực hiện trên cây dẫn được. Giả sử giá trị tính được là n.

Bước 2: Thực hiện việc ngắt (tạm thời) cây con (t) ra khỏi cá thể.

Do đặc tính thứ phân không cố định nên cá thể thu được sau khi loại bỏ cây con (t) vẫn là một cá thể hợp lệ.

Khi đó ta lại thực hiện tính toán độ tốt của cá thể sau khi loại bỏ cây con (t). Giả sử giá trị tính được là m.

Bước 3: Ngữ nghĩa của cây con (t) sẽ là n – m.

Và sẽ xảy ra ba tình huống (ở đây ta coi độ tốt của một cá thể càng nhỏ thì càng tốt) sau:

1. Trường hợp 1: Nếu n – m = 0.

Với trường hợp này, độ tốt của cá thể trong trường hợp có và không có cây con là không thay đổi. Điều đó có nghĩa cây con (t) không có đóng góp gì đối với độ tốt của cá thể.

2. Trường hợp 2: nếu n – m < 0

Với trường hợp này, độ tốt của cá thể trong trường hợp không có cây con lớn hơn trong trường hợp có cây con. Với việc ta coi độ tốt của một cá thể càng nhỏ thì càng tốt thì điều đó đồng nghĩa với việc khi không có cây con thì độ tốt của cá thể đó tăng lên, tức là cá thể đó xấu đi. Nghĩa là nếu có cây con đó tồn tại thì cá thể tốt hơn.

51 Với trường hợp này, độ tốt của cá thể trong trường hợp không có cây con nhỏ hơn trong trường hợp có cây con. Với việc ta coi độ tốt của một cá thể càng nhỏ thì càng tốt thì điều đó đồng nghĩa với việc khi không có cây con thì độ tốt của cá thể đó giảm đi, tức là cá thể đó tốt lên. Nghĩa là nếu có cây con đó tồn tại thì cá thể xấu hơn.

Một phần của tài liệu Nghiên cứu ngữ nghĩa trong hệ lập trình Gen định hướng bởi văn phạm nối cây và ứng dụng trong xấp xỉ hàm Q luận án tiến sỹ (Trang 56 - 62)