1 Introduction
Playing Bridge is a very difficult task for both human and computer. From a game-theoretic point of view, Bridge, as a game of incomplete information, is much more complicated than games of complete information such as Chess and Go. More precisely, Bridge is probabilistic, partially observable, sequential and multi-agent. These features present difficulties and interests for AI research. Due to partial observability, the search space for planning is exponentially larger than fully observable cases. In addition, the multi-agent aspect (two players against two, both collaborative and adversarial) makes branching factor larger than in two player games. Therefore, Bridge is an interesting and challenging topic for AI research.
It has already been shown in [3] that Bridge is a killer application for Inductive Logic Programming. The goal of this paper is to convey our belief that Bridge is also an ideal test field for both PLP and PILP [6, 2, 7].
In the first part of this paper, we briefly introduce Bridge and the probabilistic reasoning in this game. The second part is dedicated to our experiments related to the inference lead problem.
2 Background
The game of Bridge in short
The interested readers can refer for instance to [5] for a more complete presentation of the game of Bridge.
Bridge is a trick-taking card game opposing four players divided in two partnerships (pairs). A standard card pack is shuffled and each player receives a hand of cards that is only visible to it. Pairs stand across each other. A Bridge deal is divided into two major playing phases: the bidding phase and the card play.
The goal of the bidding phase is to reach a contract which determines the minimum number of tricks the pair commits to win (between and ) during the card play, either with no trump or with a determined suit as trump.
During the card play, the goal is to fulfill (for the declarer) or to defeat (for the defenders) the contract reached during the bidding phase.
Probabilistic and logic reasoning in Bridge
In a bridge deal, assuming that players know exactly how the cards are distributed among the four hands will yield a simplified version of bridge which can be easily solved both by bridge experts and by programs such as the Double Dummy Solver developed by Bo Haglund. Hence the difficulty of Bridge is largely due to the fact that the game is partially observable.
In this game of incomplete information, the main goal of each player consists then in rebuilding the hidden hands with respect to it in order to choose the optimal strategy. Throughout the game, the incompleteness decreases either deterministically (e.g when cards are put on the table) or probabilistically (e.g. by rules related to the bidding or card play conventions).
Without any additional information, one may assume that the hidden cards are uniformly distributed among the hidden hands. In order to choose a strategy, a player needs to gather as much information as possible, which may be provided by different sources such as the auctions made during the bidding phase (out of the scope of the paper), and the cards played during the card play. Such information influences the probabilities of distributions of the hidden cards with respect to a player and therefore the optimal strategy of the player.
If cards are played at random, then it is not possible to obtain additional information except the position of the played cards. Fortunately for us, and for the interest of the game of Bridge, normal players do not play randomly, but attempt to play in their best interest. To achieve this goal, they follow specific rules and use logical reasoning to choose the optimal strategy with respect to the information they gathered. This behaviour can be exploited by other players to update the probabilities of presence of the remaining cards in the hidden hands, as long as they have insight about the strategy of their partner or opponents.
In conclusion, Bridge is a natural test field for PLP due to its omnipresent probabilistic and logic reasoning mentioned above.
3 Inference Lead Problem
Problem setting
During the bidding step, the incompleteness is maximum with hidden cards for each player. During the card play, the player on the left of the declarer (called leader) leads the first trick of the game. The declarer’s partner (called Dummy) then lays his cards face up on the table. The incompleteness is now hidden cards for the declarer and the leader’s partner, and for the leader.
The lead is usually chosen by the leader according to a set of rules, which may depend on its hand and its knowledge about other players’ hand deduced from the bidding. This set of rules, called leading rules, is in theory known by the other players.
Hence the lead conveys valuable information about the leader’s hand, available both to his partner and to the declarer. The inference lead problem consists in analyzing the lead in order to reduce the incompleteness of a game. Such a probabilistic and logic inference task is particularly important at the beginning of the game, since the uncertainty of the situation is the highest.
Methodology of experiments
In this paper, we focus on the inference lead problem from the declarer’s point of view. We have carried out several experiments111For more details of the experiments, one can consult the Master thesis [4]. on using PLP to model how declarer updates its knowledge of the hidden cards (i.e. its belief states) by exploiting the information conveyed by the lead.
First, we have chosen a simple set of
leading rules that the leader is supposed to follow, written as a PLP program. Since the inference module only uses this program as a black box that takes a leader’s hand as input and outputs the lead of this hand according to the rules, any set of rules forming a complete decision tree can be used.
Theoretically speaking, we can assume that after the bidding phase, the declarer sees dummy’s hand first and then the lead. The moment just before the lead, there are
hidden cards from the declarer’s prospective. Without additional information from the bidding phase, each of these hidden cards has a prior probability of
to be in the leader’s hand. In other words, they can be described as unbiased Bernoulli random variables. Notice that they are not independent, since each player should have exactly
cards.Now we need a PLP model to describe the declarer’s belief states, i.e. how hidden cards are distributed between the two hidden hands. A simple but elegant approach is to create an unbiased Bernoulli random variable for each card, then impose the evidence that exactly cards are in the leader’s hand. However, in this case the search spaces of PLP is , which is not prohibitively large but unfeasible since PLP implementations such as ProbLog are extremely slow.
Due to the constraint that each player has cards, the real search space is significantly smaller than , a fact that we should exploit. If we are only interested in the hidden cards of the led suit, the search space is even smaller. A better approach consists in factoring the representation of the problem.
We have decided to use one single variable which describes the leader’s led suit. The values that this variable, called hand variable, can take any possible holdings of the leader in the led suit. Trading binary variables with variable that can take different values, where is the number of hidden cards in the led suit with respect to the declarer, greatly reduces the search space of our PLP model and boosts its performance.
Once the belief states are modelled, the lead can be imposed as an evidence. Then it is straightforward to perform inference task in PLP to model how declarer updates his belief states in terms of the lead he observes and the leading rules according to which the lead is chosen.
Results and conclusion
Our new PLP model is quite efficient. In fact, with hidden cards in the led suit, it takes less than
seconds on an ordinary personal computer to update the belief states and to compute the posterior probability of finding each card in the leader’s hand. This is fast enough for practical purpose, since in reality we are rarely interested in performing such inference tasks in a suit with more than
hidden cards. With some additional refinement tricks, the program can be optimized even more.Our approach is general enough to accommodate many further upgrades and new features without changing the PLP program structure or its performance. For example, taking into account information conveyed by the auctions which change the distribution (prior to seeing the lead) of the hand variable. We are able to exploit this information by computing this prior distribution of the hand variable using Python then passing it to the PLP program for lead inference, without degradation of the performance.
References
- [1] (2010) The state of automated bridge play. Internal Report NYU. Cited by: §2.
-
[2]
(2008)
Probabilistic inductive logic programming—theory and applications.
Springer.
Note:
Volume 4911 of Lecture Notes in Artificial Intelligence
Cited by: §1. - [3] (2018) The game of bridge: a challenge for ilp. In International Conference on Inductive Logic Programming, pp. 72–87. Cited by: §1.
- [4] (2019) Probabilistic logic programming: modelling of card playing in bridge. Note: http://www.nukk.ai/StarAI2020/report.pdf Cited by: footnote 1.
- [5] (2014) Bridge for beginners: a complete course. Pavilion Books. Cited by: §2.
-
[6]
(2016)
Statistical relational artificial intelligence: logic, probability, and computation.
Synthesis Lectures on Artificial Intelligence and Machine Learning
10 (2), pp. 1–189. Cited by: §1. - [7] (2018) Foundations of probabilistic logic programming. River Publishers. Cited by: §1.
- [8] (2017) Boosting a bridge artificial intelligence. In Proc. International Conference on Tools with Artificial Intelligence (ICTAI), pp. 1280–1287. Cited by: §2.