ĐỒ ÁN TỐT NGHIỆP: Nghiên cứu về
hình học practal. Viết chương trình cài đặt
một số đường và mặt practal
ĐỒ ÁN TỐT NGHIỆP SVTH: Nguyễn Ngọc Hùng Cường
Đề tài : Hình học Fractal Trang 1
LỜI NÓI ĐẦU
Trong những năm gần đây, toán học và khoa học tự nhiên đã bước lên
một bậc thềm mới, sự mở rộng và sáng tạo trong khoa học trở thành một cuộc
thử nghiệm liên ngành. Cho đến nay nó đã đưa khoa học tiến những bước rất
dài. Hình học phân hình đã được đông đảo mọi người chú ý và thích thú nghiên
cứu. Với một người quan sát tình cờ màu sắc của các cấu trúc phân hình cơ sở
và vẽ đẹp của chúng tạo nên một sự lôi cuốn hình thức hơn nhiều lần so với
các đối tượng toán học đã từng được biết đến. Hình học phân hình đã cung cấp
cho các nhà khoa học một môi trường phong phú cho sự thám hiểm và mô hình
hoá tính phức tạp của tự nhiên. Những nguyên nhân của sự lôi cuốn do hình
học phân hình tạo ra là nó đã chỉnh sửa được khái niệm lỗi thời về thế giới thực
thông qua tập hợp các bức tranh mạnh mẽ và duy nhất của nó.
Những thành công to lớn trong các lĩnh vực của khoa học tự nhiên và kỹ
thuật dẫn đến sự ảo tưởng về một thế giới hoạt động như một cơ chế đồng hồ
vĩ đại, trong đó các quy luật của nó chỉ còn phải chờ đợi để giải mã từng bước
một. Một khi các quy luật đã được biết, người ta tin rằng sự tiến hoá hoặc phát
triển của các sự vật sẽ được dự đoán trước chính xác hơn nhiều, ít ra là về mặt
nguyên tắc. Những bước phát triển ngoạn mục đầy lôi cuốn trong lĩnh vực kỹ
thuật máy tính và sự hứa hẹn cho việc điều khiển thông tin nhiều hơn nữa của
nó đã làm gia tăng hy vọng của nhiều người về máy móc hiện có và cả những
máy móc ở tương lai. Nhưng ngày nay người ta đã biết chính xác dựa trên cốt
lỗi của khoa học hiện đại là khả năng xem xét tính chính xác các phát triển ở
tương lai như thế sẽ không bao giờ đạt được. Một kết luận có thể thu được từ
các lý thuyết mới còn rất non trẻ đó là : giữa sự xác định có tính nghiêm túc
với sự phát triển có tính ngẫu nhiên không những không có sự loại trừ lẫn nhau
mà chúng còn cùng tồn tại như một quy luật trong tự nhiên. Hình học phân
hình và lý thuyết hỗn độn xác định kết luận này. Khi xét đến sự phát triển của
một tiến trình trong một khoảng thời gian, chúng ta sử dụng các thuật ngữ của
lý thuyết hỗn độn, còn khi quan tâm nhiều hơn đến các dạng có cấu trúc mà
một tiến trình hỗn độn để lại trên đường đi của nó, chúng ta dùng các thuật ngữ
của hình học phân hình là bộ môn hình học cho phép “sắp xếp thứ tự” sự hỗn
độn. Trong ngữ cảnh nào đó hình học phân hình là ngôn ngữ đầu tiên để mô tả,
mô hình hoá và phân tích các dạng phức tạp đã tìm thấy trong tự nhiên. Nhưng
trong khi các phần tử của ngôn ngữ truyền thống (Hình học Euclide) là các
dạng hiển thị cơ bản như đoạn thẳng, đường tròn và hình cầu thì trong hình học
phân hình đó là các thuật toán chỉ có thể biến đổi thành các dạng và cấu trúc
nhờ máy tính.
Việc nghiên cứu ngôn ngữ hình học tự nhiên này mở ra nhiều hướng
mới cho khoa học cơ bản và ứng dụng. Trong đề tài này chỉ mới thực hiện
nghiên cứu một phần rất nhỏ về hình học phân hình và ứng dụng của nó. Nội
dung của đề tài gồm có ba chương được trình bày như sau:
ĐỒ ÁN TỐT NGHIỆP SVTH: Nguyễn Ngọc Hùng Cường
Đề tài : Hình học Fractal Trang 2
Chương I: Trình bày các kiến thức tổng quan về lịch sử hình học phân
hình, về các kết quả của cơ sở lý thuyết.
Chương II: Trình bày các kỹ thuật hình học phân hình thông qua sự
khảo sát các cấu trúc Fractal cơ sở và thuật toán chi tiết để tạo nên các cấu trúc
này.
Chương III: Kết quả cài đặt chương trình vẽ một số đường mặt fractal
và các hiệu ứng.
Nhân đây, em xin chân thành cảm ơn thầy T.S Huỳnh Quyết Thắng đã
tận tình hướng dẫn, chỉ dạy giúp đỡ em trong suốt thời gian thực hiện đề tài
nghiên cứu này.
Em cũng xin chân thành cảm ơn quý thầy cô khoa công nghệ thông tin
đã tận tình giảng dạy, trang bị cho chúng em những kiến thức cần thiết trong
suốt quá trình học tập, và em cũng xin gởi lòng biết ơn đến gia đình, cha, mẹ,
và bạn bè đã ủng hộ, giúp đỡ và động viên em trong những lúc khó khăn.
Đề tài được thực hiện trong một thời gian tương đối ngắn, nên dù đã hết
sức cố gắng hoàn thành đề tài nhưng chắc chắn sẽ không thể tránh khỏi những
thiếu sót nhất định. Rất mong nhận được sự thông cảm và đóng góp những ý
kiến vô cùng quý báu của các Thầy Cô, bạn bè, nhằm tạo tiền đề thuận lợi cho
việc phát triển đề tài trong tương lai.
Sinh viên thực hiện
Nguyễn Ngọc Hùng Cường.
ĐỒ ÁN TỐT NGHIỆP SVTH: Nguyễn Ngọc Hùng Cường
Đề tài : Hình học Fractal Trang 3
MỤC LỤC
Trang
LỜI NÓI ĐẦU. 1
Chương I:SỰ RA ĐỜI VÀ CÁC KẾT QUẢ CỦA HÌNH HỌC PHÂN HÌNH. 5
I.1 Sự ra đời của lý thuyết hình học phân hình 5
Tính hỗn độn của các quá trình phát triển có quy luật trong tự nhiên 5
Sự mở rộng khái niệm số chiều và độ đo trong lý thuyết hình học Eulide
cổ điển 8
I.2 Sự phát triển c ủa l ý thuyết hình học phân hình 9
I.3 Các ứng dụng tổng quát của hình học phân hình 10
Ứng dụng trong vấn đề tạo ảnh trên máy tính 11
Ứng dụng trong công nghệ nén ảnh 11
Ứng dụng trong khoa học cơ bản 13
I.4 Các kiến thức cơ sở của hình học phân hình 13
I.4.1 Độ đo Fractal 13
I.4.2 Các hệ hàm lặp IFS 17
Chương II : MỘT SỐ KỸ THUẬT CÀI ĐẶT HÌNH HỌC PHÂN HÌNH. 21
II.1 Họ đường Von Kock 21
Đường hoa tuyết Von Kock-Nowflake 21
Đường Von Kock-Gosper 26
Đường Von Kock bậc hai 3-đoạn 28
Đường Von Kock bậc hai 8-đoạn 30
Đường Von Kock bậc hai 18-đoạn 32
Đường Von Kock bậc hai 32-đoạn 33
Đường Von Kock bậc hai 50-đoạn 35
Generator phức tạp 38
II.2 Họ đường Peano 44
Đường Peano nguyên thuỷ 44
Đường Peano cải tiến 45
Tam giác Cesaro 49
Tam giác Cesaro cải tiến 51
Một dạng khác của đường Cesaro 54
Tam giác Polya 56
Đường Peano-Gosper 58
Đường hoa tuyết Peano 7-đoạn 62
Đường hoa tuyết Peano 13-đoạn 66
II.3 Đường Sierpinski 70
II.4 Cây Fractal 73
Các cây thực tế 73
Biểu diễn toán học của cây 73
II.5 Phong cảnh Fractal 77
II.6 Hệ thống hàm lặp (IFS) 84
Các phép biến đổi Affine trong không gian R
2
84
ĐỒ ÁN TỐT NGHIỆP SVTH: Nguyễn Ngọc Hùng Cường
Đề tài : Hình học Fractal Trang 4
IFS của các pháp biến đổi Affine trong không gian R
2
85
Giải thuật lặp ngẫu nhiên 86
II.7 Tập Mandelbrot 88
Đặt vấn đề 98
Công thức toán học 88
Thuật toán thể hiện tập Mandelbrot 89
II.8 Tập Julia 94
Đặt vấn đề 94
Công thức toán học 94
Thuật toán thể hiện tập Julia 95
II.9 Họ các đường cong Phoenix 97
Chương III : GIỚI THIỆU VỀ NGÔN NGỮ CÀI ĐẶT VÀ KẾT QUẢ
CHƯƠNG TRÌNH. 100
III.1 Giới thiệu về ngôn ngữ cài đặt 100
III.2 Kết quả chương trình 111
TÀI LIỆU THAM KHẢO 116
ĐỒ ÁN TỐT NGHIỆP SVTH: Nguyễn Ngọc Hùng Cường
Đề tài : Hình học Fractal Trang 5
CHƯƠNG I: SỰ RA ĐỜI VÀ CÁC KẾT QUẢ CỦA HÌNH HỌC
PHÂN HÌNH.
I.1 SỰ RA ĐỜI CỦA LÝ THUYẾT HÌNH HỌC PHÂN HÌNH:
Sự ra đời của lý thuyết hình học phân hình 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 phân hình
đượ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 lực 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.
□ TÍNH HỖN ĐỘN CỦA CÁC QUÁ TRÌNH PHÁT TRIỂN CÓ QUY
LUẬT TRONG TỰ NHIÊN:
Các công thức lặp có dạng:
X
n+1
=f(X
n
)
thường được sử dụng trong các ngành khoa học chính xác để mô tả các quá
trình lặp đi lặp lại có tính xác định. Các quá trình được xác định bởi công thức
trên, trong đó f thể hiện mối liên hệ phi tuyến giữa hai trạng thái nối tiếp nhau
X
n
và X
n+1
, được quan tâm đặc biệt. Các khảo sát trong những thập niên gần
đây đã phát hiện ra các cư xử kỳ dị của các tiến trình lặp như vậy.
Khảo sát chi tiết đầu tiên được nhà khí tượng học Edward N. Lorenz
tiến hành vào năm 1961 khi nghiên cứu hệ toán học mô phỏng dự báo thời tiết.
Về mặt lý thuyết, hệ này cho ra các kết quả dự đoán chính xác về thời tiết trong
một khoảng thời gian dài. Tuy nhiên, theo Lorenz quan sát, khi bắt đầu tính
toán lại dựa vào dữ liệu cho bởi hệ tại một thời điểm tiếp sau đó không giống
với các kết quả dự đoán ban đầu. Hơn nữa sai số tính toán sẽ tăng lên nhanh
chóng theo thời gian. Điều này dẫn đến kết luận là nếu tiến trình dự đoán lại từ
một thời điểm nào đó trong tiến trình dự báo, khoảng thời gian để các kết quả
dự báo tiếp theo vẫn còn chính xác sẽ bị thu hẹp lại tức là không thể dự báo
chính xác về thời tiết trong một khoảng thời gian khá lớn. Vấn đề được Lorenz
tìm thấy ở đây ngày nay được gọi là sự hiện diện của tính chất hỗn độn trong
các tiến trình lặp xác định.
Tiếp theo sau phát hiện của Lorenz, vào năm 1976 Robert May trong
bài viết với tựa đề “Các mô hình toán học đơn giản với các hệ động lực phức
tạp” đã đề cập đến một vấn đề tương tự. Đó là sự hỗn độn của quá trình phát
triển dân số trong tự nhiên, vốn được xem là đã được xác định rất rõ ràng và
chi tiết nhờ mô hình dân số Verhulst xây dựng dưới đây.
Nếu ký hiệu:
ĐỒ ÁN TỐT NGHIỆP SVTH: Nguyễn Ngọc Hùng Cường
Đề tài : Hình học Fractal Trang 6
- R là tốc độ gia tăng dân số mỗi năm.
- P
o
là lượng dân số khởi điểm (của một quốc gia, một thành
phố,…).
- P
n
là lượng dân số có được sau n năm phát triển.
Ta có quan hệ sau:
Để ý là nếu dân số phát triển đều, tức là R không đổi từ năm này sang
năm khác, từ (1) ta sẽ có:
P
n+1
= f(P
n
) = (1+R)P
n
Do đó sau n năm, lượng dân số khảo sát sẽ là:
P
n
= (1+R)
n
.P
o
Công thức này chỉ ra sự gia tăng dân số theo hàm mũ là một điều không
thực tế. Vì vậy Verhulst đề nghị R thay đổi cùng với lượng dân số được khảo
sát. Một cách cụ thể, Verhust cho R tỉ lệ với tốc độ phát triển dân số theo môi
trường (P-P
n
) / N. Trong đó N là lượng dân số tối đa có thể có ứng với điều
kiện môi trường cho trước. Như vậy có thể biểu diễn R dưới dạng:
Với r là hệ số tỷ lệ gọi là tham số phát triển theo môi trường.
Từ (1) và (2) suy ra:
Do đó:
Đặt:
Pn+1 - Pn
R = , n > 0 (1)
P
n
N - P
n
R = r (2)
N
P
n+1
- P
n
N - P
n
= r
P
n
N
P
n+1
-
P
n
N P
n
= r
P
n
N
N
P
k
P
k
= ta có:
N
P
n+1
- P
n
= r(1 - P
n
)
P
n
ĐỒ ÁN TỐT NGHIỆP SVTH: Nguyễn Ngọc Hùng Cường
Đề tài : Hình học Fractal Trang 7
Suy ra:
P
n+1
= P
n
+ rP
n
(1 – P
n
)
Phương trình này được gọi là phương trình dân số Verhust. Rõ ràng
phương trình được xác định rất đơn giản. Do đó, kể từ khi được đưa ra người ta
áp dụng mà không nghi ngờ gì về tính ổn định của nó. Tuy nhiên khi May khảo
sát phương trình này thì với r thay đổi trong phạm vi khá lớn, ông đã khám phá
ra sự bất ổn định về tỉ lệ phát triển dân số theo môi trường P
k
.
Các kết quả quan sát chi tiết cho thấy khi số lần lặp n trở nên khá lớn ta
có các trường hợp sau:
- Với 0 < r < 2: Dãy (P
n
) tiến đến 1, tức là sự phát triển dân số đạt
mức tối đa.
- Với 2 < r < 2,449: Dãy (P
n
) dao động tuần hoàn giữa hai giá trị,
tức là sự phát triển dân số biến động giữa hai mức xác định. Hình
vẽ (I.1) minh hoạ cho trường hợp r = 2.3 và P
o
Dân số:
Thời gian
Hình vẽ I.1 với r = 2.3 và P
0
= 0.01
- Với 2,449 < r < 2,570: Dãy (P
n
) dao động ổn định với các giá trị
được lặp lại theo chu kỳ lần lượt được nhân đôi khi giá trị r chạy
từ 2,449 đến 2,570. Hình vẽ (I.2) minh hoạ trường hợp r = 2,5 và
sự dao động ở đây có chu kỳ 4.
Dân số:
Thời gian
Hình vẽ I.2 với r = 2.5
- Với r > 2.570: Dãy (P
n
) không còn tuần hoàn nữa mà trở nên hỗn
độn, theo nghĩa các giá trị của dãy được chọn một cách hoàn toàn
xác định nhưng không có thể dự đoán chính xác. Hình vẽ (I.3)
minh hoạ trường hợp r = 3.0 và P
o
= 0.1
ĐỒ ÁN TỐT NGHIỆP SVTH: Nguyễn Ngọc Hùng Cường
Đề tài : Hình học Fractal Trang 8
Dân số
Thời gian
Hình vẽ I.3 với r = 3.0 và P
o
= 0.1
Một kết quả lý thuyết cũng đã được chứng minh bởi Jame York và Tiên
Yien Li trong bài viết ”Các chu kỳ 3 chứa đựng sự hỗn độn” vào tháng
12/1975. York và Li đã chỉ ra rằng mọi hàm số được xác định tương tự như
phương trình dân số có một chu kỳ tuần hoàn 3 thì cũng có chu kỳ tuần hoàn n,
với n là số tự nhiên khác 0 và 1. Điều này dẫn đến sự kiện là vô số các tập giá
trị tuần hoàn khác nhau được sản sinh bởi loại phương trình này.
Vào năm 1976, Mitchell Feigenbaum đã nghiên cứu phương trình này
một cách độc lập với May và York. Feigenbaum xét phương trình dân số ở
dạng đơn giản:
y = x(1- x)
và thể hiện nó trên sơ đồ phân nhánh. Nếu gọi r
n
là giá trị tham số phát
triển theo môi trường của mô hình Verhulst tại lần rẻ nhánh thứ n (là lúc ứng
với r
n
đó, chu kỳ 2
n
trở nên không ổn định nữa và chu kỳ 2
n+1
đạt được sự ổn
định), thì tỷ số của các khoảng liên tiếp
n
xác định bởi:
Sẽ tiến về giá trị = 4.669 khi n. Tính chất này cũng được tìm thấy
trong các tiến trình có chu kỳ lần lượt được nhân đôi và khác với tiến trình
Verhulst. Do đó giá trị này ngày nay được gọi là hằng số phổ dụng
Feigenbaum (trong lý thuyết hỗn độn).
□ SỰ MỞ RỘNG KHÁI NIỆM SỐ CHIỀU VÀ ĐỘ ĐO TRONG LÝ
THUYẾT HÌNH HỌC EULIDE CỔ ĐIỂN:
Vào các năm 1890 & 1891, trong khi tìm kiếm các đặc trưng bất biến
của các đối tượng hình học qua các phép biến đổi đồng phôi trong lý thuyết
topo, các nhà toán học Peano & Hilbert đã phát minh ra các đường cong có
tính chất rất đặc biệt. Đó là các đường cong không tự cắt theo một quy luật
được chỉ ra bởi Peano và Hilbert, chúng lấp đầy mọi miền hữu hạn của mặt
phẳng. Hình học Euclide cổ điển quan niệm các đường cong như vậy vẫn chỉ là
r
n
-
r
n-1
n
=
r
n+1
- r
n
ĐỒ ÁN TỐT NGHIỆP SVTH: Nguyễn Ngọc Hùng Cường
Đề tài : Hình học Fractal Trang 9
các đối tượng một chiều như các đường thẳng. Tuy nhiên trực quan cho thấy
cách nhìn như vậy về số chiều là rất gò bó. Do đó người ta bắt đầu nghĩ đến
một sự phân lớp mới, trong đó các đường có số chiều bằng 1 được đại diện bởi
đường thẳng, các đối tượng hai chiều được đại diện bởi mặt phẳng, còn các
đường cong lấp đầy mặt phẳng đại diện cho các đối tượng có số chiều giữa 1
và 2. Ý tưởng cách mạng này đã dẫn đến việc hình thành và giải quyết bài toán
số chiều hữu tỷ gây ra nhiều tranh luận toán học trong các thập kỷ gần đây.
Tiếp sau đó, vào năm 1904 nhà toán học Thụy Điển Helge Koch đã đưa
ra một loại đường cong khác với những đường cong của Peano và Hilbert. Các
đường cong Von Koch không lấp đầy mặt phẳng nhưng lại có độ dài thay đổi
một cách vô hạn mặc dù chúng được chứa trong một miền hữu hạn. Những
đường cong như vậy có rất nhiều trong tự nhiên, ví dụ như các đường bờ biển,
đường biên của một bông hoa tuyết, các đám mây, vv… Tất vả các đường cong
này đều một tính chất đặc trưng là đồng dạng. Nó được biểu hiện bởi sự giống
nhau giữa một phần rất nhỏ của đường cong được phóng lớn với một phần
khác lớn hơn của cùng một đường cong đó. Tính chất này giữ một vị trí quan
trọng trong việc hình thành nên các dạng cấu trúc vô cùng phức tạp của tự
nhiên, nhưng vào thời Von Koch lại được hiểu biết rất sơ lược.
Chỉ với sự giúp đỡ của máy tính điện tử, bản chất của tính đồng dạng
mới được nghiên cứu đầy đủ và chi tiết trong tác phẩm “Hình học phân hình
trong tự nhiên” của Benoit B. Mandelbrot xuất bản năm 1982. Trong tác phẩm
của mình, Mandelbrot đã phân rã các dạng cấu trúc phức tạp của tự nhiên
thành các thành phần cơ bản gọi là fractal. Các fractal này chứa đựng các hình
dáng tự đồng dạng với nhiều kích thước khác nhau. Mandelbrot đã tạo nên
những bức tranh fractal trừu tượng đầu tiên và nhận thấy rằng đằng sau các đối
tượng tự nhiên như các đám mây, các dãy núi, các khu rừng, vv… là các cấu
trúc toán học tương tự nhau. Chúng có khuynh hướng hài hoà về màu sắc và
cân đối về hình thể. Ngoài ra Mandelbrot cũng thiết lập cách xác định số chiều
và độ dài của các dạng fractal cơ sở. Chính với định nghĩa về số chiều này, bài
toán số chiều không nguyên mới được giải quyết một cách hoàn chỉnh. Có thể
nói công trình của Benoit B.Mandelbrot đã chính thức khai sinh lý thuyết hình
học phân hình sau hơn nửa thế kỷ nghiên cứu liên tục.
I.2 SỰ PHÁT TRIỂN CỦA LÝ THUYỂT HÌNH HỌC PHÂN HÌNH:
Kể từ khi ra đời một cách chính thức vào năm 1982 cho đến nay, lý
thuyết hình học phân hình học phân hình đã phát triển một cách nhanh chóng.
Sau khi đặt nền móng cho lý thuyết phân hình, Mandelbrot cùng với các
nhà toán học khác như A. Douady và J.Hubbard đã phát triển lý thuyết về các
mặt 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 Mandelbrot và tập Julia. Ngoài ra các nghiên cứu
cũng cố gắng tìm kiếm mối liên hệ giữa các cấu trúc này, ví dụ như mối liên hệ
giữa tập Mandelbrot và Julia.
ĐỒ ÁN TỐT NGHIỆP SVTH: Nguyễn Ngọc Hùng Cường
Đề tài : Hình học Fractal Trang 10
Dựa trên các công trình của Mandelbrot (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á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 toà 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 ra các công trình có tính chất lý thuyết, hình học phân hình 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ụ dựa trên lý thuyết IFS, Barnsley đã phát
triển lý thuyết biến đổi phân hình á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 phân hình 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 phân hình (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.
I.3 CÁC ỨNG DỤNG TỔNG QUÁT CỦA HÌNH HỌC PHÂN HÌNH:
Hiện nay có 3 hướng ứng dụng lớn của lý thuyết hình học phân hình,
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.
□ ỨNG DỤNG TRONG VẤN ĐỀ TẠO ẢNH TRÊN 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 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 phân hình 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ẽ.
ĐỒ ÁN TỐT NGHIỆP SVTH: Nguyễn Ngọc Hùng Cường
Đề tài : Hình học Fractal Trang 11
Ngoài các ứng dụng trong lĩnh vực giải trí, hình học phân hình còn có
mặt trong các ứng dụng tạo ra các hệ đồ hoạ 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 hoạ véctơ cũng như sử dụng các ảnh
bitmap như các đối tượng. Như đã biết, các ảnh bitmap hiển thị hết sức nhanh
chóng, thích hợp cho các ứng mang tính tốc độ, các ảnh véctơ 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ệ
phần mềm này trong việc tạo và hiển thị các ảnh có độ phức tạp cao.
□ ỨNG DỤNG TRONG CÔNG NGHỆ NÉN ẢNH:
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ượt quá khả năng lưu trữ của các thiết
bị 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ư chụp đòi hỏi vùng nhớ 24 bit cho 1 điểm ảnh, nên để hiện ảnh đó trên 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 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 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ệ nén 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ộc. 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 phân hình được áp dụng gần đây bởi
Iterated System đáp ứng được yêu cầu này.
ĐỒ ÁN TỐT NGHIỆP SVTH: Nguyễn Ngọc Hùng Cường
Đề tài : Hình học Fractal Trang 12
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 một điểm bất động x
r
sao cho:
X
r
= f(x
r
)
Micheal F.Barnsley đã mở rộng kết quả này cho một 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 một
“điểm” bất động x
r.
. Để ý 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 co thích hợp đã được thực hiện tự động hoá nhờ quá
trình fractal một ảnh số hoá 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 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 phân
hình là bộ bách khoa toàn thư multimedia với tên gọi “Microsoft Encarta”
được đưa ra vào tháng 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ã hoá dưới dạng các dữ
liệu fractal và chỉ chiếm xấp xỉ 600Mb trên một đĩa compact.
Ngoài phương pháp nén phân hình 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. Ảnh cần nén có thể xem là một đối tượng 3 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ó. Ảnh đượ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 quả 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 các thông tin về 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.
□ Ứ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 phân hình đã 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ẽ như đã trình bày
trong phần I.1, 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 quá 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ế
ĐỒ ÁN TỐT NGHIỆP SVTH: Nguyễn Ngọc Hùng Cường
Đề tài : Hình học Fractal Trang 13
rất nhiều. Chỉ gần đây với sự ra đời của lý thuyết fractal và sự hỗ trợ đắt 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 phân hình trong lĩnh vực này 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
phân hình đã đượ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 hoá 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 quả thu
được giữ vai trò rất quan trọng trong các lĩnh vực tương ứng.
I.4 CÁC KIẾN THỨC CƠ SỞ CỦA LÝ THUYẾT HÌNH HỌC PHÂN
HÌNH:
I.4.1 ĐỘ ĐO FRACTAL:
□ Số chiều Hausdorff của một tập hợp A R
n
:
Cho trước các số thực dương s và . Gọi h
s
(A) là độ đo Hausdorff s-
chiều của tập A thì h
s
(A) được xác định bởi:
H
s
(A) = lim h
s
(A)
0
với:
trong đó:
diam (U
i
) = sup [ d(x,y) : x,y U
i
], với d là metric Euclide trong không
gian R
n
, [U
1
, U
2
,… ] là một phủ mở của A và diam(U
i
) < , i.
Hausdorff đã chứng minh được sự tồn tại của một số D
H
(A) sao cho:
0 khi s > D
H
(A)
h
S
(A) =
khi s < D
H
(A)
Giá trị D
H
(A) được gọi là số chiều Hausdorff của tập A.
Nói cách khác:
D
H
(A) thì h
S
(A) có thể là một số thực dương 0 hay .
Định nghĩa này giữ vai trò quan trọng trong lý thuyết hình học phân
hình 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
h
s
(A) = inf diam(U
i
)
s
i=1
ĐỒ ÁN TỐT NGHIỆP SVTH: Nguyễn Ngọc Hùng Cường
Đề tài : Hình học Fractal Trang 14
đó, đồ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-
BESCOVITCH ):
Định nghĩa:
Cho trước một cấu trúc tự đồng dạng được chia thành N phần, hệ số thu
nhỏ của mỗi phần so với cấu trúc ban đầu là r. Ký hiệu D
S
là đại lượng xác
định bởi:
Khi đó D
S
được gọi là số chiều tự đồng dạng của cấu trúc đó.
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 của 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 được 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:
log N
D
S
=
log 1/r
D 2
3 log
2
3 log
3
1
1
log
9 log
s
D 3
3 log
3
3 log
3
1
1
log
27 log
s
ĐỒ ÁN TỐT NGHIỆP SVTH: Nguyễn Ngọc Hùng Cường
Đề tài : Hình học Fractal Trang 15
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:
- Trục hoành: thể hiện logarit của độ chính xác trong phép đo chiều
dài đường cong. Độ chính xác được đặc tả bởi 1/s, với s là đơn vị
đo độ dài. Ở đây giá trị s càng nhỏ thì độ chính xác của phép đo
càng lớn.
- Trục tung: thể hiện logarit của độ dài u đo được ứng với một đơn
vị đo s.
- d: là hệ số góc của đường thẳng hồi qui dùng để xấp xỉ các giá trị
đo u đo được dựa trên phương pháp bình phương cực tiểu. Ta có
quan hệ:
log u = d . log (1/s + b), b là hệ số tự do.
Khi đó số chiều compa D
C
được xác định bởi:
D
C
= 1 + d
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:
Biểu diễn các đại lượng có liên quan trên hệ toạ độ log/log đã được trình
bày ở trên với chú ý sau bước tạo sinh thứ k, đường cong gồm 8
k
đoạn, mỗi
đoạn có độ dài s = 1 / 4
k
nên độ dài của đường cong sẽ là 8
k
.1/4
k
= 2
k
.
Khi đó giá trị trên trục hoành là log
4
1 / 1 / 4
k
= k ứng với giá trị trên trục
tung là: log
4
2
k
= k / 2. Do đó ta xác định được d = 0.5.
Vậy: D
C
= 1 + 0.5 = 1.5
generator
initiator
generator
ĐỒ ÁN TỐT NGHIỆP SVTH: Nguyễn Ngọc Hùng Cường
Đề tài : Hình học Fractal Trang 16
□ 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ấ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ệ ½. Gọi N(s) là 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ệ toạ độ log/log
như sau:
- Trục hồnh biểu thị giá trị của đại lượng log
2
(1/s).
- Trục tung biểu thị giá trị của đại lượng log
2
N((s)).
- D
B
là hệ số góc của đường thẳng hồi qui đối với tập hữu hạn các
điểm (s, N(s)) của hệ toạ độ.
Khi đó ta có:
D
B
xác định như vậy được gọi là số chiều box-counting của cấu trúc
fractal đã cho.
□ SỐ CHIỀU BOX-COUNTING TRONG MỐI LIÊN HỆ VỚI SỐ
CHIỀU HAUSDORFF:
Định nghĩa:
Gọi N
(A) là giá trị nhỏ nhất của các tập hợp có khả năng phủ A và có
đường kính tối đa là . Khi đó ta có:
log
2
N(2
–
(k+1)
) – log
2
N(2
–
k
) N(2
–
(k + 1)
)
D
B
= = log
2
log
2
2
k + 1
– log
2
2
k
N(2
– k
)
sau như
n
R của A chặn bò
con tậpmột trên
B
D counting- boxchiều số của thức hìnhnghóa đònh
một có Ta .
s
hạngsố các bởi
s
)
i
diam(U hạngsố các thay cách bằng
này tác thao hóagiản đơn counting- boxchiều Số .
s
)
i
diam(U
1 i
hạn
vô
tổng
đònh
xác
việc
là
Hausdorff
chiều
số
tính
khi
yếu
chủ
khăn
Khó
δ
Σ
ĐỒ ÁN TỐT NGHIỆP SVTH: Nguyễn Ngọc Hùng Cường
Đề tài : Hình học Fractal Trang 17
Tuy nhiên 2 định nghĩa số chiều này khơng phảI ln cho kết quả
giống nhau. Ví dụ xét tập các số hữu tỷ trong khoảng đóng [0, 1]. Tập này có
số chiều box-counting là 1 trong khi số chiều Hausdorff tương ứng bằng 0.
Kết quả này còn có thể mở rộng cho tập con trù mật A của R
n
, vớI D
B
(A) = n
và D
H
(A) n.
I.4.2 CÁC HỆ HÀM LẶP IFS:
□ Khơng gian ảnh Hausdorff:
Giả sử (X, d) là một khơng gian mtric đầy đủ. Ở đây X được giới hạn
bằng R
2
và d là metric Euclide. Ký hiệu H(X) là khơng gian các tập con
compact khác rỗng của X. Ta có các định nghĩa sau:
Đị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(B) được xác định
bởi:
Định nghĩa 3:
i,)
i
diam(U và A của hạn hữumột phủ là } ,
2
U,
1
U {
: đó trong
}
s
1i
{ inf
s
. (A)N
: vì hơngiản đơn (A)
B
D đònh xác nhiên Tuy
. (A)
H
D của nghóa đònh với tự tương (A)
B
D của nghóa đònh ràng rõVậy
}
s
. (A)N : s { sup } 0
s
. (A)N : s { inf (A)
b
D
: đó Do
(A)
b
D s khi
(A)
b
D s khi0
s
. (A)N
: rằng rachỉ trên nghóa Đònh
1
log
(A)
N
log
0
lim(A)
b
D
δ
δΣδ
δ
δ
δ
δ
δ
δ
δ
δ
δ
δ
B
y
:
y)
d(x,
min
B)
d(x,
A
x
:
B)
d(x,
max
B)
d(x,
ĐỒ ÁN TỐT NGHIỆP SVTH: Nguyễn Ngọc Hùng Cường
Đề tài : Hình học Fractal Trang 18
Khoảng cách Hausdorff giữa hai điểm A và B H(H) đượ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:
Ta có (H(X), h) là một không gian metric đầy đủ. Hơn nữa nếu
A
n
H(X) với n = 1,2,… lập thành một dãy Cauchy thì tập hợp A xác định bởi:
A = lim A
n
0
cũng thuộc H(X). A có thể được đặc tả như sau:
A = [ x X : một dãy Cauchy [ x
n
A
n
] hội tụ về x]
□ Á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:
Giả sử S là một tập con compact khác rỗng của X. Khi đó ta có:
w(S) = [w(x) : x S] là một tập khác rỗng. Ta chứng minh w(S)
compact. Xét [ y
n
= w(x
n
) ] là một dãy vô hạn điểm của w(S).
Khi đó [x
n
] cũng là một dãy vô hạn điểm trong S. Vì S compact
nên tồn tại một dãy con [x
n
] hội tụ về một điểm x’ S, nhưng do
tính liên tục của w suy ra được [ y
Nn
= f (x
Nn
) ] là một dãy con
của [ y
n
] hội tụ về y’ w(S). Vậy w(S) compact.
Bổ đề được 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ó 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:
Ad(B,B),d(A, max B)h(A,
ĐỒ ÁN TỐT NGHIỆP SVTH: Nguyễn Ngọc Hùng Cường
Đề tài : Hình học Fractal Trang 19
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.
Chứng minh:
Từ bổ đề 1 suy ra w: X X liên tục. Do đó theo bổ đề 2, á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), 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ột 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:
Ký hiệu [w
n
] là các ánh xạ co trên (H(X), h) với các hệ số co tương ứng
s
n
, n = 1, 2,…,N. Xác định W : H(X) H(X) bởi:
N
W(B) = w
n
(B)
n=1
với B H(X). Khi đó W là ánh xạ co với hệ số co s = max s
n
.
1nN
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ó:
C)s.h(B,
C)}.h(B,
2
s , C).h(B,
1
s { max
(C))}
2
w , (B)
2
h(w, (C))
1
w , (B)
1
h(w{ max
(C))
2
w
(C)
1
w
,
(B)
2
w
(B)
1
h(w
W(C))
,
h(W(B)
ĐỒ ÁN TỐT NGHIỆP SVTH: Nguyễn Ngọc Hùng Cường
Đề tài : Hình học Fractal Trang 20
Vậy W là ánh xạ co với N = k +1.
Do đó theo ngun 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:
Một hệ hàm lặp gồm một khơng gian metric đầy đủ (X, d) và một bộ
hữu hạn các ánh xạ co w
n
với hệ số co tương ứng s
n
, n = 1, 2,…, N. Ta ký hiệu
IFS thay cho cụm từ hàm lặp. Một IFS được ký hiệu bởi [X; w
n
, n = 1, 2,…, N]
và hệ số co s = max s
n
1nN
Đị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 đó.
n
s
1
k
n
1
max)
1k
s,
T
max(ss co số hệvới H(X) trên
co xạ ánh là Wcó cũng ta , 2 N với nạp quithuyết giả do nhưng
(B)
1k
wT(B) W(B)
:viết thể có Vậy .
n
s
kn 1
max
T
s co số hệvới H(X) trên
co xạ ánhmột là T có ta nạp quithuyết giả do thì
n
w
k
1n
TĐặt
(B)
1k
w(B)
n
w
k
1n
(B)
n
w
1
k
1n
W(B)
. H(X) B bất kỳvới (B)
n
W
n
lim A bởitrước cho được và
(A)
n
w
N
1n
W(A)A
: với H(X) A động điểm bấtmột nhất duy có này xạ Ánh
H(X) CB, , C)B, s.h( W(C)), h(W(B)
: là tức , s co số hệvới h(d)), (H(X)
đủ đầy metric gian khôngtrên co xạ ánhmột là H(X) B đó trong
(B)
n
w
N
1n
W(B)
: bởiđònh xác H(X) H(X)
:
W
đổi
biến
phép
đó
Khi
.
s
co
số
hệ
với
N}
,
1,2,
n
,
n
w
{X;
IFS
một
Xét
ĐỒ ÁN TỐT NGHIỆP SVTH: Nguyễn Ngọc Hùng Cường
Đề tài : Hình học Fractal Trang 21
CHƯƠNG II: MỘT SỐ KỸ THUẬT CÀI ĐẶT HÌNH HỌC PHÂN
HÌNH.
II.1 HỌ ĐƯỜNG VONKOCK:
Trong phần này chúng ta sẽ cùng nhau thảo luận các fractal được phát
sinh bằng cách sử dụng đệ qui initiator / generator với kết quả là các hình tự
đồng dạng hoàn toàn. 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ố đoạn 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-NOWFLAKE:
Đường hoa tuyết được xây dựng bởi nhà toán học Helge Von Kock vào
năm 1904. Ở đây chúng ta bắt đầu với initiator là một đoạn thẳng. Còn
generator được phát sinh như sau:
Generator của đường von kock
Chúng ta chia đoạn thẳng thành ba phần bằng nhau. Sau đó thay thế một
phần ba đoạn giữa bằng tam giác đều và bỏ đi cạnh đáy của nó. Sau đó chúng
ta lặp lại quá trình này cho mỗi đoạn thẳng mới. Nghĩa là chia đoạn thẳng mới
thành ba phần bằng nhau và lặp lai các bước như trên.
Ta thấy quá trình xây dựng là tự đồng dạng, nghĩa là mỗi phần trong 4
phần ở bước thứ k là phiên bản nhỏ hơn 3 lần của toàn bộ đường cong ở bước
thứ (k–1).
R
N
D
1
log
)
log(
ĐỒ ÁN TỐT NGHIỆP SVTH: Nguyễn Ngọc Hùng Cường
Đề tài : Hình học Fractal Trang 22
Như vậy mỗi đoạn thẳng của generator có chiều dài R = 1/3 (giả sử
chiều dài đoạn thẳng ban đầu là 1) và số đoạn thẳng của generator N = 4. Do
vậy số chiều fractal của đường hoa tuyết là:
Để viết một đoạn mã cho việc phát sinh ra đường hoa tuyết, chúng ta
cần phải trình bày về đồ hoạ con rùa (turtle graphic). Loại đồ hoạ này gồm một
số hàm thao tác chính sau:
Hàm Point (X1, Y1, X2, Y2):
Hàm này tính góc giữa con rùa và trục x (tức là tính góc giữa đoạn
thẳng có hai đầu mút có toạ độ (X1, Y1) và (X2, Y2) ) theo độ đo góc thông
thường. Sau đây là đoạn mã mô tả cách cài đặt hàm:
/* EDIT CODE */
#include”stdafx.h”
#include”math.h”
#define PI 3.141593
double Point(double X1, double Y1, double X2, double Y2)
double Theta,Temp=180/PI;
if((X2-X1)= = 0)
if(Y2 > Y1)
Theta= 90;
else
Theta = 270;
else
Theta= atan((Y2 -Y1) / (X2 -X1)) * Temp;
if (X1 > X2)
Theta += 180;
return Theta;
Hàm Turn (Angle, Turtle-Theta):
Hàm này cộng thêm vào Turtle-Theta một góc Angle (tức là quay con
rùa đi một góc theo chiều ngược chiều kim đồng hồ nếu Angle > 0, còn nếu
Angle < 0 thì quay cùng chiều kim đồng hồ). Đoạn mã sau đây minh hoạ cách
cài đặt:
void Turn(double Angle, double &Turtle_Theta)
Turtle_Theta+=Angle;
Hàm Step (Turtle-X, Turtle-Y, Turtle-R, Turtle-Theta):
2618,1
3log
4
log
1
log
)
log(
R
N
D
ĐỒ ÁN TỐT NGHIỆP SVTH: Nguyễn Ngọc Hùng Cường
Đề tài : Hình học Fractal Trang 23
Hàm này di chuyển con rùa đi một bước. Chiều dài của mỗi bước
là Turtle-R. Ở đây hàm sử dụng vị trí con rùa hiện tại có toạ độ (Turtle-X,
Turtle-Y) và góc định hướng là Turle-Theta để xác định vị trí toạ độ mới sau
khi di chuyển một bước. Đoạn mã sau đây minh hoạ cho cách cài đặt:
void Step(double &Turtle_X, double &Turtle_Y,
double Turtle_R, double Turtle_Theta)
Double Temp=PI/180;
Turtle_X+=Turtle_R*cos(Turtle_Theta* Temp);
Turtle_Y+=Turtle_R*sin(Turtle_Theta* Temp);
Giả sử initiator gồm N điểm, mỗi điểm có toạ độ là (x[i], y[i] ) và đường
hoa tuyết có mức là Level (mức bắt đầu là 1), thì việc tạo ra đường hoa tuyết
như sau (các đường sau này được tạo ra cũng giống như vậy):
For(i= 0 ; i< N ;++i)
-Generator(x[i],y[i],x[i+1],y[i+1],Level);
Với hàm –Generator tương ứng với đoạn mã như sau:
//Phát sinh họ đường Vonkock:
void Generator(CDC *pDC,double X1, double Y1, double X2,
double Y2, int Level,int NumLines,double
LineLen,double Angles[])
double *XPoints,*YPoints;
int I;
double Turtle_Theta,Turtle_X, Turtle_Y, Turtle_R;
XPoints = new double[NumLines +1];
YPoints = new double[NumLines +1];
Level;
Turtle_R=sqrt((X2-X1)* (X2-X1)+ (Y2-Y1)* (Y2-Y1))*LineLen;
XPoints[0]=X1;
YPoints[0]=Y1;
XPoints[NumLines]=X2;
YPoints[NumLines]=Y2;
Turtle_Theta=Point(X1,Y1,X2,Y2);
Turtle_X=X1;
Turtle_Y=Y1;
Turn(Angles[0],Turtle_Theta);
for (I=1; I<NumLines; ++I)
Step(Turtle_X, Turtle_Y, Turtle_R, Turtle_Theta);
XPoints[ I ]=Turtle_X;
YPoints[ I ]=Turtle_Y;
Turn(Angles[ I ],Turtle_Theta);
ĐỒ ÁN TỐT NGHIỆP SVTH: Nguyễn Ngọc Hùng Cường
Đề tài : Hình học Fractal Trang 24
if (Level)
for (I=0; I<NumLines; I++)
X1=XPoints[ I ];
Y1=YPoints[ I ];
X2=XPoints[ I +1];
Y2=YPoints[ I +1];
Generator(pDC,X1,Y1,X2,Y2,Level,
NumLines,LineLen,Angles);
else
for (I= 0; I<NumLines; I++ )
pDC->MoveTo((int)XPoints[ I ], (int) YPoints [ I ]);
pDC->LineTo((int)XPoints[ I+1 ], (int) YPoints [ I+1 ]);
delete[]XPoints;
delete[]YPoints;
Hàm này cũng có thể áp dụng cho việc phát sinh ra các đường khác
cùng họ. Chẳng hạn sau đây là một minh hoạ cho hình vẽ trình bày ở mức 3
của đường Von Kock-Snowflake.
Hình : Đường Von Kock-Snowflake mức 3.
Lưu đồ của đoạn mã ở trên như sau: