:orphan:

alpha_v
*******

Specifies the learning rate for v-values (the associative strength between stimulus element - behavior pairs),
used in the updating of the v-values. See :ref:`the-mechanisms`.

The parameter ``alpha_v`` can be set to certain values for certain particular element-behavior pairs.
It can also be specified as a single value, in which case the same learning rate is used for all
element-behavior pairs.

Syntax
------

::

  alpha_v = e1->b1: v1, e1->b2: v2, ..., en->bn: vn, default: d
  alpha_v = v1

where ``v1,v2,...,vn`` are :ref:`scalar expressions<scalar-expressions>`.

Description
-----------

``alpha_v = e1->b1: v1, e1->b2: v2, ..., en->bn: vn, default: d`` sets the learning rate for

- v(e1->b1) to v1,
- v(e1->b2) to v2, ...,
- v(en->bn) to v2,

and the learning rate for all other v-values to d.

- The specification is independent of the list order:

  ``alpha_v = e1->b1:v1, e1->b2:v2, default:d``

  is the same as

  ``alpha_v = e1->b2:v2, default:d, e1->b1:v1``.

- ``default`` need not be specified if all possible combinations ``element->behavior`` are present in the list. For example,

  ::

    stimulus_elements = e1, e2
    behaviors = b1, b2
    alpha_v = e1->b1:v11, e1->b2:v12, e2->b1:v21, e2->b2:v22

----

``alpha_v = v1`` sets the learning rate for all v-values to v1.

- ``alpha_v = v1`` is the same as ``alpha_v = default: v1``.

Dependencies
------------

- The properties ``stimulus_elements`` and  ``behaviors`` must be specified before ``alpha_v``.
- Each stimulus element used in the specification of ``alpha_v`` must be present in the parameter ``stimulus_elements``.
- Each behavior used in the specification of ``alpha_v`` must be present in the parameter ``behaviors``.
- Applicable in all mechanisms except the Rescorla-Wagner mechanism. (Use ``alpha_vss`` in Rescorla-Wagner.)

Examples
--------

::

  @variables x = 1
  alpha_v = element1->behavior1: x, element1->behavior2: x+1, default:x+2

sets the learning rate for v(element1->behavior1) to 1 and for v(element1->behavior1) to 2, and
for the remaining possible element-behavior pairs to 3.

::

  alpha_v = element1->behavior1: 0.5, default:0

sets the learning rate for v(element1->behavior1) to 0.5, and for the remaining possible element-behavior pairs to 3.

::

  alpha_v = 0.1

sets the learning rate for all v-values to 0.1.
