The goal of this project is to be able to run simuluations and compare hands of poker to other hands of poker, in a game called "omaha" By a player's point of view a player holds 4 cards, and the "board" holds 5 cards. A player must choose exactly 2 cards from his hand and 3 cards from the board to make his strongest hand. From a programmers standpoint in calculating the best hand, each player represents 4c2 * 5c3 possibilities of hands (60 possibilities) in which the computer needs to find the combination with the highest hand ranking. to calculate a hand strength a hand must be sorted, then ranked in one of 4197 hand strengths. A hand strengh can be calculated as the rank of the hand in poker for the first digit .. and then the subsequent card ranks for each additional digit. For example .. [2 13 5 4] would represent "two pair kings over 5s with a 4 kicker" [6 10 6] would represent "full house tens over 6s" The program would need to take each player's hand and break it down into the 60 combinations. For each combination it needs to classify the hand as one of the 4197. Each player's hand is represented by the best ranking of the 60. Finally all of the player's best rankings are compared with each other's. If a player is the sole winner he gets the whole "pot" which can be represented as 1 point. If he shares the win he gets a fraction of that point. After 10,000 runs the statistics of how often each player's hands wins is returned as the result of the program. This program needs to be written in a low level language (probably assembler or maybe C) in order to achieve the proper speed. The necessary goal is to have the program run a simulation of 10,000 hands between 3 players and get a result within 1 second. This would be done on a Dual Quad-Core Xeon P4 2GHz machine. If you can somehow manage to use all the processors then fantastic, in the end it needs to give the result within one second. Please see attached file for full specs
## Deliverables
1) Complete and fully-functional working program(s) in executable form as well as complete source code of all work done.
2) Deliverables must be in ready-to-run condition, as follows? (depending on the nature? of the deliverables):
a)? For web sites or? other server-side deliverables intended to only ever exist in one place in the Buyer's environment--Deliverables must be installed by the Seller in ready-to-run condition in the Buyer's environment.
b) For all others including desktop software or software the buyer intends to distribute: A software? installation package that will install the software in ready-to-run condition on the platform(s) specified in this bid request.
3) All deliverables will be considered "work made for hire" under U.S. Copyright law. Buyer will receive exclusive and complete copyrights to all work purchased. (No GPL, GNU, 3rd party components, etc. unless all copyright ramifications are explained AND AGREED TO by the buyer on the site per the coder's Seller Legal Agreement).
## Platform
any os, just needs to run at the necessary speed.