การเอาชนะบอทโป๊กเกอร์


107

มีใหม่บอโป๊กเกอร์ที่มาเปิดที่เรียกว่าเป็นPokerPirate ฉันสนใจวิธีการสร้างสรรค์ใด ๆ ที่เว็บแอปพลิเคชันสามารถตรวจจับ / ขัดขวาง / เอาชนะบอทโป๊กเกอร์ได้ (นี่คือการอภิปรายทางวิชาการล้วนๆด้วยจิตวิญญาณเดียวกันกับที่ PokerPirate เขียนขึ้น)


8
ฉันคิดว่าคุณหมายถึง " วิธีอื่นๆ " เนื่องจากคำตอบด้านบน / แรกเป็นของคุณเอง :-)
David Johnstone

9
พูดคุยกับผู้เล่นแต่ละคน
Lasse V.Karlsen

2
@ Lasse: อืมยังไม่เพียงพอถ้าผู้เล่นเป็นบอทที่ผ่านการทดสอบของทัวริง
lornova

5
ไม่ว่าจะผ่านการทดสอบทัวริงหรือไม่ก็ตามก็ไม่ได้หยุดผู้สร้างบอทนั่งอยู่ที่โต๊ะและใช้เวลาทั้งหมดในการแชท
Tom Gullen

6
แนวทางที่ดีที่สุดคือการทำในสิ่งที่เวกัสทำ: ยึดกฎของเกมดังนั้นกลยุทธ์เดียวที่จะชนะคือบ้านแล้วเป็นบ้าน ณ จุดนั้นบอททำเงินได้เร็วขึ้นและคุณสามารถเลิกสนใจได้
BCS

คำตอบ:


209

การเอาชนะบอทจากมุมมองของเซิร์ฟเวอร์

  1. หลายเว็บไซต์โป๊กเกอร์ออนไลน์ใช้ popup แบ่งปันปัจจัยการผลิตที่จะถูกเรียกโดยกิจกรรมที่น่าสงสัย

  2. เว็บไซต์โป๊กเกอร์บางแห่งจะตรวจสอบเวลาและรูปแบบการเล่น (เช่นกรณีที่เลวร้ายที่สุดคือผู้เล่นที่เล่น 24x7 และ 16 โต๊ะอย่างต่อเนื่องมีโอกาสเล็กน้อยที่จะเป็นมนุษย์จริงๆ (อย่างไรก็ตามผู้เล่นบางคนมีความสามารถในการเล่นด้วยมือที่ใหญ่มาก ปริมาณที่สำหรับผู้ไม่มีประสบการณ์จะดูเหมือนเป็นบอท)

  3. โยนมันบกพร่อง หากคุณสงสัยว่าผู้เล่นเป็นบอทให้เปลี่ยนตำแหน่งการ์ดการเล่นทั้งหมดของพวกเขาโดยไม่กี่พิกเซลบนหน้าจอทำให้พวกเขามีสี / แบบ / ลวดลายที่แตกต่างกันสำหรับมือ 1/100 และดูว่ามันขว้างหรือไม่ หากไม่สามารถจับหน้าจอได้จะหมดเวลาในการตัดสินใจทั้งหมดและนั่นเป็นหลักฐานของบอทที่ค่อนข้างสรุปได้

  4. ระยะเวลาบอกว่าผู้เล่นคอมพิวเตอร์ตอบสนองต่อตัวเลือกในหน่วยมิลลิวินาทีในแต่ละครั้งโดยไม่หยุดคิดในการตัดสินใจครั้งใหญ่สิ่งนี้อาจน่าสงสัย

  5. การตรวจสอบตนเอง เว็บไซต์โป๊กเกอร์ ข้อมูลpokertableratings.comมีเว็บไซต์ขนาดใหญ่จำนวนมาก มันได้รับการพบกับการต้อนรับผสมบางรักความโปร่งใสที่คนอื่น ๆ เกลียดมัน อย่างไรก็ตามข้อดีคือมีบางกรณีที่สถิติผู้เล่นที่น่าสงสัย (เปอร์เซ็นต์ VPIP เปอร์เซ็นต์ PFR เป็นสถิติเชิงปริมาณจำนวนมากที่สามารถบันทึกได้) นำไปสู่การสรุปการโกง

  6. เครือข่ายการจำแนกประเภทที่ชาญฉลาดเทียม สามารถตรวจสอบสถิติเชิงปริมาณเพื่อจำแนกการโกงโกงหรือผู้เล่นหุ่นยนต์

  7. ย้อนกลับไปเมื่อโป๊กเกอร์ออนไลน์เป็นหน่วยงานใหม่มีข่าวลือและพูดคุยโดยมีหลักฐาน จำกัด ว่าซอฟต์แวร์ไคลเอ็นต์โป๊กเกอร์บางตัวสกรีนช็อตเดสก์ท็อปของผู้เล่นที่น่าสงสัยเพื่อดูว่าพวกเขากำลังเรียกใช้โปรแกรมที่ช่วยพวกเขาหรือไม่ อย่างไรก็ตาม (แม้ว่าจะเป็นจริงก็ตาม) การใช้คอมพิวเตอร์สองเครื่องเพื่อทำงานทั้งสองอย่างเป็นอิสระจะช่วยแก้ปัญหานี้ได้

  8. การแบ่งปันข้อมูลระหว่างผู้กระทำผิดซ้ำระหว่างไซต์หลายแห่งจะเป็นประโยชน์ต่ออุตสาหกรรม หากเพียง แต่พวกเขามีเกียรติและดำเนินการโดยผู้รับผิดชอบที่มีอำนาจ

  9. บอทบางตัวอาจจะค่อนข้างเรียบง่ายด้วยการออกแบบหากคุณสามารถค้นพบสไตล์การเล่นของพวกเขาและดูว่าพวกเขาแสดงอย่างไรในสถานการณ์ที่เหมือนกัน (โปรดทราบว่าบอทที่ไม่ซับซ้อนซึ่งเล่นด้วยกลยุทธ์พื้นฐานเท่านั้น) คุณจะค้นพบพวกมันได้อย่างรวดเร็วพอสมควร

  10. การใช้คุณลักษณะของโปรแกรมอย่างไม่สอดคล้องกันจะโน้มไปสู่ผู้เล่นที่เป็นของแท้ ยกตัวอย่างเช่นเว็บไซต์โป๊กเกอร์หลายแห่งในเกมมีปุ่ม 'พับเมื่อถึงตาของฉัน' หากคุณได้รับไพ่ในมือที่ไม่ดีและกำลังรอให้ผู้เล่นคนอื่นตัดสินใจว่าจะทำอย่างไรผู้เล่นจำนวนมากจะตรวจสอบปุ่มนี้ บอทอาจใช้ปุ่มเหล่านี้ ความแตกต่างคือบอทจะอยู่ที่ความถี่ในการใช้งานพวกเขาอาจจะใช้มันตลอดเวลาหรือไม่ใช้เลย ในกรณีที่ผู้เล่นมักจะกด 'พับอัตโนมัติ' แต่บางครั้งพวกเขาก็จะคลิกพับแม้ว่าจะอยู่ในเงื่อนไขที่ดีที่สุดก็ตาม ตัวอย่างเช่นผู้เล่นของแท้มักจะกด auto fold แต่คราวนี้ไม่ทำ มันถูกพับให้พวกเขาโดยไม่มีผู้เล่นคนอื่นแสดงตอนนี้พวกเขาได้รับการนำเสนอด้วยสภาพที่ดีที่สุด ตอนนี้ถ้าพวกเขากดพับพวกเขาจะมีแนวโน้มอย่างมากที่จะกดพับอัตโนมัติตั้งแต่เริ่มต้น นี่เป็นพฤติกรรมที่ไม่สอดคล้องกัน / ไม่ได้รับการกระตุ้น / สุ่มซึ่งสอดคล้องกับการเป็นมนุษย์ การจับเวลาจะบอกเมื่อคุณสมบัติเหล่านี้ถูกคลิกเป็นตัวบ่งชี้อื่น ๆ สิ่งสำคัญคือต้องตระหนักว่าสิ่งเหล่านี้เป็นตัวบ่งชี้ทั้งหมดและไม่ใช่ข้อพิสูจน์ที่สรุปได้ ตัวบ่งชี้พฤติกรรมทั้งหมดนี้สามารถจำลองได้อย่างง่ายดาย

การเอาชนะบอทจากมุมมองของผู้เล่น

  1. พยายามบันทึกและรวบรวมข้อมูลให้มากที่สุดโดยใช้ซอฟต์แวร์เช่นPokerTracker

  2. พยายามระบุรูปแบบในรูปแบบการเล่น

  3. พยายามค้นหาความสัมพันธ์ระหว่างขนาดเดิมพันตามสัดส่วนเงินกองกลาง / ผู้เล่นและกำลังมือ

  4. ลองคำนวณของช่วงมือ บอทที่มีเดิมพันต่ำอาจจะไม่บลัฟบ่อยพอที่จะเป็นข้อกังวลเชิงกลยุทธ์ที่สำคัญดังนั้นการสร้างแฮนด์เรนจ์ที่มีความแม่นยำสูงจึงไม่ควรยุ่งยากเกินไป

  5. พยายามค้นหาการรั่วไหลในเกมผ่านการวิเคราะห์ข้อมูลและการลองผิดลองถูกเมื่อพบการรั่วไหล / รูปแบบแล้วให้พยายามใช้ประโยชน์จากสิ่งเหล่านี้ซ้ำ ๆ และหลีกเลี่ยงสถานการณ์อื่น ๆ

ที่มนุษย์มีความสามารถในการปรับตัวบอทอาจจะมีน้อยมากและที่มนุษย์มีการถ่วงน้ำหนักด้วยโซ่ของความลาดเอียง , ผลการปรับความคิดและความผิดหวัง , บอทไม่ได้ คุณสามารถใช้สิ่งนี้เพื่อประโยชน์ของคุณ

ดังนั้นโดยพื้นฐานแล้วไม่มีอะไรที่คุณสามารถทำได้เพื่อหยุดมันหากหุ่นยนต์ฉลาดพอที่จะจำลองความล่าช้าของเวลาจริงในระหว่างการตัดสินใจรวมทั้งสร้างรูปแบบการเล่นที่สมเหตุสมผลและสมจริง โยนเงื่อนไขแบบสุ่มและการแชทกลับแบบง่ายๆ (คำศัพท์สำหรับผู้เล่นโป๊กเกอร์มักจะค่อนข้าง จำกัด ) และคุณมีผู้เล่น AI ที่ตรวจจับได้ยาก

บอทอาจทำอะไรเพื่อหลีกเลี่ยงการตรวจจับ

กุญแจสำคัญในการหลีกเลี่ยงการตรวจจับคือการคิดถึงปัญหาจากหลาย ๆ มุมให้มากที่สุด คุณกำลังพยายามจำลองพฤติกรรมของมนุษย์ที่ชาญฉลาดในโลกที่เล็กและ จำกัด การจำลองพฤติกรรมส่วนใหญ่ที่คุณสามารถเรียกใช้นั้นค่อนข้างชัดเจน แต่ยิ่งบอทของคุณไม่อยู่ห่างออกไปและคาดเดาไม่ได้มากเท่าไหร่โอกาสที่จะถูกค้นพบก็จะน้อยลงเท่านั้น

  1. สร้างตารางการเล่นที่สมจริง (เช่น 3-5 ครั้งต่อสัปดาห์ 4 ชั่วโมงต่อเซสชั่นโดยมีสัปดาห์แปลก ๆ ที่นี่และที่นั่นในระหว่างปี)

  2. เรียกใช้โปรแกรมเพื่อทำการตัดสินใจบนคอมพิวเตอร์แยกต่างหากควบคุมคอมพิวเตอร์ซอมบี้ในกรณีที่มีการจับภาพหน้าจอของไซต์ใด ๆ

  3. การกำหนดเวลาการดำเนินการแบบสุ่ม (อย่าดำเนินการทันทีรอ 0.5–2 วินาทีต่อการกระทำ)

  4. หมดเวลาในการตัดสินใจครั้งใหญ่ หากการตัดสินใจเป็นเส้นเขตแดนให้คำนวณการตัดสินใจจากนั้นรอสักครู่เพื่อจำลองความคิด

  5. การใช้คุณลักษณะซอฟต์แวร์ไคลเอ็นต์แบบสุ่ม จำลองการเข้าห้องน้ำโดยคลิกปุ่ม "จัดการฉันออก" บนโต๊ะทั้งหมดและมีเวลาพัก 5 นาทีเป็นระยะ ๆ

  6. การแชทจำลองการแชทโป๊กเกอร์มักเป็นเรื่องง่ายมากไม่เคยพูดคุยหรือถกเถียงกัน พูดว่า "โชคร้าย" หรือ "stfu" ในช่วงเวลาที่ตรวจพบได้เหมาะสม หรือแม้แต่ให้ coder คอยตรวจสอบบอทของเขาและมีส่วนร่วมในการแชทระหว่างการดำเนินการ

  7. ตรวจสอบให้แน่ใจว่าการเคลื่อนไหวของเมาส์สมจริง หากตาราง เรียงต่อกันไม่ได้ตัดสินใจบนโต๊ะด้านซ้ายบนให้ทำที่ตารางด้านล่างขวาทันที ขณะนี้ซอฟต์แวร์เว็บไซต์ส่วนใหญ่มีแป้นพิมพ์ลัดซึ่งอาจนิยมใช้ตามที่ควรจะเป็นในการเคลื่อนย้าย

  8. ทำในสิ่งที่ตัวแยกประเภท AI ไม่คาดคิด ตัวอย่างเช่นปีละครั้งโทรศัพท์ด้วยข้อความค้นหาง่ายๆที่ไม่ซับซ้อน ("วันนี้ช่วยฉันเข้าสู่ระบบไม่ได้!" หรือ "อินเทอร์เน็ตขัดข้อง!") ไม่น่าจะสร้างความแตกต่างได้มากนัก แต่ถ้าคนที่ทำงานให้ บริษัท โป๊กเกอร์นั้นฉลาดพอที่พวกเขาอาจยอมรับว่ามันเป็นตัวบ่งชี้ที่เป็นจริง

  9. เซสชันการสูญเสียประปราย สามารถจำลองการเอียงได้และบอทสามารถเล่นได้ไม่ดีและเสียเงินเป็นระยะ ๆ ทุกคนเอียงตัวในบางจุด

ข้อกังวลก็คือเว็บไซต์โป๊กเกอร์ไม่ได้สนใจเป็นพิเศษว่าบอทกำลังทำงานบนเครือข่ายของพวกเขาผู้เล่นแต่ละคนมีมูลค่ามหาศาลในการคราดและในทางทฤษฎีจากมุมมองทางธุรกิจที่เหยียดหยามอย่างหมดจดข้อเสียเพียงอย่างเดียวจะเป็นผลเสียหากถูกค้นพบ .

แม้ว่าจะมีการค้นพบการหาประโยชน์อย่างโจ่งแจ้ง (การค้นหาใน Google สำหรับเรื่องอื้อฉาวของเครือข่าย CereusหรือAbsolute Poker Scandalมันค่อนข้างน่าตกใจ) ธุรกิจดูเหมือนจะอยู่รอดและมีสุขภาพดีเพียงสูญเสียผู้เล่นที่มีการศึกษาและชนะเลิศเท่านั้น (ซึ่งมีไม่มากนัก) สิ่งนี้จะเพิ่มสัดส่วนของผู้เล่นที่มีทักษะน้อยในเครือข่ายซึ่งจะดึงดูดผู้เล่นที่ดีให้กลับมา มันเป็นสิ่งที่ดีในการจับคู่ 22. ข้อโต้แย้งที่ดีเยี่ยมสำหรับการควบคุมตลาดที่เหมาะสม

มันเป็นสิ่งสำคัญที่จะต้องทราบว่าทุกเกมแนชสมดุลอยู่ โป๊กเกอร์ออนไลน์มีเส้นเวลาในการดำเนินการในขณะนี้มันจะต้องย้ายไปสู่สังคมอื่น ๆ (เว็บแคม / voip) เพื่อให้ทุกคนเชื่อถือได้ในอนาคต (หากผู้คนเชื่อถือ) เนื่องจากบอทจะเข้ามาแทนที่ในที่สุดในทางคณิตศาสตร์ เหนือกว่าและมีภูมิคุ้มกันทางจิตใจ ชุมชนโป๊กเกอร์ AI มีการใช้งานอย่างมากโดยได้รับแรงหนุนจากสถาบันการศึกษาและ / หรือผลประโยชน์ด้านเงินทุน

โป๊กเกอร์เวอร์ชันที่เรียบง่ายกว่าเช่นลิมิตโป๊กเกอร์ได้รับการแก้ไขเกือบหมดแล้วในพื้นที่ค้นหาขนาดเล็ก เป็นเพียงเรื่องของเวลาก่อนที่เกมเวอร์ชันที่ซับซ้อนมากขึ้น (รูปแบบไม่ จำกัด / ขีด จำกัด หม้อโอมาฮาฯลฯ ) จะสามารถเอาชนะได้สำหรับผู้เล่นเทียม

สรุป

ไม่สามารถตรวจพบบอทที่ซับซ้อนได้จนกว่าอุตสาหกรรมจะเปลี่ยนไปใช้การตั้งค่าเกมออนไลน์ทางสังคมมากขึ้น วิธีนี้จะไม่ช่วยแก้ปัญหา แต่จะทำให้บอทชนะในระดับล่างได้ยากขึ้น เราได้เห็นการเปลี่ยนแปลงเล็กน้อยกับการเปิดตัวPKR , 3D และเวอร์ชันโต้ตอบที่น้อยลงกว่าเดิมของไซต์อื่น ๆ ซึ่งการเปิดใช้งานหลายครั้งนั้นค่อนข้างยุ่งยากสำหรับผู้เล่น

ปัญหายังเกิดจากลักษณะของอุตสาหกรรม แต่อีกสาเหตุหนึ่งที่ต้องยึดติดกับเว็บไซต์ที่มีชื่อเสียงขนาดใหญ่กว่าซึ่งชื่อเสียงได้รวมเข้ากับรูปแบบธุรกิจของพวกเขามากขึ้นเรื่อย ๆ การขาดความโปร่งใสและการแอบอ้างเบื้องสูงไม่ได้ช่วยให้เกิด

ความท้าทายที่แท้จริงสำหรับนักพัฒนาบอทในปัจจุบันคือการเขียนอัลกอริทึมที่ชนะซึ่งไม่ได้เป็นเรื่องเล็กน้อยอย่างที่คิด ทุกคนที่เล่นโป๊กเกอร์คิดว่าตัวเองเก่งชนะหรือเป็นผู้เล่นที่คุ้มทุนซึ่งไม่เป็นความจริง นั่นคือเหตุผลที่ผู้คนยังคงเล่นต่อไปแม้ว่าพวกเขาจะสูญเสียเงินเนื่องจากพวกเขาอยู่ภายใต้ภาพลวงตาว่าพวกเขาโชคร้ายเพียงใดหรือรูปแบบการเล่นของพวกเขาเข้าใจผิด ความเย่อหยิ่งและความอ่อนแอในจิตวิทยาของมนุษย์ทำให้ผู้เล่นเสียเงินเป็นจำนวนมากและเป็นเหตุผลพื้นฐานที่ทำให้โป๊กเกอร์ยังคงสามารถทำกำไรได้

โป๊กเกอร์เป็นเกมที่ซับซ้อนอย่างมากที่ต้องใช้เวลาหลายปีในการเล่นให้เก่ง (สุภาษิตโบราณยังคงเป็นความจริง "สิบนาทีในการเรียนรู้ตลอดชีวิตเพื่อเชี่ยวชาญ") ธาตุโชคมีข้อ จำกัด อย่างมากในระยะยาว

เช่นเดียวกับอาชีพอื่น ๆ เพื่อให้ได้ผลดีคุณต้องศึกษาเป็นร้อย ๆ ชั่วโมงและเล่นให้ได้หลายพันคน คุณจะเข้าใจสิ่งต่างๆที่ผู้เล่นที่มีประสบการณ์น้อยไม่เข้าใจมองเห็นสิ่งที่ไม่เคยมีประสบการณ์น้อย การเรียนรู้ดำเนินไปเป็นเวลานานมากบางทีอาจนานกว่าที่เราจะมีชีวิตอยู่ได้ มันเป็นเกมที่ซับซ้อน

คุณเคยเห็นเกมเงินสดเดิมพันสูงทางโทรทัศน์บ่อยแค่ไหนและได้ยินเสียงใครบางคนตะโกนใส่มันว่า "โทรง่าย!" ดังนั้นจึงพิสูจน์ได้ว่ามือสมัครเล่นไม่เข้าใจหรือรับรู้ถึงความซับซ้อนในการเล่นจริงๆและเชื่อว่าเกมในระดับนั้นยังคงเรียบง่ายในที่สุด มันไม่ใช่ ผู้เล่นเดิมพันสูงเหล่านั้น (บ่อยครั้ง) อยู่ที่นั่นทางโทรทัศน์เพราะพวกเขาเป็นอย่างนั้น จริงๆดี. นอกจากนี้ยังอาจมีเกมเมตาที่ซับซ้อนซึ่งกำลังเล่นอยู่เช่นกันซึ่ง amauer ของเราไม่สามารถรับรู้ถึงการมีอยู่ของ นักเล่นหมากรุกจะไม่ยืนอยู่เหนือปรมาจารย์หมากรุกและตะโกนใส่พวกเขาให้ขยับอัศวินของพวกเขา แต่เนื่องจากพลวัตของโป๊กเกอร์เป็นข้อมูลที่ไม่สมบูรณ์จิตวิทยาของพวกเขาทำให้พวกเขาเชื่อในสิ่งที่พวกเขาพูด เช่นเดียวกับหมากรุกการตัดสินใจอาจซับซ้อนอ่อนไหวและมีความสำคัญอย่างยิ่งต่อเกมโดยรวม ในขณะที่เกมมีความซับซ้อนเพิ่มขึ้นการตัดสินใจที่ไม่สำคัญจึงไม่น่าสนใจอีกต่อไปเพราะฝ่ายตรงข้ามคาดหวัง

เมื่อคุณย้ายบอทหรือเกมของคุณขึ้นเลเวลแล้วคุณจะต้องเจอกับกลุ่มผู้เล่นที่มีทักษะมากขึ้นอย่างหลีกเลี่ยงไม่ได้ จากนั้นความซับซ้อนของกลยุทธ์ของคุณเป็นไปได้ที่จะขึ้นไปที่ระดับถัดไปโดยคำนึงถึงภาพตาราง , ช่วงสมดุลที่มีความซับซ้อนและชาญฉลาด bluffing (IE ไม่ได้เป็นเพียง bluffing ที่อ่อนแอ bluffing ในช่วงและ bluffing บนภาพ ฯลฯ ) ด้วยการวิเคราะห์ช่วงมือที่ละเอียดยิ่งขึ้น มันเป็นเกมที่แตกต่างออกไปเมื่อคุณเลื่อนชั้น

เมื่อเขียนบอทที่ชนะแล้วไม่ต้องสงสัยเลยว่า coder จะมีทักษะความรู้และสามัญสำนึกเพียงพอที่จะใช้บอทในแบบที่ไม่สามารถตรวจจับได้ นี่เป็นเรื่องเล็กน้อยสำหรับพวกเขา

จึงไม่มีอะไรที่คุณสามารถทำได้ หากคุณต้องการเล่นออนไลน์เข้าใจความเสี่ยง อย่าเสี่ยงกับเงินมากเกินกว่าที่คุณจะจ่ายได้และพยายามเก็บบันทึกการใช้จ่ายที่ถูกต้องเพื่อที่คุณจะได้ไม่หลงผิดไม่สมเหตุสมผลและในที่สุดก็สร้างความเสียหายต่อการประเมินความสามารถของคุณเอง หยุดการขาดทุนและออกจากโต๊ะหากคุณไม่มีความได้เปรียบหรือหากคุณไม่แน่ใจว่าตัวเองได้เปรียบ! แน่นอนว่าถ้าทุกคนทำอย่างนั้นก็ไม่มีใครชนะนั่นคือลักษณะของเกมที่ล่าและเอาเปรียบนั่นคือที่มาของการแข่งขันและนั่นคือสิ่งที่ทำให้มันสนุก


3
อย่างน้อยในสมัยของจอภาพอะนาล็อกจะเป็นไปได้ที่จะมีตัวจับหน้าจอที่ทำงานบนคอมพิวเตอร์ที่แยกจากเครื่องที่เล่นเกมโดยสิ้นเชิง แน่นอนว่าการตรวจจับสิ่งนั้นในซอฟต์แวร์ของเกมจะเป็นไปไม่ได้เลย แม้ว่า HDCP จะไม่อนุญาตให้ทำสิ่งนั้นกับเอาต์พุตวิดีโอของคอมพิวเตอร์สมัยใหม่ แต่ก็สามารถใช้กล้องที่เล็งได้อย่างแม่นยำ หากมนุษย์สามารถอ่านไพ่ได้ง่ายเครื่องจะไม่มีปัญหา
supercat

ทุกวันนี้คุณสามารถเรียกใช้เกมบน VM และบอทนอกเกมจับภาพและส่งเหตุการณ์คีย์บอร์ด / เมาส์
AndréParamés

ลองดูที่ OpenHoldem สิ่งนี้ยังมีส่วนขยาย DLL เพื่อจำลองการกระวนกระวายใจของเมาส์และการเร่งความเร็วเมาส์เหมือนมนุษย์ในการคลิกปุ่ม หากรหัสของคุณสร้างความน่าจะเป็นสามเท่าสำหรับการโทรหรือตรวจสอบ / พับ / เพิ่มการค้นหารูปแบบจะทำได้ยากโดยไม่ต้องใช้มือนับพัน
rndapology

9

มีสามพื้นที่ที่ต้องพิจารณาแยกกัน บอทจะต้องค้นหาสถานะของตารางทำการตัดสินใจและส่งการตัดสินใจกลับไปยังโฮสต์

การหาสถานะของตารางนั้นง่ายกว่ามากหากมีการส่งข้ามสายในรูปแบบที่เป็นที่รู้จักหรือแสดงให้ผู้ใช้เห็นเป็นข้อความมาตรฐาน ขั้นแรกให้ทำการจดจำรูปภาพเป็นทางเลือกเดียวจากนั้นทำให้ยากที่สุด แสดงการ์ดในรูปแบบ 3 มิติและค่อยๆเปลี่ยนแนวและตำแหน่งของการ์ด แสดงการกะพริบเล็กน้อยหรือดอกไม้ไฟที่ด้านหน้าของการ์ดเพื่อให้ภาพหน้าจอที่กำหนดอาจอ่านไม่ออก แต่ต้องใช้เวลาสักพักถึงจะตัดสินได้

ไม่มีอะไรต้องทำในการตัดสินใจ การพยายามตัดสินใจว่ามนุษย์ตัดสินใจหรือไม่ก็เหมือนกับการทดสอบทัวริงที่แทบไม่มีข้อมูล

การส่งคำตัดสินกลับอาจทำได้ยากโดยใช้ 3D อีกครั้ง ทำให้ยากที่จะส่งแพ็กเก็ตโดยตรงหรือส่งการตัดสินใจด้วยวิธีการอื่นใดนอกเหนือจากการคลิกปุ่มด้วยเมาส์ ขยับปุ่มเล็กน้อยในทุกการกระทำหรือให้พวกมันลอยไปรอบ ๆ พื้นที่เล่นอย่างช้าๆในขณะที่รอการตัดสินใจ ปิดใช้งานคุณสมบัติประเภทการช่วยการเข้าถึงที่อนุญาตให้ค้นหาหรือจัดการปุ่มต่างๆ


3
ความปลอดภัยผ่านความยากลำบาก สมมติว่าคุณได้รับอนุญาตให้สตรีมวิดีโอที่แสดงผลของเกมเป้าหมายคือทำให้เป็น CAPTCHA ที่เคลื่อนไหว
วาดเมื่อ

3
@ The Rook: PokerPirate ซึ่งคุณอ้างอิงในคำถามของคุณไม่มีส่วนเกี่ยวข้องกับ HTTP เลย อันที่จริงฉันสงสัยว่ามีเว็บไซต์โป๊กเกอร์การพนันที่ใช้ HTTP คำถามคำตอบและความคิดเห็นของคุณแสดงให้เห็นว่าคุณรู้น้อยมากเกี่ยวกับเรื่องนี้ คุณควรพยายามรู้ว่าคุณกำลังพูดถึงอะไรก่อนที่จะให้คำแนะนำกับผู้คนว่าพวกเขาควรทำอะไร :)
RarrRarrRarr

2
@drawnonward: หากการใช้งานไม่ได้เป็นสิ่งที่น่ากังวลคุณสามารถมีความปลอดภัยได้โดยการตัดการเชื่อมต่อข้อมูลทั้งหมดซึ่งเป็นวิธีที่สร้างสรรค์ในการหยุดการโกง ฉันไม่เห็นวิธีประเมินมาตรการรักษาความปลอดภัยยกเว้นในบริบทของการใช้งาน
David Thornley

1
@drawnonward: แน่นอน แต่ (ก) ฉันไม่สามารถไปที่เว็บไซต์ธนาคารโดยไม่มีรหัสผ่านได้ (b) การธนาคารมีความจำเป็นสำหรับคนส่วนใหญ่มากกว่าโป๊กเกอร์ออนไลน์และ (c) มันไม่ใช่เรื่องน่ารำคาญอย่างต่อเนื่อง จะคงอยู่เป็นเวลานาน การแก้ปัญหานี้น่าจะแย่กว่าปัญหาเดิม
David Thornley

2
ปัญหาเดิมคือการสร้างความมั่นใจว่ามีเพียงมนุษย์เท่านั้นที่เล่นโป๊กเกอร์บนหน้าเว็บ ด้วยเว็บไซต์ธนาคารเมื่อคุณป้อนรหัสผ่านคุณจะได้รับความไว้วางใจจากโฮสต์ ในกรณีนี้คุณไม่สามารถทำอะไรได้เพื่อให้ได้รับความไว้วางใจจากโฮสต์อย่างต่อเนื่องดังนั้นความท้าทายด้านความปลอดภัยต้องต่อเนื่อง
วาดเมื่อ

8

PokerPirate เช่นเดียวกับบอทโป๊กเกอร์เกือบทุกตัวที่เคยเขียนมาทำงานโดยการขูดหน้าจอและจำลองการคลิกเมาส์ในแอปพลิเคชันโป๊กเกอร์ Windows ดังนั้น lynch-pin สำหรับระบบคือความสามารถในการจดจำวัตถุในเกมและทำการกระทำในหน้าต่าง ฉลาดพอ ๆ กับที่โป๊กเกอร์ก็น่าจะยังมีปัญหากับการใช้งานพื้นฐานเหล่านี้

ดังนั้นวิธีที่ชัดเจนในการขัดขวางบอทนี้จะรวมถึง:

  1. ใช้ CAPTCHA ก่อนเกมหรือเมื่อปัจจัยอื่น ๆ แนะนำว่าผู้เล่นอาจเป็นบอท
  2. ทำให้กราฟิกตารางซับซ้อนขึ้นหรือเปลี่ยนธีมตลอดทั้งเกม
  3. ตรวจจับการเคลื่อนไหวและการคลิกของเมาส์ที่รวดเร็วผิดปกติและ / หรือหุ่นยนต์ (มนุษย์จะไม่ขยับเมาส์ในแนวที่สมบูรณ์แบบทางคณิตศาสตร์)

2
ส่วนใหญ่คือความปลอดภัยแม้ว่าจะมีความสับสน ทั้งหมดนี้สามารถเสียรวมถึง captcha ด้วย แม้ว่าฉันจะยอมรับว่าเป็นส่วนที่ยากที่สุดที่จะทำลาย (+1 ไม่มีวิธีแก้ปัญหา 100% และสิ่งที่อธิบายไว้ส่วนใหญ่สามารถใช้กับเทคนิคอื่น ๆ ได้)
โกง

2
ตอนนี้บอท captcha ดีแค่ไหน? ฉันจะบอกคุณสิ่งนี้: ครึ่งหนึ่งของภาพที่ฉันได้รับจาก Google Apps นั้นเป็นไปไม่ได้ที่มนุษย์จะอ่านได้
WCWedin

การรักษาความปลอดภัยของคอมพิวเตอร์ทั้งหมดผ่านความคลุมเครือ สาเหตุที่บางคนไม่สามารถอ่านอีเมลที่เข้ารหัสได้เนื่องจากพวกเขาไม่สามารถค้นหาคีย์ส่วนตัวได้โดยง่าย แต่หากมีเวลาและทรัพยากรในการคำนวณมากพอก็อาจ "เสีย" ได้เช่นกัน แคปต์ชาส่วนใหญ่ค่อนข้างดีและจะกำจัดบอทออกไป 99.99%
Cerin

5

วิธีแก้ปัญหาที่ถูกต้องเพียงวิธีเดียวคือการสร้างตรรกะ honeypot ที่ล่อให้บอทมีส่วนร่วมโดยการล่อลวงด้วยเงื่อนไขตรรกะที่ดีกว่าซึ่งสนับสนุนการตอบสนองเชิงพฤติกรรมที่เหมาะสมที่สุดของบอท เมื่อบอทมีส่วนร่วมในฮันนี่พ็อตคุณจะต้องป้อนเงื่อนไขของบอทอย่างต่อเนื่องซึ่งมันชอบโดยสันนิษฐานว่าบอทไม่มีการหมดเวลาที่กำหนดไว้ จากนั้นบอทสามารถวัดบันทึกและศึกษาได้ นอกจากบอทแล้วคุณยังแยกข้อมูลเครือข่ายและเซสชันเพื่อการศึกษาหากบอทไม่ได้เชื่อมต่อผ่าน TOR

ในสถานการณ์เช่นนี้การพิจารณาเชิงกำหนดที่เหมาะสมกับการแยกแยะบอทจากมนุษย์นั้นมีความรุนแรงน้อยกว่าอย่างไรก็ตามการพิจารณาเชิงกำหนดเมื่อระบุพฤติกรรมของบอทจะรุนแรงขึ้น น่าเสียดายที่เจ้าของบ็อตสามารถทำการเปลี่ยนแปลงบอทเพื่อป้องกันการระบุตัวตนดังกล่าวได้หากเจ้าของนั้นตระหนักถึงเงื่อนไขของฮันนี่พ็อตหรือการพิจารณาเชิงตรรกะดังกล่าว


3
อ้างคำพูดซุนวู: "จงรู้จักศัตรู" หลีกเลี่ยงจุดแข็งของเขาและสำรวจจุดอ่อนของเขา
jweyrich

ไม่ใช่ความคิดที่ไม่ดีและฉันสนใจว่าซอฟต์แวร์นี้จะเป็นอย่างไร คุณสนใจที่จะอธิบายอย่างละเอียดเกี่ยวกับเงื่อนไขเฉพาะหรือไม่?
rook

1
จุดออกของ Tor ค่อนข้าง จำกัด ผู้เล่นใด ๆ ที่เชื่อมต่อผ่านจุดที่มีอยู่ควรสงสัย
Christian

การสร้าง honeypot อาจมีราคาแพงมากสำหรับเว็บไซต์โป๊กเกอร์
Tom Gullen

คุณสามารถทำให้มันคิดว่าเป็นการทำเงิน
Jeff Davis

4

การเอาชนะบอทโป๊กเกอร์สามารถทำได้สองรูปแบบ: คุณสามารถลองระบุและแบนพวกเขาจากระบบหรือคุณสามารถเอาชนะพวกมันได้ที่โป๊กเกอร์ การเอาชนะพวกเขาที่โป๊กเกอร์เป็นคำถามเชิงวิชาการที่น่าสนใจกว่า :-)

ดูเอกสารเกี่ยวกับการตีบอทโป๊กเกอร์ได้ที่นี่: http://www.cs.cmu.edu/~sganzfri/



2

ความคิดอีกอย่างในการยุ่งกับหน้าจอเพื่อให้สแกนยาก:

ทำการ์ดจากสีที่แตกต่างกันทั้งหมด - ใกล้เคียงกับสายตามนุษย์ แต่ไม่เหมือนกัน สิ่งนี้จะทำให้ยากต่อการเลือกอ่านเนื้อหา ในอีกด้านหนึ่งให้เขียนข้อความปลอมลงบนการ์ดด้วยสีที่ดวงตาของมนุษย์จะไม่แยกออกจากพื้นหลัง


2
น่าเสียดายที่นี่จะเป็นเรื่องง่ายที่จะเอาชนะสำหรับโปรแกรมเมอร์คู่แข่งเนื่องจากพวกเขาจะคัดกรองช่วงสีและไม่ใช่ค่าที่แน่นอนที่จะข้ามโซลูชันนี้
Tom Gullen

ช่วงสีจะใช้งานได้หากได้รับการแก้ไข - แต่ถ้าคุณเปลี่ยนสิ่งต่างๆไปเรื่อย ๆ ? หมายความว่ามีดโกนของคุณจะต้องได้รับการตั้งโปรแกรมให้เข้าใจการมองเห็นของมนุษย์ มันคงเป็นเรื่องที่เป็นไปไม่ได้ แต่มันจะทำให้เรื่องยากขึ้นมาก
Loren Pechtel

เป็นไปได้ แต่จะลดลงอย่างมากจากประสบการณ์ของผู้ใช้ที่ถูกต้องของซอฟต์แวร์ซึ่งอาจเป็นธุรกิจที่ไม่ดี
Tom Gullen

ง่ายมากที่จะเอาชนะ ฉันเคยเขียนบอทโป๊กเกอร์มาก่อนและฉันทำการจดจำไพ่โดยการคำนวณความเหมือนของภาพภายในกรอบขอบเขต แม้ว่าจะไม่มีพิกเซลใดที่เหมือนกันทั้งหมด (เนื่องจากสีของการ์ดหรือตำแหน่งของหน้าจอมีการเปลี่ยนแปลงเล็กน้อยในทุก ๆ ด้าน) ฉันยังคงสามารถใช้การวัดความคล้ายคลึงกันเหล่านั้นเพื่อระบุการ์ดที่ "น่าจะเป็นไปได้มากที่สุด"
benjismith

แล้วทำไมคุณถึงคิดว่าสีต้องยังคงใกล้เคียงกัน? วนไปตามสีที่แตกต่างกันอย่างมากและวนรอบพื้นหลัง - ฉันกำลังนึกภาพเอฟเฟกต์เหมือนคลื่นที่กวาดไปทั่วการ์ดและเปลี่ยนสี รักษาคอนทราสต์ให้มากและตรวจสอบให้แน่ใจว่าสีที่ได้ผลลัพธ์ไม่น่าเกลียด
Loren Pechtel

2

ปัญหาเกี่ยวกับบอทคือการที่พวกเขาเล่นได้ดีกว่าผู้เล่นที่เป็นมนุษย์ที่ดีหรือว่าพวกเขาสามารถรอประมาณ 24/7 เพื่อให้ผู้เล่นที่ไม่ดีปรากฏตัวแล้วพยายามรีดนมพวกเขา?

นอกจากนี้มันจะ "ถูกต้อง" หรือ "โกง" สำหรับคนที่มีคอมพิวเตอร์นั่งข้างๆเขาในขณะที่เขาเล่นโป๊กเกอร์ปรึกษาคอมพิวเตอร์เครื่องอื่นเพื่อขอคำแนะนำ?

ฉันไม่แน่ใจว่าจะสามารถ "แก้ปัญหา" ได้อย่างไรในเมื่อกลยุทธ์ที่ดีที่สุดสำหรับผู้เล่นจะได้รับอิทธิพลจากสิ่งที่รู้เกี่ยวกับฝ่ายตรงข้าม ความพยายามในการวิเคราะห์ผู้เล่นที่อ้างว่าสมบูรณ์แบบจนไม่สามารถปรับปรุงได้อย่างไร?


นี่คือการอภิปรายที่น่าสนใจว่าโป๊กเกอร์แก้ได้หรือไม่: forumserver.twoplustwo.com/29/news-views-gossip/…โปสเตอร์บางส่วนในนั้นมีชื่อเสียงมาก ปัญหาคือในทางทฤษฎีบอทจะทำงานในลักษณะที่ไม่สามารถเอาชนะได้ นอกจากนี้ซอฟต์แวร์ที่คุณอธิบายว่า 'ช่วย' คุณยังเป็นพื้นที่สีเทาไซต์จำนวนมากอนุญาตให้ใช้ซอฟต์แวร์วิเคราะห์ข้อมูลเช่น PokerTracker / PokerOffice แต่ลากเส้นที่เครื่องคิดเลข ICM และเครื่องมือการตัดสินใจทางคณิตศาสตร์อื่น ๆ (ตัวอย่างเช่นสิ่งเหล่านี้มีประโยชน์อย่างยิ่งในไฮเปอร์ กลยุทธ์การแข่งขันท้ายเกมเทอร์โบ)
Tom Gullen

1

หากคุณสามารถเข้าถึงการแข่งขันจำนวนมากคุณสามารถใช้วิธีการขุดข้อมูล ความแข็งแกร่งในการเล่นของ AI ควรมีความสม่ำเสมอในขณะที่อาจมีรูปแบบที่เรียบง่ายสำหรับมนุษย์ - อ่อนแอกว่าในการอุ่นเครื่องสองสามรอบแรกและความแข็งแกร่งจะลดลงหลังจากเล่นเป็นเวลานาน นอกจากนี้เวลาในการตัดสินใจของมนุษย์อาจเพิ่มขึ้นเมื่อมีเงินเป็นเดิมพันมากขึ้น

หากคุณสามารถเข้าถึงการเลื่อนเมาส์ได้ (หรืออย่างน้อยก็คลิกตำแหน่งที่เป็นจริงแม้กระทั่งสำหรับแอปพลิเคชันบนเว็บ) การจดจำบอทควรเป็นเรื่องง่ายยกเว้นบอทที่ซับซ้อนที่สุด มนุษย์ไม่ได้เลื่อนเมาส์เป็นเส้นตรงที่แน่นอนพวกมันมีช่วงเวลาเร่งความเร็วและการชะลอตัวการกระจายตำแหน่งคลิกที่อธิบายได้ทางสถิติเป็นต้น


ขณะนี้เว็บไซต์โป๊กเกอร์หลายแห่งใช้แป้นพิมพ์ลัดสำหรับการเปิดใช้งานหลายรายการดังนั้นคุณจึงไม่จำเป็นต้องใช้เมาส์ในบอท ฉันไม่คิดว่าการตัดสินใจจะขึ้นอยู่กับเงินเดิมพันบ่อยๆมันมีความสัมพันธ์กับความยากลำบากในการตัดสินใจ
Tom Gullen

1

ดูAjax Control Toolkit NoBot :

NoBot ใช้เทคนิคป้องกันบอทที่แตกต่างกันสองสามอย่าง:

* Forcing the client's browser to perform a configurable JavaScript calculation and verifying the result as part of the postback. (Ex: the calculation may be a simple numeric one, or may also involve the DOM for added assurance that a browser is involved)

* Enforcing a configurable delay between when a form is requested and when it can be posted back. (Ex: a human is unlikely to complete a form in less than two seconds)

* Enforcing a configurable limit to the number of acceptable requests per IP address per unit of time. (Ex: a human is unlikely to submit the same form more than five times in one minute)

0

วิธีแก้ปัญหา 100% เป็นไปไม่ได้สิ่งที่ฉันมุ่งหวังคือวิธีแก้ปัญหาที่จะช่วยประหยัดเงินโดยใช้ AI กับตัวเอง มีตัวอย่างAI ของ PokerPirate ที่ทำงานบนฝั่งเซิร์ฟเวอร์และเล่นเป็นผู้เล่นที่มองไม่เห็นในทุกเกม หากผู้เล่นคนใดทำการกระทำที่เหมือนกันมากเกินไปพวกเขาอาจใช้งาน PokerPirate นี่คือHoneypotหรือกับดักชนิดหนึ่งที่ผู้โจมตีสามารถตกลงไปได้ ผู้โจมตีสามารถป้องกันหม้อน้ำผึ้งนี้ได้โดยทำให้บอทของพวกเขาประสบความสำเร็จน้อยลง ดังนั้นนี้คือการสร้างออกมาจาก "แมวและเมาส์" ซึ่งผู้โจมตีสามารถขโมยบางส่วนเงินและกองหลังก็สามารถบันทึกบางเงิน


5
อัปยศที่คุณลบคำตอบที่เหมือนกันเกือบทั้งหมดของคุณเนื่องจากมีข้อเสนอแนะที่น่าสนใจ
Paul Dixon

สิ่งนี้ถือว่ามีบอทเล่นโป๊กเกอร์เพียงตัวเดียวและมนุษย์จะไม่ทำสิ่งเดียวกันกับบอท
วาดเมื่อ

@drawnonward มนุษย์จะไม่ทำตัวเหมือนบอทตลอดเวลามีปัจจัยที่ซับซ้อนอยู่ที่นี่
rook

3
@ TheRook 'Gamboling "AI's" ควรเป็นคณิตศาสตร์ล้วนๆและมี "คำตอบที่ถูกต้อง" เสมอ " นั่นเป็นความจริงเฉพาะในเกมที่มีข้อมูลครบถ้วนซึ่งโป๊กเกอร์ไม่ใช่อย่างเดียว ผู้เล่นที่มักจะดำเนินการอย่างเดียวกันในสถานะเดียวกันจะสามารถคาดเดาได้และง่ายต่อการเอาชนะ บอทที่ดีที่สุดจะมีองค์ประกอบของการสุ่ม แม้แต่ผู้เล่นทางคณิตศาสตร์ส่วนใหญ่ก็แนะนำให้มีพฤติกรรมที่แตกต่างกันแม้ว่าจะอยู่ในสถานการณ์เดียวกันก็ตาม
Davy8

1
@ The Rook ฉันไม่ได้เป็นสถานที่ทางวิชาการ แต่ฉันได้ขุดข้อมูลอ้างอิงขึ้นมา (และหนังสือโป๊กเกอร์ที่จริงจังทุกเล่มที่คุณหยิบขึ้นมาจะยอมรับว่าการเล่นที่คาดเดาไม่ได้ในระดับสูงเป็นสิ่งสำคัญ) sciencenews.org/sn_arc98/ 7_18_98 / bob1.htmคำพูดบางส่วน:"We've been working on categorizing and understanding styles of play, [...] it gets more difficult in games against top players because they mix up their play deliberately to confuse you." Being unpredictable is a good strategy, he adds. "If our computer is going to beat the world champion, it's got to do something similar."
Davy8

-2

มีวิธีที่ง่ายกว่ามาก ใช่. คำแนะนำจำนวนมากถูกต้องและจำเป็น แต่ประมาณ 90% ของการฉ้อโกงถูกตรวจพบในลักษณะที่เรียบง่ายเกินไป

หากมีคนปล่อยให้บอททำงานให้เขาเขาก็จะต้องการให้บอทตัวที่สองทำงานแทนเขา (เครื่องอื่นหรืออะไรก็ได้) แต่: เขาจะใช้รหัสผ่านเดียวกันเพราะจำยาก 2 (<--- ประชดประชัน)

สิ่งที่เหลือ: ตรวจสอบบัญชีที่มีพฤติกรรมเกมเดียวกันและแฮชรหัสผ่านเดียวกัน


มีความน่าเชื่อถือได้อย่างไร? ฉันเดาว่ามีคนจำนวนมากใช้รหัสผ่านเดียวกัน อย่าให้ฉันเริ่มต้นด้วยรหัสผ่านเช่นวันเกิดหรือเพียงแค่ "azerty" หรือ "รหัสผ่าน"
DuoSRX

6
เกลือแฮชของคุณ! > = (
WCWedin

1
@WCWedin โทรดีแฮชรหัสผ่านทั้งหมดควรใช้เกลือเฉพาะ
โกง

@DuoSRX จริงไม่น่าเชื่อถือ แต่คำใบ้ที่ดี รายการผลการค้นหาทั้งหมดจะไปที่ทีมทุจริตและพวกเขาจะทำการตรวจสอบประวัติของบัญชี @WCWedin ใช่ nobrainer ;-)
cRichter
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.