Friday, 25 December 2015

Fractal AI collaboration

Controlling an arbitrary complex agent so it behaves "intelligently" by using the thermodynamic concept of causal entropic forces is possible by using an special kind of fractal decision tree, the "One Way" fractal algorithm I have commented here before.

But controlling a group of agents in a intelligent way is not that simple. I always managed to make several agents to evolve at the same time in the same environment, but it was done just by giving each agent its own personal intelligence, while considering the rest of the agents as mobile parts of the environment: obstacles to be avoided to survive.

Here is a real "swarm intelligence" controlling a group of agents as one:

Thursday, 29 October 2015

Time traveling fractal AI, a first approach

Finding a way for the fractal futures to be able to travel back in time, as in Feynman diagrams and integrals, has proved to be a little tricky, but I feel I am quite near to solve it.

In the mean time, I want to share a "dead end" try to accomplish this by using succesive layers of futures sended to the future in different succesive times, so they act as a serie of concentric wave fronts that travels to the future reinforcing each other.

Let start by showing a nice video of this idea at work:

Friday, 9 October 2015

Maze: Fractal vs Entropic

Just after reading my own last post I wondered why I didn't let both algorithms to solve the maze in similar conditions so I could have a clear idea of how better one is compared to the older.

Wow, I didn't remebered the lineal "Entropic" AI to be so limited! I always tested it in the open field as I knew it didn't perform well in maze-like environments, but it looks like the google car racing against a F1.

So just have a look to the fractal "One Way" version of the last post solving the maze:

The One Way Fractal AI

Today I consider the "One Way" version of the fractal AI to be officially finished: I can not do it any better!

I have recorded a short video directly from my screen so you can watch it at work in slow motion, generated in real time in a very slow PC (no GPU, no cuda, no paralellization, no optimising, just old and dirty standard code) so you can watch the fractal as it grows up.

What you will see in the video are the "tips" of the branches of the fractal as it evolves in time (visit the post about "Fractal algorithm basics" for more info about what those "branches" are), like a "front wave" of imaginary futures scanning all the possibilities in front of you.

It really acts as a flock of silly birds, but a very special one: all the birds are totally blind, they change direction and velocity totally randomly, like having a crazy monkey pushing the joysticks randomly, but when one bird crashes, it is cloned to a safer position, the position of one of the "best birds" in the actual flock. This process of cloning and collapsing is what defines the "Fractal growth" as commented in the last post, and it makes it possible for the futures to reach the exit of a complicated maze quite automagically.

The video start by showing you the final fractal paths used to solve the maze, then I switched the app into "Slow motion debug" mode and made a new step of the thinking process, so you can see the fractal forming. The params were 1000 futures and 100 seconds.

Sunday, 20 September 2015

Fractal algorithm basics

This post is meant to be the first in a serie about the basic working of what I now call "Fractal Growth based algorithms", including not only the "Fractal AI" I am working on, but also methods for function optimisation or even my biggest experiment, the "quantum physics simulator" showed in previous posts.

Why are those methods relevant?

I have a strong feeling that those methods could be revolutionary in several aspects and serve as a base for new mathematical tools based on the power of fractals: I think they have the power to dilute some NP problem into P, and even more interesting, into O(n), making some hard problem to become "not so hard" anymore.

Nature is made up of fractals, as Maldelbrot showed us: a tree is a fractal, the coast line is a fractal, a mountain is also a fractal, etc. but we only use fractals for drawing fractals... it is the "lovely cat generator" of modern maths.

Friday, 11 September 2015

Benchmarking a fractal algorithm

An algorithm is only "promising" until you perform some benchmarks against others similar state-of-the-art algorithms that are aimed at the same kind of problems.

Benchmarking a general AI algorithm is not easy as it is supposed to generate "intelligent behaviour" and it is not quite clearly defined, but I also develop some other fractal algorithms aimed at finding the global minimum of a real function, or "optimising" functions, and in this case, the algorithm is easily comparable with others, so here we go.

Thursday, 18 June 2015

Using Feynman Integrals

Some posts ago I commented on the strange need of using a "Pauli's Exclusion Principle" on the Fractal AI in order to make it work as spected.

It may sound strange that quantum physics play a role on building a fractal AI, but actually it is the real base for such an algortihm.

Today I want to comment on my very last idea: using real Feynman integrals on the Fractal AI.

First try to draw the fractal

Tuesday, 16 June 2015

Passing the "Asteroids Test"

Fractal AI is quite mature by now, it has reached a quite big milestone, being the first "finished" fractal AI I have been able to produce to date. It is not still "completed" in a general sense, but with some prefixed limitations, it is finished.

I stresssed it with 30 asteroids using only 100 futures (in previous tests I needed 300 or 500 futures to get something like this) and it was no problem for the rocket at all. Then I tried 40 asteroids. Again no problem but more stress.

50 was too much for it. The sky was full of asteroids, I didn't spect it to survive at first, but it did. I did manage to fly away the shower, but survivided! It is a new record.

Tuesday, 9 June 2015

Long Term Proyects

Once the Fractal AI is formally finished (regardless of how many improvements I could still implement on it) it is time to mention some of my wildest proyects for the long term.

Long fractal shots

All of them are long shots, things I feel that can be done using fractals in the exact same way I am applying in the Fractal AI. Some of them are already "half done" but will need a deep rethinking, others are just ideas in an very early stage of maturity.

1) Fractal growing of neuronal networks
This one is quite interesting as it could automate the proccess of building the network itself (adding neurons and connectons fractally as needed, no more need to choose how many layers to use) at the same time it learns from the examples it is exposed to. I have some sketches of it, but it is istill not mature enough to start coding. I call it "Fractal Deep Learning".

A finished version of Fractal AI

Today I will show you what I consider to be the first finished version of the "Fract Emotional Artificial Intelligence".

The Fractal AI is now parameter less, meaning all those params I needed to set manually, like the "evapore ratio", are now governed by the AI.

Nice fractal thinking paths.

Thursday, 4 June 2015

Fractal AI: An Almost Perfect Lap!

The main problem with fractals is that they tend to grow exponentially, so keeping this growth under control is a difficult task in many aspects.

Some posts ago I commented about the need of combining Fractal AI with some kind of "Exclusion Principle", meaning it that the fractal needed to avoid high density zones in order to work optimally.

Today I had some spare time to work on this and now I am presenting you the first videos of this exclusion at work. It did improve AI quite a lot! Just see the video and judge:

Tuesday, 2 June 2015

3D Fractal QED

This time I want to show you the Quantum Electrodynamic "fractal simulator" on a 3D environment, so you can compare it with the previous 2D simulation video.

Again, the proton is not a real proton. If it were, it would scape from the trap inmediately, but I didn't want this to happend, so i keept it on screen by changing it a little.

Monday, 1 June 2015

Quantum fractal simulator

I am NOT a quantum physicist, not even a decent amateur, but I have a slight idea of how Quantum Electrodynamics works -thanks to Feynman lectures and books- so I was tempted to try this out: can I simulate QED using only fractals?

Sunday, 31 May 2015

First talk translated into english

While reviewing the video of my first talk (I do it frequently, but this time I happily discovered it mentioned on a data analysis blog I was just reading) I noticed automatic subtitles were available, and quite nicely converted to text for my surprise, wow!

I tried the english automatic translation and hey, you wouldn't say, but it was near perfect, even the little jokes were almost intact!

So if you were willing to listen to a simple explanation of this "Entropic Intelligence" algorithm, one you can easily understand and directly apply to your home-made kart simulation (or whatsoever it is), here you are, just remember to activate subtitles and then, clicking on the gear, select translate and choose you own languaje, it will do it quite right.

Pauli's Exclusion Principle

Quantum physic plays a big role in developing an artificial intelligence, more than many could think at first glance.

Back in the days I was developing the Entropic Intelligence, I needed to discard similar ending futures before evaluating the "Future Entropy" of a given option. This was because "entropy" always involves using a given minimum distance so futures that ends closer than this must be considered only one single future. If this remainded you some quantum principle like exclusion, you were quite rigth.

Entropic Intelligence grouping future end points

Thursday, 28 May 2015

Entropic vs Fractal AI

This blog has been devoted to "Entropic Emotional AI" until some weeks ago. Now I call this "old" implementation of the AI the "linear" or the "entropic" version, while now my attention has shifted to "Fractal Emotional AI".

Why? What makes this change in the wording means? Is "Fractal" any better that "Entropic"?

Short answer is Fractal is much better, powerful and simplier. It is the big brother of the now weak Entropic AI. It performs much better that the previous one in terms of the emerging intelligent behaviours and, more important (or not) it is far more flexible and extendable than it was never.

Wednesday, 27 May 2015

4 Fractal Ninjas

Tonight four of my new "fractal minded" rockets have been playing "Ninja fight". As before, you can compare it with the "linear/entropic" version of the algorithm here.

The rules are simple: If rocket "A" touch "B" with the tip of its main thruster flame, it takes energy from it.

Tuesday, 26 May 2015

Fractal minds

Yesterday I found a video that really caught my attention: Starting from the fractal shape of our brain, the speaker Wai H. Tsang derives the fractal working of the intelligence (hey! like my fractal intelligence!) and propose a fractal way to model intelligence... a 90% match with my actual work!

The second part of the video go through consciousness, the great missing part in my actual schema (ouch!) and from this point, it jumps to the universe, religions, god... I have walked down this road too, with almost exactly the same results, except I used entropic principles to make the walk, while he used fractals. My trip was months before I jumped into fractals, that is why there is a difference. Any how, I agree with Wai 100%.

If you liked my fractal intelligence videos and want to know what makes this idea work so great (and great by it self) please take this journey, you wont regreat.

Monday, 25 May 2015

Fractal AI at full power

This weekend I was fixing the fractal version of the AI to avoid those "silly decisions" that the first, alpha version, was clearly doing now and then.

The exponential growth of the fractals was badly defined, so after some days of thinking about it, I changed it and... voila! I was right this time!

Now the fractal version of the emotional AI really shines, making the linear one to pale in comparation.

Have a look at some fractal rockects dealing with 30 falling asteroids, all having uncertaintly on theirs positions, so the scenario is comparable to the one used in the last post.

Thursday, 7 May 2015

Fractal intelligence, first videos

So how does this "Fractal Emotional Intelligence" really compares with the previous model, the "Entropic Emotional Intelligence"?

Yesterday it was worst, much worst, today it is almost as intelligent... or more. Intelligence is dificult to measure, the only way for me is to record a couple of long videos and watch them carefully, then use my intuition. Poor method, but what else is available?

You should start by watching the old "linear" intelligence dealing with a dangerous meteor shower in the previous post before going on. To be fair, I would suggest you to watch the "Uncertaintly" video as it mimic the conditions used in the next videos (falling asteroids are seen by rockets with some uncertaintly, so where will they fall is fuzzy for them).

Linear intelligence was well developed when this video was made, and the resulting behaviuor was excellent (from my highly biased point of view). Fractal version is still in alpha/beta version, some internals are not 100% converted and tested in the new model, so keep in mind this fractal version has still to grow up a little before judging.

That said, here you have a video in the same circumstances, but using fractal intelligence. Thinking debug is "on" in the few initial seconds, so you can stop the video and inspect the fractal path the rocket is using (it is too caothic to be "on" all the time).


Tuesday, 5 May 2015

Fractal function optimization

I planed to upload only one video per day until I had no more things to show you about those fractals, but I can not start this serie of posts without showing you one of my favourites: a fractal whos growth laws were designed to make it "sniff" towards the function's global maximum, go there, and then start a deep scan to find a better place.

A "maximizing plant" if you prefer.

Introducing fractal intelligence

Hi again dear -and rare- reader.

I am back writting after some months without activity, and it was not because I was busy writing a paper about the entropic intelligence (it is still unfinished), it was because I have been working hard on a "fractal" version of the intelligence engine.

Fractals are for algortihms what bluetooth is (was?) for devices: everything works better and faster. The dark side of fractals are they are hard to define, too caothic, at least if you want to make real calculations with them (instead of generating nice fractal images).

Monday, 16 March 2015

Video of my talk at Murcia University

Last november 19th 2014 I had a talk at the Murcia University titled "Entropic Emotional Intelligence for video games".

The talk is in spanish and surely it is difficult to follow for any foreign, my spanish is a little "local", but I will try to subtitle it into english sooner than later, so come back if you missed it.

The intelligence I present here is exactly the one being discussed on the already ongoing paper, except for a nice addition for negative feelings introduced later on the paper, what I call "relativized feelings" that is still not covered in this blog... I am becoming lazy!

Remember you have the slides, both in spanish and english, at the download page.

Tuesday, 10 February 2015

News from the front

Before saying actually nothing, and just to show something in the post, I will show some of the drawings I am preparing for the paper:

In this case, the drawing is a little obsolete -code is still changing its shape- and I need to re-draw it.