Forum archive 2000-2006

Bill Ziemer - Can't solve for adaptive parameters error

Bill Ziemer - Can't solve for adaptive parameters error

by Arnold Pizer -
Number of replies: 0
inactiveTopicCan't solve for adaptive parameters error topic started 11/29/2006; 6:20:02 PM
last post 12/4/2006; 11:50:27 AM
userBill Ziemer - Can't solve for adaptive parameters error  blueArrow
11/29/2006; 6:20:02 PM (reads: 57, responses: 3)
ma122DB/set12/s5_5_2.pg throws the error "Can't solve for adaptive parameters" for both correct and incorrect answers using multiple seeds ( 4826, 4317, 123456) . I can't see any obvious domain problems (it is a positive integer power function). This has me stumped.

<| Post or View Comments |>


userDavide P. Cervone - Re: Can't solve for adaptive parameters error  blueArrow
11/29/2006; 8:03:22 PM (reads: 55, responses: 0)
The problem is that the exponents are far too large to handle adaptive parameters. The exponents are allowed to be as large as 50, but even with exponents on the order of 20 (depending on the other values used) the values produced are larger than 10^17, which is about as big as you can use for an additive adaptive parameter.

The reason is that the double-precision real numbers typically used by perl only hold about 17 digits of precision, so for numbers larger than 10^17 or so, addition of 1 will not make any difference in the result. The adaptive parameters use changes on the order of 1 to adapt the parameters, and what happens is that these changes are below the precision of the numbers involved, and so the changes end up being zero, and the resulting matrix is singular. So no adaptive parameters can be found.

It may be possible to adjust the changes used so that they are in relation to the size of the values actually involved rather than hard coded as 1, but I haven't really investigated the method involved carefully. (When writing the Parser-based version of this, I simply copied the process from the original WeBWorK code.) It should be able to be improved, though.

This is also the issue for bugs #1079 and #1082.

Davide

<| Post or View Comments |>


userJohn Jones - Re: Can't solve for adaptive parameters error  blueArrow
11/30/2006; 12:01:14 PM (reads: 48, responses: 0)
Hi,

I modified the cvs version of the problem and it seems to work. The fix is to adjust the domain for answer checking so that when taking big powers, the base is close to zero.

John

<| Post or View Comments |>


userBill Ziemer - Re: Can't solve for adaptive parameters error  blueArrow
12/4/2006; 11:50:27 AM (reads: 34, responses: 0)
Thanks for the fix, John.

<| Post or View Comments |>