scispace - formally typeset
Search or ask a question

Showing papers on "Object-oriented design published in 2014"


Book ChapterDOI
06 Sep 2014
TL;DR: This work addresses the problem of estimating the 6D Pose of specific objects from a single RGB-D image by presenting a learned, intermediate representation in form of a dense 3D object coordinate labelling paired with a dense class labelling.
Abstract: This work addresses the problem of estimating the 6D Pose of specific objects from a single RGB-D image. We present a flexible approach that can deal with generic objects, both textured and texture-less. The key new concept is a learned, intermediate representation in form of a dense 3D object coordinate labelling paired with a dense class labelling. We are able to show that for a common dataset with texture-less objects, where template-based techniques are suitable and state of the art, our approach is slightly superior in terms of accuracy. We also demonstrate the benefits of our approach, compared to template-based techniques, in terms of robustness with respect to varying lighting conditions. Towards this end, we contribute a new ground truth dataset with 10k images of 20 objects captured each under three different lighting conditions. We demonstrate that our approach scales well with the number of objects and has capabilities to run fast.

697 citations


Journal ArticleDOI
TL;DR: The notion of object oriented data analysis also impacts data analysis, through providing a framework for discussion of the many choices needed in many modern complex data analyses, especially in interdisciplinary contexts.
Abstract: Object oriented data analysis is the statistical analysis of populations of complex objects. In the special case of functional data analysis, these data objects are curves, where a variety of Euclidean approaches, such as principal components analysis, have been very successful. Challenges in modern medical image analysis motivate the statistical analysis of populations of more complex data objects that are elements of mildly non-Euclidean spaces, such as lie groups and symmetric spaces, or of strongly non-Euclidean spaces, such as spaces of tree-structured data objects. These new contexts for object oriented data analysis create several potentially large new interfaces between mathematics and statistics. The notion of object oriented data analysis also impacts data analysis, through providing a framework for discussion of the many choices needed in many modern complex data analyses, especially in interdisciplinary contexts.

172 citations


Journal ArticleDOI
TL;DR: An adaptable system which is able to perform manipulation operations (such as Peg-in-Hole or Laying-Down actions) with flexible objects and provides a technology for determining the shape of the object when passing on, e.g., a conveyor belt prior to being handled.
Abstract: This paper describes an adaptable system which is able to perform manipulation operations (such as Peg-in-Hole or Laying-Down actions) with flexible objects. As such objects easily change their shape significantly during the execution of an action, traditional strategies, e. g., for solve path-planning problems, are often not applicable. It is therefore required to integrate visual tracking and shape reconstruction with a physical modeling of the materials and their deformations as well as action learning techniques. All these different submodules have been integrated into a demonstration platform, operating in real-time. Simulations have been used to bootstrap the learning of optimal actions, which are subsequently improved through real-world executions. To achieve reproducible results, we demonstrate this for casted silicone test objects of regular shape. Note to Practitioners-The aim of this work was to facilitate the setup of robot-based automation of delicate handling of flexible objects consisting of a uniform material. As examples, we have considered how to optimally maneuver flexible objects through a hole without colliding and how to place flexible objects on a flat surface with minimal introduction of internal stresses in the object. Given the material properties of the object, we have demonstrated in these two applications how the system can be programmed with minimal requirements of human intervention. Rather than being an integrated system with the drawbacks in terms of lacking flexibility, our system should be viewed as a library of new technologies that have been proven to work in close to industrial conditions. As a rather basic, but necessary part, we provide a technology for determining the shape of the object when passing on, e. g., a conveyor belt prior to being handled. The main technologies applicable for the manipulated objects are: A method for real-time tracking of the flexible objects during manipulation, a method formodel-based offline prediction of the static deformation of grasped, flexible objects and, finally, a method for optimizing specific tasks based on both simulated and real-world executions.

70 citations


Proceedings ArticleDOI
15 Dec 2014
TL;DR: This paper describes experiments with a humanoid robot exploring object-object interactions in a playground scenario and learning a probabilistic causal model of the effects of actions as functions of the characteristics of both objects, and argues that this very concept may emerge from the knowledge that intermediate objects lead to significant effects when acting on other objects.
Abstract: {agoncalves, jabrantes, gsaponaro, ljamone, alex}@isr.ist.utl.ptAbstract —Inspired by the extraordinary ability of younginfants to learn how to grasp and manipulate objects, manyworks in robotics have proposed developmental approaches toallow robots to learn the effects of their own motor actions onobjects, i.e., the objects affordances. While holding an object,infants also promote its contact with other objects, resulting inobject–object interactions that may afford effects not possibleotherwise. Depending on the characteristics of both the heldobject (intermediate) and the acted object (primary), systematicoutcomes may occur, leading to the emergence of a primitiveconcept of tool. In this paper we describe experiments witha humanoid robot exploring object–object interactions in aplayground scenario and learning a probabilistic causal modelof the effects of actions as functions of the characteristics of bothobjects. The model directly links the objects' 2D shape visualcues to the effects of actions. Because no object recognitionskills are required, generalization to novel objects is possibleby exploiting the correlations between the shape descriptors.We show experiments where an affordance model is learned ina simulated environment, and is then used on the real roboticplatform, showing generalization abilities in effect prediction.We argue that, despite the fact that during exploration noconcept of tool is given to the system, this very concept mayemerge from the knowledge that intermediate objects lead tosignicant effects when acting on other objects.

35 citations


Journal ArticleDOI
TL;DR: The role of objects in integrating ergonomic knowledge in engineering design processes is explored and recommendations for working with objects in design processes are included.

34 citations


Patent
14 Feb 2014
TL;DR: In this paper, object recognition system may identify images in a social networking service that may include objects of a predetermined type, and candidate objects may be verified as depicting objects of an object type with verification tests that are based on comparisons with reference images known to include such objects.
Abstract: Object recognition systems, methods, and devices are provided. Candidate objects may be detected. The candidate objects may be verified as depicting objects of a predetermined object type with verification tests that are based on comparisons with reference images known to include such objects and/or based on context of the candidate objects. The object recognition system may identify images in a social networking service that may include objects of a predetermined type.

32 citations


Patent
01 Dec 2014
TL;DR: In this article, a memory, at least one processor coupled to the memory and an object network modeler component executable by the processor is provided. But the modeler is configured to implicitly associate, within the object network, the first object with the second object and explicitly associate the third object with a fourth object.
Abstract: According to one embodiment, a system is provided. The system includes a memory, at least one processor coupled to the memory and an object network modeler component executable by the at least one processor. The memory stores an object network including a plurality of objects, the plurality of objects including a first object, a second object, a third object, and a fourth object. The object network modeler component is configured to implicitly associate, within the object network, the first object with the second object and explicitly associate, within the object network, the third object with the fourth object.

28 citations


Patent
13 Mar 2014
TL;DR: In this paper, a method was proposed to determine whether an object depicted in the digital image belongs to a particular object class among a plurality of object classes, determine one or more object features of the object based at least in part on the particular object classes at least partially in response to determining the object belongs to the particular class, and build or select an extraction model based on the determined object features.
Abstract: A method includes receiving or capturing a digital image using a mobile device, and using a processor of the mobile device to: determine whether an object depicted in the digital image belongs to a particular object class among a plurality of object classes; determine one or more object features of the object based at least in part on the particular object class at least partially in response to determining the object belongs to the particular object class; build or select an extraction model based at least in part on the one or more determined object features; and extract data from the digital image using the extraction model. Related systems and computer program products are also disclosed.

26 citations


Patent
27 Jun 2014
TL;DR: In this article, a method for defining virtual content for real objects that are unknown or unidentified at the time of the development of the application for an augmented reality (AR) environment is described.
Abstract: Techniques described herein provide a method for defining virtual content for real objects that are unknown or unidentified at the time of the development of the application for an augmented reality (AR) environment. For example, at the time of development of an AR application, the application developer may not know the context that the mobile device may operate in and consequently the types or classes of real object and the number of real objects that the AR application may encounter. In one embodiment, the mobile device may detect unknown objects from a physical scene. The mobile device may then associate an object template with the unknown object based on the physical attributes, such as height, shape, size, etc., associated with the unknown object. The mobile device may render a display object at the pose of the unknown object using at least one display property of the object template.

23 citations


Proceedings ArticleDOI
03 Apr 2014
TL;DR: The model to evaluate and grade the Java programs, based on QMOOD (Quality Model for Object Oriented Design), is described, which is use to evaluate the quality of JAVA programs.
Abstract: This paper describes the model to evaluate and grade the Java programs, based on QMOOD (Quality Model for Object Oriented Design). QMOOD is the hierarchical model that defines relation between qualities attributes(like reusability, functionality, effectiveness, understand ability, extendibility, flexibility) and design properties with the help of equations. In this research we have developed the system based on QMOOD which is use to evaluate the quality of JAVA programs. In this we would try evaluate all quality attributes by finding the design metrics that is based on design property of object oriented design. Though QMOOD metrics are subjective in nature but still with the help of relationship between quality attributes and design property defined, we have calculated and aggregated these qualities attributes and evaluate the quality of program input We have tested the system with number of different programs that vary in their complexities and functionalities.

19 citations


Journal ArticleDOI
TL;DR: This work defines a new class of learning design objects that combine two types of knowledge: reusable knowledge, consisting of theoretical and practical information on education design, and knowledge of reuse, which is necessary to describe the reusable knowledge using an extended learning object metadata language.
Abstract: Previous research on the development of learning objects has targeted either learners, as consumers of these objects, or instructors, as designers who reuse these objects in building new online courses. There is currently an urgent need for the sharing and reuse of both theoretical knowledge (literature reviews) and practical knowledge (best practice) in learning design. The primary aim of this paper is to develop a strategy for constructing a more powerful set of learning objects targeted at supporting instructors in designing their curricula. A key challenge in this work is the definition of a new class of learning design objects that combine two types of knowledge: (1) reusable knowledge, consisting of theoretical and practical information on education design, and (2) knowledge of reuse, which is necessary to describe the reusable knowledge using an extended learning object metadata language. In addition, we introduce a general model of learning design object repositories based on the Unified Modeling Language, and a learning design support framework is proposed based on the repository model. Finally, a first prototype is developed to provide a subjective evaluation of the new framework.

01 Jan 2014
TL;DR: In this article, the authors proposed a conceptual comparative evaluation considering the testability issues, limitation and to investigate the general testability factors and commonly accepted minimal set of testability factor with the help of the systematic literature review.
Abstract: Testability is an important quality factor of object oriented software. Its correct measurement or evaluation always facilitates and improves the test process. A lack of testability contributes to a higher level test cost and changeable effort. However testability has always been an indefinable concept and its absolute estimation (measurement) or evaluation is a tough job. Researchers and practioners have always claimed that testability should be considered as key factors which have positive impact on software development in order to ensure the software quality customer satisfaction especially at design face. (29). The purpose of this review report is to proposing a conceptual comparative evaluation considering the testability issues, limitation and to investigate the general testability factors and commonly accepted minimal set of testability factors with the help of the systematic literature review. In this paper initially we conduct a literature review to have broad knowledge of testability and its quality factors and associated measurements that are found exhibiting the number of different testability factors that are presented by different researchers in different perspective. Next we do a comparative analysis on software testability proposed by various experts/researchers including their contribution and limitation.

Journal ArticleDOI
TL;DR: This model describes the design space independent of any (knowledge of a) particular solving technology for the Design Space Exploration and allows to select the most appropriate solving strategy for a particular design synthesis problem.

Journal ArticleDOI
TL;DR: A testability measurement framework for object oriented software concerning at design phase is proposed that correlates the testability factor with object oriented design properties and also correlates design properties with objectoriented design metrics.
Abstract: 3 Abstract: Measuring testability early in the development life cycle considerably reduces the overall development cost, effort and rework. It is very expensive and error prone decision to correct the design to get better testability after the coding has started. This paper proposes a testability measurement framework for object oriented software concerning at design phase. This framework correlates the testability factor with object oriented design properties and also correlates design properties with object oriented design metrics. No such framework has been presented in the literature that accurately measure testability of object oriented software taking design phase into consideration. The proposed framework reduces the gap between object oriented design properties, metrics and testability. This framework measures effort in measuring testability of object oriented software early at design phase and makes it possible to produce reliable end product within time and budget.

Patent
31 Oct 2014
TL;DR: In this article, a method for updating and distributing data objects among multiple client applications is described, which includes receiving object data for an object from a first application instance of an application engine reflecting a change to a state of the object based on action of the first instance, updating a data structure for the object, determining whether a transformation policy is applicable to the object and modifying data associated with the object according to the transformation policy, identifying application instances that should receive updated object data based on stored information identifying clients that have agreed to share updates.
Abstract: A method for updating and distributing data objects among multiple client applications is described. The method includes receiving object data for an object from a first application instance of an application engine reflecting a change to a state of the object based on action of the first application instance, updating a data structure for the object based on the received object data, determining whether a transformation policy is applicable to the object and, if so, modifying data associated with the object according to the transformation policy, identifying application instances that should receive updated object data based on stored information identifying clients that have agreed to share updates, and communicating the updated object data to the application instances that should receive updated object data.

Journal ArticleDOI
TL;DR: This paper examines closely the use of the visual language of Codecharts for representing design decisions and demonstrates the process of verifying the conformance of a program to the chart.

Journal ArticleDOI
TL;DR: This work proposes a sub-graph mining-based approach for detecting identical design structures in object-oriented systems and observes that usually most of the detected identical structures are an implementation of common design patterns; however, they also detect various anti-patterns, domain-specific patterns, reused design parts and design-level clones.

Patent
17 Jul 2014
TL;DR: In this paper, an Internet search computer system is provided that includes a computer network service environment, which includes a search input utility that initiates the presentation on a display linked to a client device of a search interface.
Abstract: An Internet search computer system is provided that includes a computer network service environment that includes a search input utility that initiates the presentation on a display linked to a client device of a search interface; the search input utility allowing one or more users to select one or more search objects, and optionally collecting search input from the one or more users. The search engine utility is configured to iteratively process the search objects and/or search input so as to identify a plurality of suggested actions that are responsive to the search objects and/or search input, for further selection by the one or more users. The computer network service environment initiates the automatic processing of the search objects and search input, and iteratively updates suggested actions with the results of such processing. The computer network service environment analyzes the search objects and search input and matches the results of such analysis to applications and related application functions so as to generate the results.

Patent
25 Jul 2014
TL;DR: In this article, a method for refining virtual objects output within an augmented reality environment is described, which includes modifying at least one object of the first set of object data to create a second set of data associated with another simulation of the interaction between the first virtual object and the second virtual object.
Abstract: Technologies are generally described for refining virtual objects output within an augmented reality environment. In one example, a method includes determining, by a system comprising a processor, first response data representative of a first response to a first set of object data associated with a simulation of an interaction between a first virtual object and a second virtual object. The method also includes modifying at least one object of the first set of object data to create a second set of object data associated with another simulation of the interaction between the first virtual object and the second virtual object. Further, the method includes outputting data representative of the first virtual object, the second virtual object, and the second set of object data.

12 Sep 2014
TL;DR: A software platform for simultaneously processing data from many GNSS receivers is designed and implemented, and results show that loss-of-lock is prevented and example usages from this experiment highlight the benefits of using the Python Software Receiver over traditional software receivers.
Abstract: Existing software platforms are not well suited to the task of processing data from a network of GNSS receivers. Because data are expected to be shared amongst networked receivers, not only must new algorithms be designed, but new software platforms upon which these algorithms can be tested must also be built. In this work a software platform for simultaneously processing data from many GNSS receivers is designed and implemented. An object oriented design philosophy is used so that objects such as receivers, networks of receivers, and constellations of satellites are all defined as separate blocks of code with the capacity to store relevant data and perform object-specific functions. Under this coding design and with this software platform, experiments on cooperative positioning that leverage shared data between receivers in a network can be quickly implemented. Therefore the fast prototyping of ideas in cooperative GNSS can be realized. As an example of this, a real-world experiment involving data from two SiGe Samplers was performed at Lake Titicaca in Peru in which both receivers shared tracking data to help prevent loss-of-lock during scalar tracking. Acquisition, cooperative scalar tracking, and navigation were all performed using the software platform developed in this work. For the example experiment of this project, two receivers on a moving boat maintained a fixed baseline and thus shared code phase information to prevent loss-of-lock situations due to signal loss at either receiver. Experimental results show that indeed loss-of-lock is prevented. In addition, example usages from this experiment highlight the benefits of using the Python Software Receiver over traditional software receivers.

Proceedings ArticleDOI
06 Mar 2014
TL;DR: A novel technique for object modeling and object recognition in video given a set of videos containing 360 degrees views of objects is presented, then a model for each object is computed, then short videos are analyzed to determine if the object depicted in the video is one of the modeled objects.
Abstract: In this paper we present a novel technique for object modeling and object recognition in video. Given a set of videos containing 360 degrees views of objects we compute a model for each object, then we analyze short videos to determine if the object depicted in the video is one of the modeled objects. The object model is built from a video spanning a 360 degree view of the object taken against a uniform background. In order to create the object model, the proposed techniques selects a few representative frames from each video and local features of such frames. The object recognition is performed selecting a few frames from the query video, extracting local features from each frame and looking for matches in all the representative frames constituting the models of all the objects. If the number of matches exceed a fixed threshold the corresponding object is considered the recognized objects .To evaluate our approach we acquired a dataset of 25 videos representing 25 different objects and used these videos to build the objects model. Then we took 25 test videos containing only one of the known objects and 5 videos containing only unknown objects. Experiments showed that despite a significant compression in the model recognition results are satisfactory.

Proceedings ArticleDOI
07 Jul 2014
TL;DR: This work proposes an extension of DBMS with roles to represent complex objects within a relational database and support the flexibility required by current software systems, and introduces RSQL, an extension to SQL with the concept of objects playing roles when interacting with other objects.
Abstract: Database Management Systems (DBMS) are used by software applications, to store, manipulate, and retrieve large sets of data. However, the requirements of current software systems pose various challenges to established DBMS. First, most software systems organize their data by means of objects rather than relations leading to increased maintenance, redundancy, and transformation overhead when persisting objects to relational databases. Second, complex objects are separated into several objects resulting in Object Schizophrenia and hard to persist Distributed State. Last but not least, current software systems have to cope with increased complexity and changes. These challenges have lead to a general paradigm shift in the development of software systems. Unfortunately, classical DBMS will become intractable, if they are not adapted to the new requirements imposed by these software systems. As a result, we propose an extension of DBMS with roles to represent complex objects within a relational database and support the flexibility required by current software systems. To achieve this goal, we introduces RSQL, an extension to SQL with the concept of objects playing roles when interacting with other objects. Additionally, we present a formal model for the logical representation of roles in the extended DBMS.

Journal ArticleDOI
TL;DR: This paper introduces a new object’s instances clustering framework based on a major contribution: a bipartite shared-neighbours clustering algorithm that is used to gather object‘s seeds discovered by matching adaptive and weighted sampling.
Abstract: State-of-the-art visual search systems allow to retrieve efficiently small rigid objects in very large datasets. They are usually based on the query-by-window paradigm: a user selects any image region containing an object of interest and the system returns a ranked list of images that are likely to contain other instances of the query object. User's perception of these tools is however affected by the fact that many submitted queries actually return nothing or only junk results (complex non-rigid objects, higher-level visual concepts, etc.). In this paper, we address the problem of suggesting only the object's queries that actually contain relevant matches in the dataset. This requires to first discover accurate object's clusters in the dataset (as an offline process); and then to select the most relevant objects according to user's intent (as an on-line process). We therefore introduce a new object's instances clustering framework based on a major contribution: a bipartite shared-neighbours clustering algorithm that is used to gather object's seeds discovered by matching adaptive and weighted sampling. Shared nearest neighbours methods were not studied beforehand in the case of bipartite graphs and never used in the context of object discovery. Experiments show that this new method outperforms state-of-the-art object mining and retrieval results on the Oxford Building dataset. We finally describe two object-based visual query suggestion scenarios using the proposed framework and show examples of suggested object queries.

Patent
13 Mar 2014
TL;DR: In this paper, the authors present a method for generating a graph database that stores records representing objects in a software development project, where each record is a node in a graph and the graph database further stores a set of relationships with each relationship defining an edge between two related objects.
Abstract: One aspect of the disclosure provides a method including generating a graph database that stores records representing objects in a software development project. Each record is a node in a graph. The graph database further stores a set of relationships, with each relationship defining an edge between two related objects. The method also includes receiving a request for an analysis report corresponding to a specific object with respect to at least a portion of the software development project. The method also includes identifying one or more relationships of the specific object based on the set of relationships. The method includes determining a set of related objects that have a relationship to the specific object based on the identified relationships. The method further includes generating the analysis model based on the specific object, the identified relationships and the set of related objects. The method also includes providing the analysis model.

Proceedings ArticleDOI
14 May 2014
TL;DR: This paper presents an efficient approach capable of learning and recognizing object categories in an interactive and open-ended manner, and starts with a pre-processing phase to remove unnecessary information and prepare a suitable point cloud.
Abstract: Three-dimensional object detection and recognition is increasingly in manipulation and navigation applications in autonomous service robots. It involves clustering points of the point cloud from an unstructured scene into objects candidates and estimating features to recognize the objects under different circumstances such as occlusions and clutter. This paper presents an efficient approach capable of learning and recognizing object categories in an interactive and open-ended manner. In this paper, “open-ended” implies that the set of object categories to be learned is not known in advance. The training instances are extracted from actual experiences of a robot, and thus become gradually available, rather than being available at the beginning of the learning process. This paper focuses on two state-of-the-art questions: (1) How to automatically detect, conceptualize and recognize objects in 3D unstructured scenes in an open-ended manner? (2) How to acquire and utilize high-level knowledge obtained from the user (e.g. category label) to improve the system performance? This approach starts with a pre-processing phase to remove unnecessary information and prepare a suitable point cloud. Clustering is then applied to detect object candidates. Subsequently, all object candidates are described based on a 3D shape descriptor called spin-image. Finally, a nearest-neighbor classification rule is used to assign category labels to the detected objects. To examine the performance of the proposed approach, a leave-one-out cross validation algorithm is utilized to compute precision and recall. The experimental results show the fulfilling performance of this approach on different types of objects.

Journal ArticleDOI
TL;DR: A Case-based Reasoning (CBR) approach is proposed that, through the codification of design experiences, permits to establish links between software architecture structures and object-oriented counterparts.

Proceedings ArticleDOI
24 Aug 2014
TL;DR: This work reduces search-space, by identifying existential probability of a small object from a distance followed by a closer 3-D analysis of its point cloud to accurately recognize it.
Abstract: In the field of active perception, object search is a widely studied problem. To search for an object in large rooms, it would be expensive to explore and check each object's similarity with the object of interest. The expense could uncontrollably bloat as the number of objects to be searched increases. If the objects are of the order of a 2-5cm, they appear very small, making it difficult for the present algorithms to recognize them. A general human strategy in such cases is to sparsely identify, from far away (4-6m), if the object of interest is present in the scene. Subsequently, each of the possible objects is analysed from closer proximity to recognize, for further manipulation. In this work, we present a similar framework. We reduce search-space, by identifying existential probability of a small object from a distance followed by a closer 3-D analysis of its point cloud to accurately recognize it. This is achieved by 2-D modelling of the objects using Gaussian Mixture Models followed by recognizing objects using efficient RGB-Depth based algorithm.

Proceedings ArticleDOI
10 Nov 2014
TL;DR: F fuzzy approach is used to measure the reliability of object oriented software system and it also incorporates CK metrics as input metrics to evaluate the reliability.
Abstract: To develop efficient software system, reliability plays major role. Many methods and words have been developed for reliability evaluation. But few of them took consideration of object oriented features. In this paper, fuzzy approach is used to measure the reliability of object oriented software system. It also incorporates CK metrics as input metrics to evaluate the reliability. The result shows that by using given methodology one can select better reliability model among the several available software system.

Patent
30 May 2014
TL;DR: In this article, a system for testing a software application receives one or more object spaces extracted from a development or runtime environment of the software application, which can be translated into a language independent format and can be analyzed to identify any vulnerabilities in software application without access to the source code, compiled binary, and runtime environment.
Abstract: A system for testing a software application receives one or more object spaces extracted from a development or runtime environment of the software application. The extracted object space includes information about various objects associated with the software application, its dependencies, and/or environment, and some of the objects may be dynamically created and/or modified. The extracted object space does not include any source code. A language dependent extraction component can extract the object space using introspections and/or reflection APIs. The extracted object can be translated into a language- independent format and can be analyzed to identify any vulnerabilities in the software application without access to the source code, compiled binary, and runtime environment of the software application.

Proceedings ArticleDOI
01 Sep 2014
TL;DR: This article describes an object-oriented design process of simple database application in terms of object system metamodel assuming the construction of conceptual, logical and physical models.
Abstract: This article describes an object-oriented design process of simple database application in terms of object system metamodel assuming the construction of conceptual, logical and physical models.