关于扫雷游戏地雷的合理性设置的数学模型 下载本文

内容发布更新时间 : 2024/12/23 21:22:04星期一 下面是文章的全部内容请认真阅读。

关于扫雷游戏地雷的合理性设置的数学模型

摘要:

本文主要利用了最小二乘法和统计学知识,从合理性的角度出发,分析和解决了地雷数量最优化的问题,根据地雷数量对游戏难度进行了分级。

问题一:考虑到地雷分布以及触雷概率的合理性,人为提出了地雷分布的约束条件,即:方阵中至少有一个方块中是小于8的数字,以此为约束,得出方阵中最多可容地雷数sum=331。然后,针对结果分析,并建立了优化模型,追加提出最高触雷率pm在0.5左右的理念,并以此对方块中数字上限M加以约束,利用统计学知识得到最佳上限M。然后,根据M的值,利用最小二乘法,得出了最多可容地雷数sum=212。最后进行模型推广,将模型应用于求19阶以上的方阵最大容雷数。

问题二:衡量游戏难度的重要标准是“在能判断雷分布之前游戏猜测触雷的概率和进行必要的无雷操作次数x”。根据统计学的基本规律,分析求解出在分隔区域与整体区域猜测触雷的概率和已进行的无触雷操作的个数x之间的关系。利用这个关系解出前者概率为1时,x的取值临界。得出x关于地雷数n的函数,并将这个函数代入整体区域猜测触雷的概率与x的关系。这样就把衡量游戏难度的两个重要标准都化成了关于地雷数n的数学模型。分析这个模型,绘制出函数图像。这样就实现了地雷数量对游戏难度的控制和分级。

利用问题1、2的分析结果,模拟出符合要求的游戏程序。

一:问题重述

已知,在一个19*19的正方形中有19*19个小方块,每个方块可能是1到8的八个数字也可能是地雷,并且每个数字周围8个位置的地雷数等于这个数字。在这种条件下,我们设计了一款挖地雷的游戏,并解决了如下问题:在这个19×19的方块中最多能放多少个地雷,并对游戏的难度进行了分级。

根据题目要求,我们要注意以下几点:

1、 题目要求设计的游戏与传统的挖地雷游戏有一些不同,它要求对于任意的

一个小郑方块,它周围的几个小方块不可以全部是地雷,也不可以没有地雷。 2、 根据1的要求,可以求出出最多能放多少个地雷,这是一个最优化的问题,

其中,优化的对象就是地雷的数目。

3、 在优化的前提下结合地雷的数量对难易度进行分级,而对于难易程度分级的

问题又是一个抽象的概念,于是,可以考虑用具体的参数进行量化,便于进行难度分级。

二:问题分析:

问题一:

根据题目,可以得到以下三个约束条件: ? 扫雷游戏中,地域面积为:19*19;

? 每单位方块中只有九种填充情况:数字1-8、地雷;

? 每单位方块,假如其填充物是数字1-8,则:周围8块中地雷数总和等于该数

字。

假如只根据题目所给的约束条件来计算方阵中最多能放多少个地雷,可得出,最多地雷数为:19*19=361个,此时的触雷概率为:100%。

很明显,这种布雷方法不具备合理性。所以,为了让游戏更加合理,我们需要人为加入一些约束条件,以使得游戏能够切合玩家需要。同时,通过不同约束条件的添加,来给游戏建立不同的模型,并以此为依据对游戏的难度进行分级。

游戏运行时,计算机自动生成一个地雷分布的源代码,然后将其覆盖,游戏者在进行游戏的过程中,一步一步的打开无雷区域,在没有触雷的情况下,计算机自动为打开的区域生成一个该区域周围地雷数量的数,供游戏者以判断其他区域有雷与否的依据。不仅如此在无法判断出周围雷分布的情况下,游戏者必须进行猜测。

这个游戏设计过程,有三部份,第一就是游戏之前地雷的生成,第二就是游戏过程非雷区周围地雷数量的判断,第三就是游戏性和合理性分析。

最优化地雷的生成:

地雷的生成关系到整个游戏的游戏性,平衡性。就算在满足约束条件的情况下,可以排布的地雷数量和一定数量地雷的排布是一个很大的范围。

过多的地雷会导致游戏者要不停地进行猜测,引起的触雷概率过高会使游戏失去意义,过少的地雷则会导致游戏过于简单,也就是说在编译运行游戏之前,不仅要考虑生成的地雷是否满足约束条件,还要从合理性出发,以优化为目的建立一个数学模型求出地雷生成的最优解范围。

对于地雷的生成问题,分为两个典型的方面,一个就是对于地雷的分布方面,一个就是地雷的数量方面。

下面的分析就是基于“对于任意的一个小郑方块,它周围的几个小方块不可以全部是地雷,也不可以没有地雷。”这个单一条件下的地雷分布数量范围。

三:基本假设:

1. 此方阵中至少有一个方块中的填充物不为地雷,也不为数字8; 2. 玩家第一次挖雷时,所挖方块填充物不为地雷,也不为数字8; 3. 玩家完成第一次操作后,雷的个数和分布都已确定;

4. 玩家挖雷的过程具有逻辑性,即:连续几次的操作都在一个固定大小的区域中,

直到将此区域所有的雷挖出来为止。挖完后,再进行下一区域的挖雷工作,当玩家挖掉的雷与雷的总个数相等时,宣告胜利。

四:符号说明:

问题一:

N:方阵的阶数;

M:方阵中数字大小的上限,即假如某一方块的值为一个数字,那么,这个数字必须小于等于M;

aij:玩家第一次操作的位置,也表示aij位置对应的值; C[i,j]:组合数,即:i里面取j个;

kij:当前位置,也表示kij位置对应的值,即:kij位置周围应该有雷的个数; pkij:kij位置周围已有的非地雷的个数;

qkij:kij位置周围需要添加的雷的个数 ,即:kij-(8-pkij); sum:当前为止算出的能放的最多地雷数; sum1:以当前赋值路径得到的地雷数; 问题二:

t:隔离系数,游戏者将m*m的区域分为t份 n:整体地雷总数 m:整体区域宽度

x: 在能判断雷分布之前游戏者进行的无雷操作次数 P[k]:整体猜测概率。

c:某个3*3区域中的中间数

d:某个3*3区域中的未知单位区域的数量

P1(x):整体区域猜测触雷的概率与x的关系函数 P2(x):分隔区域猜测触雷的概率与x的关系函数 W:难度系数

五:问题求解:

5.0 单一约束下地雷数量最大值: 1 2 3 4 5 6 7 1 1 2 3 4 5 6 7 2 3 4 5 6 1 2 3 4 5 6 1 1 2 2 3 3 4 4 5 5 6 6 7 7