Trigger AI
May 10 2011, 7:15 am
By: Sacrieur  

May 10 2011, 7:15 am Sacrieur Post #1

Still Napping



Aperture productions presents...




System Overview


This system operates off of discrete event subsystem. This is because triggers are event systems, and as such model well into the system for our input. Triggers represent limited If, then arguments, known as modus ponens. If we are to perform decision making, then we must grant additional logical operators for our use. Luckily, we can do such through the use of triggers. Basic trigger AI will function as:

Input → Processing → Output

Various expansions to this concept will be introduced and expanded on. These take the following form.

Input → Processing → Output
||||||||||||↑↓
|||||||||Database

This additional storage of information has various advantages over the previous system. Rather than things like build orders, objectives, and various other knowledge having to be hard-coded into the processing unit, we can instead separate it out and put it in an easily accessible format. All data will be stored virtually, and so it is possible to add data while a game is being played. The most notable application of this is in the implementation of simple self-learning algorithms. It is possible to apply Darwin's theory of natural selection, and reward those actions which achieve prolific results, while punishing those that receive negative outcomes. This "blind" self-adapting system would change its tactics based on the opponent's tactics; ultimately creating a more fulfilling game experience.




Phase I
Designing Input Peripherals


(In Progress)



None.

May 10 2011, 7:16 am Sacrieur Post #2

Still Napping

The above post will be updated as I finish writing more and more. I promise I do have it all planned out, I just need to put into words / add graphics. The above post is separate because I will add more and more as more and more theory is stacked on it.



None.

May 11 2011, 12:38 am The_UrChai Post #3



I always thought something like this could work. might take some time but everything in mapmaking does. A large amount of triggers could make a pretty extreme Desert Strike AI no? This is exciting! Also in color!



None.

May 11 2011, 3:38 am Wormer Post #4



Sorry, but IMHO a large amount of triggers could make a pretty extreme lag... :|



Some.

May 12 2011, 4:27 pm Heinermann Post #5

SDE, BWAPI owner, hacker.

If there are 8 players in the game, and you have a trigger owned by All Players, then the conditions and actions for that trigger are executed 8 times every 2 frames, assuming you are using Hyper Triggers and no other waits.
You can reduce execution time by running very specific conditions, and ordering the condition most likely to be false at the top of the list.

Computers will have a hard time choking on one hundred thousand triggers (if that's the case..). It's like running a brute force algorithm for a 6-digit numeric password every 84ms.




May 20 2011, 2:00 am Lanthanide Post #6



It seems that actually using this to make anything practical would take prodigious amounts of effort. And there might be bugs in the underlying system, too.



None.

May 20 2011, 7:40 am Sacrieur Post #7

Still Napping

Quote from name:shadow649
I always thought something like this could work. might take some time but everything in mapmaking does. A large amount of triggers could make a pretty extreme Desert Strike AI no? This is exciting! Also in color!

A large amount of triggers will also cause lag.

Quote from Wormer
Sorry, but IMHO a large amount of triggers could make a pretty extreme lag... :|

Indeed, the number of triggers must be kept at a minimum.


Quote from Heinermann
If there are 8 players in the game, and you have a trigger owned by All Players, then the conditions and actions for that trigger are executed 8 times every 2 frames, assuming you are using Hyper Triggers and no other waits.
You can reduce execution time by running very specific conditions, and ordering the condition most likely to be false at the top of the list.

Computers will have a hard time choking on one hundred thousand triggers (if that's the case..). It's like running a brute force algorithm for a 6-digit numeric password every 84ms.

Dealing with this issue partially tonight. The computer will be player 1 and thus at the top of the list. Triggers that have no use will be turned off.

Quote from Lanthanide
It seems that actually using this to make anything practical would take prodigious amounts of effort. And there might be bugs in the underlying system, too.

Depends how meticulous I am in my work. My maps are typically obsessively organized, I should have little problem finding and fixing bugs.



None.

May 20 2011, 11:39 pm Heinermann Post #8

SDE, BWAPI owner, hacker.

Note that Comment and Preserve Trigger are iterated and treated like other actions.
You can reduce a call by unchecking/disabling Comment actions until map completion.
Every condition is read until one of them returns false, so (as I said before) make sure you put the conditions most likely to be false at the top.

The behaviour of "Always" is the same as Comment. It' calls another function, and you can reduce that call by having no conditions at all, or unchecking/disabling Always.




Jun 1 2011, 3:22 am m.0.n.3.y Post #9



You ever going to write this?



None.

Options
  Back to forum
Please log in to reply to this topic or to report it.
Members in this topic: None.
[09:24 pm]
Moose -- denis
[05:00 pm]
lil-Inferno -- benis
[10:41 am]
v9bettel -- Nice
[01:39 am]
Ultraviolet -- no u elky skeleton guy, I'll use em better
[10:50 pm]
Vrael -- Ultraviolet
Ultraviolet shouted: How about you all send me your minerals instead of washing them into the gambling void? I'm saving up for a new name color and/or glow
hey cut it out I'm getting all the minerals
[2024-4-18. : 10:11 pm]
Ultraviolet -- :P
[2024-4-18. : 10:11 pm]
Ultraviolet -- How about you all send me your minerals instead of washing them into the gambling void? I'm saving up for a new name color and/or glow
[2024-4-17. : 11:50 pm]
O)FaRTy1billion[MM] -- nice, now i have more than enough
[2024-4-17. : 11:49 pm]
O)FaRTy1billion[MM] -- if i don't gamble them away first
[2024-4-17. : 11:49 pm]
O)FaRTy1billion[MM] -- o, due to a donation i now have enough minerals to send you minerals
Please log in to shout.


Members Online: jjf28