Newsgroup: it.hobby.enigmi
Titolo: Scegli il quadrato.

Propongo questo semplice giochino a cui non sono ancora
riuscito a trovare una soluzione ... Spero in un vostro
aiuto...
Due giocatori scelgolo, a turno, 1, 4 oppure 9 caselle
rispettivamente con quadrati 1x1, 2x2 oppure con 3x3
caselle in una scacchiera 8x8.
Perde colui che muove per ultimo.
Scegliere la strategia migliore!
CiaO,
Massimo
PS ... Provare anche con scacchiere di lato inferiore.
       ;-)
-- 
Posted from 
net128-007.mclink.it
 [195.110.128.7] 
via Mailgate.ORG Server - 
http://www.Mailgate.ORG

 Scegliere la strategia migliore!
provo a risponderti un po' a naso, a quest' ora
non me la sento di fare prove pratiche... Mi pare
che il primo giocatore debba occupare il centro
della scacchiera con un un quadrato 2x2 e poi
rispondere in maniera simmetrica alle mosse dell'
avversario. Funziona?
ciao
fulvio

 avversario. Funziona?
.
.
.
...credo di no, visto che se giochi simmetrico ti
troveresti nella condizione di muovere per ultimo!
;-))
CiaO,
Massimo
-- 
Posted from 
net128-053.mclink.it
 [195.110.128.53] 


 ;-))
Ah, avevo capito male, e' vero...
Perde chi mette l' ultimo quadrato...
Il gioco forse e' assimilabile al Nim, dunque pare
che occorra un calcolino con i numeri binari (non
chiederlo a me)  ;-)
ciao
fulvio

 chiederlo a me)  ;-)
E' un Nim-derivato, e quindi c'è una letteratura vastissima
sull'argomento, ma non è affatto un calcolino. Quello che Massimo non
dice è che una mezza dozzina di cervelloni si è cimentato per
settimane sul suo gioco, e sono uscite fuori belle cose, mi pare di
ricordare. Ma il caso 8x8 ancora non era stato risolto, ed il 7x7 solo
spannometricamente. Quindi bisogna sudare.
Silv:o)

 spannometricamente. Quindi bisogna sudare.
Figuriamoci! E pensare che il gioco al contrario
(vince  chi muove ultimo) era davvero da
bambini...
ciao
fulvio

 spannometricamente. Quindi bisogna sudare.
Sono convinto anche io, ma a giudicare da quanto fatto per
i polimini ... credo si possa ben sperare.
Infatti, ero nel dubbio sul titolo con: "Scegli il puntomino".
;-)
CiaO,
Massimo


.
.
Visto che questo NG si sta 
arricchendo di gente che, di
riffa o di raffa, sa programmare, proporrei una 
gara, a 
tempo indeterminato, tra programmi che giochino a questo 
gioco. 
Per far cio' occorre definire qualche standard.


 


Propongo la notazione scacchistica dove ciascuna 
mossa 
sia scritta in una stringa di tre caratteri dove:


 


1) Il primo carattere rappresenta il pezzo: 

   "1" per il quadrato 1x1
   "2" per il quadrato 
2x2
   "3" per il quadrato 3x3


 


2) Il secondo e il terzo rappresentano le 
coordinate 
scacchistiche del quadretto in basso a sinistra del 
pezzo; 
"a1" e' la casella in basso a sinistra, "h8" 
quella in alto a 
destra.


 


Esempio:
  _ _ _ _ _ _ _ 
_
8|               
|
7|              
_|
6|    _ _      
|_|
5|   |   |       
|
4|_ _|_ _|       
|
3|     
|         
|
2|     
|         |
1|_ _ _|_ _ _ _ 
_|
  a b c d e f g h


 


Le mosse sono 
state:
3a1
1h6
2c4


 


Ogni programma legge e scrive il file MOVE.TXT dove 

*appende* la propria mossa seguita dai due caratteri 
di fine riga 
CARRIAGE_RETURN e LINE_FEED, cioe' CR e
LF, cioe' ascii(13) e 
ascii(10).
Ogni programma polla in lettura il file MOVE.TXT e 
appende la 
propria mossa in modo asincrono. Ogni 
programma si protegge dall'errore di 
una scrittura 
contemporanea ad una lettura di un altro programma, 
e 
viceversa. In questo modo due programmi possono 
giocare l'uno contro l'altro 
sullo stesso PC, oppure 
su PC diversi, anche con diversi S.O. (Linux e 
Mac
compresi :), su una rete locale, o in accesso remoto, 
dove il file 
MOVE.TXT sia un file condiviso. 
Qualcuno potrebbe sviluppare un applet Java 
e 
metterlo in un sito internet.
Ciascuno puo' sviluppare un'interfaccia 
grafica a
piacere per giocare anche contro gli umani. :o)


 


Qualcuno ci sta? Senza impegno a priori, 
s'intende,
nello spirito del gioco gioioso. :o)


 


Ciao  :o)
Livio


 


 


 


 


 


 



 sia scritta in una stringa di tre caratteri....
Concordo.
CiaO,
Massimo
-- 
Posted from 
net128-053.mclink.it
 [195.110.128.53] 


 sia scritta in una stringa di tre caratteri....
Concordo.
CiaO,
Massimo
-- 
Posted from 
net128-053.mclink.it
 [195.110.128.53] 



.
Dunque...
Io sarei pronto con la prima release!
(due notti di fuoco :). Chi volesse farsi solo venir voglia, qui c'e' una
foto del prg:
.
http://members.theglobe.com/liviozucca/download/sqrgame.gif
.
Il
programma e' in ambiente Pentium/Windows95 in su. Chi volesse fare il
download, allora i casi sono due:
.
1) Se siete esperti o se avete VB5 o
se avete gia' fatto girare almeno uno dei miei applicativi VisualBasic5,
allora potete tirare giu' questo piccolo failetto, unzipparlo e lanciare
<quadrati.EXE>:
.
http://members.theglobe.com/liviozucca/download/quacomp.zip
.
2) Se non
volete rogne, fate il download di questo file di setup, unzippatelo con
Winzip e lanciate Setup.EXE per l'installazione guidata (1.41 MByte, 10
minuti di pazienza):
.
http://members.theglobe.com/liviozucca/download/quadrati.zip
.
Le mosse
del programma sono ancora debolissime, ma non appena qualcun'altro fa un
programma vincente, rispondero' con un up-grade, almeno ci provero'. 
.
.
Sperandovi numerosi, vi abbraccio  :o)
Livio
--------------------------------
Inviato via 
http://usenet.iol.it
 

Livio Zucca wrote
[ un bel programmino ]
Bel lavoro !
E questo silenzio fa presagire tanti Deep Blue in arrivo  :-)
Mandate avanti questo thread ogni tanto per far sapere
come vanno le sfide.
Grazie
Robi  (lurker)
--
====
x  =  i
====

 Io sarei pronto con la prima release!
Bello il tuo programmino! Non è il massimo come strategia (ma questo lo
riconosci tu stesso!), ma ha il pregio di farti giocare molto velocemente e
permettere all'"umano" di elaborare e sviluppare una propria strategia,
molto più che studiando il problema mentalmente o su una vera scacchiera.
Purtroppo in questo periodo riesco solo a fare dei blitz su IHE e, per
mancanza di tempo, non credo che riuscirò a partecipare alla gara, anche se
mi piacerebbe. :-(
Volevo solo segnalarti un piccolo bug che ho riscontrato, anche se non
riesco a riprodurlo sistematicamente. Ogni tanto (soprattuto nella fase in
cui c'è posto solo per i quadrati da 1 e viene da muovere in fretta) capita
che un quadrato trascinato in modo non preciso sulla scacchiera non venga
accettato ma venga comunque considerata la mossa, con l'effetto di alterare
la parità e stravolgere l'esito della partita. Se fai qualche prova,
trascinando molto velocemente, dovrebbe capitare anche a te.
Potrebbe comunque valere la pena, una volta che si possono piazzare solo
quadrati da 1, di interrompere la partita e decretare il vincitore sulla
base del conteggio delle mosse rimanenti.
Complimenti e ciao :-)
Giorgio


.
Sara' fatto!
.
Ciao e grazie  :o)


 Io sarei pronto con la prima release!
...semplice ed efficace come altre tue realizzazioni.
Mi sara' molto d'aiuto per lo sviluppo grafico della mia versione
che non credo sara' pronta prima di fine settimana.
Cmq ti anticipo che dovrai elaborare una strategia migliore perche'
riesco a non perdere mai anche giocando come 2.nd .....
... la cosa difficile sara' trasferire tutto al prg !
;-)
CiaO,
Massimo

nello spirito del gioco gioioso. :o)
Eccomi.
Il programma lo scaricate da:
http://www.xzanaga.supereva.it/quadrati.zip
E' molto simile a quello di Livio, la differenza principale č che č
orientato a fruttare eventualmente
una dll per generare la mossa successiva. Chi volesse
concentrarsi sull'algoritmo basta che si crei una dll
con la funzione che genera la mossa successiva (ho messo la "documentazione"
in un file leggimi.txt)
Ho inserito anche due esempi fatti con MS Visual C++ 6.0 e Borland C+
Builder 5.0
Adesso vado, mi metto all'opera sull'algoritmo e tra un po' spero di avere
l'onore di sfidare Livio !


Ho preparato una seconda versione, scaricare da:
http://www.xzanaga.supereva.it/quadrati2.zip
la differenza tra la prima versione:
1) Se si attiva "Completa automaticamente" e si è
in manuale, quando rimangono solo quadrati a 1
viene completato automaticamente
2) se si attiva "ricomincia automaticamente" la partita successiva
ricomincia subito
3) se si utilizza "player1.dll" la strategia è un po'
migliorata:
a) se può, esegue una mossa che porta alla vittoria sicura
b) se può, evita di fare mosse che lo portino alla
sconfitta sicura

 migliorata:
...Purtroppo la mia versione ancora non ha superato
la release 0.09 e credo di avere dei seri problemi
di tempo in questa settimana.
Cmq, ho provato a lanciare una sfida tra il tuo nuovo
prg e quello di Livio e non ho avuto nessuna conferma
sulla bonta' dell'algoritmo....(circa alla pari).
Cmq c'e' un errore nel far giocare Player 1 contro 
"Altro" in quanto di blocca e non procede a fare altre
mosse...
;-)
CiaO,
Massimo


Arrgh, l'errore non è mio :-)
In realtà i due programmi vanno fuori sincronizzazione, però a occhio mi
sembra sia proprio quello di Livio che non scrive sul file di testo.
Quando lo metti in modalità "altro", al momento del turno il mio prog apre
il file move.txt e va a vedere se c'è una nuova mossa, ma se l'altro
programma non scrive nulla rimane in attesa.
Per far giocare i due programmi bisogna:
Su quello di Livio:
Premere "reset"
Premere "I play first"
sul mio:
Giocatore1 : "Altro"
Giocatore2: "player2.dll"
premere "Riprendi"
per giocare continuato:
ripremere su quello di Livio "reset" e "I play first" e sul mio "Riprendi"


Avevo detto che non avrei avuto tempo per partecipare alla gara e invece non
ho resistito! :-) Qualcosa sono riuscito a fare e non sembra malaccio.
Si tratta di un programmino C++, con interfaccia utente testuale (in
finestra DOS) in cui le mosse possono essere inserite da tastiera o via file
"move.txt". Si basa su un algoritmo di ricerca in profondità, senza
valutazioni posizionali né hint di alcun genere. La profondità è variabile
secondo le fasi di gioco per mantenere pressoché costante il tempo di
risposta per ogni mossa (qualche secondo, anche per le prime mosse).
Nelle varie prove che ho fatto ha battuto sempre i programmi di Livio e di
Nick. Però, impegnandomi, io sono riuscito a batterlo!
Se lo volete, ve lo do così come è (qualche bug ci sarà senz'altro!).
Siccome però non ho un sito web su cui
metterlo, avrei bisogno di mandarlo a qualcuno di voi, che poi lo mette sul
suo sito. E' un semplice .EXE, ma fa uso della dll di MFC, per cui non è
detto che funzioni da solo. Io non ho molto tempo per fare un programma di
installazione, per cui se ci dovessero essere dei problemi ad eseguirlo,
spero che qualcuno mi aiuti.
Fatemi sapere a chi lo posso mandare, grazie!
Ciao :-)
Giorgio


Invia pure a 
nicola...@inwind.it
grazie.
PS: se č i C++ potresti anche eventualmente creare una .dll da linkare sul
mio ?


lo scaricate da:
http://www.xzanaga.supereva.it/squaremaster_giorgio.zip
se ha qualcuno mancasse qualche dll, purtroppo le deve scaricare da internet
(con google basta cercare "download" e nome della dll)


Ho mandato a Nick anche la versione dll del mio algoritmo in modo che possa
essere utilizzata con il suo programma. Dovrebbe essere disponibile a breve
sul sito di Nick.
Ciao
Giorgio

 che spero di confrontare con la tua.
.
.
.
Ci sto lavorando "quando possibile" ....e se posso anticipare
qualcosa sul mio algoritmo, posso dire che ho appena
finito di mettere a punto la routine principale che
prende la decisione sulla mossa successiva, ma per il
momento ho deciso di aspettare gli eventi...
Se vuoi possiamo simulare una partita in e-mail quando
vuoi ..... Almeno sappiamo come stanno le cose!!!
;-))
CiaO,
Massimo
-- 
Posted from 
net128-053.mclink.it
 [195.110.128.53] 


Ci sto lavorando "quando possibile"
....e se posso anticipare qualcosa sul mio algoritmo...
.
.
Ciao a
tutti.
Scusate qualche giorno di vacanza senza PC.
Sto provando i
programmi di Nick e Giorgio, complimenti, e' fantastico vedere il proprio
programma giocare contro i vostri. Presto rilascero' una nuova release
riveduta e corretta, spero vincente, anche se e' gia' difficile. Vorrei
incoraggiare tutti a provare, e' entusiasmante. L'importante e'
partecipare. Spero di farne una paginetta web, ma non voglio vendere la
pelle dell'orso prima di averlo cacciato.
.
A presto  :o)



Ricapitolo un attimo i link:
http://www.xzanaga.supereva.it/esempiodll.zip
(due progetti di esempio in C++ per creare la dll)
http://www.xzanaga.supereva.it/nickquadrati.zip
(l'ultima versione del programma !! attenzione senza .dll !! )
(ho aggiunto la funzione per ottenere il nome e corretto qualche bug)
http://www.xzanaga.supereva.it/dllnick.zip
(la mia dll di esempio)
http://www.xzanaga.supereva.it/dllgiorgio.zip
(la dll creata da Giorgio. Scaricarla e scompattarla nella directory del
programma, e poi rinominarla in "player1.dll" oppure "player2.dll" a
seconda di come volete farla partire)
Attualmente la versione da "battere" è proprio quella di Giorgio :-)

 Attualmente la versione da "battere" è proprio quella di Giorgio :-)
Ottimo lavoro da parte di Giorgio. In effetti usa la stessa tecnica
che uso io a mano...
;-)
La cosa difficile sara' provare che esiste "sempre" una strategia
vincente per il primo giocatore (come e' logico che sia...) oppure
se il secondo ha sempre la possibilita' di recupero.
CiaO,
Massimo
PS ... Vado via per lavoro domani e torno per il fine settimana.
       ;-(


Hai scritto l'algoritmo in C++ ?
Perchè in tal caso potresti (come ha fatto Giorgio) creare la .dll dal
linkare sul mio programma.
Il punto è che (almeno per il mio algortimo e per le mie prove) ho la
necessità di far scontrare più volte di seguito gli avversari, e con due
prog diversi è un po' complicato farlo a mano, mentre con via dll il
programma li lancia in automatico.
Cmq, all'indirizzo:
http://www.xzanaga.supereva.it/dllnick.zip
trovate l'aggiornamento della mia dll. Fatelo giocare come "player2.dll"
(copiandolo e rinominandolo).
Non è l'algoritmo definitivo, nè è il massimo, però ho deciso di postarlo
perchè facendolo scontrare una ventina di volte contro quello di Giorgio
vinco quasi il doppio delle volte.
E' lento (ogni mossa richede al massimo 7 secondi) e ha un po' di bug (può
bloccare la macchina).
Ho limitato la ricerca delle mosse entro i 7 secondi, quindi su macchine più
veloci è "piu' bravo" in quanto riesce a controllare più combinazioni.
all'indirizzo
http://www.xzanaga.supereva.it/nickquadrati.zip
(l'ultima versione del programma !! attenzione senza .dll !! )
ho corretto qualcosina.

 vinco quasi il doppio delle volte.
... mi sto rimboccando le maniche per la versione 2.0!!!! :-))))))))))
Ciao :-)
Giorgio

> vinco quasi il doppio delle volte.
.
Ecco
la mia Release R1.2:
.
http://www.members.theglobe.com/liviozucca/download/zucca2.zip
.
A casa
mia e' vincente ma, si sa, il fattore campo...
.
A disposizione per
qualunque problema di installazione. Viene voglia di lanciare la sfida
internazionale. Il problema sembra abbastanza complesso da non avere una
soluzione semplice. Mi pare che ci siano ancora ampi margini.
.
In bocca
al lupo  :o)
Livio
PS: non l'ho ancora provato contro l'ultima versione
di Nick!


 .
Io avrei qualche piccolo problemino.
Allora:
1) se premo "Start 1" il programma fa la mossa, vado a vedere il file
"move.txt" con il notepad e non c'è scritto nulla !!!
2) Consiglio: con il riparti automaticamente, potresti mantere inalterato
giocatore 1 - giocatore 2 e non invertire (o almeno dare l'opzione) senno'
come si fa a contare il numero di vittore/sconfite multiple se scambi i
giocatori a ogni ripartenza ?
3) il link è senza il www davanti ....
4) Se vinco mi dai la Gloria ? spero che sia disponibile e carina almeno !!!
:-))))
PS: spero di fare la mia versione completa questo fine settimana, oramai ho
cominciato e voglio andare fino in fondo.


.
Ehm... qualche cosa mi dice che il
fondo e' profondo. E poi ci sono le scacchiere 10x10, 12x12...
.
PS2: a
casa mia il mio e' vincente anche sulla tua ultima dll :o)



Ciao a tutti.
Ho fatto la versione 2.0. Generalmente batte il programma di Nick e vince un
po' più della metà delle volte contro quello di Livio. Ora la invio a Nick
(e anche a te Livio, se non ti disturbo).
Ha ancora qualche debolezza e infatti ho quasi pronta la versione 2.1. Non
penso però che riuscirò a inviarla perché sabato vado in ferie e non credo
che farò in tempo a completarla. A questo proposito, tornerò tra circa 15
giorni e per tutti questi giorni non ho intenzione di pensare a enigmi o
problemi legati al computer. Quindi Riposo Assoluto! Avete 15 giorni di
vantaggio (sono convinto che ve ne basteranno MOLTI meno per battere la mia
versione! :-))) ).
Mi piace l'idea di Livio della sfida internazionale. Potremmo unire le
nostre forze e credo che sarebbe molto divertente. Già adesso la gara è
entusiasmante! :-)
Un saluto a tutti. Ci "rivediamo" tra ca. 15 giorni.
Giorgio

unpo' più della metà delle volte contro quello di Livio. Ora la invio a
Nick (e anche a te Livio, se non ti disturbo).
.
La ricevo con piacere,
sto preparando una paginetta....
Qua, pero':
.
livio...@tiscalinet.it
.
Quello scritto sopra e' falso perche' sono subissato di spam!
.
Anch'io, purtroppo/perfortuna andro' in ferie a luglio senza PC, cmq di
questa sfida ne faremo ancora qualche cosa...
.
Buone vacanze!
Livio


 Buone vacanze!
.
.
..e pensare che io sono "saturo" di lavoro fino ad agosto!
;(
Purtroppo ancora non e' possibile valutare la mia versione
per molteplici motivi, ma statene certi che non sara' ad
altissimi livelli.
CiaO,
Massimo
PS. Noto con piacere che il problema ha stimolato interesse...
-- 
Posted from 
net128-007.mclink.it
 [195.110.128.7] 



ancora per poco, spero....
cmq,  ho aggiornato il programma di giorgio (dll + programma):
http://www.xzanaga.supereva.it/dllgiorgio.zip

 .
Basterebbe utilizzare una scacchiera di lato dispari, per
cambiare qualcosa nella strategia...
Con l'aiuto di Livio ho quasi finito la mia prima versione.
;-)
A presto, CiaO,
Massimo
-- 
Posted from 
net128-007.mclink.it
 [195.110.128.7] 



http://www.xzanaga.supereva.it/dllgiorgio.zip
.
.
.
Sapete, ci son rimasto male nel vedere il mio algoritmo prendersi un
cappotto da quello di Giorgio! E poi non vorrei mai che Giorgio Vecchi
tornasse dalle ferie e il suo prg fosse ancora vincente. Anzi, se annoiato
dalle sue vacanze troppo lontane da IHE, entra in un Cyber-bar e ci spia,
deve andargli il gelato di traverso!!!  :o)))
.
Per questo ho lavorato
sulla mia realese R1.4. L'ho messa qua:
.
http://members.theglobe.com/liviozucca/download/zucca4.zip
.
A me sembra
di nuovo vincente, ditemi voi.
.
Per quelli che lav... giocano con
VisualBasic5 e non avessero voglia di farsi tutto il programma, ho messo
nello zip i sorgenti della release precedente, a cui ho estirpato ogni
tattica o strategia, sostituendo la subroutine con una che risponde a caso.
Chi volesse utilizzarlo in tutto o in parte, lo puo' fare.
.
Mi sembra
cmq che il problema sia ancora lontano dalla soluzione finale. Io, ad es.,
il mio prg lo batto ancora abbastanza facilmente. Per la proposta
internazionale, devo ancora finire di tradurre il file readme.txt. Se
qualcuno volesse aiutarmi... io faccio sempre fatica a scrivere in lingua!
Se poi il gioco risultasse troppo semplice, ho in mente un protocollo dove
lo sfidante propone allo sfidato le dimensioni della scacchiera, il numero
e la forma dei polimini da usare come pedine! Che ne dite?
.
Nota per
Nick:
Ho implementato la risp. auto senza alternanza della prima mossa, ma
con il tuo prg non mi funziona. Se vince, esce un message-box che blocca
tutto, se perde non esegue l'ultima mossa.
Penso cmq che sia opportuno
usare una pausa di un secondo per chi fa la prima mossa e tre per chi fa la
seconda, per garantire il sincronismo in rete locale e in accesso remoto.
.
Ciao  :o)
Livio


 seconda, per garantire il sincronismo in rete locale e in accesso remoto.
Quasi quasi aumenterei anche i tempi e darei anche le specifiche
sull'accesso simultaneo.
Esempio (al volo)
attendo 2 secondi, leggo il file riprovo 5 volte x 200ms ognuna, in caso
mancata lettura (o mossa non eseguita) ricomincio.
Quando mi accorgo che la griglia è completa, attivo un timer che riparto
dopo 3 secondi se sono il primo giocatore, dopo 5 secondi se sono il secondo
giocatore
Allo scattare del timer se sono il primo giocatore azzero il file (subito lo
azzero e lo rendo vuoto, poi mi posso prendere tutto il tempo per eseguire
la mossa)
Se sono il secondo giocatore controllo il file (e per sfizio controllo che
non sia una griglia completa per evitare errori nella ripartenza, nel qual
caso riattivo il timer)
Mi sembra possa andare, che dici ?
(Pps: nel mentre che scrivevo l'ho fatto scontrare 12 volte contro il tuo: 6
contro 6 !!)
Ah si i link :
http://www.xzanaga.supereva.it/dllnick.zip
http://www.xzanaga.supereva.it/nickquadrati.zip


.
Ehm...legare la
specifica ai timer mi lascia perplesso. Tento una definizione time-
indipendent enunciando alcune regole semplici (spero):
.
1) Leggendo e
scrivendo il file condiviso, ciascun prg. prende le sue precauzioni per
ricuperare errori di collisione o assenza di file. Chi legge il file filtra
stringhe vuote, space in eccesso ed e' indifferente al maiuscolo/minuscolo
(full-tolerant).
.
2) La scacchiera piena viene presa come segnale di
fine partita. Corollario: il perdente deve fare l'ultima mossa e lasciare
il tempo (ahime!) all'avversario di leggerla.
.
3) Il prg. che fa la
prima mossa puo' prendersi il tempo necessario (cio' risolve il caso 3). Il
prg. che fa la prima mossa riscrive il file condiviso con una sola stringa
contenente la sua mossa.
.
4) Il prg. cha fa la seconda mossa polla
all'inizio della partita il file fino a che non vede una sola stringa
significativa. Questo e' assunto come segnale di partenza. Corollario: il
prg. che nel corso di una partita si trova una sola stringa nel file si
risincronizza per una nuova partita come chi muove per secondo (Opzione
disabilitabile).
.
5) Un'opzione permette di fare infinite partite
alternando la prima mossa, per consentire una valutazione oggettiva dei
programmi.
.
.
Tempi di risposta.
Nel gioco degli scacchi si impongono
(nei tornei) dei tempi massimi. Qui non saprei. Francamente 40 secondi mi
sembrano un po' tantini, pero' se servono a sfatare una volta per tutte la
leggenda metropolitana per cui il C dovrebbe essere piu' veloce del
Fortrand...  :o)))))
Cmq non ho un'opinione preconcetta. Attendo pareri.
.
.
Ciao, e cmq. e' un piacere. (I'm happy![Gorillaz]) Spero che il
challenge si allarghi. :o)))
A proposito ricordo che anche chi sa fare un
programmino in quickbasic o in C senza plusplus su una finestra DOS puo'
interfacciarsi! ANCHE SU LINUX O SU MAC!!!
.
Livio  :o)


 Cmq non ho un'opinione preconcetta. Attendo pareri.
Direi che mettere limiti, siamo sempre in tempo a posteriori...
dunque largo alle idee e spazio alle strategie ottimali.


 Fortrand...  :o)))))
Sono d'accordo sui tempi di risposta e sui limiti da imporre (in un prossimo
futuro), per il momento li mantegno alti perchè non ho ancora ottimizzato
bene la ricerca della mossa vincente, e quindi per batterti devo per forza
lasciarlo lavorare un bel po', anche se in realtà con grande spreco.
D'altra parte per poter ridurre i tempi e arrivare alla soluzione più in
fretta è necessario impegnare del tempo per ottimizzare codice e strategie,
per ora è più semplice (e molto più veloce) alzare il timeout.
E se il tempo limite fosse un'opzione da programma ? Quando lancio i
programmi indico quale tempo limite voglio per una mossa. (con ovviamente
l'opzione di tempo indeterminato)
x Massimo: a quando più o meno avremo l'onore di provare il tuo programma ?

Allora, so che vi chiedo una cosa un poco assurda, pero':
1) Il tread mi ha attizzato...
2)Bene o male (piu' che altro male) programmo...
Per cui, Livio Zucca, Giorgio Vecchi e nick,  mi potreste mandare i
sorgenti dei vostri programmi?
Oppure, se non vi va di farmi sapere i vostri algoritmi, mi basterebbe
sapere anche solo come faccio a mettere il mio prog in condizione di
giocare contro altri programmi...
---
Blackstorm
*Vicario d'Armi di idf*
    .--.     Tittums e' il nostro gatto, ed ha le dimensioni 
   |o_o |    di un rotolo di soldini. Inarcava la schiena
   |:_/ |    e bestemmiava come uno studente in medicina. 
  //   \ \   (Jerome Klapka Jerome)  
 (|     | )  E da oggi anche su ICQ!
/'_   _/`\   UIN 116647346 (nick: blacks)
___)=(___/

giocare contro altri programmi...
.
.
In questo link trovi:
.
http://members.theglobe.com/liviozucca/download/zucca4.zip
.
1) La mia
ultima versione pubblica in .exe (R1.4)
2) I sorgenti in VB5 della
versione R1.3 a cui ho sostituito gli algoritmi vincenti con una subroutine
che gioca a casaccio (se no e' troppo facile!)
3) Un file testo
Leggimi.txt in cui dovrebbero esserci gli estremi per costruirne uno.
.
Nick offre il suo applicativo in C che puoi utilizzare come ha fatto
Giorgio scrivendo in C la DLL tattica e/o strategica.
.
Ricordo che le
regole consentono di usare qualunque linguaggio e qualunque S.O. (anche
DOS, LINUX e MAC!). Ovviamnte qualcuno sara' piu' compatibile...
.
Ciao e
in  )(  alla balena!
Livio


 x Massimo: a quando più o meno avremo l'onore di provare il tuo programma ?
..E' vero. Sono in ritardo (troppo lavoro...) ma con l'aiuto di Livio
ho messo in piedi qualcosa che spero di finire per fine settimana.
Al momento gioca benino, anche se non e' il massimo della strategia
che ho in mente per cui resta ben al di sotto delle vostre performance.
Cmq vada lo rendero' disponibile per fine settimana...
CiaO,
Massimo

#include "MassimoM.h"

Giusto per chiarire le idee, vado errato se dico che la strategia vincente
porta a lasciare un numero pari di quadrati di ordine 1?



Speriamo che non cachi... 


 porta a lasciare un numero pari di quadrati di ordine 1?
...direi di si. Io una analisi precisa l'ho fatta a suo tempo, ma
non e' stato facile implementare un algoritmo valido che segua il mio
ragionamento dall'inizio della partita.
Cmq se vuoi possiamo parlarne in un tread separato...che apro di seguito
a questo msg.
;-)
CiaO,
Massimo