# Patent application title: System and method for permutation betting

##
Inventors:
Yiling Chen (Jersey City, NJ, US)
Evdokia Velinova Nikolova (Somerville, MA, US)
David Myer Pennock (Monroe Township, NJ, US)

Assignees:
Yahoo! Inc.

IPC8 Class: AA63F924FI

USPC Class:
463 25

Class name: Amusement devices: games including means for processing electronic data (e.g., computer/video game, etc.) credit/debit monitoring or manipulation (e.g., game entry, betting, prize level, etc.)

Publication date: 2008-09-11

Patent application number: 20080220855

Sign up to receive free email alerts when patent applications with chosen keywords are published SIGN UP

## Abstract:

An improved system and method is provided for permutation betting. To do
so, a permutation betting engine may be provided for providing services
to support betting on an outcome resulting in an ordinal ranking of
objects. Orders specifying a property of an ordering of one or more
positions of an object in an ordinal ranking of objects may be received.
The quantities for orders to accept may be determined, a response may be
sent to traders indicating the quantities of orders for payment, and the
amount owed for accepted orders may be collected. Winning accepted orders
may be identified and payout may be made for winning accepted orders.
Advantageously, the present invention may provide a framework for
efficiently optimizing an auctioneer's objective using linear programming
for a prediction market where the outcomes of interested events are
ordered statistics.## Claims:

**1.**A computer system for permutation betting, comprising:a permutation betting engine for providing services to support betting on an outcome resulting in an ordinal ranking of the objects, the services using a linear programming model to determine quantities of orders to accept; anda storage operably coupled to the permutation betting engine for storing a plurality of orders, each specifying a property of an ordering of one or more positions of at least one object in the ordinal ranking of the objects.

**2.**The system of claim 1 further comprising a model generator operably coupled to the permutation betting engine for creating a linear programming model used to determine quantities of orders to accept.

**3.**The system of claim 2 further comprising a linear programming analysis engine operably coupled to the model generator for determining a set of quantities of orders to accept.

**4.**A computer-readable medium having computer-executable components comprising the system of claim

**1.**

**5.**A computer-implemented method for permutation betting, comprising:receiving from a plurality of traders a plurality of orders specifying a property of an ordering of one or more positions of at least one object in an ordinal ranking of a plurality of objects;determining to accept at least one order of the plurality of orders specifying the property of the ordering of the one or more positions of the at least one object in the ordinal ranking of the plurality of objects;collecting an amount for the at least one order of the plurality of orders accepted from at least one trader of the plurality of traders;identifying at least one winning accepted order; andpaying out a winning amount for the at least one winning accepted order.

**6.**The method of claim 5 wherein determining to accept the at least one order of the plurality of orders specifying the property of the ordering of the one or more positions of the at least one object in the ordinal ranking of the plurality of objects comprises determining a quantity of the at least one order of the plurality of orders specifying the property of the ordering of the one or more positions of the at least one object in the ordinal ranking of the plurality of objects.

**7.**The method of claim 6 further comprising sending a response to at least one trader of the plurality of traders indicating the quantity of the at least one order of the plurality of orders placed by the at least one trader of the plurality of traders.

**8.**The method of claim 6 wherein determining the quantity of the at least one order of the plurality of orders specifying the property of the ordering of the one or more positions of the at least one object in the ordinal ranking of the plurality of objects comprises creating a linear programming model for determining an optimal set of one or more quantities of orders of the plurality of orders specifying the property of the ordering of the one or more positions of the at least one object in the ordinal ranking of the plurality of objects.

**9.**The method of claim 6 wherein determining the quantity of the at least one order of the plurality of orders specifying the property of the ordering of the one or more positions of the at least one object in the ordinal ranking of the plurality of objects comprises solving a linear programming model for determining an optimal set of one or more quantities of orders of the plurality of orders specifying the property of the ordering of the one or more positions of the at least one object in the ordinal ranking of the plurality of objects.

**10.**The method of claim 9 wherein solving the linear programming model for determining the optimal set of the one or more quantities of orders of the plurality of orders specifying the property of the ordering of the one or more positions of the at least one object in the ordinal ranking of the plurality of objects comprises solving the linear programming model for determining the optimal set of the one or more quantities of orders of the plurality of orders for maximizing a worst-case profit of an auctioneer.

**11.**The method of claim 6 wherein determining the quantity of the at least one order of the plurality of orders specifying the property of the ordering of the one or more positions of the at least one object in the ordinal ranking of the plurality of objects comprises creating a system of linear inequalities for finding a subset of the plurality of orders providing a nonnegative profit to an auctioneer for possible outcomes of the ordering in the ordinal ranking.

**12.**The method of claim 6 wherein determining the quantity of the at least one order of the plurality of orders specifying the property of the ordering of the one or more positions of the at least one object in the ordinal ranking of the plurality of objects comprises solving a system of linear inequalities for finding a subset of the plurality of orders providing a nonnegative profit to an auctioneer for possible outcomes of the ordering in the ordinal ranking.

**13.**The method of claim 5 wherein determining to accept the at least one order of the plurality of orders specifying the property of the ordering of the one or more positions of the at least one object in the ordinal ranking of the plurality of objects comprises determining to accept at least one divisible order of the plurality of orders.

**14.**The method of claim 5 wherein specifying the property of the ordering of the one or more positions of the at least one object in the ordinal ranking of the plurality of objects comprises using a logical statement to specify the ordering of the one or more positions of the at least one object in the ordinal ranking of the plurality of objects.

**15.**The A computer-readable medium having computer-executable instructions for performing the method of claim

**5.**

**16.**A computer system for permutation betting, comprising:means for receiving from a plurality of traders a plurality of orders specifying a property of an ordering of one or more positions of at least one object in an ordinal ranking of a plurality of objects;means for determining to accept at least one order of the plurality of orders specifying the property of the ordering of the one or more positions of the at least one object in the ordinal ranking of the plurality of objects;means for collecting an amount for the at least one order of the plurality of orders accepted from at least one trader of the plurality of traders; andmeans for paying out a winning amount for the at least one winning accepted order.

**17.**The computer system of claim 16 wherein means for determining to accept at least one order of the plurality of orders specifying the property of the ordering of the one or more positions of the at least one object in the ordinal ranking of the plurality of objects comprises means for determining a quantity of the at least one order of the plurality of orders.

**18.**The computer system of claim 16 wherein means for determining to accept at least one order of the plurality of orders specifying the property of the ordering of the one or more positions of the at least one object in the ordinal ranking of the plurality of objects comprises means for determining an optimal set of the one or more quantities of orders of the plurality of orders for maximizing a worst-case profit of an auctioneer.

**19.**The computer system of claim 16 wherein means for determining to accept at least one order of the plurality of orders specifying the property of the ordering of the one or more positions of the at least one object in the ordinal ranking of the plurality of objects comprises means for finding a subset of the plurality of orders providing a nonnegative profit to an auctioneer for possible outcomes of the ordering in the ordinal ranking.

**20.**The computer system of claim 16 wherein means for determining to accept at least one order of the plurality of orders specifying the property of the ordering of the one or more positions of the at least one object in the ordinal ranking of the plurality of objects comprises means for determining to accept at least one divisible order of the plurality of orders.

## Description:

**FIELD OF THE INVENTION**

**[0001]**The invention relates generally to computer systems, and more particularly to an improved system and method for permutation betting.

**BACKGROUND OF THE INVENTION**

**[0002]**In a permutation betting scenario, traders may wager on the final ordering of several competing candidates: for example, the outcome of a horse race. In a typical horse race, traders may bet on properties of the outcome like "horse A will win", "horse A will show, or finish in either first or second place", or "horses A and B will finish in first and second place, respectively". In practice at the racetrack, each of these different types of bets are processed in separate pools or groups. In other words, all the "win" bets are processed together, and all the "show" bets are processed together, but the bets specifying different properties of the outcome are not processed together in the same pool. This separation can hurt liquidity and information aggregation. For example, even though horse A is heavily favored to win, that may not directly boost the horse's odds to show.

**[0003]**Furthermore, existing horse-betting mechanisms restrict what participants can bet on. For example, existing horse betting mechanism may only allow participants to bet on which objects will be ranked at the first position or among the top two or three positions. Unfortunately, the more restrictive the betting mechanism may be for placing wagers, the less refined the information may be that the market can possibly aggregate.

**[0004]**However, supporting bidders to explicitly list the orderings that they would like to bet on may be both unnatural and intractable, because the number of orderings is n!, which is the number of rank order permutations of the n competing objects. Although full expressiveness allows participants to bet on any of the n! number of orderings, full expressiveness for permutation betting can be computationally costly.

**[0005]**Thus, there may be a tradeoff between expressiveness, computational cost, and liquidity for prediction markets. The more expressive the betting language may be, the more refined information the market can possibly aggregate. However, expressiveness is often accompanied by high computational cost and less of liquidity, which prevents efficient information aggregation.

**[0006]**What is needed is a system and method for a central exchange where the bets on different properties of the outcome may be processed together, thus aggregating liquidity and ensuring that information inference may occur automatically. Such a system and method should support an expressive betting mechanism with reasonable computational cost so that more information from market participants may be aggregated for supporting market liquidity.

**SUMMARY OF THE INVENTION**

**[0007]**Briefly, the present invention may provide a system and method for permutation betting. To do so, a permutation betting engine may be provided for providing services to support betting on an outcome resulting in an ordinal ranking of objects. In an embodiment, a permutation betting engine may include an operably coupled model generator for creating a linear programming model used to determine quantities of orders to accept. The permutation betting engine may also include a linear programming analysis engine operably coupled to the model generator in an embodiment for determining a set of quantities of orders to accept. In various embodiments, the permutation betting engine may determine an optimal set of quantities of orders to accept for achieving an auctioneer's objective, such as maximizing a worst-case profit of an auctioneer.

**[0008]**The present invention may provide a framework for efficiently optimizing an auctioneer's objective for a prediction market where the outcomes of interested events are ordered statistics. To do so, orders specifying a property of an ordering of one or more positions of an object in an ordinal ranking of objects may be received. The quantities for orders to accept may be determined, a response may be sent to traders indicating the quantities of orders for payment, and the amount owed for accepted orders may be collected. Winning accepted orders may be identified and payout may be made for winning accepted orders.

**[0009]**In an embodiment, a partial quantity of an order may be accepted and linear programming may be applied for determining an optimal set of one or more quantities of orders received and a response may be sent to traders indicating the quantities of orders accepted. In various embodiments, an auctioneer's objective may be optimized in determining the quantity of orders to accept. For example, an auctioneer's objectives may include maximizing the total trading volume in the market or maximizing the worst-case profit of the auctioneer. In another embodiment, a subset of orders may be found that provide a nonnegative profit to an auctioneer for possible outcomes of the ordering in the ordinal ranking.

**[0010]**The present invention may support many applications for a prediction market where the outcomes of interested events are ordered statistics. An online application may use the present invention for betting on an ordinal ranking of candidates as an outcome of a competition between candidates, such as betting on an outcome of a horse race or the outcome of an election among candidates. Moreover, traders may also bet on arbitrary properties of the final ordering in various embodiments. A logical statement about an ordering of positions of an object in an ordered list may be used to specify arbitrary properties of the final ordering.

**[0011]**Furthermore, the present invention may accordingly be generally used in a central exchange where the bets on an ordinal ranking of objects as an outcome of a competition between objects may be processed together. This may advantageously result in aggregating liquidity and ensuring that informational inference may automatically occur. Other advantages will become apparent from the following detailed description when taken in conjunction with the drawings, in which:

**BRIEF DESCRIPTION OF THE DRAWINGS**

**[0012]**FIG. 1 is a block diagram generally representing a computer system into which the present invention may be incorporated;

**[0013]**FIG. 2 is a block diagram generally representing an exemplary architecture of system components for permutation betting, in accordance with an aspect of the present invention;

**[0014]**FIG. 3 is a flowchart generally representing the steps undertaken in one embodiment for permutation betting, in accordance with an aspect of the present invention; and

**[0015]**FIG. 4 is a flowchart generally representing the steps undertaken in an embodiment for applying linear programming to determine the quantities of orders received for permutation betting, in accordance with an aspect of the present invention.

**DETAILED DESCRIPTION**

**Exemplary Operating Environment**

**[0016]**FIG. 1 illustrates suitable components in an exemplary embodiment of a general purpose computing system. The exemplary embodiment is only one example of suitable components and is not intended to suggest any limitation as to the scope of use or functionality of the invention. Neither should the configuration of components be interpreted as having any dependency or requirement relating to any one or combination of components illustrated in the exemplary embodiment of a computer system. The invention may be operational with numerous other general purpose or special purpose computing system environments or configurations.

**[0017]**The invention may be described in the general context of computer-executable instructions, such as program modules, being executed by a computer. Generally, program modules include routines, programs, objects, components, data structures, and so forth, which perform particular tasks or implement particular abstract data types. The invention may also be practiced in distributed computing environments where tasks are performed by remote processing devices that are linked through a communications network. In a distributed computing environment, program modules may be located in local and/or remote computer storage media including memory storage devices.

**[0018]**With reference to FIG. 1, an exemplary system for implementing the invention may include a general purpose computer system 100. Components of the computer system 100 may include, but are not limited to, a CPU or central processing unit 102, a system memory 104, and a system bus 120 that couples various system components including the system memory 104 to the processing unit 102. The system bus 120 may be any of several types of bus structures including a memory bus or memory controller, a peripheral bus, and a local bus using any of a variety of bus architectures. By way of example, and not limitation, such architectures include Industry Standard Architecture (ISA) bus, Micro Channel Architecture (MCA) bus, Enhanced ISA (EISA) bus, Video Electronics Standards Association (VESA) local bus, and Peripheral Component Interconnect (PCI) bus also known as Mezzanine bus.

**[0019]**The computer system 100 may include a variety of computer-readable media. Computer-readable media can be any available media that can be accessed by the computer system 100 and includes both volatile and nonvolatile media. For example, computer-readable media may include volatile and nonvolatile computer storage media implemented in any method or technology for storage of information such as computer-readable instructions, data structures, program modules or other data. Computer storage media includes, but is not limited to, RAM, ROM, EEPROM, flash memory or other memory technology, CD-ROM, digital versatile disks (DVD) or other optical disk storage, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices, or any other medium which can be used to store the desired information and which can accessed by the computer system 100. Communication media may include computer-readable instructions, data structures, program modules or other data in a modulated data signal such as a carrier wave or other transport mechanism and includes any information delivery media. The term "modulated data signal" means a signal that has one or more of its characteristics set or changed in such a manner as to encode information in the signal. For instance, communication media includes wired media such as a wired network or direct-wired connection, and wireless media such as acoustic, RF, infrared and other wireless media.

**[0020]**The system memory 104 includes computer storage media in the form of volatile and/or nonvolatile memory such as read only memory (ROM) 106 and random access memory (RAM) 110. A basic input/output system 108 (BIOS), containing the basic routines that help to transfer information between elements within computer system 100, such as during start-up, is typically stored in ROM 106. Additionally, RAM 110 may contain operating system 112, application programs 114, other executable code 116 and program data 118. RAM 110 typically contains data and/or program modules that are immediately accessible to and/or presently being operated on by CPU 102.

**[0021]**The computer system 100 may also include other removable/non-removable, volatile/nonvolatile computer storage media. By way of example only, FIG. 1 illustrates a hard disk drive 122 that reads from or writes to non-removable, nonvolatile magnetic media, and storage device 134 that may be an optical disk drive or a magnetic disk drive that reads from or writes to a removable, a nonvolatile storage medium 144 such as an optical disk or magnetic disk. Other removable/non-removable, volatile/nonvolatile computer storage media that can be used in the exemplary computer system 100 include, but are not limited to, magnetic tape cassettes, flash memory cards, digital versatile disks, digital video tape, solid state RAM, solid state ROM, and the like. The hard disk drive 122 and the storage device 134 may be typically connected to the system bus 120 through an interface such as storage interface 124.

**[0022]**The drives and their associated computer storage media, discussed above and illustrated in FIG. 1, provide storage of computer-readable instructions, executable code, data structures, program modules and other data for the computer system 100. In FIG. 1, for example, hard disk drive 122 is illustrated as storing operating system 112, application programs 114, other executable code 116 and program data 118. A user may enter commands and information into the computer system 100 through an input device 140 such as a keyboard and pointing device, commonly referred to as mouse, trackball or touch pad tablet, electronic digitizer, or a microphone. Other input devices may include a joystick, game pad, satellite dish, scanner, and so forth. These and other input devices are often connected to CPU 102 through an input interface 130 that is coupled to the system bus, but may be connected by other interface and bus structures, such as a parallel port, game port or a universal serial bus (USB). A display 138 or other type of video device may also be connected to the system bus 120 via an interface, such as a video interface 128. In addition, an output device 142, such as speakers or a printer, may be connected to the-system bus 120 through an output interface 132 or the like computers.

**[0023]**The computer system 100 may operate in a networked environment using a network 136 to one or more remote computers, such as a remote computer 146. The remote computer 146 may be a personal computer, a server, a router, a network PC, a peer device or other common network node, and typically includes many or all of the elements described above relative to the computer system 100. The network 136 depicted in FIG. 1 may include a local area network (LAN), a wide area network (WAN), or other type of network. Such networking environments are commonplace in offices, enterprise-wide computer networks, intranets and the Internet. In a networked environment, executable code and application programs may be stored in the remote computer. By way of example, and not limitation, FIG. 1 illustrates remote executable code 148 as residing on remote computer 146. It will be appreciated that the network connections shown are exemplary and other means of establishing a communications link between the computers may be used.

**Permutation Betting**

**[0024]**The present invention is generally directed towards a system and method for permutation betting. More particularly, a framework for a prediction market may be provided for efficiently optimizing an auctioneer's objective where the outcomes of interested events are ordered statistics. As used herein, a prediction market may mean an information market, a securities market, a contingent claims or contract market, an event market or futures, idea futures, an auction market, and so forth. Orders may mean herein any description of bets including terms of prices and shares, odds, payoff vectors, and the diverse array of descriptions practiced in financial and gambling circles.

**[0025]**Orders specifying a property of an ordering of one or more positions of an object in an ordinal ranking of objects may be placed using an expressive language. For instance, a logical statement about an ordering of positions of an object in an ordered list may be used to specify arbitrary properties of the final ordering. In an embodiment, a partial quantity of an order may be accepted and linear programming may be applied for determining an optimal set of one or more quantities of orders submitted and a response may be sent to traders indicating the quantities of order accepted. Winning accepted orders may be identified and payout may be made for winning accepted orders.

**[0026]**As will be seen, an auctioneer's objective may be optimized in various embodiments in determining the quantity of orders to accept. For example, an auctioneer's objectives may include maximizing the total trading volume in the market or maximizing the worst-case profit of the auctioneer. As will be understood, the various block diagrams, flow charts and scenarios described herein are only examples, and there are many other scenarios to which the present invention will apply.

**[0027]**Turning to FIG. 2 of the drawings, there is shown a block diagram generally representing an exemplary architecture of system components for permutation betting. Those skilled in the art will appreciate that the functionality implemented within the blocks illustrated in the diagram may be implemented as separate components or the functionality of several or all of the blocks may be implemented within a single component. For example, the functionality of the linear programming analysis engine 208 may be implemented as a separate component from the permutation betting engine 204. Moreover, those skilled in the art will appreciate that the functionality implemented within the blocks illustrated in the diagram may be executed on a single computer or distributed across a plurality of computers for execution.

**[0028]**In various embodiments, a computer 202, such as computer system 100 of FIG. 1, may include a permutation betting engine 204 operably coupled to storage 210. In general, the permutation betting engine 204 may be any type of executable software code such as a kernel component, an application program, a linked library, an object with methods, and so forth. The storage 210 may be any type of computer-readable media and may store orders 212 that may include information such as a bid 214 and a quantity 216.

**[0029]**The permutation betting engine 204 may provide services for supporting betting on the outcome of a competition among several candidates where the outcome results in an ordinal ranking of the candidates. The state space may include the mutually exclusive and exhaustive permutations of the competing candidates. In an embodiment, the orders 212 may be either a buy order or a sell order and may be represented by a description of the order for sale or purchase and may include a quantity and bid. The order description may specify a commodity, a security, or more generally, the outcome of an event. The permutation betting engine 204 may include a model generator 206 for creating a linear programming model used to determine quantities of orders to accept, and a linear programming analysis engine 208 for choosing quantities of orders to accept. Each of these modules may also be any type of executable software code such as a kernel component, an application program, a linked library, an object with methods, or other type of executable software code.

**[0030]**There are many applications which may use the present invention for betting on an ordinal ranking of candidates as an outcome of a competition between candidates. For example, an application may use the present invention for supporting a prediction market for betting on an outcome of a horse race or the outcome of an election among candidates. In the example of an election, traders may bet on a final ordering of n! possible orderings of candidates. In various embodiments, traders may also bet on arbitrary properties of the final ordering, for example "candidate D will win", "candidate D will finish in either first place or last place", "candidate D will defeat candidate R", "candidates D and R will both defeat candidate L", etc. The goal of the prediction market may be to search among the offers to find two or more that together form an agreeable match. In particular, this matching problem can be set up as a linear program, where an auctioneer may determine the quantity of orders to accept. Those skilled in the art will appreciate that the present invention may accordingly be generally used in a central exchange where the bets on an ordinal ranking of candidates as an outcome of a competition between candidates may be processed together. This may advantageously result in aggregating liquidity and ensuring that informational inference may automatically occur.

**[0031]**FIG. 3 presents a flowchart generally representing the steps undertaken in one embodiment for permutation betting. At step 302, buy orders for contracts specifying bids for a property of an ordered list of objects may be received. For example, the objects could be horses participating in a race and the buy orders may be for contracts betting on properties of the list of horses in increasing order of their finishing times. A trader may place an order specifying a property of the outcome like "horse A will win", "horse A will show, or finish in either first or second place", or "horses A and B will finish in first and second place, respectively". In general, there may be any logical statement about an ordering of positions of an object in an ordered list.

**[0032]**Moreover, a framework may be implemented in an embodiment where traders propose to buy securities that pay $1 if and only if some property of the final ordering is true. In this embodiment, traders may place orders specifying the price they are willing to pay per share and the number of shares they would like to purchase.

**[0033]**At step 304, the quantities of orders to accept may be determined. In various embodiments, a permutation betting engine may determine the quantity of orders to accept and may accept the bid of orders received. For instance, a permutation betting engine may treat a received order as a divisible order. A divisible order may mean part of an order and may include fractional shares. A divisible order may permit the trader to receive fewer shares than requested, as long as the constraint of the bid amount may be met. A permutation betting engine may determine the quantities of orders received for permutation betting by applying linear programming.

**[0034]**At step 306, a response indicating quantities of orders accepted may be sent to traders, and the bid amount for orders accepted may be collected at step 308. For instance, the amount for the orders may be collected using an electronic payment system such as a purchase order transaction system, electronic commerce system, or other type of online system that may accept payment. At step 310, accepted orders that win may be identified, and the winning bid amounts for accepted orders may be payed out at step 312. Payment may be made using an electronic payment system or other type of online system that may make payment.

**[0035]**FIG. 4 presents a flowchart generally representing the steps undertaken in an embodiment for applying linear programming to determine the quantities of orders received for permutation betting. In one embodiment, the permutation betting engine may determine whether trade can occur at no risk to the auctioneer by finding a subset of orders which accepted together may give a nonnegative profit to the auctioneer in every possible outcome. The auctioneer has to carefully choose which orders and what fractions of them to accept so as to be guaranteed a nonnegative profit in any future state. In another embodiment, the permutation betting engine can optimize some criterion in determining the quantity of orders to accept. An auctioneer's objectives may include maximizing the total trading volume in the market or the worst-case profit of the auctioneer.

**[0036]**At step 402, a linear programming model for the buy orders received according to the auctioneer's objective may be created, and the linear program may be solved at step 404. In general, an auctioneer may determine the quantities of orders received to accomplish a particular objective. For example, an auctioneer's objective in an embodiment may be to find a subset of orders that can be matched risk-free, namely a subset of orders which accepted together give a nonnegative profit to the auctioneer in every possible outcome. Or the auctioneer's objective in another embodiment may be to find the optimal match with respect to some criterion such as profit, trading volume, etc.

**[0037]**Consider orders which traders may submit to an auctioneer to be represented by an index set of bets or orders O. Each order i ε O may be represented by a triple (b

_{i,q}

_{i},φ

_{i}), where bi denotes how much the trader is willing to pay for a unit share of security φ

_{i}and q

_{i}is the number of shares of the security the trader wants to purchase at price b

_{i}. In an embodiment, a framework may be implemented where traders propose to buy securities that pay $1 if and only if some property of the final ordering is true, so that b

_{i}ε [0,1] such that a unit of the security pays off at most $1 when the event may be realized.

**[0038]**The auctioneer can accept the entire order, accept a divisible order (fraction of the order), or reject each order. Consider x

_{i}to represent the fraction of divisible order i ε O accepted, such that x

_{i}ε[0,1]. Furthermore, consider I

_{i}(s) to be an indicator variable for whether order i may be winning in state s, that is I

_{i}(s)=1 if the order is paid back $1 in state s and I

_{i}(s)=0 otherwise.

**[0039]**For an auctioneer's objective of finding a subset of orders that can be matched where there may be a nonnegative profit to the auctioneer in every possible outcome, the following system of linear inequalities may be solved:

**i**( b i - I i ( s ) ) q i x i ≧ 0 ,

**S**ε S, where there may exist a set of x

_{i}ε [0,1] for i ε O. If there is a solution to the system of linear inequalities, then it may be determined that a trade may occur where there may be a nonnegative profit to the auctioneer in every possible outcome.

**[0040]**In an embodiment for an auctioneer's objective to find the optimal match with respect to some criterion, an auctioneer objective may include maximizing the total trading volume in the market or maximizing the worst-case profit of the auctioneer. For instance, the following linear programming model may be created and solved for an auctioneer's objective of maximizing the worst-case profit of the auctioneer:

**max x i**, c c s . t . i ( b i - I i ( s ) ) q i x i ≧ c , .A-inverted. s .di-elect cons. S 0 ≦ x i ≦ 1 , .A-inverted. i .di-elect cons. O ,

**where there may exist an optimal set of x**

_{i}ε [0,1] for i ε O and the variable c may represent the worst-case profit for the auctioneer. In various embodiments, the optimization problem may need to be solved for simply determining the optimal set of orders and the optimal worst-case profit may remain unknown. A permutation betting engine may then send responses indicating quantities of orders accepted to traders.

**[0041]**Those skilled in the art will appreciate that other linear programming models may be created and solved for various objectives of an auctioneer, including maximizing the total trading volume in the market. As may now be understood, the framework provided may efficiently optimize an auctioneer's objective for a prediction market where the outcomes of interested events are ordered statistics. Any logical statement about arbitrary properties of an ordering of positions of an object in an ordered list may be accepted to support more fully expressive betting. By supporting such fully expressive betting, more refined information may be captured that may be aggregated by the market.

**[0042]**As can be seen from the foregoing detailed description, the present invention provides an improved system and method for permutation betting. Such a system and method may support many applications for betting on an outcome resulting in an ordinal ranking of the objects. Furthermore, the present invention may be generally used in a central exchange where the bets on an ordinal ranking of objects as an outcome of a competition between objects may be processed together. This may advantageously result in aggregating liquidity and ensuring that informational inference may automatically occur. As a result, the system and method provide significant advantages and benefits needed in contemporary computing.

**[0043]**While the invention is susceptible to various modifications and alternative constructions, certain illustrated embodiments thereof are shown in the drawings and have been described above in detail. It should be understood, however, that there is no intention to limit the invention to the specific forms disclosed, but on the contrary, the intention is to cover all modifications, alternative constructions, and equivalents falling within the spirit and scope of the invention.

User Contributions:

Comment about this patent or add new information about this topic: