Help - Search - Members - Calendar
Full Version: calling software developers, interests in plo8 bot?
FCP Poker Forum > Poker Strategy Forum > Omaha Poker
JacKingOff_suit
Just read a thread at the general forum that makes me think if anyone is interested in developing PLO8 or LO8 bot?

It's very difficult to develop a completely successful LHE bot because we are dealing with incomplete information, we are exploiting small edges in this game. For example, say at a HU situation, we have X1X2 hands at a Y1Y2Y3 board on the flop, there are 47x46/2 varieties of hands that our opponents can have. Then we need to compute our chance of winning against each of those hands under a variety of boards, Y1Y2Y3Y4Y5, ....

PLO8 (or LO8), is more complicated than holdem in analysis, but it makes it easier to play/win. What starting hands you need, what positions your at, how many cards will/will not help you on the flop, what's the probability that you can scoop, 1/4'ed, what hands can put you into a underdog, what hands you can be a favorite... can be easily computed/programmed. It's about exploiting big edges, so our bot will wait until we have a great possibility to win then it will start to make its bets.

I haven't read about the LHE bot articles much yet, so I am not sure if they will introduce how they will develop the bot. But if I were to develop this bot (I alone am impossible to do it, helps needed and hence this post), there will be 3 modules of software to be developed.

1. Network Interface Module This module deals with reading the cards dealt to you from the poker site, mimicking a click signal/interrupt to send your betting information back to the site, ... This can be done by listening to the port that transmits data back and forth from the pokersite. In fact, since HE poker bot has been developed, this module can be purchased cheaply. If not, any windows and socket programmers can write this portion of the codes together easily.
2. Player Analysis Module This module analyzes the other players' plays, it's similar to PT like recording players' VP$IP, .... information (or we can just develop a program that reads the PT's data that stores at your hard-drive, it's even more simple). Then at the end of each hand, we re-analyze how each player should had played accroding to their hands/positions and then classified their moves as intelligent/ok/stupid, etc. Again, this module can be developed easily.
3. Analysis Module This module is the toughest part, like I said before, it's about an determining the best move the bot can make, "What starting hands you need, what positions your at, how many cards will/will not help you on the flop, what's the probability that you can scoop or 1/4'ed, what hands can put you into a underdog, what hands you can be a favorite...".

Why do we want to have a PLO8/LO8 bot? the bottom line is, the more complicated the game (in terms of mathematics and less human factors) is, the easier it's to win and to develop such a software.


I just came up this rough idea. I need some software developer's helps as well as some O8 experts' helps (like Smash, ...). May be we can co-develop this bot together and profit together?

Reply here or PM me.
guinevar
QUOTE (JacKingOff_suit)
Just read a thread at the general forum that makes me think if anyone is interested in developing PLO8 or LO8 bot?

It's very difficult to develop a completely successful LHE bot because we are dealing with incomplete information, we are exploiting small edges in this game. For example, say at a HU situation, we have X1X2 hands at a Y1Y2Y3 board on the flop, there are 47x46/2 varieties of hands that our opponents can have. Then we need to compute our chance of winning against each of those hands under a variety of boards, Y1Y2Y3Y4Y5, ....

PLO8 (or LO8), is more complicated than holdem in analysis, but it makes it easier to play/win. What starting hands you need, what positions your at, how many cards will/will not help you on the flop, what's the probability that you can scoop, 1/4'ed, what hands can put you into a underdog, what hands you can be a favorite... can be easily computed/programmed. It's about exploiting big edges, so our bot will wait until we have a great possibility to win then it will start to make its bets.

I haven't read about the LHE bot articles much yet, so I am not sure if they will introduce how they will develop the bot. But if I were to develop this bot (I alone am impossible to do it, helps needed and hence this post), there will be 3 modules of software to be developed.

1. Network Interface Module This module deals with reading the cards dealt to you from the poker site, mimicking a click signal/interrupt to send your betting information back to the site, ... This can be done by listening to the port that transmits data back and forth from the pokersite. In fact, since HE poker bot has been developed, this module can be purchased cheaply. If not, any windows and socket programmers can write this portion of the codes together easily.
2. Player Analysis Module This module analyzes the other players' plays, it's similar to PT like recording players' VP$IP, .... information (or we can just develop a program that reads the PT's data that stores at your hard-drive, it's even more simple). Then at the end of each hand, we re-analyze how each player should had played accroding to their hands/positions and then classified their moves as intelligent/ok/stupid, etc. Again, this module can be developed easily.
3. Analysis Module This module is the toughest part, like I said before, it's about an determining the best move the bot can make, "What starting hands you need, what positions your at, how many cards will/will not help you on the flop, what's the probability that you can scoop or 1/4'ed, what hands can put you into a underdog, what hands you can be a favorite...".

Why do we want to have a PLO8/LO8 bot? the bottom line is, the more complicated the game (in terms of mathematics and less human factors) is, the easier it's to win and to develop such a software.


I just came up this rough idea. I need some software developer's helps as well as some O8 experts' helps (like Smash, ...). May be we can co-develop this bot together and profit together?

Reply here or PM me.


Crook.
Sluggo
This project suggestion is fascinating. An Omaha bot would be much more successful than a hold 'em bot because of the nut-peddling attitude and the reduced need to read opponents well.

It seems to be that a limit Omaha 8 bot would be simpler to program (thus, more cost-effective) for two primary reasons. Rest assured I have no clue what I'm typing about and have no bot-programming experience or reasoning to back it up. Also note that I am biased towards limit from my own playing experience (and lack of PLO8 experience).

First, adding pot manipulation to a bot would add another dimension of play that would be difficult to program and unnecessary (if limit were adopted).

Second, there are fewer betting options available to players. Because opponents are only presented with three betting alternatives at each decision, it becomes much easier to program how to respond to actions and also makes classifying and playing against classified opponents easier (no 'bets too little,' for instance). The analysis module would also become easier to program because there would be no need to determine if the bot should bet the pot or an exact amount less than the pot (just whether to bet or check).

Third, and probably less compelling, observing and classifying the betting patterns of opponents in limit tends to be less integral in supporting the win rates of limit Omaha 8 than of pot limit Omaha 8 (not to imply that it's not necessary in limit and necessary in pot limit; in both you can win just by playing the cards but observation and the associated playstyle change improves your win rate). This would help the bot by deemphasizing the amount of effort and knowledge needed to program the analysis module that uses information gathered by the player analysis module. More importantly, it would help buffer against a few other players observing and then exploiting any potential flaws with the bot. As we all know, limit is about pushing small edges and pot limit is about pushing bigger edges.

And finally, the limit hold 'em bot would take less work to adapt if the game was still limit. Is it really possible to cheaply purchase it and then just adapt parts and rewrite the analysis module?


Regardless of the game, I am interested in learning more about your project and might be willing to join (to help program, not to offer expert advice smile.gif). What language would this all be in? Do you have any experience doing anything like this before? Would any programmers need some? What stakes (and skill level) do you intend this bot to play at, ideally? If a working bot was developed, it seems like it would be impossible to lose at the low stakes at least. However, I have no idea how much work would be required to get a bot up and running. Do you have any appraisal of the time investment required?
JacKingOff_suit
I just came up with this idea, so I am not really well prepared. But discussions can help improving the idea.

What language would this all be in?

Since this is a Windows program (not embedded) where we have enough memories, an object-oriented analysis and design approach is better so that many classes can be reused (portability), code rewritting can be eaiser, ..., therefore, C++ is preferred. (I haven't used JAVA for many years, the time I used it it was way too slow because it had some virtual machine that makes it crossplatformable but slowing down its performance).

What language would u like?

Do you have any experience doing anything like this before?
No, but I did read some papers about bots.
http://www.cs.ualberta.ca/~darse/Papers/
http://www.cs.ualberta.ca/~games/poker/


Would any programmers need some?
Not sure exactly what you meant. But definitely need some socket programmers / hackers (I can do socket programming too, but not of this kind). I used some programs ("sniffer" or somthing) which analyze my IP packets and display the contents, so we need those kind of programmers to listen to the port that's from the poker site, extract the packet contents, and send information back to that port.

What stakes (and skill level) do you intend this bot to play at, ideally?
That's good question, I think another feature of this bot can do is like Poker Tracker which can log all the histories of all O8 tables, then it analyzes the profitable tables and then joins in.


Do you have any appraisal of the time investment required?
I really have no idea, it takes time, but O8/PLO8 will always be there. The project depends on how many people are interested in, if we can get some O8 experts to guide us, ... Programming parts are easy, but programming the winning bot without the expertise in O8 is a waste of time and money.

The best thing I can think of right now is to say have a O8 expert (like Smash) and 3 programmers (one of them must be a good hacker/socker programmer, unless we can download those bot codes somewhere). We started from the requirement phase where we can talk to the O8 expert on how to play say LO8, then we design it using UML, then code it in C++. We split the costs of the software development, and we share the return of our investment.

I will think about it more and post more later.
Sluggo
C++ is fine. However, I know little about socket programming; would we need a socket programmer if we were able to obtain the code for the HE bot? Reading those papers you mentioned was informative, but also implanted the fear of biting off more than can be chewed. How realistic would it be to get the HE bot? And how realistic would it be to modify it for O8 (rather than making a brand new one)?
akishore
i'd like to help, i think this is a great idea, but i think you'll be making a mistake by making this project public. this is DEFINITELY something you want to keep on the down low. any donkey who reads that we might be working on a bot might be crazy enough to somehow get us banned from sites, etc.

i'm just a student with limited experience at programming. i used to be really into it but haven't done much in about a year. still, i am fairly familiar with C++ and Java to a limited extent.

on a side note, one project i've been thinking about a lot is developing a video poker bot. here, all the information is at your disposal, and the only thing you need to do is perform a mathematical equation that checks all 36 possible moves you can make and determines the one with the highest EV in terms of payout structure. i don't know if it's already been done--it probably has--but i didn't find anything and i thought it would be interesting to make this program anyway, both for practical reasons and to brush up on old programming skills.

aseem
Chamonyx
See the impact a potential bot can have: If it wasn't for the possibility that the player was a bot I would probably not have won this one:

***** Hand History for Game *****
PL Omaha Hi/Lo -
Table Table abcd (No DP) (Real Money)
Seat 8 is the button
Total number of players : 10
Seat 1: V1 ( $466.44 )
Seat 2: Hero ( $335.90 )
Seat 4: BBMoo ( $537.98 )
Seat 6: xx ( $182.57 )
Seat 8: V2 ( $472.17 )
Seat 9: xx ( $969.94 )
Seat 10: xx $758.92 )
Seat 5: xx( $659.13 )
Seat 7: xx( $130.50 )
Seat 3: xx ( $447.10 )
xx posts small blind [$2].
xx posts big blind [$4].
** Dealing down cards **
Dealt to Hero [ 4s 4d Ac As ]
V1 calls [$4].
Hero calls [$4].
>You have options at Table 55027 (No DP) Table!.
xx folds.
xx folds.
xx folds.
xx folds.
[b]Spectator: everyone see V1
Spectator: he is confirmed a bot

xx folds.
V2 calls [$4].
SB calls [$2].
Spectator: watch out
BB checks.
** Dealing Flop ** [ Tc, 5d, 2s ]
SB checks.
BB checks.
V1 bets [$19].
[b]Spectator: if nobody gives a XXX then
Hero calls [$19].
V2 calls [$19].
[b]Spectator: i will just stfu i thought it would help u all
SB folds.
BB folds.
** Dealing Turn ** [ Jh ]
V1 bets [$74].
Hero calls [$74].
V2 calls [$74].
** Dealing River ** [ Qs ]
V1 checks.
Hero bets [$125].
V2 folds.
V1 folds.
Hero does not show cards.
Hero wins $421
Sluggo
QUOTE
We split the costs of the software development


What kind of costs are we talking about? Any estimates?
JacKingOff_suit
May be I should have added "potential" laugh.gif .

I am doing some research on the web, grabbed some codes, etc. I will PM you guys when I have made progress.

On the second thought, developing a bot is unethical, blah, blah, blah... So if anyone is watching this thread, OK, we are not doing it. We are just joking...
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Invision Power Board © 2001-2012 Invision Power Services, Inc.