Các quan hệCho M = { x1,x2,...,xm } là m t t p h p các bi n có th l y giá tr trong các mi n xácộng ận xét ợc của bài toán ết vấn đề ển chương trình ấn đề ịnh lý về sự phân tích quá trình
Trang 1KHOA: KHOA H C MÁY TÍNH ỌC QUỐC GIA TP HỒ CHÍ MINH
BÁO CÁO MÔN H C ỌC QUỐC GIA TP HỒ CHÍ MINH
BI U DI N TRI TH C VÀ NG D NG ỂU DIỄN TRI THỨC VÀ ỨNG DỤNG ỄN TRI THỨC VÀ ỨNG DỤNG ỨC VÀ ỨNG DỤNG ỨC VÀ ỨNG DỤNG ỤNG
ỨNG DỤNG MẠNG TÍNH TOÁN XÂY DỰNG CHƯƠNG TRÌNH GIẢI TOÁN TỰ ĐỘNG
Khoá : 2012-2013
Trang 2Trước tiên, tôi xin gởi lời cảm ơn chân thành đến Thầy hướng dẫn của tôi,PGS.TS Đỗ Văn Nhơn Trong suốt quá trình làm báo cáo, Thầy đã giúp tôi đặt vấn đề,tìm hiểu vấn đề và giải quyết các vấn đề một cách khoa học
Tôi xin gởi lời cảm ơn chân thành đến quí thầy cô của khoa Khoa học Máytính, cũng như tất cả quý thầy cô của trường Đại Học Công Nghệ Thông Tin đã tậntình giảng dạy và truyền đạt kiến thức cho tôi trong suốt quá trình học tập
TP Hồ Chí Minh, tháng 1 năm 2013
Nguyễn Khắc Mẫn
Trang 3NHẬN XÉT (Của giảng viên hướng dẫn)
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
Trang 4………
………
….………
M c L c ục Lục ục Lục I M NG TÍNH TOÁNẠNG TÍNH TOÁN 3
1 M ng tính toán là gì ?ạng tính toán là gì ? 3
1.1 Các quan hện: 3
1.2 M ng tính toán và các kí hi uạng tính toán là gì ? ện: 4
2 Bài toán trên m ng tính toánạng tính toán là gì ? 6
3 Gi i quy t v n đảng viên hướng dẫn : ết vấn đề ấn đề ề 8
3.1 Tính gi i đảng viên hướng dẫn : ược của bài toán ủa bài toánc c a bài toán 8
3.2 L i gi i c a bài toánời giải của bài toán ảng viên hướng dẫn : ủa bài toán 9
3.3 Đ nh lý v s phân tích quá trình gi iịnh lý về sự phân tích quá trình giải ề ực hiện: ảng viên hướng dẫn : .15
II NG D NG C A M NG TÍNH TOÁN XÂY D NG CHỨC VÀ ÚNG DỤNG ỤNG ỦA MẠNG TÍNH TOÁN XÂY DỰNG CHƯƠNG TRÌNH GIẢI TOÁN TỰ ẠNG TÍNH TOÁN ỰNG CHƯƠNG TRÌNH GIẢI TOÁN TỰ ƯƠNG TRÌNH GIẢI TOÁN TỰ NG TRÌNH GI I TOÁN T ẢI TOÁN TỰ ỰNG CHƯƠNG TRÌNH GIẢI TOÁN TỰ Đ NGỘNG 16
1 Đ t v n đặt vấn đề ấn đề ề 16
2 Xây d ng package m ng tính toánực hiện: ạng tính toán là gì ? 17
2.1 Gi i thi u packageớng dẫn : ện: 17
2.2 Các hàm trong package 17
2.3 Hướng dẫn : ng d n s d ng packageẫn : ử dụng package ụng package 18
3 OpenMaple 19
4 Thi t kê chết vấn đề ương trình giải toán tự độngng trình gi i toán t đ ngảng viên hướng dẫn : ực hiện: ộng 20
4.1 Xác đ nh ph m vi bài toánịnh lý về sự phân tích quá trình giải ạng tính toán là gì ? 20
4.2 Xây d ng c u trúc chực hiện: ấn đề ương trình giải toán tự độngng trình 20
4.3 Hướng dẫn : ng d n s d ng chẫn : ử dụng package ụng package ương trình giải toán tự độngng trình 21
4.3.1 Giao diên chương trình giải toán tự độngng trình 21
4.3.2 Hướng dẫn : ng d n s d ngẫn : ử dụng package ụng package 21
4.4 Hướng dẫn : ng m r ng phát tri n chở rộng phát triển chương trình ộng ển chương trình ương trình giải toán tự độngng trình 23
III NH N XÉT VÀ CÁC HẬN XÉT VÀ CÁC HƯỚNG MỞ RỘNG PHÁT TRIỂN MẠNG TÍNH TOÁN ƯỚNG MỞ RỘNG PHÁT TRIỂN MẠNG TÍNH TOÁNNG M R NG PHÁT TRI N M NG TÍNH TOÁNỞ RỘNG PHÁT TRIỂN MẠNG TÍNH TOÁN ỘNG ỂU DIỄN TRI THỨC VÀ ÚNG DỤNG ẠNG TÍNH TOÁN 24
1 Nh n xétận xét 24
1.1 u đi mƯ ển chương trình 24
Trang 51.2 Khuy t đi mết vấn đề ển chương trình 24
2 Các hướng dẫn : ng m r ng phát tri n m ng tính toánở rộng phát triển chương trình ộng ển chương trình ạng tính toán là gì ? 24
IV TÀI LI U THAM KH OỆU THAM KHẢO ẢI TOÁN TỰ 25
BÁO CÁO BI U DI N TRI TH C VÀ ÚNG D NG ỂU DIỄN TRI THỨC VÀ ỨNG DỤNG ỄN TRI THỨC VÀ ỨNG DỤNG ỨC VÀ ỨNG DỤNG ỤNG
Nguy n Kh c M n ễn Khắc Mẫn ắc Mẫn ẫn
Trười giải của bài toánng Đ i H c Công Ngh Thông Tin - Khoa Khoa H c Máy Tínhạng tính toán là gì ? ọc Công Nghệ Thông Tin - Khoa Khoa Học Máy Tính ện: ọc Công Nghệ Thông Tin - Khoa Khoa Học Máy Tính
L p: CH06 – MSHV: CH1101102ớng dẫn :
Tóm t t ắt : Mô hình m ng tính toán đ ạng tính toán được đưa ra vào năm 1995 bởi Đỗ Văn Nhơn Đây là ược đưa ra vào năm 1995 bởi Đỗ Văn Nhơn Đây là c đ a ra vào năm 1995 b i Đ Văn Nh n Đây là ư ởi Đỗ Văn Nhơn Đây là ỗ Văn Nhơn Đây là ơn Đây là
m t mô hình bi u di n tri th c đ gi i quy t các v n đ gi i toán t đ ng Trong bài ức để giải quyết các vấn đề giải toán tự động Trong bài ải quyết các vấn đề giải toán tự động Trong bài ết các vấn đề giải toán tự động Trong bài ấn đề giải toán tự động Trong bài ề giải toán tự động Trong bài ải quyết các vấn đề giải toán tự động Trong bài ự động Trong bài báo cáo này chúng ta sẽ tìm hi u v mô hình m ng tính toán và m t s thu t toán gi i ề giải toán tự động Trong bài ạng tính toán được đưa ra vào năm 1995 bởi Đỗ Văn Nhơn Đây là ố thuật toán giải ật toán giải ải quyết các vấn đề giải toán tự động Trong bài quy t v n đ trên m ng tính toán Bên c nh đó chúng ta cũng sẽ xem xét qua m t s ng ết các vấn đề giải toán tự động Trong bài ấn đề giải toán tự động Trong bài ề giải toán tự động Trong bài ạng tính toán được đưa ra vào năm 1995 bởi Đỗ Văn Nhơn Đây là ạng tính toán được đưa ra vào năm 1995 bởi Đỗ Văn Nhơn Đây là ố thuật toán giải ức để giải quyết các vấn đề giải toán tự động Trong bài
d ng c a m ng tính toán trong th c t Cu i cùng trong bài báo cáo này sẽ đ a ra các ạng tính toán được đưa ra vào năm 1995 bởi Đỗ Văn Nhơn Đây là ự động Trong bài ết các vấn đề giải toán tự động Trong bài ố thuật toán giải ư
nh n xét và h ật toán giải ướng phát triển mở rộng mạng tính toán ng phát tri n m r ng m ng tính toán ởi Đỗ Văn Nhơn Đây là ạng tính toán được đưa ra vào năm 1995 bởi Đỗ Văn Nhơn Đây là
I M NG TÍNH TOÁN ẠI HỌC QUỐC GIA TP HỒ CHÍ MINH
Bài toán đ t ra: Cho trặt vấn đề ướng dẫn : ận xétc t p các bi n A và B h i có m t thu t toán nào đ tìm l iết vấn đề ỏi có một thuật toán nào để tìm lời ộng ận xét ển chương trình ời giải của bài toán
gi i cho bài toán A -> B không?ảng viên hướng dẫn :
Câu tr l i là có: Đ i v i d ng bài toán nh trên ta có th dùng mô hình m ng tínhảng viên hướng dẫn : ời giải của bài toán ối với dạng bài toán như trên ta có thể dùng mô hình mạng tính ớng dẫn : ạng tính toán là gì ? ư ển chương trình ạng tính toán là gì ?toán đ bi u di n và x lý tri th c cùng v i nh ng thu t toán suy di n đ tìm l i gi i ển chương trình ển chương trình ễn Khắc Mẫn _ CH1101102 ử dụng package ức cùng với những thuật toán suy diễn để tìm lời giải ớng dẫn : ững thuật toán suy diễn để tìm lời giải ận xét ễn Khắc Mẫn _ CH1101102 ển chương trình ời giải của bài toán ảng viên hướng dẫn :
1 M ng tính toán là gì ? ạng tính toán là gì ?
M ng tính toán là m t d ng bi u di n tri th c có th dùng bi u di n các tri th cạng tính toán là gì ? ộng ạng tính toán là gì ? ển chương trình ễn Khắc Mẫn _ CH1101102 ức cùng với những thuật toán suy diễn để tìm lời giải ển chương trình ển chương trình ễn Khắc Mẫn _ CH1101102 ức cùng với những thuật toán suy diễn để tìm lời giải
v các v n đ tính toán và đề ấn đề ề ược của bài toánc áp d ng m t cách có hi u qu đ gi i quy t m t sụng package ộng ện: ảng viên hướng dẫn : ển chương trình ảng viên hướng dẫn : ết vấn đề ộng ối với dạng bài toán như trên ta có thể dùng mô hình mạng tính
d ng bài toán ạng tính toán là gì ? M i m ng tính toán là m t m ng ng nghĩa ch a các bi n và nh ng quan ỗ Văn Nhơn Đây là ạng tính toán được đưa ra vào năm 1995 bởi Đỗ Văn Nhơn Đây là ạng tính toán được đưa ra vào năm 1995 bởi Đỗ Văn Nhơn Đây là ữ nghĩa chứa các biến và những quan ức để giải quyết các vấn đề giải toán tự động Trong bài ết các vấn đề giải toán tự động Trong bài ữ nghĩa chứa các biến và những quan
h có th cài đ t và s d ng đ ệ có thể cài đặt và sử dụng được cho việc tính toán ặt và sử dụng được cho việc tính toán ử dụng được cho việc tính toán ược đưa ra vào năm 1995 bởi Đỗ Văn Nhơn Đây là c cho vi c tính toán ệ có thể cài đặt và sử dụng được cho việc tính toán Có th nói r ng m ng tính toán làển chương trình ằng mạng tính toán là ạng tính toán là gì ?
m t s t ng quát hoá c a ki u d li u tr u tộng ực hiện: ủa bài toán ển chương trình ững thuật toán suy diễn để tìm lời giải ện: ừu tượng có khả năng tự xây dựng các hàm ược của bài toánng có kh năng t xây d ng các hàmảng viên hướng dẫn : ực hiện: ực hiện: dùng cho vi c t ng h p thành các chện: ợc của bài toán ương trình giải toán tự độngng trình
Trang 61.1 Các quan hệ
Cho M = { x1,x2, ,xm } là m t t p h p các bi n có th l y giá tr trong các mi n xácộng ận xét ợc của bài toán ết vấn đề ển chương trình ấn đề ịnh lý về sự phân tích quá trình giải ề
đ nh tịnh lý về sự phân tích quá trình giải ương trình giải toán tự độngng ng Dức cùng với những thuật toán suy diễn để tìm lời giải 1,D2, ,Dm Đ i v i m i quan h R ối với dạng bài toán như trên ta có thể dùng mô hình mạng tính ớng dẫn : ỗi quan hệ R ện: D1xD2x xDm trên các t p h pận xét ợc của bài toán
D1,D2, ,Dm ta nói r ng quan h n y liên k t các bi n xằng mạng tính toán là ện: ầy liên kết các biến x ết vấn đề ết vấn đề 1,x2, ,xm, và ký hi u là R(xện: 1,x2, ,xm)hay v n t t là R(x) (ký hi u x dùng đ ch b bi n < xắc Mẫn _ CH1101102 ắc Mẫn _ CH1101102 ện: ển chương trình ỉ bộ biến < x ộng ết vấn đề 1,x2, ,xm >) Quan h R(x) xác đ nhện: ịnh lý về sự phân tích quá trình giải
m t (hay m t s ) ánh x : ộng ộng ối với dạng bài toán như trên ta có thể dùng mô hình mạng tính ạng tính toán là gì ? f R,u,v : D u D v trong đó u,v là các b bi n và u ộng ết vấn đề x, v x; Du và
Dv là tích c a các mi n xác đ nh tủa bài toán ề ịnh lý về sự phân tích quá trình giải ương trình giải toán tự độngng ng c a các bi n trong u và trong v.ức cùng với những thuật toán suy diễn để tìm lời giải ủa bài toán ết vấn đề
Ta có th th y r ng quan h R(x) có th đển chương trình ấn đề ằng mạng tính toán là ện: ển chương trình ược của bài toánc bi u di n b i m t ánh x fển chương trình ễn Khắc Mẫn _ CH1101102 ở rộng phát triển chương trình ộng ạng tính toán là gì ? R,u,v v i uớng dẫn :
v = x, và ta vi t : ết vấn đề f R,u,v : u v hay v n t t là:ắc Mẫn _ CH1101102 ắc Mẫn _ CH1101102 f : u v.
Đ i v i các quan h dùng cho vi c tính toán, cách ký hi u trên bao hàm ý nghĩa nhối với dạng bài toán như trên ta có thể dùng mô hình mạng tính ớng dẫn : ện: ện: ện: ư
là m t hàm: ta có th tính động ển chương trình ược của bài toánc giá tr c a các bi n thu c v khi bi t định lý về sự phân tích quá trình giải ủa bài toán ết vấn đề ộng ết vấn đề ược của bài toánc giá tr c a cácịnh lý về sự phân tích quá trình giải ủa bài toán
bi n thu c u.ết vấn đề ộng
Trong ph n sau ta xét các quan h xác đ nh b i các hàm có d ng: f : u ầy liên kết các biến x ện: ịnh lý về sự phân tích quá trình giải ở rộng phát triển chương trình ạng tính toán là gì ? v, trong đó
u v = (t p r ng) Đ c bi t là các ận xét ỗi quan hệ R ặt vấn đề ện: quan h đ i x ng ệ đối xứng ối xứng ứng có h ng (rank) b ng m t sạng tính toán là gì ? ằng mạng tính toán là ộng ối với dạng bài toán như trên ta có thể dùng mô hình mạng tínhnguyên dương trình giải toán tự độngng k Đó là các quan h mà ta có th tính đện: ển chương trình ược của bài toánc k bi n b t kỳ t m-k bi n kiaết vấn đề ấn đề ừu tượng có khả năng tự xây dựng các hàm ết vấn đề( đây x là b g m m bi n < x1,x2, ,xm >) Ngoài ra, trong trở rộng phát triển chương trình ộng 3 ết vấn đề ười giải của bài toánng h p c n nói rõ ta vi tợc của bài toán ầy liên kết các biến x ết vấn đề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,ối với dạng bài toán như trên ta có thể dùng mô hình mạng tính ớng dẫn : ện: ảng viên hướng dẫn : ối với dạng bài toán như trên ta có thể dùng mô hình mạng tính ức cùng với những thuật toán suy diễn để tìm lời giải ạng tính toán là gì ?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ấn đề ển chương trình ảng viên hướng dẫn : ử dụng package ện: ịnh lý về sự phân tích quá trình giải ấn đề ộng
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ớng dẫn : ận xét ết vấn đề ận xét ết vấn đề ọc Công Nghệ Thông Tin - Khoa Khoa Học Máy Tính ạng tính toán là gì ? ện: ầy liên kết các biến x ện:
đ i x ng xác đ nh m t hàm, hay g i v n t t là ối với dạng bài toán như trên ta có thể dùng mô hình mạng tính ức cùng với những thuật toán suy diễn để tìm lời giải ịnh lý về sự phân tích quá trình giải ộng ọc Công Nghệ Thông Tin - Khoa Khoa Học Máy Tính ắc Mẫn _ CH1101102 ắc Mẫn _ CH1101102 quan h không đ i x ng ệ đối xứng ối xứng ứng
Ta có th vẽ hình bi u di n cho các quan h đ i x ng và các quan h không đ iển chương trình ển chương trình ễn Khắc Mẫn _ CH1101102 ện: ối với dạng bài toán như trên ta có thể dùng mô hình mạng tính ức cùng với những thuật toán suy diễn để tìm lời giải ện: ối với dạng bài toán như trên ta có thể dùng mô hình mạng tính
x ng (xác đ nh m t hàm) nh trong hình 1ức cùng với những thuật toán suy diễn để tìm lời giải ịnh lý về sự phân tích quá trình giải ộng ư
Quan h đ i x ng có h ng kện: ối với dạng bài toán như trên ta có thể dùng mô hình mạng tính ức cùng với những thuật toán suy diễn để tìm lời giải ạng tính toán là gì ? Quan h không đ i x ng có h ng kện: ối với dạng bài toán như trên ta có thể dùng mô hình mạng tính ức cùng với những thuật toán suy diễn để tìm lời giải ạng tính toán là gì ?
Trang 7Hình 1: Biểu diễn quan hệ đối xứng và quan hệ không đối xứng
1.2 M ng tính toán và các kí hi u ạng tính toán là gì ? ệ
Nh đã nói trên, ta sẽ xem xét các m ng tính toán bao g m m t t p h p các bi nư ở rộng phát triển chương trình ạng tính toán là gì ? 3 ộng ận xét ợc của bài toán ết vấn đề
M và m t t p h p các quan h (tính toán) F trên các bi n Trong trộng ận xét ợc của bài toán ện: ết vấn đề ười giải của bài toánng h p t ng quátợc của bài toán
Trang 8f2 : F hd=Gm1*m2
r2
f3 : Fdh=k*l
…
các quan hệ nầy đều là các quan hệ đối xứng có hạng 1
Như vậy tập biến và tập quan hệ của mạng tính toán này là :
M = P, Fdh G, m, g, k, l }
F = f1, f2, f3, }
2 Bài toán trên m ng tính toán ạng tính toán là gì ?
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óộng ạng tính toán là gì ? ận xét ết vấn đề ận xét ện: ảng viên hướng dẫn : ử dụng package
m t t p bi n A ộng ận xét ết vấn đề M đã được của bài toánc xác đ nh (t c là t p g m các bi n đã bi t trịnh lý về sự phân tích quá trình giải ức cùng với những thuật toán suy diễn để tìm lời giải ận xét 3 ết vấn đề ết vấn đề ướng dẫn : c giá tr ), vàịnh lý về sự phân tích quá trình giải
B là m t t p bi n b t kỳ trong M.ộng ận xét ết vấn đề ấn đề
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áchkhá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ủacá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 Bnhư 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 (hay tập biến cần tính) củavấn đề Trường hợp tập B chỉ gồm có một phần tử b, ta viết vắn tắt bài toán trên là A b
Trang 9Định nghĩa 1:
Bài toán A B được của bài toánc g i làọc Công Nghệ Thông Tin - Khoa Khoa Học Máy Tính gi i đ ải được ược khi có th tính toán đ c ển chương trình ược của bài toánc giá tr các bi nịnh lý về sự phân tích quá trình giải ết vấ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ộng ấn đề ừu tượng có khả năng tự xây dựng các hàm ảng viên hướng dẫn : ết vấn đề ằng mạng tính toán là ộng ện: 1, f2, , fk} F là
m t ộng l i gi i ời giải ải được c a bài toán A ủa bài toán B n u nh ta l n lết vấn đề ư ầy liên kết các biến x ược của bài toánt áp d ng các quan h fi (i=1, ,k)ụng package ện:
xu t phát t gi thi t A thì sẽ tính đấn đề ừu tượng có khả năng tự xây dựng các hàm ảng viên hướng dẫn : ết vấn đề ược của bài toánc các bi n thu c B L i gi i ết vấn đề ộng ời giải của bài toán ảng viên hướng dẫn : f1, f2, , fk } được của bài toán ọc Công Nghệ Thông Tin - Khoa Khoa Học Máy Tínhc g i
là l i gi i t t ời giải ải được ối xứng n u không th b b t m t s bết vấn đề ển chương trình ỏi có một thuật toán nào để tìm lời ớng dẫn : ộng ối với dạng bài toán như trên ta có thể dùng mô hình mạng tính ướng dẫn : c tính toán trong quá trình gi i, t c làảng viên hướng dẫn : ức cùng với những thuật toán suy diễn để tìm lời giải không th b b t m t s quan h trong l i gi i L i gi i đển chương trình ỏi có một thuật toán nào để tìm lời ớng dẫn : ộng ối với dạng bài toán như trên ta có thể dùng mô hình mạng tính ện: ời giải của bài toán ảng viên hướng dẫn : ời giải của bài toán ảng viên hướng dẫn : ược của bài toánc g i là ọc Công Nghệ Thông Tin - Khoa Khoa Học Máy Tính l i gi i t i u ời giải ải được ối xứng ư khi
nó có s bối với dạng bài toán như trên ta có thể dùng mô hình mạng tính ướng dẫn : c tính toán ít nh t, t c là s quan h áp d ng trong tính toán là ít nh t ấn đề ức cùng với những thuật toán suy diễn để tìm lời giải ối với dạng bài toán như trên ta có thể dùng mô hình mạng tính ện: ụng package ấn đề
Vi c tìm l i gi i cho bài toán là vi c tìm ra m t dãy quan h đ có th áp d ng tínhện: ời giải của bài toán ảng viên hướng dẫn : ện: ộng ện: ển chương trình ển chương trình ụng package
ra được của bài toánc B t A Đi u n y cũng có nghĩa là tìm ra đừu tượng có khả năng tự xây dựng các hàm ề ầy liên kết các biến x ược của bài toánc m t quá trình tính toán đ gi iộng ển chương trình ảng viên hướng dẫn : bài toán
Định nghĩa 2 :
Cho D = { f1, f2, , fk } là m t dãy quan h c a m ng tính toán (M,F), A là m t t p conộng ện: ủa bài toán ạng tính toán là gì ? ộng ận xét
c a M Ta nói dãy quan h D là ủa bài toán ện: áp d ng đ ụng được ược trên t p A khi và ch khi ta có th l n c ận xét ỉ bộ biến < x ển chương trình ầy liên kết các biến x
lược của bài toánt áp d ng đụng package ược của bài toánc các quan h fện: 1, f2, , fk xu t phát t gi thi t A.ấn đề ừu tượng có khả năng tự xây dựng các hàm ảng viên hướng dẫn : ết vấn đề
M(fk), và ký hiệu Ak 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
Thuật toán tính D(A) :
Trang 103 Gi i quy t v n đ ải quyết vấn đề ết vấn đề ấn đề ề
3.1 Tính gi i đ ải quyết vấn đề ược của bài toán ủa bài toán c c a bài toán
Trong m c n y chúng ta nêu lên m t khái ni m có liên quan đ n tính gi i đụng package ầy liên kết các biến x ộng ện: ết vấn đề ảng viên hướng dẫn : ược của bài toán ủa bài toánc c a
v n đ trên m t m ng tính toán : bao đóng c a m t t p h p bi n trên m t m ng tínhấn đề ề ộng ạng tính toán là gì ? ủa bài toán ộng ận xét ợc của bài toán ết vấn đề ộng ạng tính toán là gì ?toán
Định nghĩa 1:
Cho m ng tính toán (M,F) và A là m t t p con c a M Ta có th th y r ng có duyạng tính toán là gì ? ộng ận xét ủa bài toán ển chương trình ấn đề ằng mạng tính toán là
nh t m t t p h p B l n nh t ấn đề ộng ận xét ợc của bài toán ớng dẫn : ấn đề M sao cho bài toán A B là gi i đảng viên hướng dẫn : ược của bài toánc, và t p h p B n yận xét ợc của bài toán ầy liên kết các biến x
được của bài toánc g i là ọc Công Nghệ Thông Tin - Khoa Khoa Học Máy Tính bao đóng c a A trên mô hình (M,F) M t cách tr c quan, có th nói baoủa bài toán ộng ực hiện: ển chương trìnhđóng c a A là s m r ng t i đa c a A trên mô hình (M,F) Ký hi u bao đóng c a A là Ā, ủa bài toán ực hiện: ở rộng phát triển chương trình ộng ối với dạng bài toán như trên ta có thể dùng mô hình mạng tính ủa bài toán ện: ủa bài toán
Định lý 1 Trên một mạng tính toán (M,F), bài toán A B là giải được khi và chỉ khi B Ā
T đ nh lý n y, ta có th ki m tra tính gi i đừu tượng có khả năng tự xây dựng các hàm ịnh lý về sự phân tích quá trình giải ầy liên kết các biến x ển chương trình ển chương trình ảng viên hướng dẫn : ược của bài toán ủa bài toánc c a bài toán A B b ng cách tínhằng mạng tính toán làbao đóng c a t p A r i xét xem B có bao hàm trong Ā hay khôngủa bài toán ận xét 3
Định lý 2 Cho một mạng tính toán (M,F), A, B là hai tập con của M Ta có các điều sau đây
là tương đương:
(1) B Ā
(2) Có một dãy quan hệ D = f1, f2, , fk F thỏa các điều kiện :
(a) D áp được trên A
Trang 11(b) D(A) B.
Qua các đ nh lý trên, ta th y r ng vi c xác đ nh bao đóng c a m t t p bi n trên môịnh lý về sự phân tích quá trình giải ấn đề ằng mạng tính toán là ện: ịnh lý về sự phân tích quá trình giải ủa bài toán ộng ận xét ết vấn đềhình tính toán là c n thi t Dầy liên kết các biến x ết vấn đề ướng dẫn : i đây là thu t toán cho phép xác đ nh bao đóng c a t pận xét ịnh lý về sự phân tích quá trình giải ủa bài toán ận xét
h p A ợc của bài toán M Trong thu t toán n y chúng ta th áp d ng các quan h f ận xét ầy liên kết các biến x ử dụng package ụng package ện: F đ tìm d nển chương trình ầy liên kết các biến x
nh ng bi n thu c M có th tính đững thuật toán suy diễn để tìm lời giải ết vấn đề ộng ển chương trình ược của bài toán ừu tượng có khả năng tự xây dựng các hàmc t A; cu i cùng sẽ đối với dạng bài toán như trên ta có thể dùng mô hình mạng tính ược của bài toánc bao đóng c a A.ủa bài toán
Thuật toán tìm bao đóng của tập A M :
Trang 123.2 L i gi i c a bài toán ời giải của bài toán ải quyết vấn đề ủa bài toán
Ở RỘNG PHÁT TRIỂN MẠNG TÍNH TOÁN ịnh lý về sự phân tích quá trình giải ảng viên hướng dẫn : ược của bài toán ủa bài toán ết vấn đề
bày cách tìm ra l i gi i cho bài toán A ời giải của bài toán ảng viên hướng dẫn : B trên m ng tính toán (M,F) ạng tính toán là gì ?
Mệnh đề : Dãy quan hệ D là một lời giải của bài toán A B khi và chỉ khi D áp dụng được
trên A và D(A) B
Do m nh đ trên, đ tìm m t l i gi i ta có th làm nh sau: Xu t phát t gi thi tện: ề ển chương trình ộng ời giải của bài toán ảng viên hướng dẫn : ển chương trình ư ấn đề ừu tượng có khả năng tự xây dựng các hàm ảng viên hướng dẫn : ết vấn đề
A, ta th áp d ng các quan h đ m r ng d n t p các bi n có giá tr đử dụng package ụng package ện: ển chương trình ở rộng phát triển chương trình ộng ầy liên kết các biến x ận xét ết vấn đề ịnh lý về sự phân tích quá trình giải ược của bài toánc xác đ nh; vàịnh lý về sự phân tích quá trình giảiquá 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ầy liên kết các biến x ạng tính toán là gì ? ộng ực hiện: ề ịnh lý về sự phân tích quá trình giải ận xét ết vấn đề ết vấn đề ạng tính toán là gì ?
đ n t p bi n B Dết vấn đề ận xét ết vấn đề ướng dẫn : i đây là thu t toán tìm m t l i gi i cho bài toán A ận xét ộng ời giải của bài toán ảng viên hướng dẫn : B trên m ngạng tính toán là gì ?tính toán (M,F)
Thuật toán tìm một lời giải cho bài toán A B:
Nh pận xét : M ng tính toán (M,F),ạng tính toán là gì ?
t p gi thi t A ận xét ảng viên hướng dẫn : ết vấn đề M,
t p bi n c n tính B ận xét ết vấn đề ầy liên kết các biến x M
Xu tấn đề : l i gi i cho bài toán A ời giải của bài toán ảng viên hướng dẫn : B
Thu t toánận xét :
1 Solution empty; // Solution là dãy các quan h sẽ áp d ngện: ụng package
2 if B A then
Solution_found true; // bi n Solution_found = true khi bài toánết vấn đề
là gi i đảng viên hướng dẫn : ược của bài toánc
goto 4;
Trang 13else
Solution_found false;
3 Repeat
Aold A;
Ch n ra m t f ọc Công Nghệ Thông Tin - Khoa Khoa Học Máy Tính ộng F ch a xem xét;ư
while not Solution_found and (ch n đọc Công Nghệ Thông Tin - Khoa Khoa Học Máy Tính ược của bài toánc f) do begin
if ( f đ i x ng ối với dạng bài toán như trên ta có thể dùng mô hình mạng tính ức cùng với những thuật toán suy diễn để tìm lời giải and 0 < Card (M(f) \ A) r(f) ) or ( f không đ iối với dạng bài toán như trên ta có thể dùng mô hình mạng tính
x ng ức cùng với những thuật toán suy diễn để tìm lời giải and M(f) \ A v(f) ) then
4 if not Solution_found then
Bài toán không có l i gi i;ời giải của bài toán ảng viên hướng dẫn :
Trang 14Định lý Cho D= f1, f2, , fm là một lời giải của bài toán A B Ưùng với mỗi i=1, ,mđặt Di = f1, f2, , fi , D0 = Ta xây dựng một họ các dãy con Sm, Sm-1, , S2, S1 của dãy
D như sau :
Sm = nếu Dm-1 là một lời giải,
Sm = fm nếu Dm-1 không là một lời giải,
Si = Si+1 nếu Di-1 Si+1 là một lời giải,
Si = fi Si+1 nếu Di-1 Si+1 không là một lời giải,với mọi i = m-1, m-2, , 2, 1.Khi đó ta có:
(1) Sm Sm-1 S2 S1
(2) Di-1 Si là một lời giải của bài toán A B với mọi i=m, , 2, 1
(3) Nếu S’i là một dãy con thật sự của Si thì Di-1 S’i không phải là một lời giải củabài toán A B với mọi i
(4) S1 là một lời giải tốt của bài toán A B
Từ định lý trên ta có một thuật toán tìm lời giải tốt từ một lời giải đã biết sau đây:
Thuật toán tìm một lời giải tốt từ một lời giải đã biết.