MỤC LỤC
LỜI MỞ ĐẦU i
Chương 1. MẠNG TÍNH TOÁN 2
Chương 2. MỘT SỐ ỨNG DỤNG CỦA MAPLE VÀO GIẢI MỘT SỐ TOÁN ĐẠI
SỐ, HÌNH HỌC PHẲNG 6
Chương 3. KẾT LUẬN 20
TÀI LIỆU THAM KHẢO 21
- i -
LỜI MỞ ĐẦU
Một trong những vấn đề hiện nay đang được quan tâm của “Trí tuệ Nhân
tạo” là nghiên cứu các phương pháp biểu diễn và xử lý tri thức. Trên cơ sở đó có thể
tạo ra những chương trình “thông minh” ở một mức độ nào đó. Trong nhiều lĩnh
vực chúng ta thường gặp những vấn đề đặt ra dưới dạng như sau: Chúng ta phải
thực hiện những tính toán hay suy diễn ra những yếu tố cần thiết nào đó từ một số
yếu tố đã được biết trước. Để giải quyết vấn đề người ta phải vận dụng một số hiểu
biết (tri thức) nào đó về những liên hệ giữa các yếu tố đang được xem xét. Những
liên hệ cho phép ta có thể suy ra được một số yếu tố từ giả thiết đã biết một số yếu
tố khác.
Do đó, để biểu diễn thông tin sao cho có thể tìm được thông tin nhanh chóng
và chính xác là một vấn quan trọng, luôn thu hút nhiều sự quan tâm của các nhà
khoa học. Đặc biệt, là việc nghiên cứu và phát triển các mô hình biểu diễn tri thức
và tính toán tự động chiếm một vị trí rất quan trọng trong ngành toán học, khoa học
máy tính, và nhất là đối với các hệ trí tuệ nhân tạo.
Maple là một hệ thống tính toán trên các biểu thức đại số và minh họa toán
học mạnh mẽ của công ty Warteloo Maple Inc. Maple ra đời từ năm 1991 đến nay
đã phát triển đến phiên bản 16. Maple có cách cài đặt rất đơn giản, chạy trên nhiều
hệ điều hành, có cấu trúc linh hoạt để sử dụng, tối ưu cấu hình máy và có trình trợ
giúp (Help) rất dễ sử dụng. Từ phiên bản 7, Maple cung cấp ngày càng nhiều các
công cụ trực quan, các gói lệnh tự học gắn liền với toán học phổ thông và đại học.
Ưu điểm đó làm cho nhiều nước trên thế giới lựa chọn sử dụng Maple cùng các
phần mềm toán học khác trong dạy học toán đòi hỏi của thực tiễn và sự phát triển
1
,x
2
, ,x
m
} là một tập hợp các biến có thể lấy giá trị trong các miền
xác định tương ứng D
1,
D
2
, ,D
m
. Đối với mỗi quan hệ R ⊆ D
1
xD
2
x xD
m
trên các tập
hợp D
1,
D
2
, ,D
m
ta nói rằng quan hệ nầy liên kết các biến x
1
,x
2
, ,x
2
, ,x
m
>). Ngoài ra, trong trường hợp cần nói
rõ ta viết u(f) thay cho u, v(f) thay cho v. Đối với các quan hệ không phải là đối xứng
có hạng k, không làm mất tính tổng quát, ta có thể giả sử quan hệ xác định duy nhất
một hàm f với tập biến vào là u(f) và tập biến ra là v(f); ta gọi loại quan hệ nầy là quan
hệ không đối xứng xác định một hàm, hay gọi vắn tắt là quan hệ không đối xứng.
Ví dụ: quan hệ f giữa 3 góc A, B, C trong tam giác ABC cho bởi hệ thức:
A+B+C = 180 (đơn vị: độ)
1.2 Bài toán trên mạng tính toán
Cho một mạng tính toán (M,F), M là tập các biến và F là tập các quan hệ. Giả
sử có một tập biến A ⊆ M đã được xác định và B là một tập biến bất kỳ trong M.
Nguyễn Văn Quang - CH1101126 2
Khóa luận môn học: Lập trình Symbolic và Trí tuệ Nhân tạo
Các vấn đề đặt ra là:
1. Có thể xác định được tập B từ tập A nhờ các quan hệ trong F hay không? Nói
cách khác, ta có thể tính được giá trị của các biến thuộc B với giả thiết đã biết giá trị
của các biến thuộc A hay không?
2. Nếu có thể xác định được B từ A thì quá trình tính toán giá trị của các biến
thuộc B như thế nào?
3. Trong trường hợp không thể xác định được B, thì cần cho thêm điều kiện gì
để có thể xác định được B.Bài toán xác định B từ A trên mạng tính toán (M,F) được
viết dưới dạng: A → B,trong đó A được gọi là giả thiết, B được gọi là mục tiêu tính
toán của bài toán.
Định nghĩa 2.1:
Bài toán A → B được gọi là giải được khi có thể tính toán được giá trị các biến
thuộc B xuất phát từ giả thiết A. Ta nói rằng một dãy các quan hệ {f
1
, f
, f
2
, , f
k
xuất phát từ giả thiết A.
Nhận xét : Trong định nghĩa trên, nếu đặt : A
0
= A, A
1
= A
0
∪ M(f
1
), . . . , A
k
=
A
k-1
∪ M(f
k
), và ký hiệu A
k
là D(A), thì ta có D là một lời giải của bài toán A → D(A).
Trong trường hợp D là một dãy quan hệ bất kỳ (không nhất thiết là áp dụng được trên
A), ta vẫn ký hiệu D(A) là tập biến đạt được khi lần lượt áp dụng các quan hệ trong
dãy D (nếu được). Chúng ta có thể nói rằng D(A) là sự mở rộng của tập A nhờ áp dụng
dãy quan hệ D.
1.3 Mô hình biểu diễn tri thức mạng tính toán
Mô hình mạng tính toán là mô hình biểu diễn tri thức có thể dùng biểu diễn các
tri thức về các vấn đề tính toán và được áp dụng một cách hiệu quả để giải một số
( f không đối xứng and M(f) \ B ⊆ v(f) ) then
begin
B ← B ∪ M(f);
F ← F \ {f}; // loại f khỏi lần xem xét sau
end;
Until B = B1;
3.
A
← B;
để tìm một lời giải ta có thể làm như sau: Xuất phát từ giả thiết A, ta thử áp dụng
các quan hệ để mở rộng dần tập các biến có giá trò được xác đònh; và quá trình nầy
tạo ra một sự lan truyền tính xác đònh trên tập các biến cho đến khi đạt đến tập
biến B. Dưới đây là thuật toán tìm một lời giải cho bài toán A → B trên mạng tính
toán (M,F).
1.3.1 Thuật tốn:
Thuật toán tìm một lời giải cho bài toán A → B:
Nhập: Mạng tính toán (M,F), tập giả thiết A ⊆ M, tập biến cần tính B ⊆ M.
Xuất: lời giải cho bài toán A → B
Thuật toán:
1. Solution ← empty; // Solution là dãy các quan hệ sẽ áp dụng
2. if B ⊆ A then
begin
Solution_found ← true; // biến Solution_found = true khi bài toán là
// giải được
goto 4;
end
else
Nguyễn Văn Quang - CH1101126 4
Khóa luận mơn học: Lập trình Symbolic và Trí tuệ Nhân tạo
Solution_found ← false;
trước. Tìm một số yếu tố chưa biết.
Input: - Tập các yếu tố trong tam giác vuông
- Tập các công thức thể hiện mối liên hệ của các yếu tố trên
- Một số yếu tố cho trước.
Output: Tìm một số yếu tố chưa biết.
2.1.1 Mô tả bài toán
Thu thập tri thức và xác định yêu cầu các vấn đề:
Tri thức gồm: Khái niệm tam giác vuông, các công thức liên quan đến thông số
của các yếu tố trong tam giác vuông: góc, cạnh, đường cao, diện tích,….
Mô hình mạng tính toán gồm 2 thành phần:
- Tập biến: các yếu tố liên quan đến việc tính toán trong tam giác vuông: 3
cạnh, 3 góc, đường cao, diện tích, chu vi, bán kính đường tròn ngoại tiếp,…
Mỗi yếu tố trong tam giác vuông được biểu diện bằng một biến số thực dương:
c: kí hiệu cho cạnh huyền của tam giác vuông
a,b: ký hiệu cho 2 cạnh góc vuông trong tam giác vuông.
A, B và C: ký hiệu cho ba góc trong tam giác vuông, A=Pi/2.
S: ký hiệu cho diện tích của tam giác vuông.
R: kí hiệu cho bán kính đường tròn ngoại tiếp.
ha,hb và hc: ký hiệu ba đường cao tương ứng ba cạnh trong tam giác vuông.
ra, rb và rc: ký hiệu bán kính các đường tròn bàng tiếp tam giác vuông.
ma,mb và mc: ký hiệu ba đường trung tuyến ứng với ba cạnh tam giác vuông.
- Tập luật dạng phương trình: biễn diễn mối quan hệ giữa các biến trong tập
biến.
Ví dụ:
Mối liên hệ giữa ba cạnh trong tam giác vuông: c
2
= a
2
+ b
2
riêng biệt, có phân biệt chữ hoa và chữ thường.
c : cạnh huyền trong tam giác vuông.
a : cạnh góc vuông thứ nhất.
b : cạnh góc vuông thứ hai.
A : góc thứ nhất của tam giác.
B : góc thứ hai của tam giác.
C : góc thứ ba của tam giác.
R : bán kính đường tròn ngoại tiếp.
S : diện tích của tam giác vuông.
p : chu vi của tam giác vuông.
b. File lưu tri thức R:
Tập các công thức thể hiện mối quan hệ giữa các yếu tố trong tập V là file:
- File có tên là “tapluat.txt”
- Vị trí lưu trên Folder có đường dẫn là: D:\tamgiac
-Cấu trúc File gồm:
1
2
A
π
=
: Thể hiện tam giác vuông tại đỉnh A.
c
2
= a
2
+ b
2
:Định lý pitago.
: Công thức tính diện tích tam giác.
: Công thức tính bán kính đường tròn ngoại tiếp
Sol:=[];
KnownVar:=[];
KnownVal:=[];
KnownVal:=map(x->lhs(x),KnowVal) #là tập hợp gồm các biến
#lấy từ vế trái của KnownVal
Bước 2. While (KL không nằm trong KnownVar)) do
2.1. Tìm một công thức f thuộc Formular có thể áp dụng trên
KnownVal(ta phải đưa ra công thức nào tính được)
2.2. if (không tìm được r) then Dừng, không tìm được lời giải
2.3. Thêm f vào solution
Vnew:=indets(f) minus KnownVar
Thay thế tập giá trị đã biết vào công thức và giải
NewFact:=solve(subs(KnownVal,f),Vnew)
KnownVal:=KnownVal union NewFact
Nguyễn Văn Quang - CH1101126 8
Khóa luận môn học: Lập trình Symbolic và Trí tuệ Nhân tạo
2.1.4 Thủ tục:
a. Thủ tục đọc các tập luật dạng phương trình:
b. Thủ tục đọc các yếu tố:
Nguyễn Văn Quang - CH1101126 9
Khóa luận môn học: Lập trình Symbolic và Trí tuệ Nhân tạo
c.
d. Thủ tục đọc các giả thiết và kết luận:
Nguyễn Văn Quang - CH1101126 10
Khóa luận môn học: Lập trình Symbolic và Trí tuệ Nhân tạo
e. Thủ tục tính toán:
Nguyễn Văn Quang - CH1101126 11
Khóa luận môn học: Lập trình Symbolic và Trí tuệ Nhân tạo
2.1.5 Dữ liệu thử nghiệm:
Cho tam giác vuông, vuông tại A, cạnh a=4, b=5. Hãy tìm p (chu vi), R (bán
2
= -1
m =16/7 => ∆ = 0 => phương trình đã cho có nghiệm kép x
1
=x
2
= 3/5
- 0 < m <16/7 => ∆ > 0 => phương trình đã cho có 2 nghiệm phân biệt.
Kết quả:
m = 1/2 phương trình có nghiệm duy nhất x= -1/5.
m = 0 => ∆ =0 => phương trình có nghiệm kép x = -1
m =16/7 => ∆ = 0 => phương trình đã cho có nghiệm kép x = 3/5
0 < m <16/7, m ≠ ½ phương trình có 2 nghiệm phân biệt.
2.2.2 Trình bày cấu trúc dữ liệu
Mặc định vế phải bằng 0, vế trái là dạng chuẩn.
Ví dụ: (2m - 1)x
2
+( m + 2)x + m - 1 = 0
2.2.3 Thuật giải
Bước 1:
Nhập vào hệ số a, b, c của phương trình ax
2
+ bx + c = 0 theo tham số m
Bước 2:
2.1 Xét trường hợp hệ số a = 0
2.1.1. Nghiệm của phương trình
2.2 Xét trường hợp hệ số a ≠ 0
2.2.1 Tính delta = b
2
– 4ac
thiên đồ thị hàm số.
b. Cực trị: đạo hàm và chiều biến thiên tìm các điểm cực trị (nếu có) các
đồ thị hàm số
c. Tính lồi, lõm và điểm uốn: tính đạo hàm y’ và xét dấu y’ để tìm điểm
uốn các đồ thị hàm số (nếu có).
d. Giới hạn: tính các giới hạn của hàm số. tìm các tiệm cận của đồ thị
hàm số (nếu có).
3. Vẽ đồ thị:
a. Vẽ các đường tiệm cận của đồ thị hàm số(nếu có).
Nguyễn Văn Quang - CH1101126 15
>
Khóa luận môn học: Lập trình Symbolic và Trí tuệ Nhân tạo
b. Xác định các điểm đặc biệt của đồ thị hàm số: cực trị, các giao điểm
của đồ thị với các trục toạ độ (nếu có).
c. Vẽ đồ thị hàm số.
Dựa vào các bước để khảo sát hàm số trên, bằng cách sử dụng các lệnh cho sẳn
của Maple chúng ta lập được thủ tục giải bài toán khảo sát đồ thị hàm số bậc 3: y = ax
3
+ bx
2
+ cx +d.
2.3.2 Thuật giải:
Input: Nhập vào giá trị: a, b, c,d
Output: Cực trị; Giới hạn; Tính lồi, lõm, điểm uốn; Vẽ đồ thị.
Biến:
Dh1 , y’, y”, Limit, x,y
Bước 1:
Tính đạo hàm (diff(y,x))
Bước 2:
- Xác định hàm số lồi, lõm trong khoảng
- Vẽ đồ thị hàm số
2.3.3 Thủ tục:
Nguyễn Văn Quang - CH1101126 17
Khóa luận môn học: Lập trình Symbolic và Trí tuệ Nhân tạo
Nguyễn Văn Quang - CH1101126 18
Khóa luận môn học: Lập trình Symbolic và Trí tuệ Nhân tạo
2.3.4 Dữ liệu thử nghiệm:
Khảo sát hàm số bậc 3: y := -x
3
-3x
2
+4;
Nguyễn Văn Quang - CH1101126 19
(1,0); (-2,0)
Khóa luận môn học: Lập trình Symbolic và Trí tuệ Nhân tạo
Chương 3. KẾT LUẬN
Bài báo cáo này đã trình bày được một vài ứng dụng của Maple trong việc giải
các bài toán hình học không gian, khảo sát và vẽ đồ thị hàm số. Tôi nhận thấy rằng nếu
khai thác tốt các tính năng của Maple một công cụ rất hiệu quả trong dạy học, trong
nghiên cứu khoa học và nhiều lĩnh vực khác nữa.
Trong quá trình thực hiện khoá luận, tôi đã cố gắng tập trung tìm hiểu, học hỏi
và tham khảo các tài liệu liên quan. Tuy nhiên, với thời gian và trình độ có hạn nên
không tránh khỏi những hạn chế và thiếu sót. Tôi rất mong được sự nhận xét và góp ý
của Thầy và bạn bè để hoàn thiện hơn các kết quả nghiên cứu của mình.
Nguyễn Văn Quang - CH1101126 20
Khóa luận môn học: Lập trình Symbolic và Trí tuệ Nhân tạo
TÀI LIỆU THAM KHẢO
[1] GSTS.Hoàng Kiếm và Đỗ Văn Nhơn, 1996, Mạng tính toán và Ứng dụng,
[2] Đỗ Văn Nhơn, Xây dựng hệ tính toán thông minh, Luận án Tiến sĩ, 2001.