1. Trang chủ
  2. » Công Nghệ Thông Tin

Trí Tuệ Nhân tạo- Bài toán tô màu bản đồ

11 19 0

Đ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

Thông tin cơ bản

Định dạng
Số trang 11
Dung lượng 249,77 KB
File đính kèm Bài toán tô màu bản đồ.rar (234 KB)

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

MỤC LỤC CHƯƠNG I GIỚI THIỆU BÀI TOÁN 3 1 Tổng quan về đồ thị 3 2 Bài toán tô mầu đồ thị 5 2 1 Bài toán tô mầu cạnh 5 2 2 Bài toán tô mầu đỉnh 6 3 Hướng làm bài 6 CHƯƠNG II GIỚI THIỆU GIẢI THUẬT VÀ PHÂ.

Trang 1

MỤC LỤC

CHƯƠNG I GIỚI THIỆU BÀI TOÁN

1 Tổng quan về đồ thị

Đồ thị là gì

Một cách không chính thức, đồ thị là một tập các đối tượng được gọi là các đỉnh (hoặc nút) nối với nhau bởi các cạnh (hoặc cung) Cạnh có thể có hướng hoặc vô hướng Đồ thị thường được vẽ dưới dạng một tập các điểm (các đỉnh nối với nhau bằng các đoạn thẳng (các cạnh)

Đồ thị biểu diễn được rất nhiều cấu trúc, nhiều bài toán thực tế có thể được biểu diễn bằng đồ thị Ví dụ, cấu trúc liên kết của một website có thể được biểu diễn bằng một đồ thị có hướng như sau: các đỉnh là các trang web hiện có tại website, tồn tại một cạnh có

hướng nối từ trang A tới trang B khi và chỉ khi A có chứa 1 liên kết tới B.

Cấu trúc đồ thị có thể được mở rộng bằng cách gán trọng số cho mỗi cạnh Có thể sử dụng đồ thị có trọng số để biểu diễn nhiều khái niệm khác nhau Ví dụ, nếu đồ thị biểu diễn một mạng đường giao thông, các trọng số có thể là độ dài của mỗi con đường Một

Trang 2

cách khác để mở rộng đồ thị cơ bản là qui định hướng cho các cạnh của đồ thị (như đối

với các trang web, A liên kết tới B, nhưng B không nhất thiết cũng liên kết tới A) Loại đồ

thị này được gọi là đồ thị có hướng Một đồ thị có hướng với các cạnh có trọng số được gọi là một lưới

Hình 01: Đồ thị vô hướng

Các cách biểu diễn đồ thị

- Ma trận kề (Adjaceny matrix) - một ma trận N × N, trong đó N là số đỉnh của đồ

thị Nếu có một cạnh nào đó nối đỉnh v i với đỉnh v j thì phần tử M i,j bằng 1, nếu không, nó có giá trị 0 Cấu trúc này tạo thuận lợi cho việc tìm các đồ thị con và để đảo các đồ thị

Adjacency matrix

Trang 3

- Danh sách kề (Adjacency list) - Mỗi đỉnh của đồ thị có một danh sách các đỉnh kề

nó (nghĩa là có một cạnh nối từ đỉnh này đến mỗi đỉnh đó) Trong đồ thị vô hướng, cấu trúc này có thể gây trùng lặp Chẳng hạn nếu đỉnh 3 nằm trong danh sách của đỉnh 2 thì đỉnh 2 cũng phải có trong danh sách của đỉnh 3 Lập trình viên có thể chọn cách sử dụng phần không gian thừa, hoặc có thể liệt kê các quan hệ kề cạnh chỉ một lần Biểu diễn dữ liệu này thuận lợi cho việc từ một đỉnh duy nhất tìm mọi đỉnh được nối với nó, do các đỉnh này đã được liệt kê tường minh

The graph pictured above has this adjacency list representation:

2 Bài toán tô mầu đồ thị

Tô màu đồ thị và sự tổng quát của nó là công cụ hữu dụng trong việc mô hình hóa rất nhiều bài toán khác nhau trong vấn đề xếp lịch, xây dựng chương trình và vấn đề phân công công việc Bài toán tô màu đồ thị bao gồm nhiều loại: tô màu đỉnh đồ thị (vertex graph coloring) , tô màu cạnh đồ thị (edge graph coloring)

2.1 Bài toán tô mầu cạnh

Bài toán

Cho G=(V,E) là đơn đồ thị vô hướng ( G không là đồ thị khuyên) , hãy tìm cách gán (tô màu) cho mỗi cạnh của đồ thị một màu sao cho hai cạnh có cùng chung 1 đỉnh không bị

tô bởi cùng một màu Một phép gán màu cho các cạnh như vậy gọi là một phép tô màu

Trang 4

cạnh đồ thị Nói cách khác, phép tô cạnh đồ thị bởi k màu nói trên có thể được hiểu là một phân hoạch của tập cạnh E của G thành k tập con (tương ứng với k màu) sao cho mỗi tập con ứng với một màu i nhất định Bài toán đặt ra là tìm cách tô màu nào sử dụng số màu ít nhất có thể

Ví dụ

Đồ thị trong hình trên có thể tô bởi 4 màu Đồ thị G gọi là tô được bởi k màu-cạnh nếu G

có một phép tô k màu-cạnh phù hợp.Thông thường hầu hết các đồ thị không là đồ thị khuyên đều tô được.Và nếu G có tính chất như vậy thì G cũng có thể tô bởi l màu với l>k

2.2 Bài toán tô mầu đỉnh

Tô màu (đỉnh) đồ thị là việc thực hiện gán màu cho mỗi đỉnh của đồ thị, sao cho hai đỉnh

kề nhau không cùng một màu, và số màu được sử dụng là ít nhất Số màu ít nhất có thể

sử dụng để tô màu đồ thị được gọi là sắc số của đồ thị đó

Một phép tô mầu sử dụng nhiều nhất k mầu gọi là một phép tô k mầu Số lượng mầu nhỏ nhất cần để tô các đỉnh của đồ thị G gọi là sắc số đỉnh của đồ thị G, sao cho không có hai đỉnh kề nhau nào được tô cùng mầu

Một đồ thị có thể tô được bằng k mầu, trong đó mỗi một tập các đỉnh cùng mầu gọi là một lớp mầu

Một đồ thị có thể được tô bằng k mầu nghĩa là có có k tập độc lập trong đồ thị

Trang 5

3 Hướng làm bài

Việc tô màu bản đồ, ta phải tô màu các miền sao cho: mỗi miền được tô một màu, hai miền có liền kề (có chung biên giới) không được tô cùng một màu

Ta thiết lập một đồ thị G, có tập các đỉnh là tập tất cả các miền trên bản đồ Hai nước liền

kề nhau

thì có cạnh nối hai đỉnh tương ứng với nhau Ta tiến hành tìm sắc số của đồ thị này

Đây là trường hợp riêng của bài toán tô màu đồ thị Khi đồ thị chỉ là đồ thị phẳng Người

ta đã chứng minh được rằng: chỉ cần nhiều nhất là 4 màu để tô đồ thị này Từ lâu người ta

đã chứng minh bài toán tô màu đồ thị thuộc lớp NP - đầy đủ

CHƯƠNG II GIỚI THIỆU GIẢI THUẬT VÀ PHÂN TÍCH GIẢI THUẬT THEO BÀI TOÁN

1 Phát biểu bài toán

Tô màu (đỉnh) đồ thị là việc thực hiện gán màu cho mỗi đỉnh của đồ thị, sao cho hai đỉnh

kề nhau không cùng một màu, và số màu được sử dụng là ít nhất Số màu ít nhất có thể

sử dụng để tô màu đồ thị được gọi là sắc số của đồ thị đó

Thuật toán tô màu đồ thị được đề cập đến trong các tài liệu về Toán rời rạc hoặc Cấu trúc

dữ liệu & Giải thuật Chúng ta có thể trình bày các bước thuật toán dễ hiểu như sau: Input: đồ thị G = (V, E)

Output: đồ thị G = (V, E) có các đỉnh đã được gán màu

2 Giải thuật (Thuật toán tham lam)

Các bước của thuật toán:

Bước 1: Tính giá trị bậc của các đỉnh trong V Lập danh sách V’:=[v1,v2, ,vn] là

các đỉnh của đồ thị được sắp xếp theo thứ tự bậc giảm dần: d(v1) > d(v2) > > d(vn) Ban đầu tất cả các đỉnh trong V (V’) đều chưa được tô màu

Gán i := 1;

Bước 2: Tô màu i cho đỉnh đầu tiên trong danh sách V’ Duyệt lần lượt các đỉnh

khác trong V’(nếu có) và chỉ tô màu i cho các đỉnh không kề đỉnh đã có màu i

Bước 3: Kiểm tra nếu tất cả các đỉnh trong V đã được tô màu thì thuật toán kết thúc,

đồ thị đã sử dụng i màu để tô Ngược lại, nếu vẫn còn đỉnh chưa được tô thì chuyển sang bước 4

Trang 6

Bước 4: Loại khỏi danh sách V’ các đỉnh đã tô màu Sắp xếp lại các đỉnh trong V’

theo thứ tự bậc giảm dần Gán i := i + 1 và quay lại bước 2

3 Phân tích giải thuật và vận dụng

Để dễ hiểu hơn, các bạn xem sự thể hiện các bước của thuật toán trong ví dụ sau: Cho đồ thị như hình vẽ, sử dụng thuật toán tô màu đồ thị ở trên, tô màu cho các đỉnh của đồ thị

Bước 1: Ta có đồ thị có 5 đỉnh được đánh số 1, 2, 3, 4, 5 với các bậc tương ứng với

từng đỉnh theo thứ tự là 3, 1, 2, 1, 3 Do đó V’ ban đầu có thứ tự là [1, 5, 3, 2, 4] Gán i

=1

Bước 2: Tô màu 1 (red) cho đỉnh 1 Lần lượt duyệt các đỉnh còn lại trong V’:

Ta có: Đỉnh 5 kề đỉnh 1 (đỉnh 1 đã tô màu 1 - red) nên chưa tô màu cho đỉnh 5 Tương tự các đỉnh 3, 2 đều kề với đỉnh 1 nên đỉnh 3, 2 cũng chưa được tô màu

Đỉnh 4 không kề với đỉnh 1, do đó thực hiện tô màu 1 cho đỉnh 4 Đỉnh 4 có màu 1 -red

Bước 3: Kiểm tra thấy vẫn còn các đỉnh trong V chưa được tô màu nên chuyển sang

bước 4

Bước 4: Loại bỏ các đỉnh 1, 4 đã được tô màu ra khỏi V’, sắp xếp lại V’ theo thứ tự

bậc giảm dần, ta thu được V’= [5, 3, 2] Ta có i = 2 Thực hiện lặp lại bước 2:

Bước 2(1): Tô màu 2 (blue) cho đỉnh 5 Lần lượt duyệt các đỉnh còn lại trong V’ Ta

có: Đỉnh 3 kề đỉnh 5 (đã tô màu 2 - blue) nên chưa tô màu cho đỉnh 3

Đỉnh 2 không kề với đỉnh 5, do đó thực hiện tô màu 2 cho đỉnh 2 Đỉnh 2 có màu 2 -blue

Bước 3(1): Kiểm tra thấy vẫn còn đỉnh 3 chưa được tô màu nên chuyển sang bước

Trang 7

Bước 4(1): Loại bỏ các đỉnh 5, 2 đã được tô màu ra khỏi V’, V’=[3] Ta có i = 3

Thực hiện lặp lại bước 2:

Bước 2(2): Tô màu 3 (Green) cho đỉnh 3.

Bước 3(2): Kiểm tra thấy tất cả các đỉnh trong V đã được tô màu, thuật toán dừng

lại Kết luận: Đỉnh 1 và 4 được tô màu 1-red, đỉnh 5 và đỉnh 2 được tô màu 2-blue, đỉnh 3 được tô màu 3-Green Số màu cần thiết phải sử dụng là i =3 màu

CHƯƠNG III CÀI ĐẶT, DEMO CHƯƠNG TRÌNH

1 Cài đặt

Tạo 1 file dothi.txt, dòng đầu tiên là số đỉnh, các dòng tiếp theo là những đỉnh được nối với nhau

Source code:

Trang 9

2 Kết quả

Trang 10

KẾT LUẬN

Báo cáo này có mục đích tìm hiểu và trình bày các khái niệm cơ bản về đồ thị và các dạng đồ thị thường gặp, về bài toán tô màu trên đỉnh của đồ thị và ứng dụng tô màu bản

đồ Trình bày các kết quả lý thuyết, các định lý về tô màu trên các loại đồ thị khác nhau

và các thuật toán tô màu đỉnh và cạnh, dựa trên các kết quả lý thuyết đã có

Hy vọng nội dung của báo cáo sẽ giúp các thầy, cô giáo cùng với các bạn sinh viên đang giảng dạy và học tập có thêm nguồn tài liệu hữu ích, bổ sung thêm phương pháp để tiếp cận vấn đề, nhằm nâng cao chất lượng bài giảng, giúp các em sinh viên hiểu sâu sắc được vấn đề hướng tới đạt thành tích cao trong các kì thi

Trang 11

TÀI LIỆU THAM KHẢO

Website:

[1] Website: https://www.youtube.com/

[2] Website: https://123docz.net/

[3] Website: https://trungtamcntt.vinhuni.edu.vn/

[4] Website: https://www.tailieutuoi.com/

Ngày đăng: 21/10/2022, 13:39

HÌNH ẢNH LIÊN QUAN

Hình 01: Đồ thị vơ hướng - Trí Tuệ Nhân tạo- Bài toán tô màu bản đồ
Hình 01 Đồ thị vơ hướng (Trang 2)
Tô màu đồ thị và sự tổng qt của nó là cơng cụ hữu dụng trong việc mơ hình hóa rất nhiều bài toán khác nhau trong vấn đề xếp lịch, xây dựng chương trình và vấn đề phân  công công việc - Trí Tuệ Nhân tạo- Bài toán tô màu bản đồ
m àu đồ thị và sự tổng qt của nó là cơng cụ hữu dụng trong việc mơ hình hóa rất nhiều bài toán khác nhau trong vấn đề xếp lịch, xây dựng chương trình và vấn đề phân công công việc (Trang 3)
Đồ thị trong hình trên có thể tơ bởi 4 màu. Đồ thị G gọi là tô được bởi k màu-cạnh nếu G có một phép tơ k màu-cạnh phù hợp.Thơng thường hầu hết các đồ thị không là đồ thị  khun đều tơ được.Và nếu G có tính chất như vậy thì G cũng có thể tơ bởi l màu với   - Trí Tuệ Nhân tạo- Bài toán tô màu bản đồ
th ị trong hình trên có thể tơ bởi 4 màu. Đồ thị G gọi là tô được bởi k màu-cạnh nếu G có một phép tơ k màu-cạnh phù hợp.Thơng thường hầu hết các đồ thị không là đồ thị khun đều tơ được.Và nếu G có tính chất như vậy thì G cũng có thể tơ bởi l màu với (Trang 4)

TỪ KHÓA LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w