资源简介
这是一个爱因斯坦博弈棋,已经实现了人工智能,还有点缺陷,没有做界面,
代码片段和文件信息
import java.util.*;
class STONE
{
public int Position = -1;
public boolean IsExist = false;
public int Distance = 0;
}
public class Einstein
{
final int DISTANCE[] =
{
44444
43333
43222
43211
43210
};
public Random random;
public int Board[];
public STONE Stone[];
Einstein()
{
Board = new int[25];
Stone = new STONE[13];
random = new Random();
for(int i=0;i<13;i++)
{
Stone[i] = new STONE();
}
InitBoard();
Init();
}
void InitBoard()
{
int i=0;
int cn[] = {123456};
int hn[] = {123456};
int cPos[] = {0 1 2 5 6 10};
int hPos[] = {14 18 19 22 23 24};
for(i=0; i<25; i++)
{
Board[i] = 0;
}
i = 0;
//初始化电脑方棋盘
int Rand = random.nextInt(6);
while (i<6)
{
if (cn[Rand] != 0)
{
Board[cPos[i]] = cn[Rand];
cn[Rand] = 0;
i++;
}
Rand = random.nextInt(6);
}
//初始化玩家方棋盘
Rand = random.nextInt(6);
i=0;
while (i<6)
{
if (hn[Rand] != 0)
{
Board[hPos[i]] = hn[Rand]+6;
hn[Rand] = 0;
i++;
}
Rand = random.nextInt(6);
}
}
public void Print()
{
for(int i=0;i<25;i++)
{
if(Board[i]!=0)
{
if(Board[i]<7)
{
System.out.print(“ --B“+Board[i]+“-- “);
}
else
{
System.out.print(“ --G“+(Board[i]-6)+“-- “);
}
}
else
{
System.out.print(“ ------ “);
}
if((i+1)%5==0)
{
System.out.println();
}
}
System.out.println();
}
public void GetBoard(int[] board)
{
for(int i=0;i<25;i++)
{
Board[i] = board[i];
}
Init();
}
public int[] SetBoard()
{
return Board;
}
public void Init()
{
for (int i=0; i<25; i++)
{
Stone[Board[i]].Position = i;
Stone[Board[i]].IsExist = Board[i]>0?true:false;
Stone[Board[i]].Distance = Board[i]<7 ? DISTANCE[i]:DISTANCE[24-i];
}
}
public int GetBlueDice()
{
return random.nextInt(6*100000)%6 +1;
}
public int GetGreenDice()
{
return random.nextInt(6*100000)%6 + 7;
}
public boolean IsBlueWin()
{
return ( (Board[24] < 7 && Board[24] >0)
|| (!Stone[7].IsExist && !Stone[8].IsExist
&& !Stone[9].IsExist && !Stone[10].IsExist
&& !Stone[11].IsExist && !Stone[12].IsExist) );
}
public boolean IsGreenWin()
{
return ( (Board[0] > 6)
|| (!Stone[1].IsExist && !Stone[2].IsExist
&& !Stone[3].IsExist && !Stone[4].IsExist
&& !Stone[5].IsExist && !Stone[6].IsExist) );
}
public boolean IsBlueVaild(int Diceint moveFromint moveTo)
{
int m = Dice;
if( moveTo > 24 || moveFrom < 0 )
return false;
//查找大于或等于骰子数Dice的第一个骰子
while(m<7 && !Stone[m].IsExist)
{
m++;
}
if(Stone[m].Position == moveFrom)
{
if(moveFrom >19 && moveFrom < 25)
{
return moveTo == moveFrom+1;
}
else if((moveFrom+1)%5 == 0)
{
return
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 4870 2014-05-23 22:13 Einstein-1\Einstein.class
文件 7672 2014-03-26 12:27 Einstein-1\Einstein.java
文件 1071 2014-05-23 22:13 Einstein-1\GameThread.class
文件 661 2014-03-26 11:17 Einstein-1\GameThread.java
文件 8161 2014-05-23 22:13 Einstein-1\McSearch.class
文件 13891 2014-03-26 12:13 Einstein-1\McSearch.java
文件 222 2014-05-23 22:13 Einstein-1\MoveList.class
文件 313 2014-05-23 22:13 Einstein-1\MoveListAndCount.class
文件 308 2014-05-23 22:13 Einstein-1\STONE.class
文件 297 2014-05-23 22:13 Einstein-1\Sum.class
文件 4204 2014-07-10 14:15 Einstein-1\Windows.class
文件 4587 2014-07-10 14:15 Einstein-1\Windows.java
文件 4674 2014-07-10 14:14 Einstein-1\Windows.java.bak
目录 0 2014-12-30 23:24 Einstein-1
----------- --------- ---------- ----- ----
50931 14
- 上一篇:QPST救砖所需文件
- 下一篇:分期实际年化利率计算器
相关资源
- 西工大人工智能八数码实验报告
- 结束StudentMain.exe的小程序
- pycharm各种主题包括仿sublime的monokai主
- 人工智能经典试题及答案
- pyqt5:Qpainter绘制基础图形,鼠标拖动
- aix 7.1 iso
- ORIENTAIS网络管理模块
- 黑白棋AI算法
- 概率论与数理统计知识点
- logistic回归病马训练集horseColicTrainin
- Hoo WinTail 最新版本(v4.2.986)破解版
- jisuanqi2.aia
- 2017江西省电子赛现场赛解决仿真
- LFW数据集 pairs.txt
- 深度强化学习 ( DQN )基本原理与A
- 引入了UCT算法的围棋AI程序代码
- read_MAIAC.py
- 《tensorflow实战》的源代码
- 思科服务器raid卡驱动
- air720.zip
- 百度地图路书实现的车辆实时定位
- 人工智能原理--基于归结原理的推理系
- 如何用spss求回归模型中的AIC和BIC
- 粒子群改进蝙蝠算法的自适应权重算
-
SAPli
nk_Daily.nugg - 人工智能校企合作方案
- 基于prolog的迷宫系统
- 贪吃蛇的实现及简单AI设计课程设计报
- Mosaic_Batch_V5.3_S1.zip
- 内存spd修改工具ThaiphoonBurner
评论
共有 条评论