编者注:该文件被选为Matlab Central选择一周
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
更新:
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
最新更新将公共方法添加到支持GUI外部控制的Minesweeper类中。万博1manbetx
随附的脚本aitest.m显示了如何将自定义的“人工智能”功能连接到GUI并编程为左/右键单击。
挑战:编写自己的AI引擎来解决扫雷拼图。您可以击败内置enginemove()方法的速度和/或准确性吗?
随时分享您的AI代码!我很想看到你的解决方案:)
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
语法:Minesweeper();
扫雷器(水平);
扫雷(Nrows,Ncols,Nmines);
输入:level = {'初学者','intrumediate','expert'}
(nrows,ncols)=(#行,#列)
nmines = #mines
描述:此类与初学者,中级,中间,
专家和自定义级别,持续的排行榜,古典图形,提示和
人工智能(AI)自动解决引擎。
目的:发现所有安全的正方形而无需触摸地雷。每个广场上的数字表示
该广场附近的矿山数。
控件:左键单击正方形以打开它。右/cmd/ctrl单击一个正方形以将其标记为
矿。为了您的安全,不能剩下标记的正方形。右/cmd/ctrl点击标志
删除它。一旦您标记了适当数量的地雷
给定的正方形,您可以左键单击该方形以级联打开其未覆盖的相邻正方形。
最后,单击笑脸按钮重置板,然后通过
游戏菜单。
提示:使用提示菜单在卡住时为您打开安全广场。然而,
请注意,使用提示将取消您的时间出现在排行榜上。
自动解决方案:使用“求解”菜单调用自动解决模式。您可以停止求解器
在任何时候单击红色停止按钮。自然,使用自动锻炼者会取消资格
您出现在排行榜上的时间。
作者:布莱恩·摩尔
brimoor@umich.edu
引用为
布莱恩·摩尔(Brian Moore)(2022)。扫雷器(//www.tianjin-qmedu.com/matlabcentral/fileexchange/46145-MinesWeeper),Matlab Central File Exchange。检索。