This application is related to the following commonly-owned co-pending patent application: “METHOD FOR REPRESENTING A GAME AS A UNIQUE NUMBER,” Ser. No. 10/066,496, filed on Dec. 15, 2001.
Contemporary gaming machines such as card games are known. In card games such as video poker, the gaming machines deal hands to a player. Depending upon which cards are in a player's hand, the player may win a value. When the gaming machine provides a hand to the player, the gaming machine typically enables the player to keep the initial cards in the hand and receive the value associated with these cards or give up one or more cards in exchange for new cards. The player's goal is to maximize the opportunity to gain value by holding certain cards and getting new cards.
Certain known gaming machines employ an auto-hold program which informs the player as to which cards to hold for optimal play. The gaming machine processor executing this auto-hold program compares in an iterative manner the initial cards in the hand to a plurality of card patterns. Each card pattern is associated with a predetermined hold pattern, typically determined by the heuristics or experience of successful poker players, such as hold all five cards when they are a straight, hold the three cards when they are three kings or discard all cards. When the dealt hand matches a card pattern in the auto-hold program, the gaming machine indicates to the player which cards to hold in accordance with the heuristics in the auto-hold program.
Similarly, certain known gaming devices enable a player to hold certain reels in a slot game to increase the player's chance to obtain a winning combination on the next spin. In this case, after a spin the processor of the gaming device compares in an iterative manner the symbol combination to a plurality of symbol combinations. Each symbol pattern is associated with a predetermined hold pattern, typically determined by the heuristics or experience of successful slot players. Once the hold pattern associated with that particular set of symbol positions is determined, the gaming device indicates to the player which reels to hold.
The heuristics employed by these gaming devices is substantially accurate, and when wrong, the particular hold pattern is only off, if at all, by a relatively minor amount. To increase player enjoyment and excitement, it is desirable to provide players with new gaming devices providing mathematically precise auto-holds that minimize processing and memory usage.
The present invention provides a gaming device that determines and displays mathematically precise suggestions of the optimal or best way to play a game for every game situation. The gaming device uses an auto-hold table in the form of a master table or a redundancy table in conjunction with a master table to determine the mathematically best or optimal suggestion for obtaining the best result. The use of the auto-hold table enables the gaming device to minimize the use of processing and memory. The present invention also includes the methods of creating and using the auto-hold table. These methods also minimize the use of processing and memory.
In one embodiment, the gaming device displays a video poker game. The gaming device randomly determines and deals or displays five cards to a player. The gaming device processor then converts the dealt hand or initial cards in the hand into a hand number unique to that hand using a process as disclosed in U.S. patent application Ser. No. 10/066,496 filed on Dec. 15, 2001, which is incorporated herein by reference. Next, the gaming device processor looks up a hold code associated with that hand number in a predetermined master table. The hold code for each hand number provides the optimal or best mathematical suggestion for achieving the best result after the draw. The gaming device then displays to the player which cards to hold in accordance with the hold code. The player may or may not follow this suggestion. In other embodiments, the game is one of several other possible games such as a slot type game, blackjack, other card games, or other suitable game.
In another embodiment, the gaming device uses a redundancy table in coordination with a master table to provide mathematically precise suggestions of how to play a game. In one embodiment, the game is video poker and the gaming device randomly determines and deals or displays a five card hand to a player. The gaming device then converts the dealt hand into a unique hand number and looks up in the master table a redundancy table index associated with the hand number. The gaming device then looks up the hold code stored in the redundancy table corresponding to the redundancy table index. The gaming device uses that hold code to display to the player the mathematically optimal or best cards to hold to obtain the best result after the draw. The player may or may not follow this suggestion.
The present invention also includes the methods of producing the master and redundancy tables used by the gaming devices pursuant to the present invention. In one embodiment, the methods include making one time calculations corresponding to every possible set of cards to hold for every possible hand or game situation and calculating every possible outcome for every possible set of cards held. The set of cards to hold that produced the mathematically precise optimal outcome for each hand is converted into a five bit code, called a hold code, and recorded in either the master table or redundancy table. Once recorded, the gaming device only needs to look up the hold code associated with each dealt hand to determine the optimal or best suggestion of cards to hold for the player. No further processing is needed.
Further, the redundancy table capitalizes on the fact that some hands that differ only by suit also have the same hold codes. As such, the hold codes can be stored in a redundancy table that is much smaller than the master table. For example, the redundancy table for a conventional, no joker, single deck of fifty-two cards is nineteen times smaller than the master table for that deck. Each different game or pay table for a particular deck of cards or set of slot reels will have a different redundancy table. However, only one master table is needed for each deck of cards or set of slot reels. Thus, the master table for each deck of cards or set of slot reels need only be created once and stored only once in the gaming device memory. The gaming device will then store a separate and smaller redundancy table for each game or pay table available for play with that deck of cards or set of slot reels. This configuration is advantageous because less processing is needed to create the tables and less memory is needed to store the mathematically precise hold codes for every variation of game and pay table available on the particular gaming device.
It is therefore an advantage of the present invention to provide a gaming device providing mathematically precise suggestions of the optimal or best way to play a game using a minimum of processing and memory.
A further advantage of the present invention is to provide a method for creating the auto-hold table which minimizes the needed amount of memory and processing.
Other objects, features and advantages of the invention will be apparent from the following detailed disclosure, taken in conjunction with the accompanying sheets of drawings, wherein like numerals refer to like parts, elements, components, steps and processes.
Referring now to the drawings, two embodiments of the gaming device of the present invention are illustrated in
As illustrated in
As shown in
Gaming device 10 also includes one or more display devices. The embodiment shown in
A slot machine game of gaming device 10 as shown in
Similarly, if the game is card based such as video poker or blackjack, the display device is preferably a video monitor as shown in
As illustrated in
As further illustrated in
It should be appreciated that although a processor 38 and data storage device 40 are preferable implementations of the present invention, the present invention can also be implemented using one or more application-specific integrated circuits (ASIC's) or other hard-wired devices, or using mechanical devices (collectively or alternatively referred to herein as a “processor”). Furthermore, although the processor 38 and data storage device 40 preferably reside on each gaming device 10 unit, it is possible to provide some or all of their functions at a central location such as a network server for communication to a playing station such as over a local area network (LAN), wide area network (WAN), Internet connection, microwave link, and the like. The processor 38 and memory device 40 are at times generally referred to herein as the “computer”or “controller.”
With reference to
Similarly, with reference to
In a preferred embodiment, the processor of gaming device 10 automatically determines which are the mathematically optimal or best cards 35 to hold, displays this suggestion 33 to the player and in some embodiments automatically holds these cards 35 for the player. The player may choose to hold the cards 35 selected by gaming device 10 or select other or no cards 35 to hold. The player then presses the deal button 20 and the unwanted cards 35 are removed from the display 30 and replacement cards 35 are dealt from the remaining cards in the deck. This results in a final five-card hand 35. The final five-card hand 35 is compared to a pay table, such as those illustrated in
It should be appreciated that there may be additional variations of poker games such as a hand having a different number of cards, multiple hands simultaneously played, or variations of conventional poker hand rankings which gaming device 10 can be adapted to play. It should also be appreciated that other card-based games such as blackjack could be used as a primary or base game.
In addition to winning credits in this manner, gaming device 10 may also give players the opportunity to win credits in a secondary game, such as a bonus round. This type of gaming device 10 will include a program which will automatically begin a bonus round when the player has achieved a qualifying condition in the game. This qualifying condition can be a particular arrangement of one or more indicia on a display device. The gaming device 10 may use a video-based display device 30 to enable the player to play the bonus round. As illustrated in the five reel slot game shown in
As illustrated in
As shown in
The hold code for every hand requires the cards in the dealt hand to be placed in a certain order to eliminate the need for separate hold codes for every combination of the same five cards, thus reducing the use of memory. For example, the cards could be ordered according to the following system. First, the suits are ordered according to which suit has the most cards in the hand. In the case where two suits have the same number of cards, the suit with the highest numbered card is placed first. If two suits have the same number of cards and the same face values, it does not matter which suit is placed first. Then, within each suit, the cards are ordered according to their face value from lowest to highest. As shown in
Therefore, in a preferred embodiment, when gaming device 10 compares the dealt hand or game situation to the hold code, first the dealt cards are reordered and stored in the data storage device 40 without disturbing the order of the cards 35 displayed to the player. Then gaming device 10 uses the processor to look up the hold code associated with the ordered hand or game situation in the auto-hold table as illustrated in
In another embodiment, gaming device 10 enables a player to play different games with or apply different pay tables to the same deck of cards 35 or set of slot reels 34. In this embodiment, it is advantageous to use a redundancy table as the auto-hold table in addition to a master table. Because several poker hands differ only by suit and have identical hold codes, memory can be saved by storing only one hold code for all of the redundant hands in a redundancy table as shown in
For example, gaming device 10 randomly displays five cards to a player creating a game situation. Next, the dealt cards are elements that are reordered in the data storage device 40 without disturbing the of order of the cards 35 displayed to the player. Next, gaming device 10 determines the unique hand number for the dealt hand or game situation. Using the hand number, the processor of gaming device 10 retrieves from in the master table the redundancy table index for the given hand number. Then using the redundancy table index, the processor of gaming device 10 retrieves the hold code for the dealt hand or game situation in the redundancy table. Finally, the processor 38 of gaming device 10 uses the hold code to display 33 to the player which cards to hold.
In another embodiment, gaming device 10 enables a player to play different games or use different pay tables for the same deck of cards or set of slot reels or suggestion strategies for the same game or paytable. For the purposes of this application, a deck of cards or set of slot reels is referred to as a game apparatus, and different games or pay tables played with a game apparatus are referred to as game versions. Every game version associated with a game apparatus has a different auto-hold table in the form of a redundancy table because the different games or pay tables may have different mathematically precise hold codes for the same hand or symbol combination. Despite the need for different redundancy tables, each game apparatus has a single master table. Thus, the amount of memory necessary to store the mathematically optimal or best suggestions for every game version and hold strategy is minimized.
For example, gaming device 10 enables a player to choose from three different decks to use to play video poker: no joker, single deck; no joker, three decks; and two joker, single deck. In addition, gaming device 10 enables the player to choose whether or not to have deuces wild in the no joker decks and to choose one of three different pay tables to apply to each game. Thus, in this example, gaming device 10 enables the player to play one of fifteen different games. However, gaming device 10 only stores three master tables and fifteen different auto-hold tables in the form of redundancy tables in its data storage device 40 instead of fifteen different master or auto-hold tables. Because the redundancy tables are about nineteen times smaller than the master tables, gaming device 10 can store all the redundancy tables in this example in an amount of memory smaller than that needed for one master table.
In another embodiment, gaming device 10 enables a player to choose from two or more hold strategies to apply to a game. In this embodiment, a separate auto-hold table in the form of a redundancy table is required for each hold strategy, whether it be a risky, moderate, or conservative strategy. A first redundancy table may be created to provide hold codes for a risky strategy to maximize the amount of value possible in the draw. A second redundancy table may be created to provide hold codes for a conservative strategy to maximize the chance of obtaining any winning card combination in the draw. For example, if gaming machine 10 deals the cards 10(S) J(H) Q(H) K(H) A(H), the first redundancy table will provide a hold code of 0 1 1 1 1 because a much higher payoff can be awarded when a royal flush is drawn instead of a straight. However, the second redundancy table will provide a hold code of 1 1 1 1 1 because this hold code guarantees a winning card combination, here a straight. The player may choose which hold strategy to use prior to play or after the initial cards are dealt.
The present invention further includes the methods used to create the auto-hold tables used by gaming device 10. An auto-hold table is the table that stores the hold codes for a particular game or pay table. In the present invention, the master table is an auto-hold table when used without a redundancy table; however, when used, the redundancy table is an auto-hold table.
When using a redundancy table with a master table, the master table is created using the following method. The first step in the method includes setting the Hand Number and Redundancy Table Index to zero. The next step of the method includes converting the Hand Number to a hand or game situation any suitable method such as the method disclosed in U.S. patent application Ser. No. 10/066,496, filed on Dec. 15, 2001. Then, the method includes changing the suits of the hand or game situation in every possible way. For a game situation that has only one suit, this step includes changing the cards of the suit to each of the four suits. For a game situation with all four suits there are twenty-four different suit combinations. For each new hand generated when changing the suits, the New Hand Number is found any suitable method such as the method disclosed in U.S. patent application Ser. No. 10/066,496, filed on Dec. 15, 2001.
According to the method, if the New Hand Number is less than the current Hand Number, the Redundancy Table Index for the New Hand Number is retrieved and stored in the master table under the index of the Hand Number. The method then includes incrementing the Hand Number and repeating the method starting with the step of converting the Hand Number to a hand or game situation.
According to the method, if no New Hand Numbers are lower than the current hand number, the current Redundancy Table Index is stored in the master table under the index of the Hand Number. Then the method includes incrementing the Hand Number and Redundancy Table Index and repeating the method starting with the step of converting the Hand Number to a hand or game situation.
The above steps are repeated until the Hand Number reaches the number of possible hands. At this point the master table for use with a redundancy table has been created.
The method used to create an auto-hold table providing the hold codes for the best expected value for each game situation includes the following steps. First the method includes creating a temporary pay table. A pay table as shown in
To start building the auto-hold table, the method includes starting with the auto-hold table's first entry. If the auto-hold table is a master table, the method includes converting the index number of the entry into a hand or game situation using any suitable method such as the method disclosed in U.S. patent application Ser. No. 10/066,496, filed on Dec. 15, 2001. If the auto-hold table is a redundancy table, the method includes finding an entry in the master table that corresponds to that redundancy table index, and then the master table entry is converted into a hand or game situation.
Next, the method includes applying every possible hold code to the hand or game situation except for hold code 0 0 0 0 0, for example 0 0 0 0 1, 0 0 0 1 1, etc. As each hold code is applied, the method includes calculating every possible outcome of the draw for that particular hold code. Next, the method includes adding the payouts for every possible outcome for that particular hold code and dividing by the total number of possible outcomes for that hold code. This value is the Expected Value for that hold code.
The method of creating the auto-hold tables also includes computing the Expected Value for the hold code indicating to hold nothing or 0 0 0 0 0. To compute this Expected Value, the method includes adding all the payouts for the other possible hold codes; this value is the Total Payouts For This Hand. The method then includes subtracting the Total Payouts For This Hand from the Total Payouts and then dividing this value by the total number of outcomes for hold code 0 0 0 0 0; this value is the Expected Value for hold code 0 0 0 0 0. The method of creating the auto-hold table includes storing in the table the hold code with the highest Expected Value for each game situation and repeating the above process for each auto-hold table index until the table is complete.
For example, the method can be demonstrated to calculate the Expected Value for the hand or game situation 4(H) A(H) K(S) T(S) J(S). First, according to the method, a pay table is created such as the pay table illustrated in
Next, according to the method the Total Payouts For This Hand, in this example the game situation 4(H) A(H) K(S) T(S) J(S), is set to zero. Then, each hold code is assigned the binary number associated with that hold code; for example 0 0 0 0 0 is 0, 0 0 0 0 1 is 1, 1 1 1 1 1 is 31, etc. Then, the method includes starting with hold code 1 and setting the Total Payouts For This Hold Code to zero.
Next, the method requires the evaluation every possible outcome for this hold code applied to this hand or game situation and adding the payout for all these possible outcomes. For example, several outcomes yield a payout for hold code number 7 or 0 0 1 1 1 when applied to the game situation 4(H) A(H) K(S) T(S) J(S). Forty-five outcomes yield a flush. According to the pay table a flush has a payout of six. These flush outcomes contribute forty-five times six, or two hundred seventy to the Total Payouts For This Hold Code. Also, nine outcomes yield a three-of-a-kind, each with a payout of three, contributing a total of twenty-seven to the Total Payouts For This Hold Code. Twenty-seven outcomes yield a jacks or better, each with a payout of two, contributing a total of fifty-four to the Total Payouts For This Hold Code. Finally, one hundred twenty-nine outcomes yield a two-pair, each with a payout of one, contributing a total of one hundred twenty-nine to the Total Payouts For This Hold Code. Thus, the Total Payouts For This Hold Code is four hundred eighty.
According to the method, the Expected Value for a hold code is the Total Payouts For This Hold Code divided by the total possible outcomes for the hold code. In this example, hold code 7 or 0 0 1 1 1 has Choose (47, 2) or 47!/(45!* 2!) or 1081 possible outcomes. Thus, the Expected Value for hold code 7 is 480/1081 or 0.444.
According to the method, after performing the above steps for all the hold codes numbered 1 through 31, the Expected Value for hold code number zero or 0 0 0 0 0 for the game situation 4(H) A(H) K(S) T(S) J(S) is calculated. According to the method, the Total Payouts For This Hold Code for hold code zero is equal to Total Payouts minus Total Payouts For This Hand. The Expected Value is then the Total Payouts For This Hold Code divided by the total possible outcomes. For hold code zero, there are Choose (47, 5) or 1,533,939 possible outcomes. Using this method of calculating the Expected Value for hold code number zero eliminates the need to calculate 1,533,939 out of 2,598,960 total possible outcomes, or 59% of the total possible outcomes. This a significant reduction in the processing needed to calculate a mathematically precise table. The above example is repeated for every possible hand or game situation to complete the auto-hold table.
If creating an auto-hold table providing the hold codes for the best chance to obtain a winning combination from the draw, the above method applies except to include calculating a Winning Combination Value instead of an Expected Value. In this embodiment, the method includes adding up the number of possible outcomes that create a winning combination for that particular hold code and dividing by the total number of possible outcomes. This value is the Winning Combination Value for that hold code.
To compute the Winning Combination Value for the hold code indicating to hold nothing or 0 0 0 0 0, the method includes adding the number of winning combinations for all the other hold codes and subtracting this value from the total number of possible winning outcomes. The method then includes dividing this value by the total number of possible winning outcomes; this value is the Winning Combination Value of hold code 0 0 0 0 0. The hold code with the highest Winning Combination Value for the game situation is stored in the auto-table table. The method of creating the auto-hold table includes repeating this process for each auto-hold table index until the table is complete. It should be appreciated that different methods of creating an auto-hold table for different hold strategies can also be used.
This exhaustive calculation of the mathematically optimal or best suggestions for what to hold for any game situation only needs to be performed once for each game or pay table. After being calculated, the table is stored in data storage device 40 and can be accessed by gaming machine 10 during game play without any further calculation. Furthermore, when a redundancy table is used, the number of calculations necessary to create the auto-hold table is reduced because only one calculation is needed for the hands or game situations that are the same but for the suit. Another advantage is that by using the temporary pay table, as noted above, the processing needed to calculated the Expected Value or Winning Combination Value for hold code 0 0 0 0 0 is greatly reduced.
It should be appreciated that the above method of creating a mathematically precise auto-hold table can be applied to blackjack games or poker games with different numbers of cards or other types of decks such as using wild cards, jokers, or multiple decks. Further, the method can be applied to slot-type games where one or more reels can be held before re-spinning the others. To be applied, the method needs a finite number of possible outcomes, and the finite number of possible outcomes must be within a reasonable size to be stored in data storage device 40. The sizes of the master and redundancy tables will vary, but the methods of creating and using the tables remain applicable.
It should be understood that various changes and modifications to the presently preferred embodiments described herein will be apparent to those skilled in the art. Such changes and modifications can be made without departing from the spirit and scope of the present invention and without diminishing its intended advantages. It is therefore intended that such changes and modifications be covered by the appended claims.
Number | Name | Date | Kind |
---|---|---|---|
4448419 | Telnaes | May 1984 | A |
4582324 | Koza et al. | Apr 1986 | A |
4711451 | Pajak et al. | Dec 1987 | A |
5033744 | Bridgeman et al. | Jul 1991 | A |
5085436 | Bennett | Feb 1992 | A |
5102137 | Ekiert | Apr 1992 | A |
5108099 | Smyth | Apr 1992 | A |
5401023 | Wood | Mar 1995 | A |
5411271 | Mirando | May 1995 | A |
5511781 | Wood et al. | Apr 1996 | A |
5511784 | Furry et al. | Apr 1996 | A |
5704835 | Dietz, II | Jan 1998 | A |
5779545 | Berg et al. | Jul 1998 | A |
5871400 | Yfantis | Feb 1999 | A |
5873781 | Keane | Feb 1999 | A |
5967893 | Lawrence et al. | Oct 1999 | A |
5967894 | Kinoshita et al. | Oct 1999 | A |
6024642 | Stupak | Feb 2000 | A |
6062981 | Luciano, Jr. | May 2000 | A |
6117009 | Yoseloff | Sep 2000 | A |
6159096 | Yoseloff | Dec 2000 | A |
6193607 | Kay | Feb 2001 | B1 |
6196547 | Pascal et al. | Mar 2001 | B1 |
6275586 | Kelly | Aug 2001 | B1 |
6290601 | Yamazaki et al. | Sep 2001 | B1 |
6343989 | Wood et al. | Feb 2002 | B1 |
6347795 | De Leljer | Feb 2002 | B1 |
6422940 | Walker et al. | Jul 2002 | B1 |
6477251 | Szrek et al. | Nov 2002 | B1 |
6537150 | Luciano et al. | Mar 2003 | B1 |
6884168 | Wood et al. | Apr 2005 | B2 |
6923719 | Wolf | Aug 2005 | B2 |
20010003710 | Abramopoulos et al. | Jun 2001 | A1 |
20010055989 | Thomas | Dec 2001 | A1 |
20020019253 | Reitzen et al. | Feb 2002 | A1 |
20020037762 | Wood et al. | Mar 2002 | A1 |
20020103021 | Wood et al. | Aug 2002 | A1 |
20020125641 | Moody | Sep 2002 | A1 |
20040023713 | Wolf et al. | Feb 2004 | A1 |
20060211471 | Walker et al. | Sep 2006 | A1 |
Number | Date | Country |
---|---|---|
2 062 922 | May 1981 | GB |
2 112 984 | Dec 1981 | GB |
2 117 155 | Oct 1983 | GB |
2 165 385 | Apr 1986 | GB |
Number | Date | Country | |
---|---|---|---|
20040063483 A1 | Apr 2004 | US |