Hi
I will be so thankful to anyone who can help to figure out what is wrong with my code
attached is the code
It suppose to estimate the parameters using NLPQN
if I have one simulated data set, then there is no errors (but results are not good). If I ask for more than one simulation I get error and warnings messages such as
WARNING: Invalid argument resulted in missing value result.
that refers to this statement
do L=1 to n;
sum=sum+( X
end;
and at the end I get this error message
ERROR: Overflow error in NLPQN.
I don't know exactly what is my mistake? I tried to change the initial values ...it works but then if I increase the sample size n then I get
the same error again
I will highly appreciate any advice
thank you
I modified your code to save some of the intermediate values as it was evaluating the objective function, and it appears that you are getting an overflow sometimes when the algorithm computes the following in the objective function:
1/alpha*( -log(p
Basically, with your constraints beta can be small (0.0001). When it is small and -log(p
Thank you so much for your help
you were right about beta, beta shouldn't be small, I was trying to play with initial values based on your recommendations before I reply
Now, I don't get any errors or warnings but I found that there is no optimizations,for instant whether I take the size of the data (n) 10 or 50, whether the number of simulations (k) =10 or 1000 results are the same don't change at all like if they were fixed no matter how many loops I execute or how big my data are
I also changed the true values of the parameter, the initial values the constrains...but nothing seems to matter, I wasn't sure exactly how to change the objective function.
I wilcome any suggestions or advices
thank you for your help
I am not sure what you are trying to do, but looking at your code, if you are expecting to get the optimization to converge to alpha, beta, and gamma, I believe that you should set p to match the random number stream used in your simulation. Otherwise, I don't see how you could expect it to converge to the right answer. Try doing:
********************* Generating My Data ****************************************;
do j=1 to n;
p
X
end;
********************************************************************************;
Are you ready for the spotlight? We're accepting content ideas for SAS Innovate 2025 to be held May 6-9 in Orlando, FL. The call is open until September 25. Read more here about why you should contribute and what is in it for you!
Learn how to run multiple linear regression models with and without interactions, presented by SAS user Alex Chaplin.
Find more tutorials on the SAS Users YouTube channel.