AI in Gaming World

Artificial Intelligence ( AI, also Machine Intelligence, MI ) is intelligence exhibited by machines, rather than humans or other animals ( Natural Intelligence, NI ). In Computer Science, the field of AI research defines itself as the Study of ” Intelligent Agents ” : any device that perceives its environment and takes actions that maximize its chance of success at some goal.

In a simple language we can say that Artificial Intelligence is giving  robots and computers the thinking capabalities and self awareness of humans.
Let’s see AI in Gaming World.
In modern games, AI is to generate responsive or logically correct behaviour in non-player characters aka intelligence provided to computers. AI in gaming has been from its inception.
In the last 5 years gaming industries has seen a 200 percent boost, credit goes to the introduction of the   smartphones. People now-a-days have at least a game or two in their smartphones or PC. The quality of games these days are better as compared to last 20-30 years which  urges gaming companies and developers to control/improve the AI in games. There is a constant demand & need for a better gaming experience in today’s market. Many contemporary video games fall under the category of action, first person shooter, or adventure. In most of these types of games there is some level of combat that takes place. The AI’s ability to be efficient in combat is important in these genres. A common goal today is to make the AI more human, or at least appear so.
 
We all have once playeid
Temple Run by Imagi Studios. It is an infinite run game where the player can run for infinite distance. The primary objective here is to take as many boostups and coins and dodge/jump/duck from the obstacles. The AI is designed  such that whenever some input(mostly swiping) is provided by the user, it performs the above mentioned steps.
Many gaming giants in the field of AI have argued that video game AI is not true intelligence. According to them AI is an advertising buzzword used to describe computer programs that use simple sorting and matching algorithms to create the illusion of intelligent behavior while bestowing software with a misleading aura of scientific or technological complexity and advancement. Since game AI for NPCs is centered on appearance of intelligence and good gameplay within environment restrictions, its approach is very different from that of traditional AI.
Computer Science & Engineering too deals with AI, which makes Artificial Intelligence very important for us. Studying AI will definitely benefit us. Gaming Industry in India is increasing at a fast pace and it requires more and more developers and professionals to build such  intelligent systems.
Hence, we can conclude that Gaming AI is a very innovative field to look out for.
Contributed By :
Prafull Gururani
B.Tech. C.S.E. II Year

The Future is Python

Python is a general purpose programming language created in the late 1980s, and named after Monty Python. Python is an easy to learn and powerful object oriented language. It owes its existence to mainly two programming languages :

ABC language, a teaching language created as a replacement of BASIC, and Modula-3

Python has evolved into a powerful, complete and useful language over these years. These days Python is being used in many diverse fields, some of which are:

Web Applications :  Python is the favourite among many developers for its strong emphasis on readability and efficiency, especially when compared to other languages like Java, PHP, or C++.

It has always been possible to use Python for creating web sites, but it was a rather tedious task. Therefore, many frameworks and helper tools have been created to assist developers in creating faster and more robust sites.

GUI Programs : By its nature as a general purpose programming language with interpreters available across every common operating system, Python has to be fairly agnostic as to the choices it presents for creating graphical user interfaces. Python has a huge number of GUI frameworks (or toolkits) available for it, from TkInter (traditionally bundled with Python, using Tk) to a number of other cross-platform solutions, as well as bindings to platform-specific (also known as “native”) technologies.

Game Developments : Python is also good for building tools for game designers which simplify tasks like level design or dialog tree creation and having those tools export that work into a format the main game engine can use. 3D Editing Packages like Maya use Python for scripting and it’s pretty much a required skill to be really competent with those tools. Pygame is a cross platform Python library which wraps SDL. It provides many features like Sprite groups and sound/image loading and easy changing of an objects position. It also provides the programmer access to key and mouse events.

Software Development : Python is often used as a support language for software developers, for build control and management, testing, and in many other ways like :

SCons for build control.

Buildbot and Apache Gump for automated continuous compilation and testing.

Roundup or Trac for bug tracking and project management.

Database Applications . The Python programming language has powerful features for database programming. Python supports various databases like MySQL, Oracle, Sybase, PostgreSQL, etc. Python also supports Data Definition Language (DDL), Data Manipulation Language (DML) and Data Query Statements.

For Database programming, the Python DB API is a widely used module that provides a Database Application Programming Interface.

Such diverse application of the Python language is a result of the combination of features which give this language an edge over others. Some of the benefits of programming in Python include :

Easy to Use :  Learning a programming language doesn’t sound as exciting as a breakdance competition on an aircraft carrier. The use of white space and common expressions has eliminated the need for tedious variable declarations and unattractive curly brackets. Python also requires less code to complete basic tasks, making it an economical language to learn. Python code is often 3-5 times shorter than Java, and 5-10 times shorter than C++.

Interpreted Language : Python converts source code written by the programmer into intermediate language which is again translated into the machine language that is executed. So Python is an interpreted language. Python is also interactive where it can prompt and interact with the interpreter directly to write the programs.

Cross-Platform Language : Python is a cross-platform language ; a Python program written on a Macintosh computer will run on a Linux system and vice versa. Python programs can run on a Windows computer, as long as the Windows machine has the Python interpreter installed (most other operating systems come with Python pre-installed).

Free and Open Source : Python is developed under an OSI-approved open source license, making it freely usable and distributable, even for commercial use. Python’s license is administered by the Python Software Foundation.

Object Oriented Programming Language : Python has been an object-oriented language since it existed. Because of this, creating and using classes and objects are downright easy as compared with other programming languages.

 

From the above mentioned chart, only one language has a constant unabated upward trend. That’s consistent over 25 years. Think about that. Python pulls ahead of Java for worldwide popularity in 2017 unless something causes an uptick in Java adoption again.

The Java honeymoon is probably over, right while more and more folks who don’t have the time to become professional Java or C programmers but need the power of coding are picking up Python, such as the Data Science community.

Moreover, Python had the largest year-on-year job demand growth — at 19% — as of March 2013. Notably, the overall hiring demand for IT professionals dipped year over year by 5% as of January 2014, except for Python programmers which increased by 8.7%. All over the world, Python developers ranked #8 of the most in-demand tech workers, making an average of $106k/year. As is evident from the graph,  Python programmers also enjoy a strongly rising demand for their skills.

Contributed By

Jitendra Singh Jeena

B. Tech. C.S.E. II Year