[gme-users] various complaints about constraints

Matthew J. Emerson mjemerson at isis.vanderbilt.edu
Thu Apr 22 11:53:59 CDT 2004


Yes, I have the short-circuit logic operators enabled - this does not
make the "implies" operator a short-circuit operator.  As a work-around,
I've replaced used of the "implies" operator with judicious use of &&,
||, etc... in my constraint equations.  But I would rather "implies"
were a short-circuit operator itself.

 

As for setting "Evaluation ends after first violation," setting this
does prevent GME from crashing.  But, I can't force the user to set this
option.  Since my paradigm won't work properly unless it is set, it
would be nice if I could in some way configure my paradigm to
automatically set this option for the user.  Or, what would be better
and easier is if "Evaluation ends after the first violated priority
level" were the default configuration for GME.  I think that's the
setting that makes the most sense as default anyway.

 

--Matt

 

-----Original Message-----
From: Peter Volgyesi [mailto:peter.volgyesi at vanderbilt.edu] 
Sent: Thursday, April 22, 2004 9:06 AM
To: gme-users
Subject: RE: [gme-users] various complaints about constraints

 

Hi,

 

To the short-circuit evaluation problem: have you tried to enable
short-circuit logical operators? (File/Display Constraints/Settings)

 

Also, make sure that "Evaluation ends after the first violation" is set
on this page. 

 

--

peter

 

 

 


  _____  


From: gme-users-bounces at list.isis.vanderbilt.edu
[mailto:gme-users-bounces at list.isis.vanderbilt.edu] On Behalf Of Matthew
J. Emerson
Sent: Sunday, April 18, 2004 7:16 AM
To: gme-users
Subject: [gme-users] various complaints about constraints

I don't think that the constraint manager really evaluates constraints
in the order of their priority.

 

I have two priority-1 constraints that need to be checked before all
others, because if those two constraints evaluate to false then the
other constraints will crash gme.  Well, no matter what priority I make
the other constraints, gme crashes.  If I delete the lower-priority
constraints, gme does not crash.  If I turn my priority-1 constraints
into constraint functions and then call them as part of the
lower-priority constraints as pre-conditions, then gme does not crash.
But I'm going to have a hard time finding every case where I need to
check these pre-conditions and inserting the necessary function calls.
I'm going to miss some and gme is going to soundlessly crash when the
constraint manager goes into an infinite loop.

 

I think that if the constraint manager would just check my priority-1
constraints first and then stop checking constraints if they evaluate to
false, my life would be much easier.

 

Also, if the "implies" statement used short-circuit evaluation, it would
make my life easier.  For instance if you say "A implies B", and A is
false, then don't check B.

 

Finally, it would be good if some priority levels beyond level-1 could
result in critical evaluations.  Assuming that the constraint manager
eventually checks constraints in priority order as I described above, it
would be good to be able to specify an evaluation order among critical
constraints.

 

--Matt 

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://list.isis.vanderbilt.edu/pipermail/gme-users/attachments/20040422/caa49917/attachment.htm


More information about the gme-users mailing list