Search All of the Math Forum:

Views expressed in these public forums are not endorsed by NCTM or The Math Forum.

Topic: improving speed of simulation using random numbers
Replies: 1   Last Post: Nov 16, 2012 2:14 AM

 Dr. Peter Klamser Posts: 23 Registered: 6/11/11
Re: improving speed of simulation using random numbers
Posted: Nov 16, 2012 2:14 AM

... you do not use Mathematica style for programming.

Better is

Timing[Plus @@ Table[RandomReal[], {i, 1, 50}]]

{0., 25.5969}

Peter

> ... you do not use Mathematica style for programming.
>
> Better is
>
> Timing[Plus @@ Table[RandomReal[], {i, 1, 50}]]
>
> {0., 25.5969}
>
> Peter
>
>
> 2012/11/15 <felipe.benguria@gmail.com>
>
> Dear all,

>>
>> I am trying to compute an expected value using simulation.
>> I have a random number x with density function d[x]. I want to compute
>> the expected value of function f[x], which is equal to the integral of f[x]
>> times
>> d[x] over x.
>> In my case, it is difficult to compute the integral so I simulate N
>> values for x and compute the average of f[x] over all N simulated values.
>>
>> My problem is that my code takes to long for my purposes: this is a part
>> of a larger program and is making it unfeasible in terms of time.
>>
>> The following code provides an example of the situation, and my question
>> is how could I reduce the time this takes. THanks a lot for your help
>>
>> g[x_]:= x^2
>>
>>
>> mydensity[myparameter_]:=
>> ProbabilityDistribution[myparameter*(t)^(-myparameter - 1), {t, 1,
>> Infinity}]
>>
>> randomnum[myparameter_] := RandomVariate[draw[myparameter], 50]
>>
>>
>> Timing[Sum[g[randomnum[5][[i]]], {i, 1, 50}]]
>>
>> Out[1353]= {0.64, 81.7808}
>>
>> This takes 0.6 seconds in my computer and that is way too long for my
>> full program ( I do this many times).
>>
>> Thanks again,
>> Felipe
>>
>>

>