Oyuncunun çevrimiçi satrançta hile yaptığını nasıl belirlersiniz?


40

Oyuncuların birbirleriyle gerçek zamanlı olarak satranç oynayabilecekleri pek çok çevrimiçi web sitesi var. Oyunların çoğu 5-10 dakika sürüyor. Satranç yazılımının kullanılabilirliği ile kişi, kendisi için bir hamle önermek için Fritz veya Rybka'yı kullanarak avantaj sağlayabilir.

Örneğin, rakibimin her hareketine girebilir ve benim için hangi yazılımı önereceğini görebilirim.

Oyuncunun hile yaptığını önerebilecek birkaç özellik düşünüyordum:

  • Ekranı değiştirme sayısı
  • oyun hızı (kolay ve gerçekten zor pozisyonlarda)
  • oyunun doğruluğu

Başka fikri olan var mı?

Not: Sizin için hangi açıdan düşündüğünüzün önemi yok (sunucu veya müşteri tarafı).


Mükemmel soru ve bugün ilgili sorun! Ancak, bir algoritma kullanarak çevrimiçi blitz aldatmacasını algılamak mı yoksa rakip oynarken sadece bir insan oyuncu olarak tespit etmek mi istiyorsunuz?
Rauan Sagit,

Hile tespit stratejileri sadece dolandırıcı "aptal" olduğunda işe yarar. Daha akıllı hile durumları benimsemek (NoviceProgrammer'in cevabına yorumuma bakın) hile yapmak bile tahmin etmek imkansız hale gelir.
Andrea Mori

Bence bu hemen hemen hiç sorun değil. Chess.com'da oynarım. Sanırım 10 kişiden 1 kişi belki de hile yapıyor. Ve eğer rakibimin biraz yardım aldığından şüphelenirsem, onları engellerim.
Randy Minder

Yanıtlar:


33

Bu aslında çok karmaşık bir sorudur ve tatmin edici bir şekilde çözülmüş bir bilgim değil. Temel olarak, insan oyuncuları ve bilgisayarlar arasında ayrım yapmak için bir tür ters Turing testi yapmak için bir algoritma istiyoruz.

İlk olarak, müşteri ortamını tam olarak kontrol etmediğiniz sürece, müşteri tarafı kontrolleri her zaman zayıf olacaktır . İlk fikri ele alalım - pencereler arasında geçiş yapmayı kontrol ediyor, kulağa hoş geliyor. Ne yazık ki, ayrı bir bilgisayarda bir satranç motoru çalıştırarak veya motorumu müşteriyle bütünleştirerek "pencere değiştirme" yapılmayacağını veya istemciyi pencerede 0 değişiklik bildirecek şekilde değiştirmeye çalıştığını veya ... gerçek yolu olduğundan emin olmak için sizin gerçekten, istemci üzerinde çalışan kodu.

Geride bıraktığımız şey fiziksel olarak sıkı bir şekilde kontrol edilen istemci ortamları (herhangi bir çevrimiçi oyun için olmayacak) veya sunucu tarafı kontrolü, yani oynanan gerçek hamlelere bakmaktır (ve belki de hamleler arasındaki süreye, dediğiniz gibi) ve bilgisayarı ya da insani yönü ortaya çıkarmaya çalışıyor.

Sunucu tarafı denetimi de birkaç yolla ayrılabilir. Muhtemelen "tarihin geçmiş oyunlarından, insanların sadece% 2'si bu hareketi yaparken, bilgisayarların% 50'si bunu" yaparken, "çizgi boyunca bir şey olacak" yukarıdan aşağıya "bir yaklaşımı deneyebilirsiniz. Bu, "herhangi bir pozisyon" için yeterli veriye sahip olsaydık, bunu yapmanın oldukça iyi bir yolu olurdu. Bununla birlikte, satrançların arandığı alan o kadar büyük ki, çok büyük veri setlerinde bile oyunun ortasından geçtikten sonra konumunuza uygun önemli sayıda oyun bulunmayacak.

Denklemin insan tarafında güvenilir bir istatistiklere sahip olmadığımızı varsayarsak, pozisyonu bir dizi satranç motoruna (her biri farklı zaman ayarları ile) sunabilir ve oyuncuların hareketlerinin ne kadar yakından eşleştiğini görebilirsiniz. bir bilgisayarın Tek başına, bu aynı zamanda birçok yanlış-pozitifi de beraberinde getirecektir, ancak aynı satranç motoru için tekrarlanan pozitifler ve zaman ayarları, oyuncunun hile yapması ihtimalini daha da arttırır. Bunu daha da arttırmak için, muhtemelen satranç pozisyonlarını analiz etmenin "aşağıdan yukarıya" bir yaklaşımına bakardım; Kısacası, insanların ve bilgisayarların neden farklı oynadıklarını anlamaya çalışmak. Örneğin insanlar ortak kalıpları tanıma eğilimindedir. "Garip" şekillere sahip bir oyunda ya da olası olmayan durumlarda, bir insanın çok doğru bir şekilde oynama kabiliyeti daha düşüktür. Bunlardan hiçbiri,

Listenize birkaç özellik eklemek için, profesörlerin gazetelerde plagarizmi nasıl algıladıklarını - ani bir değişiklik saptayarak giderdim. Satrançta bunun tanımlanması son derece zordur, ancak oyun tarzında veya oyun gücündeki ani bir değişiklik hile olduğunu gösterebilir. Özellikle, sadece "işe yarama" eğilimi gösteren ve oyuncu için olumsuz tarafı olmayan (çok doğru) karakteristik olmayan agresif hareketler arardım. 4+ daki zorlanan eşler normalde tahtanın kenarına şövalyeler koyan bir oyuncudan hareket eder (bu mümkün değil ... mümkün değil). Bununla birlikte, bunun tam olarak nasıl işleyeceği, bir kitabın tamamını (veya daha fazlasını) alabilir gibi görünüyor.

EDIT: Son zamanlarda üst düzey satrançta hile ve tespiti ile ilgili bir yazı vardı .


3
insanlar vs bilgisayarlar oyunun açılışında yanlış pozitifler verebilir , en iyi oyunları ezberlemek çok kolaydır
ajax333221

@ ajax333221 Tamamen katılıyorum. Bir dereceye kadar, benzer bir şey, bir insanın onu daha önceki bilgilere dayanarak mükemmel şekilde çok yakın oynayabileceği oyunsonunda geçerli olabilir. Bir oyunda olası hile tespit edersem, ek bilgi ve karmaşık analiz ile eminim, bir bilgisayar aynı şeyi yapabileceğini söyledi. 4+ hamlede zorla yapılan eş, 1050 dereceli bir oyuncuya karşı son bir online oyundan gerçek bir örnekti - son derece müstehcen, en az söylemek ...
Daniel B

20

Blitz'de ne kadar zaman kullandıklarını söyleyebilirsiniz. Motor kullanan kişiler, açılışta göz kamaştırmak ve çoğu normal oyuncunun yaptığı gibi orta oyunda sürünerek yavaşlamak yerine, her hareket için tutarlı bir süre kullanır. Özellikle açılışı hızlı oynayamazlar, çünkü her açılış hamlesinden sonra bilgisayar kartlarını güncellemeleri gerekir. Hareket halinde beş saniye alırlarsa, hareket halinde yirmi beş saniye alırlarsa, muhtemelen bir motor kullanıyorlar.



15

Ekran anahtarları sayısı ve oyun hızı anlamsız. Bunları çevrimiçi bir satranç oynayan web sitesinin organizatörlerine şikayet etmek için kullanırsanız size gülerler.

Birinin aldatma olup olmadığını anlamanın iki yolu vardır. Birincisi "sigara tabancası" dır. Bu oyun bölümünü düşünün -

Allwermann, Clemens (1900) - Kalinitschev, Sergey (2505) Boeblingen (9), 30.12.1999
1. Qa7 Rg8 2. Qxb7 Be4 3. Nf4 Qf5 4. Qd7 Qe5 5. Kh1 g5 6. Nh3 g4 7. Nf2 Bf5 8. Nxg4 Be4 9. R7xf6 Bxg2 + 10. Kxg2 Qe4 + 11. Kh3

Asıl soru bu konumda ne oynarsınız? Buradaki durum, yarışmanın son turundaki galibiyetin bir dizi büyükbabanın önünde turnuvayı kazanması. Yalnızca 1900 için fena değil. Birçoğumuzun kazanmaya devam etmesi için oldukça sağlam bir şey oynayacağından şüpheleniyorum. Rxb7 veya Rd7 gibi hareket eder veya (benim gibi korkaklar için ;-) Rxf6. Qa7, bir hamlenin kalbidir, bir sigara tabancasıdır. Fritz, pozisyondaki en iyi hamle, bir sonraki en iyi hamlenin Rd7.

Oyunun sonunda çıkan silah 2 numaralı oyunda siyah istifa ettiğinde 1900'den oyuncuya turnuvanın tam galibi olarak ayrıldı. Kalinitschev'e bu pozisyonda ne söylersiniz?

Konuşma böyle geçti:

Allwermann: "8'de eş"

Kalinitschev: "Sanmıyorum"

Allwermann: "" Kontrol et, haklı olduğumu bulacaksın "

Allwermann elbette haklıydı. Son 8'de eşi bulabilir misin? Silikon yardımı olmadan mı?

Demek sigara silahın var ve organizatörlere götürüyorsun. Ne yapacaklar?

Öyleyse, aldatmanın devam ettiğine dair makul bir şüphenin ötesinde, tespit ve kanıtlamanın ikinci yolu geliyor.

Her biri en az 20 veritabanı dışı hamle olan en az 20 oyun toplamalı ve bunları kontrol için bir motora beslemelidir. Temel olarak aradıkları şey, şüphelinin, motorun ilk seçimine, ilk 2 seçenekten biri, ilk 3 seçenekten biriyle uyuşan, veritabanı olmayan bir hareket seçtiği zamanın yüzdesidir. "Kanıt" eşikleri -

İlk 1 65%

En iyi% 80

İlk 3 90%

Son bir örnek Borislav İvanov'un performansına ilişkin ateşi .

İşte istatistikleri -

Zadar 19th: Houdini 1.5a x64 Hash: 256 Zaman: 30s Maksimum Derinlik: 20 kat {Borislav Ivanov (Oyunlar: 9)}

{İlk 1 Maç: 210/314 (66.9%) Rakipler: 150/313 (% 47.9)

{Top 2 Maç: 270/314 (86.0%) Rakipler: 207/313 (66.1%)

{İlk 3 Maç: 285/314 (90.8%) Rakipler: 238/313 (76.0%)

{İlk 4 Maç: 293/314 (% 93.3) Rakipler: 267/313 (% 85.3)

Sekizinci turda canlı yem düştü (bunun dışarıdan yardım almasına izin verdiği şüphesi var) ve GM Predojeviç'e yenildi. Bu sonuç kaldırılırsa, yeni istatistikler şunlardır:

Zadar 19th: Houdini 1.5a x64 Hash: 256 Zaman: 30s Maksimum Derinlik: 20 kat {Borislav Ivanov (Oyunlar:)}

{İlk 1 Maç: 197/287 (68.6%) Rakipler: 135/286 (% 47.2)

{Top 2 Maç: 252/287 (87.8%) Rakipler: 188/286 (% 65.7)

{Top 3 Maç: 265/287 (92.3%) Rakipler: 218/286 (76.2%)

{İlk 4 Maç: 272/287 (94.8%) Rakipler: 242/286 (% 84.6)

Gördüğünüz gibi, her iki istatistik grubu da onu bir satranç sunucusundan attıracak. Burada karşılaştırmak için, feed 8 iken oyun 8'in analizi:

{Beyaz: Borislav İvanov}

{En İyi 1 Eşleşme: 13/27 (% 48,1)

{En İyi 2 Eşleşme: 18/27 (% 66,7)

{En İyi 3 Eşleşme: 20/27 (% 74,1)

{En İyi 4 Eşleşme: 22/27 (% 81,5)

{Siyah: Borki Predojevic}

{İlk 1 Maç: 15/27 (% 55,6)

{En İyi 2 Eşleşme: 19/27 (% 70,4)

{En İyi 3 Eşleşme: 20/27 (% 74,1)

{En İyi 4 Eşleşme: 25/27 (% 92,6)

FIDE’nin bilgisayar hileciliği tespit etme ve bunlarla mücadele yollarını araştıran bir komisyon kurduğunu unutmayın. Onların kuralları burada . Bu bölüme dikkat edin:

E. FIDE İnternet Tabanlı Oyun Tarama Aracı

FIDE, tüm FIDE yetkililerine (IO, IA, ACC üyeleri) ve Ulusal Federasyonlara açık olacak İnternet tabanlı bir Oyun İzleme Aracı sunacaktır. FIDE tarafından tahsis edilmiş bir web sayfasında barındırılacak ve yetkili tarafların bir turnuvadaki potansiyel aykırı kişileri belirleyecek “hızlı bir test” için PGN formatında oyun yüklemelerini sağlayacaktır. “Tarama” ile, iddiaların reddedilmesi ve manuel tam teste devam edilmesinin reddedilmesi durumunda atıfta bulunulması dışında, sadece yargı değeri olmayan bir ön test sağladığı anlaşılmaktadır.


1
Harika analiz! T3 / T4 sonuçları, özellikle sonuçlarının olasılığı bildirildiği zaman ikna edicidir. BTW: Görevinin bir süre önce yapıldığını fark ettim, fakat hala Kalinitschev ile Allwermann arasındaki konuşmaya atıfta bulunuyorsun? Açıkçası, hiçbir 1900 8'de güvenilir bir eş bulamıyor, özellikle 2500 bunu görmüyorsa. Onu bu noktaya yükselten için zaman olabilir özellikle akıllı gelmiyor tek başına He hile olduğunu şüphe neden olur.
jaxter

1
BTW: Qa7'ye katılmıyorum! bir kalp durdurucu. Bu basitçe iki gerçeği kullanarak: 1) Siyahın geri rütbesi zayıf ve 2) onun için bir eşe karşı savunmasız. Bu nedenle, kalenin geri kademe sapması potansiyel olarak kazanan taktiklere izin verecektir. Bu durumda, Beyaz hareketi piyona saldırmak, kraliçesini ve yedinci kaleyi koordine etmek için kullanır, böylece kale korunur. Beyaz 1 ... Qxf7 2.Qxa8 + Qg8 3.Qxb7'den sonra en az bir piyon kazanır. Bence herhangi bir GM Qa7 hareketini görmeliydi, ve Kalinitschev'in kaçırdığı için çok şaşırdım. Rxf6'dan sonra tahtadaki en zorlayıcı hareket ?!
jaxter,

1
@jaxter bilgi gelir en.chessbase.com/post/a-history-of-cheating-in-che-3- . Not: "Qa7'nin bu bir kalp durdurucu olduğu konusunda aynı fikirde değilim" - makaleyi okursanız Vishy Anand'ın sizinle aynı fikirde olmadığını göreceksiniz :-). Makaleden - 'Peki kahramanımız ne oynuyor? 31.Qa7? !! “Fritzy!” Anand'ı ispiyonladı ve bunu ve takip eden hareketleri görünce kontrol edilemez bir şekilde gülmeye başladı. '
Brian Towers

Referans için teşekkürler. Ben senin fikrini anlıyorum. Harekete bir şans vermeyi kesinlikle isterdim, ama bu kısmen, White'ın tüm çizgileri hesaplamadan Siyah'ın karşı saldırılarına dayanabileceğini düşündüğüm içindi . Bunu yapmaya kalkıştıysam a) ölümcül bir hata yapacağımdan emin olurdum ve b) Heebie-jeebies'i alıp farklı bir hamle seçerdim. Kesin olarak, sık sık çılgınca hamle yaptığım sezgisini kullandığım için ... Qa7 !. Ayrıca kuşkusuz ki, derecelendirmemin 2000'den düşük olmasının nedenleri ...
jaxter

En üst hamle, çok sayıda oyuncunun bulmasını beklediğiniz ses hamlesi ve çoğu oyuncunun görmesini beklemeyeceğiniz mükemmel bir taktik arasında bir fark var. White'ın yukarıdaki oyunu, sonuncularından birkaçına sahip.
CashCow

9

Buna nasıl yaklaşacağım konusundaki cevabımı vermek için basit bir fikir kullanırdım:

  • Boş Hipotez Testi

Buradaki fikir, sınırlı sayıda halka açık satranç motorunun mevcut olduğu söylenebilir N. Elbette bu varsayım, dolandırıcının kendi satranç motorunu yazdığı (veya halka açık olmayan bir satranç motorunu kullandığı) olasılığını ortadan kaldırır, ancak günlük dolandırıcıları yakalamak için bu yeterince güçlü bir varsayım olmalıdır.

Uygulanması Sıfır Hipotezi Testi Her satranç motoru için: çok basit olurdu Xve mevcut oyunun hamle her alt sıra için olasılığını hesaplamak poynanan altdizisi gözlemleme varsayarak sıfır hipotezini oyuncu olduğunu değil satranç motorunu kullanarak Xhamle yapmak onlar için. Saf bir varsayım (üst hamle belirli sayıda veya rasgele seçilen rastgele oyuncu hamle olduğunu yapılmış olabilir d_i), sonra uzunluk belirli bir alt sıra için olasılık keşleştirme hamle bir satranç motoru Xyapacak şekilde hesaplanabilir olurdu (d_1)/(n_1) * (d_2)/(n_2) * (d_3)/(n_3) *...* (d_k)/(n_k)nerede d_isayısıdır mümkün (üst) hamle yapmakithmotor tarafından derecelendirildiği gibi Xve n_idönüş, oyuncuya dönüş halinde mevcut toplam hamlelerin sayısıdır i(veya bazı makul altkümeler).

O zaman basitçe hesapla

p* = minimum p over all chess engine X, all subsequences y.

Eğer p*bir alt dizi vardır çünkü bir dolandırıcı olarak oyuncu belli bir eşik etiket azdır yve satranç motoru Xoyuncu kullanma olasılığını getiriyor değil istenen probabiity altında hile.


8

Bence oyun sonrası analiz size bir oyuncunun hile yapıp yapmadığını tespit etme şansını veriyor. Bu T3 / T4 analizi olarak adlandırılan şey kullanılarak yapılabilir.

Bu, temel olarak, bir oyuncunun bir motor tarafından önerilen ilk 3 veya ilk 4 hareketten birini seçtiği frekansı ölçer. Bu, kullanılan hedef motoru tanımlama ihtiyacını büyük ölçüde ortadan kaldırır (tercih sırası farklı olsa bile, ilk 4/5 hamlelerde genel olarak anlaşırlar).

Kullanıcının bir takım oyunlarını motorun üst hareketlerine karşı çalıştıracak bir yazılım mevcut. Düzenle:

Böyle bir analiz yapmak için kullanılabilecek ChessAnalyse 'in farkındayım . 30 günlük deneme sürümünü deneyebilirsiniz.


2
Bu, aşağıdaki gibi bazı satranç bilgisine sahip akıllı bir aldatıcı ile karşılanabilir: pozisyonunuzu daha da kötüleştirmeyen oyun hamleleri oynayın ve pozisyonunuzu tehlikeye atacak şekilde rakibinizin ganimetini bekleyin. GM kuvvetine sahip olmayan birine karşı 5 ila 15 dakika boyunca yıldırım oynuyorsanız, bu kesinlikle er ya da geç olur. Üstelik ara sıra kötü bir hamle yaparsanız ve / veya her bir oyunu kazanmakta ısrar etmezseniz, aldatma işleminizin tespit edilemeyeceğinden eminim.
Andrea Mori,

@AndreaMori: Birkaç durumdan kaçınabileceğinizi kabul ediyorum, ancak derecesi arttıkça, giderek daha fazla bakmak zorunda kalacak ve sonunda algılanacak.
avukat

Teşekkürler, yazılımın mevcut olduğunu söylediniz. Bir örnek verebilir misin?
Salvador Dali,

6

Siteniz, kullanıcılara oyun çalışırken FEN pozisyonları veya PGN almak için tek bir tıklama verirse, bunları izlemeyi düşünmelisiniz.

Bazı hile yapanlar en baştan aldatır, ancak diğerleri sadece başları dertteyken aldatmaya başlamayı tercih ederler ve açıkça pozisyonu elle ayarlamak zaman alıcı olduğundan FEN / PGN özelliğini kopyalarlar.

Her nasılsa, kopyaladığı zamanki hamleyle birlikte, bu noktadan sonraki hamlelere kadar karşılaştırabilmeli ve gücünün satranç motorlarının yardımıyla büyük ölçüde artmış olup olmadığına bakmalısınız.

Ancak, hile yapıp yapmadığına karar vermenize yardımcı olması için kullanmanız çok önemli, insan müdahalesi olmayan bir senaryo kullanmak haksızlık olur, birçok yanlış-pozitif olabilir. Ben daha sonra oyunumu aramaya ya da PGN'den tam hareketi bulmaya gerek kalmadan analiz etmek için oynarken. Ve ben her zaman klibi tahtada bırakmıyorum çünkü üzerine yazma korkusuyla not defterine taşıyorum (yani kopyaladıktan hemen sonra pencereleri değiştiriyorum).


2
Bu, "rakibimi aldatıyor mu?" Değil, "bir sunucuyu nasıl yönetirim" bakış açısını ele alıyor gibi görünüyor. birincisi (OP, hangi dava için onun için önemli olduğunu söylemedi). Bahsetmeye değer olabilir, çünkü oyuncunun POV'su hakkında ne düşündüğünüzü anlamam biraz zaman aldı. (İyi cevap… bu anlaşıldıktan sonra ^ _ ^ ')
Nikana Reklawyks

1
@ ajax teşekkür ederiz. Konumun kopyalandığı hareketi kaydetmeyi düşünmedim ve önceki ve sonraki güç arasındaki farkı analiz ettim.
Salvador Dali

ve elbette hile yapanlar bu izlemeyi bulacak ve etkisiz hale getireceklerdir. ya da kendi kopya işlevlerini yerine getirmek zor değildir: codegolf.stackexchange.com/questions/89647/chess-conversion
Sarge Borsch

3

FWIW, hiç kimse Dr. Ken Regan'dan adından bahsetmedi, ancak Lipton'un blogunda yer alan işaretçi , Chess Life'ta çalışmalarını tartışan başka bir makaleyi anlatıyor .

Bu makale, Regan'ın çalışması, 2014'te yürürlükte olan tespit tekniklerinin durumu ve FIDE'nin TD'nin hile yapışmasına yardımcı olmak için standartları, araçları ve teknikleri tanımlamak ve yayınlamak için bir komite oluşturma çalışmaları hakkında oldukça bilgilendirici.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.