- 1. 2014 Fighting Game AI CompetitionKaito Yamamoto, Syunsuke
Mizuno, FeiYu Lu, Yuto Nakagawa, Takaya Nibori,Ruck
ThawonmasIntelligent Computer Entertainment LaboratoryRitsumeikan
UniversityJapan2nd member is now with Dimps CorporationCIG 2014,
August 29, 2014
2. ContentsFightingICEContest RulesResultsCIG 2014, August 29,
2014 3. FightingICE First of its kinds and planned to run for many
years AI development, in Java, viable even with a small-size team.
= 1000 .+. 60 FPS 16.67 ms response time Current game state delayed
by 15 frames complete, but imperfect information Two categories 1
Character (1C) 3 Characters (3C)Game resources are from The Rumble
Fish 2 with the courtesy of Dimps Corporation.CIG 2014, August 29,
2014 4. Interactions between the AI/HumanPlayers and the SystemCIG
2014, August 29, 2014 5. Skill System(1/4) Players use attack
actions (skills) and moving actionsto fight A skill has 3
stages:Startup, Active and RecoveryCIG 2014, August 29, 2014 6.
Skill System(2/4) Startup 1st stage Prepare to attack No attack
box, sono damage to giveCIG 2014, August 29, 2014 7. Skill
System(3/4) Active 2nd stage The small red box -- attackbox -- can
be seen on thecharacters arm In these frames, if theopponents
attack hit boxcoincide with this attack box,the opponent will
bedamagedCIG 2014, August 29, 2014 8. Skill System(4/4) Recover 3rd
stage Recover to normalstatus Special frame:cancelable Some skills
can beused duringcancelable framesCIG 2014, August 29, 2014 9.
Feiyu Lu, Kaito Yamamoto, Luis H. Nomura, SyunsukeMizuno, YoungMin
Lee, and Ruck Thawonmas,"Fighting Game Artificial Intelligence
Competition Platform," Proc. of the 2nd IEEE Global Conference
onConsumer Electronics (GCCE 2013), Tokyo, Japan, pp. 320-323, Oct.
1-4, 2013. Hyunsoo Park and Kyung-Joong Kim, "Learning to Play
Fighting Game using Massive Play Data," Proc. of 2014IEEE
Conference on Computational Intelligence and Games (CIG 2014),
Dortmund, Germany, pp. 458-459, August26-29, 2014, Kaito Yamato,
SyunsukeMizuno, Chun Chu and Ruck Thawonmas, "Deduction of
Fighting-GameCountermeasures Using the k-Nearest Neighbor Algorithm
and a Game Simulator," Proc. of 2014 IEEEConference on
Computational Intelligence and Games (CIG 2014), Dortmund, Germany,
pp. 437-441, August26-29, 2014, Yuto Nakagawa, Kaito Yamato, and
Ruck Thawonmas, "Online Adjustment of the AIs Strength in a
FightingGame Using the k-Nearest Neighbor Algorithm and a Game
Simulator," Accepted for presentation at the3nd IEEE Global
Conference on Consumer Electronics (GCCE 2014), Tokyo, Japan, Oct.
7-10, 2014. Kaito Yamato, SyunsukeMizuno, and Ruck Thawonmas,
"Proposal and Evaluation of an Automatic AnalysisMethod using StGA
for Strategic Diversity in Action Games," IPSJ Journal, vol. 55,
no. 11, November 2014. (toappear; in Japanese)CIG 2014, August 29,
2014List of Publications Usingthis Platform 10.
ContentsFightingICEContest RulesResultsCIG 2014, August 29, 2014
11. Contest Rules A game has 3 rounds. Each round has 5-second
ready time and 60-secondfighting time. The characters' position
will be reset when time over,and if it is not already in the third
round, the systemwill start a new round.CIG 2014, August 29, 2014
12. 1C Fighters (Alphabetical order)AI Techniques Members
Affiliation CountryATTeam rule-based strategiesCIG 2014, August 29,
2014Thanarat Jaruenying, PhuripatPrasittipap, Worawat
ChoensawatBangkok University ThailandCodeMonkey dynamic scripting
Kevin Majchrzak TU Dortmund GermanyDragonKing1C opponent
modelingRenan Motta Goulart andGuilherme Albuquerque
PintoUniversidade Federal de Juizde ForaBrazilLittleFuzzyfuzzy
logic for opponentprediction and learningPerry Monschau and Simon
Lucas University of Essex UKPnumaSON_AI rule-based strategies
Yuzuru Iinuma Nagoya University JapanSomJang rule-based
strategiesDong-Hyun Jang, Kyoung-Jun Ahnand Kyung-Joong KimSejong
University KoreaT1c finite state machine Phakhawat Sarakit
TAIST-Tokyo Tech Thailand, JapanThrowLooper rule-based strategies
Thanat Damrongwatanapokin Chulalongkorn university
Thailandthunder_final rule-based strategies Eita Aoki Nagoya
University JapanVS rule-based strategiesKyoung-Jun Ahn and
Kyung-JoongKimSejong University Korea 13. 1C RankingCIG 2014,
August 29, 2014AI RankingCodeMonkey 1VS 2T1c 3LittleFuzzy
4PnumaSON_AI 5thunder_final 6DragonKing1C 7ATteam 8SomJang
9ThrowLooper 10Note: those in red are CIG participants. 14. 3C
Fighters (Alphabetical order)AI Charater Techniques Members
Affiliation CountryATTeam2 ZEN rule-based strategiesCIG 2014,
August 29, 2014Thanarat Jaruenying, PhuripatPrasittipap, Worawat
ChoensawatBangkok University ThailandDragonKing3C GARNET opponent
modelingRenan Motta Goulart andGuilherme Albuquerque
PintoUniversidade Federal deJuiz de ForaBrazilLittleFuzzy ZENfuzzy
logic for opponentprediction and learningPerry Monschau and Simon
Lucas University of Essex UKPasanAI2 GARNET reinforcement learning
Pasan Julsaksrisakul Chulalongkorn University ThailandPnumaSON3C_AI
LUD rule-based strategies Yuzuru Iinuma Nagoya University
JapanSeal_Switch LUD genetic algorithm Komsorn Prammanee
Chulalongkorn University ThailandSejongFighterGARNETrule-based
strategiesHyeong Kim, Yoon-Jee Nam, Yo-Han Chu, and Kyung-Joong
KimSejong University KoreaT3c LUD finite state machine Phakhawat
Sarakit TAIST-Tokyo Tech Thailand, Japan 15. 3C RankingCIG 2014,
August 29, 2014AI Character RankingT3c LUD 1ATteam2 ZEN
2DragonKing3C GARNET 3PnumaSON3C_AI LUD 4PasanAI2 GARNET
5LittleFuzzy ZEN 6SejongFighter GARNET 7Seal_Switch LUD 8Note:
those in red are CIG participants. 16. IEEE Winner of each category
Original (designed by RT) Runner-up and 3rd place AI of each
categoryCIG 2014, August 29, 2014Certificates 17. Criteria
Participate CIG 2014 Top two AIs with the highest average
scores,regardless of their category Winner Prize CodeMonkey (1C,
2119.7 scores) Runner-up Prize VS (1C, 1692.7 scores)CIG 2014,
August 29, 2014Prizes 18. Final Remarks Thank you for your
participation. You are welcome to participate in the
competition.http://www.ice.ci.ritsumei.ac.jp/~ftgaic/ Upcoming
competitions CEC 2015 (to be discussed) CIG 2015 (planned) CIG
2014, August 29, 2014 19. Appendices: AI DetailsCIG 2014, August
29, 2014 20. CIG 2014, August 29, 20141C 21. AT TeamThanarat
JaruenyingPhuripat PrasittipapWorawat ChoensawatSchool of Science
and TechnologyBANGKOK UNIVERSITYCIG 2014, August 29, 2014 22. We
presents a rule-based strategy based on fighting states andactions.
The adaptive decision can be divided into states as follows: Attack
Defense Counter attack For each state, we can divided into two
cases as follows: Far: distance of player over a threshold. Near:
distance of player less than the threshold.AT TeamCIG 2014, August
29, 2014 23. After we determined the state and the case, we used
rule-based todefine the action. The rule-based condition is based
on four condition as follows: Enemys Action Enemys status Our
energy Distance between playersAT TeamCIG 2014, August 29, 2014 24.
Fighting Game AI Competition 2014Code Monkey AIKevin
MajchrzakUndergraduate StudentTU Dortmund, GermanyEmail:
kevin.majchrzak@CIG 2014, August 29, 2014tu-dortmund.de 25. AI
OutlineCode Monkey... ...adapts to enemybehaviour ...learns online
bygenerating scriptson the fly ...loves showing offhis fighting
skills ...adores bananasCIG 2014, August 29, 2014 26. Dynamic
ScriptingReinforcementLearningScriptHuman Feedback after 3
secondsCombatExpert KnowledgeRulebaseOfflineOnline20 updatesa
minuteCIG 2014, August 29, 2014 27. Dynamic Scripting
(details)Rules map a game state to a boolean and anactionGame State
(Boolean, Action)Scripts are pretty much like long
if-then-elsechainsIF Rule1 is satisfiedTHEN execute Rule1ELSE IF
Rule2 is satisfiedThen execute Rule2ELSE execute default actionCIG
2014, August 29, 2014 28. DragonKingDeveloped by: Renan Motta
Goulart, GuilhermeAlbuquerque Pinto.Affiliation: Universidade
Federal de Juiz de Fora,Brazil.Contact:
[email protected],[email protected] 2014, August
29, 2014 29. OutlineLearns how the opponent fights.Predict the
oponent's next move by keepinginformation of his past actions and
the distance whenthey were used.CIG 2014, August 29, 2014 30.
OutlineThe possible attacks that the oponent might use
arediscovered by using the average position and thestandard
deviation of where the oponent attacked.CIG 2014, August 29, 2014
31. AI: Little FuzzyDeveloped By: Perry MonschauAs part of a
University of Essex (UK)Msc ProjectProject Supervisor: Simon
LucasCIG 2014, August 29, 2014 32. Little Fuzzy Outline Fuzzy Logic
System Little Fuzzy uses fuzzy logic to determine movementwith the
help of prediction Prediction System Little Fuzzy attempts to
predict the opponentscurrent position and status to help determine
its nextactions Learning System Little Fuzzy learns successful
moves in given scenarios,and uses them to determine the best next
action, byfinding the most similar scenario it knowsCIG 2014,
August 29, 2014 33. Learning System Uses Success Rate and Damage to
establishvalue of attacks it has learned Uses a Similarity Formula
to match attacks tothe current scenario Uses Priorities, current
battle over olderbattles Scenarios include prior actions, to
learncombined attacksCIG 2014, August 29, 2014 34. Flexibility and
Limitations No hardwired knowledge Could learn newly introduced
moves by itself,simply by fighting No strategy categorisation, just
individualscenarios Opponent skill determines skill of
LittleFuzzy,but perhaps not quick enough LittleFuzzy is not
expected to do well in the 1CcompetitionCIG 2014, August 29, 2014
35. FighTingGameAICompetition FINALNagoya UniversityIINUMA
YuzuruCIG 2014, August 29, 2014 36. Introduction AI Name :
PnumaSON_AI Developers' Name : IINUMA Yuzuru Affiliation : Nagoya
University Country : JapanCIG 2014, August 29, 2014 37. AI's
OutlineCIG 2014, August 29, 2014 38. AIs Outline (When my AI is
down)CIG 2014, August 29, 2014Back JumpPunch INENE MYMYENEMYMY 39.
Fighting Game AISejong UniversityDongHyun JangCIG 2014, August 29,
2014 40. Introduction AI Name : SomJang Advisor KyungJoong
Kim(Professor) KyungJoon Ahn(Technical Support) Developers DongHyun
Jang Affiliation Sejong University, South KoreaCIG 2014, August 29,
2014 41. Outline1. Using Skills2. StrategiesCIG 2014, August 29,
2014 42. Outline - Using Skills STAND_D_DF_FA STAND_D_DF_FC
STAND_D_DB_BB THROW_HIT AIR_UBCIG 2014, August 29, 2014 43. Outline
- Strategies My strategy is simple. Last year, I participated in
same competition. I felt simple is the beststrategies in this
competition. So I make the AI simple. And the major attack skills
are STAND_D_DF_FC andSTAND_D_DB_BB. Because they can give very big
damage toopponent and stun. So I use them. Finally, AI has special
skill. This is my little secret. This AI is almost identical to
last years artificial intelligenceprogram, SejongAI.CIG 2014,
August 29, 2014 44. Fighting Game AI Competition 2014TMr.Phakhawat
SarakitMaster Degree StudentThailand Advanced Institute of Science
and Technology and Tokyo Instituteof Technology (TAIST-Tokyo
Tech)Information and Communication Technology for Embedded Systems
: ICTESE-mail : [email protected] 2014, August 29, 2014 45.
AIs OutlineIn first category I use same technique from last year I
just modify somecondition for counter attack opponentThis is my
technique :1.Measure-Sense-Action cycle(MSA Cycle)2.Fininte-State
Machine(FSM)CIG 2014, August 29, 2014 46. Measure-Sense-Action
cycle(MSA Cycle)Measure SenseActionPicture 1.Measure-Sense-Action
cycle(MSA Cycle)I measure distance X between opponent and my AI see
enemy action ,thingabout it then find the best way to fight back
the enemy.CIG 2014, August 29, 2014 47. Fininte-State
Machine(FSM)Actually this technique it not different MSA Cycle I
draw possible state in mynotebook and then create every state by
using if-else conditionStartState 1 State 2State
nTransition1Transition3Transition2Transition4Picture 2Fininte-State
Machine(FSM)CIG 2014, August 29, 2014 48. Future Work I plan to use
machine learning technique , bayes netwrok or anytechnique about
possibility.CIG 2014, August 29, 2014 49. AIs name
ThrowLooperDeveloper Thanat DamrongwatanapokinFaculty of
Engineering Chulalongkorn universityCIG 2014, August 29, 2014 50.
IdeaThrowing is not a powerful move but anunblockable one as we
,human, cant chain iton the fastest possible hit frame. It post
noreal threat but it possible with somethingmore precise like
machine, AI.CIG 2014, August 29, 2014 51. AI movesAs sliding is one
of the quickest, powerful,knock down approaching moves. Many of
thedeveloper use it as an approach at the startingof the round. The
first move of this AI is tomove forward a bit and intentionally
take andblock the slide. Then , grab the opponent andchain the
throw.CIG 2014, August 29, 2014 52. AI movesThe second state of the
AI is that theopponent does not use the slide as anapproach, then
the AI will use the slide andafter opponent is downed. AI will walk
a littleclosing in the range and chain the throw.CIG 2014, August
29, 2014 53. Resetting Condition If the opponent break or somehow
out of thethrowing chain. It will be back to secondmove. If
opponent using slide or other knock downapproaches. It will stand
back up with guard.Then, if it a slide the throw will be chained.
Ifnot it will move to second move.*second move = slide approachCIG
2014, August 29, 2014 54. Thunder_finalIntroductionAOKI EitaNagoya
UniversityCIG 2014, August 29, 2014 55. Introduction AI
Namethunder_final DeveloperAOKI Eita AffiliationNagoya University
Record of AwardCodeVS 3.0the 5th prizeSamurAI Coding2013the 8th
prizeCIG 2014, August 29, 2014 56. AIs Outline Make use of
RemainingFrameAttack and Down EnemyAttack Enemy just before
RecoveryAttack Enemy just before RecoveryInfinite Combo!CIG 2014,
August 29, 2014 57. VSSupervisor Kim Kyung JoongDeveloper - Ahn
Kyoung JunCIG 2014, August 29, 2014 58. AttackProjectile
attackDirect attackMoving attack4 3 2 1DistanceCIG 2014, August 29,
2014 59. DefenseAttackUDefenseCIG 2014, August 29, 2014 60. CIG
2014, August 29, 20143C 61. AT TeamThanarat JaruenyingPhuripat
PrasittipapWorawat ChoensawatSchool of Science and
TechnologyBANGKOK UNIVERSITYCIG 2014, August 29, 2014 62. We used
ZEN character for our AI. We presents a rule-based strategy based
on fighting states andactions. The adaptive decision can be divided
into states as follows: Defense Attack Counter attack For each
state, we can divided into two cases as follows: Far: distance of
player over a threshold. Near: distance of player less than the
threshold.AT TeamCIG 2014, August 29, 2014 63. In our
defensealgorithm, we onlyfocus on escaping thefireball. We used
forward jumpwhen the distantbetween players is overa threshold. If
the distant is belowthe threshold a Jumpcommand is
used.DefenseOpponent
skilldetectionFireball?YesgetDistant()>=thresholeJumpYesForward
jumpNoAttackAlgorithmNoCIG 2014, August 29, 2014 64. We use
rule-based to determine a attack action.(1) If our energy over 300,
we will activate a ultimate fireball.(2) If the distant between
players is over a threshold, we used theskill AIR_DB in order to
get closer to the opponent withoutgetting too close.(3) If the
distant between players is below the threshold, we usedsimple
search algorithm to find which skill can reach theopponent hit
area.(4) If none of the skills qualify rule number 3, we used the
skillSTAND_FB as the default skill.AttackCIG 2014, August 29, 2014
65. The skill search condition is based on four condition as
follows: Position of opponent Attack area of desire skill Our
energyAT TeamCIG 2014, August 29, 2014 66. DragonKingDeveloped by:
Renan Motta Goulart, GuilhermeAlbuquerque Pinto.Affiliation:
Universidade Federal de Juiz de Fora,Brazil.Contact:
[email protected],[email protected] 2014, August
29, 2014 67. OutlineLearns how the opponent fights.Predict the
oponent's next move by keepinginformation of his past actions and
the distance whenthey were used.CIG 2014, August 29, 2014 68.
OutlineThe possible attacks that the oponent might use
arediscovered by using the average position and thestandard
deviation of where the oponent attacked.CIG 2014, August 29, 2014
69. AI: Little FuzzyDeveloped By: Perry MonschauAs part of a
University of Essex (UK)Msc ProjectProject Supervisor: Simon
LucasCIG 2014, August 29, 2014 70. Little Fuzzy Outline Fuzzy Logic
System Little Fuzzy uses fuzzy logic to determine movementwith the
help of prediction Prediction System Little Fuzzy attempts to
predict the opponentscurrent position and status to help determine
its nextactions Learning System Little Fuzzy learns successful
moves in given scenarios,and uses them to determine the best next
action, byfinding the most similar scenario it knowsCIG 2014,
August 29, 2014 71. Learning System Uses Success Rate and Damage to
establishvalue of attacks it has learned Uses a Similarity Formula
to match attacks tothe current scenario Uses Priorities, current
battle over olderbattles Scenarios include prior actions, to
learncombined attacksCIG 2014, August 29, 2014 72. Flexibility and
Limitations No hardwired knowledge Could learn newly introduced
moves by itself,simply by fighting No strategy categorisation, just
individualscenarios Opponent skill determines skill of
LittleFuzzy,but perhaps not quick enough LittleFuzzy is not
expected to do well in the 1CcompetitionCIG 2014, August 29, 2014
73. PasanAI2Pasan JulsaksrisakulDepartment of Computer
EngineeringChulalongkornCIG 2014, August 29, 2014 74. AI's Outline
Use Reinforcement Learning Every state of the game and the action
willcombine to create a state-action pair. These pairs will have a
value, in which the AIwill try to find the correct value for
eachstate-action pair The AI will fight against RandomAI and usethe
result of each fight to adjust its value.CIG 2014, August 29, 2014
75. AI's Outline Use Reinforcement Learning(cont.) After finding
the value for each state-actionpair, the AI will be able to
determine the bestaction for each state i.e. the state-action
pairthat has the highest value for that particularstate.CIG 2014,
August 29, 2014 76. Defining state Each state of the game will
containfollowing information Distance between each character(9
levels) States of each character(stand, crouch, etc.) Projectiles
present or not Energy(4 levels)CIG 2014, August 29, 2014 77.
FighTingGameAICompetition FINALNagoya UniversityIINUMA YuzuruCIG
2014, August 29, 2014 78. Introduction AI Name : PnumaSON3C_AI
Character : LUD Developers' Name : IINUMA Yuzuru Affiliation :
Nagoya University Country : JapanCIG 2014, August 29, 2014 79. AI's
OutlineCIG 2014, August 29, 2014 80. AIs Outline (When my AI is
down)Back JumpKick and CloseCIG 2014, August 29, 2014ENE MYMYENEMY
81. Seal_SwitchDeveloper : Komsorn PrammaneeChulalongkorn
UniversityEmail : [email protected] 2014, August 29, 2014 82.
Seal_Switch AIs Outline Use genetic algorithm. Gene is a list of
input keyto use at any state. State calculate from frame data.
Fitness function is score vs other AI. if I use AI X as fitness
function, my AI will learn tocounter Xs Attack style.CIG 2014,
August 29, 2014 83. Seal_Switch AIs Outline 1 AI cant counter all
style. Make more AI (by change fitness functions AI)and let them
switch. When my character take damage more thanthreshold, it will
change style. When my character do damage more thanthreshold, reset
the damage taken and increasethe threshold.CIG 2014, August 29,
2014 84. Fighting Game AI CompetitionSejongFighterDept. of Computer
Engineering, Sejong UniversityCIG 2014, August 29, 2014 85. 1.
IntroductionAI Name : SejongFighterCharacter : GARNETAdvisor-
Kyung-Joong KimDevelopers Name- Hyeong Kim- Yoon-Jee Nam- Yo-Han
ChuAffiliation- Dept. of Computer Engineering, Sejong UniversityCIG
2014, August 29, 2014 86. 2.AIs Outline(1) Movement1) To reduce the
distance between two characters FOR_JUMPOpponents character ZEN
GARNET LUDThe distancebetween two charactersMore than 280 More than
280 More than 3002) For attacking enemyIf the character is facing
to the right inputKey.RIf the character is facing to the left
inputKey.LCIG 2014, August 29, 2014 87. (2) attack- CROUCH_B &
STAND_D_DF_FC (main attack skill)Energy Under 300 More than
300skillsContinuous moving attack skillAttack & Moving towards
enemy CROUCH_B & inputKey.R or inputKey.LAttack by
usingSTAND_D_DF_FCand get enemyknock down!CIG 2014, August 29, 2014
88. - STAND_D_DF_FA or STAND_D_DF_FBCondition :- The distance
between two character is more than 300- Energy is more than 60state
air stand, crouch, and downAttack skill STAND_D_DF_FA
STAND_D_DF_FBEnergy ballSTAND_D_DF_FBEnergy ballEnergy ballEnemy is
on airCIG 2014, August 29, 2014 89. CIG 2014, August 29,
2014Fighting Game AI Competition 2014TMr.Phakhawat SarakitMaster
Degree StudentThailand Advanced Institute of Science and Technology
and TokyoInstituteof Technology (TAIST-Tokyo Tech)Information and
Communication Technology for Embedded Systems :ICTESE-mail :
[email protected] 90. AIs OutlineI use same technique from
first category in this third category it havesomething change that
is some skill need energy for use I mustmonitoring energy and
control energy flowThis is my technique :1.Measure-Sense-Action
cycle(MSA Cycle)2.Fininte-State Machine(FSM)CIG 2014, August 29,
2014 91. Measure-Sense-Action
cycle(MSACycle)MeasureSenseActionPicture 1.Measure-Sense-Action
cycle(MSA Cycle)I measure distance X between opponent and my AI see
enemy action,thing about it then find the best way to fight back
the enemy.CIG 2014, August 29, 2014 92. Fininte-State
Machine(FSM)Actually this technique it not different MSA Cycle I
draw possible state inmy notebook and then create every state by
using if-else conditionStartState 1 State 2State
nTransition1Transition3Transition2Transition4Picture
2Fininte-StateMachine(FSM)CIG 2014, August 29, 2014 93. Future Work
I plan to use machine learning technique , bayes netwrok or
anytechnique about possibility.CIG 2014, August 29, 2014 94. CIG
2014, August 29, 2014That's All Folks!