Monday, January 27, 2020
Process of Embedding Fuzzy Logic Methodology In Racing Game
Process of Embedding Fuzzy Logic Methodology In Racing Game Alamin Hussain Key words: fuzzy logic, XNA, AI, racing game ABSTRACT Fuzzy Logic has many opinions and understanding from people to people. In its simplest understanding Fuzzy Logic outputs truth(s) based on approximation for reasoning. In essence compared to traditional binary sets, which outputs absolute truths or false values, Fuzzy Logic may have a false or truth-value which ranges in degrees from 0 to 1. Using the above notion, I will be implementing this ideology or method in the perspective of providing behaviors for my Non-Playable-Opponent. What this means is that I will be programming Fuzzy Logic into my video game. Which should provide a more human like interaction. I will be utilizing the Microsoft XNA framework and C# programming language to output the implementation. In attempting to program in Fuzzy Logic, I had come across several hurdles. Such as breaking the rules and calculations down to the most possible simplest form possible, then trying to implement line by line each element. Thereafter running into Syntax Errors and Runtime Errors of which there were many. Finally I was forced to remove some more complex forms of Fuzzy Logic due to time constraints and inability to fully comprehend Fuzzy Logic and apply it via programming. INTRODUCTION Fuzzy Logic is an area of study in Artificial Intelligence built on the idea that in a fuzzy set, each element in a given set which can assume a value from 0 to 1 and does not follow the conventional classic or crisp theory of just 0 or 1. Basically this method follows the conception that approximation is used for reasoning rather than a fixed value. An element is categorized in its gradual inclination towards its relevant set, this is known as the degree of membership. The objective of this project is to efficiently utilize the XNA game engine using C# programming language and DirectX graphics API, to create a function racing game which utilizes Fuzzy Logic artificial intelligence. Previous programmers and coders have utilized Fuzzy Logic in video games, but the use for fuzzy logic in real world applications for video games has been minimal due to more popularity of other methods such as the A* artificial intelligence model. The reason of this project is to identify how fuzzy logic can allow for more human like interaction in a video game setting. In essence providing human feedback and reactions to the player and establishing cohesion in immersive game play. Throughout the main chapters of the thesis, I will going through the process in which I have understood general AI in video games and how fuzzy logic can be applied in this territory. Due to my illness, which has made me bend bound and on medication for just over 2 months from the beginning of February, my research and understanding is very little. As such I will try my best to demonstrate my current knowledge and how I established it into my project. I will be providing and understanding of Artificial Intelligence in video games and how the two are intertwined; he current state and use of AI in video games; Game AI techniques; Fuzzy Logic AI; how Fuzzy Logic is utilized in video games; the benefits of fuzzy logic; the cons of Fuzzy Logic; Fuzzy State Machines; the use of fuzzy logic in the video game industry and previous research conducted on fuzzy logic. MAIN CHAPTERS Artificial Intelligence in Video Games In the study of artificial intelligence in video games it is made up of all the methodologies and techniques for implementing intelligence into video games. Artificial Intelligence in video games contain aspects of, but are not limited to: path finding, control of animation, strategic thinking, procedural generation and learning. All of which require some form of solving problems, which are executed utilising Artificial Intelligence algorithms. The main essence of using game artificial intelligence is bringing a more human like interaction for the player, in creating a more fun, immersive and strategical play. This can be in the form of enemy bosses or interaction with NPCs (Non-Playable-Characters). In the words of Alan Turing, considered the father of of artificial intelligence, an agent is intelligent if its behaviour cannot be distinguished from that of a human[1]. From real human perspective Game artificial intelligence is in essence not real intelligence but the illusion of such methods[2]. Successful video games implement varying degrees of compelling artificial intelligence. It is not a requirement to implement very intelligent, unbeatable smart opponents but a much fun and some what realistic opponent who does not do damagingly stupid manoeuvres of which could ruin the whole game play and remove a player from the immersion. Like in most aspects of a video game, the game AI compliments and provides a higher realisation of a given video game, such as maintaining high levels of entertainment and fun game play. From the beginning of video game development to the the present times of complex large project based games, Artificial Intelligence has certainly been widely used and with the passage of time has increased usage and complexity with it. As such video games such as online multi player games have brought forward advanced artificial intelligence and have changed the habits and perception of players. This in effect has made players demand much more intricacy in game play in regards to artificial intelligence and developers are more and more focusing in providing human-like methods in AI, which are capable of learning from the players inputs. Developers have since moved away from predictable and scripted opponents and heavily focused on the advanced artificial intelligence in games. Due to the nature of video game development, game AI has real world constraints, in terms of time management and scheduling of a project. As such tested and working methods are used in development and the lack of innovation in the field of game AI is very much not visible. Game Artificial intelligence borrows knowledge from academic based AI such as robotics. But has its own parallel workforce of improvement and research and development, whilst keeping practicality in mind due to the nature of the game industry[3]. All forms of AI research and development borrows elements of information and as such same techniques can be found in some form in all fields of study. This thesis will delve on the study of a particular method of video game artificial intelligence, which is Fuzzy Logic and the use of such AI in video game. Then bringing a conclusion from my findings and usage of Fuzzy Logic game AI. Current Usage of Game AI Game artificial intelligence had gained traction from the late eighties early nineties, as such has gained much more attention from the game industry in the last decade or so. Traditionally video game have been pushing boundaries in the composition of visual graphics and audio realism in a bid to gain traction from end consumers. This in return had made it so that CPU (Central Processing Unit) processing powers was largely given precedence to graphics computation, followed by sound computation and then the game logic. This process of allocation of resources in previous game development left very little computation al power to artificial intelligence, which resulted in very stupid, generic and easily overpower enemies and or opponents. The previous process of developing video games and limitations on resources meant that artificial intelligence was very minimal. In more recent times graphical fidelity has improved so well that the visuals on screen are indistinguishable to their real life counter parts. As well as the costs of provided more resources on a much lower capital and recent inclusions of GPU (Graphical Processing Unit), meant that visual graphics had a dedicated resource in providing improved graphics, whilst freeing up the CPU to focus more on intricate computations. This has allowed artificial intelligence and physics to flourish and become more improved over the years, allowing more immersive game play. This trend of game development and resource allocation has allowed video game artificial intelligence to become some what of an essential necessity to differentiate and better develop high quality video games. As costs are minimising and developers improving, there are more and more dedicated teams of developers focusing on game AI, in creating seemingly intelligent NPCs, opponents and enemies, thus enabling challenging and interesting video games for the players. Following these development cycles and improvements over the years in the study of video game artificial intelligence has allowed people studying and or researching artificial intelligence to use video games as a mean of testing their research. This in essence allows reducing large overheads, increasing safety and utilising a simple environment in a virtual world. As opposed testing in the real world, which would increase costs and potential pose a risk to researchers if it were a large scale project utilise large physical object(s).
Subscribe to:
Post Comments (Atom)
No comments:
Post a Comment
Note: Only a member of this blog may post a comment.