CodeCup 2008

Pagina: 1
Acties:
  • 384 views sinds 30-01-2008
  • Reageer

Acties:
  • 0 Henk 'm!

  • JanPaul123
  • Registratie: Juni 2004
  • Laatst online: 23-07-2022
Wat is dit voor een Topic?

We zitten net tussen twee GoT programming contests in, dus voor degenen die altijd zin hebben in een programmingwedstrijd is het nu wat rustig. Gelukkig is er ook nog de CodeCup, die net weer van start is gegaan! Doet dus allen mee!

Wat is dat voor spel?

Het spel van dit jaar is Alquerque, een Spaans soort damspel.

Afbeeldingslocatie: http://www.codecup.nl/images/sample.png

Voorbeeldspel
Regels

Hoe werkt die CodeCup dan?

Het idee is dat steeds 2 computersprogramma's tegen elkaar spelen. Om de zoveel weken wordt een competitie gedraaid (volledig automatisch) waarbij alle spelers eens tegen elkaar komen te staan. De beste 12 hiervan komen in de finale en spelen nogmaals tegen elkaar.

Er is ook mogelijkheid om thuis te testen met Caia. Hiermee kun je 2 spelers tegen elkaar laten spelen. Deze versie is echter vrij buggy, maar er is volgens de organisatoren een nieuwe versie in de maak, waarmee ook competitie te spelen is. Dat is leuk voor ons natuurlijk!

Edit: de nieuwe Caia staat op de site! Zodra er wat meer GoTters zijn met een werkend programma kunnen we even eigen competitie draaien. :)

Is er een prijs?

Jazeker! Er zijn grotere en kleinere prijzen, dit staat niet precies vermeld op de site.
Maar de beste Nederlander in de eindcompetitie wint de Windesheim-Digitalisprijs van 250 euro!

Edit: De Windesheim-Digitalisprijs is niet voor de beste Nederlander maar voor de beste Nederlandse leerling/docent middelbaar onderwijs.

Limieten, deadlines, beperkingen.

Je programma moet geschreven zijn in C(++), Java, Pascal of Python. Op de site is voorbeeldcode voor deze talen te downloaden. Je moet de broncode insturen, deze moet op een floppy passen. Ook heeft je programma gedurende elk potje 30 seconden bedenktijd die deze zelf mag indelen over de zetten.

Er zijn verder geen limieten wat betreft leeftijd, of iets dergelijks. Ook lijkt het toegestaan in teamverband mee te doen.

Ja, en wat nu?

Schrijf een programma, stuur deze in en deel je ervaringen! Welke algoritmes heb je gebruikt? Tegen welke problemen loop je aan? Je mag zelfs in teams mee doen dus daar ligt ook een mogelijkheid.

[ Voor 5% gewijzigd door JanPaul123 op 08-10-2007 21:15 ]


Acties:
  • 0 Henk 'm!

Verwijderd

Zeker een leuke competitie, vooral als er nog meer deelnemers komen.

Paar opmerkingen:
De Windesheim-Digitalisprijs is niet voor de beste Nederlander maar voor de beste Nederlandse leerling/docent middelbaar onderwijs.
De bugs in caia zijn inmiddels opgelost (het lag aan de referee), een nieuwe versie komt binnenkort op de site te staan.

Acties:
  • 0 Henk 'm!

  • zwippie
  • Registratie: Mei 2003
  • Niet online

zwippie

Electrons at work

Ik ga eens een poging wagen om een inzending te maken. Op zich moet het niet al te moeilijk zijn om een werkend iets te maken, maar het moet natuurlijk ook een beetje slim en snel genoeg zijn.

Wat ik nog wel een beetje vreemd vind is dat alle code perse in 1 bestand moet komen te staan. In Java (de taal die ik gebruik) kan dat wel, maar het is niet echt 'common practice' om te doen en tijdens het ontwikkelen (wanneer je er bv een gui/debugger aan wilt koppelen enz) is het ook niet echt praktisch. Maar goed, daar valt ook wel iets op te verzinnen.

How much can you compute with the "ultimate laptop" with 1 kg of mass and 1 liter of volume? Answer: not more than 10^51 operations per second on not more than 10^32 bits.


Acties:
  • 0 Henk 'm!

  • DaCoTa
  • Registratie: April 2002
  • Laatst online: 05-09 23:19
Kort vraagje over de regels: op Wikipedia zijn extra regels opgenomen, deze worden niet meegenomen in het spel?

Acties:
  • 0 Henk 'm!

  • Mammon
  • Registratie: December 2006
  • Laatst online: 24-08 20:45
Ook word er op wikipedia gesproken over een bord van 5x5
en op CodeCup 7x7. Welke is het?

Acties:
  • 0 Henk 'm!

  • Zr40
  • Registratie: Juli 2000
  • Niet online

Zr40

Moderator General Chat

heeft native IPv6

CodeCup bepaalt de regels, dus is het 7x7 :)

Acties:
  • 0 Henk 'm!

  • Sven_Vdb
  • Registratie: Januari 2006
  • Laatst online: 02-09 09:14
Ik zal misschien ook een kansje wagen :)
Niet dat er iets goeds gaat uitkomen waarschijnlijk.
Maar dan ben je weer een ervaring rijker he :P

Acties:
  • 0 Henk 'm!

Verwijderd

zwippie schreef op zondag 07 oktober 2007 @ 16:01:
Ik ga eens een poging wagen om een inzending te maken. Op zich moet het niet al te moeilijk zijn om een werkend iets te maken, maar het moet natuurlijk ook een beetje slim en snel genoeg zijn.

Wat ik nog wel een beetje vreemd vind is dat alle code perse in 1 bestand moet komen te staan. In Java (de taal die ik gebruik) kan dat wel, maar het is niet echt 'common practice' om te doen en tijdens het ontwikkelen (wanneer je er bv een gui/debugger aan wilt koppelen enz) is het ook niet echt praktisch. Maar goed, daar valt ook wel iets op te verzinnen.
Alles hoeft natuurlijk alleen in 1 bestand voor het inzenden he ;) Ik gebruik zelf meerdere bestanden die ik voor het inzenden "aan elkaar plak". Ik gebruik zelf
cat *.cpp | sed 's/#include </##include </' | cpp -P | sed 's/##include/#include/ > inzending.cpp

Voor java werkt denk ik
cat *.java > inzending.java
ook wel.

Acties:
  • 0 Henk 'm!

  • Pete
  • Registratie: November 2005
  • Laatst online: 07-09 17:51
Verwijderd schreef op maandag 08 oktober 2007 @ 18:42:
...
Voor java werkt denk ik
cat *.java > inzending.java
ook wel.
Nee, helaas. Er moet nl. precies 1 class als public gedefinieerd worden.

petersmit.eu


Acties:
  • 0 Henk 'm!

  • the_stickie
  • Registratie: Juli 2001
  • Laatst online: 12-03 02:46
maak er een zipje van ;)
Eén bestand toch :+

Acties:
  • 0 Henk 'm!

  • Sven_Vdb
  • Registratie: Januari 2006
  • Laatst online: 02-09 09:14
in java is het zo erg niet he :)
Kan je alles onder elkaar typen :)

Acties:
  • 0 Henk 'm!

  • zwippie
  • Registratie: Mei 2003
  • Niet online

zwippie

Electrons at work

Al je (java) klasses in 1 bestand is ook wel te doen, maar het is gewoon onhandig. :Y)


De eerste opzet van mijn programma is ongeveer af. Van elke schijf kan worden berekend welke moves er mogelijk zijn. De captures ziet ie ook, maar de vervolg captures (schijf slaat meerdere schijven in 1 beurt) nog niet. Hiervoor moet het bord gekopieerd worden, branchen als er meerdere vervolg captures mogelijk zijn etc. Even goed nadenken maar weer. Een GUI om het spelverloop wat beter te kunnen volgen is er al wel.

Volgens mij hoeft je programma eigenlijk maar 1 ding goed te doen: razendsnel de mogelijke zetten op het bord analyseren. Als dat snel genoeg gaat kun je misschien meerdere zetten vooruit kijken, uiteraard ook naar die van je tegenstander. Omdat je niet veel tijd (30s) en geheugen (64MB) tot je beschikking hebt kun je het geheel gewoon niet al te ingewikkeld maken maar zul je veel moeten optimaliseren.

Da's wel iets anders dan de gotcontest1 (tetris) waar je 2 uur voor kreeg. :P

How much can you compute with the "ultimate laptop" with 1 kg of mass and 1 liter of volume? Answer: not more than 10^51 operations per second on not more than 10^32 bits.


Acties:
  • 0 Henk 'm!

  • Marcj
  • Registratie: November 2000
  • Laatst online: 19:26
zwippie schreef op maandag 08 oktober 2007 @ 20:27:
Volgens mij hoeft je programma eigenlijk maar 1 ding goed te doen: razendsnel de mogelijke zetten op het bord analyseren. Als dat snel genoeg gaat kun je misschien meerdere zetten vooruit kijken, uiteraard ook naar die van je tegenstander. Omdat je niet veel tijd (30s) en geheugen (64MB) tot je beschikking hebt kun je het geheel gewoon niet al te ingewikkeld maken maar zul je veel moeten optimaliseren.

Da's wel iets anders dan de gotcontest1 (tetris) waar je 2 uur voor kreeg. :P
Het verschil is wel dat je hier maar maximaal 100 zetten doet, waar je bij tetris meer dan 100.000 moest doen ;)

Ik heb nu nog geen tijd hiervoor, maar het lijkt me wel leuk om hier aan mee te doen...

Acties:
  • 0 Henk 'm!

  • JanPaul123
  • Registratie: Juni 2004
  • Laatst online: 23-07-2022
Even mainpost ge-edit (prijs en nieuwe Caia).

Heeft iemand al iedeeën om het doorrekenen zo slim mogelijk te doen? Ik gebruik nu zelf Minimax + Alpha-Beta + MTD-f. :P

Acties:
  • 0 Henk 'm!

  • MrBucket
  • Registratie: Juli 2003
  • Laatst online: 29-10-2022
Gluggie schreef op maandag 08 oktober 2007 @ 21:20:
Even mainpost ge-edit (prijs en nieuwe Caia).

Heeft iemand al iedeeën om het doorrekenen zo slim mogelijk te doen? Ik gebruik nu zelf Minimax + Alpha-Beta + MTD-f. :P
Hmm... state space searches zijn leuk, maar hou je wel rekening met:
It is prohibited to move a piece back to the space it occupied in the previous turn.
Volgens mij gaat dit regeltje een hoop roet in het eten gooien

En voor de rest: zorg voor een goede heuristiek :)

Acties:
  • 0 Henk 'm!

  • Mammon
  • Registratie: December 2006
  • Laatst online: 24-08 20:45
Met It is prohibited to move a piece back to the space it occupied in the previous turn.

Mag dit dan wel?
d3-d4
a3-a4
d4-d3

Edit:
Gevonden. Het mag, zie het voorbeeldpotje wit zet 121 en 125

[ Voor 20% gewijzigd door Mammon op 09-10-2007 00:38 ]


Acties:
  • 0 Henk 'm!

  • JanPaul123
  • Registratie: Juni 2004
  • Laatst online: 23-07-2022
MrBucket schreef op maandag 08 oktober 2007 @ 21:37:
[...]

Hmm... state space searches zijn leuk, maar hou je wel rekening met:
It is prohibited to move a piece back to the space it occupied in the previous turn.
Volgens mij gaat dit regeltje een hoop roet in het eten gooien

En voor de rest: zorg voor een goede heuristiek :)
De vorige zet van elke speler kun je opnamen in je state.

En ja, tussentijds een andere zet mag best. En ook een ander stuk verplaatsen naar de lege ruimte mag.

[ Voor 5% gewijzigd door JanPaul123 op 09-10-2007 08:47 ]


Acties:
  • 0 Henk 'm!

  • MrBucket
  • Registratie: Juli 2003
  • Laatst online: 29-10-2022
Gluggie schreef op dinsdag 09 oktober 2007 @ 08:46:
[...]


De vorige zet van elke speler kun je opnamen in je state.
Tuurlijk, alleen zal je state space iets van 20 keer zo groot worden, omdat de combinatie zetten A, B niet meer dezelfde state oplevert als B, A.

Acties:
  • 0 Henk 'm!

  • DaCoTa
  • Registratie: April 2002
  • Laatst online: 05-09 23:19
wouter.oet schreef op dinsdag 09 oktober 2007 @ 00:32:
Met It is prohibited to move a piece back to the space it occupied in the previous turn.
En voor een capture move? Dus capture heen, andere speler zet een stuk terug op de plek die net geslagen is, mag (of moet) je dan weer terugslaan?

Acties:
  • 0 Henk 'm!

  • Serpie
  • Registratie: Maart 2005
  • Laatst online: 01-07-2023
DaCoTa schreef op dinsdag 09 oktober 2007 @ 11:15:
[...]

En voor een capture move? Dus capture heen, andere speler zet een stuk terug op de plek die net geslagen is, mag (of moet) je dan weer terugslaan?
Het geldt volgens mij alleen voor een gewone move, je bent immers verplicht om een capture te doen als dat mogelijk is.

Acties:
  • 0 Henk 'm!

  • Sven_Vdb
  • Registratie: Januari 2006
  • Laatst online: 02-09 09:14
Je mag dus verschillende klasse's gebruiken.
Je moet 1 .java file uploaden


Java
Programs written in Java are compiled and run with Java JDK 1.5.
You can use the object System.in to read from standard input, and System.out to write to standard output. After each move written to the output, your program should call System.out.flush(); to make sure that any output buffers are written immediately. Debug messages may be written to standard error, using System.err.println("Debug info");
It is possible to make more than one class for your program, but you will have to put the source for all classes in a single .java file (the compiler will produce multiple .class files anyway). When you do this, you should not declare your classes public, or the compiler will complain about it.
When submitting your Java program on the website, don't forget to enter the exact name of the main class of your program (the class which contains the main method).

Acties:
  • 0 Henk 'm!

  • YopY
  • Registratie: September 2003
  • Laatst online: 13-07 01:14
zwippie schreef op maandag 08 oktober 2007 @ 20:27:


Omdat je niet veel tijd (30s) en geheugen (64MB) tot je beschikking hebt kun je het geheel gewoon niet al te ingewikkeld maken maar zul je veel moeten optimaliseren.
:p leuk, de Java VM gebruikt sowieso al meer dan de helft van het geheugen :D. Nu hoeft het programma op zich niet zoveel geheugen te gebruiken (volgens mij is het meeste geheugengebruik als je de mogelijke zetten tot een X aantal in de toekomst berekent en opslaat), maar toch - java gebruikers hebben sowieso al een tegenslag.

Acties:
  • 0 Henk 'm!

  • NaliXL
  • Registratie: Maart 2002
  • Laatst online: 07-07 19:22
Verwijderd schreef op zondag 07 oktober 2007 @ 15:42:
De Windesheim-Digitalisprijs is niet voor de beste Nederlander maar voor de beste Nederlandse leerling/docent middelbaar onderwijs.
Betekent dat alleen leerlingen en docenten van het middelbaar onderwijs mee mogen doen? En/of zijn zij de enige die meedingen naar de € 250,- ?

Genoeg is meer dan veel, en tart den overvloed


Acties:
  • 0 Henk 'm!

  • zwippie
  • Registratie: Mei 2003
  • Niet online

zwippie

Electrons at work

NaliXL schreef op dinsdag 09 oktober 2007 @ 15:27:
[...]

Betekent dat alleen leerlingen en docenten van het middelbaar onderwijs mee mogen doen? En/of zijn zij de enige die meedingen naar de € 250,- ?
Zij zijn de enigen die meedingen naar de prijs. Iedereen mag verder meedoen.

How much can you compute with the "ultimate laptop" with 1 kg of mass and 1 liter of volume? Answer: not more than 10^51 operations per second on not more than 10^32 bits.


Acties:
  • 0 Henk 'm!

  • Serpie
  • Registratie: Maart 2005
  • Laatst online: 01-07-2023
Nu maar eens een contest in Java proberen dan, ga deze ook proberen. Iedergeval al iets af wat een valide output genereert en geaccepteerd wordt op codecup.
code:
1
Total time used: 0.122 seconds
nog ruim 29 seconden over voor verbeteringen :)

Acties:
  • 0 Henk 'm!

Verwijderd

Beste mensen,

Hier een van de mensen van de CodeCup. Leuk dat jullie mee (gaan) doen aan de CodeCup.
We wensen jullie veel succes, als je vragen hebt kan je deze sturen naar het adres dat op de site staat.

De regels staan allemaal op codecup.nl. We zijn afgeweken van de standaard regels om het spel niet doorrekenbaar te maken. Dat wil niet zeggen dat het onmogelijk is, wij denken dat het heel moeilijk is!

Nogmaals succes!

Jaap Taal
The CodeCup Team

Acties:
  • 0 Henk 'm!

Verwijderd

Nog even over het voornemen om een eigen competitie te draaien.
Het uitgangspunt van de CodeCup is, dat iedere deelnemer zijn eigen programma ontwikkeld. We kunnen je niets verbieden, maar het is niet de bedoeling dat er twee programma's ingezonden worden die feitelijk hetzelfde spelen. Je kunt dan net zo goed een team vormen. Maw, uitwisselen van source code is niet echt de bedoeling :)
Uiteraard staat het je vrij om executables uit te wisselen, met de nieuwste competitionmanager wordt er een volledige competitie gespeeld. Caia is open source en alle op-/aanmerkingen zijn welkom.

Jaap

Acties:
  • 0 Henk 'm!

  • DaCoTa
  • Registratie: April 2002
  • Laatst online: 05-09 23:19
Leuk dat er iemand van de organisatie meeleest. De opgave ziet er erg leuk uit en ben aan het beraden om mee te gaan doen :)

Wel een paar vragen, vooral over de technische regels:

1) De inzelding moet als 1 bestand meegestuurd worden en op 1 floppy passen. Nou is dat een regeltje wat bepaalde dingen (om eens iets te noemen, het meesturen van een openingsboek en/of eindspelboek bijvoorbeeld) ontzettend veel complexer maken.

2) Het maximale geheugengebruik is 64mb. Zoals eerder gesteld, de JVM voor Java programma's snoept daar een behoorlijk groot stuk van af, is dat dan 64mb exclusief JVM gebruik?

3) De gegevens die een speler naar debug out stuurt, krijgen we deze terug na afloop van een toernooi?

4) Weet je tijdens een toernooi wie je tegenstander is?

Acties:
  • 0 Henk 'm!

Verwijderd

DaCoTa schreef op woensdag 10 oktober 2007 @ 01:08:
3) De gegevens die een speler naar debug out stuurt, krijgen we deze terug na afloop van een toernooi?
Ja, zie verder.
4) Weet je tijdens een toernooi wie je tegenstander is?
Ja, zie de eerste testcompetitie, klik onderaan op een van de rondes en je ziet alle gespeelde partijen. Je kunt dus precies zien tegen wie je gespeeld hebt. Klik op een van de potjes en je krijgt (mits je ingelogd bent) de runtijd en debug uitvoer te zien

Over dat meesturen van een openingsboek of eindspeldatabase: tuurlijk is het wat moeilijker, maar het kan nog steeds wel. En voor het zin heeft om daaraan te denken, moet je toch eerst een goed werkend programma hebben.

Acties:
  • 0 Henk 'm!

  • DaCoTa
  • Registratie: April 2002
  • Laatst online: 05-09 23:19
Verwijderd schreef op woensdag 10 oktober 2007 @ 01:28:
Ja, zie de eerste testcompetitie, klik onderaan op een van de rondes en je ziet alle gespeelde partijen. Je kunt dus precies zien tegen wie je gespeeld hebt. Klik op een van de potjes en je krijgt (mits je ingelogd bent) de runtijd en debug uitvoer te zien
Ah, ok, ik had er ook overheen gelezen (of het is er later aan toegevoegd :)):
For debugging, your program may write messages to standard error. Those mesages will become available to you, and only you, on the game result page. However there is a limit to the amount of characters that will be logged (approximately 10000 characters), so you need to use it sparingly.
Wat ik bedoelde met de vraag of je weet tegen wie je speelt, is meer, weet het programma tegen wie hij speelt? Niet, neem ik aan, aangezien er geen andere communicatie is dan de zetten.
Verwijderd schreef op woensdag 10 oktober 2007 @ 01:28:
Over dat meesturen van een openingsboek of eindspeldatabase: tuurlijk is het wat moeilijker, maar het kan nog steeds wel. En voor het zin heeft om daaraan te denken, moet je toch eerst een goed werkend programma hebben.
Een openingsboek meesturen is natuurlijk maar een voorbeeld. Zoals eerder aangehaald door een Java programmeur, het kan wel, maar het is gewoon onhandig. En programmeurs zijn nou eenmaal lui... :+

[ Voor 27% gewijzigd door DaCoTa op 10-10-2007 02:29 ]


Acties:
  • 0 Henk 'm!

Verwijderd

DaCoTa schreef op woensdag 10 oktober 2007 @ 02:28:
Wat ik bedoelde met de vraag of je weet tegen wie je speelt, is meer, weet het programma tegen wie hij speelt? Niet, neem ik aan, aangezien er geen andere communicatie is dan de zetten.
Dat weet je idd niet.

Acties:
  • 0 Henk 'm!

Verwijderd

Dat klopt. In de competitie hebben we ervoor gekozen om niet te vertellen tegen wie je speelt. Dit maakt namelijk het hele zaakje ingewikkelder. Ga je je programma zich anders laten gedragen op basis van tegen wie je speelt? Dat klinkt niet zo lekker, wie zegt dat een tegenstander z'n sterkste programma in de testcompetitie heeft ingestuurd? Of een week later heeft degene voor wie je je speler hebt aangepast ineens zijn programma totaal omgegooid!!
Volgens ons heeft het dus geen nut! Je speelt namelijk hoogstens 4 keer tegen een tegenstander per competitie.

Voor de vraag over het geheugen van Java. De VM wordt gedraaid met de optie "-Xmx64M", "Specify the maximum size, in bytes, of the memory allocation pool" volgens Sun. De VM hoort daar niet bij. Of je met enige overhead rekening moet houden weet ik niet, maar ik vermoed dat als het bestaat, het erg weinig is.

Jaap

Acties:
  • 0 Henk 'm!

  • RobIII
  • Registratie: December 2001
  • Niet online

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

(overleden)
Verwijderd schreef op dinsdag 09 oktober 2007 @ 22:40:
Beste mensen,

Hier een van de mensen van de CodeCup. Leuk dat jullie mee (gaan) doen aan de CodeCup.
We wensen jullie veel succes, als je vragen hebt kan je deze sturen naar het adres dat op de site staat.
Liever niet. We hebben hier een forum en willen dat ook graag als zodanig gebruiken; vandaar ook dit topic. Zeker nu je mee leest zie ik weinig heil in communicatie die 'achter de schermen' zou moeten plaatsvinden als het ook prima hier besproken kan worden. Als bonus krijg je dan ook nog eens niet alle vragen dubbel en hoe je ze dus maar 1 keer te beantwoorden omdat iedereen mee kan lezen.

There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.

Je eigen tweaker.me redirect

Over mij


Acties:
  • 0 Henk 'm!

Verwijderd

Ha, maar dan moet ik ieder forum af om overal te reageren ;)
Je hebt wel gelijk, een forum is inderdaad handig!

Acties:
  • 0 Henk 'm!

  • RobIII
  • Registratie: December 2001
  • Niet online

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

(overleden)
Verwijderd schreef op donderdag 11 oktober 2007 @ 00:22:
Ha, maar dan moet ik ieder forum af om overal te reageren ;)
Moet je maar geen contest organiseren waar iedereen aan mee mag doen :+ ;) :>

There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.

Je eigen tweaker.me redirect

Over mij


Acties:
  • 0 Henk 'm!

Verwijderd

Morgen om 14.00 CEST wordt de tweede testcompetitie van de codecup gespeeld.
Succes allemaal!

NOTE: Het actieve programma is het programma dat mee speelt. Als je een nieuwe submit doet, dan wordt dit programma automatische actief.

Acties:
  • 0 Henk 'm!

  • Serpie
  • Registratie: Maart 2005
  • Laatst online: 01-07-2023
Verwijderd schreef op vrijdag 12 oktober 2007 @ 21:25:
Morgen om 14.00 CEST wordt de tweede testcompetitie van de codecup gespeeld.
Succes allemaal!

NOTE: Het actieve programma is het programma dat mee speelt. Als je een nieuwe submit doet, dan wordt dit programma automatische actief.
Hmm ben benieuwd, ik heb wel een actief programma inmiddels maar of hij het een beetje goed gaat doen... Win nog niet eens van de testplayer 2 ;)

Acties:
  • 0 Henk 'm!

  • Dricus
  • Registratie: Februari 2002
  • Laatst online: 21:17

Dricus

ils sont fous, ces tweakers

Ik heb nu ook een programma actief, es kijken hoe hij het doet. Ik heb er nog geen hoge verwachtingen van, want hij moet nog aan alle kanten geoptimaliseerd worden (dus het zou me niks verbazen als ik een aantal keer een timeout error krijg). Ook is dominantie het enige wat ik in de score berekeningen heb zitten. Dus er wordt alleen nog maar gekeken hoeveel stukken ik nog over heb t.o.v. de tegenpartij. Er wordt niet gekeken hoe sterk ik op het bord sta.

Succes allemaal :).

Stel niet uit tot morgen wat je vandaag nog tot morgen kunt uitstellen...


Acties:
  • 0 Henk 'm!

  • Dricus
  • Registratie: Februari 2002
  • Laatst online: 21:17

Dricus

ils sont fous, ces tweakers

Uitslag 2e test competitie

Mwah, 25e van de 35 geworden... Ik mag niet klagen :P.
Hoe is het jullie vergaan?

Stel niet uit tot morgen wat je vandaag nog tot morgen kunt uitstellen...


Acties:
  • 0 Henk 'm!

Verwijderd

MrHuge schreef op zaterdag 13 oktober 2007 @ 18:59:
Uitslag 2e test competitie

Mwah, 25e van de 35 geworden... Ik mag niet klagen :P.
Hoe is het jullie vergaan?
13e, maar ik ben nogal stom geweest:
Gisteren nog wat aan mn programma zitten prutsen, vergeten in te sturen. Vanochtend half twee, nog snel ff insturen en daarbij vergeten twee regels te commented waar ik mee aan het testen was. Mijn programma heeft dus vandaag geen quiescence search uitgevoert, en dan speelt ie heel wat slechter.

Nog meer mensen hier die mee hebben gedaan?

Acties:
  • 0 Henk 'm!

  • Serpie
  • Registratie: Maart 2005
  • Laatst online: 01-07-2023
Jawel maar ben slechts 34e geworden, eertste 2 potjes gewonnen en daarna alleen maar draws (geen loses) maar dat is toch niet zo goed voor de scores..

Heb dan ook pas 2 a 3 dagen geprogged aan mijn inzending dus zo erg vind ik het niet, volgende keer beter hoop ik.

Acties:
  • 0 Henk 'm!

  • SH4D3H
  • Registratie: Juni 2004
  • Laatst online: 27-02 23:46
* SH4D3H gaat ook een poging doen.
Moet alleen gaan kijken hoe ik precies ga zorgen dat mijn zetten ergens op slaan, maar dat komt nog wel :+

Acties:
  • 0 Henk 'm!

  • DaCoTa
  • Registratie: April 2002
  • Laatst online: 05-09 23:19
Ik ben inmiddels ook aan het bouwen. Heb de 2e testcompetitie niet gehaald, maargoed, ik ben ook pas net voorbij mijn bordrepresentatie. Wel heb ik het bord nagemaakt en uitgeprint en een aantal potjes in het echt gespeeld :)

Acties:
  • 0 Henk 'm!

Verwijderd

Leuk dat jullie er zo mee bezig zijn!

Er is sinds kort ook een engelstalig forum op codecup.nl, je kunt er pas op als je ingelogd bent.
Het heeft even geduurd voordat we een moderator konden vinden.

Ik zal dit forum blijven volgen, maar als je vragen hebt aan de organisatie, dan kan dat dus op het codecup forum.

Over twee weken weer een nieuwe testcompetitie!

Jaap

Acties:
  • 0 Henk 'm!

  • lvh
  • Registratie: Juli 2001
  • Laatst online: 02-11-2022

lvh

Dus geen perl? :/

Acties:
  • 0 Henk 'm!

  • Mei
  • Registratie: Juni 2005
  • Laatst online: 17-10-2024

Mei

Verwijderd schreef op zaterdag 13 oktober 2007 @ 23:12:
[...]

13e, maar ik ben nogal stom geweest:
Gisteren nog wat aan mn programma zitten prutsen, vergeten in te sturen. Vanochtend half twee, nog snel ff insturen en daarbij vergeten twee regels te commented waar ik mee aan het testen was. Mijn programma heeft dus vandaag geen quiescence search uitgevoert, en dan speelt ie heel wat slechter.

Nog meer mensen hier die mee hebben gedaan?
Ik wilde al bijna zeggen dat ik iemand kende die de vorige twee keren gewonnen had, maar het deze keer nogal verkloot had :P Zie ik ineens een bekende nick staan O-)

Naja, succes mensen! Dit gaat mij in ieder geval boven de pet.

* Mei hobbelt /14 weer in om een PHP vraagstukje te posten :+

Acties:
  • 0 Henk 'm!

Verwijderd

Wat maakt dat uit? Als het je leuk lijkt mee te doen heb je gelijk een goede reden om een andere taal te leren.

Acties:
  • 0 Henk 'm!

  • Serpie
  • Registratie: Maart 2005
  • Laatst online: 01-07-2023
Verwijderd schreef op woensdag 17 oktober 2007 @ 23:09:
Wat maakt dat uit? Als het je leuk lijkt mee te doen heb je gelijk een goede reden om een andere taal te leren.
Yep, mijn main taal is toch dotnet. Maar heb deze kans toch aangegrepen om mijn JAVA skills wat op te poetsen en wat nieuwe algoritmen te leren.

Op dit moment mijn prog omgezet zodat hij Minmax gebruikt dat ging goed, maar heb wat moeite om de Alpha-Beta pruning in te bouwen, er zit nog een foutje in waardoor hij nu alleen maar de eerste branch doorzoekt. Maar gaat goed komen, hoop dat ik volgende ronde wat hoger eindig.

Acties:
  • 0 Henk 'm!

Verwijderd

Ik doe ook maar eens actief mee, heb al veel jaar meegedaan maar dan voornamelijk om wat punten te sprokkelen voor de eerste ronde van de NIO. Heb de core bijna in elkaar zitten, zometeen algoritme implementeren.

Ik doe het in Freepascal.

Acties:
  • 0 Henk 'm!

  • Marcj
  • Registratie: November 2000
  • Laatst online: 19:26
Zijn hier nog mensen bezig? Ik heb zelf mijn eerste versie maar eens ingeleverd, maar ik heb nog niet veer tijd hiervoor.

Mijn huidige programma heeft trouwens nog steeds veer moeite om player2 te verslaan, ik kom steeds op een draw uit... Nog meen mensen hier last van?

Acties:
  • 0 Henk 'm!

  • Serpie
  • Registratie: Maart 2005
  • Laatst online: 01-07-2023
Player2 verslaan lukt inmiddels meestal wel, soms komt hij nog op een draw uit, hij is inderdaad wel wat lastiger te verslaan als Player1.

Ik heb er wegens tijdsgebrek al een tijd niets meer aan gedaan, ik had nog wel wat ideen voor optimalisaties maar die kosten allemaal teveel tijd om te implementeren.

Mijn laatse versie heb ik ingeleverd op 18 Oktober, heb net even gekeken en hij is toch nog 23e geworden van de 55. Dus valt nog best mee :).

Verwijderd

Ik ben al een tijd (lees: maanden) niet meer actief bezig. Wel ben ik van plan in de kerstvakantie (bijna :)) mn programma nog flink te verbeteren. Ideeen genoeg, nu de tijd nog om ze te implementeren.

  • Dricus
  • Registratie: Februari 2002
  • Laatst online: 21:17

Dricus

ils sont fous, ces tweakers

Ik ben ook begonnen, maar heb er al een tijd niks meer aan gedaan. In de test competitie van 27 oktober ben ik 12e geworden, maar daarna elke keer in de 30. Op de een of andere manier krijg ik nu vaak timeouts, waardoor ik punten verlies. Van Player2 winnen doet m'n proggie al de nodige tijd (net als van Test Player B in de submission test games).

Ik maak gebruik van een minimax algoritme met alpha-beta pruning, transposition table en nog wat extra tuning zoals quiescent search. Ik krijg wel een beetje het gevoel dat dit allemaal wat overdone is aangezien hij nu niet zo goed meer performt. Hopelijk kom ik er de komende tijd nog aan toe om hem wat te optimaliseren.

Stel niet uit tot morgen wat je vandaag nog tot morgen kunt uitstellen...


Acties:
  • 0 Henk 'm!

  • Serpie
  • Registratie: Maart 2005
  • Laatst online: 01-07-2023
Vandaag is de finale, ik heb er weinig vertrouwen in. Had weinig inspiratie en zin meer om mijn AI verder te ontwikkelen. In de laatste proefcontest ben ik 57e geworden maar het was wel leuk om te doen.

Het was iedergeval leerzaam om eens naar dingen zoals MiniMax, Alpha beta pruning, etc. te kijken en implementeren. En dat is toch de voornaamste reden dat ik aan contests zoals deze mee doe.

[ Voor 3% gewijzigd door Serpie op 19-01-2008 12:37 ]


Acties:
  • 0 Henk 'm!

  • Soultaker
  • Registratie: September 2000
  • Laatst online: 20:28
Ja, ik heb ook mijn oude versie van way back er weer opgezet, bij gebrek aan zinnige verbeteringen. Ik vond het wél een leuk spelletje, maar veel meer dan zinnige alpha-beta search met move ordeningen weet ik ook niet. Jammer dat optimalisaties zoals het opslaan van (slag)zetten met een enkele bitmask en het elimineren van slagvariaties die dezelfde stelling opleveren niet echt veel opleveren.

Ik vind het trouwens jammer aan de Codecup competitiestructuur dat je eindplaats sterk afhangt van wie je treft in de eerste fase; als je toevallig makkelijke tegenstanders hebt en in de finale komt, is je eindplaats sowieso al een stuk hoger.

Ik hoop dat de winnaar zijn aanpak en/of programma openbaar maakt, zoals Marcel Vlastuin deed met Caïssa. (Caïssa was ook het leukste Codecupspel tot nu toe, naar mijn mening, hoewel ik niet elk jaar meegedaan heb.)
Pagina: 1