SysML 2.0b3 FTF Avatar
  1. OMG Issue

SYSML2_ — Evaluation problem with TradeStudyObjectives

  • Key: SYSML2_-248
  • Status: open  
  • Source: Model Driven Solutions ( Mr. Ed Seidewitz)
  • Summary:

    The Analysis Domain Library model TradeStudies includes the following definition:

    	requirement def MinimizeObjective :> TradeStudyObjective {
    		doc
    		/*
    		 * A MinimizeObjective is a TradeStudyObjective that requires that the 
    		 * selectedAlternative have the minimum ObjectiveFunction value of all the
    		 * given alternatives.
    		 */
    		 
    		subject :>> selectedAlternative;
    		in ref :>> alternatives;
    		in calc :>>fn;
    	
    		out attribute :>> best = alternatives->minimize {
    			doc
    			/*
    			 * For a MinimizeObjective, the best value is the minimum one.
    			 */
    		
    			in x; fn(x)
    		};
    	}
    

    (and there is a similar definition for MaximizeObjective that uses maximize instead of minimize). Unfortunately, in the definition minimize in the Kernel Function Library model ControlFunctions, the functional argument to minimized is named fn, and, in the expression fn(x), the name fn gets bound to this parameter, instead of to MinimizeObjective::fn. This means that an evaluation of the invocation of minimize as given will result in an infinite recursion (and similarly for the call to maximize in MaximizeObjective).

  • Reported: SysML 2.0b2 — Wed, 17 Jul 2024 23:06 GMT
  • Updated: Wed, 17 Jul 2024 23:06 GMT