Source code game cờ caro C# + Báo cáo

[Mã code 333]
  2 Đánh giá    Viết đánh giá
 1761      20408      433
Phí tải: 5 Xu (1Xu = 1.000đ)
Danh mục
Thể loại
Nhóm code
Ngày đăng
20-1-2015
Loại file
Full code + Báo cáo
Dung lượng
3.1 Mb

Download source code game cờ caro C# miễn phí, chia sẻ code game cờ caro với cách chơi đơn giản và hấp dẫn được viết bằng C# + Báo cáo để bạn tham khảo


MÔ TẢ CHI TIẾT

TRÒ CHƠI GAME CARO

1-Cách tạo một chương trình caro & cách chơi

_Chương trình gồm có
+ Lớp frmMain – cửa sổ chính của chương trình.
+ Lớp frmOption – cho phép ngươi chơi đánh trước hay sau
+ Lớp EvalueBoard – lớp dùng để thiết lập một bảng lượng giá cho các loại bàn cờ !
+ Lớp GomokuBoard – Bàn cờ caro, chứa một lớp bao EvalueBoard.



2-Thuật Toán:

+ Đối với những trò chơi thuộc dạng Game Board, để thiết lập khả năng tự chơi với người nó phải có 2 điều kiện : Kinh nghiệm và độ thông minh.

1/. EvalueBoard – Lượng giá tĩnh thế cờ : Đây là kinh nghiệm đánh giá thế cờ mà người viết nhập vào.
+ Ta duyệt từng lượt 5 ô liên tiếp trên hàng - , cột | , đường chéo lên / , đường chéo xuống /, lượng giá như sau:
· Gặp 1 quân ta > 4 * Gặp 1 quân địch.
· Gặp 2 quân ta > 4 * Gặp 2 quân địch.
· Gặp 3 quân ta > 4 * Gặp 3 quân địch.
· Gặp 4 quân ta > 4 * Gặp 4 quân địch.
_ Tùy theo kinh nghiệm của từng người mà ta có cách lượng giá khác nhau. Cộng dồn các giá trị lượng giá vào các ô trống trong 5 ô mà ta đang xét.
_ Đánh giá như vậy thì những ô nào sẽ có giá trị lượng giá lớn nhất ? – đó là những ô càng gần quân cờ được phát hiện thì giá trị càng lớn, đồng thời những ô giao nhau giữa 2 đường thì sẽ có giá trị lớn hơn => đó là ý nghĩa của việc cộng dồn… do có nhiều kỹ thuật lượng giá khác nhau ( Duyệt trên 9 ô, phát hiện các trường hợp giao nhau, phân tích từng trường hợp là những cách phức tạp và hao tốn nhiều CPU ).
2/. Kỹ thuật sinh nước đi – độ thông minh của máy :
_ Có khá nhiều kỹ thuật sinh nước đi cho Game Board, ở chương trình này ta dùng kỹ thuật sinh dần các nước đi – Increasing Generation.
+ Mã giả như sau :
* Search : Generate move-gen (step 0)
for (i = 0;i < BOARD_SIZE;i++)
if (IsLegalMove(i))
if (IsHasOutlook(i)) // có triển vọng ...
if (IsNotInGenMove(i)) StoreGenMove(i)
* Đưa vào Stack ... * Tăng chiều sâu và lặp lại cho đến khi đến chiều sâu giới hạn ==> Cắt nhánh ==> * Trở lại bước 0 + Kỹ thuật này khá hay, Một nhược điểm đó là chưa chắc tìm thấy một nước đi tốt nhất (vì nó đã lỡ cắt nhánh ở 1 nước đi mà tưởng rằng là tốt nhất, hiện tượng này cũng có thể gọi là "cực đại cục bộ") ...
- Ý tưởng : Từ trạng thái ban đầu, sinh 1 vài nước đi "nhạy cảm" (có triển vọng đưa đến chiến thắng), kiểm tra xem những nước đi này sau một vài độ sâu kế tiếp xem có thật sự là thắng chưa ? Nếu chưa thì tiếp tục sinh những nước đi khác rồi kiểm tra tiếp ...
- Phân tích : tính sâu vào những nước "tốt" (theo quan điểm của mình) để mong chờ search-algorithm cắt nhánh sớm trước khi mình tiếp tục sinh thêm những nước lằng nhằng khác ... Tuy nhiên, nếu ở 1 trạng thái nào đó, nước đi tốt không nằm ở trong số những nước đi có triển vọng thì mình vẫn phải tiếp tục sinh ... cách cài đặt sẽ trở nên phức tạp.


3/. Đánh giá:

_ Chương trình có khả năng dự đoán tối đa 21 nước đi.
_ Trong quá trình đánh chương trình sẽ thông báo khi nhìn thấy đường có thể thắng đối thủ - Chắc chắn khoảng 90% ( không thể 100% vì ta phải giới hạn chiều rộng phân nhánh để tránh các nước đi vô ích ). => đây chính là nhược điểm cần khắc phục => ta có thể dùng các biến toàn cục để kiểm tra đường thắng đó có chắc hay không, nhưng làm vậy tốn nhiều thời gian, và độ chính xác còn phụ thuộc vào cách đánh giá của người viết.
_ Đối với vài trường hợp đặc biệt ( chỉ xảy ra khi ta chọn đối thủ trình độ thấp ). Không chận các đường thua trước mắt… Nhưng vị trí mà mày đánh sẽ là đường đánh thắng của đối thủ trong nước kế tiếp – Tức là máy trong tình trạng thua chắc !
 

HÌNH ẢNH

Source code game cờ caro C#,game caro,cờ caro,game cờ,game caro c#

 

Source code game cờ caro C#,game caro,cờ caro,game cờ,game caro c#

 

Source code game cờ caro C#,game caro,cờ caro,game cờ,game caro c#

 

THÔNG TIN TÁC GIẢ

Đinh Thị Hoàng Yến

Hà Duy Khang

Hoàng Đỗ Yến Linh

Phan Thanh Liêm

Trinh Chí Đức

TRƯỜNG ĐẠI HỌC LẠC HỒNG

KHOA CÔNG NGHÊ THÔNG TIN

LỚP 07CT_112_NHÓM_2

 

Nguồn: Sharecode.vn



HƯỚNG DẪN CÀI ĐẶT
 
 
LINK DOWNLOAD

[Sharecode.vn] Source code game co caro full code c# + bao cao.rar [3.1 Mb]

File đã kiểm duyệt
     Báo vi phạm bản quyền
Pass giải nén (Nếu có):
sharecode.vn
DOWNLOAD
(5 Xu)
Link download dự phòng

BÌNH LUẬN



ĐÁNH GIÁ


ĐIỂM TRUNG BÌNH

3
2 Đánh giá
Code rất tốt (1)
Code tốt (0)
Code rất hay (0)
Code hay (0)
Bình thường (1)
Thành viên
Nội dung đánh giá
05:56 - 7/4/2018
Bình thường
Bugs
14:03 - 8/6/2017
Code rất tốt
Code rất tốt và phù hợp để phát triển

 HỖ TRỢ TRỰC TUYẾN