Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 82 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
82
Dung lượng
1,46 MB
Nội dung
Số hóa bởi Trung tâm Học liệu - Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
ĐẠI HỌC THÁI NGUYÊN
TRƢỜNG ĐẠI HỌC SƢ PHẠM
NGUYỄN THỊ HỒNG PHƢỢNG
THUẬT TOÁNFRAME–STEWARTGIẢIBÀITOÁN
THÁP HÀNỘITỔNGQUÁT
LUẬN VĂN THẠC SĨ TOÁN HỌC
THÁI NGUYÊN - 2010
Số hóa bởi Trung tâm Học liệu - Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
ĐẠI HỌC THÁI NGUYÊN
TRƢỜNG ĐẠI HỌC SƢ PHẠM
NGUYỄN THỊ HỒNG PHƢỢNG
THUẬT TOÁNFRAME–STEWARTGIẢIBÀITOÁN
THÁP HÀNỘITỔNGQUÁT
LUẬN VĂN THẠC SĨ TOÁN HỌC
Chuyên ngành: Giải tích
Mã số: 60 46 01
Người hướng dẫn khoa học: PGS. TS. TẠ DUY PHƢỢNG
THÁI NGUYÊN - 2010
Số hóa bởi Trung tâm Học liệu - Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
1
MỤC LỤC
Trang
MỤC LỤC
LỜI NÓI ĐẦU 2
Chƣơng 1 4
TỔNG QUAN VỀ TRÒ CHƠI THÁPHÀNỘI 4
§1. Lịch sử trò chơi ThápHàNội 4
§2. Sơ lược về bàitoánthápHàNộitổng quát, các bàitoán cải biên và
các vấn đề toán học liên quan 15
Chƣơng 2: TRÒ CHƠI THÁPHÀNỘI 21
§1 Trò chơi thápHàNội và thuậtgiải đệ qui 21
§2 GiảibàitoánthápHàNội bằng biểu diễn trong hệ đếm cơ số 2 26
§3 Đồ thị HàNội 34
§4 GiảibàitoánThápHàNội trên máy tính 38
Chƣơng 3: BÀITOÁNTHÁPHÀNỘI VỚI BỐN CỌC (Trò chơi
Reve-The Reve’s Puzzle) 39
§1 Trò chơi ThápHàNội với bốn cọc 39
§2 Tính số bước chuyển tối ưu trong trò chơi ThápHàNội với bốn cọc 43
Chƣơng 4: BÀITOÁNTHÁPHÀNỘITỔNGQUÁT 52
§1 Tính số
()
p
Sn
trong thuậttoán Frame-Stewart cho trò chơi Tháp
Hà Nộitổngquát 52
§2 Đánh giá
()
p
Sn
68
§3 Sự tương đương của một số thuậttoángiảibàitoánThápHàNội
tổng quát 70
KẾT LUẬN 78
TÀI LIỆU THAM KHẢO 79
Số hóa bởi Trung tâm Học liệu - Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
2
LỜI NÓI ĐẦU
Trò chơi (Bài toán) ThápHàNội được phổ biến rộng rãi ở Paris năm
1883 bởi nhà toán học Edouard Lucas, là một bàitoánnổi tiếng thế giới, hiện
nay đang được nghiên cứu bởi rất nhiều nhà toán học và khoa học máy tính,
các chuyên gia giáo dục và y học, được đưa vào nhiều giáo trình tin học và
sách về trò chơi toán học như một ví dụ điển hình về thuậttoán đệ qui và lập
trình căn bản, nhưng hình như chưa được chú ý nghiên cứu ở Việt Nam. Mặc
dù trò chơi ThápHàNội có mặt trên khá nhiều trang WEB và giáo trình tiếng
Việt, số lượng bài viết tiếng Việt giới thiệu về trò chơi và bàitoánThápHà
Nội trên các tạp chí là rất ít và còn rất sơ lược (xem [1]-[6]), hình như chưa có
bài nghiên cứu tiếng Việt nào về bàitoánThápHà Nội, trong khi đó chỉ tính
riêng số bài báo nghiên cứu về bàitoánThápHàNội trong lĩnh vực Toán-Tin
học đã có đến hơn 450 bài với khoảng 250 bài với đầu đề có cụm từ "The
Tower of Hanoi", đăng trên hơn 100 tạp chí khoa học uy tín (trong [5] thống
kê số lượng bài báo khoa học viết về ThápHàNội là 464 bài). Đó là chưa kể
đến những bài viết về sử dụng bàitoánThápHàNội trong khoa học giáo dục
và y học. Trò chơi ThápHàNội thú vị đến mức nó đã được dùng làm đề tài
của một số luận án Tiến sĩ và luận văn cao học. Một hội thảo khoa học quốc
tế [21] với tên gọi Workshop on the Tower of Hanoi and Related Problems đã
được tổ chức năm 2005.
Bài toánThápHàNội không chỉ thú vị ở chỗ nó mang tên Hà Nội, thủ
đô của Việt nam, mà nó hấp dẫn các nhà Toán-Tin học bởi nó liên quan đến
nhiều vấn đề như giảithuật đệ qui, hệ đếm, tam giác Pascal, thảm Sierpinski,
lý thuyết đồ thị và chu trình Hamilton, ôtômát hữu hạn, độ phức tạp tính
toán, BàitoánThápHàNội gợi ý cho nhiều nghiên cứu trong khoa học
máy tính và toán học.
Luận văn Thuậttoán Frame-Stewart giảibàitoánThápHàNộitổng
quát có mục đích trình bày tổng quan về một thuậttoán quan trọng giảibài
toán ThápHàNội với số cọc bất kì.
Số hóa bởi Trung tâm Học liệu - Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
3
Luận văn gồm phần mở đầu, bốn Chương và phần tàiliệu tham khảo.
Chương 1. Tổng quan về trò chơi ThápHà Nội.
Chương 2. BàitoánThápHàNội cổ điển.
Chương 3. BàitoánThápHàNội với bốn cọc.
Chương 4. BàitoánThápHàNộitổng quát.
Chương 1 giới thiệu tổng quan về Trò chơi ThápHà Nội.
Lời giảiBàitoánThápHàNội cho ba cọc được trình bày trong Chương 2.
Sau hơn 100 năm, trò chơi ThápHàNội đã có những cải biên và tổng
quát hoá (trò chơi ThápHàNội xoay vòng, trò chơi ThápHàNội song song,
trò chơi ThápHàNội với nhiều cọc, ). Những cải biên và tổngquát hóa này
dẫn đến những vấn đề toán học thú vị, thậm chí dẫn tới nhiều bàitoán hiện
nay chưa có lời giải. Trong luận văn này, chúng tôi tập trung trình bày trong
Chương 3 và Chương 4 lời giải của bàitoánThápHà Nội, đó là Thuậttoán đệ
qui dạng Frame-Stewart giảibàitoánThápHàNộitổng quát.
Luận văn được hoàn thành dưới sự hướng dẫn tận tình của PGS.TS Tạ
Duy Phượng. Em xin bầy tỏ lòng biết ơn sâu sắc nhất đối với Thầy và xin
được cảm ơn Thầy đã cung cấp nhiều tàiliệu đồng thời cho phép sử dụng Bản
thảo cuốn sách của Thầy về ThápHà Nội.
Em xin cảm ơn các Thầy Cô của Đại học Thái Nguyên và Viện Toán
học đã tận tình giảng dạy em trong suốt quá trình học cao học.
Tôi xin cảm ơn khoa Toán trường ĐHSP Thái Nguyên, khoa Sau Đại
học trường ĐHSP Thái Nguyên đã quan tâm giúp đỡ, tạo điều kiện thuận lợi
cho tôi thực hiện kế hoạch học tập của mình.
Xin cảm ơn người thân, đồng nghiệp, bạn bè đã cổ vũ động viên tôi trong
suốt quá trình làm luận văn.
Thái Nguyên, 19.8.2010
Nguyễn Thị Hồng Phượng
Số hóa bởi Trung tâm Học liệu - Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
4
Chƣơng 1
TỔNG QUAN VỀ TRÒ CHƠI THÁPHÀNỘI
§1. Lịch sử trò chơi ThápHàNội
Bìa cuốn sách của E. Lucas xuất bản tại Paris năm 1895, trong đó có 4
trang (179-183) viết về trò chơi ThápHà Nội.
1.1 Truyền thuyết
Theo một truyền thuyết, liên tục suốt ngày đêm, các nhà tu hành của tòa
tháp Brahma trong thành Bernares (Ấn Độ) phải chuyển 64 đĩa vàng từ một
cọc này sang cọc khác của tòa tháp. Các đĩa có kích thước khác nhau và lúc
Số hóa bởi Trung tâm Học liệu - Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
5
đầu được đặt trên một trong ba cọc của tòa tháp theo thứ tự đĩa nhỏ ở trên, đĩa
lớn ở dưới. Đĩa trên cùng được chuyển sang cọc khác, mỗi lần chỉ di chuyển
một đĩa. Do tính dễ vỡ, đĩa lớn không được đặt lên trên đĩa nhỏ. Trong quá
trình di chuyển, có thể đặt đĩa lên một cọc trung gian. Khi công việc hoàn
thành, tòa tháp sẽ đổ, và lúc đó cũng là thời điểm kết thúc của vũ trụ với một
tiếng nổ khủng khiếp!
1.2 Lịch sử
Dựa trên truyền thuyết về tháp Brahma, và có thể, theo truyền thuyết về sự
tồn tại những ngôi tháp cổ đồng dạng với tháp Brahma trong vùng đất phật giáo
linh thiêng gần HàNội (Bắc Ninh?, Vĩnh Phúc?), Việt Nam, nhà toán học
người Pháp Edouard Lucas (quê ở Amiens) đã phổ biến Trò chơi ThápHàNội
ở Paris năm 1883 với tên giả là giáo sư N. Claus. Năm 1884, Parvile trong [14]
đã trình bày lời giảibàitoánThápHàNội và tiết lộ giáo sư N. Claus chính là
tên giả của nhà nghiên cứu lí thuyết số nổi tiếng Eduard Lucas.
Trên bìa của hộp đựng trò chơi sản xuất năm 1883 và trong cuốn sách
L’Arithméique Amusante, xuất bản tại Paris năm 1895 (sau khi Ông mất), chính
Edouard Lucas đã viết ([12], trang 179): “…la Tour d’Hanoi, véritable casse-
tête annamite…” (Tháp Hà Nội, một trò chơi trí tuệ của người Annam), nhưng
tại sao ông lại gọi trò chơi này là trò chơi ThápHàNội thì chưa có câu trả lời
thật rõ ràng.
Rất có thể (theo Edouard Lucas), trò chơi ThápHàNội “đã xuất hiện ở Đông
Á từ thế kỷ 19 hoặc trước đó. Các đĩa được làm bằng sứ ở Trung Quốc, Nhật Bản
và Đông Kinh (Bắc Kì, Việt Nam)”. Tuy nhiên, cho tới nay, các nhà lịch sử có lẽ
vẫn chưa tìm thấy các đĩa sứ của trò chơi thápHàNộitại châu Á. Những hộp đựng
trò chơi cũ nhất vẫn là hộp đựng các đĩa sản xuất tại Pháp năm 1883.
Theo David G. Pool [15], trích dẫn theo P. J. Hilton [10], sự tồn tại
những ngôi tháp gần HàNội (Việt Nam) là lí do để E. Lucas đã đặt tên cho
trò chơi của mình là Trò chơi ThápHà Nội.
Số hóa bởi Trung tâm Học liệu - Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
6
Có một giả định rằng: “nhà toán học đến thăm Việt Nam, ngắm cảnh Hồ
Gươm và bị quyến rũ bởi vẻ đẹp của Tháp Rùa nên đã đặt tên là Bàitoán
Tháp Hà Nội”. Nếu có tư liệu khẳng định nhà toán học nổi tiếng E. Lucas đã
đến HàNội từ trước năm 1883 (Pháp chiếm HàNội năm 1882) thì thật là thú
vị. Tuy nhiên, lúc đó E. Lucas đã ra khỏi quân đội và đang dạy học, vì vậy ít
có khả năng ông đã đến Hà Nội.
Cũng có lẽ Cột cờ HàNội đã gợi ý cho E.
Lucas đặt tên trò chơi của mình là ThápHà
Nội: “The Flag Tower of Hanoi may have
served as the inspiration for the name”. Cột cờ
Hà Nội có đáy gồm ba khối vuông xây chồng
lên nhau. Trò chơi ThápHàNội đơn giản nhất
cũng gồm ba đĩa tròn xếp chồng lên nhau. Cột
cờ HàNội xây năm 1805-1812, Tháp Rùa xây
năm 1886, trò chơi ThápHàNội xuất hiện ở
Paris 1883.
Có thể Pháp chiếm HàNội là đề tài thời sự
ở Paris vào những năm 1882-1883, và điều này
gợi ý E. Lucas đặt tên cho trò chơi của mình là
Tháp Hà Nội?
Trò chơi ThápHàNội vừa được phổ biến
đã được đón nhận rộng rãi vì sự đơn giản và hấp
dẫn của nó. Mặc dù chưa có câu trả lời rõ ràng
về lí do E. Lucas đặt tên cho trò chơi của mình
là trò chơi ThápHà Nội, người Việt Nam vẫn có
thể tự hào và cần quan tâm về trò chơi này.
Dưới đây là bìa của hộp đựng trò chơi
Tháp HàNội sản xuất lần đầu tiên tại Paris năm
1883 và hai tờ hướng dẫn qui tắc chơi. Đây là
những tư liệu quí về lịch sử trò chơi.
Số hóa bởi Trung tâm Học liệu - Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
7
Bìa của hộp đựng trò chơi ThápHàNội đƣợc bán lần đầu tại Paris
năm 1883.
Trên tờ bìa này có một hình tháp 10 tầng, cây tre, người Annam (Việt
Nam) và ghi rõ: La Tour d’Hanoϊ, Veritable casse-téte Annamite Jeu, rapporté
du Tonkin par le professeur N. Claus (de Siam) du college Mandarin Li-Sou-
Sian (Tháp Hà Nội, Trò chơi trí tuệ của người Annam, được giới thiệu bởi
giáo sư N. Claus (ở Siam), trường trung học Li-Sou-Sian).
Số hóa bởi Trung tâm Học liệu - Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
8
[...]... tính toán (thời gian mũ) của bàitoán với thuậtgiải đơn giản và tối ưu Một mở rộng tự nhiên của bàitoánThápHàNội với ba cọc là BàitoánThápHàNội với bốn (hoặc nhiều) cọc Theo một số tài liệu, chính tác giả của bàitoánThápHà Nội, E Lucas cũng là người đầu tiên xét bàitoán với nhiều cọc vào năm 1899 Năm 19021903 Henry Ernest Dudeney đã viết về bàitoánThápHàNội với bốn cọc trong hai bài. .. 2.2.2 BàitoánThápHàNội song song (parallel moving) Có thể chuyển các đĩa từ cọc này sang cọc khác trong cùng một thời gian 2.2.2 BàitoánThápHàNội hỗn hợp Kết hợp giữa bàitoánThápHàNội quay vòng với chuyển động song song Các cải biên của bàitoánThápHàNội đặt ra những bàitoán mới thú vị, có thể nói khó không kém bàitoán ban đầu 2.3 Một số vấn đề toán học liên quan đến bàitoánThápHà Nội. .. nhiêu lời giải tối ưu cho bài toán, thí dụ, với 1000 đĩa và 10 cọc Rất nhiều nghiên cứu bàitoánthápHàNội với tên gọi Đồ thị HàNội 2.3.1 Thuậttoángiải trò chơi ThápHàNội Trò chơi ThápHàNội và các cải biên của nó đặt ra những câu hỏi khá thú vị: Tìm thuậttoán tối ưu giải quyết trò chơi, đánh giá độ phức tạp của thuật toán, … Một thuật toán, có lẽ là quan trọng nhất, được trình bày trong luận văn... đã biết cách giải) Như vậy, lời giảibàitoán rất đơn giản: giảibàitoán n đĩa được đưa về bàitoán n 1 đĩa và bàitoán một đĩa Thuậtgiải đệ qui (có quan hệ mật thiết với phép qui nạp và công thức truy hồi trong toán học) được áp dụng để giải rất nhiều bàitoán Thí dụ, bàitoán Josephus; Bàitoán tính số Fibonacci;… Kí hiệu L ( n) là số lần chuyển đĩa tối ưu trong bàitoánthápHàNội với n đĩa... tâm Học liệu - Đại học Thái Nguyên http://www.lrc-tnu.edu.vn 14 Số hóa bởi Trung tâm Học liệu - Đại học Thái Nguyên http://www.lrc-tnu.edu.vn 15 §2 Sơ lƣợc về bàitoánthápHàNộitổng quát, các bàitoán cải biên và các vấn đề toán học liên quan Trò chơi ThápHàNội ngày càng được các nhà toán học quan tâm, Với sự phát triển của tin học, bàitoánthápHàNội lại càng thu hút sự chú ý của các nhà toán- tin... cải biên BàitoánThápHàNội có khá nhiều cải biên rất thú vị Mỗi qui tắc chơi mới lại làm trò chơi ThápHàNội thêm phong phú và lại xuất hiện thêm nhiều vấn đề toán học mới Dứới đây chúng tôi sơ lược liệt kê một số cải biên của trò chơi ThápHàNội Số hóa bởi Trung tâm Học liệu - Đại học Thái Nguyên http://www.lrc-tnu.edu.vn 19 2.2.1 BàitoánThápHàNội với vị trí bất kì BàitoánThápHàNội với... 1941 Các thuậttoán của Stewart và Frame cùng với một số thuậttoán cải biên khác đã được chứng minh là tương đương theo nghĩa số lần chuyển đĩa là bằng nhau (xem [11]) Vì vậy người ta thường gọi thuậttoán của hai ông hoặc các thuật toán cải biên tương tự là thuật toán Frame- Stewart Thuật toán Frame- Stewart cùng các thuật toán tương đương sẽ được trình bày trong Chương 3 và Chương 4 Thuật toán Stewart. .. học Nó trở thành ví dụ điển hình về phương pháp giải đệ qui và lập trình căn bản 2.1 BàitoánThápHàNộitổngquátBàitoánThápHàNội với ba cọc và n đĩa có thể giải được dễ dàng theo thuậtgiải đệ qui (xem Chương 2) Hơn nữa, có thể biết chính xác số lần cần chuyển tối ưu cho bàitoán với n đĩa là 2n 1 lần Vì vậy nó thường được dùng làm thí dụ kinh điển về lập trình căn bản và thuậtgiải đệ qui... Nội Nhiều bàitoán của toán học và tin học thú vị xuất hiện trong trò chơi ThápHàNội Dưới đây liệt kê một vài vấn đề chính 2.3.1 Đồ thị HàNội Các nhà toán học đã phát hiện ra rằng ThápHàNội có cùng bản chất với bàitoán tìm đường Hamilton (Hamilton Path) trên một hình giả phương cấp n ( n -Hypercube), một bàitoán cũng rất nổi tiếng Nhà toán học D.G Poole đã phát hiện ra Lược đồ HàNội -một tam... Học liệu - Đại học Thái Nguyên http://www.lrc-tnu.edu.vn 25 Thuậtgiải đệ qui bàitoánthápHàNội có thể phát biểu nhƣ sau Nếu n 1 hoặc n 2 thì bàitoángiải được ngay Giả sử đã biết cách giảibàitoán với n 1 đĩa Giảibàitoán cho n đĩa như sau: Chuyển n 1 đĩa trên cùng từ cọc A sang cọc B (theo giả thiết đã biết cách giải) Chuyển đĩa thứ n (dưới cùng trên cọc A) từ cọc A sang cọc C (Bài toán . 3. Bài toán Tháp Hà Nội với bốn cọc.
Chương 4. Bài toán Tháp Hà Nội tổng quát.
Chương 1 giới thiệu tổng quan về Trò chơi Tháp Hà Nội.
Lời giải Bài toán. chơi tháp Hà Nội và thuật giải đệ qui 21
§2 Giải bài toán tháp Hà Nội bằng biểu diễn trong hệ đếm cơ số 2 26
§3 Đồ thị Hà Nội 34
§4 Giải bài toán Tháp Hà