Nothing Special   »   [go: up one dir, main page]

AI and GameDevelopment

Download as pdf or txt
Download as pdf or txt
You are on page 1of 9

See discussions, stats, and author profiles for this publication at: https://www.researchgate.

net/publication/330290637

Artificial Intelligence and Game Development

Article · January 2019

CITATIONS READS

2 3,828

1 author:

Hemn Mela Karim Barznji ‫ﻫ ﻤﻦ ﻣ ﻻ ﻛ رﯾﻢ ﺑ رزەﻧﺠﻰ‬


Sulaimani Polytechnic University
13 PUBLICATIONS   2 CITATIONS   

SEE PROFILE

Some of the authors of this publication are also working on these related projects:

Internet and search techniques View project

All content following this page was uploaded by Hemn Mela Karim Barznji ‫ ﻫ ﻤﻦ ﻣ ﻻ ﻛ رﯾﻢ ﺑ رزەﻧﺠﻰ‬on 10 January 2019.

The user has requested enhancement of the downloaded file.


Article Narrative Review

Artificial Intelligence and Game Development


Hemn mela Karim Barznji
Computer Science

sulaimani polytechnic university

hemnbarznji82@gmail.com

Abstract Expert systems have had many well-known


successes both in the academic and commercial
The most important case in artificial intelligence (AI) world. They do, however, suffer from the serious
is AI development for all types of games, especially drawback of having to create a KB that can cover
for Game-AI. A numbering of changes are occurring all possible cases in advance. The problem with
in computer game production: continuous online creating a KB is that the amount of knowledge
games, digital division of gates and stands, social and
required to solve even simple problems can be
mobile games. Game AI agents should occur as
"maker" able for managing a long-running group of enormous. Creating the KB can therefore be time-
live games, their player communities, and real-world consuming, expensive, and error-prone. This has
context. led to the criticism that expert systems are brittle
and only applicable to so-called “toy problems” [1]
In this article narrative review, I am compared and
summarized the all relation and Chronological Artificial intelligence is about making computers
processing between AI and game development, in able to perform the thinking tasks that humans and
generally comparisons in design stage and animals are capable of [2]. According to Mr. Luger
construction step. The objective in this work presents
(2002), artificial intelligence (AI) may be defined
the roles of AI in game production and advancing
as the branch of computer science that is concerned
artificially, especially intelligent agent game. The
methods in intelligent agent games are all algorithms with the automation of intelligent behavior. On the
and techniques but the first matter with teaching basis of his definition, AI is a part of computer
artificial intelligence (AI) for games is that numerous science and must be based on sound theoretical and
AI algorithms work in notion, but have production applied principles of that field [3].
consequences in terms of speed or memory or
performance when really applied in a game. In Currently, AI has been applied widely and it also
Conclusion, The main function of Artificial has been one of the important components in game
Intelligence (AI) in games production is winning industry. Mr. Lowenstein (5th February 2003)
importance and often affects the success or failure of considers: Artificial intelligence – a central part of
a game. advanced game design – is now so advanced that
Key words: Artificial Intelligence, Computer Game, characters in the games have their own
Game, Game Programming and Intelligent Agent independent, autonomous personalities that players
interact with. According to the think of serious
Introduction to AI games ‘utilize game designs, technologies, and
development skills in new series of policy
Many of the potential capabilities of an NPC’s education, exploration, management and so on’
controller are made possible thanks to the academic (The Serious Games Initiative), AI is also
field of AI. AI began as a research field in the significance to be analyzed, evaluated, compared
1940s. There were some early successes and this and contrasted in mobile phone area [4].
led to great optimism about how quickly computers
could become as intelligent as humans. The use of Artificial Intelligence (AI) has a long
Researchers, however, soon realized that many AI tradition in game applications [5] [6]. This is likely
problems were much harder than they first due to the fact that problem definitions of games
appeared. In the 1980s expert systems emerged as are often of high variability and scalability.
knowledge based approach to solving AI problems. Furthermore, the problems are processed in a
The idea behind an expert system is that the restricted domain and the results are generally easy
knowledge of human experts is encoded into a to evaluate. Not only has AI found its way into
Knowledge Base (KB). The KB can then be used to computer games, the way it is being incorporated in
answer questions and solve problems. games has becomes different over the years too.
Traditionally, AI was always left till the last stage
in a game’s development cycle as most
programmers know that it is almost impossible to entertainment. Namely, playing games is a problem
develop game AI until one knows how the game is solving activity. In this same way, serious games
going to be played. As the use of AI in games are solutions to problems [14].
matures, more time and energy were spent on
developing AI system. This project involves the The term “game AI” is sometimes used to
study of existing use of AI in games, the concepts distinguish AI used in computer games from
behind them and how they are applied into games academic AI. In particular, AI used in computer
[7] [8]. games does not have to be general purpose. The
goal is not (necessarily) to advance human
Since 2003, the Rochester Institute of Technology understanding by writing a technical paper [15].
(RIT) has had a course on Artificial Intelligence for
Games, commonly called the Game AI course. This A- Game AI Objectives
course covers a variety of traditional AI techniques
Accepting to Game AI objectives at achieving
from a game-centric perspective and is heavily
seven goals in order to deliver an entertaining game
domain specific. The use of a specific domain helps
for the user:
to narrow the very broad focus typical in many AI.
Other courses have used this technique to narrow 1- No clear cheating: Game AI has to be
the focus of AI as well as to help motivate students. active without deceit.
One example is a course on using Robocode for 2- No predicting behavior: Game AI
teaching Artificial Intelligence [9]. There is a behavior should not be predictable by the
tendency to have students solve toy problems from user.
scratch in these courses as real world problems 3- No obvious inferior behavior: Game AI
tend to be too difficult to tackle over the duration should not exhibit obvious inferior
of a course [10]. behavior against the user, so that it cannot
defeated easily by the user.
The Games and Game AI
4- Use of the environment: Game AI has to
Over the past several years the game industry has exploit in a smart way the characteristics
undergone a series of major changes. The of the game environment.
increasing prominence of persistent online games, 5- Self-correction: Game AI should be
digital distribution platforms and portals, mobile capable of correcting its behavior in order
and social games, and the emergence of new to avoid repeating mistakes.
business models have all changed fundamental 6- Creativity: Game AI should be capable of
aspects of making and playing games [11] generating novel solutions to unforeseen
game circumstances.
Of the many ways to define a game, Salen and 7- Human-like behavior: The behavior
Zimmerman make the following useful exhibited by game AI should be
observation: A game is a system in which players equivalent in complexity to the human
engage in an artificial conflict, defined by rules, behavior.[16,17,18]
which result in a quantifiable outcome [12]. This B- Game AI Developers and Players
definition was condensed from the findings of
many prior studies, most of which identified the Developers increasingly focus on the live operation
following key elements: of a game, rather than creating a boxed and
finalized product. Players are more diverse, have
1- rules access to games in more places and at more times,
2- play and produce more data and content for developers
3- Outcome [13]. to leverage than ever before.
But many people may say all with one voice: Across these changes four forces have come to the
‘ENTERTAINMENT!’ However, in the first day of fore:
GDC (Game Developers Conference) 2004, Mr.
Sawyer brings a new concept to attendees: ‘Serious 1- Games and cross-game play is increasingly
Game’, which is moving beyond the mainstream persistent and presenting longer-term experiences
gaming and entertainment market and into a new
2-Game developers are starting to see their game
sector of games that educate and train.
titles as an ecosystem wherein players may move
According to Mr. Sawyer (2004), as game from game to game
developers, they solve the social problem of

AI and Game Development – Hemn mela Karim Barznji 2


3- Player communities and social gameplay have between users and the NPCs and other aspects of a
gained prominence game or virtual world. [21], [22]

4- Developers and players have a growing interest Second: AI as Designer


in coupling the real world and virtual world(s)
The second role of Game AI is to mediate between
Some of these forces have been around for a the human designer (or developer) and the human-
number of years, while others are just beginning to computer system comprised of game and player. In
emerge. The consequence of these forces is a our metaphor, game designers are responsible for
profound opportunity for: building and defining a game, analyzing how
players interact with the game, and iteratively
A- Artificial Intelligence (AI). refining a game to achieve a design vision. This
B- Computational Intelligence (CI). paradigm for artificial intelligence is often referred
C- Machine Learning (ML). to as Procedural Content Generation (PCG)—
They are in games (collectively referred to as algorithms and representations for generating any
Game AI) to play an even greater role in the and all components of games. [23], [24]
development of computer games and the delivery Third: AI as Producer
of engaging real-time experiences to players. [19]
The third role of Game AI uses a metaphor of AI as
C- Game AI Focuses game producer. In our metaphor, producers
concern themselves with the entire set of games
Game AI was initially about supporting the
and game content being made by a company, along
interaction between player and the game itself.
with related aspects of managing player
Recently there has been a push for procedural
communities. AI Producers mandate a shift from
content generation as a means to support and
single player experiences within a closed game to
augment the game developer on a game by game
long-term player experiences within an open game,
basis.
understanding a player across multiple games in an
Game AI focused on how to use these sources of ecosystem, and understanding how multiple players
data to improve game development practices and to interact as an in-game and out-of-game community.
deliver more engaging experiences. [20] AI Producers extend many methods of AI
designers, driving a shift to model and adapt games
D- Game AI Roles that distinguish characters (in-game avatars or
personas) from players (agents manipulating those
First: AI as Actor
characters). [25]
Historically, the earliest uses of artificial
The Main Roles of AI in Game Development
intelligence in computer games were to mediate
between users and the game. AI served the role of Artificial intelligence certainly can benefit from a
an artificial human opponent or playmate, enabling game engine that can be easily used or modified.
play without requiring other people or filling roles Clarke and Noriega [M] are working on a war
humans would be loathe filling in a game. strategy game with hooks for the addition of A.I.
Compared to non- Game AI, the intelligence built modules. [26], [27]
into games places a greater emphasis on creating
engaging and entertaining experiences for users, A- Path Finding
rather than maximizing a utility function such as
score or win/loss rates. Path-finding is one of the most visible types of AI
in computer games. Intelligent path-finding for a
For the AI as Actor role, research has focused on good route is applicable for any game in which the
non-player character (NPC) path planning and computer is responsible for moving things around,
decision making. Game agent decision making for example, to move a person, vehicle or combat
emphasizes the believability of characters to unit around; from here to there.
support the suspension of disbelief that the player
is interacting with software instead of a monster, 1- Avoiding Obstacles along the Way.
human opponent, or human companion. These 2- Moving in Random Directions.
problems are still being pursued by industry 3- Going Around the Obstacle.
developers and academic researchers. Drama 4- Plan before Move.
management is another way for AI to mediate 5- Breadth-First Search.

AI and Game Development – Hemn mela Karim Barznji 3


terminating position (which are called “anchors”)
and two separate middle points (which are called
”handles”). The shape of a Bezier curve can be
altered by moving the handles. With this
knowledge of Bezier curve, the next step would be
to build a Bezier curve from the points on the final
curve to attain a more realistic path.

6- Bidirectional Breadth-First Search

D- Finite State Machines and Decision


Trees

Finite state machines (FSMs) describe under which


events or conditions a current state is to be replaced
by another. For example, switching from an attack
mode to an escape mode if a non-player character
is hit. FSM is mostly only a design concept,
realized by scripts and simple if-then statements.
7- Dijkstra’s Algorithm. [29]
8- Depth-First Search.

Decision Try

Game Development Life Cycle Guidelines


(GDLC)

Game is a kind of software with goal to provide


entertainment. However, during the real game
9- Iterative Deepening Depth-First Search.
development practice, simply adopting the
10- Best First Search.
software development life cycle (SDLC) is
B- Natural Paths
not enough, as the developers face several
With a suitable path-finding algorithm to obtain the challenges during its life cycle. To address the
route to be taken, the next challenge in game problem, game development uses a kind of
applications would be to create a natural looking specific approach called game development
path. Dealing with realistic turns is an important AI life cycle (GDLC) to direct the game
topic, and for game characters to avoid taking development. However, none of the existing
robotic paths. In general, splines are often GDLCs explicitly address how to
employed to make the path looks more natural. successfully deliver a good quality game. This
Figure 4a and 4b illustrates the advantage of using paper presents a new game development life
splines in path. [28] cycle model and guidelines to successfully deliver
a good quality game. Several quality
C- Bezier Curve criteria’s are explicitly considered at each phase

The Bezier curve is a mathematically defined curve


by four points: the initial position and the

AI and Game Development – Hemn mela Karim Barznji 4


Game Prototype Usability Quality Criteria This GDLC is a repetitive approach to
developing a game. The design (1) relates to
Four prototype stages are:(1)Foundations, that is
the creation of a game's original design and
the most basic prototype which represents
the gameplay basic concepts in the form of
game design document. After preparing the
either low fidelity prototype or incomplete design, start developing the game's current
game; (2)Structure, that is a refined version of game engine in the development (2) stage, and
foundations which already has the core then evaluate it in (3) step. If construction is
gameplay logic, mechanics, and game rules; not satisfactory, its reconstruction (2). If you
(3)Formal details, the refinement of structure have passed the evaluation, try testing before
that includes necessary rules and procedures to the test (4) to test the game (and not just the
make the game fully functional; and engine) to the internal team and make some
(4)Refinement, the refined and almost finished corrections. After that, the game will be
game .
released to a third party in the trial version (5).
Repeat all steps from (1) to (5) to get the game
ready for free (6). [32]
A- Blitz Games Studios GDLC
D- GDLC Heather Chandler
Blitz Games Studios [9] defines six steps of their
GDLC. Chandler's head defines four steps in the game
development process. The corresponding stages of
A game development is started from pitch (1)
the production cycle are called production cycles.
to create the initial design and game concept.
After the concept is made, it is refined Game development involves several pre-produced
through the pre-production (2), in which the production stages (1) that define game design and
game design, concept art, and the game design project planning. Once it has been designed and
document is made. The realization of the planned and approved, the time it takes to work
concept is done through the main production(3) towards production (2) relates to the creation of
process. Through a lengthy process of main both technical and artistic aspects. Then, test (3)
production, the game build then is tested by play and fix bugs. When a structure is considered
internal team members, called alpha (4) testing. to be completed for a single cycle, after production
When the build has satisfied the needs of alpha (4) for the presentation of current and post-death
testing, a next phase testing called beta (5) testing documents [33]
is conducted to the third party tester. The game
is launched in master(6) phase [30] Suggested GDLC

B- Arnold Hendrick’s GDLC A new GDLC has been proposed to answer three
research questions: what steps are needed to
Arnold Hendrick defines five steps of develop a game, the quality criteria to be
developing a game. considered at each stage and how to create a good
quality game. The main principles of the new
Starting point of creating a game is to create
GDLC are:
the initial design, concept arts, and several
prototype in prototype(1) phase. The next step, 1- The GDLC proposal is derived from the above
pre-production (2), is to make the analysis and is derived from key activities in the
documentation in a form of game design relevant GDLC stages.
document. Production (3) is related to the
construction of assets, source code, and the 2-The proposed GDLC creates a repetitive
integration of those aspects. When the build is approach to create a degree of flexibility versus
ready, beta(4)testing is conducted to draw changes throughout the game.
users’ feedback. Live(5) is when the game has 3-The GDLC is proposed to address the qualitative
already been pass the testing and ready to play . criteria of each prototype stage in order to maintain
[31] the quality of the final product.
C- Doppler Interactive GDLC The proposed GDLC consists of six development
steps:
Joshua McGrath of Doppler Interactive defines
seven steps in the game development process.

AI and Game Development – Hemn mela Karim Barznji 5


A. Brgin F. Release

The first step in creating a game is to create a rude It's time for the game to reach the final stage and be
concept of what type of game will be created. The ready for release to the public. Release includes
emulation of the imitation of the concept of the product launch, project documentation, knowledge
game and the description of the game is simple. sharing, post-death, and planning for game
maintenance and development.
B. Pre-production
Assessment
Pre-production is one of the first and most
important stages in the production cycle. Pre- To review the GDLC proposal and its instructions,
production involves creating and reviewing game both of them are used in a game development
design and creating a prototype of the game. The project. The success parameter of this research is to
game's design focuses on defining the style of the validate the GDLC proposal and use this GDLC to
game, gameplay, mechanics, story, characters, successfully deliver a good quality game. [34]
challenges, fun factors, technical aspects and
documenting its elements in the game design
document (GDD).

C. Production

The production of nuclear process is centered


around creating assets, generating source codes,
and integrating both elements. The related
examples in these steps are formal and refined
details
Simple Games Project (SGP)
The formal details of a refined structure are
complete with mechanics and assets. Production I produce simple game project using C#
activities that involve the creation and modification programming language that is consist of two simple
of formal details, play (related to balanced quality games.
criteria), adding new features, improving overall
performance, and fixing bugs (related to qualitative
and functional qualities). Matching the game means
the settings related to the problem of the game to
correct the problem of the game. Refinement is a
complete example that is the subject of payment.
Quality criteria are fun and accessible. Activities
are guided during refinement to make the game
fun, challenging and easier to understand. At this
stage only minor modifications are possible.

D. Testing

Testing in this field means an internal test


conducted to test gaming and playability. The
The player can select one of the numbers game as
special test method is for each sample stage.
he/she like, the right button to select Zombi game
E. Beta and the left button for select game of picture and
your chance.
The beta phase is for performing a third-party
tester, called a beta test. The beta test is still using Tools and Software
the same test methods as the previous test method,
In this development I used some software and tool
since its prototype in the beta test is formal and
such as:
refined. The tester selection method is in two types:
closed beta and open beta. The beta package only First: Programming Language: I used the C#
accepts invitees who can participate, while the free Programming language to developed object
beta allows a registered person to become a oriented project.
participant.

AI and Game Development – Hemn mela Karim Barznji 6


Second: Microsoft Visual Studio 2017. References

Third: Microsoft Visio 2016 to Design front end [1] John David Funge, Artificial Intelligence for
and back end diagrams and graphically. Computer Games, CRC Press, 2004.
Fourth: Adobe Photoshop and Corel Draw. [2] IAN MILLINGTON and JOHN FUNGE,
ARTIFICIAL INTELLIGENCE FOR GAMES,
Second Edition, CRC Press, 2009.

[3] Chen Xin, “Artificial Intelligence Application


in Mobile Phone Serious Game “, First
International Workshop on Education Technology
and Computer Science, 2009

[4] Lowenstein, D. (5th February 2003).


Presentation. Association at Woodrow Wilson
Center Serious Games Conference 2003.

[5] David C. Pottinger and John E. Laird, “Game


AI: The State of The Industrial, Part Two”, 2000.

[6] Educational Overview of AI, “The History of


Artificial Intelligence”, 1997.
Programming for Each Game
[7] OpenSteer, “Steering Behaviors for
The basic components for each game as Autonomous Characters”, 2003.
programming and data structures are:
[8] Stuart Russel and Peter Norvig. Artificial
1- Variables, Class and Methods. Intelligence: A Modern Approach. Second Edition.
2- Loops to loop through all of the Prentice Hall, 2003.
components in the game
3- the pre built classes in C# to add them and [9] K Hartness, “Robocode: using games to teach
remove them from screen artificial intelligence,”, Journal of Computing
4- Decision Making especially if … else. Sciences in Colleges, Vol 19, No. 4, pp. 287-291,
5- Random Generator. April 2004.
6- all operators specially logical, relational
[10] Jessica D. Bayliss, Teaching Game AI
and bitwise.
Through Minecraft Mods, IEEE International
Conclusion Games Innovation Conference, 2012.

However, the main function of Artificial [11] Mark Owen Riedl and Alexander Zook, AI
Intelligence (AI) in games production is winning for Game Production, IEEE, 2013.
importance and often affects the success or failure [12] K. Salen and E. Zimmerman, Rules of Play.
of a game. But AI used in computer games does not Cambridge, MA: MIT Press, 2004.
have to be public aim. Otherwise Game AI goals to
progress and enhance game experience. Aside from [13] Cameron Browne and Frederic Maire,
adding realism of game experience, the use of AI Member, Evolutionary Game Design, IEEE
can produce a game extra meaningful. TRANSACTIONS ON COMPUTATIONAL
INTELLIGENCE AND AI IN GAMES, VOL. 2,
NO. 1, MARCH 2010.
Acknowledgement [14] Sawyer, B. (2004). Presentation in GDC 2004.
Thanks for: [15] John David Funge, Artificial Intelligence for
Computer Games, CRC Press, 2004.
1- Dr.Naween Najat. (Ph.D)
2- Dr.Diyari Ali (Ph.D). [16] P. Spronck, “Adaptive Game AI”, PhD Thesis,
3- Dr.Omer Barznji Maastricht University Press, Maastricht, The
Netherlands, 2005.

AI and Game Development – Hemn mela Karim Barznji 7


[17] M. Buro, T. Furtak, “RTS Games as Test-Bed [30] Blitz Games Studios, "Project Lifecycle,"
for Real-Time AI Research”, ResearchGate, 2011. [Online]. Available:
December 2008.
[31] A. Hendrick, "Project Management for
[18] Apostolos Meliones and Ioannis Plas, Game Development," (2009, June
“Developing Video Games with Elementary 15).
Adaptive Artificial Intelligence in Unity An
Intelligent Systems Approach “,Intelligent [32] J. McGrath, "The Game Development
Systems Conference 2017, 7-8 September 2017 | Lifecycle - A theory for the extension of the
London, UK Agile project methodology," (2011 April 3).

[19] Mark Owen Riedl and Alexander Zook, AI [33] H. M. Chandler, Game Production
for Game Production, IEEE, 2013. Handbook (Book style), Sudbury: Jones and
Bartletts Publishers, 2010
[20] Mark Owen Riedl and Alexander Zook, AI
for Game Production, IEEE, 2013. [34] Raj Patel, Prof. Kruti Lavingia, Prof. Rushabh
Shah, Prof. Rutvi Shah, GDLC: A Software
[21] D. L. Roberts and C. L. Isbell, “A survey and Engineering Approach in Game Development,
qualitative analysis of recent advances in drama International Journal of Advance Research in
management,” International Transactions on Science and Engineering, Vol.6, 2017.
Systems Science and Applications, Special Issue on
Agent Based Systems for Human Learning, vol. 4,
no. 2, pp. 61–75, 2008.

[22] M. O. Riedl and V. Bulitko, “Interactive


narrative: An intelligent systems approach,” AI
Magazine, 2013.

[23] M. Hendrikx, S. Meijer, J. Van Der Velden,


and A. Iosup, “Procedural content generation for
games: A survey,” ACM Transactions on
Multimedia Computing, Communications, and
Applications, vol. 9, no. 1, p. 1, 2013.

[24] J. Togelius, G. Yannakakis, K. Stanley, and C.


Browne, “Searchbased procedural content
generation: A taxonomy and survey,” IEEE
Transactions on Computational Intelligence and AI
in Games, vol. 3, no. 3, pp. 172–186, 2011.

[25] G. N. Yannakakis, “Game AI revisited, ” in


Computing Frontiers, 2012, pp. 285–292.

[26] Clarke, D., Noriega, L., Games design for the


teaching of artificial intelligence, Interactive
Convergence: Research in Multimedia, Aug. 7-9,
2003, Prague, Czech Republic, 2003.

[27] Ken Hartness, ROBOCODE: USING GAMES


TO TEACH ARTIFICIAL INTELLIGENCE,
JCSC 19, 4 (April 2004)

[28] Sean Baxter, “Parametric Cubic Curves”,


1998.

[29] Yee Chia Hui, Edmond C. Prakash and


Narendra S. Chaudhari, GAME AI: ARTIFICAL
INTELLIGENCE FOR 3D PATH FINDING,
IEEE, 2004.

AI and Game Development – Hemn mela Karim Barznji 8

View publication stats

You might also like