Tuesday, 06 June 2006

Passend zum heutigen Datum möchte ich mal eine totgeglaubte Software aus dem Archiv kramen, die ich damals in VB geschrieben habe.
Für alle paranoiden da draußen: der ultimative 666 Prüfer :-)

So siehts aus
 

Mit diesem kleinen Programm kann man blitzschnell überprüfen, ob ein Wort die Zahl 666 ergibt oder nicht.
Das System ist simpel. Man multipliziert einfach die Buchstaben des Alphabetes (zumindest die Stellen, an der sie stehen)
mit der 6 und addiert dann alle Zahlen zusammen. Also A=6, B=12, C=18 usw.

Folgend ein paar Begriffee die die Zahl 666 ergeben:

  1. Computer
  2. Illuminat
  3. Von Goethe
  4. Van Helsing (Pseudonym des Autors des Buches "Geheimgesellschaften und ihre Macht im 20 Jahrhundert")
  5. Kissinger
  6. New York
  7. US of America
  8. RTL News
  9. Hans Meiser
  10. Deutschland
  11. Torvalds (der Linux-Vater)

Schön Tag noch :-)

Download (250kb, zip, incl. benötigter dll)

Tuesday, 06 June 2006 15:13:59 (GMT Daylight Time, UTC+01:00)  #    Comments [37]  | 
Wednesday, 08 February 2006

Now it's time for another tool. Here is it, my c# implementation of a genetic art tool based on sharpNEAT [1]. Inspired by the genart tool fom mattias fagerlund [2] which is based on delphiNeat[3] i create just for fun my own version of it with some new features like

- history (it's possible to go back in a previous generation and track another evolution)
- the user has more posibilities to affect the color calculations
- there are more options to influence the picture generating.
- math. expression (which will compile at runtime and affect the network signals)
- save/load several genomes
- save/load color schemes

take a look

genart.jpg

 

here are some black/white generated pictures

button.jpg chronometer_small.jpg eye.jpg face.jpg phone.jpg

 sign.jpg wiredcross_small.jpg skull.jpg spool.jpg tentacle.jpg

 watership.jpg whatever.jpg whatever2.jpg xray.jpg 10.jpg

 

and here some colorful

1.jpg  13.jpg 14_texture.jpg 12.jpg 15.jpg

 16.jpg 18_pig.jpg 19.jpg 2.jpg 3.jpg

 4.jpg 7.jpg 8.jpg bird.jpg eule.jpg


To run it you need .NET Framework 2.0 final. If you want play a little with it look here [4].
Or if you want to see the full source and extend it, download the whole Visual Studio 2005 solution [5].

Some tips:

- the more complex a network is, it's expedient to lightly increase the network iterations for better pictures.
- play with the mutation parameters, it's important for good results.
- play a little with the math. expression for the network input signals.
- tip: mirrorX/mirrorY in addition with "colored noise" and the "wired" color scheme gets the "real" pictures, then just play with the zoomfactor ;)


While i was coding this tool, a question is flashed in my mind. I see that all networks have the _same_ input signals, and these are constant. But all networks create an individual picture of the signal. Now, just map this to the human brains ... you see the parallelism? ... is all out there only an illusion?


life is a game.

[1] http://sharpneat.sourceforge.net/
[2] http://www.cambrianlabs.com/mattias/GeneticArt/
[3] http://www.cambrianlabs.com/mattias/DelphiNEAT/
[4] GenArt.zip, just the exe and some color schemes (130 kb), need .NET 2.0 to run 
[5] GeneticArt full source (VS2005 Solution) (670kb)

coden | dddwik | tddwnb
Wednesday, 08 February 2006 21:55:10 (GMT Standard Time, UTC+00:00)  #    Comments [21]  | 
Wednesday, 16 November 2005

try this http://www.iol.ie/~dluby/escape.htm (my record 43 sec for first time)
or this http://files.deviantart.com/f/2004/188/8/7/gridgame.swf (my record 1517 reactions)

Wednesday, 16 November 2005 13:29:28 (GMT Standard Time, UTC+00:00)  #    Comments [49]  | 
Tuesday, 01 February 2005

Was haben .NET und Golf gemeinsam? Richtig, beides kann ein lustiger Zeitvertreib sein.
So war auch die zweite Aufgabe von CodeFairway mit dem Ziel verbunden, die anagrammatischen (bzw. palindromischen) Zahlen und deren Quersummen in einem gegebenen Intervall mit so wenig Codebytes wie möglich zu berechnen.

Palindrome? Anagramme? Guckst du hier.

Wie bekommt man nun die Anzahl Palindrome in einem Intervall heraus? Ganz einfach, nach der Bruteforce Methode, d.h. man testet eine Zahl nach der anderen und summiert die Anagramme auf. Die Siegerin des Turniers wurde übrigens Claudia Krolopp mit folgendem Code:

public void Off(int a,int z,out int e,out int o)
{
  for(o=e=0;z>=a&z>99;z--)
  for(int r=0,t=z,s=t;t>0;s+=z==r?s%2>0?o++:e++:t/=10)r=r*10+t%10;
}


Lustig, nicht? Der Nachteil an solchen Methoden ist jedenfalls die Komplexität. Je größer das Intervall wird, desto länger dauert die Berechnung. Bei der heutigen Durchschnitts-Rechenleistung der Computer versagen diese Ansätze bei Zahlenintervallen > 10 Stellen.

Deswegen habe ich mir einen anderen Weg überlegt. Der macht sich zu Nutze, dass in jeder Zahl selbst die Anzahl der Anagramme für das aktuelle Intervall versteckt ist. Diese muss nur berechnet und mit der Anzahl der vohergehenenden Intervalle addiert werden. Wie ich das genau mache, kannst du hier nachlesen.

Diese Methode hat den Vorteil, dass er auf jede beliebig große Zahl angewendet werden kann. Bei meiner Implementation ist nur aus computertechnischen Gründen die Anzahl der Stellen auf 9223372036854775807 begrenzt, also bitte nicht übertreiben ;-)

Hier gehts zu eine Online Version
Und hier kannst du eine Offline Version downloaden. Voraussetzung ist nur das .NET Framework.

Screenshot Offline Version:



Info: Bei beiden Applikationen gehen die Palindrom-Zahlen erst ab 3 Stellen (also der 101) los.

btw, dass ich mit dieser Methode nur letzter im Turnier wurde (ca. 580 Byte), muss ich nicht extra erwähnen, oder? :-)

coden | dddwni | tddwnb
Tuesday, 01 February 2005 23:45:14 (GMT Standard Time, UTC+00:00)  #    Comments [40]  | 
Thursday, 13 May 2004

Unter der Rubrik "Toolz die die Welt nicht braucht" (tddwnb) stelle ich heute ein besonders nichtsnutziges vor. Einen BlogReader in 3D, d.h. Rss Feeds im 3-Dimensionalen Raum lesen, ggf. die Blickrichtung ändern, zoomen etc. Klar, es macht nicht wirklich Sinn (muss denn alles im Leben einen Sinn ergeben?), aber ich wollte mal wieder  etwas mit managed DirectX machen.

Ich kann zum Thema übrigens das Buch "Managed DirectX - Graphics and Games programming" sehr empfehlen.

Leider ist aus der "kleinen" Idee ein recht aufwändiges unterfangen geworden. Daher ist das Tool noch nicht Final und kleinere Bugs in der Darstellung sind noch enthalten. Aber das sollte nicht weiter stören. Wer möchte darf es trotzdem ausprobieren und bisschen rumspielen.

 

Hier gibts die kleine version (managed DX SDK muss installiert sein)
Hier gibts die Version incl. der benötigten DX-dll's (ca.1 MB)

Thursday, 13 May 2004 12:43:09 (GMT Daylight Time, UTC+01:00)  #    Comments [60]  | 

Theme design by Jelle Druyts

Pick a theme: