Abstract: An adaptive mutation operator for a genetic algorithm that programmatically mutates individuals in a constrained optimization for a modeled system is discussed. The mutation operator takes into account linear and bound constraints in generating new mutated individuals. The mutation operator generates random mutation direction vectors and random initial step sizes. A mutated individual is generated and moved along a randomly chosen mutation direction vector a distance equal to the initial step size. The generated mutated individual is compared to the linear and bound constraints. In the event the generated mutated individual is located in an infeasible region, the illustrative embodiment of the present invention automatically adjusts the step size to a smaller value and generates another mutated individual along the chosen mutation direction vector. The process iterates until the generated individual is within the feasible region.
Abstract: A method and apparatus are provided to model, analyze, and build linear time invariant systems with delays. The method and apparatus model a linear time invariant system as a linear fractional transformation of matrices of a delay free linear time invariant model with a bank of pure delays. The method and apparatus of the present invention can further accommodate input delays and output delays associated with the linear time invariant system with delays.
Abstract: Method and systems for analyzing the linearization of a model in a modeling environment are disclosed. The modeling environment may provide tools for linearizing the model to generate a linear model. The modeling environment may also provide tools for analyzing the linearization of the model. The tools for analyzing the linearization of the model may inspect the linear model to determine whether the model is properly linearized. The results of the linearization may be provided to users so that the users are able modify the linearization result and have the model linearized again using the modified information.
Abstract: A system and methods are disclosed for executing a technical computing program in parallel in multiple execution environments. A program is invoked for execution in a first execution environment and from the invocation the program is executed in the first execution environment and one or more additional execution environments to provide for parallel execution of the program. New constructs in a technical computing programming language are disclosed for parallel programming of a technical computing program for execution in multiple execution environments. It is also further disclosed a system and method for changing the mode of operation of an execution environment from a sequential mode to a parallel mode of operation and vice-versa.
Abstract: A method and system control data collection and display parameters in two or more data modules in a dynamic system. The method and system provide the ability to collect and display data in a dynamic system having two or more data modules communicatively coupled thereto. As the dynamic system operates, data is generated. At least one controller manages data collection and display behavior of the two or more data modules. Ultimately, the controller controls data collection and display parameters for each of the two or more data modules in a manner that enables synchronization. The controller can be imbedded within the control module system. The method and system provides the user with the ability to better control, manipulate, review, and synchronize the collection of data in a dynamic system, whether physical or virtual, real time, or a simulation.
Abstract: Methods, systems and mediums are provided for enabling users to obtain help information in an online help system. The online help system utilizes adaptive documents to display help messages requested by the users. The content of the adaptive documents may dynamically vary according to, for example, the user's skill level, associated software products installed on the users' system, additional information that has emerged since the users acquired the software product, e.g., the discovery of defects or the fixing of defects in the program, language of the location where the software environment is provided. The present invention may also provide a publishing system that enables authors to create the adaptive help documents used in the online help system. The present invention therefore provides a complete and efficient online help system using adaptive documents to display various help messages.
Abstract: The present invention provides a method and system for dynamically configuring computing environment for concurrent computing. Given a specific configuration and/or the number of concurrent computing labs at start up of an executable process, the executable process may be set up for parallel computing environment using local resources and/or remote resources. A configuration is used to store all configuration information so that a one-string configuration may be used. The one-string configuration may be used at start up of an executable process or may be provided as an argument to a function.
Abstract: The present invention provides intrinsic units of measure for modeling physical systems. Physical systems may then be modeled using the units of measure. As such, actual units, reflecting real world measurements, can be used and propagated through the modeled system yielding results having units of measure. In some embodiments, units of measure may also be checked to determine if they are compatible for a given operation. If units are not compatible, the user may then be notified that compatible units are required.
Abstract: A method and apparatus are provided for automatically integrating software components for use in a COM compliant application from functions developed outside of the COM compliant application environment. The method and apparatus provide a user interface and a build tool that allows the user to select desired functions and select desired locations in the COM compliant application and map those locations to inputs and outputs of the function and create the component automatically from the user's selections. The method and apparatus provide a graphical user interface for the user to direct a build tool to generate the desired component and integrate that component with the COM compliant application.
Abstract: In one embodiment, a data element is passed between a first block and a second block of a block diagram during execution of the block diagram. The first block and the second block negotiate use of a particular input/output (I/O) type from a plurality of available I/O types. The particular I/O type is used with at least one I/O buffer employed in passing the data element between the first block and the second block. The first block may produce a signal representing the data element. The signal is received at the I/O buffer and the data element stored according to the particular I/O type. Subsequently, the data element may be read from the I/O buffer by the second block, which performs an operation, the result of which is used when the block diagram is executing.
Type:
Grant
Filed:
August 20, 2007
Date of Patent:
November 3, 2009
Assignee:
The MathWorks, Inc.
Inventors:
Donald Paul Orofino, II, Ramamurthy Mani
Abstract: Methods and systems for automatically measuring productivity and quality of model-based designs are disclosed. The present invention uses model contents, time spent, and input activities to measure effort put in a task and quality of the task. Defects and other model characteristics are tracked and used as a criterion to determine quality of a model-based design. The present invention allows for predicting resources required for a future task and for providing guidelines to improve usability of an application.
Abstract: A method includes characterizing portions of a model as being either critical to a real-time execution of the model or non-critical to a real-time execution of the model, and generating code that is capable of real-time execution based on the critical portions of the model while maintaining the full functionality of the non-real-time critical sections, e.g., graphics, logging, other offline calculations, via a communication link and parallel host processing.
Abstract: The present invention provides a method and system for registering rules for attributes of an entity with an entity validation and inference unit. The entity validation and inference unit can further validate input values for an entity and/or infer attributes of an entity using the associated registered rules. The entity validation and inference unit can also provide information regarding attributes, relations, and behaviors of an entity using the associated registered rules in response to a query. The present invention also provides a mechanism for a user to query an entity or the entity validation and inference unit regarding valid values for an entity. The mechanism also allows the user to query the registered rule associated with the entity.
Abstract: An RMI (Remote Method Invocation) service framework that enables a non-JAVA application to be managed by an RMI activation system daemon is disclosed. The present invention enables the non-JAVA application to communicate with other JAVA applications that make use of RMI following a registration process. Additionally, because the non-JAVA application is managed by the RMI activation system daemon, the non-JAVA application displays a high degree of persistence and/or reliability ordinarily associated with RMI services. As a result, non-JAVA applications may be used to perform distributed and parallel computing tasks in a more efficient manner than is possible with conventional methods.
Abstract: A method and apparatus are provided for viewing data from a data set. The data set can be a multiple dimensional data set having a tabbed like structure or alternatively having a grid like structure with no points spaced apart in at least two dimensions. The method and apparatus provide a user interface and a viewer tool that allows a user to select desired data from the data set and select desired plot types for viewing the selected data. The method and apparatus can select and view data from the data set that has one or more arbitrary dimensions.
Abstract: In an embodiment, a modeling environment (ME) may be configured to provide a navigation widget for navigating through a model. The navigation widget may display a first hierpath where the first hierpath is associated with a path to a first portion of the model. The ME may receive input, via the navigation widget, that is associated with a second hierpath, the second hierpath being associated with a path to a second portion of the model. In response to receiving the input, the ME may display a view of the second portion of the graphical model.
Type:
Application
Filed:
June 15, 2009
Publication date:
October 8, 2009
Applicant:
THE MATHWORKS, INC.
Inventors:
Eric PRESSMAN, Jay Ryan TORGERSON, Pieter J. MOSTERMAN
Abstract: A method and apparatus for resolving artificial algebraic loops in model executions include providing a model of an executable process having a plurality of functions. An analysis step identifies whether the process includes at least one potential artificial algebraic loop. If at least one potential artificial algebraic loop exists in the process, an artificial algebraic loop solution manipulates the order or manner by which the functions are executed to eliminate or otherwise resolve the artificial algebraic loop.
Abstract: In a graphical modeling environment, bus signals, which group a plurality of signals together for simplifying a model, include a partial or complete physical definition. Models are simplified by passing bus signals through graphical objects representing functional entities, without degrouping the bus signal. During simulation of the model, code can be generated for the bus signal having a complete definition independent of other components of the graphical model.
Abstract: A method and system is disclosed for providing a distributed technical computing environment for distributing technical computing tasks from a technical computing client to technical computing workers for execution of the tasks on one or more computers systems. Tasks can be defined on a technical computing client, and the tasks organized into jobs. The technical computing client can directly distribute tasks to one or more technical computing workers. Furthermore, the technical computing client can submit tasks, or jobs comprising tasks, to an automatic task distribution mechanism that distributes the tasks automatically to one or more technical computing workers providing technical computing services. The technical computing worker performs technical computing of tasks and the results of the execution of tasks may be provided to the technical computing client. Data associated with the tasks is managed by a programmable interface associated with a data storage repository.
Abstract: Methods and systems are provided for automatically generating code from a graphical model representing a design to be implemented on components of a target computational hardware device. During the automatic code generating process, a memory mapping is automatically determined and generated to provide an optimization of execution of the program on the target device. The optimized memory mapping is incorporated into building the program executable from the automatically generated code of the graphical model.