Đề tài Tìm hiểu lý thuyết hình học Fractal và ứng dụng trong việc cài đặt một số đường, mặt Fractal phổ biến

MỤC LỤC I. TỔNG QUAN VỀ HÌNH HỌC FRACTAL 1. Sự ra đời và phát triển lý thuyết về hình học fractal 2. Ứng dụng của hình học fractal a) Ứng dụng trong vấn đề tạo nh bằng máy tính b) Công nghệ nén nhfractal c) Ứng dụng trong khoa học cơ b n 3. Các kiến thức cơ sở của lý thuyết hình học fractal a) Độ đofra ctal b) Hệ hàm lặp IFS II. MỘT SỐ HỌĐƯỜNG CƠ BẢN 1. Họđường Vonkock 2. Họđường Peano 3. Đường Sierpinski III. CÁC TẬP FRACTAL PHỔ BIẾN 1. Tập Maldelbrot a) Tìm hiểu vấn đề b) Công thức toán học c) Cài đặt 2. Tập Julia a) Tìm hiểu vấn đề b) Công thức toán học c) Cài đặt 3. Tập Phoenix a) Tìm hiểu vấn đề b) Công thức toán học c) Cài đặt IV. KẾT LUẬN & TÀI LIỆU THAM KHẢO 1. Kết luận 2. Tài liệu tham khảo

pdf32 trang | Chia sẻ: maiphuongtl | Lượt xem: 2279 | Lượt tải: 0download
Bạn đang xem trước 20 trang tài liệu Đề tài Tìm hiểu lý thuyết hình học Fractal và ứng dụng trong việc cài đặt một số đường, mặt Fractal phổ biến, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN KHOA CÔNG NGHỆ THÔNG TIN …:: dc ::… BÁO CÁO ĐỀ TÀI : TÌM HIỂU LÝ THUYẾT HÌNH HỌC FRACTAL VÀ ỨNG DỤNG TRONG VIỆC CÀI ĐẶT MỘT SỐ ĐƯỜNG, MẶT FRACTAL PHỔ BIẾN Giảng viên hướng dẫn: Th.s Bùi Tiến Lên Sinh viên thực hiện: Phạm Trọng Tôn (0012181) Nguyễn Minh Đức (0012147) - TP HCM 4/2003 - “Chúng em xin chân thành cảm ơn Thạc sĩ Bùi Tiến Lên đã tin tưởng và giao chúng em thực hiện đề tài này. Cảm ơn tới những người thân trong gia đình, những người bạn đã là chỗ dựa tinh thần trong suốt thời gian thực hiện đề tài.” Tìm hiều lý thuyết hình học Fractal – GVHD Thạc sĩ Bùi Tiến Lên MỤC LỤC I. TỔNG QUAN VỀ HÌNH HỌC FRACTAL.................................................................................... 4 1. Sự ra đời và phát triển lý thuyết về hình học fractal................................................................ 5 2. Ứng dụng của hình học fractal................................................................................................. 6 a) Ứng dụng trong vấn đề tạo ảnh bằng máy tính ................................................................... 6 b) Công nghệ nén ảnh fractal................................................................................................... 6 c) Ứng dụng trong khoa học cơ bản ........................................................................................ 8 3. Các kiến thức cơ sở của lý thuyết hình học fractal .................................................................. 8 a) Độ đo fractal ........................................................................................................................ 8 b) Hệ hàm lặp IFS .................................................................................................................. 11 II. MỘT SỐ HỌ ĐƯỜNG CƠ BẢN .................................................................................................. 15 1. Họ đường Vonkock................................................................................................................ 15 2. Họ đường Peano..................................................................................................................... 18 3. Đường Sierpinski ................................................................................................................... 20 III. CÁC TẬP FRACTAL PHỔ BIẾN ............................................................................................ 22 1. Tập Maldelbrot....................................................................................................................... 22 a) Tìm hiểu vấn đề.................................................................................................................. 22 b) Công thức toán học ............................................................................................................ 23 c) Cài đặt................................................................................................................................ 23 2. Tập Julia................................................................................................................................. 27 a) Tìm hiểu vấn đề.................................................................................................................. 27 b) Công thức toán học ............................................................................................................ 28 c) Cài đặt................................................................................................................................ 28 3. Tập Phoenix ........................................................................................................................... 29 a) Tìm hiểu vấn đề.................................................................................................................. 30 b) Công thức toán học ............................................................................................................ 30 c) Cài đặt................................................................................................................................ 31 IV. KẾT LUẬN & TÀI LIỆU THAM KHẢO ................................................................................ 32 1. Kết luận.................................................................................................................................. 32 2. Tài liệu tham khảo ................................................................................................................. 32 Tìm hiều lý thuyết hình học Fractal – GVHD Thạc sĩ Bùi Tiến Lên Phạm Trọng Tôn – Nguyễn Minh Đức 4 I. TỔNG QUAN VỀ HÌNH HỌC FRACTAL Có bao giờ bạn tự hỏi những hình ảnh như thế này được tạo ra bằng cách nào chưa ? Những hình ành này là do bàn tay của các hoạ sĩ vẽ ? do các phần mềm 3D vẽ? Câu trả lời chính xác là nhờ các công thức toán học fractal, các hệ hàm lặp (IFS) đặc biệt vẽ nên đấy. Thật kì diệu phải không, nhưng chính bản thân fractal còn chứa đựng nhiều điều kì diệu và bí ẩn hơn mà con người còn chưa khám phá hết. Và trong khuôn khổ của đề tài này tôi và các bạn sẽ khám phá một phần của điều kì diệu ấy. Tìm hiều lý thuyết hình học Fractal – GVHD Thạc sĩ Bùi Tiến Lên Phạm Trọng Tôn – Nguyễn Minh Đức 5 1. Sự ra đời và phát triển lý thuyết về hình học fractal Sự ra đời của lý thuyết hình học fractal là kết quả của nhiều thập kỷ nỗ lực giải quyết các vấn đề nan giải trong nhiều ngành khoa học chính xác, đặc biệt là vật lý và toán học. Một cách cụ thể, lý thuyết hình học fractal được xây dựng dựa trên 2 vấn đề lớn được quan tâm ở những thập niên đầu thế kỷ 20. Các vấn đề đó bao gồm: · Tính hỗn độn của các quá trình phát triển có quy luật trong tự nhiên. · Sự mở rộng khái niệm số chiều và độ đo trong lý thuyết hình học Euclide cổ điển. Năm 1979, nhà toán học Benoit Mandelbrot áp dụng tập Mandelbrot đầy kì ảo lên máy tính. Ông đã khám phá ra một lãnh vực hình học mới đầy thú vị cho phép phản ánh thế giới thực một cách tự nhiên hơn so với hình học Euclid. Tất cả những hình ảnh mà ta thường gặp trong tự nhiên như : núi, mây, sông, nước… nay máy tính đã có khả năng mô tả được bằng phương pháp fractal. Để thấy rõ hơn sức mạnh của fractal trong mô tả tự nhiên bạn có thể xem thêm bộ sưu tập ảnh fractal kèm theo. Trong giai đoạn này B. Mandelbrot và các nhà toán hoc khác như A.Douady và J.Hubbard đã đặt nền móng và phát triển lí thuyết cho hình học Fractal. Các kết quả đạt được chủ yếu tập trung ở các tính chất của các cấu trúc fractal cơ sở như tập Maldenbrot và tập Julia. Ngoài ra các ngiên cứu khác cũng cố gắng tìm kiếm mối quan hệ giữa các cấu trúc này, ví dụ như mối quan hệ giữa Maldenbrot và Julia. Dựa trên các công trình của Maldenbrot (trong những năm 1976, 1979, 1982) và Hutchinson(1981), vào các năm 1986,1988 Michael F.Barnsley và M.Begger đã phát triển lý thuyết biểu diễn các đối tượng tự nhiên dựa trên cơ sở lý thuyết về các hệ hàm lặp IFS. Các hệ hàm lặp này bao gồm một bộ hữu hạn các phép biến đổi affine cho phép với sự giúp đỡ của máy tính tạo nên hình ảnh của các đối tượng trong tự nhiên. Theo lý thuyết này hình học Euclide cổ điển rất có hiệu lực trong việc biểu diển các đối tượng nhân tạo như một tòa nhà, một cổ máy nhưng lại hoàn toàn không thích hợp cho việc biểu diễn các đối tượng của thế giới thực vì đòi hỏi một lượng quá lớn các đặc tả cần có. Nếu như trong hình học Euclide các yếu tố cơ sở là đường thẳng, đường tròn, hình vuông,… thì lý thuyết IFS mở rộng hình học cổ điển với các yếu tố cơ sở mới là vô số thuật toán để vẽ nên các fractal của tự nhiên. Ngoài các công trình có tính chất lý thuyết, hình học fractal còn được bổ sung bởi nhiều nghiên cứu ứng dụng lý thuyết vào khoa học máy tính và các khoa học chính xác khác, ví dụ như dựa trên lý thuyết IFS, Barnsley đã phát triển lý thuyết biến đổi fractal áp dụng vào công nghệ nén ảnh tự động trên máy tính, là một lĩnh vực đòi hỏi những kỹ thuật tiên tiến nhất của tin học hiện đại. Hiện nay nhiều vấn đề, về lý thuyết fractal vẫn đang được tiếp tục nghiên cứu. Một trong những vấn đề lớn đang được quan tâm là bài toán về các độ đo đa fractal(multifractal measurement) có liên quan đến sự mở rộng các khái niệm số chiều fractal với đối tượng fractal trong tự nhiên, đồng thời cũng liên quan đến việc áp dụng các độ đo fractal trong các ngành khoa học tự nhiên. Tìm hiều lý thuyết hình học Fractal – GVHD Thạc sĩ Bùi Tiến Lên Phạm Trọng Tôn – Nguyễn Minh Đức 6 2. Ứng dụng của hình học fractal Hiện nay có 3 hướng ứng dụng lớn của lý thuyết hình học fractal, bao gồm: · Ứng dụng trong vấn đề tạo ảnh trên máy tính. · Ứng dụng trong công nghệ nén ảnh. · Ứng dụng trong nghiên cứu khoa học cơ bản a) Ứng dụng trong vấn đề tạo ảnh bằng máy tính Cùng với sự phát triển vượt bậc của máy tính cá nhân trong những năm gần đây, công nghệ giải trí trên máy tính bao gồm các lĩnh vực như trò chơi, anmation video… nhanh chóng đạt đỉnh cao của nó. Công nghệ này đòi hỏi sự mô tả các hình ảnh của thế giới thực trên máy PC với sự phong phú về chi tiết và màu sắc với sự tốn kém rất lớn về thời gian và công sức. Gánh nặng đó hiện nay đã được giảm nhẹ đáng kể nhờ các mô tả đơn giản nhưng đầy đủ của lý thuyết fractal về các đối tượng tự nhiên. Với hình học fractal khoa học máy tính có trong tay một công cụ mô tả tự nhiên vô cùng mạnh mẽ. Ngoài các ứng dụng trong lĩnh vực giải trí, hình học fractal còn có mặt trong các ứng dụng tạo ra các hệ đồ họa trên máy tính. Các hệ này cho phép người sử dụng tạo lập và chỉnh sửa hình ảnh, đồng thời cho phép tạo các hiệu ứng vẽ rất tự nhiên, hết sức hoàn hảo và phong phú, ví dụ hệ phần mềm thương mại Fractal Design Painter của công ty Fractal Design. Hệ này cho phép xem các hình ảnh dưới dạng hình họa vectơ cũng như sử dụng các ảnh bitmap như các đối tượng. Như đã biết, các ảnh bitmap được hiển thị hết sức nhanh chóng, thích hợp cho các ứng dụng mang tính tốc độ, các ảnh vector mất nhiều thời gian hơn để trình bày trên màn hình(vì phải được tạo ra bằng cách vẽ lại) nhưng đòi hỏi rất ít vùng nhớ làm việc. Do đó ý tưởng kết hợp ưu điểm của hai loại đối tượng này sẽ giúp tiết kiệm nhiều thời gian cho người sữ dụng các hệ mềm này trong việc tạo và hiển thị các ảnh có độ phức tạp cao. b) Công nghệ nén ảnh fractal Một trong những mục tiêu quan trọng hàng đầu của công nghệ xử lý hình ảnh hiện nay là sự thể hiện hình ảnh thế giới thực với đầy đủ tính phong phú và sống động trên máy tính. Vấn đề nan giải trong lĩnh vực này chủ yếu do yêu cầu về không gian lưu trữ thông tin vược quá khả năng của các thiết bị lưu trữ thông thường. Có thể đơn cử một ví dụ đơn giản: 1 ảnh có chất lượng gần như ảnh chụp đòi hỏi 1 vùng nhớ 24 bit cho 1 điểm ảnh, nên để hiện ảnh đó trên một màn hình máy tính có độ phân giải tương đối cao như 1024x768 cần xấp xỉ 2.25Mb. với các ảnh "thực" 24 bit này, để thể hiện được một hoạt cảnh trong thời gian 10 giây đòi hỏi xấp xỉ 700Mb dữ liệu, tức là bằng sức chứa của một đĩa CD-ROM. Như vậy khó có thể đưa công nghệ multimedia lên máy PC vì nó đòi hỏi một cơ sở dữ liệu ảnh và âm thanh khổng lồ. Đứng trước bài toán này, khoa học máy tính đã giải quyết bằng những cải tiến vượt bậc cả về phần cứng lẩn phần mềm. Tất cả các cải tiến đó dựa trên ý tưởng nén thông Tìm hiều lý thuyết hình học Fractal – GVHD Thạc sĩ Bùi Tiến Lên Phạm Trọng Tôn – Nguyễn Minh Đức 7 tin hình ảnh trùng lặp. Tuy nhiên cho đến gần đây, các phương pháp nén thông tin hình ảnh đều có 1 trong 2 yếu điểm sau: · Cho tỉ lệ nén không cao. Đây là trường hợp của các phương pháp nén không mất thông tin · Cho tỉ lệ tương đối cao nhưng chất lượng ảnh nén quá kém so với ảnh ban đầu. Đây là trường hợp của các phương pháp nén mất thông tin, ví dụ chuẩn nén JPEG. Các nghiên cứu lý thuyết cho thấy, để đạt một tỷ lệ nén hiệu quả (kích thước dữ liệu nén giảm so với ban đầu ít nhất hàng trăm lần), phương pháp nén mất thông tin là bắt buột. Tuy nhiên một vấn đề đặt ra là làm thế nào có được một phương pháp nén kết hợp cả tính hiệu quả về tỷ lệ nén lẩn chất lượng ảnh so với ảnh ban đầu? Phương pháp nén ảnh fractal được phát triển gần đây bởi Iterated System đáp ứng được yêu cầu này. Như đã biết, với một ánh xạ co trên một không gian metric đầy đủ, luôn tồn tại 1 điểm bất động xr sao cho: xr=f(xr) Micheal F.Barnsley đã mở rộng kết quả này cho 1 họ các ánh xạ co F.Barnsley đã chứng minh được với một họ ánh xạ như vậy vẫn tồn tại 1 "điểm" bất động xr. Để ý rằng với một ánh xạ co, ta luôn tìm được điểm bất động của nó bằng cách lấy một giá trị khởi đầu rồi lặp lại nhiều lần ánh xạ đó trên các kết quả thu được ở mỗi lần lặp. Số lần lặp càng nhiều thì giá trị tìm được càng xấp xỉ chính xác giá trị của điểm bất động. Dựa vào nhận xét này, người ta đề nghị xem ảnh cần nén là "điểm bất động" của một họ ánh xạ co. Khi đó đối với mỗi ảnh chỉ cần lưu thông tin về họ ánh xạ thích hợp, điều này làm giảm đi rất nhiều dung lượng cần có để lưu trữ thông tin ảnh. Việc tìm ra các ánh xạ co thích hợp đã được thực hiện tự động hóa nhờ quá trình fractal một ảnh số hóa do công ty Iterated System đưa ra với sự tối ưu về thời gian thực hiện. Kết quả nén cho bởi quá trình này rất cao, có thể đạt đến tỷ lệ 10000: 1 hoặc cao hơn. Một ứng dụng thương mại cụ thể của kỷ thuật nén fractal là bộ bách khoa toàn thư multimmedia với tên gọi"Microsoft Encarta" được đưa ra vào 12-1992. Bộ bách khoa này bao gồm hơn 7 giờ âm thanh, 100 hoạt cảnh, 800 bản đồ màu cùng với 7000 ảnh chụp cây cối, hoa quả, con người, phong cảnh, động vật,… Tất cả được mã hóa dưới dạng các dữ liệu fractal và chỉ chiếm xấp xỉ 600 Mb trên 1 đĩa compact. Ngoài phương pháp nén fractal của Barnsley, còn có một phương pháp khác cũng đang được phát triển. Phương pháp đó do F.H.Preston, A.F.Lehar, R.J.Stevens đưa ra dựa trên tính chất của đường cong Hilbert. Ý tưởng cơ sở của phương pháp là sự biến đổi thông tin n chiều về thông tin một chiều với sai số cực tiểu. Anh cần nén có thể xem là một đối tượng ba chiều, trong đó hai chiều dùng để thể hiện vị trí điểm ảnh, chiều thứ ba thể hiện màu sắc của nó. Anh sẽ được quét theo thứ tự hình thành nên đường cong Hilbert chứ không theo hàng từ trái sang phải như thường lệ để đảm bảo các dữ liệu nén kế tiếp nhau đại diện cho các khối ảnh kế cạnh nhau về vị trí trong ảnh gốc. Trong quá trình quét như vậy, thông tin về màu sắc của mỗi điểm ảnh được ghi nhận lại. Kết qủa cần nén sẽ được chuyển thành một tập tin có kích thước nhỏ hơn rất nhiều vì chỉ gồm Tìm hiều lý thuyết hình học Fractal – GVHD Thạc sĩ Bùi Tiến Lên Phạm Trọng Tôn – Nguyễn Minh Đức 8 các thông tin màu sắc. Phương pháp này thích hợp cho các ảnh có khối cùng tông màu lớn cũng như các ảnh dithering. c) Ứng dụng trong khoa học cơ bản Có thể nói cùng với lý thuyết topo, hình học fractal đã cung cấp cho khoa học một công cụ khảo sát tự nhiên vô cùng mạnh mẽ. Vật lý học và toán học thế kỷ XX đối đầu với sự xuất hiện của tính hỗn độn trong nhiều qúa trình có tính quy luật của tự nhiên. Từ sự đối đầu đó, trong những thập niên tiếp theo đã hình thành một lý thuyết mới chuyên nghiên cứu về các hệ phi tuyến, gọi là lý thuyết hỗn độn. Sự khảo sát các bài toán phi tuyến đòi hỏi rất nhiều công sức trong việc tính toán và thể hiện các quan sát một cách trực quan, do đó sự phát triển của lý thuyết này bị hạn chế rất nhiều. Chỉ gần đây với sự ra đời của lý thuyết fractal và sự hổ trợ đắc lực của máy tính, các nghiên cứu chi tiết về sự hỗn độn mới được đẩy mạnh. Vai trò của hình học fractal trong lĩnh vực này là thể hiện một cách trực quan các cư xử kỳ dị của các tiến trình được khảo sát, qua đó tìm ra được các đặc trưng hoặc các cấu trúc tương tự nhau trong các ngành khoa học khác nhau. Hình học fractal đã được áp dụng vào nghiên cứu lý thuyết từ tính, lý thuyết các phức chất trong hóa học, lý thuyết tái định chuẩn và phương trình Yang & Lee của vật lý, các nghiệm của các hệ phương trình phi tuyến được giải dựa trên phương pháp xấp xỉ liên tiếp của Newton trong giải tích số, … các kết qủa thu được giữ một vai trò rất quan trọng trong các lĩnh vực tương ứng. 3. Các kiến thức cơ sở của lý thuyết hình học fractal a) Độ đo fractal ¥= ¥==== <¥ > = "< Î= ¥ = = ® = ïî ï í ì þ ý ü î í ì haydöông,0 thöïc soámoät laø theå coù (A)sh thì (A)HD s hôïptröôøng Trong } (A)sh : s { sup } 0 (A)sh : s { inf (A)HD : khaùccaùch Noùi . A hôïptaäp cuûa Hausdorff chieàu soá laø goïi ñöôïc (A)HD trò Giaù (A)HD s khi (A)HD s khi0 (A)s h : cho sao (A)HD soámoät cuûa taïi toàn söï ñöôïc minh chöùng ñaõ Hausdorff . i , )idiam(U vaø A cuûa môû moät phuû laø } ... , 2U , 1U { , nR gian khoâng trong Euclide metric laø d vôùi , }iU yx,:y)d(x, { sup )idiam(U : ñoù trong s)idiam(U 1 i inf (A)s h :vôùi (A)sh 0 lim (A)sh : bôûiñònh xaùc ñöôïc (A)s hthì A taäp cuûa chieàu-s Hausdorff ño ñoä laø (A)shGoïi . vaø s döông thöïc soá caùc tröôùc Cho ε Σε εε ε Tìm hiều lý thuyết hình học Fractal – GVHD Thạc sĩ Bùi Tiến Lên Phạm Trọng Tôn – Nguyễn Minh Đức 9 Định nghĩa này giữ một vai trò quan trọng trong lý thuyết hình học fractal hiện đại nhưng không có tính thực tiễn vì việc xác định số chiều theo định nghĩa này rất phức tạp ngay cả với trường hợp tập A rất đơn giản. Do đó, xuất phát từ định nghĩa này, Mandelbrot đã đưa ra khái niệm số chiều fractal tổng quát dễ xác định hơn với ba dạng đặc biệt áp dụng cho từng loại đối tượng ( tập A ) cụ thể. Sau đây chúng tôi sẽ trình bày các định nghĩa về các dạng đặc biệt đó, đồng thời chỉ ra mối liên hệ giữa chúng với định nghĩa số chiều của Hausdorff. SỐ CHIỀU TỰ ĐỒNG DẠNG( SỐ CHIỀU HAUSDORFF-BESICOVITCH ): Định nghĩa: Ví dụ: · Xét một hình vuông được chia thành 9 hình vuông nhỏ với tỷ lệ đồng dạng là 1/3. Khi đó số chiều tự đồng dạng của hình vuông ban đầu được xác định bởi: · Xét một khối lập phương được chia thành 27 khối lập phương nhỏ hơn với tỷ lệ đồng dạng 1/3. Ta có số chiều tự đồng dạng của khối lập phương được xác định bởi: Hai ví dụ trên cho thấy định nghĩa số chiều tự đồng dạng phù hợp với định nghĩa thông thường của hình học Euclide. SỐ CHIỀU COMPA: Số chiều xác định theo định nghĩa này được áp dụng cho các đường cong không phải là các đường cong tự đồng dạng hoàn toàn ( như các đường bờ biển, các con sông,… ), nhưng có thể sử dụng nhiều đơn vị khác nhau để xác định độ dài của chúng. Định nghĩa: . ñoù truùc caáu cuûa daïng ñoàng töï chieàu soá laø goïi ñöôïc sD ñoù Khi r 1 log N log sD = D 33 log 33 log 3 1 1 log 27 log s === D 23 log 23 log 3 1 1 log 9 log s === Tìm hiều lý thuyết hình học Fractal – GVHD Thạc sĩ Bùi Tiến Lên Phạm Trọng Tôn – Nguyễn Minh Đức 10 Xét một đường cong không tự đồng dạng . Biểu diễn số đo của đường cong trên hệ toạ độ log / log với: Ví dụ: Xét đường cong 3/2 được xây dựng theo kỹ thuật initiator/generator chỉ ra bởi hình vẽ sau: SỐ CHIỀU BOX-COUNTING: Số chiều xác định theo định nghĩa này được áp dụng cho các đường cong fractal không thể xác định số chiều theo 2 cách vừa trình bày. Cách tính số chiều này có thể áp dụng cho mọi cấu trúc trong mặt phẳng và mở rộng cho các cấu trúc trong không gian. Định nghĩa: Xét một cấu trúc fractal bất kỳ. Lần lượt đặt cấu trúc này lên một dãy các lưới có kích thước ô lưới s giảm liên tiếp theo tỉ lệ 1/2. Gọi N(s) là số các ô lưới có kích thước s có chứa một phần cấu trúc. Ta xây dựng hệ tọa độ log/log như sau: generator initiator generator d lcD : bôûiñònh xaùc ñöôïccD compa chieàu soá ñoù Khi . do töï soá heälaø b, b s 1 log . d ulog : heäquan coù Ta . tieåu cöïc phöông bình phaùp phöôngtreân döïa ñöôïc ño utrò giaù caùc xæ xaáp ñeå duøng qui hoàithaúng ñöôøng cuûa goùc soá heälaø d - += += Tìm hiều lý thuyết hình học Fractal – GVHD Thạc sĩ Bùi Tiến Lên Phạm Trọng Tôn – Nguyễn Minh Đức 11 b) Hệ hàm lặp IFS KHÔNG GIAN ẢNH HAUSDORFF: Định nghĩa 1: Khoảng cách từ một điểm x X đến một tập B H(X) được xác định bởi: Định nghĩa 2: Khoảng cách từ một tập A H(X) đến một tập B H(X) được xác định bởi: Định nghĩa 3: Khoảng cách Hausdorff giữa hai điểm A và B H(X) được xác định bởi: Với các định nghĩa trên ta có định lý: Định lý về sự tồn tại của các IFS Fractal: . cho ñaõõ fractal truùc caáu cuûa counting- boxchieàu soá laø goïi ñöôïc vaäy nhö ñònh xaùc BD )k-N(2 )1) k(- N(2 2logk22log 1 k22log )k-N(22log-) 1)(k- N(22log BD : coù ta ñoù Khi . ñoä toïa heäcuûa N(s)) , (s ñieåm caùc haïn höõutaäp vôùi ñoái qui hoàithaúng ñöôøng cuûa goùc soá heälaø BD - . (s)) (N2log löôïng ñaïi cuûa trò giaù thò bieåutung Truïc - . ) s 1(2log löôïng ñaïi cuûa trò giaù thò bieåu hoaønhTruïc - + = -+ + = : sau nghóa ñònh caùc coù Ta . Xcuûa roãngaùccompact kh con taäp caùc gian khoânglaø H(X) hieäuKyù . Euclide metric laø d vaø 2R baèng haïngiôùi ñöôïc Xñaây ÔÛ . ñuû ñaày metric gian gmoät khoân laø d) X,( söû Giaû { }B y : y)d(x, min B)d(x, Î= { }A x : B)d(x, max B)d(x, Î= { }A x : B)d(x, max B)d(x, Î= x} veà tuï hoäi}nAn{x Cauchy daõymoät : X {x A : sau nhö taû ñaëc ñöôïc theå coù A . H(X) thuoäc cuõng nA0 limA : bôûiñònh xaùc A hôïptaäp thì Cauchy daõymoät thaønh laäp ... 1,2, n vôùi H(X) nA neáu nöõa Hôn . ñuû ñaày metric gian gmoät khoân laø h), (H(X) coù Ta Î$Î= ¥® = = Î Tìm hiều lý thuyết hình học Fractal – GVHD Thạc sĩ Bùi Tiến Lên Phạm Trọng Tôn – Nguyễn Minh Đức 12 do nhöng , S xñieåm moät veà tuï hoäi} nN {x con daõymoät taïi toàn neân compact S Vì . S trongñieåm haïnvoâ daõymoät laø cuõng }n{x ñoù Khi . w(S) cuûañieåm haïnvoâ daõymoät laø } )nw(x ny { Xeùt .compact w(S) minh chöùng Ta . roãng khaùctaäpmoät laø } S x : w(x) { w(S) : coù ta ñoù Khi . Xcuûa roãngaùccompact kh con taäpmoät laø S söû Giaû Î Ù = Î= ÁNH XẠ CO TRÊN KHÔNG GIAN HAUSDORFF: Bổ đề 1: Giả sử w: X ' X là một ánh xạ co liên tục trên không gian metric (X,d). Khi đó w liên tục. Chứng minh: Cho s > 0. Gọi s là hệ số co của w. Khi đó: d(w(x) , w(y)) s.d(x,y) < khi và chỉ khi: d(x,y) < = / s Từ đó suy ra điều phải chứng minh Bổ đề 2: Giả sử w: X ' X là một ánh xạ liên tục trên không gian metric(X,d). Khi đó w ánh xạ không gian H(X) lên chính nó. Chứng minh: Bổ đề 3 sau đây chỉ ra cách tạo một ánh xạ co trên không gian metric (H(X),h) dựa trên một ánh xạ co trên (X,d): Bổ đề 3 : Giả sử w:X ' X là một ánh xạ có trên không gian metric (X,d) với hệ số co s. Khi đó ánh xạ w: H(X) ' H(X) được xác định bởi: w(B)={w(x): x B }, với B thuộc H(X) cũng là một ánh xạ co trên (H(X), h(d)) với hệ số co s. minh. chöùng ñöôïc ñeà Boå .compact w(S) Vaäy . w(S)y veà tuï hoäi}ny { cuûa con daõymoät laø } ) nN f(x nN y { ñöôïc rasuy w cuûa tuïc lieân tính Î Ù = Tìm hiều lý thuyết hình học Fractal – GVHD Thạc sĩ Bùi Tiến Lên Phạm Trọng Tôn – Nguyễn Minh Đức 13 : bôûiH(X) H(X) : Wñònh Xaùc. N , ... 1,2, n,ns öùngtöông co soá heäcaùc vôùi h), (H(X) treân co xaï aùnh caùc laø } n{w hieäuKyù ®= Chứng minh: Từ bổ đề 1 suy ra w: X ' X liên tục. Do đó theo bổ đề 2, w ánh xạ H(X) lên chính nó. Bây giờ xét B, C thuộc H(X) Ta có: d(w(B), w(C)) = max { min { d(w(x) , w(y)): y C}: x B} <= max { min{ s.d(x,y): y C }: x B} = s.d(B,C) Một cách tương tự: d(w(C), w(B)) s.d(C,B) Do đó: h(w(B), w(C)) = max { d(w(B), w(C)), d(w(C), w(B))} <= s.max { d(B,C), d(C,B)} = s.h(B,C) Từ đó suy ra điều phải chứng minh. Bổ đề 4 sau đây cung cấp mộc cách thức cơ bản để nối kết các ánh xạ co trên (H(X), h) thành các ánh xạ co mới trên (H(X), h) Bổ đề 4 : Chứng minh: Kết quả trên được chứng minh bằng qui nạp. Với N = 2: Xét B, C H(X).Ta có: Vậy W là ánh xạ co với N = 2. Giả sử khẳng định đúng với N= k. Ta chứng minh khẳng định đúng với N = k + 1. Thật vậy , ta có: .ns Nn 1 max s co soá heävôùi co xaï aùnh laø Wñoù Khi . H(X) B vôùi (B)nw N 1n W(B) ££ =Î = È= C)s.h(B, C)}.h(B,2s , C).h(B,1s { max (C))}2w , (B)2 h(w, (C))1w , (B)1 h(w{ max (C)) 2w (C)1w , (B) 2w (B)1 h(w W(C)), h(W(B) £ £ £ ÈÈ= Tìm hiều lý thuyết hình học Fractal – GVHD Thạc sĩ Bùi Tiến Lên Phạm Trọng Tôn – Nguyễn Minh Đức 14 Vậy W là ánh xạ co với N = k + 1. Do đó theo nguyên lý qui nạp bổ đề 4 được chứng minh xong. CÁC HỆ HÀM LẶP IFS ( ITERATED FUNCTION SYSTEM ): Định nghĩa 1: Định lý sau tóm tắt các kết quả chính của một IFS : Định lý IFS : Định nghĩa 2 : Điểm bất động A H(X) mô tả trong định lý IFS được gọi là hấp tử của IFS đó. ns 1kn 1 max)1ks,Tmax(ss co soá heävôùi H(X) treân co xaï aùnh laø Wcoù cuõng ta , 2 N vôùi naïp quithuyeát giaû do nhöng (B)1kwT(B) W(B) :vieát theå coù Vaäy .ns kn 1 max Ts co soá heävôùi H(X) treân co xaï aùnhmoät laø T coù ta naïp quithuyeát giaû do thì nw k 1n TÑaët (B)1kw(B)nw k 1n (B)nw 1k 1n W(B) +££ =+= = +È= ££ = = È= +È= È= + = È= ÷ ÷ ø ö ç ç è æ ns Nn 1 maxs co soá heävaø N}, ... 1,2,n,nw{X; bôûi hieäu kyùñöôïc IFSMoät . laëp haøm heätöøcuïm cho thay IFS hieäu kyùTa . N, ... 1,2,n,ns öùngtöông co soá heävôùi nw co xaï aùnh caùc haïnhöõu moät boä vaø d)(X, ñuû ñaày metric gian gmoät khoângoàm laëp haøm Moät heä ££ == = . H(X) B baát kyøvôùi (B)n W n lim A bôûitröôùc cho ñöôïc vaø (A)nw N 1n W(A)A : vôùi H(X) A ñoäng ñieåm baátmoät nhaát duy coù naøy xaï AÙnh H(X) CB, , C)B, s.h( W(C)), h(W(B) : laø töùc , s co soá heävôùi h(d)), (H(X) ñuû ñaày metric gian khoângtreân co xaï aùnhmoät laø H(X) B ñoù trong (B)nw N 1n W(B) : bôûiñònh xaùc H(X) H(X) : Wñoåi bieán pheùpñoù Khi . s co soá heävôùi N}, ... 1,2,n,nw{X; IFSmoät Xeùt Î ¥® = = È== Î Î"£ Î = È= ® = Tìm hiều lý thuyết hình học Fractal – GVHD Thạc sĩ Bùi Tiến Lên Phạm Trọng Tôn – Nguyễn Minh Đức 15 II. MỘT SỐ HỌ ĐƯỜNG CƠ BẢN Trong phần này chúng ta sẽ tìm hiểu một số đường cơ bản được phát sinh từ các đoạn thẳng với kỹ thuật đệ quy initiator /generator. Về mặt lý thuyết thì đây chính là bước khởi đầu để tìm hiểu các lý thuyết fractal khác phức tạp hơn. 1. Họ đường Vonkock Các hình này có số chiều tự động dạng, số chiều fractal và số chiều Hausdorff-Besicovitch bằng nhau.Số chiều được tính theo công thức sau: Trong đó: N:là số đọan thẳng. R:là số chiều dài của mỗi đoạn. Chúng ta bắt đầu bằng một initiator, nó có thể là một đoạn thẳng hay một đa giác. Mỗi cạnh của initiator được thay thế bởi một generator, mà là tập liên thông của các đoạn thẳng tạo nên bằng cách đi từ điểm bắt đầu đến điểm cuối của đường thay thế (Thông thường các điểm của generator là một lưới vuông hay một lưới tạo bởi các tam giác đều). Sau đó mỗi đoạn thẳng của hình mới được thay thế bởi phiên bản nhỏ hơn của generator. Quá trình này tiếp tục không xác định được. Sau đây là một số đường Von Kock quan trọng. ĐƯỜNG HOA TUYẾT VON KOCK_SNOWFLAKE § Mỗi đoạn thẳng được thay thế bằng một generator như sau: § Số chiều fractal là : § Một số hình ảnh của đường (Bậc 2) (Bậc 3 ) ÷ ø ö ç è æ = R ND 1log )log( 2618,1 3log 4log 1log )log( »== ÷ ø ö ç è æ R ND Tìm hiều lý thuyết hình học Fractal – GVHD Thạc sĩ Bùi Tiến Lên Phạm Trọng Tôn – Nguyễn Minh Đức 16 ĐƯỜNG VON KOCK_GOSPER § Mỗi đoạn thẳng được thay thế bằng một generator như sau: § Số chiều fractal là : § Một số hình ảnh của đường (Bậc 1) (Bậc 2) ĐƯỜNG VON KOCK BẬC HAI 3-ĐOẠN (Tương tự cho các đường có số đoạn lớn hơn) § Mỗi đoạn thẳng được thay thế bằng một generator như sau: § Số chiều fractal là : 1291.1 7log 3log »=D 3652.1 5log 3log »=D Tìm hiều lý thuyết hình học Fractal – GVHD Thạc sĩ Bùi Tiến Lên Phạm Trọng Tôn – Nguyễn Minh Đức 17 § Một số hình ảnh của đường (Bậc 3) (Bậc 5) ĐƯỜNG VON KOCK BẬC HAI PHỨC TẠP § Mỗi đoạn thẳng được thay thế bằng một generator như sau: § Số chiều fractal là : Ta có : Do đó § Một số hình ảnh của đường (Bậc 1) (Bậc 2) 1. =å DMR 238361.1 1 9 35 3 16 »Þ =÷÷ ø ö çç è æ +÷ ø ö ç è æ D DD Tìm hiều lý thuyết hình học Fractal – GVHD Thạc sĩ Bùi Tiến Lên Phạm Trọng Tôn – Nguyễn Minh Đức 18 2. Họ đường Peano Trong phần này, chúng ta xét các đường có số chiều fractal bằng 2. Chúng được gọi là các đường Peano vì đường đầu tiên trong họ đường này được khám phá bởi Guiseppe Peano vào năm 1900. Do số chiều fractal là 2 nên các đường này phải lấp đầy hoàn toàn mặt phẳng. Điều này dẫn đến sự tự giao nhau của chúng tại nhiều điểm trong mặt phẳng. Sau đây là một số đường đặc biệt của họ này. ĐƯỜNG PEANO ĐƠN GIẢN § Mỗi đoạn thẳng được thay thế bằng một generator như sau: § Số chiều fractal là : § Một số hình ảnh của đường (Bậc 1) (Bậc 3) ĐƯỜNG PEANO CẢI TIẾN § Mỗi đoạn thẳng được thay thế bằng một generator như sau: § Vì generator sử dụng lần đệ quy cuối cùng có độ dài ngắn hơn so với đường Peano nguyên thủy, ta có số chiều fractal D nhỏ hơn 2. Khi số lần đệ quy tăng lên, số chiều fractal sẽ thay đổi và tiến về 2. § Một số hình ảnh của đường: 2 3log 9log =Þ= DD Tìm hiều lý thuyết hình học Fractal – GVHD Thạc sĩ Bùi Tiến Lên Phạm Trọng Tôn – Nguyễn Minh Đức 19 (Bậc 2) ĐƯỜNG CESARO TRIANGLE § Mỗi đoạn thẳng được thay thế bằng một generator như sau: § Số chiều fractal là : § Một số hình ảnh của đường (Bậc 5) ĐƯỜNG PEANO BẬC HAI 7-ĐOẠN § Mỗi đoạn thẳng được thay thế bằng một generator như sau: 2 2log 2log =Þ= DD Tìm hiều lý thuyết hình học Fractal – GVHD Thạc sĩ Bùi Tiến Lên Phạm Trọng Tôn – Nguyễn Minh Đức 20 § Số chiều fractal là : § Một số hình ảnh của đường (Bậc 1) (Bậc 2) 3. Đường Sierpinski Đường Sierpinski được trình bày sau đây là một đường cong rất đặc biệt, bởi vì có rất nhiều cách phát sinh ra nó với các khởi động ban đầu hoàn toàn khác nhau nhưng lại kết thúc ở việc sinh ra một loại đường cong duy nhất. Chúng ta đã quen với phương pháp đầu tiên để phát sinh ra tam giác Sierpinski bằng cách sử dụng kỹ thuật initiator/generator được mô tả ở các phần trước. Đối với đường này, initiator là một đoạn thẳng. Generator đối với đường cong này và các đường được sinh ra ở mức 2 và 3 được minh họa như sau: Generator của tam giác Sierpinski Mức 2 Mức 3 21 3 3 3 16 =Þ=÷÷ ø ö çç è æ +÷ ø ö ç è æ* D DD Tìm hiều lý thuyết hình học Fractal – GVHD Thạc sĩ Bùi Tiến Lên Phạm Trọng Tôn – Nguyễn Minh Đức 21 Và đây là đường Sierpinski ở mức 4 và 8: Mức 4 Mức 8 Như vậy là chúng ta đã khảo sát qua được gần hết các họ đường fractal đơn giản được phát sinh dựa trên kĩ thuật đệ quy initiator/generator. Trong phần kế ta sẽ khảo sát các tập phức tạp hơn mà việc phát sinh nó chủ yếu dựa trên các hệ hàm lặp IFS. Bạn sẽ được khám phá những tính chất đặc biệt, kỳ lạ cũng như vẻ đẹp diệu kỳ mà những tập này mang đến. Chắc chắn bạn sẽ gặp những bất ngờ thú vị khi khảo sát phần kế tiếp. Tìm hiều lý thuyết hình học Fractal – GVHD Thạc sĩ Bùi Tiến Lên Phạm Trọng Tôn – Nguyễn Minh Đức 22 III. CÁC TẬP FRACTAL PHỔ BIẾN 1. Tập Maldelbrot Một trong số các tập kì ảo nhất mà tôi muốn giới thiệu đến các bạn trước tiên đó là tập Maldelbrot. Nói là kỳ ảo có lẽ do lý do chính là trước năm 1979 nó vẫn còn là ẩn số đối với các nhà khoa học máy tính. Người ta chỉ biết đến nó đơn thuần qua một hàm lặp rất đơn giản nhưng lại không thể quan sát được cụ thể hình dạng của nó. Chỉ đến năm 1979, Maldelbrot mới thành công trong việc quan sát dãy này với sự hỗ trợ của máy tính điện tử. Kết quả mà ông nhận được là một trong những cấu trúc fractal phức tạp và đẹp đẽ nhất. Để ghi nhớ công lao của tác giả, tập này đã được đặt tên Maldelbrot và cũng từ đây Maldelbrot đã khai sinh ra một lý thuyết mới đó là lý thuyết hình học fractal. a) Tìm hiểu vấn đề Trong nhiều thập niên của thế kỷ XX, các nhà toán học đã để tâm nghiên cứu đến một loại biểu thức phức tạp xác định bởi: zn+1 = zn2 +c , trong đó ziЄC, "i ЄN & cЄ C (1) Để đơn giản hóa vấn đề, trước hết ta xét trường hợp c = 0 và zo Є R. khi đó có 3 trường hợp sau: z0 =1 : khi đó zn =1, n > = 1. Tìm hiều lý thuyết hình học Fractal – GVHD Thạc sĩ Bùi Tiến Lên Phạm Trọng Tôn – Nguyễn Minh Đức 23 z0 <1 : khi đó zn à0 khi n à∞ z0 > 1 : khi đó znà∞ khi n à∞ Ở đây tốc độ tiến đến 0 hay tiến đến ∞ của dãy (zn) được quyết định bởi giá trị ban đầu z0 của dãy. Trong trường hợp z0 < 1, giá trị z0 càng nhỏ thì dãy (zn) tiến đến 0 càng nhanh. Ngược lại khi z0>1, giá trị z0 càng lớn thì dãy (zn) càng tiến nhanh ra ∞ b) Công thức toán học Ký hiệu zn =( xn , yn), c=(p,q), trong đó: xn = Re(zn), p = Re(c), yn =Im(zn), q = Im(c), ∀n >= 0 thì hệ thức truy hồi xác định ở (1) có thể được viết lại theo dạng đơn giản hơn như sau: xn+1 = xn2 - yn2 + p yn+1 = 2xnyn + q Ngoài ra khi khảo sát dãy (zn) ta tìm được tính chất sau: Tính chất về sự hội tụ của dãy(zn): · Nếu tồn tại k Є N sao cho | zk | > 2 thì dãy (zn) hội tụ đến vô cực · Nếu tồn tại k Є N sao cho | zt | < 2, t : k <= t <= l, với l là hằng số hữu hạn thì cũng có | zn | = k. (Ký hiệu | z| chỉ modul của số phức z) c) Cài đặt Thuật toán gồm các bước sau: Bước 1: Xuất phát với một giá trị khởi đầu c = (p,q). Bước 2: Kiểm tra c thuộc lớp 1 hay lớp 2. Bước 3: Nếu c thuộc lớp 1 thì tô điểm ảnh tương ứng với c trên màn hình bằng màu đen, ngược lại tô điểm ảnh này bởi màu tương ứng xác định từ kỹ thuật tô xoay vòng. Bước 4: Chọn một giá trị c mới và trở lại bước 1 cho đến khi quét hết toàn bộ giá trị c cần khảo sát (đôi khi chúng ta không cần khảo sát toàn bộ mà chỉ khảo sát một miền con được yêu cầu của mặt phẳng phức). Khi đó thuật toán kết thúc. Bây giờ nếu ký hiệu: · Max_Iterations là số lần lặp tối đa cần có để kiểm tra một giá trị c thuộc lớp 1 hay lớp 2 (chính là giá trị l được đề cập trong định nghĩa của lớp 1). · Count là số lần lặp đã thực hiện (giá trị này tương ứng với một ngưỡng tiến ra vô hạn k được nêu ra trong định nghĩa lớp 2). Tìm hiều lý thuyết hình học Fractal – GVHD Thạc sĩ Bùi Tiến Lên Phạm Trọng Tôn – Nguyễn Minh Đức 24 · Miền con của mặt phẳng phức cần khảo sát là một cửa sổ hình chữ nhật được đặt tả bởi tọa độ góc trái bên dưới (Xmin , Ymin) và tọa độ góc phải trên (Xmax , Ymax) (theo hệ trục tọa độ thông thường) Khi đó mối liên hệ giữa hệ trục tọa độ phức thực tế với hệ tọa độ nguyên trên màn hình máy tính được x thể hiện bởi hình dưới đây: q (0,0) Col (Xmax,Ymax) Thể hiện trên màn hình (Max_col,Max_row) (Xmin,Ymin) p Row Vùng khảo sát là 1 miền con của Hệ tọa độ nguyên trên máy mặt phẳng phức biểu diễn giá trị c tính với chiều dương ngược chiều thực tế. Theo hình này, điểm bắt đầu (0,0) trên màn hình máy tính sẽ tương ứng với giá trị c = (Xmin ,Ymax), điểm kết thúc (Max_Col,Max_Row), trong đó Max_Col x Max_Row thể hiện độ phân giải của mode đồ họa hiện thời của màn hình (ví dụ với mode VGA 16 màu ta có Max_Col=604, Max_Row = 480), sẽ tương ứng với điểm c = (Xmax , Ymin). Do đó nếu ký hiệu: · Δp làlượng gia tăng theo trục thực của giá trị p ứng với mỗi cột trên màn hình. · Δq là lượng là lượng gia tăng theo trục ảo của giá trị q ứng với mỗi hàng trên màn hình thì: Khi đó một số phức c = (p,q) ứng với một điểm ảnh có tọa độ màn hình là (Col,Row) sẽ được xác định bởi: p=Xmin + Col.Δp q = Ymax - Row.Δq Có thể kiểm tra là khi Col,Row biến thiên theo chiều tăng đến các giá trị tương ứng Max_Col , Max_Row , chúng ta cũng có p biến thiên từ Xmin đến Xmax và q biến ColMax XX p _ minmax -=D RowMax YYq _ minmax -=D Tìm hiều lý thuyết hình học Fractal – GVHD Thạc sĩ Bùi Tiến Lên Phạm Trọng Tôn – Nguyễn Minh Đức 25 thiên từ Ymax xuống Ymin, đúng như yêu cầu về quan hệ giữa hệ tọa độ phức sử dụng trong toán học với hệ tọa độ hiển thị của màn hình đã được nêu ra trong hình trên. Việc kiểm tra c thuộc lớp 1 hay 2 được viết dưới dạng: if(Count > Max_Iterations)&(Modul(Zcount)<2)) c thuộc lớp 1 if(Count 2)) c thuộc lớp 2 Đồng thời màu tô cho một điểm c=(p,q) thuộc lớp 2 được tính toán theo công thức: Màu tô (p,q) = Count(p,q) mod Max_Colors Với: · Màu tô (p,q) : số hiệu màu gán cho điểm ảnh tương ứng với giá trị (p,q) · Count(p,q) : ngưỡng tiến ra vô hạn của dãy (zn) tương ứng với (p,q). · Max_Colors : số lượng màu tối đa có trong palette màu đang được sử dụng. Trong thuật toán này, để thể hiện một cách chi tiết, chúng ta quét các giá trị c trong cửa sổ giới hạn bởi (Xmin , Ymin) và (Xmax , Ymax) theo thứ tự từ trên xuống dưới và từ trái sang phải, tức là ứng với mỗi cột Col, ta kiểm tra và tô màu tất cả các điểm ảnh trên cột này theo các giá trị phức tương ứng, sau đó mới chuyển sang cột mới kế tiếp đó. Như vậy chúng ta có được thuật toán chi tiết sau: for(Col=0;Col<Max_Col;++Col) { for(Row=0; Row<= Max_Row; ++Row) { X = Y = xn = yn = 0; //(vì ứng với mỗi giá trị c=(p,q) tương ứng với điểm //ảnh (Col,Row), dãy (zn) được khảo sát với z0 = 0) Count =1; While(Count<Max_Iterations) & (√X+Y < 2) { X = xn2 ; Y = yn2 ; yn = 2xnyn + q; xn = X – Y + p; Count = Count +1; } Tô màu điểm ảnh (Col,Row) bởi màu có số hiệu Count mod Max_Colors ; Tìm hiều lý thuyết hình học Fractal – GVHD Thạc sĩ Bùi Tiến Lên Phạm Trọng Tôn – Nguyễn Minh Đức 26 q = q + Δq; } p = p + Δp; } Chúng ta có nhận xét đầu tiên là trong thuật toán trên, giá trị q được tính tất cả Max_Col x Max_Row lần, như vậy với màn hình có độ phân giải 640 x 480, q được tính 307200 lần, nhưng thực chất chỉ có 480 giá trị q ứng với 480 hàng được sử dụng. Do đó để tăng tốc độ làm việc của thuật toán, các giá trị q có thể được tính trước khi vào vòng lặp và được lưu lại trong một mảng 1 chiều Q có Max_Row phần tử như sau: Q[0] = Ymax ; for( i=0 ; i < Max_Row; ++i) Q[i] = Q[i-1]- Δq; Ở đây Δq được tính trước theo công thức đã nêu. Một nhận xét thứ hai là việc tính | zn | = √X+Y = √xn2 + yn2 để so sánh với 2 chiếm rất nhiều thời gian. Do đó chúng ta thay việc so sánh √xn2 + yn2 < 2 bởi xn2 + yn2 <4 vì hai bất đẳng thức này tương đương. Việc làm này sẽ làm giảm đáng kể thời gian thực hiện thuật toán. Thuật toán được viết lại dưới dạng: for(Col= 0; Col<Max_Col; ++Col) { for(Row= 0; Row<= Max_Row; ++Row) { X = Y = xn = yn = 0; Count =1; While(Count<Max_Iterations) & (X+Y < 4) { X = xn2 ; Y = yn2 ; yn = 2xnyn + Q[Row]; xn = X – Y + p ; Count = Count +1; } Tô màu điểm ảnh (Col,Row) bởi màu có số hiệu Count mod Max_Colors ; } p = p + Δp; } Tìm hiều lý thuyết hình học Fractal – GVHD Thạc sĩ Bùi Tiến Lên Phạm Trọng Tôn – Nguyễn Minh Đức 27 Việc khảo sát các vùng nhỏ trong bức ảnh này sẽ cho thấy nhiều tính chất lý thú. Một trong những tính chất đó là sự giống nhau giữa các vùng nhỏ được phóng lớn với một vùng nào đó trong bức ảnh ban đầu. Điều này thể hiện sự lặp lại một cách vô tận và sự đồng dạng đáng kinh ngạc. Nó cũng giống với việc con người chinh phục vũ trụ, càng đi sâu vào vũ trụ người ta càng bắt gặp nhiều hơn các hệ thiên hà, đi sâu vào các hệ thiên hà này có thể ta sẽ lại thấy lại một hệ thiên hà khác và cứ thế lặp lại một cách vô tận. Chính điều này đã kích thích trí tò mò cũng như các tưởng tượng của con người về vũ trụ. Ngoài ra chúng ta còn có một khám phá lý thú khác. Đó là ứng với mỗi họ hàm lặp đều có một tập có dạng tương tự như tập Maldelbrot. Một trong số những tập có những tính chất khá giống với tập Maldelbrot chính là tập Julia mà chúng ta sẽ tìm hiểu kế tiếp. 2. Tập Julia Tập Julia và tập Mandelbrot là hai lớp các đối tượng fractal có mối quan hệ rất chặt chẽ với nhau. Một tính chất đáng chú ý là tập Mandelbrot có thể xem như 1 loại bản đồ cho mọi tập Julia có thể có. Người ta quan tâm đến mọi vị trí trên "bản đồ " Mandelbrot có thể cho ra các dạng tập Julia đầy sức lôi cuốn. Các vị trí như vậy được quan sát thấy ở gần biên của tập Mandelbrot. Nhất là gần các chỏm nhọn. Ngoài ra khi phóng to một phần của tập Mandelbrot, ta sẽ thu được một hình rất giống với tập Julila được tạo bởi giá trị c của tâm phần được phóng to. a) Tìm hiểu vấn đề Đối với biểu thức zn+1 = zn2 + c, ngoài hướng đã khảo sát như đã trình bày trong phần tập Mandelbrot, còn có hướng khảo sát khác bằng cách cho c cố định và xem xét dãy Tìm hiều lý thuyết hình học Fractal – GVHD Thạc sĩ Bùi Tiến Lên Phạm Trọng Tôn – Nguyễn Minh Đức 28 (zn) ứng với mỗi giá trị khác của z0. Theo hướng này chúng ta sẽ thu được 1 lớp các đối tượng fractal mới gọi là tập Julia. b) Công thức toán học Để thể hiện tập Julia trên màn hình máy tính, ta vẫn sử dụng các công thức như trong phần tập Mandelbrot , như là: xn+1 = xn2 - yn2 + p yn+1 = 2xnyn + q Ngoài ra các tính chất đã nêu về giới hạn của dãy (z0) vẫn được sử dụng cho tập Julia. c) Cài đặt Gồm các bước sau: Bước 1: Xuất phát với 1 giá trị khởi đầu z0 =(x0 , y0) và giá trị cố định c = (p,q). Bước 2: Kiểm tra z0 thuộc lớp 1 hay 2. Bước 3: Tô màu điểm ảnh tương ứng với z0 theo kỹ thuật tô màu được nêu ở trên. Bước 4: Chọn giá trị z0 mới và lặp lại bước 1 cho đến khi đã quét hết tất cả các giá trị z0 cần khảo sát. Sử dụng ký hiệu đã được xác định khi trình bày thuật toán Mandelbrot chúng ta có thuật toán tạo tập Julia một cách chi tiết được viết dưới dạng sau: for(Col = 0; Col<Max_Col; ++Col) { for(Row=0; Row<= Max_Row; ++Row) { x0 = xmin + Col* Δx0; y0 = ymax - Row* Δy0; X=Y= 0; Count =1; While((Count < Max_Iterations) & (X+Y < 4)) { X = xn2 ; Y = yn2 ; y0 = 2x0y0 + q ; x0 = X – Y + p ; ++Count ; } if(Count > Max_Iterations) Tô màu điểm ảnh (Col,Row) bởi màu có số hiệu (X+Y) Tìm hiều lý thuyết hình học Fractal – GVHD Thạc sĩ Bùi Tiến Lên Phạm Trọng Tôn – Nguyễn Minh Đức 29 (Max_Color -1) mod (Max_Color +1) ; else Tô màu điểm ảnh (Col,Row) bởi màu nền của bảng màu hiện tại; } Sự khác biệt chủ yếu giữa thuật toán này với thuật toán Mandelbrot là sự thay đổi vai trò của z0 và c. Giá trị c = (p,q) được giữ cố định trong khi z0 thay đổi. Các đại lượng Δx0 , Δy0 ,x0 ,y0 được xác định theo cách hoàn toàn giống với các đại lượng Δp, Δq, p, q trong thuật toán tạo tập Mandelbrot tức là: x0 = xmin + Col* Δx0; y0 = ymax - Row* Δy0; Còn có 1 điểm cần chú ý là các giá trị x0, y0 vừa đại diện cho z0 ban đầu và cũng đại diện cho dãy(zn) trong vòng lặp kiểm tra z0 thuộc lớp 1 hay 2. 3. Tập Phoenix Đây có lẽ là tập khá đẹp và diêm dúa chính vì thế nó mới có tên phoenix có nghĩa là “phượng hoàng”. Bạn hãy thử quan sát và xem điều này có đúng không nhé. ColMax xx x _ minmax -=D RowMax yy y _ minmax -=D Tìm hiều lý thuyết hình học Fractal – GVHD Thạc sĩ Bùi Tiến Lên Phạm Trọng Tôn – Nguyễn Minh Đức 30 a) Tìm hiểu vấn đề Họ các đường cong Phoenix do Shigehiro Ushiki ở trường đại học Kyoto tìm ra. phương trình của đường cong được xác định bởi: zn+1 = zn2 + p +qzn-1 Trong đó: zi Є C "i N. p=(p,0) Є C. q=(q,0) Є C. b) Công thức toán học Phương trình được khai triển thành các phần thực và ảo của zn có dạng: xn+1 = xn2 - yn2 + p + qxn-1 yn+1 = 2xnyn + qyn-1 với : xn+1 = Re(zn+1); yn+1 = Im(zn+1 ). Khi đó việc thể hiện đường cong này lên màn hình gần giống với việc thể hiện tập Julia. Tuy nhiên có 2 điểm thay đổi quan trọng: Thay đổi 1: · Trục x của màn hình biểu thị phần ảo của số phức z0. · Trục y của màn hình biểu thị phần thực của số phức z0. Ở đây chúng ta đảo ngược các trục thực và ảo của mặt phẳng phức thông thường là để thể hiện hình ảnh theo chiều đứng chứ không phải chiều ngang. Hình trên trình bày một loại đường cong, loại này với yêu cầu rõ ràng là phải đổi vai trò của trục x và y để hình ảnh có thể được thể hiện tốt trên màn hình. Do đó tương ứng với một điểm ảnh (Col,Row) trên màn hình sẽ là số phức z=(x,y) có dạng: x = ymax - Row* Δx; y = ymin - Col* Δy; Với: Thay đổi 2: Thay đổi về thuật toán tô màu. Ở đây với các điểm thuộc lớp 1 (theo định nghĩa đã nêu ở phần về tập Julia) chúng ta sẽ sử dụng 3 loại màu tùy theo ngưỡng hội tụ: · Màu 1: được sử dụng để tô các điểm z0 cho ra giá trị | zk| < 2 với tối đa k = 32 lần lặp. · Màu 2: được sử dụng để tô các điểm z0 cho ra giá trị | zk| < 2 với số lần lặp từ 33 đến 64. RowMax yy x _ minmax -=D ColMax xx y _ minmax -=D Tìm hiều lý thuyết hình học Fractal – GVHD Thạc sĩ Bùi Tiến Lên Phạm Trọng Tôn – Nguyễn Minh Đức 31 · Màu 3: được sử dụng để tô các điểm z0 cho ra giá trị | zk| < 2 với số lần lặp vượt quá 64 lần. Còn đối với các điểm thuộc lớp 2, chúng ta sẽ tô chúng bằng một màu khác với màu nền hiện tại. c) Cài đặt Với các thay đổi như trên, đoạn mã dùng xác định giá trị z0 thuộc lớp 1 hay 2, cùng với kỹ thuật tô màu điểm ảnh sẽ được thể hiện dưới ngôn ngữ lập trình như sau: for(Col = 0; Col<Max_Col; ++Col) { for(Row=0; Row<= Max_Row; ++Row) { xn = ymax - Row* Δx; yn = xmin + Col* Δy; X =Y= 0; Count = 0; While((Count < Max_Iterations) & (X+Y < 4)) { X = xn2 ; Y = yn2 ; yn+1 = 2xnyn + q yn-1; yn-1 = yn ; xn+1 = X– Y + qxn-1 + p; xn-1 = xn; xn = xn+1; yn = yn+1; ++Count; } if(Count > Max_Iterations) Tô màu điểm ảnh (Col,Row) bằng màu dành cho các điểm loại 2; else if(Count >= 64) Tô màu điểm ảnh (Col,Row) bằng màu 3; else if(Color >= 32) Tô màu điểm ảnh (Col,Row) bằng màu 2; else Tô màu điểm ảnh (Col,Row) bằng màu 1; } } Tìm hiều lý thuyết hình học Fractal – GVHD Thạc sĩ Bùi Tiến Lên Phạm Trọng Tôn – Nguyễn Minh Đức 32 IV. KẾT LUẬN & TÀI LIỆU THAM KHẢO 1. Kết luận Có lẽ nếu so với các ngành khác thì hình học fractal là một ngành khoa học máy tính còn khá non trẻ và mới mẻ. Mới chỉ được phát triển khoảng hơn 20 năm nhưng với những gì mà ngành này đạt được chúng ta có thể khẳng định rằng nó sẽ đạt được những bước phát triển mạnh mẽ hơn trong những năm tới. Nét đẹp cũng như những điều bí ẩn xung quanh các hệ hàm lặp và các bức ảnh fractal sẽ còn cuốn hút trí tò mò và óc tưởng tượng của con người lao vào khám phá. Về mặt thực tiễn, chúng ta cũng không thể phủ nhận rằng với lý thuyết hình học trong tay con người đã có trong tay một công cụ đầy sức mạnh để mô tả thế giới thực mà trước đây hình học cổ điển chưa thực hiện được. Những ứng dụng của hình học fractal trong thực tế ngày càng phong phú và mở rộng tới nhiều ngành, lĩnh vực khác nhau. Khi thực hiện đề tài này, mục đích chính của chúng em là tìm hiểu các vấn đề căn bản nhất, những lý thuyết nền tảng để xây dựng nên hình học fractal. Những điều thu được sau khi làm đề tài này có thể chưa nhiều và chưa thể ứng dụng gì nhiều vào thực tế nhưng đó sẽ là bước khởi đầu để nghiên cứu tốt hơn các vấn đề phức tạp hơn sau này. 2. Tài liệu tham khảo Có một nguồn tài liệu vô cùng phong phú và gần như bất tận luôn mở rộng đối với mọi người đó chính là mạng Internet. Tại đây bạn có thể tìm thấy mọi thông tin mà mình cần, riêng về vấn đề Fractal thì tôi thật sự choáng ngợp trước lượng kiến thức khổng lồ mà nó chứa đựng. Sau đây là một số site khá đặc biệt về Fractal mà tôi tìm được trong quá trình tim hiểu về nó. Site tìm kiếm: www.google.com (cực kỳ tốt, thứ duy nhất trên Internet rất đáng giá nhưng miễn phí ;o)) Keyword: Fractal theory, Fractal application, Fractal images, Fractal history, Fractal software (đừng tìm kiếm với những từ khoá quá chung chung như Fractal) www.fractalforum.com diễn đàn trực tuyến về fractal, tại đây cũng còn có tổ chức các kì thi ảnh fractal khá thú vị. www.fractal.com site chính thức của Fractal, ở đây có giới thiệu ba người đứng đầu tổ chức thế giới về Fractal, là nơi phát động các cuộc thi về Fractal, không nhiều thông tin nhưng là site cần biết. phòng trưng bày các tác phẩm fractal qua thời gian, nếu bạn đã lạc vào site này thì chắc chắn sẽ không rời khỏi phòng này sau ít nhất 30’. Về phần lý thuyết, đề tài này tham khảo chính trong cuốn sách “Cơ sở đồ hoạ máy tính” - NXB Giáo dục – Hoàng Kiếm (chủ biên) Dương Anh Đức – Lê Đình Duy – Vũ Hải Quân và Luận văn tốt nghiệp của các khoá trước. Ngoài ra còn tham khảo thêm một số e-book trên mạng như : “Dynamical systems and fractals” Karl-Heinz Becker and Michael Diirfler

Các file đính kèm theo tài liệu này:

  • pdfBao cao fractal.pdf
Tài liệu liên quan