Shatranj

Software screenshot:
Shatranj
Dettagli del software:
Versione: 1.17
Data di caricamento: 3 Jun 15
Sviluppatore: Sam Tannous
Licenza: Libero
Popolarità: 94

Rating: 3.0/5 (Total Votes: 1)

Shatranj è una, open source basato bitboard-, modulo di programmazione scacchi interattivo che permette la manipolazione delle posizioni degli scacchi e la sperimentazione di algoritmi di ricerca e tecniche di valutazione. L'obiettivo di Shatranj è quello di scrivere un toolkit per aiutare nella realizzazione dei programmi di scacchi Shannon Tipo B.
In quanto tale, la velocità di esecuzione diventa meno importante poi codice chiarezza e la forza espressiva del linguaggio di implementazione. Essendo stato scritto in un linguaggio interpretato, questo modulo permette al programmatore di scacchi di manipolare bitboard in modo naturale, interattivo proprio come toolkit di elaborazione dei segnali consentono agli ingegneri di comunicazione per manipolare vettori di suoni campioni in MATLAB.
Il modulo implementa currenly una semplice ricerca minimax ricorsiva con alphabeta potatura, approfondimento iterativo, usa breve notazione algebrica, gestisce verifica la ripetizione, e la regola delle 50 mosse. Caratteristiche che mancano sono i controlli di riposo, le tabelle di transizione, negascout e MTD ricerca.
Il toolkit di programmazione scacchi è disponibile sotto forma di un modulo Python chiamato shatranj.py. È inoltre probabile che sia necessario il libro di apertura, così come alcune delle tabelle pre-costruiti hash che vengono utilizzati in tutto il modulo (questi saranno ricalcolati se il modulo non riesce a trovare il file di dati).
Mettere tutti e tre file nella stessa directory e python eseguire semplicemente sul modulo python ("python shatranj.py"). Per quanto riguarda i requisiti, tutto quello che serve è una versione recente del linguaggio di alto livello interpretato chiamato Python (qualsiasi cosa dopo la versione 2.3 dovrebbe funzionare bene). Se volete un po 'di un aumento di velocità, Shatranj guarda per il modulo Psyco e lo userà se è installato.
Fino ulteriore documentazione sarà disponibile, ecco un esempio di sessione breve:
[Sam-Tannous-computer: ~ / Shatranj] stannoso% pitone
>>> Da Shatranj import *
... La lettura dei dati di avvio
... Il tempo totale per leggere 0,0774528980255 dati
... Trovati libro di apertura Shatranj-book.bin con 37.848 posizioni
>>> Posizione = posizione ("r1bqk2r / pppp1ppp / 2N5 / 5N2 / 2B1n3 / 8 / PPP1QPPP / R1B1K2R")
>>> All_pieces = position.piece_bb ["b_occupied"] | position.piece_bb ["w_occupied"]
>>> Other_pieces = position.piece_bb ["b_occupied"]
>>> From_square = c4
>>> Wtm = 1
>>> Maschera = position.pinned (from_square, WTM)
>>> Ne_pieces = diag_mask_ne [from_square] & all_pieces
>>> Nw_pieces = diag_mask_nw [from_square] & all_pieces
>>> sposta = ((diag_attacks_ne [from_square] [ne_pieces] e other_pieces) |
... (Diag_attacks_ne [from_square] [] ne_pieces & ~ all_pieces) |
... (Diag_attacks_nw [from_square] [nw_pieces] e other_pieces) |
... (Diag_attacks_nw [from_square] [] nw_pieces & ~ all_pieces)) e la maschera
>>>
>>> si muove
1275777090846720L
>>>
>>> Base_di_arrivo (spostamenti, 2)
'100100010000101000000000000010100000000000000000000'
>>> display (si muove)
    + --- + --- + --- + --- + --- + --- + --- + --- +
  8 | |. | |. | |. | |. |
    + --- + --- + --- + --- + --- + --- + --- + --- +
  7 |. | |. | |. | 1 |. | |
    + --- + --- + --- + --- + --- + --- + --- + --- +
  6 | 1 |. | |. | 1 |. | |. |
    + --- + --- + --- + --- + --- + --- + --- + --- +
  5 |. | 1 |. | 1 |. | |. | |
    + --- + --- + --- + --- + --- + --- + --- + --- +
  4 | |. | |. | |. | |. |
    + --- + --- + --- + --- + --- + --- + --- + --- +
  3 |. | 1 |. | 1 |. | |. | |
    + --- + --- + --- + --- + --- + --- + --- + --- +
  2 | |. | |. | |. | |. |
    + --- + --- + --- + --- + --- + --- + --- + --- +
  1 |. | |. | |. | |. | |
    + --- + --- + --- + --- + --- + --- + --- + --- +
      a b c d e f g h
>>> position.show_moves (1)
['Rg1', 'O-O', 'F3', 'a3', 'Rb1', 'f4', 'BA6',
'BH6', 'Bd3', 'Qg4', 'QE3', 'NE7', 'BE6', 'Nxg7',
'Qxe4', 'NE3', 'b4', 'NH4', 'b3', 'Be3', 'Ag5',
'G3', 'KF1', 'Rf1', 'NH6', 'A4', 'NG3', 'Qh5',
'KD1', 'h4', 'h3', 'c3', 'Bxf7', 'Nd6', 'Bb5',
'Nd4', 'QF3', 'g4', 'QF1', 'Bb3', 'QD1', 'QD3',
'QD2', 'BD5', 'Bd2', 'BF4']
>>>
>>> # Ora giocare un gioco!
>>> Play ()
Shatranj versione 1.10
         g: lati di commutazione m: mostra mosse legali
         n: nuovo gioco l: lista dei giochi di registrazione
         d: Display bordo b: mostra del libro si muove
        profondità di ricerca (2-16) default = 5: sd
         q: quit
Shatranj: d
    + --- + --- + --- + --- + --- + --- + --- + --- +
  8 | r | n | b | q | k | b | n | r |
    + --- + --- + --- + --- + --- + --- + --- + --- +
  7 | p | p | p | p | p | p | p | p |
    + --- + --- + --- + --- + --- + --- + --- + --- +
  6 | |. | |. | |. | |. |
    + --- + --- + --- + --- + --- + --- + --- + --- +
  5 |. | |. | |. | |. | |
    + --- + --- + --- + --- + --- + --- + --- + --- +
  4 | |. | |. | |. | |. |
    + --- + --- + --- + --- + --- + --- + --- + --- +
  3 |. | |. | |. | |. | |
    + --- + --- + --- + --- + --- + --- + --- + --- +
  2 | P | P | P | P | P | P | P | P |
    + --- + --- + --- + --- + --- + --- + --- + --- +
  1 | R | N | B | D | K | B | N | R |
    + --- + --- + --- + --- + --- + --- + --- + --- +
      a b c d e f g h

Programmi simili

Dice Wars Enhanced
Dice Wars Enhanced

20 Feb 15

Angband
Angband

28 Sep 15

Homeworld SDL
Homeworld SDL

2 Jun 15

Commenti a Shatranj

I commenti non trovato
Aggiungi commento
Accendere le immagini!