Thursday, January 22, 2009

Synaptic Magic

There are question flying around in life for me, a lot of them are formed into hierarchies, making them related. An answer to one on top of the hierarchy will solve the ones down below. Among the questions at the very top of one of the hierarchies is the main question related to free will. Is everything in this world following a deterministic plan or is there the notion of real randomness existent? Is the brain functioning by pure physical cause and effect relationships or does something special happen in it when we desire. Is there free will or do we just flow in a deterministic ocean? If the neurons in the brain fire upon receiving electric signals and work as physical machines, then every action or thought caused by the communications in our nervous system and brain has a reason which can be traced back in time. If this is not the case, then inside every neuron, in fact inside every synapse, magic should occur, something should happen which has no scientific justification and no science can ever find out about it. Otherwise it will become predictable and there is a reason for it which makes it deterministic and the idea that we can make a choice on our own becomes meaningless since there is this endless chain of reasons trailing back. Whats really going on inside? Randomness, are you real? Is there a first cause?

The way I think and see life, I believe in big magic going on in there.

Second Chance?

The Samurai never used shields. No shield means no chance for errors. Zero tolerance. Even if they don't make mistakes on the battle grounds by getting killed, on the emergence of other mistakes to lose honor, they do seppuku. Talking about the spirit in modern days, even the Yakuza cut their fingers upon making mistakes. The mass belief is that this reduces security and makes life vulnerable. Is this really so? How about thinking about all the enhanced consciousness and feeling of the "living moments" these beliefs bring with them? Or even the laziness and weak attitudes that knowing you have shields and second chances bring. I've seen a correlation between the amount of time people use the word "sorry" and their weaknesses. The strong do not use this word much, is that because they don't make mistakes for being strong or did they get strong because they hated the word "sorry"?

Thursday, January 15, 2009

Life Goals in Ashmooghville

Digging my aged laptop, I found the following research report which was an attempt to use evolutionary computation to model certain aspects of life and try to solve an optimization problem for life which maximizes happiness.
Of course there are lots of simplifications and assumptions in the study but it can act as a very simple root for further more complex studies.

Anyway if you ever wondered what the Ashmooghs (mythological creatures) did eventually to feel happy in Ashmooghville, you can read this report. (Farsi Text)


The idea here is that we assume these creatures have goals in 4 different layers which can be measured by a single attribute.
In the biological layer, they try to maximize their lifetime.
In the psychological layer, which acts as the software for the biological layer, they try to maximize their pleasure.
In the social layer, they try to maximize their power.
In the cultural layer (software for the social layer), their goal is to maximize the amount of meaning in their life.

Assuming they have limited tasks which can be selected in their life span, the question then would be to know what to do in life in order to maximize happiness based on the above 4 parameters.

An evolutionary program has been developed to do a bit of an analysis on the situation.

If youre interested in playing with the code and tweaking the attributes, download the code here:

Ashmooghville Java Source Code

Closing the Loop

The game development process includes many stages from different disciplines ranging from pure technical tasks to pure artistic tasks. Every stage needs a to be deep in order for every aspect of the game to be acceptable, however one really important necessity in the whole process is the links between these stages which can be as important as the individual areas of expertise. These communications, for example exporting a 3D model from a 3D authoring tool into the game engine, would require special tools. Any problems in such tools will cause negative effects on the efficiency of the whole development pipeline.

Major game engines such as Unreal 3 are very well known to have such integrated tools that can stitch together the different stages. Some dev houses implement their own specific tools.

Up to now we have had a few tools to let us connect our development stages together in the form of a one way pipeline. The main features have been, Concepts to 3D Max for modeling, 3D Models to Char Studio for animations, Char Studio and Max to our in house level editor for laying out the scene, level editor to our in house game engine to build the actual game. This pipeline was all we needed for building a demo level but since our focus is more on making the actual final game levels, we need to pay attention to the fun factor regarding game design issues a lot more now. Level building and tweaking is done in our editor but the final scene finish up is done in 3D Max since we do use a few features that are handled by Max very well and it will not be feasible in our current time frame to re-implement those features in the editor. This would require a ping pong between Max and the editor since we would need to come up with an overall spatial model of the environment built in Max, load it into the editor, arrange the game play related elements in it, play test, tweak, and then resend these basic level element positions to Max to finish up the aesthetics related features, maybe return to the editor, tweak and then back to max again. For this we obviously needed a loop back in our one way pipeline which we created very recently thanks to a few Python scripts and Max Script. This reverse direction in the pipeline will help us a lot. A few more communication channels would probably be needed in our quest towards achieving a rather lean process.

Saturday, January 10, 2009

The Curse of the Mass

Observing the TV shows about Football gives me a bad feeling. The reason being that these shows have converged towards gossip and off the field issues a lot more than technical in field matters. Which coach cursed who, what strange things happened between General Managers and players, player off field embarrassments and so on. You seldom see proper analysis of the team tactics or player techniques. This is just Football, almost any popular show, magazine or newspaper about a certain topic which has audience such as sports, movies, etc. behaves the same after a while. What is the problem? Is there a problem? Well, no doubt these programs have huge audiences. That is exactly the problem. Humans seek patterns, finding these patterns provides satisfaction. Watching such programs reflect the human being relationships such as fights, breakups, love, hatred can be felt by almost anybody and brings joy to these people, but talking all tactics and techniques will be understood by only a few, maybe 20% of football fans really understand team tactics, so by having a very technical TV program, you'll end up boring 80% of the audience and making the switch the channel. And the goals of these program being only to have "MORE" viewers, their evolution has no choice but to be how they are currently.

This is the curse of the mass on noble products and processes.

In other dimensions, consider the company Microsoft. Ever wonder why their products are not comparable to the top products in the field? Has to do with the goal for the products, not to be the best, but to have the most users. Half of the problems in the software world initiated from the day they decided to provide programming for everyone, hence VB was born. Ironically having the most users can not converge to the best product either, just like how the best music will not have the most audience, the best movie will not be a block buster and the best football show will not have so many viewers. "Best" here is formed on top of the quality attributes inside the domain (sports, movies,..) and not based on audience and sales.

Wednesday, January 07, 2009

Run for it ... run

In the recent years, I see an increase in the number of Nazri Food seeking people on the Ashoora day. People running all over the streets trying to find a source of free food distribution. Well, looking deep into these people, they can be categorized into three groups, or a combination of each:

1 - The ones who are really poor and any opportunity for free food can be life saving.
2 - Those who are not poor and in many cases very wealthy but feel that anything free should be hunted, not excluding free food. For this group, it seems that increased love in money has caused this appetite. When you love money, you hate to spend it, you will not let go of any opportunity where you can gain something without spending money, such behavior can be observed very much in capitalistic countries specially the US.
3 - Those who feel that these Nazris are somehow holy and eating them will somehow magically increase their religious ranks, it is interesting that the more sinful a person is, the more they believe this way.

Either way, the way I see it, all of the above have a direct correlation with the word "Human Weakness" and it seems like the value of this attribute is increasing among the community. Not a good sign.

Tuesday, January 06, 2009


I had a chance to try out Dragon Quest 8 and it was just pure amusement. All the main feelings of the original series have been maintained with a new 3D look with great non photo-realistic rendering. I was able to see all the things I imagined when I was 10 years old playing the first Dragon Quest with fixed 2D graphics. It resurfaced a lot of never again felt moments from the past. All of Toriyama's concepts could only be imagined back then but you can visually see all of them in game in this one. Nice.

Monday, January 05, 2009

Debug Clusters

There are lots of issues to bear in mind as design goals in software development. The x-ability issues among the most popular. Many such goals being even contradicting. However, designing and implementing code which has no functional value and is used only for debug purposes can become important in most complex projects. This can be considered as as subset of the maintainability goals but such code can be significant in developing the proper code in the first place. Added to the designers main decision making factors are then the amount of such debug clusters necessary around the functional code, engaged in the optimization activity which tries to minimize development time by selecting the amount of debug code, "the more" easing functional development and requiring non functional code development time, "the less" making development harder by increasing functional code development time.

Wille zur Macht

I had a chance to read a Nietzsche quotes book recently and felt that the least I can do is to re-write these selected few here:

One should always yearn to experience major difficulties from the bottom of his heart.

One could do anything he has to, and when someone says "I couldn't", it means that he doesn't want to use his will power.

Mastership is obtained when one doesn't hesitate or blunder in time of taking action.

Continual tranquility is wearisome, sometimes storms are needed.

The honourable and reverent men's mistakes are respected, because of their usefulness. But the accomplishments of the ordinary men are not even comparable to their mistakes.

If a man dwells among the noble human beings, he will forget the pride. It is loneliness that foments the pride.

The one who has discovered the reason for being alive, will bear the different stages of life.

We should never give a room to envy, but we should say: with the first foolishness, the second will follow.

The weak always crawl into the powerful men's hearts in hidden fashion and stealthily provide power for themselves.

Anything such as trials and tribulations that defeat me or ruin me will make me stronger at last.

Everytime we find our identity, we discover that occasionally we may lose it and then we will eventually find ourselves again, cobsidering if we have thoughts and awareness.

The increase of wisdom can be measured by decreasing of wrath.

Will power is the motivation for freedom. For, to desire is to create. This is my instruction and your only job is learning how to create.

Sunday, January 04, 2009

The Horizon

When the enemies have outnumbered and no victory is visible in the horizon ... people surrender ... people wait ... people doubt the situation .... but the Samurai fight ... they will fight hard and live the life ... for they have been born to fight ... they find the ultimate meanings in the instances while engaged in the battle grounds and not surrendering ... this is their way which seems insanity by the skeptical.