US 11,782,682 B2
Providing metric data for patterns usable in a modeling environment
Huanhuan Xu, Wellesley, MA (US); Partha Biswas, Wayland, MA (US); Madhav Rajan, Wayland, MA (US); Sherman Braganza, Brookline, MA (US); Chirag Gupta, Karnataka (IN); Neha Pal, West Bengal (IN); and Radhey Shyam Meena, Rajasthan (IN)
Assigned to The Math Works, Inc., Natick, MA (US)
Filed by The MathWorks, Inc., Natick, MA (US)
Filed on Jul. 13, 2021, as Appl. No. 17/374,806.
Prior Publication US 2023/0021771 A1, Jan. 26, 2023
Int. Cl. G06F 9/44 (2018.01); G06F 8/36 (2018.01); G06F 8/77 (2018.01); G06F 8/10 (2018.01)
CPC G06F 8/36 (2013.01) [G06F 8/10 (2013.01); G06F 8/77 (2013.01)] 32 Claims
OG exemplary drawing
 
1. A method, comprising:
for a model comprising model elements, at least some of the model elements being blocks, the model being executable in a modeling environment:
identifying a pattern comprising at least two blocks and representing one or more computations being executable in the modeling environment, the one or more computations being associated with operation or behavior of a real-world system;
identifying one or more objectives for the pattern or the model, the one or more objectives comprising computer memory usage, execution efficiency, and/or execution performance;
based on the one or more objectives and the one or more computations represented by the pattern, identifying one or more alternative patterns that represent the one or more computations, the one or more alternative patterns being semantically equivalent but syntactically and/or structurally different from the pattern; and
providing a recommendation on replacing the pattern with one of the one or more alternative patterns based on the one or more objectives and respective metric data associated with the pattern and each of the one or more alternative patterns, the metric data comprising computer memory usage data, complexity data, and/or compliance violation data, or
providing the one or more alternative patterns and the respective metric data associated with the pattern and each of the one or more alternative patterns for allowing a user to choose between the one or more alternative patterns, or
selecting one of the one or more alternative patterns based on the one or more objectives and the respective metric data associated with the pattern and each of the one or more alternative patterns for achieving the one or more objectives.