qiao啊个敲 2022-06-22 01:08 采纳率: 0%
浏览 77
已结题

计算机博弈博弈大赛有偿问答

求一个参加过计算机博弈大赛并获得过国奖的友友,有偿请教相关问题!

  • 写回答

1条回答 默认 最新

  • 白驹_过隙 算法领域新星创作者 2022-06-22 08:26
    关注
    获得5.00元问题酬金

    赛前准备
    对于计算机博弈比赛,主要是针对博弈系统的编写、人机博弈的算法和强化学习算法的编写。我一般使用的是C++及Python3.X,作为博弈系统主要编写语言。当然这个编程语言没有特别的限定,我也有同学使用JAVA进行博弈系统的编写,甚至参赛队伍有用matlab进行博弈系统的编写,而且在19年的决赛中获得了一等奖。对于编程语言的学习是一个比较重要的环节,也是对同学们今后对数据挖掘研究的一个基础。
    推荐一些书目:针对低年级同学:
    全国大学生计算机博弈大赛培训教程 王静文,吴晓艺
    PC游戏编程(人机博弈)王小春
    C/C++中国象棋程序入门与提高

    强化学习进阶:
    人工智能与游戏 乔治斯·N·扬纳卡基斯 朱利安·图吉利斯
    强化学习入门:从原理到实践
    一、队友的选择
    由于比赛任务量比较大,所以靠谱的队友一直是比赛成功的关键一点,对于队友的选择
    一般参照如下几点:

    1. 有一定编程能力的同学,还是需要寻找能够使用python,C++/C、JAVA等编程;
    2. 寻找一些有项目或比赛经验的同学;项目可以是关于APP/小程序,CV或者NLP等等,比赛可以是ACM,CCPC,蓝桥杯等。

    二、项目的分工
    计算机博弈项目设置,一共有19项博弈项目都不太一样。但是一般项目分工可以分为大概如下几个方面:

    1. 博弈项目规则及棋盘的表示:对于不同的比赛项目都有它本身的比赛规则,需要将这些规则用编程语言表达出来,如对于行棋是否合法,对于胜负判断等等,需要进行合理编写;对于棋盘棋子的表示,有很多方法,这些方法也影响着算法的运行效率,所以对于表示方法也是项目优化的一部分。
    2. 交互式界面的编写:对于交互式界面编写是比赛中很重要的一个组成部分,编写好的图形界面对于后续的研究也有很大的帮助。
    3. 核心算法的编写:对各个项目的估值函数的研究与编写,搜索算法如Alpha-beta算法,PVS算法,UCT算法的编写。

    三、比赛中的建议
    能否取到好成绩,关键就在比赛期间了。有这么几个点需要注意:

    1. 明确团队分工、定时沟通进度、及时的交流,都是获得好成绩的前提。
    2. 必要时要和指导老师沟通进度,对一些算法的疑问及时沟通,及时进行战略上的调整。
    3. 对于博弈系统一定要编写好悔棋功能,以免在比赛中出现差错,直接判负。
    评论

报告相同问题?

问题事件

  • 系统已结题 6月30日
  • 创建了问题 6月22日

悬赏问题

  • ¥15 gojs 点击按钮node的position位置进行改变,再次点击回到原来的位置
  • ¥15 计算决策面并仿真附上结果
  • ¥20 halcon 图像拼接
  • ¥15 webstorm上开发的vue3+vite5+typeScript打包时报错
  • ¥15 vue使用gojs,需求在link中的虚线上添加方向箭头
  • ¥15 CSS通配符清除内外边距为什么可以覆盖默认样式?
  • ¥15 SPSS分类模型实训题步骤
  • ¥100 求ASMedia ASM1184e & ASM1187e 芯片datasheet/规格书
  • ¥15 求解决扩散模型代码问题
  • ¥15 工创大赛太阳能电动车项目零基础要学什么