Saturday, February 26, 2005

Monkey !

Whenever I visit chinese restaurents which have those chinese new year charts on their table , etc ... I look it up and find to my dismay that I was born in the year of the monkey - repeated lookup's hoping that the prev was wrong ;)
I never really knew what being "born in the year of the monkey" signifies , but it just did not "sound right" :)
Associating a person with a monkey was , imo , an insult :) - same for donket , ass , etc.
Came across this recently - Chinese Astrology
And description of my sign is here - it does sound cool I must say :D - wish I was more like it .... hehe

**UPDATE**

Took some more tests :)

* This one was shown to me by tiger (You need to create an account - *sic*)

Advanced - You scored 86% Beginner, 100% Intermediate, 81% Advanced, and 72% Expert!

* This one by NY

I am Athena

(I edited the generated snippets to make it more "readable")
(New Edit : Removing the images from above)

0 Comments:

Post a Comment

<< Home

Thursday, February 17, 2005

Nice !

Followed the link on Sood's post and ended up at jwz's site ... after like ages !
Have missed the place... saw the posts , rants , "reviews" and felt good reading them again :)

Came across The Tao Of Programming again after ages ... oh , how I missed it !!
Reading The Unix-Haters Handbook - maybe I will learn something really interesting from it ...
Some of jmz's booksmarks are really nice , check them out.

I have _never_ coded in perl , when I see perl code - I tend to avoid if possible.
Only once did I need to much around with perl code - as part of data migration effort in first product I worked on in Sun ... it was to hack someone else's code , and needless to say I hated it - I could finish the task , everything looked "dirty" to me : intutive , yes - but still dirty.
Just saw the code that jmz has put out here ... and found it to be nice :) - disclaimer : maybe most of the perl code written is like this - readable and intutive (I always found it intutive) , this is the second piece of non-trivial perl code I am seeing , so pardon my ignorance !
Think I should attempt to readup on perl ... my ex-sysadmin always keeps threatening that he will learn perl some day and create a "virtual Om" in his lab which does most of his work while he enjoys himself :) Maybe I should attempt to help him on this ;)

BTW , listening to DNA Lounge's audio cast :) - this week dedicated to jmz !! :D

0 Comments:

Post a Comment

<< Home

Monday, February 14, 2005

CCT7 Day 2

Atlast it is over ... and I cant take anymore of it :)
Now I know what the expression "dead tired" means ... note , I just woke up from a 10 hour sleep (4:30 now ;) ) and still I am reeling !

Ok , back to details on the tourny !
After the all nighter for day 1 , I did not sleep ... except for small fits of drowziness in front of the keyboard.
All the "errors" I saw in the games , I was attempting to fix ... or atleast mitigate : like not developing minors sufficiently enough , small pawn structure issues , AND endgame :)
I managed to massively revamp endgame evaluation .. and it plays quiet well in most endgames now - long way still left to go , but this was quiet an improvement from day1 - like the draw against Ikarus.
Rest of the 3 hours before tourny was in testing - this was when I had food , etc.

First game was Chompster - CEng.
This program is written in java - no kidding ! , and was running on (athlon 2500xp @3200, 1gb RAM). Ofcourse , you use -server option, get everything JIT compiled , use almost no garbase collection (no dynamic object creation , etc) and it would be quiet close to native programs :)
This game began disasterously - opening is a very tricky business : a mistake in opening will come back to bite you 25 moves down the game : and no program can see more than 8 - 9 moves (which is 16 - 18 plies or half moves).
The mistakes that CEng made in opening were pretty massive.
I focussed more on endgame tests and did not focus on opening testing much :(
It quickly lost a pawn , and soon the position - the game was heading for a quick loss.
And then the search and eval of CEng kicked in ... and it battled on : all the while keeping me on the edge of the seat - every eval difference , I wil be cheering or cursing.
The battle went on , and the crux was a knight which was never developed - which almost cost me the game !
And then finally - breakthrough !
Better extensions , better branching factor and most importantly singular extensions saved my ass :)
It saw the draw and went for it , while chompster was still thinking it was winning quiet well : the game ended in a forced draw :)
Later on , Scott Farrell told me that lot of programs were still evaluating that position as win for chompster - 3 moves after CEng said it was a draw : singular extensions rock ! :)

After that killer of a game , I got some 5 mins to pump up some params and tune down some others - in the hope that it will be good : ZERO testing time , only intution based changes ;)

Next match : CEng vs Altamax.
Altamax was running on a Pentium 4 - 2.4 Ghz.
The first move gave me a scare - CEng started with Nf3.
Not a bad move , but CEng usually opens only with e4 or d4 ... so was some tuning not correct ? Am I going to lose ?
I knew nothing about this opponent - most others I have heard of / played against / have vague idea of their strenght.
But luckily , the opening progressed without much hiccups ... I was noting down lines and possible score correction on a book like mad anyway :) - for furthur tuning ;)
This was the first game where CEng was totally in command.
It gained a massive space advantage - hemming all of Altamax's pieces in the 7th and 8th ranks , and then closed in on the kill by busting open its kingside with a massive attack.
I was quiet happy with this game , though I identified some scope for improvement .. and made those changes.

Next was AvernoX vs CEng.
AvernoX was running on AMD Athlon 1.3 Ghz - so slower than mine.
The opening was a Petrov classical attack , and in the 5th move itself CEng bungled playing Qe7 instead of d5.
Vincent told me later that this is a common computer program mistake - one more reason why you _need_ an opening book : the theory is way too vast to programmatically evaluate or find by search depth !
The game started going downhill from here ...
I was thinking dark throughts of what I could have done , changed , etc like
"I should add actual mobility evaluation not the scaled down POS version I have now" , etc , etc :D
It was a tough match - the toughest I ever had in the tourny , and on top of it , my net connection was breaking ... crazy combination and I was completely in pieces.
Half way through , I just gave up and went to watch some tv - could not take the misery anymore :) - trust me , the position was an absolute loss - the eval went as high as 3 pawns in favor of AvernoX I think !
But unlike its stupid creator , CEng merrily went on playing , consolidating , exchanging , improving and in the end - managed to break even and started improving !
I was shocked when I saw this ! It actually went from a 3 pawn deficiet to a full pawn advantage !!
But that was just lack of EGTB speaking and the position soon ended in a drawn endgame - two queens only. No EGTB , so CEng saw no draw.
IM Jon Schroer joked saying that CEng's pieces were better placed :P when he saw that the programs were not calling it a draw !
n the end , the TD ame and arbitrated the game as draw.
Thats it , from now on I will never faith in my program :)
More Calvin and chocolate to you CEng :D

I tried tuning some more params before this game - especially centralisation code to avoid mistakes like in last game , and Nf3 in the game before , and some other params.

The last game (phew !) was CEng - Arasan (was running on Pentium IV 3.06Ghz).
I was dog tired by now - almost 40 hours since I slept - not dozing off 'cos of excessive tiredness in front of the comp , but proper sleep.
That too in a very intense atmosphere , and when the game is not going on , I am coding , checking , bugfixing and testng like a nut !
And so begane the last game - and started with giving me a heart attack.
The variations that CEng was thinking of was all crazy and haywire !
Some param was conflictin with another ... I was (yet again ? :) ) cursing myself.
The worst thing that can happen is to know that a last minute change screwed up a potential win :(
But luckily , the score's ended up stabilising on positions/moves that were actually good ... but it was all touch and go.
Move 10. Ne5 was commented upon as a "human" move :)
And then CEng played a novelty (21. c4! ) and actually saw the result of the move.
It was an absolute beauty of a move and Arasan misjudged it and its eval rose thinking it was gonna gain ... but realised its mistake 2 - 4 moves later , while CEng became happier and happier.
Soon it took a very commanding position and its eval went up as high as 6 pawns in just under 30 moves ... very much in middlegame.
Quiet soon , Arasan threw the towel and resigned when its score was consistently at 6 pawns in CEng's favour for 3 moves or so.

And thus ended CCT7 and CEng : 4 wins , 3 draw , 2 loss.
It stood a modest 13th out of the 44 participants based on Buchholz and 5th based on points.
45 hours without sleep , no book , no EGTB , 2 weekends for the engine (3 if you count this one too) - damn good I say :)

And 10 hours later , I am still tired and sleepy ... anyone coming for breakfast/lunch/snacks ? :)

I will put up the games (and maybe it will contain the comments/eval's also) later on somewhere and try to post a link here ... IF I DONT FORGET :)

0 Comments:

Post a Comment

<< Home

Sunday, February 13, 2005

CCT7 Day 1

More like night 1 :)
5 games ... all tough :( - won 2 , lost 2 , drew 1.
My machine is a modest 2400 athlon xp clocked at 2Gig - using about 300 Mb for various hashes , caches , etc.
Since I programmed the engine in last two weekends ... it is pretty weak in features.
Hence it does not have an opening book (so cant play known theoretical lines in the beginning) , no EGTB support (so cannot use the exact endgame play offered by those tables) , endgame evaluation was very weak (this is too complicated a subject ! will take solid 3 months of programming to get some basic degree of proficiency for the engine) , and other more minor "deficiencies".

The first game against Jonny - it stood 6th in last World computer chess champs ...
This engine was running on Pentium 4 3GHz, 1GB RAM - so clearly outclocking me.
A very tough game , it became drawish and then Jonny got a bit "greedy".
Overextended itself to win and then ultimately lost - it pretty much an exact game by CEng (what I call my engine ;) ) - like what Vincent Diepeveen(FM) said "It is playing like god in this position".
Victory against Jonny was a shot in the arm for me :)
The game exposed some small flaws in the eval , but nothing unfixable ...
A small touch here , a small tweak there and it was ready for round 2.

Next game was against Amateur , which was running on AMD FX55 2.6Ghz.
That hardware is awesome ! Last time I checked , my engine would run something like 60% faster on it as compared to my machine ... I think it can run even faster ... but forget that for time being. (I think Rajesh got that machine - lucky dog !)
It was a very tough game ... and I unearthed a bug in my program in middle game.
My engine forced a minor for major exchange and was sitting very pretty when the bug hit ... it underevaluated the threat in the position and with help of some really nice moves from Amateur - but mostly stupidity of my engine , it lost ...
It was a battle well fought , and miserably lost :)

Third game was against Xinix - it is running on a slightly inferior hardware as compared to me .. Athlon 2000+ 512mb (one of the very very few engines to do so in the tourney !)
This was a nice game ... xini had a bad opening , but it was not as terrible as it initially looked or maybe CEng did not convert its advantage to something substantial.
Middle game was a sword fight that Pirates would be proud of , and it went on for long until we reached a crucial moment where the lack of proper eval of passed pawns - especially connected passed pawns , by xini made it lose the game ...
Interestingly , my program was saying it was 4 pawns or so up for almost like 8 moves before xini's score slowly started showing it. (Note : even yace does not evaluate this position properly !)
Tough begining ... but ultimately a very easy ending - though it had to fight to get there.

Fourth was a very sad game - sad for me , and not the game quality :)
It was against Ikarus which is a very strong amateur - it was 4th in last IPCCC
(Hardware either A2800+ or PM-2.0 - not sure which)
This was an extremely tough game with a solid fight from opening to middle game to late endgame.
It was a dead draw position when finally Ceng's lack of endgame knowledge kicked in sadly ... it lost a patzer King + Bishop + Pawns ending !
Two days with Reuben Fine's endgame book would have ensured a draw at the minimum , and possibly something better maybe ... my earlier programs would not have fallen for this one ... *sigh* (crying miserably over slipt milk :( )
A very regretable ending to a very tough match !

Fifth was a against Butcher running on Athlon64 3200+
This was a very drawish game from the begining - the opening , middlegame and the endgame was tense , but drawish ...
There was a slight calculation mistake by CEng towards the end (need to hunt this one down - too tired to do that now !) , which made its eval drop to a about half a pawn in favour of the opponent ... but it quickly recovered and forced the opponent to scuttle for a draw (draw or loss) by a massive attack on its king and passed pawn promotion threat.
Very small small amount of heartattacks in this game ... except when my interface program (xboard) konked off in between :)

All in all , very very exhausting ... and as of now , not a very bad tournament considering the little effort I put into it , and its h/w, s/w condition :)

Next 4 matches will be held tommorrow ...
Signing off at 6 am , WISH ME LUCK :)

0 Comments:

Post a Comment

<< Home

Friday, February 04, 2005

Uniqueness of an Idea

Daniela posted an interesting piece here of what she overheard - "my idea may be interesting, but not unique. I have not had a single unique thought in my life. Interesting, maybe. But not unique..."

Is it right to dis the guy who said it ? (I dont know him or anything about him)
Or was the statement he made a profound enlightened thought or a statement he made offhand which happened to be pretty profound ? Come to think about it, is it profound ?
Got me thinking ... more like ruminating.

I believe in what he said to a large extent.

-- Unscientific rambling ON --
All our thoughts usually tend to be incremental changes - ofcourse at the end of a thought chain , the final idea might be quiet radical: but do we ever have a radical idea by itself ?
This line of thought will bring us to a net of interconnected subjects in AI , but we will keep that aside for the time being and try to think about the fundamental way in which human's think and progress.

"If I have seen further than you, it is only by standing on the shoulders of giants" - Issac Newton.

Cant we not infer a lot from this ?
I believe that there are no radical ideas - even the most revolutionary idea would be something simple like using something that works in a particular context in an entirely different context.
All great ideas must be a consistent incremental development of thoughts and ideas in the right direction.Ofcourse you need to keep the discipline in following the direction and not wander.

That being said , I dont believe this to be the case always ... some ideas just come to you out of the blue. For me , it is usually just after I fall asleep. The only prerequist for these seem to be a singleminded focus on the problem ... I dont really know from where these ideas pop up from ...
Is it random synapses firing in a lucky sequence which resulted in the spark ?
Or just random associations of thoughts and ideas which result in it ??
Not sure , but they do happen ... and I would rather write them off as due to one of the above than as some act of GOD/supernatural/psyche/etc.
The spark by itself would not be enough - you need more incremental thoughts to make it into a workable idea ... more like the irritant that results in the pearl , but without the irritant no pearl for you !
So the question would be , was this irritant a result of your focus ? or something else ??
I seem to be going into a circular dependency loop here inside my head on this :)

-- Unscientific rambling OFF --

Will chill for a while and maybe read something else.
Daniela gets two percent pay reduction for torturing poor innocent souls who happen to visit her blog with thoughts like this :)

Friend of mine has finally put up his product site online ... expect it to hit the stores sometime later this year. http://www.diep3d.com

0 Comments:

Post a Comment

<< Home

Thursday, February 03, 2005

Moving ...

Like I have already mentioned before , my health has been quiet steadily deteriorating past few months ...
My parents have been asking me to move to Bombay with them for quiet sometime now , but I have been postponing this decision with one excuse (reason ?) or another.
Things came to a head last weekend : MMN's performance was literally blood chilling - my BP dropped so much that I fainted.
Only remember going out of the "hall".
I was out like a lamp for 5+ mins or so (according to the guard who revived me) - dont remember making the journey from walking to lying on floor , but woke up a shock when water was liberally sprayed on me.
The kind gentleman was very helpful - would never forget him , and gave me sugar assuming it was low blood sugar problem (I suspect that it could be a possible reason too ...).

Anyway , to make a long story short , I decided after this incident that it was hightime I moved in with parents until health recovered to decent level.
So bottomline is , I am moving to Bombay - the interesting part is , my manager has agreed to allow me to work from home - so hopefully no problems in that front.
Plan as of now is that I will work for about 6+ months from there and then head back to Bangalore ....
(Is there anything specific I need to watch out for / need to do for working from home - as in any expierences , instructions , etc anyone wants to share ? Thanks)

Dunno when I will be leaving exactly - sometime thins month for sure.
Will leave as soon as the net conn gets activated at home.

Neeraj - need your number , could not call you when I was there this weekend.

0 Comments:

Post a Comment

<< Home