Ticket #25 (closed defect: fixed)

Opened 15 years ago

Last modified 15 years ago

RV considerations

Reported by: smidl Owned by: smidl
Priority: major Milestone: Design issues
Component: bdm core Version:
Keywords: Cc:

Description

Random variable is used for two purposes:

  • unique identifier (e.g. for matching data through datalink)
  • structure with name and space (e.g. for logging)

In the latter case, however, it is also a special case of unique ID! For example for dirfilelog, each entry in id is one file. To maintain uniqueness, the rv is complemented by an additional name. For example, two filters are estimating the same variable. Hence, the RV is the same but the name of the filter differs.

Another example is internal parameters of a model - e.g. a mixture with variable number of components. When creating and deleting mixture components, their parameters have RVs that should be either removed or created. In the current implementation we can can not remove RVS. (we can but their ID will not be assigned to another RV).

We need to relax strictness of the RV. Some form of flag that decides if the RV is permanent or temporary.

Change History

Changed 15 years ago by smidl

  • milestone set to Design issues

Changed 15 years ago by smidl

This issue is (partially) resolved by extraction of dimensionality of RV into an extra variable, dim, in epdf.

Hence, RV is an optional argument which does not have to be set for temporary objects. Operations that require valid ID (such as marginalize) can check validity by calling isnamed().

Naming of BMs is a separate issue.

Changed 15 years ago by smidl

  • status changed from new to closed
  • resolution set to fixed

RV is now used optionally in epdf and mpdfs, hence there is now need for redesign.

The only issue with RV is the need to call RV::clear_all() at the beginning of each MEX. This is minor enough to close the ticket.

Note: See TracTickets for help on using tickets.