基于马尔科夫模型的乒乓球技战术分析系统

2015-03-16 09:22王鹏
电脑知识与技术 2015年1期
关键词:数据采集乒乓球预测

王鹏

摘要:传统乒乓球技战术分析系统多是基于数据统计,将使用的技战术类型和频率作为重要的分析结果,缺少进一步的分析。文章开发了一个以马尔科夫模型为基础的乒乓球技战术分析系统,包括用户登录、数据采集和马尔科夫分析三个模块。数据采集综合采集不同选手的比赛、获取全面数据,分析出具有普适性的原则和建议。马尔科夫分析模块,以状态转换和状态收敛为基础预测比赛胜率。文章利用马尔科夫模型作为分析模型,为乒乓球爱好者们提供乒乓球运动中的基本战术建议。

关键词: 马尔科夫模型; 分析系统; 乒乓球; 数据采集; 预测

中图分类号:TP311 文献标识码:A 文章编号:1009-3044(2015)01-0078-03

A Table Tennis Tactic Analysis System Based on Markov Chain Model

WANG Peng

(Department of Electronic and Information Engineering, Tongji University, Shanghai 201804, China)

Abstract: The traditional table tennis analysis system is mostly based on the technique statistics and the system mainly outcomes the technique types and using frequency. They usually have no further analysis. This paper develops a table tennis analysis system based on the Markov Chain model. It includes log in module, data collecting module and Markov module. The system collects data from different people and different matches, which makes the data more comprehensive, and then analyzes the data to get some general advice and principle. Markov module predicts the match result based on the state transition and state convergence. This paper uses the Markov chain model as the analysis model and provides some basic strategy advice for the table tennis fans.

Key words: markov chain; analysis system; table tennis tactic; data collecting; prediction

乒乓球是中国民间最普及的体育运动之一,中国的乒乓球竞技水平常年处于全世界最高的地位。随着计算机应用和理论研究的不断深入,各种利用计算机的分析方法应运而生,包括最初期简单使用计算机作为数据统计和存储工具以及之后的利用数据挖掘和分析技术等等。在几乎所有的应用场合里,利用技战术分析系统开展的分析工作都是作为运动员比赛的重要战术参考而出现。比如各种技战术的分析系统,都是依托各种计算机理论而进行的智能化分析。

然而计算机的应用不应该只照顾专业性的人员,更应该兼顾提高普通群众的能力和技巧。作为普通的群眾,在乒乓球的运动中可能不会兼顾非常专业的知识,他们关心的主要是使用怎样的技巧能够提高自己运动过程中的得分率,这种知识不需要指定特定的对手,不需要非常多的精确数据,要的只是大概的原则和方法。

面对普通乒乓球爱好者,该文开发了一套以马尔科夫模型为基础的技战术分析系统并利用系统找到一些通用型的技战术原则和方法。首先本文选择了一个合适的模型对乒乓球对战过程进行建模。该文选择了马尔科夫模型进行乒乓球对战过程的模拟。德国学者拉姆斯在1988年提出的球类运动的马尔科夫建模理论是目前应用比较多的一种分析球类运动的思想,它将一场比赛的进行模拟成为一个马尔科夫链模型中的状态转移序列,一个技战术动作是马尔科夫模型中的一个状态,对战双方轮流使用技战术构成了一个马尔科夫链模型[1]。其次,该文意在寻找一些具有普适性的乒乓球对战的原则和方法,因此数据的采集不能针对某一个人,数据的采集应该涉及到各种不同技战术特点的选手,这样采集的数据才具有普适性,对于普通的乒乓球爱好者才具有参考的价值。最后,在合理的数据和马尔科夫模型的基础上,通过预测比赛胜率和控制变量的方法,寻找到影响胜率最大的一些技战术原则,作为本文的结论。

1 马尔科夫建模

1.1 马尔科夫基础

设[{X(t),t∈T}]是一个随机过程,t表示时间。[X(ti)]表示的是随机过程在时间[ti]时候的状态。对于所有的时刻[t],所有的可能[X(t)]的值,[{X1,X2,X3,...Xn}]组成了这个随机过程状态空间,n表示状态空间的数目。

对于一个离散随机过程,表示为[{X(t0),X(t1),X(t2)...X(tn)}],[ti]表示时刻,如果某一时刻[tn+1]的状态的概率分布只和它前一时刻的状态有关,即:

[P(Xn+1=x|X0,X1,...Xn)=P(Xn+1=x|Xn)] (1)

那么,这是一个满足马尔科夫性质的随机过程。[{X(ti)}]叫作马尔科夫模型的状态空间。

使用状态之间转移的概率矩阵来描述马尔科夫状态之间的变化关系。马尔科夫状态转移概率矩阵描述了某一个状态向其他所有状态转移的概率分布情况。又根据马尔科夫模型某一时刻的状态只和前一时刻的状态有关系,通过马尔科夫的状态转移矩阵就可以描述整个马尔科夫过程的状态变化。

1.2 马尔科夫模型预测胜率

乒乓球的模拟中,一次的击球动作被作为马尔科夫模型的一个状态,一个回个的比赛组成了一个马尔科夫链。

马尔科夫具有可收敛的性质,收敛状态只会向自身进行转移。在乒乓球比赛的模拟过程中将得分状态定义为马尔科夫模型的收敛状态,根据本方得分还是对手得分,收敛状态一共有两个,收敛状态表示了一个马尔科夫过程的结束,也就是一个回合的乒乓球比赛的结束。

对于一个马尔科夫模型,初始化向量表示了开始时候各个状态出现的概率。一个马尔科夫过程从一个初始化状态开始按照概率转移矩阵的规律进行转移,最终收敛于一个收敛状态。使用初始化向量与状态转移概率矩阵不断相乘的方法,可以不断的模拟马尔科夫的状态转移,状态最终都将收敛于收敛状态。当具有多个不同的收敛状态的时候,根据初始化向量和状态转移矩阵可以求出每个收敛状态的概率。

在乒乓球比赛中,初始化向量通常表示成为双方均等发球的形式,状态转移矩阵描述了一场比赛所有回合的中的状态转移情况,两者相乘可以得到通过马尔科夫模型预测的双方胜率。

2 数据分析方法

在乒乓球比赛中,状态转移矩阵通常代表了一定程度上的战术理论。例如,分析对方“搓球”技术的转移状态分布,如表1所示。

表1 搓球技术的状态转移向量

[\&搓球\&弧圈球\&挑打\&进攻\&搓球\&40%\&20%\&25%\&15%\&]

可以发现,对于“搓球”动作的转移状态分布,“搓球”的比例最高为40%,这也就是说,如果对手采用搓球动作,那么有很高的比例本方也采用搓球战术进行回应。这就是一种战术体现。

由于马尔科夫模型在状态转移矩阵和初始化向量的基础上可以预测一场比赛的胜率,那么通过适当改变状态转移矩阵的某些概率值,就可在一定程度上改变本方的战术设置,然后通过相同的方法进行胜率的预测就可以评价当前战术改变的效果如何。这就是本文使用马尔科夫模型分析战术的基础。

对于运动员来说,针对不同的比赛对手需要分析不同的数据,因为不同的对手通常有不同的战术特点,在相应的特定数据的技术上再来分析每一个比赛战术的效率。而本文想要通过弱化对手这个概念,将所有的球员的比赛信息进行统一的分析和整合,从而得出对普通乒乓球爱好者具有普适性的原则和建议。

3 数据采集和马尔科夫模块

3.1 数据采集模块

数据采集的方法采用的是人工观察比赛视频录像,根据乒乓球比赛的视频录像,人工判断队员采取的技术动作和下一个技术动作,将这些信息录入到数据库中。

由于马尔科夫模型的基础在于状态的转移,因次在数据表的设计中考虑到数据读取的效率问题,同时添加了当前技术动作和下一轮技术动作两个属性,这样的表设计极大的提高了后面步骤中生成状态转移概率矩阵的效率。

本次实验采集了30场不同的比赛作为数据输入,以保证了数据的综合性。

3.2 马尔科夫模块

本文采用乒乓球比赛中使用的技术动作作为对乒乓球比赛进行马尔科夫建模的对象。乒乓球比赛的技术是影响比赛结果和走势最关键的因素,该文一共采取11个技战术动作来描述一场乒乓球比赛中的技术选择,分别是弧圈球、快攻、扣杀、挑打、劈长、摆短、挡球、削球、吊球、放高球和其他动作。每一轮的比赛以发球状态开始,经历以上11个状态之间的互相转换,以得分或者失分作为结束。

根据数据库中的数据,生成状态转移矩陣。

由马尔科夫模型状态转移的可收敛的性质和比赛初始状态向量,通过迭代计算求出本方的获胜概率。

计算每两个状态之间转移的概率抖动,抖动公式如下[3]:

[△(p)=C+B*4*p*(1-p)] (2)

根据经验值,C=1,B=5。

对于任意的两个状态之间的转移概率进行抖动,然后根据转移矩阵每行概率值之和是1

的特性进行相应的概率变化调整。概率调整公式如下:

[△(pi)=-pi/(1-p)*△(p)] (3)

处理结束之后,从新计算本方获胜概率,得到概率提升差值并记录[3]。

在每两个状态之间都进行了概率抖动和分析之后,选择对胜率提升最大的五个状态转移过程,作为对于普通的乒乓球爱好者提供的原则和建议。也就是只要在日常的比赛中对这五个状态之间的转移多加利用,就可以在一定程度上提高比赛获胜的概率。

4 实验结论

根据对30场比赛的数据进行输入和以上的马尔科夫分析发现以下的五种战略是最有利用提高胜率的战术:

表2 实验结论

[对手技术\&采用的回应技术\&提高胜率百分比\&挡球\&进攻\&3.508\&摆短\&摆短\&3.150\&挡球\&弧圈球\&3.071\&摆短\&劈长\&2.796\&摆短\&挑打\&2.437\&]

以上表格可以看出,最有效的提高胜率的方法就是对于对手的挡球采取进攻的技术回应,提高这种战略在实验中可以提高3.508%的胜率。其次是对于对手的摆短技术采用摆短回应,可以提高3.150%的胜率。后面的三位分别是挡球-弧圈球、摆短-劈长和摆短-挑打,分别可以提升3.071%、2.796%和2.437%的胜率。

除了上述的基本结论以外,还可以发现对手的挡球和摆短技术是最容易操作的技术,也就是说如果如果对手采用更多的挡球和摆短技术可能意味着本方有更多的机会去提高自己的胜率。

5 总结

乒乓球比賽中的技战术分析对于选手非常重要,传统的方法往往针对某一个具体的选手进行相应的分析,这对于提升专业运动员的战绩很有效。

普通的乒乓爱好者,也希望可以从比赛的技战术分析中得到一些具有普适性的技战术原则和建议用来提升自己的胜率,该文开发了基于马尔科夫模型的系统。通过分析实际比赛中的数据情况,通过马尔科夫模型预测比赛胜率,分析得到了五条最有效的提升比赛胜率的一般性建议,分别是提升对对手摆短技术的摆短、劈长和挑打回应以及提升对对手挡球技术的进攻和弧圈球技术回应。

参考文献:

[1] Mark Pfeiffer, Hui Zhang, Andreas Hohmann. A Markov Chain Model of Elite Table Tennis Competition[J]. International Journal of Sports Science and Coaching, 2010, 5 (2): 205-222.

[2] 赵会群, 孙晶, 花勇民, 等. 数据挖掘技术在体育比赛技战术分析中的应用研究[J]. 北京体育大学学报, 2008, 31(5): 712-715.

[3] 张辉, 霍赫曼·安德烈亚斯. 球类比赛数学模拟竞技诊断的理论与实践—以乒乓球比赛分析为例[J]. 体育科学, 2005, 25(8): 38-44.

[4] 虞丽娟, 张辉, 凌培亮. 乒乓球比赛技战术分析的系统研究与应用[J]. 上海体育学院学报, 2008, 32(6): 39-43

[5] 祝玮东. 当代体育研究中数据挖掘技术的应用[J]. 南京体育学院学报, 2010, 9(1): 132-134.

[6] 赵养清, 虞丽娟, 张辉. 序列模式挖掘在乒乓球比赛技战术分析中的应用[J]. 上海体育学院学报, 2008, 32(2): 83-85.

[7] 红霞.基于关联规则的数据挖掘算法研究[J].数据库及信息管理, 2007(3): 593-609.

[8] Simmons J. A probabilistic model of squash: strategies and applications[J]. Applied Statistics, 1989: 95-110

猜你喜欢
数据采集乒乓球预测
无可预测
乒乓球悬浮术
选修2-2期中考试预测卷(A卷)
选修2-2期中考试预测卷(B卷)
跳舞的乒乓球
乒乓球瘪了怎么办
靠拢的乒乓球
不必预测未来,只需把握现在
基于广播模式的数据实时采集与处理系统
通用Web表单数据采集系统的设计与实现