You have in IDEA,
a)current position task, that analysed current position
b)alternative task, that creates an alternative for the current position
c)prolongation task, that prolongs the current position, as long as you like
d)custom task, that creates as many alternatives as you like for the current position and prolongs them for as many plies as you like
AdvanceTask is a generalized task, that has each one of them as a special case. It creates mini-trees, based on conditions.
Let me explain that a bit.
1) First it will ask you how long the tree you would like to be. It like the prolongation task length. Easy to understand
2) Then it would ask you for 2 important parameters. Alternatives Profile and Move Selection Profile
Let me elaborate on those.
Alternatives Profile could be a single number OR a series of comma separated numbers.
If its a single number. For example 6. That means , you want for every position to create 6 alternatives
Move Selection Profile is how many of the 6 above alternatives, are considered main and would be extended. This is for greater customization of the trees that can be created (i could ommit that and set it the same as ALt Profile.
So if you set Alt_Profile and MoveSelection Profile , both to 6, you will get a COMPLETE tree, with 6 alternatives per move. If you did set length = 5 for example that would be 6^5 number of tasks =7776 tasks!!
If you had set MoveSelection = 1 and prolongation length = 5 that would mean that
*** You have 6 alterantives on the first move and select only 1 to be extended , so next step just one move is extended and again 6 alternatives are generated (the previous 5 are not prolonged), and then again, the best move is prolonged and for the next position 6 alternatives are generated.. and so on. That is till we reach depth 5, so 5*6 = 30 tasks are created
*** if MoveSelection = 2 that would mean, that 6 alternatives where generated for start position, then pick 2 to extend. for the 2, 6 alternatives are generated (so 6+2*6) and then from each of those 2 6-packs 2 are selected from each and extended... so we have 2^2*6... and then 2^3*6... and so on.... I understand that if you try to forecast the tree, its frustrating so DON'T (unless you are familiar with that).
KEEP IT SIMPLE (at least in the beginning). Anyway, probably better, its to keep Alternatives profile and MoveSelection profile the same.
*** But there is more. Alternatives Profile, can be MORE than a single number it can be a comma separated string.
For example Alternatives Profile= 6,4,3,1
What does that mean. It means, at depth 1, 6 alternatives are created, and then at depth 2 , 4 alternatives.. and then at depth 3 , 3 alternatives and then from depth 4 and on just 1 alternative...
This is logical, because you don't want as you go deep to continue going as wide as in the beginning!!
Ofcourse in this case , you HAVE to set the MoveSelection profile accordingly (for example use the same string)
*** Now if i write Alternatives Profile= 6,4,4,3,1
it means that at depth 2 and 3 i will get 4 alternatives , at depth 4, 3 alternatives and from 5 and on just one.
Ofcourse any data in the tree is USED. That means, if you ask for 6 alternatives for a position, and there are 3 already in the position, then just 3 more a generated.
Just copy the attached files to Ascripts folder . When you run it, you run the AdvancedTaskCreator.tsc , the other one is just some utilities that create the dialog box in the beginning of the script.
Settings you enter are saved, and next time you run it they are remembered.
a) You are in IDEA mode
b) First put a position (or positions) in the CRITICAL list (from the notation, write click, add note, critical )
c) Now Run the script. Every position in that critical list will be processed and iteratively the tree would be build for each and every one of the positions in there.
d) When the script finished it would pop up a window and say Finished. No more positions to analyse in the Critical List
Then you can go on, and use IDEA as usual.
The script reads project bound, so even if you for example have Alternatives = 6 , move selection = 6 , and you have project bounds set to 0 to 100 , then any move outside that range will not be prolonged... so you will NOT get a complete 6-way tree
This is an additional option to shape up your tree as you like!!! And its a very powerful one.
IMPORTANT NOTE 2
1) There is no STOP mechanism for the script (like every script), so NEVER stop it, because variables are not freed, and you will have crashes
>he third repetition led to a tree, but only a very small tree (with 6,4,3,1)
2) If you want to exit fast, remove positions from critical list and the script will finish very fast. DO NOT exit Aquarium or try to stop it in any other way.
Variables need to be freed to avoid crashes
IMPORTANT NODE 3
It would be better if you have your queue clean before starting the script. To do that, simply disable Autoprolonge, and let all tasks finish. Then run the script.
Hope you like it. Waiting for your comments
Trying to run the script I am getting an internal error: Library 'U_BF_DialogEditor' not found.
However, both scripts are really located into my D:\AquariumData\AScripts folder.
Can you help me?
Thx a lot
It really should not happen.
Do you use a NON ENGLISH version (i am just trying to identify the problem)
Another Question. Go to the Scripter window (enable it first). Load the code, and go to where you see on the attached picture.
What paths do you see?
I only see $(CURDIR) and $(APPDIR). If I select one of them and press SetPath button, they are not currently pointing to any folder. Probably this is the error?
What folders should I set for both variables?
This is a scripter bug, i thought it was fixed ....
> How does one enable scripter?
1. Switch to Scripter tab and click on Show/Hide button so it's enabled.
2. Activate Scripter window from the Layout Menu.
I'm finding Aquarium an immensely powerful and useful program, but I think it is unnecessarily hard to learn due to unecessary complexity in its user interface and rather scattered documentation.
> I expected the Show/Hide button to show or hide the scripter window
well since it reveals the script window, it protects a novice user from doing any harm.
If only it correctly recognized the Uses files, you wouldn't need to reveal the script window.
So basically it correctly deeply hides the script window, but it fails due to a small bug (recognizing files used in uses statements placed inside Atree directory)
Scripter is an very very very powerful tool. I really look forward other users publishing their scripts.
No one (but pipper) complained here, so i guess no one was interested in the script!!!
I run it, wait and can not see any output so I even do not know whether it's working or not
the basic steps are
1) Start IDEA and make the project you want active
2) It would be better to have the queue empty so you can see the script tasks at once (so disable auto-expansion and clear the queue)
3) Put 1 or more positions in the critical list
4) Only NOW you can start the script...
You will see now tasks created (and since they are NOT from autoexpansion , they are from the script)
a) IDEA is ON??
b) Project is active??
The positions in the tree were created by IDEA or by the script?
(i have not tested the script were the lines do not start from start position (altough there is code to support it). Moz tried it and said it works there too (but i havent tried it myself)
>How long should I wait till can close Aquarium?
when the script finished it pops up a dialog box saying.. finished... etc... (so if you deactivate the project.. it would soon tell you that)
> a) IDEA is ON??
> b) Project is active??
> The positions in the tree were created by IDEA or by the script?
by IDeA, I don't know how the script is working :(
Please download the new version. This should work now.
If its not working, we will fix it
Uploading now version 1.3 (its actually 1.03).
This version will also exit at once the script if you de-activate the project or stop idea.
Thx for the screenshot. Now everything should run smoothly.
Next version would be an addition (new project bound settings)
Before pressing RUN, you have to OPEN the script (load it).
Also you have to make the trick above as shown above (for the utility path)
> i guess you pressed open to load the script before running it. Correct??
> Before pressing RUN, you have to OPEN the script (load it).
Now I have that
And yes, I placed both files to the AScripts folder
What am I doing wrong?
Million thx to Volodya, for finding the bug and fixing it.
Please download both those files in order for the script to work correctly.
There is another "feature" now in the script. If you STOP IDEA, or DE-Activate the project, the script stops, so no need to empty the list in order to Exit the script. Just deactivate the project and it would soon stop.
You then have to manually enable AutoProlongation of the project (if you want to continue that way).
There are more bugs (i think, and i am working on it)
The script has nothing to do with minmaxing.
it works fine here (hopefully after so many problems, cause by just 2 lines of code...)
2) if you close and restart aquarium and then set "auto expansion on" in project settings does it work?
3) if you manually minimax does it complete? (without the script ever running)
4) have you tried another project? tree?
1) It looks much more stable than before, no crashes at all.
2) However, I still think something is not working or I am not using it properly:
- IDeA running, project active, two critical positions in the list. Using default script settings (5-5-5)
- I run the script and I can see "Analyzing" in the stage name. But only a few cores seem to be working.
- After a while, stage name is continuously switching between "There are no tasks in the project" and "Minimaxing".
- Actually positions are being added to Analyzed tasks number, but I really don't know what cores are processing them, since I only see gray boxes and cores count says IDeA: 0 of 8 engines, tree: idle
So, it seems that tasks are being added, but not all the cores (maybe just one) are working on them.
Hope this helps.
EDIT: analyzed tasks number is always being incremented by 6 steps
So in some passes you might have only few tasks (and cores inactive)
Two more questions:
- With default settings, I should expect 5^5 tasks per position before the script ends?
- When is all this stuff going to the tree? Once the script is finished and I enable normal auto prolongation?
Powered by mwForum 2.27.4 © 1999-2012 Markus Wichitill