Giải thuật di truyền trong cấp phát mảnh

25 240 0
Giải thuật di truyền trong cấp phát mảnh

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Môn học: Cơ sở dữ liệu nâng cao Hướng dẫn: PGS. TS. Đỗ Phúc Lớp: Cao học K6-2011 Học viên: Nguyễn Hữu Việt Long Mã số: CH1101101 Trường Đại học Công Nghệ Thông Tin – TP. Hồ Chí Minh Giải thuật di truyền trong cấp phát mảnh TP. Hồ Chí Minh 18-08-2012 Mục lục I. Tổng quan Cơ sở dữ liệu phân tán là một lĩnh vực nghiên cứu không mới nhưng gần đây, do sự phát triển nhanh chóng của công nghệ truyền thông và sự bành trướng mạnh mẽ của mạng Internet, cùng với xu thế toàn cầu hóa trong mọi lĩnh vực, đặc biệt là về thương mại, Cơ sở dữ liệu phân tán đã trở thành một lĩnh vực thu hút nhiều sự quan tâm của các nhà nghiên cứu lý thuyết lẫn các nhà sản xuất phần mềm. Thiết kế một Cơ sở dữ liệu phân tán hiệu quả và tối ưu cần tốn rất nhiều thời gian và công sức. Trong đó, một trong những vấn đề khó khăn nhất của Thiết kế Cơ sở dữ liệu là cấp phát, phân bố các mảnh dữ liệu đến các địa điểm, sites sao cho hiệu quả truy xuất dữ liệu là cao nhất. Báo cáo này trình bày về thiết kế Cơ sở dữ liệu phân tán; các kỹ thuật thiết kế và xây dựng Cơ sở dữ liệu phân tán; các kỹ thuật phân mảnh dữ liệu; giới thiệu bài toán cấp phát mảnh trong Cơ sở dữ liệu phân tán. Qua đó, trình bày việc ứng dụng kỹ thuật thuật giải di truyền vào giải quyết bài toán tối ưng trong cấp phát mảnh. II. Bài toán thiết kế Thiết kế một hệ thống máy tính phân tán cần phải chọn những vị trí đặt dữ liệu và các chương trình trên một mạng máy tính, rất có thể phải kể luôn cả việc thiết kế hệ thống mạng. Đối với hệ quản trị Cơ sở dữ liệu phân tán, việc phân tán các ứng dụng đòi hỏi hai điều: phân tán hệ quản trị Cơ sở dữ liệu và phân tán các chương trình ứng dụng chạy trên hệ quản trị đó. Điều thứ hai không phải là vấn đề quan trọng vì giả sử rằng mỗi vị trí có lưu dữ liệu đều có một bản sao của phần mềm hệ quản trị. Ta chỉ tập trung phân tán dữ liệu. Việc tổ chức các hệ phân tán có thể nghiên cứu dựa theo 3 trục không gian vuông góc: 1. Mức độ chia sẻ (level of sharing) 2. Kiểu mẫu truy xuất (behavior of access pattern) 2 3. Mức độ hiểu biết về kiểu mẫu truy xuất (level of knowledge) Hình II.1: Bộ khung phân tán III. Các chiến lược thiết kế Cơ sở dữ liệu phân tán Hai chiến lược chính đã được xác định trong thiết kế các Cơ sở dữ liệu phân tán là tiếp cận từ trên xuống (top-down approach) và tiếp cận từ dưới lên (bottom-up approach). Trong thực tế, cả hai tiếp cận thường được áp dụng để bổ sung cho nhau. 1. Quá trình thiết kế từ trên xuống Quá trình bắt đầu bằng việc phân tích yêu cầu nhằm định nghĩa môi trường hệ thống và thu thập các nhu cầu về dữ liệu và nhu cầu xử lý của tất cả mọi người sử dụng Cơ sở dữ liệu. 3 Hình III.1: Quá trình thiết kế từ trên xuống Thiết kế khung nhìn (View Design) có nhiệm vụ định nghãi các giao diện cho người dung cuối (end-user). Thiết kế Khái niệm (conceptual design) là quá trình xem xét tổng thể đối tượng nhằm xác định các loại thực thể và mối liên hệ giữa các thực thể. Hai thiết kế là hai hoạt động song song có mối liên hệ với nhau. Thiết kế khai niệm có thể diễn giải như sự tích hợp khung nhìn của người dung. Tích hợp khung nhìn được sử dụng nhằm bảo đảm các yêu cầu về thực thể và các mối lien hệ giữa các khung nhìn đều phải được bao quát trong lược đồ khái niệm. Lược đồ khái niệm toàn cục GCS và thông tin về kiểu mẫu truy xuất thu được trong thiết kế khung nhìn sẽ là nguyên liệu cho bước thiết kế phân tán (distribution design). Mục tiêu của giai đoạn này là thiết kế các lược đồ khái niệm cục bộ LCS bằng cách phân tán các thực thể như một đơn vị phân tán (unit of distribution). Thay vì phân tán các quan hệ, ta thường chia chúng thành các quan hệ nhỏ hơn gọi là các mảnh (fragment) và chính các mảnh này sẽ được phân tán. Do đó, hoạt động thiết kế phân tán sẽ gồm hai bước: phân mảnh (fragmentation) và cấp phát (allocation). 4 Bước cuối cùng trong thiết kế từ trên xuống là thiết kế vật lý. Bước này ánh xã lược đồ khái niệm cục bộ sang các thiết bị lưu trữ vật lý có sẵn tại các vị trí tương ứng. Nguyên liệu cho quá trình này là lược đồ khái niệm cục bộ và thông tin về kiểu mẫu truy xuất các mảnh. Bên cạnh đó, hoạt động phát triển và thiết kế luôn là một quá trình liên tục, đòi hỏi phải theo dõi, hiệu chỉnh thường xuyên. Vì thế, vấn đề quan sát, theo dõi là một trong những hoạt động cần thiết trong quá trình thiết kế từ trên xuống. Không chỉ việc cài đặt Cơ sở dữ liệu được xem xét mà còn phải theo dõi tính thích hợp của các khung nhìn của người sử dụng. Kết quả này có tác dụng phản hồi, tạo tiền đề cho việc tái thiết kế về sau. 2. Quá trình thiết kế từ dưới lên Thiết kế từ trên xuống thích hợp với những Cơ sở dữ liệu thiết kế từ đầu. Tuy nhiên, ta rất hay gặp trong thực tế là đã có sẵn một số Cơ sở dữ liệu và nhiệm vụ thiết kế là phải tích hợp chúng thành một Cơ sở dữ liệu. Tiếp cận từ dưới lên sẽ thích hợp cho tình huống này. Khởi điểm của thei6t1 kế từ dưới lên là các lược đồ khái niệm cục bộ. Quá trình này sẽ bao gồm việc tích hợp các lược đồ cục bộ thành lược đồ khái niệm toàn cục. Loại môi trường này tồn tại chủ yếu trong ngữ cảnh của các Cơ sở dữ liệu đa chủng nhưng đây không phải là vấn đề chính trong báo cáo này. IV. Các vấn đề trong thiết kế phân tán 1. Các lý do phân mảnh Trong phân mảnh, điều quan trọng là có được một đơn vị phân tán thích hợp. Một quan hệ không phỉa là một đơn vị đáp ứng được yêu cầu đó. Trước tiên, khung nhìn của các ứng dụng thường chỉ là một tập con của quan hệ. Vì thế đơn vị truy xuất không phải là toàn bộ quan hệ nhưng chỉ là các tập con của quan hệ. Kết quả là xem tập con của quan hệ là đơn vị phân tán sẽ là điều thích hợp duy nhất. Thứ hai, nếu các ứng dụng có các khung nhìn được định nghĩa trên một quan hệ cho trước lại nằm tại những vị trí khác thì có hai cách chọn lực với đơn vị phân tán là toàn bộ quan hệ hoặc quan hệ không được nhân bản mà được lưu ở một ví trí hoặc quan hệ được nhân bản cho tất cả hoặc một số vị trí có chạy ứng dụng. Chọn lựa đầu có thể gây ra một số lượng lớn các truy xuất không cần thiết đến dữ liệu ở xa. Còn chọn lựa sau 5 thực hiện nhân bản không cần thiết, gây ra nhiều vấn đề khi cập nhật và có thể làm lãng phí nhiều không gian lưu trữ. Cuối cùng, việc phân rã một quan hệ thành nhiều mảnh, mỗi mảnh được xử lý như một đơn vị sẽ cho phép thực hiện nhiều giao dịch đồng thời.Ngoài ra việc phân mảnh các quan hệ sẽ cho phép thực hiện song song một câu truy vấn bằng cách chia nó thành một tập các truy vấn con hoạt tác trên các mảnh. Vì thế việc phân mảnh sẽ làm tang mức độ hoạt động đồng thời và như thế làm tang lưu lượng hoạt động của hệ thống. 2. Các kiểu phân mảnh Thể hiện của các quan hệ chính là các bảng. Vì thế, vấn đề trong phân mảnh là tìm những cách khác nhau để chia bảng thành nhiều bảng nhỏ hơn. Có hai phương pháp khác nhau: chia bảng theo chiều dọc và chia bảng theo chiều ngang. Ngoài ra, việc phân mảnh có thể lồng ghép với nhau. Nếu kết hợp các loại phân mảnh khác nhau, ta có thể thu được một phân mảnh hỗn hợp (hybrid fragmentation). Mặc dù phân mảnh hỗ hợp không được xem như một loại phân mảnh sơ cấp nhưng trong thực tế, rất nhiều phân mảnh thuộc loại hỗn hợp. 3. Mức độ phân mảnh Phân mảnh Cơ sở dữ liệu đến mức độ nào là một quyết định quan trọng, có ảnh hưởng lớn tới hiệu năng thực hiện truy vấn. Mức độ phân mảnh có thể là từ thái cực không phân thành mảnh nào đến thái cực phân mảnh thành từng bộ (trường hợp phân mảnh ngang) hoặc thành từng thuộc tính (phân mảnh dọc). Làm thế nào để xác định mức độ phân mảnh là quá lớn hay quá nhỏ? Một mức độ như thế chỉ được định nghĩa ứng với các ứng dụng sẽ chạy trên Cơ sở dữ liệu. Các ứng dụng sẽ được đặc trưng qua các tham số. Theo giá trị của các tham số này mà chúng ta có thể xác định được từng mảnh. 4. Quy tắc phân mảnh Trong quá trình phân mảnh, cần đảm bảo rằng Cơ sở dữ liệu sẽ không thay đổi nào về ngũ nghĩa sau khi phân mảnh: a. Tính đầy đủ (completeness): Nếu một thể hiện quan hệ R được phân rã thành các mảnh R 1 , R 2 ,…, R n thì mỗi mục dữ liệu có thể gặp trong một hoặc nhiều mảnh R i . Đặc tính này, giống như tính chất 6 phân rã nối không mất trong chuẩn hóa, cũng quan trọng trong phân mảnh bởi vì nó bảo đảm rằng dữ liệu trong quan hệ R được ánh xạ vào các mảnh và không bị mất. Trong phân mảnh ngang, “mục dữ liệu” muốn nói đến một bộ; trong phân mảnh dọc, “mục dữ liệu” muốn nói đến một thuộc tính. b. Tính tái thiết (reconstruction): Nếu một quan hệ R được phân rả thành các mảnh R 1 , R 2 ,…, R n thì cần phải định nghĩa một toán tử quan hệ ∇ sao cho: R = ∇R i , ∀R i ∈ F R Toán tử ∇ sẽ thay đổi tùy theo từng loại phân mảnh. Tuy nhiên, điều quan trọng là phải xác định được nó. Khả năng tái thiết một quan hệ từ các mảnh của nó bảo đảm rằng các rang buộc được định nghĩa trên dữ liệu dưới dạng các phụ thuộc sẽ được đảm bảo. c. Tính tách biệt (disjointness): Nếu quan hệ R được phân rã ngang thành các mảnh R 1 , R 2 , …, R n và mục dữ liệu di nằm trong mảnh R j , thì nó sẽ không nằm trong một mảnh R k khác (k ≠ j). Tiêu chuẩn này bảo đảm rằng các mảnh ngang sẽ tách biệt. Nếu quan hệ được phân rã dọc, các thuộc tính khóa chính phải được lập lại trong mỗi mảnh. Vì thế, trong trường hợp phân mảnh dọc, tính tách biệt chỉ được định nghĩa trên các trường không phải khóa chính của một quan hệ. 5. Các kiểu cấp phát Khi Cơ sở dữ liệu đã được phân mảnh thích hợp thì cần phải quyết định cấp phát các mảnh cho các vị trí trên mạng. Khi dữ liệu được cấp phát, nó có thể được nhân bản hoặc duy trì một bản duy nhất. Nhân bản nhằm mục tiêu bảo đảm được độ tin cậy và hiệu quả cho các câu truy vấn chỉ đọc. Nếu có nhiều bản sao của một mục dữ liệu thì ta vẫn có cơ hội truy xuất được dữ liệu đó ngay cả khi hệ thống xảy ra sự cố. Hơn nữa, các câu truy vấn chỉ đọc truy xuất đến cùng một mục dữ liệu có thể cho thực hiện song song bởi vì các bản sao có mặt ở nhiều vị trí. Ngược lại, các câu truy vấn cập nhật có thể gây ra nhiều rắc rối bởi vì hệ thống phải bảo đảm rằng tất cả các bản sao phải được cập nhật chính xác. Vì vậy, quyết định nhân bản cần phải được cân nhắc và phụ thuộc vào tỷ lệ giữa các câu truy vấn chỉ đọc và các câu truy vấn cập nhật. 7 Hình IV.1: So sánh các chọn lựa nhân bản 6. Yêu cầu thông tin Trong thiết kế phân tán, có quá nhiều yếu tố ảnh hưởng đến một thiết kế tối ưu. Tổ chức logic của Cơ sở dữ liệu, vị trí các ứng dụng, đặc tính truy xuất của các ứng dụng đến Cơ sở dữ liệu, và các đặc tính của hệ thống máy tính tại mỗi vị trí đều có ảnh hưởng đến các quyết định phân tán. Điều này khiến việc diễn đạt bài toán phân tán trở nên phức tạp. Các thông tin cần thiết trong thiết kế phân tán có thể chia thành bốn loại chính: thông tin Cơ sở dữ liệu, thông tin ứng dụng, thông tin về mạng, và thông tin về hệ thống máy tính. 8 V. Phân mảnh dữ liệu 1. Phân mảnh ngang Phân mảnh ngang chia một quan hệ theo các bộ. Có hai loại phân mảnh ngang: phân mảnh ngang nguyên thủy (primary horizontal fragmentation) và phân mảnh ngang được suy (derived horizontal fragmentation) a. Yêu cầu thông tin của phân mảnh ngang: Thông tin về Cơ sở dữ liệu (lược đồ khái niệm toàn cục): ta cần biết các quan hệ sẽ kế lại với nhau như thế nào, đặc biệt là bằng phép nối. Trong mô hình quan hệ, các mối liên hệ này cũng được biểu thị bằng các quan hệ. Tuy nhiên, trong những mô hình khác như mô hình thực thể-kết hợp (entity-relationship model), các mối liên hệ được biểu diễn tường minh. Với mục đích thiết kế phân tán, các mối liên hệ cũng được mô hình hóa trong bộ khung quan hệ. Theo cách này, ta sẽ vẽ được các đường nối có hướng (các cung) giữa các quan hệ có liên hệ với nhau qua một nối bằng (equijoin). Thông tin về ứng dụng: Những thông tin định tính cơ bản gồm các vị từ được dùng trong các câu truy vấn. Ta cần xác định được các vị từ đơn giản (minterm predicate). Cho quan hệ R(A 1 , A 2 ,…, A n ), trong đó A i là một thuộc tính được định nghãi trên một miền biến thiên D i , một vị từ đơn gian p j được định nghĩa trên R có dạng: p j : A i θ Value Trong đó θ ∈ { =, <, ≠, ≤, >, ≥} và Value được chọn từ miền biến thiên của A i (Value ∈ D i ). Ký hiệu Pri được dùng để biểu thị tất cả các vị từ đơn gian được định nghĩa trên quan hệ R i . Các phần tử Pr i được ký hiệu là p ij . Mặc dù các vị từ đơn gian rất dễ xử lý, nhưng các câu truy vấn thường chứa nhiều vị từ phức tạp hơn, là tổ hợp của các vị từ đơn giản. Một tổ hợp cần đặc biệt chú ý được gọi là vị từ hộ sơ cấp (minterm predicate), đó là hội (conjunction) của các vị từ đơn giản. Vì ta luôn có thể biến đổi một biểu thức bool thành dạng chuẩn hội (conjunctive normal form) nên việc sử dụng vị từ hội sơ cấp trong một thuật toán thiết kế không làm mất đi tính tổng quát. Cho R và Pr = {p 1 , p 2 , …, p m }. Tập các vị từ hội sơ cấp M i = {m i1 , m i2 ,…, m iz } được định nghĩa là: 9 M i = {m ij | m ij = ∧ ∈ iik p Pr p * ik } với 1≤ k ≤ m, 1 ≤ j ≤ z Trong đó, p * ik = p ik hoặc p * ik = ¬p ik . Theo những thông tin định tính về ứng dụng, ta cần biết hai tập dữ liệu: - Độ tuyển hội sơ cấp (minterm selectivity) sel(m i ): Số các bộ (tuple) của quan hệ được câu truy vấn truy cập. Câu truy vấn được chỉ định bằng minterm predicate m i . - Tần số truy xuất (access frequency) acc(m i ): là tần số ứng dụng truy xuất dữ liệu. Nếu Q= {q 1 , q 2 ,…, q q } là tập các câu vấn tin, thì acc(m i ) biểu thị cho tần số truy xuất của qi trong một khoảng thời gian đã cho. b. Phân mảnh ngang nguyên thủy Định nghĩa: R j = σ Fj (R), 1 ≤ j ≤ w Với F j là công thức chọn, thích hợp là minterm predicate. Do vậy, phân mảnh ngang Ri của quan hệ R gồm tất cả các bộ của R thỏa minterm predicate mi. Cho tập minterm predicate M, có nhiều phân mảnh ngang của quan hệ R ứng với nhiều minterm predicates. Tập các phân mảnh ngang cũng được gọi là minterm fragments. Rõ ràng là việc định nghĩa các mảnh ngang phụ thuộc vào các simple predicates. Tập các simple predicates Pr được gọi là đầy đủ (completeness) nếu và chỉ nếu các truy cập đến các bộ (tuple) của các mảnh hội tối thiểu (minterm fragments) được định nghĩa theo Pr phải thỏa yêu cầu với một ứng dụng bất kỳ, hai bộ của cùng một minterm fragment phải có cùng xác suất truy cập. Để một vị tự phát sinh phân mảnh, (ví dụ biến mảnh f thành các mảnh con f i và f j ) thì cần phải có một ứng dụng truy cập f i và f j với các xác suất trên các bộ của mảnh đó là khác nhau. Nói cách khác, simple predicate phải liên ứng (relevant) với việc tạo ra phân mảnh. Nếu tất cả các predicates của tập Pr đều có liên ứng thì Pr is tối tiểu (minimal). 10 [...]... Thuật giải di truyền trong tối ưu bài toán cấp phát mảnh Tìm kiếm một cấp phát mảnh tối ưu trong mô hình này là bài toán ở mức NPcomplete Với n mảnh và m sites, sẽ có (2 m - 1)n tổ hợp khác nhau Vì vậy, ta chỉ có thể tìm kiếm những giải thuật heuristic để giải quyết bài toán này Một trong những phương pháp được sử dụng trong giải quyết những bài toán tối ưu là thuật giải di truyền 1 Giới thiệu về thuật. .. bài toán tối ưu là thuật giải di truyền 1 Giới thiệu về thuật giải di truyền Thuật giải di truyền (genetic algorithm) được xây dựng dựa trên lý thuyết tiến hóa sinh vật của Darwin Thuật giải di truyền do giáo sư John Holland phát triển vào những năm 1970s Thuật giải di truyền là một kỹ thuật tìm kiếm dựa trên nguyên lý tiến hóa của Darwin Trong tiến trình lặp, các cá thể của quần thể hiện hành sẽ được... thực, đôi khi có thể dùng hoán vị Trong thuật giải di truyền, các nhiễm sắc thể được xem là các cá thể trong một quần thể (population) 3 Chọn lọc (selection) Hàm phù hợp (Fitness function): trong thuật giải di truyền, hàm phù hợp đóng vai trò quan trọng trong việc chọn ra các cá thể tốt đem lai ghép, đột biến tạo ra các thế hệ con tốt hơn Hàm phù hợp trong bài toán cấp phát chính là hàm giúp nhận rõ ma... sắc thể sẽ bị thay đổi 7 Thuật giải di truyền Mô hình thuật giải di truyền để giải quyết bài toán cấp phát mảnh có dạng như sau: Input: Size of Fragments RM (retrieval matrix) UM (update matrix) SEL (selectivity matrix) FREQ (frequency matrix) CTR (communication cost matrix) Output: FAT (fragment allocation matrix) 1 [Initialization] Khởi tạo ngẫu nhiên quần thể các ma trận cấp phát FAT 2 [Fitness] Tính... (selection), lai ghép (crossover) và đột biến (mutation) là các phép toán cơ bản trong triển khai thuật giải di truyền 2 Mã hóa nhiễm sắc thể Nhiễm sắc thể (chromosome) chứa thông tin về lời giải của bài toán Thông thường, lời giải sẽ được mã hóa trong nhiễm sắc thể thành một chuỗi bit nhị phân Trong bài toán cấp phát mảnh, ma trận FAT đóng vai trò là một nhiễm sắc thể FAT: F1 F2 F3 F4 F5 Còn có nhiều... tính khóa K, có phân mảnh dọc FR = {R1, R2,…, Rr} - Tính đầy đủ: được đảm bảo vì mỗi thuộc tính của quan hệ toàn cục được đưa vào một trong các mảnh A = ⋃ARi - Tính tái thiết được: ta hoàn toàn có thể xây dựng lại quan hệ ban đầu bằng phép nối: R=⋈KRi, ∀Ri ∈ FR - Tính tách biệt: không quan trọng trong phân mảnh dọc 14 VI Cấp phát mảnh trong thiết kế Cơ sở dữ liệu phân tán Cấp phát tài nguyên cho các... các thông tin đề cập ở trên, ta thử tìm một cấp phát mảnh gần tối ưu như cực tiểu chi phí truyền thông Hàm cực tiểu chi phí truyền thông có thể biểu di n như sau: min(CCload + CCproc) Công thức chi phí truyền thông gồm hai thành phần: chi phí truyền thông để nạp dữ liệu CCload và chi phí truyền thông để chạy ứng dụng CCproc CCload là chi phí nạp tất cả những mảnh sao chép vào sites trước khi ứng dụng... tái tạo: Với một quan hệ R với phân mảnh FR = {R1, R2, , Rw}, ta luôn có R=⋃Ri, ∀Ri ∈ FR - Tính tách rời: ta dễ dàng có được tính tách rời trong phân mảnh nguyên thủy hơn là trong phân mảnh được suy Trong phân mảnh nguyên thủy, tính tách rời sẽ được đảm bảo khi các vị từ hội sơ cấp xác định phân mảnh có tính loại trừ tương hỗ (mutually exclusive) Tuy nhiên, phân mảnh được suy hàm chứa các nối nửa khiến... vấn qi có cập nhật mảnh Fj; uij = 0 trong trường hợp ngược lại rij = 1 nếu truy vấn qi cần đọc mảnh Fj; rij = 0 trong trường hợp ngược lại Ví dụ minh họa: RM: T1 T2 T3 T4 UM: T1 T2 T3 T4 Trong các ma trận truy xuất UM và RM, ứng dụng T 3 đọc mảnh F3 ba lần and cập nhật mảnh F1 hai lần, F2 một lần, và F4 một lần trong mỗi lần chạy Khi một ứng dụng đọc mảnh, không phải tất cả các bộ của mảnh được đọc hay... size(Fj) = card(Fj) * length(Fj) trong đó length(Fj) là chiều dài (tính theo byte) của một bộ trong mảnh Fj 15 b Thông tin về ứng dụng Phần lớn các thông tin có liên quan đến ứng dụng đều đã được biên dịch trong khi thực hiện phân mảnh nhưng cũng cần một số ít nữa do mô hình cấp phát Hai số liệu quan trọng là số truy xuất đọc do câu truy vấn qi thực hiện trên mảnh F j trong mỗi lần chạy của nó (ký hiệu . những giải thuật heuristic để giải quyết bài toán này. Một trong những phương pháp được sử dụng trong giải quyết những bài toán tối ưu là thuật giải di truyền. 1. Giới thiệu về thuật giải di truyền Thuật. sao chép F j . VII. Thuật giải di truyền trong tối ưu bài toán cấp phát mảnh Tìm kiếm một cấp phát mảnh tối ưu trong mô hình này là bài toán ở mức NP- complete. Với n mảnh và m sites, sẽ có (2 m . truyền Thuật giải di truyền (genetic algorithm) được xây dựng dựa trên lý thuyết tiến hóa sinh vật của Darwin. Thuật giải di truyền do giáo sư John Holland phát triển vào những năm 1970s. Thuật giải

Ngày đăng: 10/04/2015, 14:34

Từ khóa liên quan

Mục lục

  • I. Tổng quan

  • II. Bài toán thiết kế

  • III. Các chiến lược thiết kế Cơ sở dữ liệu phân tán

    • 1. Quá trình thiết kế từ trên xuống

    • 2. Quá trình thiết kế từ dưới lên

    • IV. Các vấn đề trong thiết kế phân tán

      • 1. Các lý do phân mảnh

      • 2. Các kiểu phân mảnh

      • 3. Mức độ phân mảnh

      • 4. Quy tắc phân mảnh

      • 5. Các kiểu cấp phát

      • 6. Yêu cầu thông tin

      • V. Phân mảnh dữ liệu

        • 1. Phân mảnh ngang

        • 2. Phân mảnh dọc

        • VI. Cấp phát mảnh trong thiết kế Cơ sở dữ liệu phân tán

          • 1. Bài toán cấp phát

          • 2. Yêu cầu về thông tin

          • 3. Các hàm chi phí:

          • VII. Thuật giải di truyền trong tối ưu bài toán cấp phát mảnh

            • 1. Giới thiệu về thuật giải di truyền

            • 2. Mã hóa nhiễm sắc thể

            • 3. Chọn lọc (selection)

            • 4. Lai ghép (Crossover)

            • 5. Đột biến (mutation)

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan