Open Side Menu Go to the Top
Register
Detecting Bots and Collusion [Programmer Discussion] Detecting Bots and Collusion [Programmer Discussion]

06-13-2015 , 10:15 PM
Fair point. Although we're back to needing to store the data to catch instances of different humans on the same account.
Detecting Bots and Collusion [Programmer Discussion] Quote
06-14-2015 , 03:27 PM
Detecting Bots is the hard part of the equation.

Re: Detecting collusion

1. Length of time being an account holder & identity verification.

2. Number of transfers

3. Frequency of play with people where transfers have been sent or received

4. Frequency of play with anyone the player has ever played with

5. Number of deposits

6. Number of cash outs

7. Player and/or hand reported for suspected collusion by another player

8. Location

9. Location manipulation and accuracy- test of deceptive nature toward others.

10. IP mapping proximity score. To help determine if a tournament has a normal amount of entrants from any one location relative to the player base and average players from that location system wide.

11. Rake paid

12. Prohibited software use

13. Game profit and average ROI- Unusual changes and oddly high ROI/profit players should be investigated more thoroughly.

14. Cross linking connections in weak connection situations- If two players disconnect at the same time, and never come back or reconnect at the same/similar times, it can be evidence of someone(s) playing from the same location on proxies or anonymizing services.

15. Players continually winning and/or winning at an abnormal rate with weak hands versus the same players and/or stronger hands.

16. Chip dumping
a. This could possibly cheaters trying to cover up their tracks before cashing out, or some other nefarious reason.
b. How to spot: This can be very difficult to spot when it is done well. You really need to pick up a pattern here by observing the same two players doing it more than once. Observing something only once is hardly proof and as long as the players are not too blatant, all you are left with is the suspicion that something did not feel right.

17. Scrutinize new accounts and lower volume players- This covers people that would keep creating accounts to cheat, as they wouldn’t want their stats to build up too long. The longer they cheat under the same username, the more likely they are to get caught.

18. High volume players have likely already been screened many times, as they are high volume players- you could scrutinize them a little less if they’ve had no infractions in the past.

19. Two or more players sitting down vs a mark(s) then immediately leaving when the mark leaves.

20. Check if player plays differently against another player(s) across all data points possible. This can be done by comparing their average HUD stats with hands in which he played against specific players.

21. Anomalous (odd) plays

22. Card Sharing
a. People sharing hole cards.
b. How to spot: You could spot this by finding people folding good hands or draws to already made better hands. A player is more likely for fold or check if he knows his partner has a better hand or his outs are no good.
c. Best hand play- Best hand play involves two or more players communicating their hand values to each other and the other weaker hands that would have otherwise played then drop out and just let the best hand play.

23. Pot Building
a. The cheats raise and re-raise more often to build the pot, squeezing every chip/cent from the mark(s) that they possibly can by pushing them out of the hand.
b. This can be spotted if someone is continually raising or re-raising a weak hand or draw.

24. Squeeze Play percentages against certain player compared to their average.

25. Spotting-
a. Spotting is the process of placing a passive player (not necessarily a team member) into a game so that if need be, you can change seats if you need to get position over a certain opponent or you want to stop them from getting position over you.
b. The "player" buys in for the absolute minimum with the other players money and merely occupies a seat so that at just the right time, a strategic seat change can be effected thus increasing the real players theoretical earn rate in this game.
c. The course of the game is being interrupted by this minimum buy-in non- competing passive player. This practice would be far more effective in high stakes big bet poker especially in games where position is crucial like pot limit Omaha and no-limit hold'em for instance.

26. Middling
a. This involves more than one player as many cheating techniques often do. This is the process of catching one or more players in the middle with hands that are inferior to a known team member’s hand. Let’s say for instance that a team player has 8-4 in early position in limit hold’em, a hand they would normally pass. They limp in hoping to entice other players into the pot after them. They also know that the other team member has been dealt pocket aces in the cut-off. Two other middle position players also limp because they maybe anticipate a multi-way pot. The aces raise but now the 8-4 re-raises thus sweetening the pot for the premium pair. If the other two hands drop out then it has still earned money and even if they call, the aces have an awful lot of equity in this hand.
b. The aces end up being in the pot with three other players, one of which is a team member. If the 8-4 flops something wonderful then the aces can assist him instead. More often than not the aces will be the superior hand and this play does not have to work every time for it to be a winner. Aces against two other hands will win more often than one hand in three and this gives the hand a positive expectation.
c. How to spot it: Beware of the same players being in raised pots, they may be loose maniac types but then again they may not. When the same players repeatedly show pre-flop strength only for one player to meekly fold at some later point in the hand, beware because this may indeed be happening.

27. Channeling
a. Once again this is a technique that can be used in tournaments but the bigger the team, the more effective it is. Channeling is the process of getting as many team members through to the latter stages of a tournament so that many of the other cheating team play techniques can be utilized. For instance, let's take a very large tournament with 75 tables and over 700 players. This ten man team play the tournament extremely tightly unless they have premium hands.
b. What tends to happen is that the wilder and reckless players start to bite the dust and the field begins to compress. This means that as players are eliminated and tables are removed, the likelihood of team members being located to the same table increases. If several of the team members have caught some big hands along the way, then it is possible for half the team to still be around with only two tables left.
c. One of the disadvantages with this method of cheating is that it essentially makes it more difficult for any team member to accumulate a very large stack early on. This is because of the strategy that they are working to. However, the goal is survival and when this "scam" is executed well, it can be effective. On a very good day, half of the final table could be team members.

EDIT- Also, this and this:

Quote:
Originally Posted by AllJackedUp
We defeat datamining by having anonymous tables (ala bovada). The community can monitor for collusion or bots or superusers by having a permanent and unique ID number assigned to each player in the complete hand histories when they are available 48 hours later.

Another thought would be to simply have the sites assign seats for all cash games and SnGs rather than allowing us to game select and seat select. You want in a cash game? not a problem, just click-select the game/stakes and we'll put you in a seat (pretty much the same as what happens in live games). You want to play a SnG? not a problem, just click-select the game/stake and you'll be dropped into a game.

edit: the drawback, I think, is that few people are going to be motivated to comb through a database of anonymous player IDs. I mean, we comb through databases now to try and find exploitable edges versus other players, right? But that's not a potential gain if the database is anonymous player IDs.
Quote:
Originally Posted by AllJackedUp
and just to throw another one of my ideas into the mix: the games would be more enjoyable (and honest) if they were semi anonymous. By that I mean that I'd like to see a site where players are assigned a screen name when they log in (or, pick their own, whatever), but it only displays for 24 hours and then resets. That way, we know when a player leaves the game but then sits right back in; and we know if we're playing the same guy on multiple tables; etc. We can use reads, but they are only good for 24 hours and datamining is still defeated.

to sum up:
semi anonymous tables with 24hr screen names
full hand histories available 48 hours later with unique/permanent player IDs
randomly assigned seating in cash games and STTs

I just fixed online poker, you're welcome. :-)

Last edited by lookinforfish2; 06-14-2015 at 03:36 PM.
Detecting Bots and Collusion [Programmer Discussion] Quote
06-16-2015 , 01:32 PM
Pretty clear that data analysis is going to be most effective in this day and botting age (as Juk said). You just aren't going to catch any large bot ring on any hardware related stuff except possibly mouse data imo (with even that being unlikely) There are tons of useful features that could be used to identify bots or flag possible bots to look deeper into.
Detecting Bots and Collusion [Programmer Discussion] Quote
06-16-2015 , 11:53 PM
based mainly on superficial reading of bot ring investigations including the most recent PLO situation:

seems like the attempts at digging deeper into technical obstacles are just met with similar thwarts from the botters.

maybe the answers are in the above surface patterns + stats as per some flagging points system - if account accumulates > x points -> locked for thorough investigation.

some combination and interplay from the following:

1 - modelling stat patterns (usually winning bots have had some outlier stats - in this recent PLO ring for example 3b=sqz and BBagg:agg quite narrow). they would need the help of the community for this which they get without asking anyways and/or have in-house stat analysts.

2 - account creation to various thresholds:

a) grinding time/volume threshold patterns (if an account is created and plays 4-8 hours 5 days a week in the first 2 weeks add a flag / 4 hours + 7 days a week first 2 weeks etc)

b) stake level / winnings threshold with time/volume as a control (account created and playing 100NL+ with x winrate if totaltimeplayed is > y)

3 - risk factors:

a) country of origin (sorry - but it's true)

b) neighboring account creations (account 'bob' sets off an interplay of flags accumulating > x points within y time of accounts 'jim' 'sally' and 'mary' which also bypassed the same points threshold

c) time symmetries - time of play of accounts which have accumulated x points

The point flagging system can involve distinct pathways - so if there are nodes of parent importance the subsequent branches are somehow aligned with the initial overriding concern and filter down from it.

Example (point values arbitrary):

Account 1 - Bob - June 1 2015 creation
First 2 weeks of play include stakes >= 100NL(Flag, 2 points), Russia as country of origin(Flag, 5 points), >=30 hours/week of play average(Flag, 7 points), winning 2bb+(Flag, 9 points)

Total: 23 points

Points continue to develop over time - going up and down depending on certain factors (time of play changes, winrate changes, etc)

Account 2 - Jim - June 5 2015 creation
First 2 weeks of play include stakes >= 100NL(Flag, 2 points), Russia as country of origin(Flag, 5 points), >= 20 hours/week(No Flag), winning 2bb+(Flag, 9 points)

Total: 16 points

Both accounts passed 15 points within a 2 week period and were created within a 2 week period so their interplay is compared - both from Russia they each get +5 points, both winning 2bb + they each get +7 points, stakes +5 points

Account 1 new total = 40 points
Account 2 new total = 33 points

They both passed 30 points first 2 weeks of play and are locked for a deeper investigation - deeper stat analysis could start here for example, make them jump through more hoops to validate certain things (most winning players these days are some type of 'known' or have at least established some sort of 'presence' - not conclusively but just an example...doubt companies will care to go this deep*) or other more technical scopes.

Much of the above is rather flaky - point is, continuously butting heads technically - while maybe necessary to some extent - is likely not going to offer a solution outside some outlier technology.

Let the arms race be in squeezing them out as close to the account creation as possible rather than having some 'checks' that don't really check all that much and trying to create blanketing tech 'solutions'.

* all of this is assuming companies REALLY care - which may or may not be true - they care, but it's likely more of a we are willing to spend x% of revenues to thwart/'thwart' bots primarily to give a guise of caring while not wanting to go the extra mile to truly ensure a clean environment.
Detecting Bots and Collusion [Programmer Discussion] Quote
06-18-2015 , 03:51 AM
Elaborate on country of origin for me because I do not think that should hold any value in any algorithm for detection.

Specially when you can rent out servers to run many virtual machines with bots running in any country.

Last edited by iosys; 06-18-2015 at 04:00 AM.
Detecting Bots and Collusion [Programmer Discussion] Quote
06-18-2015 , 11:46 AM
Just as a side point, online poker will be dead at some point in the future when people figure out how to write programs to play unexploitably. It's already a bad idea to play HU limit, probably a bad idea to play HU NL, and eventually will be a bad idea to play any poker game at all. It's theoretically possible, and the profit motive clearly exists.

As for detecting bots, if you have a training set of data including large numbers of players and a subset you know have cheated, you may be able to feed data into an AI classification algorithm and come up with something reasonably accurate.

Problems are that a lot of the data you might want could be considered intrusive. Also, a lot of data may not be accessible for some players if for example they don't use a mouse for a legitimate reason (multitabler, disability etc).

You will also have to accept a certain number of false positives. Detecting cheaters without error is impossible.

Speculating on good ways to detect cheaters is interesting, but ultimately redundant without having access to good quality training data to start with.
Detecting Bots and Collusion [Programmer Discussion] Quote
06-18-2015 , 12:07 PM
Gullanian, I think you're short sighted on that belief.

As technology advances the possibility of new equipment for verifying if a person is using whatever we may be using, could very well appear.

Microsoft HoloLens for example will be pushing a new way of accessing information and using one's fingers to send commands.

There is a very real possibility of adding a human retina uuid verifier and other body sensors that can be used to analysis human patterns.

Sure, there will be people writing code to defeat the detectors but we may see new laws with constant technological advances defeating the effort.

I personally think everyone will be living comfortably; where nobody wants to play poker for a living, before online poker is dead from undetectable AI bots.

I do think you bring up a good point about disability but the person would be able in that situation provide proof to support.
Honestly poker is something that should be able to be played by a blind person and it is a real shame that there is no support for people in that condition.
Detecting Bots and Collusion [Programmer Discussion] Quote
06-18-2015 , 12:09 PM
Perhaps, but with all computing equipment hooked up on a network (the internet) you can always just fake the outputs. It will be a non stop game of cat and mouse, and between the leapfrogging there will be people taking other peoples money.

All games that have a possible +EV edge played for useful amounts of money online have a limited shelf line. Maybe next week, maybe in 20 years. If you're not face to face with your opponent(s), you cannot ever know for sure if you are playing a robot or not.
Detecting Bots and Collusion [Programmer Discussion] Quote
06-18-2015 , 12:20 PM
Yes, which is why I wrote that we do not know what new ways humans will be interacting with technology or how the equipment may be verifying the person by new legal laws.

Who knows what the future holds for lawful identification requirements where the technology can verify the person over a robot.

I morally think it is too extreme to have the requirements that i'm imagining but I personally wouldn't be surprised if the majority doesn't think the same.

I'm basically just saying that I believe its too naive to be certain at this point about anything and I do know how advanced AI will eventually be, which is why I think everyone will be living very comfortably before games are dead.
Detecting Bots and Collusion [Programmer Discussion] Quote
06-18-2015 , 12:35 PM
Gullanian, I completely agree. I remember having this discussion in CTH long ago. Although I probably overestimated how fast bot development would go.

That being said, who knows what happens in the future. Maybe there's a computer-human-connection that plugs into your brain that makes it possible to verify there is a human and they're not receiving inputs from someplace else.
Detecting Bots and Collusion [Programmer Discussion] Quote
06-18-2015 , 12:43 PM
Yes bring on the chip for my brain, so I can live in a reality where I tailored everything to my personal taste and I can update anything on whim.

Who knows if we are already living in a virtual reality but hell I want to be living in a virtual reality that I can alter.
Detecting Bots and Collusion [Programmer Discussion] Quote
06-18-2015 , 12:57 PM
Quote:
Originally Posted by iosys
Elaborate on country of origin for me because I do not think that should hold any value in any algorithm for detection.

Specially when you can rent out servers to run many virtual machines with bots running in any country.
no elaboration required.

It's interesting to think of the ways technology advancements will help or make this conversation maybe even more redundant but probably long enough away for client operators to continue putting in manual diligence.

It was 3 years ago or so now that researchers in LA successfully augmented the memory of a mouse and set their sites on doing the same with a chimpanzee next - that in itself will likely take some time - technology may be improving exponentially but unless that is somehow applied to human/legal administration of things progress in areas will be slow. (Commercially...military abilities are probably irrelevant to this discussion)

How to improve their algorithms might be a meaningful discussion - I'd assume they have some smart people working there already I guess keeping active players as consultants for player profiling help might make it better.

Ultimately I don't share in thinking that profitability will no longer exist anytime soon because of bots. Human players will just have to become more bot-like to to decrease that specific edge whatever it may mean but you mentioned that's not the direction you wanted this conversation going.

Last edited by Somnius; 06-18-2015 at 01:20 PM.
Detecting Bots and Collusion [Programmer Discussion] Quote
06-18-2015 , 07:12 PM
I take back my comment if poker bots start dreaming of higher stakes creative lines soon

http://www.theguardian.com/technolog...electric-sheep
Detecting Bots and Collusion [Programmer Discussion] Quote
06-19-2015 , 02:46 AM
Quote:
Originally Posted by Somnius
I take back my comment if poker bots start dreaming of higher stakes creative lines soon

http://www.theguardian.com/technolog...electric-sheep
Take a closer look at his post,
Quote:
Originally Posted by iosys
Yes bring on the chip for my brain, so I can live in a reality where I tailored everything to my personal taste and I can update anything on whim.

Who knows if we are already living in a virtual reality but hell I want to be living in a virtual reality that I can alter.
Everything can be simulated by a computer, given infinite time and computational power.

If humans every become capable of simulating something of the sort like the big bang. The possibility of our reality being virtual, dramatically increases and the same goes for the reality of the party that would have created our reality.
Detecting Bots and Collusion [Programmer Discussion] Quote
06-19-2015 , 07:20 AM
infinite time is a pretty big constraint tho imo
Detecting Bots and Collusion [Programmer Discussion] Quote
06-19-2015 , 07:23 AM
Quote:
Originally Posted by Mr.mmmKay
infinite time is a pretty big constraint tho imo
You really get stuck on that?
I'm disappointed in your post if I'm openly honest.
Detecting Bots and Collusion [Programmer Discussion] Quote
06-19-2015 , 07:48 AM
Everything can be simulated by a computer, but it will only be able to simulate the set of all possible outcomes, it will never be able to determine with 100% confidence the actual outcome due to quantum physics.
Detecting Bots and Collusion [Programmer Discussion] Quote
06-19-2015 , 07:57 AM
Quote:
Originally Posted by Gullanian
Everything can be simulated by a computer, but it will only be able to simulate the set of all possible outcomes, it will never be able to determine with 100% confidence the actual outcome due to quantum physics.
Who is referring to predicting outcomes but yourself?
Detecting Bots and Collusion [Programmer Discussion] Quote
06-19-2015 , 08:16 AM
Quote:
Originally Posted by iosys
You really get stuck on that?
I'm disappointed in your post if I'm openly honest.
By your post, if we are a simulation the beings that created us must've had and infinite amount of time
Detecting Bots and Collusion [Programmer Discussion] Quote
06-19-2015 , 08:21 AM
Quote:
Originally Posted by iosys
Who is referring to predicting outcomes but yourself?
No one, just thought we were having a discussion on what you're saying
Detecting Bots and Collusion [Programmer Discussion] Quote
06-19-2015 , 08:22 AM
Quote:
Originally Posted by Mr.mmmKay
By your post, if we are a simulation the beings that created us must've had and infinite amount of time
I never said that or referred to that in any way.

Expressing that logically it could be done with infinite time does not eliminate the possibility of doing in a finite amount.

Hope that clears anything up for you.

Quote:
Originally Posted by Gullanian
No one, just thought we were having a discussion on what you're saying
Well I agree with your statement, just wanted to make sure there was no confusion on my post.
Detecting Bots and Collusion [Programmer Discussion] Quote
06-23-2015 , 05:38 PM
I'm pretty sure that nobody is arguing, "anything humans can do bots can do" if you actually read the thread before you post.

The thing is that the majority if not all public bots that are running today are very much detectable because they are fairly new. In general "bots" are in the infancy years and even bots for popular games are considered the same because not much years have been spent on them compared to other areas in programming.

Nobody is going to be playing poker by the time we have these brain chips because there will be better things to do and currency will be worthless.

I'm curious to why you have to make new accounts all the time.
Detecting Bots and Collusion [Programmer Discussion] Quote

      
m