Artwork Software Writing Bitcoin

Flexible AI

Multi-purpose AI?

What does it do?

This yet to be named AI, can find good enough solutions for multi-variable problems; and that’s it.

Have you got a natural phenomenon to infer? Input your scientific data into the program, start the module, wait, and get a mathematical model representing it. Need to reorganize a schedule? Build a module representing the problem, start the program, wait, get the solution. Need to know when to buy or sell bitcoins? (Shameless plug) Wait until I add it to Crypto Shuffle, start the program, profit.

How "flexible" is it?

It’s flexible enough not to be tied to any particular problem landscape apart from several basic, but fundamental, limitations —i.e. it surely won’t work out lottery problems— and it requires a module of the problem in question to be built before-hand.

For problems that consist solely of finding a set of parameters to optimize a numerical process, the program needs no custom module. I’ve used it to find functions describing some of Path of Exile’s mechanics, to develop some of my game prototypes’ mechanics, and for something as trivial as finding suitable item builds in League of Legends—among other uses.

The AI is smart enough to know when a problem can be beaten by sheer brute force. Although, if you’re not patient, you can ask it to use more crude, quick-and-dirty methods that approximate solutions close to the best one. It will also back-down from solving problems it deems unsolvable.

How does it work?

First, the program analyzes the problem at hand, then its heuristics decide how to attack it, tuning themselves accordingly during the process.

It depends a lot on the search space of the solution, some problems are more tractable than others. Don’t expect it to solve hopeless problems (gamblers please abstain), but do expect it to solve problems that seem complex enough for you to prefer automated methods over human ability.

What can I use it for?

In abstract, its main use is to find a set of choices maximizing a given search space. If you can optimize something with Excel Solver, chances are this program can also optimize it too. I haven’t compared its performance stacked against Solver, so I can’t give you a proper recommendation. Without any testing, I would say FrontLine's product is faster than mine.

I originally built it to remove the pain from creating Game AIs, as it can properly generate an AI for a game object in a simple game universe.

I’ve tested it to procedurally generate:

  1. Game AI
  2. Game Mechanics
  3. Mathematical Functions

I’m pretty confident it’s capable of tackling very different problems with its heuristics, however confidence alone can’t make problems solvable; this is no silver bullet, and I can’t claim it will perform brilliantly, unless tested. This is what makes me write a question mark after “multi-purpose AI”, I won’t claim this program does something that it is not capable of doing. However, it is multi-purpose enough to be used in problems where the intrinsic mathematical relationships needed for the program to work are held; and as it turns out, there are plenty of problems fulfilling those conditions.

Is it for sale?

No. Then why do you write about it? You could ask. Well, this is a portfolio site mostly; and I’m transparent enough to show the projects I’m working on right now. In a not so distant future I might just bundle it (or a portion of it) into a product and sell it. Meanwhile it serves me well as a design and development tool.

Also, using a piece of software does not mean having its binaries. You could hire me as a consultant and I would gladly write the modules needed and retrieve its results for you.