Algorithm Optimisation Championship. - page 117
You are missing trading opportunities:
- Free trading apps
- Over 8,000 signals for copying
- Economic news for exploring financial markets
Registration
Log in
You agree to website policy and terms of use
If you do not have an account, please register
Yuri Evseenkov:
1. Первое обращение к фф должно состоять иэ массива сформированного штатным ГСЧ МТ с равномерным распределением? Свой ГСЧ с нормальным распределением использовать нельзя?
2. About the evaluation criteria. You propose to count machine time of code execution.
1. About the first initialization I don't insist, I just recommend - for unknown FF (and it is the unknown FF that will be in the championship) any initial parameters are equally good, because the FF is unknown. That is why it is best to use any RNG (whatever, but preferably with as many number variations as possible). All the more so, for statistically reliable results will be made at least 20 runs of the algorithm, and it is simply impractical to initialize the algorithm with the same numbers.
2. Already decided, there are 2 evaluation criteria, accuracy and number of FF runs. But the link I gave an example of calculation, it was a long time ago, there instead of the number of runs is time. That's why I made it clear in my post: accuracy and number of FF launches are two evaluation criteria, with 3 times accuracy being preferable.
According to this calculation of places in the table, my algorithm would take the first place according to the results of your task. Let's calculate: precision is higher, so the accuracy criterion is 3, and number of FF runs is higher, so 0. The total is 3+0=3, and your algorithm will get 0+1=1, i.e. less points. But this does not mean that I win your problem, because several conditions are not met. And if the maximum FF is known in advance, the table is calculated a little differently, the first "virtual" place is put the maximum value, and our places are calculated already based on this (the number of points obtained will be different).
Is the rule that the number of accesses is fixed and the same for everyone?
No, there has never been such a rule. There is only a maximum permissible. The fewer hits, the better, which is the second most important criterion after accuracy.
Personally, I am not going to worry about this, I will use the whole limit of accesses, in other words - I bet on the accuracy.
In short, it's nonsense, not a championship.
The criteria for determining the winner are made up as they go along.
In 15 pages we will have to introduce a parameter to estimate the winner.
It's a rush, it's not well-thought-out.
And the reality is more complicated than dreams. :)
Is this your Today's Thought of the Day? Or Thought of the Year?
Criteria were approved a dozen pages ago, but the calculation principles and formulas even earlier. There are a lot of floodbusters, which complicates the comprehension of the material by the audience - now you have the credit for it, congratulations yourself.
I've been asked and I've answered. If they ask me tomorrow, I will answer them again. But tomorrow, Tomorrow, Vasya Vyazaperelezayko will come and again remark profoundly, "The Championship is shit, the rules are being invented on the fly!"..........
Then answer the question: Why is precision 3 times more valuable than the number of FF calls!
I decided so, the organiser because. There are other reasons, too.
Have you ever written your own optimization algorithm? Can you imagine what it's like to find the right 1 among 2E16 and to use only 50 tries? It's harder than finding a needle among billions of haystacks. And this is only if there is only one parameter, and what if there are 500? 1000? 1000000?
It is the "other" reasons that are of interest, i.e. arguments in favour of number 3 rather than number 10, for example.
And you consider it as an argument worthy to determine a winner?
And you think I don't? - You shouldn't think so.
Answer my question:
Have you ever written your own optimization algorithm? Can you imagine, for example, what it means to find the right one among 2E16 values and use only 50 tries? It's harder than finding a needle among billions of haystacks. And this is only if there is only one parameter, and what if there are 500? 1000? 1000000?
I'm not counting anything, I'm asking and waiting for an answer. Why should I speculate when I can ask and get an answer from the source.
That's the answer. An empirical relationship. You will not find a scientifically grounded answer anywhere.
I tried to find the dependence of solution accuracy on the number of hits at a given probability of hit together with Matemat, we did not succeed. Perhaps it has something to do with the 3 sigma rule, but not necessarily.
...a straightforward question: should an algorithm that cannot find an extremum with a given error, albeit not exactly, be allowed to participate in the Championship?
So I'm sitting here thinking... Answer directly or not. I've decided - I've got to answer!)
Why did you ask about the significance of the criterion "accuracy" exceeding "handling" by a factor of 3? If there is an "accuracy" criterion, you have to assume that participants will not have 100% accuracy... That's what the "accuracy" criterion is for, to rank by accuracy. Hence, we conclude - can!, but must not (should not), because why would anyone compete if his algorithm always gives a 100% accurate response, and it simultaneously means that for an acceptable number of FF calls, since the answer from the algorithm once received. Therefore, unambiguously, it should not! - Moreover, such algorithm should be hidden and not shown to anyone.
And yes... There is a very important point. If the algorithm doesn't "know" where the absolute maximum is located - and it doesn't know it, otherwise why would it look for it? It's us "outside" can only judge the degree of accuracy of the algorithm by conducting experiments on it, but we can't set the parameter "search with this accuracy", for reasons I hope are already clear.
The answer is simple:
1. If an algorithm CANNOT find an extremum with a given accuracy, it has no place in the Championship;
2. Considering point 1, only algorithms that SEARCH an extremum with a given accuracy will participate in determining the winner;
3. no ranking in terms of accuracy. Accuracy is given by a range;
4. determining a winner according to the number of times the FF is invoked.
I'll leave at this point, it's 2 a.m.
Understood.
But you can't do it that way.
First of all: there is no objective reason to set the accuracy. For someone, a 1% deviation will not like it, and for someone, 20% will be happy. it largely depends on the type of task and type of algorithm. To set a "pass accuracy" in a championship would mean screening out different interesting algorithmic solutions.
Secondly: accuracy depends on FF accesses and non-linearly so. For different types of algorithms this dependence will be different and you can not just say "this algorithm is good, and this one is bad" - that is why we use two criteria to evaluate the algorithms as objectively as possible. There was a third criterion - running time of the algorithm (not FF) - but it is very subjective, because OCL algorithms that use it will fly on some computers and slow down on others. Therefore, only two criteria are left: accuracy and references to the FF.