[ACT-R-users] ACT-R-users Digest, Vol 52, Issue 4
db30 at andrew.cmu.edu
db30 at andrew.cmu.edu
Tue Sep 5 10:18:40 EDT 2017
--On Tuesday, September 05, 2017 5:18 AM -0400 Kai Sauerwald
<kai.sauerwald at fernuni-hagen.de> wrote:
>
> Thank you all for the reply's!
>
> To be a little more concrete: ACT-R behaves not as i expected. The ACT-R
> documentation gives the following formula (newutility.pdf, page 2):
>
> P_i = e^( U_i/s ) / \sum_j e^( U_j/s )
>
> which describes the probability P_i that the production i is chosen in
> dependence of the s value and all utility values (the U_j values).
>
The equation in that document is based on s being the temperature of the
noise distribution. However, the parameter :egs in ACT-R sets the s value
of the noise distribution where the variance (sigma^2) = (pi^2 * s^2)/3
and the temperature is ((sqrt 6) * sigma)/pi. Thus, the temperature
needed for the probability choice equation is (sqrt 2) * :egs, as is
shown in Unit 6 of the tutorial.
Therefore, if you want :egs = 1 and U_2 = 10, U_1 would need to be ~10.57,
and here's a test model showing a run with that setting:
(define-model test-p
(setf *p1* 0)
(setf *p2* 0)
(sgp :v nil :esc t :egs 1)
(p rule1
==>
!eval! (incf *p1*))
(p rule2
==>
!eval! (incf *p2*))
(spp rule1 :u 10.57)
(spp rule2 :u 10))
CG-USER(22): (run 10000)
10000.0
800004
NIL
CG-USER(23): (* 1.0 (/ *p1* (+ *p1* *p2*)))
0.59498
Hope that helps,
Dan
More information about the ACT-R-users
mailing list