¿Cuál es la mejor manera de describir la complejidad algorítmica de la detección de colusión para un sitio de póquer en línea de diez millones de jugadores?NP-Hard? ¿Complejidad algorítmica de la detección de colusión de póker en línea?
Supongamos (no creo que estas suposiciones hacen mucha diferencia así que siéntete libre de ignorarlos, pero sólo para aclarar):
- que el sitio tiene 10.000.000 de usuarios registrados.
- Que estos jugadores hayan jugado un total de 5 mil millones de manos.
- Que la única información que se le proporciona es la "base de datos de historial de manos del maestro" para el sitio, que contiene todas las tarjetas de jugadores y las acciones de apuestas para cada mano.
- En otras palabras, NO puede tomar atajos, como examinar direcciones IP, buscar patrones inusuales de rake/profit, etc.
- Supongamos que se le asigna una función que, cuando pasa un grupo de exactamente N (donde N es entre 2 y 10) jugadores, devuelve VERDADERO si TODOS los jugadores en el grupo han coludido JUNTOS. Si algunos, pero no todos los jugadores son coludidores, la función devuelve FALSO. Se realiza un valor de retorno de TRUE con (por ejemplo) 75% de confianza.
Su trabajo es producir una lista exhaustiva de cada jugador que está en colusión, junto con una lista completa de los jugadores con los que está coludido. Hace poco escuché que este problema se describe como NP-hard, pero ¿es esto exacto? A veces llamamos a las cosas "NP" o "NP-hard" que son simplemente "duras".
Gracias!
No tengo una respuesta (todavía?), Pero otra pregunta. :) Si llamo haveColluded ("Bob", "Jane", "Mary") y: 1. Bob coludió con Jane en la mano 1. 2. Bob coludió con Mary en la mano 2. 3. Jane coludió con Mary en la mano 3. (supongamos que esos son los únicos juegos que se juegan) ¿qué devuelve? –
En ese caso, suponiendo que Bob, Jane y Mary están sentados en la misma mesa, la función devuelve VERDADERO. Identificó un grupo de colusión de 3 jugadores y no todos los jugadores de ese grupo deben estar activos durante el subconjunto de manos que está mirando. Por supuesto, HaveColluded es algo "mágico" pero sentí que era necesario restringir el problema. Siéntase libre de plantear su propia definición de HaveColluded aquí si eso simplifica las cosas. :-) –
@Coding the Wheel: Si alguien más hubiera hecho esta pregunta, les hubiera dicho que te pregunten. :) –