Você está na página 1de 19

Submitted By:

Himasagar Reddy(11BCE0277),
Nandan Babu(11BCE0085),
Rohit Enduri(11BME0426)
Under the guidance of:
Prof. Sundaramali G

Abstract:

We can often make sharper predictions about the possible outcomes of a


game if we are willing to make stronger assumptions. Up until now we have
assumed that the players are rational but we haven't even assumed that
each knows that the others are rational. Beyond that we could further
assume that each player knows that the other players know that the others
are all rational. We could continue adding additional layers of such
assumptions ad nauseam. We summarize the entire infinite hierarchy of
such assumptions by saying that the rationality of the players is common
knowledge.
Rationality constrains players to choose best responses to their beliefs but
does not restrict those beliefs. Common knowledge of rationality imposes a
consistency requirement upon players' beliefs about others' actions.

By assuming that the players' rationality is common knowledge, we can


justify an iterative process of outcome rejection--the iterated elimination of
strictly dominated strategies--which can often sharpen our predictions.
Outcomes which do not survive this process of elimination cannot plausibly
be played when the rationality of the players is common knowledge.
A similar , and weakly stronger, process--the iterated elimination of
strategies which are never best responses--leads to the solution concept of
rationalizability. The surviving outcomes of this process constitute the set of
rationalizable outcomes. Each such outcome is a plausible resultand these
are the only plausible resultswhen the players' rationality is common
knowledge. In two-player games the set of rationalizable outcomes is
exactly the set of outcomes which survive the iterated elimination of strictly
dominated strategies. In three-or-more-player games, the set of
rationalizable outcomes can be strictly smaller than the set of outcomes
which survives the iterated elimination of strictly dominated strategies.

In a rationalizable outcome players' beliefs about the same question can


differ--and hence some are incorrect; and a player can find--after the others'
choices are revealed--that she would have preferred to have made a
different choice.

So the problem can be brought down to a 2x2 matrix which can be solved
by few formulae.

Objective:

The result that obtained from combination of players strategies . Every


combination of strategies is an outcome of a game. A primary purpose of
game theory is to determine which outcomes are stable.

Usefulness of Game Theory:

Computer science:

Game theory has come to play an increasingly important role in logic and
in computer science. Several logical theories have a basis in game
semantics. In addition, computer scientists have used games to
model interactive computations.

Computer science:

Also, game theory provides a theoretical basis to the field of multi-agent


systems.Separately, game theory has played a role in online algorithms. In
particular, the k-server problem, which has in the past been referred to
as games with moving costs and request-answer games(Ben David,
Borodin & Karp et al. 1994). Yao's principle is a game-theoretic technique
for proving lower bounds on the computational complexity of randomized
algorithms, and especially of online algorithms.The emergence of the
internet has motivated the development of algorithms for finding equilibria in
games, markets, computational auctions, peer-to-peer systems, and
security and information markets. Algorithmic game theory] and within
it algorithmic mechanism design] combine computational algorithm
design and analysis of complex systems with economic theory.

Applications of Game theory:


The situations to which game theory has actually been applied reflect
its selective usefulness for problems and solutions of an individualistic and
competitive nature, building in the values of the status quo. The two
principal areas of application have been war and economics. For the
military it has been applied to tactical decision-making (in particular via the
theory of differential games) and in studying global nuclear strategies such
as deterrence. In economics, game theory has been used in studying
competition for markets, advertising, planning under uncertainty, and so
forth. These primary areas of application - war and economics - are where
one would expect game theory to be applied, given the values reflected in
its concepts.

Game theory has also been applied to many other fields, such as law,
ethics, sociology, biology, and of course parlour games. In all these
applications, a close study of the formulation of the problem in the game
theory perspective shows a strong inclination to work from existing values,
consider only currently contending parties and options, and in other ways to
exclude significant redefinitions of the problems at hand. Presently I will
give examples of this inclination, but first it is worth mentioning the principal
uses of game theory.

Although game theory has been applied to many situations, it has not
been particularly fruitful - at least in terms of its original promise. I see
at least three ways in which game theory has proved 'useful'. First, it
has to led to practical advice on tactical decision-making in certain welldefined situations, especially in military areas involving missile tracking
and similar tasks (where the theory of differential games has led to
results equivalent to control theory).Second, it has provided an
occupation and amusement for thousands of government bureaucrats,
mathematicians, psychologists, and others who have found plenty of
funds to study game theory, develop its mathematical ramifications, and
play around with bargaining and simulation games. Third, it has
provided a perspective for looking at military and political choices that
builds in many values of the status quo, that can be adapted to give
nearly any results desired, and which has the appearance of
mathematical sophistication. Game theory formulations therefore serve
admirably as ex post facto justifications for any decisions or policies
that may be adopted by military or political lites.

The values built into game theory concepts thus seem to be closely
reflected in its areas of primary application (war and economics) and in
what it has actually been used for (tactical decision-making, employment of
people studying game theory, legitimizing military and political decisions).

Until now the impression may have been given that game theory is primarily
used to represent (for academics) the way in which decisions are made. But
in many cases game theory is used as a tool by certain people who are
actually in these situations. In these applications, the ostensible reason for
applying game theory is to obtain insights concerning what policies should
be adopted by particular actors. One important actual result of such
applications, though, is an implicit justification and reinforcement of the
assumptions which are built into the game theory formulation itself.

That is, by specifying a limited range of potential action, game theory


formulations encourage a perception that these actions are the only
feasible or rational ones.

The following case studies illustrate the type of narrow perspective that
inevitably seems to arise when game theory is applied to a problem
situation. The areas I briefly comment on are international relations,
ethics, and crime. Applications in other areas are similarly limited.

Program code:

#include<stdio.h>
#include<iostream>
using namespace std;
//xxovoid print(int a[]);
//int n,m;
int main()
{
int n,m;
cout<<"Enter size of the matrix (n x m) "<<endl;
cin>>n>>m;
int a[n+1][m+1];
cout<<"Enter your matrix"<<endl;
int i,j;

for(i=0;i<n;i++)
for(j=0;j<m;j++){
cout<<"Enter value for player A "<<i+1<<" and for B player "<<j+1<<"
"<<endl;
cin>>a[i][j];
}
//xprint(a);
int flag=0,k,count;
for(i=0;i<n-1;i++){
k=i+1;
while(k<n){
count=0;
for(j=0;j<m;j++)
if(a[i][j]<a[k][j])
count++;

if(count==m){
for(j=0;j<m;j++)
a[i][j]=-1;
break;
}
else
k++;
}
}
for(i=0;i<n-1;i++){
k=i+1;
while(k<n){
count=0;
for(j=0;j<m;j++)

if(a[i][j]<a[k][j])
count++;
if(count==m){
for(j=0;j<m;j++)
a[i][j]=-1;
break;
}
else
k++;
}
}

for(i=0;i<n;i++){
for(j=0;j<m;j++)
cout<<a[i][j]<<"\t";
cout<<endl;
}

return 0;
}
Sample Input/output:
Enter number of rows and colomns
2
2
Enter value for player A 1 and for B player 1
2

Enter value for player A 1 and for B player 2


-1
Enter value for player A 2 and for B player 1
-1

Enter value for player A 2 and for B player 2


0
SUM R 4
SUM C 4
Row 1 0.75
Row 2 0.25
Col 1 0.75
Col 2 0.25

Player A1 with B1 is -0.25


Player A1 with B2 is -0.25
Player A2 with B1 is -0.25
Player A2 with B2 is -0.25
logout
[Process completed]

Thank You

Você também pode gostar