CN110433494A - 落点预测方法、落点预测***及游戏决策方法 - Google Patents

落点预测方法、落点预测***及游戏决策方法 Download PDF

Info

Publication number
CN110433494A
CN110433494A CN201810410955.2A CN201810410955A CN110433494A CN 110433494 A CN110433494 A CN 110433494A CN 201810410955 A CN201810410955 A CN 201810410955A CN 110433494 A CN110433494 A CN 110433494A
Authority
CN
China
Prior art keywords
collision
environment
controlled object
environment object
drop point
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Withdrawn
Application number
CN201810410955.2A
Other languages
English (en)
Inventor
宋承翰
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
QINXIANG ELECTRONICS CO Ltd
Original Assignee
QINXIANG ELECTRONICS CO Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by QINXIANG ELECTRONICS CO Ltd filed Critical QINXIANG ELECTRONICS CO Ltd
Priority to CN201810410955.2A priority Critical patent/CN110433494A/zh
Publication of CN110433494A publication Critical patent/CN110433494A/zh
Withdrawn legal-status Critical Current

Links

Classifications

    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/55Controlling game characters or game objects based on the game progress
    • A63F13/57Simulating properties, behaviour or motion of objects in the game world, e.g. computing tyre load in a car race game
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/55Controlling game characters or game objects based on the game progress
    • A63F13/57Simulating properties, behaviour or motion of objects in the game world, e.g. computing tyre load in a car race game
    • A63F13/573Simulating properties, behaviour or motion of objects in the game world, e.g. computing tyre load in a car race game using trajectories of game objects, e.g. of a golf ball according to the point of impact
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/80Special adaptations for executing a specific game genre or game mode
    • A63F13/812Ball games, e.g. soccer or baseball
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/04Forecasting or optimisation specially adapted for administrative or management purposes, e.g. linear programming or "cutting stock problem"
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/60Methods for processing data by generating or executing the game program
    • A63F2300/64Methods for processing data by generating or executing the game program for computing dynamical parameters of game objects, e.g. motion determination or computation of frictional forces for a virtual car
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/60Methods for processing data by generating or executing the game program
    • A63F2300/64Methods for processing data by generating or executing the game program for computing dynamical parameters of game objects, e.g. motion determination or computation of frictional forces for a virtual car
    • A63F2300/646Methods for processing data by generating or executing the game program for computing dynamical parameters of game objects, e.g. motion determination or computation of frictional forces for a virtual car for calculating the trajectory of an object
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/80Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game specially adapted for executing a specific type of game
    • A63F2300/8011Ball

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Business, Economics & Management (AREA)
  • Theoretical Computer Science (AREA)
  • Human Resources & Organizations (AREA)
  • Human Computer Interaction (AREA)
  • Economics (AREA)
  • Strategic Management (AREA)
  • Marketing (AREA)
  • Game Theory and Decision Science (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Development Economics (AREA)
  • Operations Research (AREA)
  • Quality & Reliability (AREA)
  • Tourism & Hospitality (AREA)
  • Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Processing Or Creating Images (AREA)

Abstract

一种落点预测方法,包含输入环境状态以及输入参数;根据输入参数及该环境状态利用环境物件估算模型计算出受控物件的第一移动距离;侦测受控物件在第一移动距离内是否与第一环境物件或第二环境物件发生碰撞;当发生碰撞,估算受控物件的碰撞后路径,并更新环境状态,根据碰撞后路径重新利用环境物件估算模型计算出受控物件的第二移动距离;以及当在第一移动距离内未发生碰撞,估算受控物件的停止位置。借此,让预测NPC行为可以更准确,达到即时回馈的功效。

Description

落点预测方法、落点预测***及游戏决策方法
技术领域
本发明是有关于一种落点预测方法、落点预测***及游戏决策方法, 且特别是有关于一种预测游戏中非玩家角色位置的方法、***及游戏决策 方法。
背景技术
近年来,随着移动装置的蓬勃发展,线上即时的***也越来越受 玩家喜爱,通过即时配对玩家进入双人或多人的对战模式,让玩家享受与 真人对战的乐趣。但如果某些特定时段在线人数过少,将会导致玩家上线 后找不到人对战的状况发生,因此为了让玩家随时都能享受对战的乐趣, 游戏开发商将人工智能应用于游戏中,让电脑可以模拟真人的行为与玩家 对战。
但人工智能通常需要经过繁复的设计与计算,因此如果想要得到精准 的结果往往需要耗费大量的时间,使得在即时对战游戏中无法即时给予回 馈,并且由于运算量庞大,对于手机的处理器而言也是庞大的负荷。因此, 如何在不影响精准度的情况下更快速的运算,达到即时回馈的功效是本领 域待解决的问题。
发明内容
本发明的主要目的是在提供一种落点预测方法、落点预测***及游戏 决策方法,其主要是改进以往人工智能因运算庞大而导致计算时间过长的 问题,利用将游戏中非玩家角色(Non-Player Character,NPC)的行为,分 成多个可估算的小行为,再将多个小型为个别训练成为训练模型,使得预 测NPC行为可以更准确,达到即时回馈的功效。
为达成上述目的,本发明的第一态样是在提供一种落点预测方法,此 方法包含以下步骤:输入环境状态以及输入参数,环境状态包含第一环境 物件或第二环境物件的位置;根据输入参数及该环境状态利用环境物件估 算模型计算出受控物件的第一移动距离;侦测受控物件在第一移动距离内 是否与第一环境物件或第二环境物件发生碰撞;当发生碰撞,估算受控物 件的碰撞后路径,并更新环境状态,根据碰撞后路径重新利用环境物件估 算模型计算出受控物件的第二移动距离;以及当在第一移动距离内未发生 碰撞,估算受控物件的停止位置。
根据本发明一实施例,更包含:如果发生碰撞,利用碰撞前速度模型 计算该受控物件碰撞前的速度,并接着判断该受控物件是与该第一环境物 件及该第二环境物件的其中之一发生碰撞事件。
根据本发明一实施例,更包含:如果该受控物件与该第一环境物件发 生该碰撞事件,利用切线偏移模型计算该受控物件与该第一环境物件碰撞 后的角度偏移量;以及计算该受控物件的第一碰撞后速度以及计算该第一 环境物件的第二碰撞后速度。
根据本发明一实施例,更包含:如果该受控物件与该第二环境物件发 生该碰撞事件,计算该受控物件与该第二环境物件碰撞后的该角度偏移量 及碰撞后速度。
根据本发明一实施例,更包含:纪录该碰撞事件的发生位置,并根据 该发生位置、该第一碰撞后速度及该第二碰撞后速度更新该环境状态。
本发明的第二态样是在提供一种落点预测***,其包含:处理器以及 储存装置。储存装置电性连接至处理器,用以储存环境状态以及输入参数, 环境状态包含第一环境物件或第二环境物件的位置。其中,处理器包含: 环境物件估算模块、碰撞侦测模块、碰撞计算模块以及位置计算模块。环 境物件估算模块根据输入参数及环境状态以以计算出受控物件的第一移动 距离。碰撞侦测模块与环境物件估算模块电性连接,用以侦测受控物件在第一移动距离内是否与第一环境物件或第二环境物件发生碰撞。碰撞计算 模块与碰撞侦测模块电性连接,用以计算发生碰撞后受控物件的碰撞后路 径,并更新环境状态,接着根据碰撞后路径重新利用环境物件估算模型计 算出受控物件的第二移动距离。位置计算模块与碰撞侦测模块电性连接, 当在第一移动距离内未发生碰撞时,用以估算受控物件之一停止位置。
根据本发明一实施例,该碰撞计算模块更用以利用碰撞前速度模型计 算该受控物件碰撞前的速度,并接着判断该受控物件是与该第一环境物件 及该第二环境物件的其中之一发生碰撞事件。
根据本发明一实施例,如果该受控物件与该第一环境物件发生该碰撞 事件,该碰撞计算模块利用切线偏移模型计算该受控物件与该第一环境物 件碰撞后的角度偏移量,以及接着计算该受控物件的第一碰撞后速度以及 计算该第一环境物件的第二碰撞后速度。
根据本发明一实施例,如果该受控物件与该第二环境物件发生该碰撞 事件,该碰撞计算模块会计算该受控物件与该第二环境物件碰撞后的该角 度偏移量及碰撞后速度。
根据本发明一实施例,该位置计算模块会纪录该碰撞事件的发生位置, 并根据该发生位置、该第一碰撞后速度及该第二碰撞后速度更新该环境状 态。
本发明的第三态样是在提供一种游戏决策方法,其包含:取得环境状 态;决定多个输入参数;将环境状态及多个输入参数依序应用于落点预测 方法,得到该受控物件的多个停止位置,停止位置分别对应至输入参数的 其中之一;估算停止位置各自的价值;以及根据估算的停止位置各自的价 值,由输入参数中决定最佳输入参数。
本发明的落点预测方法、落点预测***及游戏决策方法主要是改进以 往人工智能因运算庞大而导致计算时间过长的问题,利用将游戏中NPC的行 为,分成多个可估算的小行为,再将多个小型为个别训练成为训练模型, 使得预测NPC行为可以更准确,达到即时回馈的功效。
上述说明仅是本发明技术方案的概述,为了能更清楚了解本发明的技 术手段,而可依照说明书的内容予以实施,并且为让本发明的上述和其他 目的、特征和优点能够更明显易懂,以下特举较佳实施例,并配合附图, 详细说明如下。
附图说明
图1是根据本发明的一些实施例所绘示的一种落点预测***的示意图。
图2是根据本发明的一些实施例所绘示的一种落点预测方法的流程图。
图3是根据本发明的一些实施例所绘示的步骤S240的流程图。
图4是根据本发明的一些实施例所绘示的一种游戏决策方法的流程图。
图5A是根据本发明的一些实施例所绘示的撞球游戏的示意图。
图5B是根据本发明的一些实施例所绘示的撞球游戏的示意图。
【主要元件符号说明】
100:落点预测***
101:处理器
102:储存装置
110:环境物件估算模块
120:碰撞侦测模块
130:碰撞计算模块
140:位置计算模块
200:落点预测方法
400:游戏决策方法
510:球杆
520:母球
530a、530b、530c:子球
S210~S250、S241~S346、S410~S450:步骤
具体实施方式
以下揭示提供许多不同实施例或例证用以实施本发明的不同特征。特 殊例证中的元件及配置在以下讨论中被用来简化本揭示。所讨论的任何例 证只用来作解说的用途,并不会以任何方式限制本发明或其例证的范围和 意义。此外,本揭示在不同例证中可能重复引用数字符号且/或字母,这些 重复皆为了简化及阐述,其本身并未指定以下讨论中不同实施例且/或配置 之间的关系。
请参阅图1。图1是根据本发明的一些实施例所绘示的一种落点预测系 统100的示意图。如图1所绘示,落点预测***100包含处理器101以及储存 装置102。储存装置102电性连接至处理器101,并用以储存环境状态以及输 入参数,环境状态包含第一环境物件或第二环境物件的位置。处理器110更 包含环境物件估算模块110、碰撞侦测模块120、碰撞计算模块130以及位置 计算模块140。环境物件估算模块110与碰撞侦测模块120电性连接,碰撞侦 测模块120与碰撞计算模块130及位置计算模块140电性连接。
在本发明各实施例中,处理器101可以实施为集成电路如微控制单元(microcontroller)、微处理器(microprocessor)、数字信号处理器 (digital signalprocessor)、特殊应用集成电路(application specific integrated circuit,ASIC)、逻辑电路或其他类似元件或上述元件的组合。 储存装置102可以实施为内存、硬碟、随身碟、记忆卡等。
请参阅图2。图2是根据本发明的一些实施例所绘示的一种落点预测方 法200的流程图。本发明的一实施例的落点预测方法200可以用来计算NPC行 为,此处所指的NPC行为可以是指游戏中所有非为家角色的物理状态,举例 而言,在撞球游戏中的NPC行为可以是指母球、子球与球台之间的关系,以 及母球及子球的物理状态等。在一实施例中,图2所示的落点预测方法200 可以应用于图1的落点预测***100上,处理单元110用以根据下列落点预测 方法200所描述的步骤,进行NPC行为的估算。如图2所示,落点预测方法200 包含以下步骤:
步骤S210:输入环境状态以及输入参数;
步骤S220:根据输入参数利用环境物件估算模型计算出受控物件的第 一移动距离;
步骤S230:侦测受控物件在第一移动距离内是否与第一环境物件或第 二环境物件发生碰撞;
步骤S240:如果发生碰撞,估算受控物件的碰撞后路径,并更新环境 状态;以及
步骤S250:如果在第一移动距离内没有发生碰撞,估算受控物件的停 止位置。
在步骤S210中,输入环境状态以及输入参数,环境状态包含第一环境 物件或第二环境物件的位置。在一实施例中,第一环境物件可以是子球, 第二环境物件可以是球台,输入参数可以是击球的力道、击球的位置以及 击球的方向等。本发明仅需要改变输入的环境状态以及输入参数即可适用 于不同即时对战游戏中(例如:棒球游戏、对打游戏等),并不限于使用在 即时对战的撞球游戏中。
在执行步骤S220之前,需先将母球的运动状态、母球与子球碰撞的物 理状态以及母球与球台碰撞的物理状态分成多个模型个别进行训练,多个 模型分别是环境物件估算模型、碰撞前速度模型以及切线偏移模型,而环 境物件估算模型中包含三个子模型,分别是基底距离子模型、状态切换子 模型以及滚动速度衰减子模型。
首先介绍基底距离子模型,母球有未撞到任何东西(子球或球台)而停 止的情况,在此实施例中将母球受力后直到停止,在移动间未发生碰撞的 情况,作为母球移动的基底距离。输入在不同击球力道下母球移动的距离, 再利用类神经网络(Neural Network)或是线性回归(Linear Regression)的 方式产生基底距离子模型,使得之后可以直接输入击球力道借由基底距离 子模型输出母球移动的基底距离。
接着介绍碰撞前速度模型,在进行碰撞计算前,必须先知道母球碰撞 前的速度,因此需计算母球在对应的击球力道下初始的速度、初始的角速 度以及母球至碰撞点的移动距离等参数。首先输入在不同击球力道下初始 的速度、初始的角速度、母球至碰撞点的移动距离、碰撞前的速度以及碰 撞前的角速度,再利用类神经网络或是线性回归的方式产生碰撞前速度模 型,使得之后可以直接输入初始的速度、初始的角速度以及母球至碰撞点的移动距离,借由碰撞前速度模型输出母球在碰撞前的速度及角速度。
接着介绍切线偏移模型,母球与子球在进行碰撞时会发生近似完全弹 性碰撞的情况(母球碰撞后会沿切线方向移动),因此根据碰撞前速度、碰 撞前角速度以及母球与子球的夹角即可推知母球及子球碰撞后的速度及角 速度。但母球上的动能除了会转移至子球上之外,还会因为摩擦力的作用, 使得母球移动方向与原定的切线方向产生切线偏移角,需要根据碰撞前速 度、碰撞前角速度以及母球与子球的夹角等参数建构切线偏移模型,以获 得切线偏移角。当然母球也有与球台碰撞的球况发生,如果撞到球台,先 利用入射角等于反射角的原理,计算母球的行进方向,接着再根据碰撞前 速度及碰撞前角速度,对碰撞后的方向进行修正。
接着介绍滚动速度衰减子模型,为了模拟母球以及子球滚动时的真实 情况,需要将滚动时球与桌面摩擦的动能损耗归纳出衰减函数,由于球会 经过多次的滑动或滚动状态的切换,状态切换的次数越多球的速度衰减程 度也会以指数成长。因此,需要计算球在运动中经过多少次的状态切换, 将次数代入衰减函数中即可估算出球的衰减速度。
接着介绍状态切换子模型,经由观察母球的运动状态后可发现,将母 球击出或母球经过碰撞后,母球都会先滑动一段距离再滚动一段距离,而 滑动状态的速度衰减与滚动状态的速度衰减不同,滑动状态的速度衰减会 以线性方式衰减,而滚动状态的速度衰减则会以指数方式衰减。因此可计 算出滑动状态球的移动距离后,利用母球至碰撞点的移动距离与滑动状态 球的移动距离相减即可推知滚动状态球的移动距离。
将基底距离子模型、状态切换子模型、滚动速度衰减子模型、碰撞前 速度模型以及切线偏移模型训练完毕后,便可开始进行母球与子球移动路 径的估算。
请再参考图2,在步骤S220中,根据输入参数利用环境物件估算模型计 算出受控物件的第一移动距离。在一实施例中,利用基底距离子模型、状 态切换子模型、滚动速度衰减子模型可以计算出母球在碰撞前移动的距离。
在步骤S230中,侦测受控物件在第一移动距离内是否与第一环境物件 或第二环境物件发生碰撞。在此实施例中,利用之前计算出的母球在碰撞 前移动的距离以及移动向量,判断在此移动向量中是否在其他环境物件(子 球与球台)的向量发生重迭。
在步骤S240中,如果有发生碰撞,估算受控物件的碰撞后路径,并更 新环境状态。步骤S240的细部流程请参考图3,图3是根据本发明的一些实 施例所绘示的步骤S240的流程图。如图3所示,步骤S240包含以下步骤:
步骤S241:如果发生碰撞,利用碰撞前速度模型计算受控物件碰撞前 的速度;
步骤S242:判断受控物件是否与第一环境物件发生碰撞事件;
步骤S243:如果受控物件与第一环境物件发生碰撞事件,利用切线偏 移模型计算受控物件与第一环境物件碰撞后的角度偏移量;
步骤S244:计算受控物件的第一碰撞后速度以及计算第一环境物件的 第二碰撞后速度;
步骤S245:如果受控物件未与第一环境物件发生碰撞,而是与第二环 境物件发生碰撞事件,计算受控物件与第二环境物件碰撞后的角度偏移量 及碰撞后速度;以及
步骤S246:纪录碰撞事件的发生位置,并根据发生位置、第一碰撞后 速度及第二碰撞后速度更新环境状态。
在步骤S241及步骤S242中,如果发生碰撞,利用碰撞前速度模型计算 受控物件碰撞前的速度,接着判断受控物件是否与第一环境物件发生碰撞 事件。当步骤S230判断是否发生碰撞之后,如果发生碰撞,需要先利用之 前建立好的碰撞前速度模型计算碰撞前母球剩余多少速度及角速度,接着 才进一步判断母球是与第一环境物件或第二环境物件(子球或球台)发生碰 撞。
在步骤S243及步骤S244中,如果受控物件与第一环境物件发生碰撞事 件,利用切线偏移模型计算受控物件与第一环境物件碰撞后的角度偏移量; 接着计算受控物件的第一碰撞后速度以及计算第一环境物件的第二碰撞后 速度。在一实施例中,如果母球与子球发生碰撞,先将母球与子球预设为 弹性碰撞,计算母球与子球碰撞后的角度,再将先前得到的碰撞前母球的 速度与角速度,以及经过弹性碰撞计算后得出的母球碰撞后角度,代入切 线偏移模型中,可以得到修正过的母球碰撞后角度,再分别计算母球与子 球碰撞后的速度与角速度,而子球碰撞后的角度则为弹性碰撞计算出的角 度。
在步骤S245中,如果受控物件未与第一环境物件发生碰撞,而是与第 二环境物件发生碰撞事件,计算受控物件与第二环境物件碰撞后的角度偏 移量及碰撞后速度。在现实中,依据母球撞击至球台会造成球台的陷入程 度、母球的角速度以及摩擦力的强弱等,都会对母球状及球台后的反弹角 有很大的影像。为了简化计算,在本实施例中,如果母球与球台发生碰撞, 将母球与球台的撞击面视为垂直于桌面的平面,因此母球撞击球台后的角度可以经由入射角等于反射角的理论计算得出。
在步骤S246中,纪录碰撞事件的发生位置,并根据发生位置、第一碰 撞后速度及第二碰撞后速度更新环境状态。在一实施例中,会记录母球碰 撞到子球或母球碰撞到球台的位置,接着将子球从原本的位置上移除,并 将碰撞位置、以及母球与子球的撞击后的速度及角速度回传至纪录环境状 态的列表中,成为下次母球与子球运动的参数。而母球与子球在碰撞后的 位置及移动距离,则会从步骤S220开始重新计算,因此当母球被击出后除非是未撞击到子球或球台而停止的情况,其他情况母球或子球直到停止前 都会经过多次的落点预测方法200的计算,因此会具有许多碰撞阶段。
在步骤S250中,如果在第一移动距离内没有发生碰撞,估算受控物件 的停止位置。在一实施例中,如果母球被击出后都未撞击到子球或球台, 母球会因为与球台桌面产生摩擦而逐渐停止,计算出停止位置后,将母球 位置更新并存入纪录环境状态的列表中。如果母球未发生撞击事件而停止, 则表示母球的运动结束,如果没有再输入击球的力道,母球的运动不会开 始。
在另一实施例中,被母球撞击的子球的运动,也可利用落点预测方法 200来估算,将子球被撞击产生的速度及角速度作为输入参数,借着判断被 撞击的子球是否有跟球台或其他子球发生碰撞,重复进行步骤S220~S240的 计算,直到被撞击的子球停止为止。
请参阅图4。图4是根据本发明的一些实施例所绘示的一种游戏决策方 法400的流程图。本发明的一实施例的游戏决策方法400可以用来自动从多 种可能中选择一个最佳的结果,使得在与玩家对战中得到更好的结果。如 图4所示,游戏决策方法400包含以下步骤:
步骤S410:取得环境状态;
步骤S420:决定多个输入参数;
步骤S430:将环境状态及输入参数依序应用至前述的落点预测方法, 得到受控物件的多个停止位置,停止位置分别对应至输入参数的其中之一;
步骤S440:估算停止位置各自的价值;以及
步骤S450:根据估算的停止位置各自的价值,由输入参数中决定最佳 输入参数。
在步骤S410及步骤S420中,取得环境状态,接着决定多个输入参数。 在一实施例中,环境状态包含子球及母球的位置,而在撞球游戏中可以选 择要用多少力气将母球击向子球、球台或某一位置,因此具有多种击球的 可能。
在步骤S430中,将环境状态及输入参数依序应用至前述的落点预测方 法200,得到受控物件的多个停止位置,停止位置分别对应至输入参数的其 中之一。请一并参考图5A及图5B。图5A是根据本发明的一些实施例所绘示 的撞球游戏的示意图,图5B是根据本发明的一些实施例所绘示的撞球游戏 的示意图。如图5A所示,在此实施例中,母球520有3个击球选择分别是可 以撞击子球530a、530b及530c,利用落点预测方法200计算母球520撞击子球530a、530b及530c后的位置,因此会计算出3个不同的母球落点位置。
承上述,在步骤S440及步骤S450中,估算停止位置各自的价值,以及 根据估算的停止位置各自的价值,由输入参数中决定最佳输入参数。在图 5A及图5B的实施例中,母球520撞击子球530a,使得子球530a进洞后,如果 母球520停在原地即可接着撞击子球530b。而如果母球520先撞击子球530b 或子球530c,由于母球520子球530b及530c的距离较远,而使得控制母球520 停止位置的准确度不好,导致母球520最后的停止位置不佳而无法接着打下 一颗球,因此可以利用母球520与子球530a、530b及530c之间的距离,当作 选择击球的标准,当然本发明不以此为限,也可利用撞球的游戏规则一并 当作判断标准。因此球杆510最后移动到要打击子球530a的位置撞击母球 520,可以使得母球520撞击子球530a后,让子球530a入袋并使得母球520停 在原地可以继续打子球530b。
由上述本发明的实施方式可知,主要是改进以往人工智能因运算庞大 而导致计算时间过长的问题,利用将游戏中母球及子球的物理滚动行为, 分成多个可估算的小行为,再将多个小型为个别训练成为训练模型,使得 预测母球及子球的物理滚动行为可以更准确,达到即时回馈的功效。
另外,上述例示包含依序的示范步骤,但所述步骤不必依所显示的顺 序被执行。以不同顺序执行所述步骤皆在本揭示内容的考量范围内。在本 揭示内容的实施例的精神与范围内,可视情况增加、取代、变更顺序及/或 省略所述步骤。
以上所述,仅是本发明的较佳实施例而已,并非对本发明做任何形式 上的限制,虽然本发明已以较佳实施例揭露如上,然而并非用以限定本发 明,任何熟悉本专业的技术人员,在不脱离本发明技术方案范围内,当可 利用上述揭示的技术内容做出些许更动或修饰为等同变化的等效实施例, 但凡是未脱离本发明技术方案的内容,依据本发明的技术实质对以上实施 例所做的任何简单修改、等同变化与修饰,均仍属于本发明技术方案的范围内。

Claims (11)

1.一种落点预测方法,其特征在于,包含:
输入环境状态以及输入参数,该环境状态包含第一环境物件或第二环境物件的位置;
根据该输入参数及该环境状态利用环境物件估算模型计算出受控物件的第一移动距离;
侦测该受控物件在该第一移动距离内是否与该第一环境物件或该第二环境物件发生碰撞;
当发生碰撞,估算该受控物件之一碰撞后路径,并更新该环境状态,根据该碰撞后路径重新利用该环境物件估算模型计算出该受控物件的第二移动距离;以及
当在该第一移动距离内未发生碰撞,估算该受控物件之一停止位置。
2.根据权利要求1所述的落点预测方法,其特征在于,更包含:
如果发生碰撞,利用碰撞前速度模型计算该受控物件碰撞前的速度,并接着判断该受控物件是与该第一环境物件及该第二环境物件的其中之一发生碰撞事件。
3.根据权利要求2所述的落点预测方法,其特征在于,更包含:
如果该受控物件与该第一环境物件发生该碰撞事件,利用切线偏移模型计算该受控物件与该第一环境物件碰撞后的角度偏移量;以及
计算该受控物件的第一碰撞后速度以及计算该第一环境物件的第二碰撞后速度。
4.根据权利要求2所述的落点预测方法,其特征在于,更包含:
如果该受控物件与该第二环境物件发生该碰撞事件,计算该受控物件与该第二环境物件碰撞后的该角度偏移量及碰撞后速度。
5.根据权利要求3所述的落点预测方法,其特征在于,更包含:
纪录该碰撞事件的发生位置,并根据该发生位置、该第一碰撞后速度及该第二碰撞后速度更新该环境状态。
6.一种落点预测***,其特征在于,包含:
处理器;
储存装置,电性连接至该处理器,用以储存环境状态以及输入参数,该环境状态包含第一环境物件或第二环境物件的位置;
其中,该处理器包含:
环境物件估算模块,根据该输入参数及该环境状态以计算出受控物件的第一移动距离;
碰撞侦测模块,与该环境物件估算模块电性连接,用以侦测该受控物件在该第一移动距离内是否与该第一环境物件或该第二环境物件发生碰撞;
碰撞计算模块,与该碰撞侦测模块电性连接,用以计算发生碰撞后该受控物件之一碰撞后路径,并更新该环境状态,接着根据该碰撞后路径重新利用该环境物件估算模型计算出该受控物件的第二移动距离;以及
位置计算模块,与该碰撞侦测模块电性连接,当在该第一移动距离内未发生碰撞时,用以估算该受控物件之一停止位置。
7.根据权利要求6所述的落点预测***,其特征在于,该碰撞计算模块更用以利用碰撞前速度模型计算该受控物件碰撞前的速度,并接着判断该受控物件是与该第一环境物件及该第二环境物件的其中之一发生碰撞事件。
8.根据权利要求7所述的落点预测***,其特征在于,如果该受控物件与该第一环境物件发生该碰撞事件,该碰撞计算模块利用切线偏移模型计算该受控物件与该第一环境物件碰撞后的角度偏移量,以及接着计算该受控物件的第一碰撞后速度以及计算该第一环境物件的第二碰撞后速度。
9.根据权利要求7所述的落点预测***,其特征在于,如果该受控物件与该第二环境物件发生该碰撞事件,该碰撞计算模块会计算该受控物件与该第二环境物件碰撞后的该角度偏移量及碰撞后速度。
10.根据权利要求7所述的落点预测***,其特征在于,该位置计算模块会纪录该碰撞事件的发生位置,并根据该发生位置、该第一碰撞后速度及该第二碰撞后速度更新该环境状态。
11.一种游戏决策方法,其特征在于,包含:
取得环境状态;
决定多个输入参数;
将该环境状态及所述输入参数依序应用至如权利要求1所述的落点预测方法,得到该受控物件的多个停止位置,所述停止位置分别对应至所述输入参数的其中之一;
估算所述停止位置各自之一价值;以及
根据估算的所述停止位置各自的该价值,由所述输入参数中决定最佳输入参数。
CN201810410955.2A 2018-05-02 2018-05-02 落点预测方法、落点预测***及游戏决策方法 Withdrawn CN110433494A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810410955.2A CN110433494A (zh) 2018-05-02 2018-05-02 落点预测方法、落点预测***及游戏决策方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810410955.2A CN110433494A (zh) 2018-05-02 2018-05-02 落点预测方法、落点预测***及游戏决策方法

Publications (1)

Publication Number Publication Date
CN110433494A true CN110433494A (zh) 2019-11-12

Family

ID=68428124

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810410955.2A Withdrawn CN110433494A (zh) 2018-05-02 2018-05-02 落点预测方法、落点预测***及游戏决策方法

Country Status (1)

Country Link
CN (1) CN110433494A (zh)

Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101947385A (zh) * 2010-10-12 2011-01-19 刘铮 在斯诺克运动中获取台球碰撞关系和完整运动轨迹的方法
US20110021256A1 (en) * 2009-07-27 2011-01-27 Obscura Digital, Inc. Automated enhancements for billiards and the like
CN102327697A (zh) * 2011-10-14 2012-01-25 李姣昂 投影式台球训练***及其实现方法
KR20120115819A (ko) * 2011-04-11 2012-10-19 박흥구 온라인 당구게임 제공 방법 및 시스템
CN103143158A (zh) * 2013-03-09 2013-06-12 北京工业大学 一种提高斯诺克台球击中率的方法
CN103389738A (zh) * 2013-06-25 2013-11-13 北京理工大学 一种用于乒乓球机器人预测乒乓球轨迹的方法和装置
CN104117202A (zh) * 2014-07-02 2014-10-29 乔冰 投影式台球击球智能辅助***和方法
CN105396287A (zh) * 2015-12-23 2016-03-16 北京联联看科技有限公司 台球游戏控制方法及***
CN105709417A (zh) * 2014-12-05 2016-06-29 博雅网络游戏开发(深圳)有限公司 桌球游戏中智能对战角色控制***和方法
CN107635627A (zh) * 2016-08-25 2018-01-26 深圳英麦吉科技有限公司 台球击球辅助方法、台球击球辅助***及便携式电子设备
US20180272234A1 (en) * 2017-03-24 2018-09-27 AO Kaspersky Lab System and method of modeling the behavior of game elements during a remote game

Patent Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110021256A1 (en) * 2009-07-27 2011-01-27 Obscura Digital, Inc. Automated enhancements for billiards and the like
CN101947385A (zh) * 2010-10-12 2011-01-19 刘铮 在斯诺克运动中获取台球碰撞关系和完整运动轨迹的方法
KR20120115819A (ko) * 2011-04-11 2012-10-19 박흥구 온라인 당구게임 제공 방법 및 시스템
CN102327697A (zh) * 2011-10-14 2012-01-25 李姣昂 投影式台球训练***及其实现方法
CN103143158A (zh) * 2013-03-09 2013-06-12 北京工业大学 一种提高斯诺克台球击中率的方法
CN103389738A (zh) * 2013-06-25 2013-11-13 北京理工大学 一种用于乒乓球机器人预测乒乓球轨迹的方法和装置
CN104117202A (zh) * 2014-07-02 2014-10-29 乔冰 投影式台球击球智能辅助***和方法
CN105709417A (zh) * 2014-12-05 2016-06-29 博雅网络游戏开发(深圳)有限公司 桌球游戏中智能对战角色控制***和方法
CN105396287A (zh) * 2015-12-23 2016-03-16 北京联联看科技有限公司 台球游戏控制方法及***
CN107635627A (zh) * 2016-08-25 2018-01-26 深圳英麦吉科技有限公司 台球击球辅助方法、台球击球辅助***及便携式电子设备
US20180272234A1 (en) * 2017-03-24 2018-09-27 AO Kaspersky Lab System and method of modeling the behavior of game elements during a remote game

Similar Documents

Publication Publication Date Title
JP5436772B2 (ja) プログラム及びゲーム装置
JP6981719B2 (ja) 仮想テニスシミュレーションシステム、これに用いるセンシング装置及びセンシング方法
JP4412716B2 (ja) ゲーム装置、プログラム及び情報記憶媒体
JP2009142511A (ja) プログラム、情報記憶媒体及びゲーム装置
US9028311B2 (en) Target game incorporating strategy elements
TWI600456B (zh) Battle-type game control methods and programs
US7549929B1 (en) Determining a bowling game score
JP6796118B2 (ja) ゲームプログラム、方法、および情報処理装置
CN109045688B (zh) 游戏交互方法、装置、电子设备及存储介质
CN101991949A (zh) 一种基于计算机的虚拟乒乓球运动控制方法及***
GB2463359A (en) Video game implementing collateral damage
KR20190096572A (ko) 골프 실력 평가 및 향상 시스템 및 방법
CN111389004B (zh) 虚拟角色的控制方法、存储介质及处理器
KR101346211B1 (ko) 사이버-물리 게임
CN113312840B (zh) 一种基于强化学习的羽毛球对弈方法及***
CN105709417B (zh) 桌球游戏中智能对战角色控制***和方法
TWI723801B (zh) 遊戲裝置、遊戲系統、記錄媒體、及控制方法
CN110433494A (zh) 落点预测方法、落点预测***及游戏决策方法
US10441848B1 (en) System for automatic evaluation of martial arts moves
TWI668043B (zh) 落點預測方法、落點預測系統及遊戲決策方法
Smith Running the table: An AI for computer billiards
TWI603768B (zh) 遊戲系統、控制方法及程式
US20180071599A1 (en) System and method for calculating projected impact generated by sports implements and gaming equipment
JP2023111501A (ja) ゲームプログラム、ゲーム処理システム、ゲーム装置、およびゲーム処理方法
JP6917075B2 (ja) ゲームシステム

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
WW01 Invention patent application withdrawn after publication

Application publication date: 20191112

WW01 Invention patent application withdrawn after publication