Some observations on Default and Soft constraints:
Default Constraints:
As I understand it, a default constraint ONLY applies if there are NO other constraints on the random variables within the default constraint.
A default constraint is relatively inexpensive since the decision whether a default constraint is included does not require analysis of the solution space. Simply, if any random variable within a default constraint occurs in any 'other' constraint, the default constraint is ignore.
The example seems to indicate that more specifically, only non-default constraints are examined for conflict with a default constraints . IE a random variable can be constrained by more than 1 default constraint.
Default constraints are limited in that they cannot be further refined by a 'with' clause. For example if there is a default constraint that "x inside { [500:2000] }" the 'with' clause "with { x > 600; }" will cause the default constraint to be ignored - thus allowing values greater than 2000.
Soft Constraint:
Generally a soft constraint applies if it does not conflict with other constraints.
Soft constraints can be more expensive (analysis) than regular constraints.
Soft constraint require definition of an 'order' for the soft constraint. Prior to 'soft' constraint, the 'order' of constraint is not significant. The ordering is needed to resolve conflict between soft constraints - which is applied.
'Allow' option to disable soft constraints:
The mantis item indicates that 'allow' constraints are used to disable 'soft' constraint that conflict with the 'allow'.
It would be good to get a bit more of the usage model.
If 'allow' is adopted, the semantics should be that a 'soft' constraint is disable by an 'allow' only when the conflict can be detected by consideration of only the 'soft' constraint and the 'allow' constraint. For example the soft constraint "x < 10" could be disabled by "allow x == 100", however, the soft constraint "x < y" (where x,y are random) would NOT be disabled by "allow x == 100".
Ray
-- This message has been scanned for viruses and dangerous content by MailScanner, and is believed to be clean.Received on Mon Aug 1 10:58:21 2011
This archive was generated by hypermail 2.1.8 : Mon Aug 01 2011 - 10:58:26 PDT