Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 22 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
22
Dung lượng
1,38 MB
Nội dung
ĐẠI HỌC QUỐC GIA ĐẠI HỌC CÔNG NGHỆ THÔNG TIN TP HỒ CHÍ MINH CHƯƠNG TRÌNH ĐẠO TẠO THẠC SĨ CNTT KHÓA BÀI THU HOẠCH CHUYÊN ĐỀ: LẬP TRÌNH SYMBOLIC Đề tài: TÌM HIỂU CƠNG CỤ LẬP TRÌNH SYMBOLIC VÀ ỨNG DỤNG GVHD: TS Đỗ Văn Nhơn SVTH: MỤC LỤC LÊ THỊ PHÚC KHOA – CH1101015 Tiểu luận: Lập trình Symbolic I GIỚI THIỆU MAPPLE – CƠNG CỤ LẬP TRÌNH SYMBOLIC Maple gói phần mềm tốn học thương mại phục vụ cho nhiều mục đích Nó phát triển lần vào năm 1980 Nhóm Tính tốn Hình thức Đại học Waterloo Waterloo, Ontario, Canada Từ năm 1988, phát triển thương mại hóa Waterloo Maple Inc (cịn biết đến với tên gọi Maplesoft), cơng ty Canada có trụ sở Waterloo, Ontario.(http://www.maplesoft.com) Maple đời năm 1991 đến phát triển đến phiên 16 Maple có cách cài đặt đơn giản, chạy 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 có trình trợ giúp (help) dễ sử dụng Từ phiên 7, Maple cung cấp ngày nhiều công cụ trực quan, gói lệnh tự học gắn liền với tốn học phổ thơng đại học Ưu điểm làm cho nhiều người giới lựa chọn sử dụng Maple phần mềm toán học khác áp dụng dạy học tốn cơng việc tính tốn đòi hỏi thực tiễn phát triển giáo dục C ó t h ể nhận thấy ngồi tính tính tốn minh hoạ mạnh mẽ câu lệnh riêng biệt ( thường cho ta kết cuối ), Maple ngơn ngữ lập trình hướng thủ tục (procedure) Thủ tục dãy lệnh Maple theo thứ tự mà người lập trình định sẵn để xử lí cơng việc đó, thực thủ tục Maple tự động thực lệnh có thủ tục cách sau trả lại kết cuối Mapple có chức sau: • Thực tính tốn với khối lượng lớn, với thời gian nhanh độ xác cao • Có thể thực hầu hết phép toán chương trình tốn đại học sau đại học CH1101015_Lê Thị Phúc Khoa Trang Tiểu luận: Lập trình Symbolic • Sử dụng gói chuyên dụng Maple để giải toán cụ thể như: vẽ đồ thị (gói plots), hình học giải tích (gói geometry), đại sốtuyến tính (gói linalg), Giải tích (gói student), phương trình vi phân(gói DEtools), lý thuyết số (gói numtheory), Dữ liệu rời rạc (góiDiscreteTransforms),… • Thiết kế đối tượng chiều • Minh họa hình học thuận tiện gồm: vẽ đồ thị tĩnh động đường mặt cho hàm tùy ý nhiều hệ tọa độ khác • Là ngơn ngữ lập trình đơn giản mạnh mẽ, có khả tương tác với ngơn ngữ lập trình khác (C, Fortran, Java, MatLab, Visual Basic) • Cho phép trích xuất định dạng khác word, HTML… • Một công cụ biên soạn giáo án giảng điện tử, thích hợp với lớp học tương tác trực tiếp • Một trợ giáo hữu ích cho học sinh sinh viên việc tự học Kiến trúc Maple: • Phần lớn chức toán học Maple viết ngôn ngữ Maple, thông dịch nhân Maple Nhân Maple viết C Maple chạy tất hệ điều hành • Ngơn ngữ lập trình Maple ngơn ngữ kiểu động Cũng giống hệ thống đại số máy tính, biểu thức hình thức lưu trữ nhớ theo đồ thị khơng chu trình có hướng (DAG) Ngơn ngữ cho phép biến có phạm vi định (lexical scoping) Ngơn ngữ có hình thức lập trình hàm, có hỗ trợ đầy đủ cho lập trình truyền thống, theo kiểu mệnh lệnh CH1101015_Lê Thị Phúc Khoa Trang Tiểu luận: Lập trình Symbolic • Một điều lạ chương trình thương mại, đa số mã nguồn xem tự Khi khởi động nhân Maple kích hoạt Maple tự động nạp lệnh chức vào môi trường làm việc.Lúc người dùng thực tính tốn Những tính tốn chun ngành người dùng sử dụng lệnh chứa gói tương ứng II BÀI TỐN GIẢI VÀ BIỆN LUẬN PHƯƠNG TRÌNH BẬC NHẤT MỘT ẨN VÀ BẬC HAI MỘT ẨN Bài tốn giải biện luận phương trình bậc ẩn: Phương trình bậc ẩn có dạng: f(x)=ax+b=0 - Nếu a ≠ 0: phương trình có nghiệm x= - - Nếu a = 0: + Nếu b ≠ 0: phương trình vơ nghiệm + Nếu b = 0: phương trình có vơ số nghiệm với x Bài toán giải biện luận phương trình bậc hai ẩn: Phương trình bậc hai ẩn có dạng: f(x)=ax2+bx+c= *Trường hợp 1: Với a = 0, ta có phương trình bx+c=0, phương trình bậc ẩn ta đưa tốn “Giải biện luận phương trình bậc ẩn” *Trường hợp 2: Với a ≠ 0,ta tính biểu thức: ∆ = b2 - 4ac +Nếu ∆ < 0: phương trình vơ nghiệm +Nếu ∆ = 0: phương trình có nghiệm kép x = +Nếu ∆ > 0: phương trình có nghiệm Giới thiệu lệnh sử dụng chương trình: ∗ Lệnh ước lượng đại lượng / biểu thức với độ xác tùy ý: CH1101015_Lê Thị Phúc Khoa Trang Tiểu luận: Lập trình Symbolic Cú pháp: >evalf(x, n) Trong : - x: số truyền vào ∗ n: số chữ số thập phân Lệnh khai triển biểu thức: Cú pháp: >expand(biểu thức); Ví dụ: > bt:=(x+y)^7; bt := ( x + y ) > expand(bt); x7 + x6 y + 21 x5 y + 35 x4 y3 + 35 x3 y4 + 21 x y5 + x y + y7 ∗ Lệnh giải phương trình, bất phương trình: Cú pháp: >solve(equations, variables) Trong đó: - equations: phương trình, bất phương trình - variables: biến số (ẩn) Ý nghĩa: Lệnh thực tìm nghiệm biểu thức phương trình, bất phương trình Ví dụ: > solve(3*x2 -5 = 0); * Lệnh lấy vế trái, vế phải biểu thức Cú pháp:>lhs(expr) rhs(expr) CH1101015_Lê Thị Phúc Khoa Trang Tiểu luận: Lập trình Symbolic Trong đó: - expr: biểu thức Ý nghĩa: lhs(expr) thực trả vế trái biểu thức expr, lệnh tương đương op(1,expr) rhs(expr) thực trả vế phải biểu thức expr, lệnh tương đương op(2,expr) Ví dụ: > > > * Lệnh lấy hệ số đa thức: Cú pháp:>coeff(p,x) Trong đó: - p đa thức chứa x - x biến Ý nghĩa: Lấy hệ số biểu thức p Ví dụ: > 12 CH1101015_Lê Thị Phúc Khoa Trang Tiểu luận: Lập trình Symbolic *Lệnh khai triển biểu thức đại số: Cú pháp:>expand(expr) Trong đó: - expr: biểu thức đại số Ví dụ: > *Lệnh chuyển đổi dạng biểu thức: Cú pháp:>convert(expr,form) Trong đó: - expr: biểu thức - form: kiểu liệu string, binary, decimal… Ví dụ: > 4BF > convert( 1.23456, fraction ); *Lệnh hiển thị giá trị biểu thức: Cú pháp:>print(expr) Trong đó: - expr: biểu thức CH1101015_Lê Thị Phúc Khoa Trang Tiểu luận: Lập trình Symbolic Ví dụ: > > > *Lệnh xuất biểu thức theo định dạng: Cú pháp:>printf(fmt,expr) Trong đó: -fmt: định dạng hiển thị -expr: biểu thức định dạng Ví dụ: > > x=3, y= -7 CH1101015_Lê Thị Phúc Khoa Trang Tiểu luận: Lập trình Symbolic Chương trình: a Giải biện luận phương trình bậc nhất: b Giải biện luận phương trình bậc hai: CH1101015_Lê Thị Phúc Khoa Trang 10 Tiểu luận: Lập trình Symbolic CH1101015_Lê Thị Phúc Khoa Trang 11 Tiểu luận: Lập trình Symbolic CH1101015_Lê Thị Phúc Khoa Trang 12 Tiểu luận: Lập trình Symbolic Ví dụ minh họa: a Giải biện luận theo tham số m phương trình bậc nhất: f(x) = x+12 = m+x; Ta gõ lệnh: > Kết sau: Neu m khong thuoc {-1, 1}: CH1101015_Lê Thị Phúc Khoa Trang 13 Tiểu luận: Lập trình Symbolic Neu m = -1: Neu m = 1: b Để giải biện luận theo tham số m phương trình bậc hai: f(x) = 2m* –( m-1) x + (m – 8) = Ta gõ lệnh: > GiaiPhuongTrinhBacHai(2m* –( m-1) x + (m – 8) = 0, x); Kết sau: + Neu m = 0: Phuong trinh co nghiem nhat + Neu m = -.16099766e-1 : Phuong trinh co nghiem kep + Neu m = 8.873242624 : Phuong trinh co nghiem kep + Neu m < -.16099766e-1 : Phuong trinh vo nghiem + Neu -.16099766e-1 < m < 8.873242624: Phuong trinh co hai nghiem phan biet + Neu 8.873242624 < m : CH1101015_Lê Thị Phúc Khoa Trang 14 Tiểu luận: Lập trình Symbolic Phuong trinh vo nghiem Kết giải biện luận theo m phương trình: f(x) = x2 – (m-1)x - (m + 5) = Ta gõ lệnh: Kết sau: + Neu m = -1.-4.472135954*I : Phuong trinh co nghiem kep + Neu m = -1.+4.472135954*I : Phuong trinh co nghiem kep + Neu m < -1.-4.472135954*I : Phuong trinh co hai nghiem phan biet + Neu -1.-4.472135954*I < m < -1.+4.472135954*I: Phuong trinh co hai nghiem phan biet + Neu -1.+4.472135954*I < m : Phuong trinh co hai nghiem phan biet III KẾT LUẬN Bài thu hoạch trình bày bước để lập trình Mapple cách viết thủ tục, cách gọi thực thi thủ tục Từ tảng xây dựng nên nhiều chương trình khác CH1101015_Lê Thị Phúc Khoa Trang 15 Tiểu luận: Lập trình Symbolic phục vụ cho công việc học tập nghiên cứu khoa học nhiều lĩnh vực c Tuy nhiên, nhiều hạn chế thân không nhiều thời gian việc học tập sử dụng chương trình nên tập cịn đơn giản nhiều sa i sót Nhưng qua giúp cho em hiểu thêm cơng cụ hỗ trợ tính tốn mạnh mẽ với thư viện phong phú để giả i toán lớn cách dễ dàng IV TÀI LIỆU THAM KHẢO [1] Tập tài liệu giảng dạy môn Lập trình Symbolic cho Trí tuệ nhân tạo thầy PGS.TS Đỗ Văn Nhơn – Đại học Công nghệ thông tin – Đại học Quốc gia TP.HCM [2] http://google.com.vn, http://mapplesoft.com [3] Mục Help chương trình Mapple v.16 CH1101015_Lê Thị Phúc Khoa Trang 16 ... Tiểu luận: Lập trình Symbolic Chương trình: a Giải biện luận phương trình bậc nhất: b Giải biện luận phương trình bậc hai: CH1101015_Lê Thị Phúc Khoa Trang 10 Tiểu luận: Lập trình Symbolic CH1101015_Lê... có hình thức lập trình hàm, có hỗ trợ đầy đủ cho lập trình truyền thống, theo kiểu mệnh lệnh CH1101015_Lê Thị Phúc Khoa Trang Tiểu luận: Lập trình Symbolic • Một điều lạ chương trình thương mại,...Tiểu luận: Lập trình Symbolic I GIỚI THIỆU MAPPLE – CƠNG CỤ LẬP TRÌNH SYMBOLIC Maple gói phần mềm toán học thương mại phục vụ cho nhiều mục đích Nó phát triển lần vào năm 1980 Nhóm Tính