Ada banyak situs web online, di mana pemain dapat bermain catur secara real time satu sama lain. Sebagian besar permainan berlangsung 5-10 menit. Dengan ketersediaan perangkat lunak catur, seseorang dapat mengambil keuntungan dengan menggunakan Fritz atau Rybka untuk menyarankan langkah baginya.
Misalnya, saya bisa memasukkan setiap gerakan lawan saya dan melihat perangkat lunak apa yang akan menyarankan untuk saya.
Saya sedang memikirkan beberapa fitur yang dapat menunjukkan bahwa pemain itu curang:
- berapa kali ia mengganti layar
- kecepatan bermain (dalam posisi yang mudah dan sangat sulit)
- akurasi permainan
Apakah ada yang punya ide lain?
PS: Tidak masalah bagi saya, dari perspektif mana Anda berpikir (server atau sisi klien).
analysis
online-chess
Salvador Dali
sumber
sumber
Jawaban:
Ini sebenarnya adalah pertanyaan yang sangat kompleks, dan bukan yang telah diselesaikan dengan cara yang memuaskan, setahu saya. Pada dasarnya, kami meminta algoritma untuk melakukan semacam tes Turing terbalik, untuk membedakan antara pemain manusia dan komputer.
Pertama, cek sisi klien akan selalu memiliki kelemahan, kecuali Anda berada dalam lengkap kontrol dari lingkungan klien. Mari kita ambil ide pertama - memeriksa pergantian antar windows, kedengarannya bagus. Sayangnya, itu sepele bekerja dengan menjalankan mesin catur pada komputer terpisah, atau mengintegrasikan mesin saya dengan klien sehingga tidak ada "pergantian jendela" yang terjadi, atau mengubah klien untuk melaporkan 0 perubahan di jendela, atau ... Tidak ada cara nyata untuk memastikan bahwa itu kode Anda berjalan pada klien, sungguh.
Yang tersisa adalah lingkungan klien yang dikontrol secara fisik (yang tidak akan terjadi untuk game online), atau pengecekan sisi server, yaitu melihat gerakan aktual yang dimainkan (dan mungkin waktu di antara gerakan tersebut, seperti yang Anda katakan), dan mencoba menyimpulkan aspek komputer atau manusia.
Pemeriksaan sisi server juga dapat membagi beberapa cara. Anda mungkin bisa mencoba pendekatan "top-down", yang akan menjadi sesuatu di sepanjang garis "dari game masa lalu dalam sejarah, hanya 2% dari manusia yang membuat langkah itu, sementara 50% dari komputer membuatnya". Ini sebenarnya akan menjadi cara yang cukup baik untuk melakukannya, jika kami memiliki cukup data untuk "posisi apa pun yang diberikan". Ruang pencarian catur sangat besar, namun set data yang sangat besar sekalipun tidak akan memiliki banyak game yang cocok dengan posisi Anda, setelah Anda melewati pertengahan permainan awal.
Dengan asumsi bahwa kami tidak memiliki statistik yang dapat diandalkan di sisi manusia dari persamaan, Anda masih bisa mempresentasikan posisi ke sejumlah mesin catur (dengan masing-masing pengaturan waktu yang berbeda), dan melihat seberapa dekat pergerakan para pemain dengan pertandingan. bahwa dari komputer. Dengan sendirinya, ini juga akan menyebabkan banyak kesalahan positif, namun, pengulangan positif untuk mesin catur yang sama dan pengaturan waktu akan membuatnya semakin mungkin bahwa pemain itu curang. Untuk lebih meningkatkan ini, saya mungkin akan melihat pendekatan "bottom-up" untuk menganalisis posisi catur; singkatnya, mencoba mencari tahu mengapa manusia dan komputer bermain secara berbeda. Misalnya manusia cenderung mengenali pola umum. Dalam gim dengan pola "ganjil", atau situasi yang tidak biasa, manusia cenderung tidak bisa bermain dengan sangat akurat. Tidak satupun,
Untuk menambahkan beberapa spesifik ke daftar Anda, saya akan mengikuti garis bagaimana profesor mendeteksi plagarisme di koran - dengan mendeteksi perubahan mendadak. Dalam catur, ini sangat sulit untuk didefinisikan, tetapi perubahan mendadak dalam gaya bermain atau kekuatan bermain mungkin menunjukkan kecurangan. Secara khusus, saya akan mencari gerakan agresif yang biasanya tidak biasanya "berolahraga", dan tidak memiliki kelemahan untuk pemain (terlalu akurat). Pasangan paksa dalam 4+ gerakan dari pemain yang biasanya menempatkan ksatria di tepi papan, dll (mungkin saja ... tidak mungkin). Namun, bagaimana tepatnya ini bisa bekerja terdengar seperti mengambil seluruh buku (atau lebih).
EDIT: Ada artikel tentang kecurangan dan deteksi di catur tingkat atas baru- baru ini.
sumber
Dalam blitz, Anda dapat mengetahui berapa banyak waktu yang mereka gunakan. Orang-orang yang menggunakan mesin menggunakan jumlah waktu yang konsisten untuk setiap gerakan, alih-alih melakukan blitz melalui pembukaan dan memperlambat hingga merangkak di midgame seperti kebanyakan pemain normal. Secara khusus, mereka tidak dapat memainkan pembukaan cepat, karena mereka harus memperbarui papan komputer mereka setelah setiap gerakan pembukaan. Jika mereka mengambil lima detik bergerak dua dan lima detik bergerak dua puluh, mereka mungkin menggunakan mesin.
sumber
Jumlah sakelar layar dan kecepatan putar tidak ada artinya. Jika Anda menggunakan ini untuk mengeluh kepada penyelenggara situs bermain catur online, mereka akan menertawakan Anda.
Ada dua cara untuk mengetahui apakah seseorang curang. Yang pertama adalah "pistol merokok". Pertimbangkan bagian permainan ini -
Pertanyaannya adalah apa yang akan Anda mainkan di posisi itu? Situasinya adalah bahwa kemenangan dalam hal ini, putaran terakhir kompetisi, akan memenangkan Anda turnamen di depan serangkaian grandmaster. Tidak buruk hanya untuk tahun 1900. Saya menduga sebagian besar dari kita akan memainkan sesuatu yang cukup solid yang membuat kemenangan. Bergerak seperti Rxb7 atau Rd7 atau (untuk pengecut seperti saya ;-) Rxf6. Qa7 adalah penghenti jantung dari gerakan, senjata merokok. Fritz menilai sebagai langkah terbaik di posisi, 0,1 kekalahan di depan langkah terbaik berikutnya, Rd7.
Permainan Smoking gun # 2 pada akhir pertandingan ketika hitam mengundurkan diri meninggalkan pemain berperingkat 1900 sebagai turnamen pemenang langsung. Apa yang akan Anda katakan kepada Kalinitschev dalam posisi itu?
Beginilah percakapan berlangsung:
Allwermann: "Ini pasangan dalam 8"
Kalinitschev: "Saya tidak berpikir begitu"
Allwermann: "" Coba lihat, Anda akan menemukan bahwa saya benar "
Allwermann benar, tentu saja. Dapatkah Anda menemukan pasangan dalam 8 di posisi terakhir? Tanpa bantuan silikon?
Jadi, Anda memiliki senjata merokok dan membawanya ke panitia. Apa yang akan mereka lakukan
Nah, kemudian datang cara kedua untuk mendeteksi dan membuktikan tanpa keraguan bahwa kecurangan sedang terjadi.
Mereka harus mengumpulkan setidaknya 20 game masing-masing dengan setidaknya 20 gerakan non-database dan memasukkannya ke dalam mesin untuk diperiksa. Pada dasarnya yang mereka cari adalah persentase waktu tersangka memilih langkah non-database yang cocok dengan pick pertama engine, salah satu dari 2 pick pertama, salah satu dari 3 pick pertama. Ambang "bukti" adalah -
Top 1 65%
2 80% Teratas
3 90% Teratas
Contoh baru-baru ini adalah kehebohan atas kinerja Borislav Ivanov .
Berikut ini statistiknya -
Zadar 19: Houdini 1.5a x64 Hash: 256 Waktu: 30s Max Kedalaman: 20ply {Borislav Ivanov (Game: 9)}
{Pertandingan 1 Teratas: 210/314 (66,9%) Penentang: 150/313 (47,9%)
{Pertandingan 2 Teratas: 270/314 (86,0%) Penentang: 207/313 (66,1%)
{Pertandingan 3 Teratas: 285/314 (90,8%) Penentang: 238/313 (76,0%)
{Pertandingan 4 Teratas: 293/314 (93,3%) Penentang: 267/313 (85,3%)
Pada ronde ke-8 pakan hidup turun (diduga bahwa ini memungkinkan bantuan luarnya bergerak) dan dia kalah dari GM Predojevic. Jika hasil ini dihapus maka statistik baru adalah:
Zadar 19: Houdini 1.5a x64 Hash: 256 Waktu: 30-an Kedalaman Maks: 20ply {Borislav Ivanov (Game:)}
{Pertandingan 1 Teratas: 197/287 (68,6%) Penentang: 135/286 (47,2%)
{Pertandingan 2 Teratas: 252/287 (87,8%) Penentang: 188/286 (65,7%)
{Pertandingan 3 Teratas: 265/287 (92,3%) Penentang: 218/286 (76,2%)
{Pertandingan 4 Teratas: 272/287 (94,8%) Penentang: 242/286 (84,6%)
Seperti yang Anda lihat, kedua set statistik akan membuatnya terlempar dari server catur. Untuk perbandingan di sini adalah analisis untuk game 8 ketika umpannya turun:
{Putih: Borislav Ivanov}
{Pertandingan 1 Teratas: 13/27 (48,1%)
{Pertandingan 2 Teratas: 18/27 (66,7%)
{Pertandingan 3 Teratas: 20/27 (74,1%)
{Pertandingan 4 Teratas: 22/27 (81,5%)
{Hitam: Borki Predojevic}
{Pertandingan 1 Teratas: 15/27 (55,6%)
{Pertandingan 2 Teratas: 19/27 (70,4%)
{Pertandingan 3 Teratas: 20/27 (74,1%)
{Pertandingan 4 Teratas: 25/27 (92,6%)
Perhatikan bahwa FIDE telah membentuk komisi untuk menyelidiki cara mendeteksi dan memerangi kecurangan komputer. Pedoman mereka ada di sini . Perhatikan bagian ini:
sumber
Untuk memberikan jawaban saya tentang bagaimana saya akan mendekati ini, saya akan menggunakan ide sederhana:
Idenya adalah bahwa ada sejumlah mesin catur yang tersedia untuk umum, katakan saja
N
dari mereka. Asumsi ini tentu saja menghalangi kemungkinan bahwa penipu telah menulis mesin catur mereka sendiri (atau menggunakan mesin catur yang tidak tersedia untuk umum) tetapi untuk menangkap penipu kasual ini harus menjadi asumsi yang cukup kuat.Penerapan Null Hipotesis Uji akan sangat sederhana: untuk setiap mesin catur
X
dan untuk setiap subsequence bergerak dari permainan saat menghitung probabilitasp
dari mengamati subsequence dimainkan dengan asumsi yang hipotesis nol bahwa pemain tidak menggunakan mesin caturX
untuk membuat bergerak untuk mereka. Asumsi naif dapat dibuat bahwa pemain bergerak secara acak (atau secara acak memilih dari sejumlah gerakan teratas yang dipilihd_i
), maka probabilitas untuk gerakan panjangk
pencocokan panjang tertentu yangX
akan dibuat oleh mesin catur akan dihitung sebagai di(d_1)/(n_1) * (d_2)/(n_2) * (d_3)/(n_3) *...* (d_k)/(n_k)
manad_i
jumlah mungkin (atas) bergerak untuk dilakukan diith
gilirannya, seperti yang dinilai oleh mesinX
dann_i
adalah jumlah total gerakan yang tersedia untuk pemain pada gilirannyai
(atau beberapa bagian yang masuk akal.)Maka cukup hitung
Jika
p*
kurang dari batas tertentu label pemain sebagai penipu karena ada mesin berikutnyay
dan caturX
yang membawa kemungkinan bahwa pemain tidak curang di bawah probabilitas yang diinginkan.sumber
Saya pikir analisis pasca-pertandingan memberi Anda peluang terbaik untuk mengidentifikasi apakah seorang pemain curang. Ini dapat dilakukan dengan menggunakan apa yang disebut sebagai analisis T3 / T4.
Ini pada dasarnya mengukur frekuensi di mana seorang pemain mengambil salah satu dari 3 gerakan teratas atau 4 gerakan teratas yang disarankan oleh mesin. Ini sebagian besar menghilangkan kebutuhan untuk mengidentifikasi mesin target yang digunakan (karena mereka umumnya akan menyetujui 4/5 atas bergerak bahkan jika urutan preferensi berbeda).
Ada perangkat lunak yang tersedia yang akan menjalankan satu set permainan pengguna terhadap gerakan n atas mesin. Edit:
Saya menyadari ChessAnalyse yang dapat digunakan untuk melakukan analisis seperti itu. Anda dapat mencoba versi uji coba 30 hari.
sumber
Jika situs Anda memberi pengguna sekali klik mendapatkan posisi FEN atau PGN saat game sedang berjalan , Anda harus mempertimbangkan untuk melacaknya.
Beberapa penipu curang sejak awal, tetapi yang lain lebih suka untuk mulai curang ketika mereka dalam masalah, dan mereka jelas akan menggunakan fitur copy FEN / PGN karena memakan waktu untuk mengatur posisi secara manual.
Entah bagaimana Anda harus menyimpannya bersamaan dengan gerakan pada saat ia menyalinnya, dengan cara ini Anda dapat membandingkan dari titik itu dengan gerakan berikut dan melihat apakah kekuatannya meningkat pesat dengan bantuan mesin catur.
Tetapi sangat penting bahwa Anda menggunakannya hanya untuk membantu Anda memutuskan jika dia curang, itu akan tidak adil untuk menggunakan skrip yang tidak menggunakan intervensi manusia, mungkin ada banyak kesalahan positif, misalnya, saya sering suka menyalin posisi sementara saya bermain untuk kemudian menganalisisnya tanpa perlu mencari permainan saya atau menemukan langkah yang tepat dari PGN. Dan saya tidak selalu meninggalkannya di clip-board saya karena takut menimpanya jadi saya memindahkannya ke notepad (yang berarti saya mengganti windows setelah menyalinnya).
sumber
FWIW, tidak ada yang menyebut nama Dr. Ken Regan, meskipun penunjuk ke blog Lipton menggambarkan artikel lain di Chess Life yang membahas karyanya.
Artikel itu sangat informatif tentang pekerjaan Regan, keadaan teknik deteksi yang berlaku pada tahun 2014, dan karya FIDE dalam membentuk komite untuk menetapkan dan menyebarluaskan standar, alat, dan teknik untuk membantu TD dalam menghilangkan kecurangan.
sumber