... độ phức tạp thuật toán Alpha- Beta: Trong trường hợp điều kiện lý tưởng, thuật toán Alpha- Beta cần xét số nút: +Số d chẵn: +Số d lẻ: b số nút, d độ sâu Phương pháp alpha- beta: -Giả sử trình tìm ... eval(u)>eval(v) Thuật toán cắttỉa Alpha- Beta: private int AlphaBeta(int[][] gt, int[][] ch, Point vitri, int buoc, int val, int hang) //Thu+Hq0-t to+AOE-n c+Hq8-t c+HuU-t alpha- beta { if (con[vitri.X][vitri.Y] ... gt[vitri.X + 1][i - 1]; gt[vitri.X + 1][i] = AlphaBeta(gt, ch, new Point(vitri.X + 1, i), buoc - 1, min, hang); } else { gt[vitri.X + 1][i] = AlphaBeta(gt, ch, new Point(vitri.X + 1, i), buoc...
... and (best < beta) begin if best > alpha then alpha := best; thực nước m; value := -AlphaBeta( -beta, -alpha, depth-1); bỏ thực nước m; if value > best then best := value; end; AlphaBeta := best; ... cho biết giá trị nằm khoảng [alpha, beta] điểm "thật tồi" không cần phải xem xét Khoảng [alpha, beta] gọi cửa sổ alpha, beta Trong ngữ cảnh trò chơi, nguyên tắc Alpha- Beta nói rằng, xem xét nút ... tham số alphabeta để ghi lại thông tin theo dõi cần thiết Thủ tục AlphaBeta bắt đầu nút gốc với giá trị alpha -vôcùng beta +vôcùng Thủ tục tự gọi đệ quy với khoảng cách giá trị alphabeta ngày...
... and (best < beta) begin if best > alpha then alpha := best; thc hin nc i m; value := -AlphaBeta( -beta, -alpha, depth-1); b thc hin nc i m; if value > best then best := value; end; AlphaBeta := best; ... thống )đợc gọi alphabeta dùng để theo dõi triển vọng Chúng cho biết giá trị nằm khoảng [alpha, beta] điểm thật tồi không cần phải xem xét Khoảng [alpha, beta] đợc gọi cửa sổ alpha, beta Trong ngữ ... tham số alphabeta để ghi lại thông tin theo dõi cần thiết Thủ tục AlphaBeta đợc bắt đầu nút gốc với giá trị alpha âm vô beta dơng vô Thủ tục tự gọi đệ qui với khoảng cách giá trị alphabeta ngày...
... thắng Max Min • Cây trò chơi = Trạng thái bắt đầu + nước hợp lệ Cây trò chơi Minimax Giải thuật Alpha- beta • “Nếu biết tồi đừng thời gian tìm hiểu xem tồi đến đâu” Tổng giá trị quân Tổng giá trị...
... cắttỉaalphabeta nhằm nâng cao hiệu tìm kiếm toán trò chơi hai đối thủ Ý tưởng tìm kiếm alpha – beta đơn giản: Thay tìm kiếm toàn không gian đến độ sâu lớp cố định, tìm kiếm alpha – beta thực ... toán minimax cắttỉa alpha- bêta Thuật toán Minimax Thuật toán Minmax hay gọi Minimax thuật toán dùng tìm kiếm có đối thủ Cải tiến thuật toán thuật toán cắttỉa Alpha- Beta (Alpha Beta Pruning) hay ... gọi alphabeta tạo trình tìm kiếm Giá trị alpha liên quan với nút MAX có khuynh hướng không giảm Ngược lại giá trị beta liên quan đến nút MIN có khuynh hướng không tăng Giả sử có giá trị alpha...
... 20092906 • Lê Hồng Văn 20093231 • Lê Anh Vi 20093679 Sebastian Viereck· 23.10.14 Overview Hướng tiếp cận Thuật toán Minimax – cắttỉa alpha- bêta Game cờ Caro Tổng kết Nhóm · 23.10.14 Hướng tiếp ... nước mà đối thủ ta sử dụng, thường sử dụng thuật toán tìm kiếm như: Minimax, tỉa tìm kiếm, tỉa alpha- beta • Cờ Caro nhiều người ưa thích tính đơn giản trò chơi thân lại mang tính trí tuệ cao Nhóm ... eval(u), giá trị đánh giá “độ lợi thế” trạng thái u Nhóm · 23.10.14 Cont Nhóm · 23.10.14 Thủ tục Alpha- Beta • Ý tưởng: Nếu nhánh tìm kiếm cải thiện giá trị (hàm tiện ích) mà có, không cần xét đến...
... chuột máy tính thực tính toán chọn nước chơi hợp lý với độ sâu cho trước (sử dụng thuật toán AlphaBeta) cập nhật thông tin thay đổi tham số cập nhật thông tin thay đổi tham số biến người chơi ... thử Thuật toán Minimax Cắt bỏ miền tồi tệ giá trị lượng Cắt bỏ miền tồi tệ giá trị giá < alpha lượng giá > beta Hàm lượng giá (thế cờ tại) Xây dựng chương trình • Giao diện chương trình Độ sâu Số...
... tìm hiểu thuật toán alphabeta Tìm hiểu hàm lượng giá, tìm hiểu thuật toán alphabeta Tạo giao diện, tìm hiểu thuật toán alphaBeta Tạo giao diện, tìm hiểu thuật toán alphaBeta Tạo giao diện, ... Alpha- Beta Pruning If best > alphaalpha = best; Thực nước m; Value = - alphabeta( -beta, -alpha, depth-1); Bỏ thực nước m; If(value > best) then best = value; End Alphabeta = best end end Hình : ... điểm Và đó, hoàn toàn không thiết phải lượng giá nút lại Từ ta xây dựng hàm alphaBeta giả mã : Function AlphaBeta (alpha, beta, depth) : integer; Begin If(depth = 0) return Eval() – tính giá trị...
... tục AlphaBeta cho đế alpha lớn beta - Áp dụng thủ tục AlphaBeta với giá trị alp beta cho Ghi nhớ lại kế - So sánh giá trị ghi nhớ với giá trị alpha, trị lớn đặt alpha giá trị m o Ghi nhớ lại alpha ... tham số alphabeta để ghi lại thông tin theo dõi cần thiết Thủ tục AlphaBeta bắt đầu nút gốc với giá trị alpha -vôcùng beta +vôcùng Thủ tục tự gọi đệ quy với khoảng cách giá trị alphabeta ngày ... nhờ AlphaBeta thuật toán Minimax (hơn 102 triệu nút) 102400000/74118 = 1382 lần Dưới bảng so sánh số nút phải xét hai thuật toán Minimax AlphaBeta Minimax Tỉ lệ số nút AlphaBeta Minimax / AlphaBeta...
... m) and (best < beta) { if best > alpha then alpha := best; thực nước m; value := -AlphaBeta( -beta, -alpha, depth-1); bỏ thực nước m; if value > best then best := value; } AlphaBeta := best; end; ... nước bên trái điểm dù lượng giá nút khác cho kết 1.2 Cách xây dựng giải thuật AlphaBeta • int AlphaBeta(int alpha, itn beta, int depth){ if depth == return Eval { Tính giá trị cờ pos } else{ best ... AlphaBeta := best; end; end; 1.2 Đánh giá so sánh AlphaBeta với MiniMax Minimax AlphaBeta Tỉ lệ số nút Độ sâu Số nút Số lần tăng 40 1600 Số nút Minimax / AlphaBeta Số lần tăng 40 40 79 1.9 20 64000 40...
... tìm nước cho Trắng sử dụng kỹ thuật cắttỉa alpha- beta, cài đặt thủ tục Alpha_ beta( u,v), v tham biến ghi lại đỉnh mà Trắng cần tới từ u procedure Alpha_ beta( u,v); begin α ← -∞; β ← ∞; for đỉnh w ... hưởng đến đánh giá đỉnh u Phương pháp cắttỉa alpha- beta cho phép ta cắt bỏ nhánh không cần thiết cho đánh giá đỉnh u Tư tưởng kỹ thuật cắttỉa alpha- beta sau: Nhớ lại rằng, chiến lược tìm kiếm ... pháp cắttỉaalpha - beta .12 2.4 Trò chơi ca rô 15 2.4.1 Cây trò chơi ca rô 15 2.4.2 Chiến lược Minimax 15 2.4.3 Phương pháp cắttỉa Alpha- beta cờ ca...
... toỏn tỡm nc i cho trng s dng k thut ct ta Anpha -Beta c ci t bi th tc Alpha_ beta( u,v) ú v l tham bin ghi li nh m trng cn i ti u procedure Alpha_ beta( u,v); begin -; ; for đỉnh w u if MinVal(w, ... dng no ú - Mt hm kt cuc ng mi trng thỏi kt thỳc vi mt giỏ tr no ú T tng ca thut toỏn ct ct Anpha -beta nh sau: nh li rng, chin lc tỡm kim Minimax l chin lc tỡm kim theo sõu Gi s quỏ trỡnh tỡm kim, ... nh A l en, trng hp ny, nu eval (U)
... toỏn tỡm nc i cho trng s dng k thut ct ta Anpha -Beta c ci t bi th tc Alpha_ beta( u,v) ú v l tham bin ghi li nh m trng cn i ti u procedure Alpha_ beta( u,v); begin -; ; for đỉnh w u if MinVal(w, ... dng no ú - Mt hm kt cuc ng mi trng thỏi kt thỳc vi mt giỏ tr no ú T tng ca thut toỏn ct ct Anpha -beta nh sau: nh li rng, chin lc tỡm kim Minimax l chin lc tỡm kim theo sõu Gi s quỏ trỡnh tỡm kim, ... nh A l en, trng hp ny, nu eval (U)
... gốc A Hình 2: Cắt bỏ gốc a, eval(u) > eval(v) Hình 3: Mô hình alpha – beta cho Hậu III Chương trình Chess Ứng dụng thuật toán alpha – beta vào chò chơi cờ vua Hình 4: Màn hinh tổng quan trò chơi ... Thuật toán sau cải thiện tốc độ thuật toán Thuật toán 3: Cải thiện thuật toán Backtracking Alpha – Beta Vấn đề chơi cờ xem xét vấn đề tìm kiếm không gian trạng thái Mỗi trạng thái tình (cách ... Backtracking kỹ thuật chung sử dụng để giải loạt vấn đề liệt kê tổng hợp Nó sở kỹ thuật khác cắttỉaAlpha – Beta ứng dụng rộng rãi hoạt động nghiên cứu Ở em xin giới thiệu toán nhỏ cờ vua xét toán đặt...
... tồi không ảnh hưởng tới kết cuối việc tìm kiếm Ví dụ Alpha – Betacắttỉa Ví dụ Alpha – Betacắttỉa Ví dụ Alpha – Betacắttỉa Ví dụ Alpha – Betacắttỉa Hàm lượng giá • Kết trò chơi phụ thuộc ... nhằm cực đại hóa giá trị Alpha- betacắttỉa - MiniMax: Sẽ phải duyệt qua tất bàn cờ sinh Bất khả thi - Alpha- Betacắttỉa mở rộng Minimax - Ý tưởng tìm kiếm Alpha- Betacắttỉa : - + Với nhánh ... Alpha – Betacắttỉa MiniMax + Thuật toán áp dụng trò chơi đối kháng + đối thủ luân phiên đi, đối thủ (Min) nước nhằm cực tiểu hóa giá trị mình, đối thủ (Max) nước nhằm cực đại hóa giá trị Alpha- beta...
... kiếm Phương pháp tìm kiếm Alpha- Betacắttỉa cải thiện điều Ý tưởng tìm kiếm Alpha- Betacắttỉa : - Thực chất cải tiến MiniMax Tại nút có giá trị Alpha va Beta : o Alpha lưu lại (cập nhật lại) ... value; } 27 Cài đặt chạy thử chương trình Số nút duyệt qua dùng minimax, alpha- beta Minimax Minimax Alpha- Beta Alpha- Beta 425818 425818 68705 16451 1468070 1468070 112703 32224 3198847 3198847 ... Alpha, Beta o Output : xảy trường hợp Giá trị lớn nhât nút trường hợp max < beta Một giá trị = Beta...
... hàm hiệu chỉnh khác (a) Ảnh nhị phân (b) Sơ đồ Voronoi (c) Hiệu chỉnh hàm Potential, T=9 (d) Hiệu chỉnh hàm Potential, T=18 2.3.4 Thuật toán tìm xƣơng Trong mục trình bày ý tƣởng thuật toán tìm ... CT1002 12 Kỹ thuật cắttỉa xƣơng ảnh Đồ án tốt nghiệp Hoặc phân loại mẫu (unsupervised classification hay clustering) mẫu đƣợc gán vào lớp khác dựa tiêu chuẩn đồng dạng Các lớp thời điểm phân ... nói Khi biết mẫu đó, để nhận dạng phân loại mẫu có thể: Hoặc phân loại có mẫu (supervised classification), chẳng hạn phân tích phân biệt (discriminant analyis), mẫu đầu vào đƣợc định danh nhƣ thành...