CVData calculates total variance just instead of determining variance and covariance and with them to determine variance that is total. (CVCX is a bit different.) Remember that players can change the true amount of fingers played, as well as for address purposes, might not alter them based just in the count. Calculation of standard deviation calls for very little right time in CVData. This is because this is the only per round, floating point calculation in CVData and the calc is overlapped with other non-FP calcs by the CPU as CPUs perform these operations in parallel. (It’s a bit more complicated than that as an FP calc by the CPU keeps a active that is port a bunch of rounds which could have now been useful for a non-FP calc in a few CPUs.)
Below is a discussion that is further my book:
Standard deviations are problematic in simulations for two reasons. First, adding billions of numbers in floating point causes inaccuracies. This is solved by the use of sim cycles discussed earlier, but, somewhat differently than with all other statistics. The counters are much larger and 32 bit integers are not large enough since we are adding squares of numbers. Therefore, floating-point is employed. This is actually the use that is only of point in the CVData sim engine.
Second, SD requires that the differences are found by you between each information point and also the mean of all of the information points. This will be generally simple. But, when you yourself have huge amounts of figures, there isn’t any real way to know the mean of billions of numbers before using each number. There are several solutions that are possible right here.
– The method that is quickest is to keep tables of the counts of different results. I believe SBA uses this method. For example, you have a counter for all total link between all rounds which have due to +/-1 product. Another countertop for many counts of +/-2 units. A different countertop exists for every feasible result that is round. When the sim is complete, you can use this table to calculate the deviation that is standard. No multiplies are done throughout the sim, mean could be determined following the sim, and answers are accurate. The dining table has to add counters for every single result that is possible. That means half units for surrender and insurance and a round where one player plays seven spots, split to eight fingers at each and every spot, and increases every hand. But, there was a challenge. Whenever you introduce uncommon BJ payoffs or bonuses that are custom the table becomes unwieldy. You could have a 1,000:1 payoff that hits more than one hand at once. I rejected this idea.Assume as I was looking for maximum flexibility the mean is zero – Peter Griffin on web page 167 of
The Theory of Blackjack points out that the square for the result that is average be assumed to be effectively zero. This means that the average squared result and variance are virtually the same in the full situation of variance of a Blackjack hand. Therefore, we could disregard the calculation for the mean and differences when considering each total result and the mean. And this means we can calculate deviation that is standard one pass. This extremely simplifies SD calculations for Blackjack rounds and solves this 1 issue. BUT, we possibly may wish to determine other standard deviations — as an example, the deviation that is standard of of Blackjack rebate sessions that include many hands. Assuming a mean of zero shall perhaps not work with this situation. Another solution is needed by us.
Standard deviation for a* that is sample( – Calculating standard deviations from an example of occasions is typical. We rejected this, whilst the error that is standard of calculation increases.
Calculating Running Variance – In 1962, B. P. Welford described a method of calculating variance in one pass. Essentially, it recalculates the mean after examining each data point instead of after all data points. The mean is, at first, inaccurate, but becomes more and more accurate. The method is reasonably accurate, although it suffers some loss of precision due to the recalculations that are constant well as lack of precision. But, probably the most problem that is serious that the recalculation of the mean requires a divide for every hand. This is unacceptable. (CVData/CVCX do not perform divides during a cycle that is sim)
Lagging Means* that is( – The method I settled on for sessions is somewhat like the Welford method, only I recalculate the mean once a sim cycle instead of once a round. Every one million rounds, the precision, accuracy and speed problems are all solved by recalculating the mean. The theory is that, the effect is going to be a bit that is tiny accurate than one would expect for the total number of hands run. That is, you may need certainly to run 300 million rounds to have the precision that you’d expect for 250 million rounds. Nevertheless, since standard deviation converges a lot more quickly than EV in Blackjack sims, the total outcomes is going to be since accurate because the EV results.