[ACT-R-users] Extending chunk types
Dan Bothell
db30 at andrew.cmu.edu
Mon Jun 30 15:13:00 EDT 2008
--On Monday, June 30, 2008 2:43 PM -0400 Chris Sims <simsc at rpi.edu> wrote:
>
>
> The dynamic pattern matching functionality in ACT-R 6 allows one to
> dynamically extend the chunk-type of chunks currently stored in the
> buffers, for example:
>
>
> (P* sample-production
> =goal>
> ISA goal-chunk
> state =state-name
> ==>
> =goal>
> =state-name 42)
>
>
> What I am wondering is: Is there a way to achieve the same thing
> (dynamically extending a chunk type) when *creating* chunks on the right
> hand side of a production? For example:
>
>
>
> (P* sample-production-2
> =goal>
> ISA goal-chunk
> state =state-name
> ==>
> +other-module>
> ISA other-chunk-type
> =state-name 42)
>
>
> If I try and run a model containing a production like the above, I get
> the error:
>#| Warning: Invalid slot-name [_____] in call to define-chunk-spec. |#
>
>
> Is there a way to allow this in ACT-R 6?
>
>
Not using a request - at least not directly. However, you could engineer
a module that could do such a thing using the request parameters. If
you specify the buffer with some request parameters then you could do
something like this:
(P* sample-production-2
=goal>
ISA goal-chunk
state =state-name
==>
+other-module>
ISA other-chunk-type
:slot-name =state-name
:slot-value 42)
Then in the module's request function you'd have to pull out the
values for the request parameters, check whether they were valid
slots, if not extend the chunk-type, then create the chunk as
needed.
Dan
More information about the ACT-R-users
mailing list