statnet / ergm

Fit, Simulate and Diagnose Exponential-Family Models for Networks
Other
96 stars 37 forks source link

Augment the proposal selection API to allow more rejection in the form of a function? #456

Closed krivit closed 5 months ago

krivit commented 2 years ago

Currently, selection is based on class, reference, constraints/hints, priority, and shorthand weight. It may make sense to also allow a proposal to specify a function that takes as its arguments various information about the distribution and manipulates it arbitrarily, returning an adjustment to the proposal's priority, including -Inf to disqualify.

This could allow the proposal selection process to be more fine-grained and depend on, say, the exact arguments to the constraints and, for valued ERGMs, to the references. For example, a valued TNT proposal can self-disqualify if the range of values does not include 0.

krivit commented 5 months ago

The proposal self-rejection API solves this problem for now.