3 Years Of Softologyblog

3rd year anniversary

Today marks the 3rd anniversary of this blog. Over that time I hope it has been interesting for those who happen to check in and read it from time to time. When I started I wasn’t sure what the contents would be, but once you get blogging it all seems to flow.

I do recommend everyone try blogging. Pick whatever topic(s) you have a passion for and blog away. I tend to use mine as a journal of my ongoing progress with Visions Of Chaos with some interesting info for fellow nerds. It is always great when someone takes some info here, extends it and lets me know about it. That is the true shared knowledge power of the Internet at work.

Jason.

Venus Transit footage from SDO

Here is an awesome movie showing the transit of Venus yesterday.

Watch in highest def possible full screen.

More info about the movie with higher resolution movies and images to download here.

Thanks to The Bad Astronomer for the link. I knew that Phil would find the best example of the transit after it was all over and he didn’t let us down.

Jason.

Shared Knowledge

I have been meaning to post about this for a long time.

In the past I used to keep my latest secrets secret. As a developer writing fractal software (or any other software) you want your application to have those “wow” features that no other app can duplicate.

That was a simple-minded and foolish belief. The entire evolution and progress of the human existance is based on people sharing their knowledge and discoveries.

Fractal Forums (actually there is only the one forum, so maybe it should be Fractal “Forum”) was one of the major things that changed my mind. Seeing people happily sharing ideas and developing them together that lead to incredible discoveries (outside the usual sceintific community and peer-reviewed papers) was a welcome breath of fresh air. The original thread covering how the Mandelbulb was discovered shows this process.

Ever since then I have tried my best to share and explain ideas and it has been a very constructive and inspirational experience. Many a time I have shared a snippet of code with another chaos enthusiast who wanted to implement the same thing in their own code. The majority of the time they are very grateful and usually find a new twist to the code or idea I never would have had. This creates the feedback effect of leading to knew ideas that neither of us could have created before.

With this blog I have tried to change from making it an advert for a new release of Visions Of Chaos into a place I can hopefully help others understand the (relatively) simple maths behind chaos theory related ideas so they can enjoy and understand these principals themselves and (most importantly) come up with new ideas and advance the field.

Before the Internet was out there and when I was originally interested in fractals and chaos I only had books from the library to rely on to try and understand and learn how these ideas worked. The first real inspiration was Gleik’s Chaos that really got me into trying to code software to create those simple things like Mandelbrot Sets and Lorenz Attractors. Since the Internet that has all changed. The incredible result of shared knowledge is mind blowing. Whatever obscure topic you are interested in will be covered by someone else out there. You can usually find PDF versions of important papers on any topic. CiteSeer is an excellent resource when researching papers. If that doesn’t work a Google search for “paper name” pdf will usually find a cached copy somewhere. Sites like Processing.org are brilliant with source code to explain how an idea works.

All of this does lead to attribution. If you do share an idea then it can (and usually will) lead to someone using that idea and (in the worse case) calling it their own. This can be discouraging, but don’t let it get you down. I try my best to cite the original sources when I develop a new bit of code. Everyone likes to know that their knowledge and ideas were appreciated and repsected.

Another sig at Fractal Forums included “I beg of you to enrich others as you have been enriched” and I think that sums it up. Without the vast pool of knowledge out there I would have never been able to add all the features into Visions Of Chaos that I have so far and will into the future.

Share the knowledge.

Jason.

Dots Maker

The game of Dots and Boxes has been around for many years and no doubt most people played it as a kid.

I was recently having a few games with a mate of mine over some beers and we both realised how tedious the initial setup phase of the game is (initially drawing up the grid of dots and then filling in the random spots until you reach the “end game” of actually using some strategy to fill in the boxes). So after some hacking I wrote a simple app to generate and print game setups.

The first version makes a “perfect” setup in which every move is going to give the oponent a completed box.

That worked OK, but it came down filling in the single boxes, then the doubles, then the triples etc without any chance for a free move to be found.

If the Perfect checkbox is unchecked then after the initial perfect setup is generated there is a 1 in 4 chance of existing walls being removed. This allows a few free moves before the end game begins.

There has been some extensive analysis into the game and many strategies exist for good gameplay.

I had always played the rule that if you can complete a box you have to. Apparently this is the simpler version of the game and the real rules state you do not have to take a box unless you want to. Playing this version opens up many more strategies (see previous strategies link).

If you want to try the app, grab it here. Single exe, just download and run it. It detects the optimal grid size for your current printer when you start it up.

Jason.

Der Lauf der Dinge

Here is a great 30 minute “art” film by Peter Fischli and David Weiss. If you ever enjoyed Mousetrap as a kid or Rube Goldberg if you are a bit older then you will love this.

German title Der Lauf der Linge translates to “The Way Things Go” in English. I remember tracking this video down years ago and it was not easy. Thanks to YouTube it is out there for everyone to appreciate.

It may not be as perfected as the now classic 1 million pound Honda Cog ad, but it was 2 guys in a warehouse doing it for the love of doing it. Apparently Fischli and Weiss did get a bit stroppy and accused the Cog ad of plagarism. Sheesh!

Here is the original 2 minute cut of the Honda Cog ad.

Jason.

Ducks Fractals

I stumbled across a blog post by Samuel Monnier at Algorithmic Worlds recently that discusses Ducks Fractals. Samuel was also kind enough to share the algorithm and formulas so anyone can have a go at implementing them.

Here are a few of my results using the ducks algorithm.

Ducks Fractal

Ducks Fractal

Ducks Fractal

Ducks Fractal

To see the above images and more in their original high res versions see my flickr gallery.

Here is a quick test zoom movie into a Ducks Fractal.

Ducks Fractals are now included in Visions Of Chaos.

Jason.

GBK

A while back (actually a year and a half since the latest update) Ray Dulski (ArtCom) and I combined efforts to write a program called GBK to help people who use the guitar, bass or keyboard (hence the name) learn chords.

GBK screenshot

This was an interesting project. Ray spent much more time than I did on the database behind it that contains all the info for the what scale/key/variation/voicings each chord contains. The end result is not bad at all and has received good feedback from the musical community.

If you are a beginner who is learning the guitar (or bass or keyboard), GBK will save you having to use endless chord books or printouts of chords.

I have occassionally tried to write music myself (seems so easy when you hear a good song and think “I can do that”) and GBK has been a great help. At least it is a great help to allow me to make correct in tune sounding chords. Writing the actual music/tune is not simple. I am still searching for the holy grail of getting a program to write pleasing sounding music automatically.

Ray is much more the muso than I am.

Jason.

Further adventures with 3D Strange Attractors

After the original new 3D Strange Attractor formulas I found here I have been playing with alternate formulas and came up with these 5 new types.

Here are the formulas used and some sample images of each type. The a3da[] values are parameters between -1 and +1 that control the shapes.

Rampe 6
xnew=z*sin(a3da[0]*x)-cos(a3da[1]*y)
ynew=x*sin(a3da[2]*y)+cos(a3da[3]*z)
znew=y*sin(a3da[4]*z)-cos(a3da[5]*x)



Rampe 7
xnew=z*sin(a3da[0]*x)-cos(a3da[1]*y)
ynew=x*cos(a3da[2]*y)+sin(a3da[3]*z)
znew=y*sin(a3da[4]*z)-cos(a3da[5]*x)



Rampe 8
xnew=z*sin(a3da[0]*x)-cos(y)
ynew=x*cos(a3da[1]*y)+sin(z)
znew=y*sin(a3da[2]*z)-cos(x)



Rampe 9
xnew=y*sin(a3da[0]*x)-arccos(a3da[1]*y)+sin(a3da[2]*z)
ynew=z*sin(a3da[3]*x)-arccos(a3da[4]*y)+sin(a3da[5]*z)
znew=x*sin(a3da[6]*x)-arccos(a3da[7]*y)+sin(a3da[8]*z)



Rampe 10
xnew=y*sin(a3da[0]*x)-cos(a3da[1]*y)+arcsin(a3da[2]*z)
ynew=z*sin(a3da[3]*x)-cos(a3da[4]*y)+sin(a3da[5]*z)
znew=x*sin(a3da[6]*x)-cos(a3da[7]*y)+sin(a3da[8]*z)



All of the above formulas are now implemented in the latest version of Visions Of Chaos.

I have more ideas to expand new attractor formuals in future versions of Visions Of Chaos. Firstly is to get a decent formula compiler implented so the user can try formulas easily by typing in the 3 formulas for xnew, ynew and znew. Once that works the next obvious evolution is to get it to genetically evolve and mutate the formulas like I have done for Genetic Art in the past.

Jason.

First article about the Mandelbrot Set available online

Back in 1985 A.K.Dewdney published an article about the Mandelbrot Set in his Computer Recreations column in Scientific American that helped kick off the Mandelbrot mayhem.

As a tribute to Mandelbrot after his death the article is now available as a PDF on their website. Click the following image to access the page.

Scientific American Cover.

The ads for the super high power computers of the time are almost as enjoyable as the main article to read.

Jason.