Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 12 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
12
Dung lượng
57,16 KB
Nội dung
ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH TRƯỜNG ĐẠI HỌC BÁCH KHOA - BÁO CÁO BÀI TẬP LỚN ĐẠI SỐ TUYẾN TÍNH ĐỀ TÀI 14: MƠ HÌNH MARKOV LỚP L17, NHÓM 14 GVHD: NGUYỄN XUÂN MỸ Tp HCM, ngày 20 tháng năm 2022 ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH TRƯỜNG ĐẠI HỌC BÁCH KHOA - BÁO CÁO BÀI TẬP LỚN ĐẠI SỐ TUYẾN TÍNH ĐỀ TÀI 14: MƠ HÌNH MARKOV Nhóm 14: Nguyễn Trọng Đại MSSV: 2113114 Hoàng Minh Hải Đăng MSSV: 2110120 Dương Nguyễn Tấn Đạt MSSV: 2113118 Phan Đức Đạt MSSV: 2113152 Trần Tiến Đạt MSSV: 2113162 Trần Hữu Điển MSSV: 2113188 Lã Minh Đức MSSV: 2110132 Đỗ Minh Đức MSSV: 2113260 Tp HCM, ngày 20 tháng năm 2022 Mục lục Đề tài tập lớn: Cơ sở lí thuyết 2.1 Giới thiệu mô hình Markov 2.2 Mơ hình Markov sử dụng rộng rãi để: 2.3 Phép nhân hai ma trận 2.4 Phép nâng lên lũy thừa Các bước chạy chương trình 3.1 Giải toán cụ thể 3.2 Các bước giải toán Đoạn code dùng cho toán Các bước thực kết toán Ví dụ minh họa Tài liệu tham khảo Đề tài tập lớn Chủ đề 14: • Giới thiệu mơ hình Markov • Viết chương trình dùng mơ hình Markov giải tốn cụ thể • Tìm ứng dụng khác mơ hình Markov Cơ sở lí thuyết 2.1 Giới thiệu mơ hình Markov Mơ hình markov mơ hình trang thái hệ thống hay quy trình sau thời gian biểu qua mơ hình trạng thái ban đầu thời gian số lượng cụ thể ban đầu trạng thái 2.2 Mơ hình Markov sử dụng rộng rãi để: ─ Mô tả giới cách thực tế ─ Là cơng cụ hữu ích giúp dự đốn dài hạn hệ thống quy trình Ví dụ: Dự đốn dài hạn Mơ hình Markov mơ tả theo thời gian nên ta đặt câu hỏi trạng thái hệ thống tương lai ─ Nó phát triển theo thời gian: hệ thống trạng thái sau thời gian mà người ta cần biết ─ Truy tìm trình tự xảy q trình: hệ thống từ trạng thái A sang trạng thái B thời gian mà người ta cần biết Khả có theo đường vạch Cơng thức tính mơ hình Markov: X k = M k X Chú thích: ─ M: ma trận biểu thị trạng thái ban đầu ─ k: thời gian ─ X0: ma trận biểu thị số lượng trạng thái lúc đầu ─ Xk: ma trận biểu thị trạng thái sau thời gian k 2.3 Phép nhân hai ma trận Cho A = (aij )m×n, B = (bij )n×p Khi A × B = C = (cij )m×p, với cij = ai1b1j + ai2b2j + · · · + ainbnj Để tìm phần tử cij ma trận tích, ta lấy hàng i A nhân tương ứng với cột j B cộng tích lại với AB = ai1 aip • b 1j b = c ij pj Điều kiện phép nhân: số cột ma trận trước phải với số hàng ma trận sau 2.4 Phép nâng lên lũy thừa Cho A ma trận vuông cấp n Ta định nghĩa : A =I A =A A =A.A ∀m ∈ N*, Am=A.A A Các bước chạy chương trình B1: Nhập ma trận X0, M, k B2: Kiểm tra xem ma trận M X0 có nhân với khơng B3: Tích hai ma trận M X0 theo công thức X k = M k X0 3.1 Giải toán cụ thể Trong chung cư có 5000 dân( khách hàng), có siêu thị A,B,C Giả sử, tháng số khách hàng siêu thị 1000,1500,2500 Người ta nhận thấy tháng có 10% khách hàng từ A sang B có 10% khách hàng từ A sang C Từ B có 20% khách hàng sang A 15% khách hàng sang C Từ C có 15% khách chuyển sang A 10% chuyển sang B Dự đoán số lượng khách hàng sau tháng siêu thị 3.2 Các bước giải toán 0,15 0,8 B1: Nhập ma trận M : 0,1 0,75 1000 Ma trận X0: 1500 , k=3 2500 B2: kiểm tra số liệu phù hợp, theo yêu cầu, ma trận M X0 nhân với B3: Số lượng khách hàng sau tháng : k Tích Xk=M X0 0, 0,1 Vậy số lượng khách hàng sau tháng siêu thị A,B,C 1966,1177,1857 0,1 Đoạn code dùng cho toán clear; close all; clc; % nhap gia tri ban dau cua bai toan disp('Ti le phan tram khach hang chuyen tu sieu thi sang sieu thi khac sau thang lan luot la:'); A_to_B = input('Tu sieu thi A sang sieu thi B: '); A_to_C = input('Tu sieu thi A sang sieu thi C: '); B_to_A = input('Tu sieu thi B sang sieu thi A: '); B_to_C = input('Tu sieu thi B sang sieu thi C: '); C_to_A = input('Tu sieu thi C sang sieu thi A: '); C_to_B = input('Tu sieu thi C sang sieu thi B: '); disp('So luong khach hang ban dau cua moi sieu thi:'); A = input('Sieu thi A: '); B = input('Sieu thi B: '); C = input('Sieu thi C: '); n = input('So luong khach hang can tim o moi sieu thi sau n thang voi n = '); % khoi tao ma tran P, X_0 P = [(1 - A_to_B - A_to_C) B_to_A C_to_A; A_to_B (1 - B_to_A - B_to_C) C_to_B; A_to_C B_to_A (1 - C_to_A C_to_B)]; X_0 = [A; B; C]; % in ket qua man hinh X_n = P^(round(n)) * X_0; fprintf('So luong khach hang cua sieu thi A sau %d thang la %d khach hang\n', n, round(X_n(1,1))); fprintf('So luong khach hang cua sieu thi B sau %d thang la %d khach hang\n', n, round(X_n(2,1))); fprintf('So luong khach hang cua sieu thi C sau %d thang la %d khach hang\n', n, round(X_n(3,1))); Các bước thực kết toán Ti le phan tram khach hang chuyen tu sieu thi sang sieu thi khac sau thang lan luot la: Tu sieu thi A sang sieu thi B: 0.1 Tu sieu thi A sang sieu thi C: 0.1 Tu sieu thi B sang sieu thi A: 0.2 Tu sieu thi B sang sieu thi C: 0.15 Tu sieu thi C sang sieu thi A: 0.15 Tu sieu thi C sang sieu thi B: 0.1 So luong khach hang ban dau cua moi sieu thi: Sieu thi A: 1000 Sieu thi B: 1500 Sieu thi C: 2500 Mo hinh markov la: 0.8000 0.2000 0.1500 0.1000 0.6500 0.1000 0.1000 0.1500 0.7500 X_0 la: 1000 1500 2500 So luong khach hang can tim o moi sieu thi sau n thang voi n = So luong khach hang cua sieu thi A sau thang la 1965 khach hang So luong khach hang cua sieu thi B sau thang la 1176 khach hang So luong khach hang cua sieu thi C sau thang la 1859 khach hang 6 Ví dụ minh họa Giả sử tơi có người bạn sống xa Hàng ngày gọi điện thoại cho kể cho nghe làm ngày Người bạn tơi có cơng việc mà anh thích làm là: 1) dạo 2) chợ 3) dọn phòng Hiển nhiên lựa chọn phải làm phụ thuộc trực tiếp vào thời tiết hôm Như vậy, không nhận thông tin cụ thể thời tiết nơi anh bạn sống lại biết xu hướng chung Dựa vào lời kể cơng việc hàng ngày anh ta, tơi đốn thời tiết hơm Như vậy, thời tiết vận hành chuỗi Markov cụ thể Có trạng thái thời tiết, "Mưa" "Nắng", khơng quan sát trực tiếp, đó, chúng ẩn Vào ngày, anh bạn làm việc sau phụ thuộc vào thời tiết hơm "đi dạo", "đi chợ" "dọn phịng" Vì anh bạn tơi tường thuật lại hoạt động mình, liệu quan sát Tồn hệ thống mơ hình Markov ẩn (HMM) Tơi biết xu hướng thời tiết nói chung tơi biết bạn tơi thường thích làm Nói cách khác, thơng số HMM biết trạng thái = ('Mưa', 'Nắng’) liệu quan sát = ('đi dạo', 'đi chợ', 'dọn phòng') khả_năng_ban_đầu = {'Mưa': 0.6, 'Nắng': 0.4} khả_năng_chuyển_dịch = { 'Mưa' : {'Mưa': 0.7, 'Nắng': 0.3}, 'Nắn' : {'Mưa': 0.4, 'Nắng': 0.6}, } khả_năng_loại_bỏ = { 'Mưa' : {'đi dạo': 0.1, 'đi chợ': 0.4, 'dọn phòng': 0.5}, 'Nắng' : {'đi dạo': 0.6, 'đi chợ': 0.3, 'dọn phòng': 0.1}, } Tài liệu tham khảo Giáo trình đại số tuyến tính thầy Đặng Văn Vinh 2.https://ichi.pro/vi/mo-hinh-markov-va-chuoi-markov-duoc-giai-thich-trong-cuoc-song-thuc-thoiquen-tap-luyen-co-xac-suat-112031996615283 Trang web academia.edu https://www.academia.edu/22879262/Ch%C6%B0%C6%A1ng_IV_PH%C3%82N_T%C3%8DCH_M ARKOV_V%C3%80_%E1%BB%A8NG_D%E1%BB%A4NG?email_work_card=thumbnail, ...ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH TRƯỜNG ĐẠI HỌC BÁCH KHOA - BÁO CÁO BÀI TẬP LỚN ĐẠI SỐ TUYẾN TÍNH ĐỀ TÀI 14: MƠ HÌNH MARKOV Nhóm 14: Nguyễn Trọng Đại MSSV: 2113114... tài tập lớn Chủ đề 14: • Giới thiệu mơ hình Markov • Viết chương trình dùng mơ hình Markov giải tốn cụ thể • Tìm ứng dụng khác mơ hình Markov Cơ sở lí thuyết 2.1 Giới thiệu mơ hình Markov Mơ hình. .. hình markov mơ hình trang thái hệ thống hay quy trình sau thời gian biểu qua mơ hình trạng thái ban đầu thời gian số lượng cụ thể ban đầu trạng thái 2.2 Mơ hình Markov sử dụng rộng rãi để: ─ Mô