Patent Publication Number: US-2009234785-A1

Title: System and method for exercising a representation to indicate solutions

Description:
FIELD 
     The present disclosure is directed to evaluating portrayals or representations of systems, apparatuses and the like. The present disclosure is especially directed to exercising a portrayal or representation such as a model or a simulation employing a plurality of input values to indicate solutions by the portrayal or representation. 
     BACKGROUND 
     Computer-based representations or portrayals such as, by way of example and not by way of limitation, models and simulations may provide answers to questions about the behavior of the systems that they represent. However, to yield useful results from the representation or portrayal the questions must be carefully posed. Such posing may be effected by the selection of values for input parameters to a representation or portrayal. 
     Some parameters may configure a represented system of interest such as, by way of example and not by way of limitation, fuel capacity. Some parameters may define operational scenario values such as, by way of example and not by way of limitation, distance to be traveled. Some parameters may define inputs from humans such as, by way of example and not by way of limitation, operators and targets. The selection of the appropriate values for inputs may presently be a difficult process requiring substantial a priori insight into the nature of answers likely to result and insight into difficult-to-scale procedures such as design of experiments. 
     Exercises of representations or portrayals may be complicated and expensive to set up and correctly utilize. The requisite complication and expense may be so great that developing exercise plans may be a significant barrier to the use of representations or portrayals. An approach that seeks to evaluate or exercise all possible values that may pertain to a represented system may be overwhelming in terms of cost and complexity. 
     Alternatively, users of representations and portrayals such as models and simulations may select hand-crafted input configurations intended to explore particular regions of a solution space for a represented system by no formal method. Hand-crafted input configurations may be essentially educated guesses about how the model or simulation will respond and may not provide a rigorous solution to a query regarding, by way of example and not by way of limitation, where a model or simulation may predict interesting behavior in a represented system. Hand-crafted input configurations may focus on a user&#39;s expectation about a single output of the representation or simulation, neglecting potentially interesting parts of the solution space in other output variables. 
     Finally, it may not be possible in either design of experiments or hand-crafted approaches to quantify uncertainty associated with the results, e.g., whether or not an interesting or significant result has been overlooked. 
     There is a need for a system and method for exercising a representation to indicate solutions that does not depend on a priori designs for model or simulation input variables. 
     There is a need for a system and method for exercising a representation to indicate solutions that creates representation inputs based on results from the representation. 
     There is a need for a system and method for exercising a representation to indicate solutions that does not require knowledge, insight, or expectations about a representation&#39;s solution space. 
     There is a need for a system and method for exercising a representation to indicate solutions that quantifies the uncertainty resulting from the possibility that some interesting or significant result has been overlooked. 
     SUMMARY 
     A system for exercising a representation employing relationships among a plurality of input values to indicate solutions includes: an output controller unit coupled with the representation and presenting output values in response to receiving selected solutions from the representation; and an input controller unit coupled with the output controller unit and with the representation. The input controller unit presents a succession of the input values to the representation. The input controller unit receives indication of the output values from the output controller unit. The input controller unit selects the succession of input values in response to convergence by the output values. 
     A method for exercising a representation employing relationships among a plurality of input values to indicate solutions includes: (a) In no particular order: (1) providing an output controller unit coupled with the representation; and (2) providing an input controller unit coupled with the output controller unit and with the representation. (b) Operating the output controller unit to effect presenting output values in response to receiving selected solutions from the representation. (c) Operating the input controller unit to effect presenting a succession of input values to the representation. (d) Operating the input controller unit to effect receiving indication of the output values from the output controller unit. (e) Operating the input controller unit to effect selecting the succession of input values in response to convergence by the output values. 
     It is, therefore, a feature of the present disclosure to present a system and method for exercising a representation to indicate solutions that does not depend on a priori designs for model or simulation input variables. 
     It is a further feature of the present disclosure to present a system and method for exercising a representation to indicate solutions that creates representation inputs based on results from the representation. 
     It is another feature of the present disclosure to present a need for a system and method for exercising a representation to indicate solutions that does not require knowledge, insight, or expectations about a representation&#39;s solution space. 
     It is yet another feature of the present disclosure to present a need for a system and method for exercising a representation to indicate solutions that quantifies the uncertainty resulting from the possibility that some interesting or significant result has been overlooked. 
     Further features of the present invention will be apparent from the following specification and claims when considered in connection with the accompanying drawings, in which like elements are labeled using like reference numerals in the various figures, illustrating the preferred embodiments of the disclosure. 
    
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
         FIG. 1  is a schematic illustration of a first embodiment of the present disclosure. 
         FIG. 2  is a schematic illustration of a second embodiment of the present disclosure. 
         FIG. 3  is a flow chart illustrating the method of the present disclosure. 
     
    
    
     DETAILED DESCRIPTION 
       FIG. 1  is a schematic illustration of a first embodiment of the present disclosure. In  FIG. 1 , a system  10  may include a representation or portrayal unit  12 , an output controller unit  14  and an input controller unit  16 . 
     The collection of all input values for a specific use of a representation or portrayal unit  12  such as, by way of example and not by way of limitation, a model or simulation may be referred to as an “exercise”. Such exercises may be performed for a wide variety of applications domains including, by way of example and not by way of limitation, defense, space exploration, medicine, environment, economy, communication, manufacturing business processes, training, sociological, entertainment, and animation. Exercises may be performed for a wide variety of purposes including, by way of example and not by way of limitation, concept exploration, requirements analysis, solution architecture design, detailed design, manufacturing, integration, verification, and validation. 
     Input controller unit  16  may include an input value generator unit  20  coupled with a solution space map unit  22 . Input value generator unit  20  may be coupled with representation unit  12  for providing input values to representation unit  12 . Input generator unit  20  may also be coupled with output controller unit  14  for receiving indications of output values from output controller unit  14 . A search parameter providing unit  24  may be coupled with input controller unit  16 , and specifically may be coupled with input value generator unit  20  for providing beginning input parameters for use by input value generator unit  20  when initiating an exercise with representation unit  12 . Solution space map  22  may serve to provide a sample space of available input values for use by input value generator unit  20 , may serve to keep track of input values already used in an exercise, may serve to keep track of convergence or other features of indications of output values or solutions from output controller unit  14  or may perform a combination of tracking input values, convergence or other features or indications or values. 
     Input values may be provided by input value generator unit  20  to representation unit  12  in the form of static input values or dynamic input values. Static input values may be unchanging values for the duration of a particular exercising of representation unit  12  and may be in a vector form, as indicated by the notation {right arrow over (I S )} in  FIG. 1 . Dynamic input values may be changing values provided for exercising representation unit  12  and may be in a vector form, as indicated by the notation {right arrow over (I D )} in  FIG. 1 . 
     Representation unit  12  may manipulate input values {right arrow over (I S )}, {right arrow over (I D )} to present a representation or simulation output value which may be in a vector form, as indicated by the notation {right arrow over (O 1 )} in  FIG. 1 . 
     Output controller unit  14  may include an error function unit  30  coupled with an objective function unit  32 . Error function unit  30  may be coupled with representation unit  12  for receiving output values {right arrow over (O 1 )}. Error function unit  30  may be employed as a convergence detector unit recording changes between successive output values {right arrow over (O 1 )} received from representation unit  12 . System  10  may prefer to achieve a predetermined level of convergence among or between output values {right arrow over (O 1 )} before having input value generator unit  20  select input values {right arrow over (I S )}, {right arrow over (I D )} from another solution space in solution space map  22  than is presently providing input values {right arrow over (I S )}, {right arrow over (I D )}. Objective function unit  32  may receive multi-run output values from error function unit  30 . Multi-run output values may be in a vector form, as indicated by the notation {right arrow over (O M )} in  FIG. 1 . Objective function unit  32  may perform predetermined treatments of multi-run output values {right arrow over (O M )} for making decisions based upon multi-run output values {right arrow over (O M )}. First selected of those decisions may be presented to a results unit  34  for storage to support later uses. Second selected of those decisions may be provided to input controller unit  16  for use by input value generator unit  20  to select subsequent input values {right arrow over (I S )}, {right arrow over (I D )} for use by representation  12 . Second selected decisions may be provided to input controller unit  16  in terms of figures of merit, which may be expressed in vector format, as indicated by the notation {right arrow over (F)} in  FIG. 1 . 
       FIG. 2  is a schematic illustration of a second embodiment of the present disclosure. In  FIG. 2 , a system  110  may include a representation or portrayal unit  112 , an output controller unit  114  and an input controller unit  116 . 
     Input controller unit  116  may include an input value generator unit  120  coupled with a solution space map unit  122 . Input value generator unit  120  may be coupled with representation unit  112  for providing input values to representation unit  112 . Input generator unit  120  may also be coupled with output controller unit  114  for receiving indications of output values from output controller unit  114 . A search parameter providing unit  124  may be coupled with input controller unit  116 , and specifically may be coupled with input value generator unit  120  for providing beginning input parameters for use by input value generator unit  120  when initiating an exercise with representation unit  112 . Solution space map  122  may serve to provide a sample space of available input values for use by input value generator unit  120 , may serve to keep track of input values already used in an exercise, may serve to keep track of convergence or other features of indications of output values or solutions from output controller unit  14  or may perform a combination of tracking input values, convergence or other features or indications or values. 
     Input values may be provided by input value generator unit  120  to representation unit  112  in the form of static input values or dynamic input values. Static input values may be unchanging values for the duration of a particular exercising of representation  112  and may be in a vector form, as indicated by the notation {right arrow over (I S )} in  FIG. 2 . Dynamic input values may be changing values provided for exercising representation unit  112  and may be in a vector form, as indicated by the notation {right arrow over (I D )} in  FIG. 2 . 
     Representation unit  112  may manipulate input values {right arrow over (I S )}, {right arrow over (I D )} to present a representation or simulation output value which may be in a vector form, as indicated by the notation {right arrow over (O 1 )} in  FIG. 2 . 
     Representation unit  112  may include a runtime controller unit  140  coupled with input value generator unit  120  for receiving dynamic input values {right arrow over (I D )}. Representation unit  112  may include a static input unit  142  coupled with input value generator unit  120  in input controller unit  116  for receiving static input values {right arrow over (I S )}. Representation unit  112  may also include a model/simulation unit  144  coupled with runtime controller unit  140  and with static input unit  142  for receiving input values {right arrow over (I S )}, {right arrow over (I D )}. A state unit  146  may relate information regarding model/simulation unit  144  to runtime controller unit  140 . Model/simulation unit  144  may be coupled for providing output values {right arrow over (O 1 )} to output controller unit  114 . 
     Output controller unit  114  may include an error function unit  130  coupled with an objective function unit  132 . Error function unit  130  may be coupled with model/simulation unit  144  in representation unit  112  for receiving output values {right arrow over (O 1 )}. Error function unit  130  may be employed as a convergence detector unit recording changes between successive output values {right arrow over (O 1 )} received from representation  112 . System  110  may prefer to achieve a predetermined level of convergence among or between output values {right arrow over (O 1 )} before having input value generator unit  120  select input values {right arrow over (I S )}, {right arrow over (I D )} from another solution space in solution space map  122  than is presently providing input values {right arrow over (I S )}, {right arrow over (I D )}. Objective function unit  132  receives multi-run output values from error function unit  130 . Multi-run output values may be in a vector form, as indicated by the notation {right arrow over (O M )} in  FIG. 2 . Objective function unit  132  may perform predetermined treatments of multi-run output values {right arrow over (O M )} for making decisions based upon multi-run output values {right arrow over (O M )}. First selected of those decisions may be presented to a results unit  134  for storage to support later uses. Results unit  134  may store first selected decisions in a map format relating input values with areas of interest or solutions defined by or in objective function unit  132 . Second selected of those decisions may be provided to input controller unit  116  for use by input value generator unit  120  to select subsequent input values {right arrow over (I S )}, {right arrow over (I D )} for use by representation unit  112 . Second selected decisions may be provided to input controller unit  116  in terms of figures of merit, which may be expressed in vector format, as indicated by the notation {right arrow over (F)} in  FIG. 2 . 
       FIG. 3  is a flow chart illustrating the method of the present disclosure. In  FIG. 3 , a method  200  for exercising a representation employing relationships among a plurality of input values to indicate solutions may begin at a START locus  202 . Method  200  may continue with, in no particular order: (1) providing an output controller unit coupled with the representation, as indicated by a block  204 ; and (2) providing an input controller unit coupled with the output controller unit and with the representation, as indicated by a block  206 . 
     Method  200  may continue with operating the output controller unit to effect presenting output values in response to receiving selected the solutions from the representation, as indicated by a block  208 . 
     Method  200  may continue with operating the input controller unit to effect presenting a succession of the input values to the representation, as indicated by a block  210 . 
     Method  200  may continue with operating the input controller unit to effect receiving indication of the output values from the output controller unit, as indicated by a block  212 . 
     Method  200  may continue with operating the input controller unit to effect selecting the succession of input values in response to convergence by the output values, as indicated by a block  214 . Method  200  may terminate at an END locus  216 . 
     The present disclosure may employ a genetic algorithm in an input value generator unit ( 20 ,  120 ). The mutation rate of the genetic algorithm may be based upon a map of the solution space ( 22 ,  122 ) that has been explored. The genetic algorithm may be used to generate both static and dynamic input values for representation unit ( 12 ,  112 ). The genetic algorithm may be an objective function based on outputs ({right arrow over (O 1 )}) from representation unit ( 12 ,  112 ) to effect the presentation of input values ({right arrow over (I S )}, {right arrow over (I D )}) by value generator ( 20 ,  120 ) to representation unit ( 12 ). Variance of outputs ({right arrow over (O 1 )}) from representation unit ( 12 ,  112 ) may be employed to control number of runs and the use of the objective genetic function. 
     These features may permit the present disclosure to search a solution space for a representation unit ( 12 ,  112 ) or portrayal such as a model or simulation without human intervention. The present disclosure may adjust how coarse or fine the examination of the solution space may be. The present disclosure may focus on particular areas of the solution space or may provide broad coverage. The present disclosure may adjust absolute or relative error in the results produced. The present disclosure may quantify uncertainty associated with results such as, by way of example and not by way of limitation, a possibility that an interesting or significant solution is missed. The present disclosure may permit improved effectiveness in employing representations or portrayals such as models and simulations by introducing a quantifiable rigor into their employment, and thereby may provide a significant opportunity for improving development and utilization of high technology products. 
     It is to be understood that, while the detailed drawings and specific examples given describe preferred embodiments of the disclosure, they are for the purpose of illustration only, that the apparatus and method of the disclosure are not limited to the precise details and conditions disclosed and that various changes may be made therein without departing from the spirit of the disclosure which is defined by the following claims: