[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