EP1738304A1 - Environmental state analysis - Google Patents

Environmental state analysis

Info

Publication number
EP1738304A1
EP1738304A1 EP04728550A EP04728550A EP1738304A1 EP 1738304 A1 EP1738304 A1 EP 1738304A1 EP 04728550 A EP04728550 A EP 04728550A EP 04728550 A EP04728550 A EP 04728550A EP 1738304 A1 EP1738304 A1 EP 1738304A1
Authority
EP
European Patent Office
Prior art keywords
context
space
knowledge
environmental
environmental state
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Withdrawn
Application number
EP04728550A
Other languages
German (de)
French (fr)
Inventor
Anthony Tarlano
Chie Noda
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NTT Docomo Inc
Original Assignee
NTT Docomo Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NTT Docomo Inc filed Critical NTT Docomo Inc
Publication of EP1738304A1 publication Critical patent/EP1738304A1/en
Withdrawn legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models

Definitions

  • the present invention relates to a method and apparatus for environmental state analysis, and in particular to a method and apparatus for environmental state analysis enabling knowledge based applications to benefit from acquisition, transformation, and logic interference related to perceived environmental states and settings.
  • the present invention as described here in the following relates generally to distributed computing, interpreted computing, and neutral language processing.
  • distributed computing has generally focused on the goal of exchanging named file objects that represent data in operating systems.
  • file objects contained in operating file systems are a set of objects implementing necessary functions that permit software processes to associate a character string name to create, delete, open, write, close, and read data files during processing.
  • Named file objects are not only limited to binary representations of data grouped memory, but may also include devices such as printer devices, exposing file-like function interfaces.
  • Natural language processing systems have focused on creating general purpose knowledge based systems with the intention to support language interaction across the full range of complete knowledge in different application domains.
  • Natural language processing normally is thought of explaining certain aspects of processing such as information retrieval, speech recognition, and speech synthesis.
  • Neutral language processing is normally following sub-areas of the standard sub-division of linguistics including morphology, syntax, semantics and pragmatics. Researching in the field of natural language processing has proven to be very difficult except for limited application domains due to the need for non-domain specific applications being artificial intelligent complete which means completeness for the problem of representing and acquiring knowledge on application areas.
  • Yet another aspect is an appropriate knowledge representation as surrogate for the application environment itself and yet to enable logic inference in view of the application environment to give support for runtime dynamic behaviour of context-aware applications, e.g., as outlined in Davis et al . , What is Knowledge Representation?, Al Magazine, 14(1): 17-33, 1993.
  • the object of the present invention is to enable knowledge based context-aware applications to benefit from an environmental state analysis through appropriate information exchange techniques.
  • Another object of the present invention is to enable knowledge based context-aware applications from appropriate transformation of collected environmental state information and subsequent logic reasoning in view of the generated environmental state modeling.
  • this object is achieved by a method of environmental state analysis in support of context-aware applications having dynamic runtime behaviour.
  • the basis for such analysis is the model of an environment using a so-called context space.
  • a context space expresses an environment as a group of spaces in one- space comprising a plurality of sub-spaces which again may comprise a plurality of sub-spaces, etc., which is expressed as space-based containment relation according to the present invention.
  • space-based containment relation according to the present invention it is proposed to execute input/output processing during context acquisition using a pseudo natural language for user interaction.
  • An important advantage of the present invention is the use of a formal language definition for user interaction.
  • the language definition is pseudo natural it that it follows the intuition of system users and therefore greatly facilitates system usage and consequently promotes system acceptance.
  • Typical examples with respect to the use of the pseudo natural formal language are, e.g., context queries, context assertions, and/or context representations.
  • context acquisition is executed for an environment using a containment relation, wherein a context-aware application is uses the context space representation and the containment relation in combination with the pseudo natural formal language.
  • the present invention provides for a context- aware computing environment as paradigm, wherein an application uses knowledge related to a set of environmental states and settings to determine and adapt an application's behaviour.
  • the present invention realizes a system and provides a method for overcoming the inherent difficulties in analysis and gaining knowledge on an open environment via adaptation of context-aware application's behaviour.
  • of relevance is the containment relation aspect in combination with state acquisition using a pseudo natural formal language for dynamic runtime behaviour.
  • the acquisition paradigm allows to propose an abstract mechanism using object- oriented paradigms for creation of context state information via inheritance instantiation during creation of environmental information.
  • the essential principles underlying and being derivable using the containment relation in combination with the pseudo natural formal language are that information objects representing the environmental states may have a hierarchical structure where hierarchy objects act as containers. Containers are intended to produce a in-a-composition hierarchy in an object-oriented paradigm sense. Further, objects defined for representation of context states not having a specific behaviour or a particular feature may use acquisition, e.g., inheritance or through input/output processes using the pseudo natural formal language, as a means of abstraction to acquire the behaviour from their container.
  • the proposed containment relation for environmental state analysis allows to derive state information also in cases where specific objects do not provide such information per se using mechanisms of abstraction, inheritance, and/or information acquisition through a pseudo natural formal language. This allows to improve context-aware application behaviour over previously established analysis schemes that fail to provide state information at all for the case that particular information objects representing environmental state information should not be available.
  • the containment relation between spaces of the environment expresses a hierarchy between the spaces of the environment and, preferably, is represented using a context space tree graph structure.
  • attributes and information with respect to such spaces in the environment may be stored in relation to the hierarchy represented by the context space tree graph structure.
  • the context space tree graph structure and hierarchy of spaces is of particular benefit in representing environmental state analysis information in appropriate manner for subsequent reasoning.
  • the tree represents the hierarchy -of spaces and that a context-aware computing may be related to a specific sub- space
  • the context space tree graph structure is a beneficial representation for adapting the provided environmental state analysis information according to the space perceived during context-aware application provision.
  • an important advantage is the collaborative and distributed implementation of the context-bases model in view of a persistence object store and efficient exchange mechanism.
  • information regarding elements of the context space model are communicated through exchange of information objects using a shared memory space.
  • a peer-to-peer style application messaging interface supports consistent data maintenance in view of a plurality of participants through a distributed information representation according to a context space.
  • context acquisition using containment relations is achieved through path expressions and related path matching in view of the context space tree graph structure.
  • the transformation would take out the sub-tree starting from the building node from the initial context, space tree graph structure for appropriate modeling of the context space of the context-aware application .
  • the transformation mechanism underlying the present invention considers the continuous nature and the infinite number of environmental states to avoid un- tractable complexity and inherent difficulties for analyzing and gaining knowledge of the environment for context -aware computing applications .
  • the transformation to the appropriate sub-tree from a context space tree graph structure allows treatment of an infinite number of environmental states in an open environment and for increased eff iciency of context state acquisition and subsequent reasoning thereon . Again, it is the containment relation in combination with knowledge acquisition through use of a pseudo natural formal language underlying the inventive environmental state analysis that forms the basis for such information mechanisms .
  • a knowledge representation of the context space using a set of sentences expressed in a knowledge representation language, typically a pseudo natural language.
  • a formalized user interaction with the context-aware application environment and the state analysis scheme according to the present invention supports realization towards direct possible interaction with the end user at the benefit of increased accuracy of environmental state analysis and acquisition.
  • a reasoning about the acquired environmental state and related context space three graph structure after transformation as outlined above , optionally using again the formal pseudo natural language for user interaction .
  • the reasoning may be supported by knowledge available from a knowledge representation of the context space , previous reasoning processes and corresponding reasoning results .
  • a computer program product directly loadable into the internal memory of a environmental sate analysis processor comprising software code portions for performing the inventive environmental sate analysis process when the product is run on a processor of the environmental sate analysis processor .
  • the present invention is also provided to achieve an implementation of the inventive method steps on computer or processor systems .
  • such implementation leads to the provision of computer program products for use with a computer system or more specifically a processor comprised in e.g., a environmental state analysis processor.
  • This programs defining the functions of the present invention can be delivered to a computer/processor in many forms, including, but not limited to information permanently stored on non-writable storage media, e.g., read only memory devices such as ROM or CD ROM discs readable by processors or computer I/O attachments; information stored on writable storage media, i.e. floppy discs and harddrives; or information convey to a computer/processor through communication media such as network and/or Internet and/or telephone networks via modems or other interface devices. It should be understood that such media, when carrying processor readable instructions implementing the inventive concept represent alternate embodiments of the present invention.
  • the present invention is of particular relevance in supporting service providers running context-aware applications and in supporting system users through provision and application of a pseudo natural formal language for system interaction.
  • context-aware applications are run such that services are delivered at the right time with the right profile.
  • Service providers can handle the infinite number of environmental states and provide a most appropriate realization and reasoning for end users, e.g., personalized services using environmental states and end user profiles.
  • another key aspect is performance efficiency as service providers can handle the infinite number of environmental states efficiently through transformation on context space node tree model transformations.
  • Another benefit is cost efficiency as service providers may provide services without any maintenance by gaining environmental state knowledge.
  • the present invention allows to support easy set-up of services, as not all conditions and inferences must be coded into a system for context-aware application at the time of system set-up but, to the contrary, may be integrated into the system through subsequent acquisition of environmental state and interpretation thereof according to an interactive system programming approach using interpretation mechanisms at system runtime, in particular an open environment.
  • Fig. 1 illustrates the application of the containment relation for knowledge acquisition according to the present invention
  • Fig. 2 illustrates the application of path expressions and transformation on context space tree graph structures according to the present invention
  • Fig. 3 shows a schematic diagram of an apparatus for environmental state analysis in support of context-aware applications according to the present invention
  • Fig. 4 shows a flowchart of operation of the environmental state analysis and reasoning unit shown in Fig. 1;
  • Fig. 5 shows a context space representation in support of context-aware applications according to the present invention
  • Fig. 6 shows a more detailed schematic diagram of the apparatus for environmental state analysis in support of context-aware applications shown in Fig. 3;
  • Fig. 7 shows a flowchart of operation of the apparatus for environmental state analysis shown in Fig. 5.
  • a space acts as container for all space entry objects located in the space.
  • a space is subject to space influences and may be characterized by space conditions and/or space attributes which may change over time.
  • Outer space Assuming that a space itself may contain sub- spaces as space entry object (s) and that an hierarchy is imposed on spaces and sub-spaces, an outer space is a top level root space.
  • Environmental state Identification of spaces and related space entry objects, space conditions, space attributes, and/or space influences of an environment and, optionally, their interrelationship.
  • Environmental setting Quantification of an environmental state.
  • the quantification may either be determined by space influences and interrelationship of spaces, space conditions, and/or space attributes or through activation of actuators provided for control of specific spaces, space conditions, and/or space attributes.
  • Fig. 1 shows the implication of the terms explained above on the application of a containment relation for knowledge acquisition according to the present invention.
  • Fig. 1 gives a non-binding example of a city as an outer space, which comprises different streets, which again comprise either different buildings or rooms, followed by desks, etc.
  • Fig. 1 containsment according to the present invention does not mean that on each level of abstraction similar instantiations are used, but different instantiations, e.g., buildings and rooms, may be assigned to the same level of the tree representation.
  • the tree representation given on the left side of Fig. 1 may be mapped into a containment relation where the outer space city comprises the street B, the room B, the desk A, etc.
  • the example given with respect to Fig. 1 and the explanations given so far serve for a definition of further relevant aspects of the present invention like context space, containment, context space tree model, context space transformation, and space peer as follows:
  • Context space Implementation of a space model on the basis of a distributed space-based containment representation of a space.
  • the distributed space-based containment representation may be hierarchical.
  • Context spaces model containment of context entry objects as representation of space entry objects. Context entry objects are found based on path expressions through path matching, e.g., a Xpaht language .
  • Containment is a in-a relationship between a first space and a second space. Containment means that the first space is a sub-space of the second space context.
  • Context space tree model Representation of a context space or a context sub-space using a tree graph structure.
  • Context space transformation Mechanism of transforming the structure and content of one context space tree model into another.
  • Space peer Participant to a context space.
  • a context space peer implements an application messaging interface protocol for sharing context space related information according to a de-centralized peer-to-peer style. Space peers may join based on shared interests to form space peer groups for which the related context space serves as virtual meeting point .
  • FIG. 2 illustrates the application of a context space tree graph structure according to the present invention.
  • a space peer is an end user receiving services being located, e.g., in street B in the containment relation and hierarchy of spaces shown in Fig. 1.
  • this step is transformation of the context space tree graph structure according to the view taken on the context space by a context-aware application, i.e. according to the context of a space peer at runtime of the context-aware application.
  • node step patterns or path expressions may express the path in an absolute manner or a relative manner.
  • the containment of a space in a space according to an upper hierarchy may be expressed through path matching in view of a submitted path expression, either an absolute or a relative path expression.
  • Typical examples of tree models and related node step patterns would be file trees, HTML, XML, and related node step patterns XPath, Regular
  • the context space tree graph may also contain added information, e.g., in view of desk B also contained in room B, which information may be available from previous service delivery and not yet represented in the starting point before transformation, e.g., the context space tree graph structure shown in Fig. 1. Therefore, according to the present invention, it is proposed to apply previous path expressions pre-cached before service delivery to a transformation process in preparing for a subsequent logic inference reasoning, which will be explained in more detail in the following.
  • the same principle of adding pre-cache information may also be applied with respect to information available for environmental states in correspondence to spaces or related reasoning rules, as will also be explained in the following.
  • Fig. 3 shows the application of the principles outlined above to an apparatus for environmental state analysis in support of context-aware applications according to the present invention.
  • the apparatus for environmental state analysis then comprises an environmental state analysis and reasoning unit 12 and a cache memory 14 for storage of environmental state information, e.g., a context space tree graph structure, related path expressions, and reasoning results achieved with respect to the available information.
  • environmental state information e.g., a context space tree graph structure, related path expressions, and reasoning results achieved with respect to the available information.
  • the input of the environmental state analysis and reasoning unit 12 during runtime is a state_e as discourse statement provided for service delivery during runtime of the context-aware application.
  • a state_c as set of entry objects to the space context retrieved from the context space after analysing the state_e.
  • a set of node step patterns pattern_C being related to specific operations taken with respect to perceived environmental states and retrieved from pre- stored context spaces after analysis of the state_c.
  • a reasoning_C as set of entry objects to the context space containing previous submissions to the environmental state analysis apparatus 10 and related reasoning results, which may preferably be expressed as speech acts for pragmatic interpretation, as will be explained in the following.
  • the pseudo natural language may also be extended during system runtime, e.g., by following the same rules of environmental acquisition as for any other objects in the context space.
  • the pseudo natural language may also be extended during system runtime, e.g., by following the same rules of environmental acquisition as for any other objects in the context space.
  • a perceived state-E identifying a related state_C corresponding to the state and previously reasoned upon by the environmental state analysis apparatus, related path expressions pattern_C with respect to the pre-stored state_C and related reasoning results reasoning_C .
  • the environmental state analysis and reasoning unit 12 shown in Fig. 12 will apply a formal natural language reasoning on the submitted information by way of logical inference so as to adapt the behaviour during runtime of context-aware applications. Therefore, the present invention allows for context-aware applications to use acquired knowledge with respect to environmental states and attributes to determine and adapt application behaviour during runtime through:
  • Perception and collection of the environment i.e. the collection of environmental state and attributes, e.g. via sensors; distributing and selecting of collected environmental state information via data communication, to be explained in the following; application of adaptation mechanisms to context- aware applications for achieving dynamic behaviour driven by the collected environmental state information.
  • the outcome of the reasoning process conducted by the environmental state analysis and reasoning unit 12 shown in Fig. 3 will be a discourse statement, represented as a sentence utterance, e.g., in the pseudo natural formal language, and returned by the environmental state analysis and reasoning unit 12 shown in Fig. 3. Further results of reasoning will be newly generated state information state_D in view of the context space, derived discourse statements and reasoning_D and modified state_D for the context space.
  • Typical examples would be that, e.g., in view of newly submitted state information state_E a new reasoning has been derived during logic inference, e.g., through user interaction using a discourse pseudo natural language to be explained in the following, which may also lead to new states and path expressions pattern_D for supply of reasoning results results_R.
  • Fig. 4 shows a flowchart of operation of the environmental state analysis and reasoning unit shown in Fig. 3.
  • the apparatus for environmental state analysis achieves context acquisition using containment relation in step S10.
  • path expressions are applied for identification of relevant nodes in the hierarchy of the acquired context space and the context space tree graph structure may be transformed, if necessary, in a step S12.
  • a step S14 there is executed a reasoning using a pseudo natural discourse language to be explained in the following, which step is also optional,, should a conclusion in view of a supplied environmental state already be available in the context space cache memory 14 from previous environmental state process analysis processes.
  • context entry object content object, logic object, space object
  • Context entry object Either one of a content object to model environmental state and related setting that may be observed by a space peer, a logic object achieving a predetermined form of processing, and/or space object for sub- spaces contained in the space context under consideration. Context spaces use a template field to match context entry objects within the context space.
  • a first option to manage context entry objects stored with respect to space contexts is centralized management, e.g., through a central control peer.
  • a second option to manage context entry objects stored with respect to space contexts is distributed management, e.g., using broadcasting and caching mechanisms.
  • a third option is a hybrid of centralized management and distributed management.
  • Content object A content object is any relevant environmental state and environmental setting that can be observed or perceived by a space peer. In other words, the role of a content object is to act as recording environmental state and environmental setting forming the basis of context-awareness of applications running on top of the context space.
  • a logic object is an entry, possibly a script, code or sequence of instructions, which involves performing logic operations at runtime of an application running on top of the context space and leads to dynamic behaviour.
  • Typical tasks performed by logic objects are, e.g., testing conditions, changing environmental state or environmental setting, starting or performing or stopping some action at the runtime of the application running on top of the context space.
  • Space obj ect A space object acts as a container for all context entry objects located in the space modelled by a context space. As context spaces may be hierarchical, the same applies to space objects.
  • Fig. 5 shows a context space representation in support of context-aware applications according to the present invention.
  • a context space is represented as a context space tree graph structure and different nodes represent context spaces and a containment relation as explained above.
  • Each space in the environment is modelled by a node SI, S1,0, Sl,l, where spaces S1,0 and Sl,l are sub-spaces to space SI. Further, the sub-spaces are linked to the after-space SI via containment object C1,0.
  • the contents object C1,0,0 is a model for sensors provided in space S1,0, and the logic objects represent processing steps being provided with respect to space S1,0, such as activation of sensors, reading of sensors, turn-down of sensors, etc.
  • Path matching either means identifying a context entry object according to an absolute path expression or according to a relative path expression using containment. In the latter case it is possible to share a specific behaviour, via a logic object, or feature, via a content object, between space objects in the space context hierarchy in a peer-to-peer manner using two data distribution models, centralized and de-centralized. Therefore, context acquisition is a paradigm which allows for dynamic behaviour to be shared between context entry objects via containment at runtime of applications running on top of the context space.
  • a further aspect related to the context space shown in Fig. 5 is the interface in between different elements of the context space representation. According to the present invention, this is achieved using an application messaging interface protocol in a peer-to-peer style.
  • peer-to-peer systems refer to a class of systems commonly using an overtly networking addressing scheme to create a de-centralized context space system for collecting space peers to share resources.
  • Space peers participating in the context space normally offer and consume resources from other collected space peers using interaction messages.
  • Typical peer-to-peer systems enable space peers to cooperate and collaborate in a peer group advertised and discover resources of the environmental state analysis apparatus .
  • the application messaging interface provides space peers with an interface to allows context information to be shared and stored independently of any specific messaging protocols. Therefore, the decision of messaging independence allows for the use of existing network protocols or transport protocols within the environmental state analysis framework according to the present invention.
  • each context space may contain space group objects which space peer may join based on interest.
  • space group objects are referred to simply as space, which space may be considered as virtual meeting point of space peers that join a peer group.
  • a space group object is joined by a space peer based on interest.
  • each space peer in all spaces of the context space must have a unique name strain to be used for message delivery and operation within the context space. While according to the present invention, it is not necessary to specify a certain name generation algorithm for space peers, it may be recommendable for logic environmental state analysis systems to acquire unique names from either a unique lower layer protocol identifier/address or to use a W3C universal resource name. Further to the above, context entry objects stored in a context space may either be centrally managed, thus under control of a single primary space peer, or de-centrally managed, thus broadcasted and cached by any of all space peers, depending on the runtime operation of the context space.
  • a persistence space peer manages a centralized persistence service for context entry objects within a context space.
  • the decision to use a persistence space peer increases reliability and the robustness of the system.
  • a simple space peer is a non-persistence space peer which increases flexibility and decreases management, at the expense of reliability and management.
  • space peers use spaces as abstraction mechanism to collaborate for sharing and storing context entry objects via application interface messages .
  • Application messaging interface methods are used by space peers, e.g., sensors provided in a space, to update context state information in a space. As will be explained in the following, they are used by context-aware applications that retrieve related context information from the context space according to a specific topic specified by a related path expression.
  • a first such message is the write method being used to write context entry objects into a space with a specific value.
  • the use of a transaction requires a centralized persistence space peer-to-peer the destination handle of the information. If the need for a transaction is not supplied, the context entry is de-centrally advertised to all space peers in the current space. Responses are not generated.
  • a further method is the read method being used to read a matching content entry object from a space, or execute a logic entry object, based on a path expression. If a match is not found, the read method blocks until one exists or the timeout expires.
  • Return value is a copy of a matching entry or None if a timeout occurs
  • a readall method may be used to read all matching content entry objects, or execute all logic entry objects, based on a path expression from a context space. If a match is not found, the readall method blocks until one exists or a timeout expires.
  • a readifexists method is used to read a matching content entry object, or execute a logic entry object, based on a path expression from a context space.
  • the readifexists method is non-blocking, so that a specified timeout is only relevant within a transaction.
  • Return value is a copy of a matching entry or None
  • the take method is used to remove any matching context entry objects, based on a path expression, from the context space. If a match is not found, the take method blocks until one exists or the timeout expires.
  • the use of a centralized persistence service is mandatory for reliable service since removal cannot be guaranteed when using broadcasting and/or caching.
  • 'expr' argument is an XPath expr to use to match an entry 'txn' argument is a transaction requiring a commit phase pre-exposure .
  • ' timeout None ' a timeout length in milliseconds XML Message Template:
  • ⁇ cs expression>XPath Expression ⁇ /cs : expres. 3ion> ⁇ cs : transaction>Transaction Number ⁇ /cs : transaction> ⁇ cs : timeout>Numbe ⁇ r of Milliseconds ⁇ /cs : timeout>
  • a takeifexists method is used to remove a matching context object entry based on a path expression from the context space, without blocking until one exists.
  • the use of a centralized persistence service is mandatory for reliable service since removal cannot be guaranteed when using broadcasting and caching.
  • 'expr' argument is an XPath expr to use to match an entry 'txn' argument is a transaction requiring a commit phase pre-exposure.
  • ' timeout None ' a timeout length in milliseconds
  • a notify method provides an interface for an event model where the caller can register for remote events based on a path expression.
  • the caller can register for remote events based on a path expression.
  • context entry objects are found in context spaces by using path matching, e.g., XTat high language path expressions identifying a space and matching context entries .
  • context spaces as architectural framework is intended as mechanism for sharing a specific behaviour, via a logic object, or a feature, via content object, using containment .
  • Context spaces based context acquisition is different to other frameworks as context spaces match context entry objects based on path expressions supported a peer-to-peer model using two data distribution models , decentralized or centralized, to share stored context information via context entry obj ects across a distributed space based information system.
  • Context acquisition within context spaces architectural framework is used to dynamically either acquire content obj ects or to call logic obj ects not existing in the current space obj ect from a containing space obj ect via a path statement passed to application messaging interface methods .
  • discourse pseudo natural language may be used for submission of information to the environmental state analysis apparatus or for providing written results therefrom.
  • the discourse pseudo natural language DPNL is a formal knowledge representation language used to facilitate construction of a limited domain knowledge based to allow logic interference reasoning within the proposed system.
  • discourse pseudo natural language components include knowledge space, a grammar, a lexicon, and a logic processing algorithm. Excluding the logic processing algorithm, all instances of the discourse pseudo natural language components in various systems are relative with respect to the current context space.
  • each instance of a discourse pseudo natural language component includes a base set of persistence element which may be extended during operation.
  • the grammar rule MP->rule clause in not present in the set base grammar rules of the language, the set of rules may be extended in the current context space to include MP->real clause.
  • all language property extensions follow the same rules of environmental acquisition as any other context entry objects in the space.
  • negotiation on the basis of the discourse pseudo natural language is the intentional exchange of information, shared system of conventional symbols, messages or sounds referred to as vocabulary. Further, the exchange of language messages using a defined grammar is referred to as a speech act.
  • discourse pseudo natural language speech acts allow communication with the environmental state analysis apparatus and under the related method. Users interact with the environmental state apparatus by generating propositions P into an utterance, using synthesis. It is likely that the environmental state analysis system, upon perceiving the utterance in the current situation, can infer the meaning of the proposition P. Synthesis between the environmental state analysis apparatus and the user can be achieved via vibrations in the air when using speech recognition software or a network medium, which aspect is, however, non-binding to the scope of the present invention.
  • the discourse pseudo natural language supports five speech acts as follows:
  • a discourse pseudo natural grammar as set of rules that formally specify the discourse pseudo natural language.
  • This grammar expresses that the discourse pseudo natural language is a formal language relying on a base grammar that initially limits the way sentences may be written. Further, the discourse pseudo natural language base set of grammar rules exists in all spaces. Nevertheless, according to the present invention, the intention is not to force the set of grammar rules to be static with respect to size and composition. In other words, the set of grammar rules may be extended during runtime of the context-aware application.
  • a set of grammar rules may be expressed in the Backus-Naur form as follows:
  • the definition of the discourse pseudo natural language provides a base lexicon existing in all spaces. Again, according to the present invention, it is not the intention to force the base lexicon to be static with respect to size and composition, but it may be flexible during runtime of the context-aware application.
  • a base lexicon for the discourse pseudo natural language may be given on the basis of the Backus-Naur form as follows:
  • Fig.6 shows a more detailed schematic diagram of the apparatus for environmental state analysis as shown in Fig. 3.
  • the environmental state analysis in reasoning unit 12 comprises an environmental state acquisition and analysis unit 12-1, a path expression and context space tree graph structure transformation unit 12-2 and a logic inference unit 12-3.
  • each of the different sub-units 12-1 to 12-3 is connected to a corresponding data base, i.e. an environmental state data base 14-1, a path pattern data base 14-2, and a reasoning data base 14-3.
  • a corresponding data base i.e. an environmental state data base 14-1, a path pattern data base 14-2, and a reasoning data base 14-3.
  • a controller 16 As also shown in Fig. 6, the coordination of operation of the different sub-units and data bases shown in Fig. 6 is achieved by a controller 16.
  • the environmental state acquisition and analysis unit 12-1 achieves acquisition of environmental state data and an appropriate knowledge representation thereof in the environmental state data base 14-1.
  • the knowledge base and the data base 14-1 is represented using a set of sentences which is related to a knowledge representation language.
  • the sentences represent declarations about the perceived environment, i.e. a perceived domain being a topic of discourse or part of the world.
  • the general process of knowledge-based construction achieved by the environmental state acquisition and analysis unit 12-1 may be referred to as knowledge engineering and is suitable for construction special purpose knowledge bases for limited context bases.
  • the use or discourse pseudo natural languages with the context space allows for acquiring and release of knowledge upon entering and executing a context space, respectively.
  • Knowledge representation Representation of knowledge is achieved using a set of sentences expressed in a knowledge representation language. Sentences represent declarations about perceived domain, according to the present invention typically a context space and/or related context entry objects. In the most general sense, a domain in knowledge representation is a topic of discourse or a part of the world.
  • Construction of knowledge representation Is related to construction of special purpose knowledge representations where the context space or equivalently domain is limited.
  • the construction phase typically divides into six sub- phases :
  • Context space set-up gather knowledge on context space, e.g., identify containment relation(s) of context space, further knowledge on content entry objects, and acquire environmental state and environmental setting, e.g., using sensors.
  • Knowledge analysis Read context space for sensor information and related rules for transforming the sensor information into an environmental setting.
  • Knowledge encoding Knowledge is encoded into sentences and the knowledge base is updated using forward and backward chaining.
  • Instance encoding Knowledge related to instances, e.g., content entry objects like space objects or contents objects, is added to the knowledge base and the knowledge base is updated using forward and backward chaining .
  • Accept speech acts A speech act means exchange of messages using a defined grammar. Speech acts trigger logical inference procedures to derive results .
  • Refine knowledge base Add further sentences for a more detailed description of the context space and update the knowledge base using forward and backward chaining .
  • the next step is transformation of a context space tree graph structure and applying of path expressions as outlined above.
  • the path expression and tree transformation unit may be used to resolve path ambiguities. This operation will be achieved as outlined above .
  • One example would be the submission of an absolute path
  • the further example could be the submission of a path/Munich/Landsberger Stra ⁇ e 312/Wolfgang
  • a further operation of the state analysis according to the present invention is achieved by the logic interference unit 12-3 achieving reasoning, i.e. logic interference to derive conclusions and return results.
  • reasoning may use language messages and support of introduction of speech acts for user interaction.
  • discourse pseudo natural language reasoning logic makes use of standard first order predicate calculators, also known as first order logic.
  • First order logic is a declarative logic mechanism for knowledge and inference discovery in the context space. Using first order logic, knowledge acquisition and inference are separated, and inference is context space-dependent .
  • entailment can be determined using either forward chaining or backward chaining algorithms for reasoning.
  • Forward chaining are standard inference rules starting from a ' knowledge base and working forward in attempting to derive new inference rules and therefore new conclusions. Further, backward chaining are standard inference rules starting from a goal and attempting to derive inference rules that allows the goal to be achieved.
  • Typical further examples would be means ends decisions, deliberation, and/or intentional systems.
  • a further qualification would be deploying of rule-based inference systems, where elementary rules are made available, giving instructions on how to obtain a result given a set of pre-conditions.
  • an interpreter is presented with a final goal in the backward chaining case or data in the forward chaining case, and the inference system attempts to find rules to achieve a final goal and conclude a hypothesis.
  • Yet another example would be a plan-based system as class of systems where elementary actions are pre-assembled into plans which describe in detail how to achieve a given goal. While these systems are less flexible than rule-based systems, they are more efficient as they use a specific type of elementary steps towards a specific goal, e.g., according to interaction protocols for collaborative dialogues.
  • Fig. 7 shows a flowchart of operation of the apparatus of environmental state analysis, in particular a flow of steps achieved under control of the controller 16 shown in Fig. 6.
  • a step S16 there is achieved an identification of a containment relation and context entry objects of a context space under consideration via the environmental state acquisition and analysis unit 12-1.
  • the there found knowledge is then transformed into a knowledge representation language by the same unit in a step S18.
  • Such transformation may also be related to the operations of the path expression and tree transformation unit 12-2 shown in Fig. 6.
  • the controller 16 in combination with the environmental state acquisition and analysis unit 12-1 will continuously evaluate whether additional knowledge and/or reasoning has become available during runtime of the context-aware application. If this is the case, the knowledge representation and/or reasoning representation will be extended in a step S22 followed by an interrogation with respect to the termination of the context-aware application in a step S22 achieved by the controller 16. In the non-affirmative case, the procedure will branch back for continuation of the context-aware application, while otherwise the same will terminate.
  • the extension of a knowledge representation is achieved by adding further sentences to a knowledge representation language during runtime of the context-aware application or knowledge-based refinement in combination with a state of updating the knowledge base through forward and/or backward chaining.
  • the present invention provides an environmental state analysis apparatus and related method implemented into a computer system ena b ling development of context-aware application for adaptation and modification application runtime behaviour by means of analysis of the state of the environment, using acquisition, transformation, and reasoning, related to perceived environmental states and settings .

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computing Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Artificial Intelligence (AREA)
  • Machine Translation (AREA)
  • Stored Programmes (AREA)

Abstract

To enable knowledge based context-aware applications to benefit from an environmental state analysis through appropriate information exchange techniques there is proposed a method of environmental state analysis in support of context-aware applications having dynamic runtime behaviour. The basis for environment state analysis is a context space expressing an environment as a group of spaces in one-space comprising a plurality of sub-spaces which again may comprise a plurality of sub-spaces, etc.. Using such a space-based containment relation, according to the present invention it is proposed to execute input/output processing during context acquisition using a pseudo natural language for user interaction.

Description

Environmental State Analysis
FIELD OF INVENTION
The present invention relates to a method and apparatus for environmental state analysis, and in particular to a method and apparatus for environmental state analysis enabling knowledge based applications to benefit from acquisition, transformation, and logic interference related to perceived environmental states and settings.
BACKGROUND ART
The present invention as described here in the following relates generally to distributed computing, interpreted computing, and neutral language processing. In the past, distributed computing has generally focused on the goal of exchanging named file objects that represent data in operating systems. Here, file objects contained in operating file systems are a set of objects implementing necessary functions that permit software processes to associate a character string name to create, delete, open, write, close, and read data files during processing. Named file objects are not only limited to binary representations of data grouped memory, but may also include devices such as printer devices, exposing file-like function interfaces.
Further, in the past interpreted computing has generally focused on dynamic evaluation of code, on implementation of platform independence using abstraction, on dynamic scoping and late-type binding of named entities.
Still further, natural language processing systems have focused on creating general purpose knowledge based systems with the intention to support language interaction across the full range of complete knowledge in different application domains. Natural language processing normally is thought of explaining certain aspects of processing such as information retrieval, speech recognition, and speech synthesis. Neutral language processing is normally following sub-areas of the standard sub-division of linguistics including morphology, syntax, semantics and pragmatics. Researching in the field of natural language processing has proven to be very difficult except for limited application domains due to the need for non-domain specific applications being artificial intelligent complete which means completeness for the problem of representing and acquiring knowledge on application areas.
Yet another aspect is an appropriate knowledge representation as surrogate for the application environment itself and yet to enable logic inference in view of the application environment to give support for runtime dynamic behaviour of context-aware applications, e.g., as outlined in Davis et al . , What is Knowledge Representation?, Al Magazine, 14(1): 17-33, 1993.
SUMMARY OF INVENTION
In view of the above, the object of the present invention is to enable knowledge based context-aware applications to benefit from an environmental state analysis through appropriate information exchange techniques.
Another object of the present invention is to enable knowledge based context-aware applications from appropriate transformation of collected environmental state information and subsequent logic reasoning in view of the generated environmental state modeling.
According to the present invention, this object is achieved by a method of environmental state analysis in support of context-aware applications having dynamic runtime behaviour. The basis for such analysis is the model of an environment using a so-called context space. A context space expresses an environment as a group of spaces in one- space comprising a plurality of sub-spaces which again may comprise a plurality of sub-spaces, etc., which is expressed as space-based containment relation according to the present invention. Using such a space-based containment relation, according to the present invention it is proposed to execute input/output processing during context acquisition using a pseudo natural language for user interaction. An important advantage of the present invention is the use of a formal language definition for user interaction. The language definition is pseudo natural it that it follows the intuition of system users and therefore greatly facilitates system usage and consequently promotes system acceptance. Typical examples with respect to the use of the pseudo natural formal language are, e.g., context queries, context assertions, and/or context representations.
Further according to the present invention context acquisition is executed for an environment using a containment relation, wherein a context-aware application is uses the context space representation and the containment relation in combination with the pseudo natural formal language.
Therefore, the present invention provides for a context- aware computing environment as paradigm, wherein an application uses knowledge related to a set of environmental states and settings to determine and adapt an application's behaviour. The present invention realizes a system and provides a method for overcoming the inherent difficulties in analysis and gaining knowledge on an open environment via adaptation of context-aware application's behaviour. Here, of relevance is the containment relation aspect in combination with state acquisition using a pseudo natural formal language for dynamic runtime behaviour.
The acquisition paradigm according to the present invention allows to propose an abstract mechanism using object- oriented paradigms for creation of context state information via inheritance instantiation during creation of environmental information. The essential principles underlying and being derivable using the containment relation in combination with the pseudo natural formal language are that information objects representing the environmental states may have a hierarchical structure where hierarchy objects act as containers. Containers are intended to produce a in-a-composition hierarchy in an object-oriented paradigm sense. Further, objects defined for representation of context states not having a specific behaviour or a particular feature may use acquisition, e.g., inheritance or through input/output processes using the pseudo natural formal language, as a means of abstraction to acquire the behaviour from their container.
Therefore, according to the present invention, the proposed containment relation for environmental state analysis allows to derive state information also in cases where specific objects do not provide such information per se using mechanisms of abstraction, inheritance, and/or information acquisition through a pseudo natural formal language. This allows to improve context-aware application behaviour over previously established analysis schemes that fail to provide state information at all for the case that particular information objects representing environmental state information should not be available.
According to a preferred embodiment of the present invention, the containment relation between spaces of the environment expresses a hierarchy between the spaces of the environment and, preferably, is represented using a context space tree graph structure. Here, it should be noted that attributes and information with respect to such spaces in the environment may be stored in relation to the hierarchy represented by the context space tree graph structure.
The context space tree graph structure and hierarchy of spaces is of particular benefit in representing environmental state analysis information in appropriate manner for subsequent reasoning. In particular, assuming that the tree represents the hierarchy -of spaces and that a context-aware computing may be related to a specific sub- space, it is possible to apply the context-aware computing paradigms and related functionality to a sub-tree of the context space tree graph structure being related to the considered space. This allows to cut down on the complexity imposed by the continuous nature, the infinite number of states and related inherent difficulties in analyzing and gaining knowledge of the environment for adaptation of application behaviour.
Further, assuming that the environment continuously changes during runtime of the context-aware application, the context space tree graph structure is a beneficial representation for adapting the provided environmental state analysis information according to the space perceived during context-aware application provision.
According to a preferred embodiment of the present invention, it is proposed to exchange information within different sub-elements of the model representing the context space using an application messaging interface protocol in a peer-to-peer style.
According to this preferred embodiment of the present invention, an important advantage is the collaborative and distributed implementation of the context-bases model in view of a persistence object store and efficient exchange mechanism. Here, information regarding elements of the context space model are communicated through exchange of information objects using a shared memory space. In other words, such a peer-to-peer style application messaging interface supports consistent data maintenance in view of a plurality of participants through a distributed information representation according to a context space.
According to yet another preferred embodiment of the present invention, context acquisition using containment relations is achieved through path expressions and related path matching in view of the context space tree graph structure.
According to this preferred embodiment, it is proposed to transform the available context space tree graph structure into a context space tree graph structure appropriate for the considered space of the context-aware application.
E.g., should the overall context space tree graph structure describe a hierarchy where the highest level space is a city, followed by a street, a building, a room, etc., and should the considered context space for an application be, e.g., a building, then the transformation would take out the sub-tree starting from the building node from the initial context, space tree graph structure for appropriate modeling of the context space of the context-aware application .
Therefore , the transformation mechanism underlying the present invention considers the continuous nature and the infinite number of environmental states to avoid un- tractable complexity and inherent difficulties for analyzing and gaining knowledge of the environment for context -aware computing applications . The transformation to the appropriate sub-tree from a context space tree graph structure allows treatment of an infinite number of environmental states in an open environment and for increased eff iciency of context state acquisition and subsequent reasoning thereon . Again, it is the containment relation in combination with knowledge acquisition through use of a pseudo natural formal language underlying the inventive environmental state analysis that forms the basis for such information mechanisms .
According to yet another preferred embodiment of the present invention, it is proposed to construct a knowledge representation of the context space using a set of sentences expressed in a knowledge representation language, typically a pseudo natural language. The provision for a formalized user interaction with the context-aware application environment and the state analysis scheme according to the present invention supports realization towards direct possible interaction with the end user at the benefit of increased accuracy of environmental state analysis and acquisition. According to a preferred embodiment of the present invention, there is provided a reasoning about the acquired environmental state and related context space three graph structure after transformation, as outlined above , optionally using again the formal pseudo natural language for user interaction . Further , optionally the reasoning may be supported by knowledge available from a knowledge representation of the context space , previous reasoning processes and corresponding reasoning results .
It is this logic reasoning inference that allows to achieve and support service adaptation mechanisms facilitating dynamic behaviour driven by the perceived and collected environmental state information in support of context-aware computing . It leaves the new services in view of analyzed environmental states , gained environmental states knowledge and achieves realization and reasoning towards possible actions in view of service user expectations .
According to another preferred embodiment of the present invention there is provided a computer program product directly loadable into the internal memory of a environmental sate analysis processor comprising software code portions for performing the inventive environmental sate analysis process when the product is run on a processor of the environmental sate analysis processor .
Therefore , the present invention is also provided to achieve an implementation of the inventive method steps on computer or processor systems . In conclusion, such implementation leads to the provision of computer program products for use with a computer system or more specifically a processor comprised in e.g., a environmental state analysis processor.
This programs defining the functions of the present invention can be delivered to a computer/processor in many forms, including, but not limited to information permanently stored on non-writable storage media, e.g., read only memory devices such as ROM or CD ROM discs readable by processors or computer I/O attachments; information stored on writable storage media, i.e. floppy discs and harddrives; or information convey to a computer/processor through communication media such as network and/or Internet and/or telephone networks via modems or other interface devices. It should be understood that such media, when carrying processor readable instructions implementing the inventive concept represent alternate embodiments of the present invention.
Overall, the present invention is of particular relevance in supporting service providers running context-aware applications and in supporting system users through provision and application of a pseudo natural formal language for system interaction. Here, context-aware applications are run such that services are delivered at the right time with the right profile. Service providers can handle the infinite number of environmental states and provide a most appropriate realization and reasoning for end users, e.g., personalized services using environmental states and end user profiles. Further, another key aspect is performance efficiency as service providers can handle the infinite number of environmental states efficiently through transformation on context space node tree model transformations.
Still further, another benefit is cost efficiency as service providers may provide services without any maintenance by gaining environmental state knowledge.
From the above, it becomes clear that the present invention allows to support easy set-up of services, as not all conditions and inferences must be coded into a system for context-aware application at the time of system set-up but, to the contrary, may be integrated into the system through subsequent acquisition of environmental state and interpretation thereof according to an interactive system programming approach using interpretation mechanisms at system runtime, in particular an open environment.
DESCRIPTION OF DRAWING
In the following, the best mode and preferred embodiments of the present invention will be explained with reference to the drawing, in which:
Fig. 1 illustrates the application of the containment relation for knowledge acquisition according to the present invention; Fig. 2 illustrates the application of path expressions and transformation on context space tree graph structures according to the present invention;
Fig. 3 shows a schematic diagram of an apparatus for environmental state analysis in support of context-aware applications according to the present invention;
Fig. 4 shows a flowchart of operation of the environmental state analysis and reasoning unit shown in Fig. 1;
Fig. 5 shows a context space representation in support of context-aware applications according to the present invention;
Fig. 6 shows a more detailed schematic diagram of the apparatus for environmental state analysis in support of context-aware applications shown in Fig. 3; and
Fig. 7 shows a flowchart of operation of the apparatus for environmental state analysis shown in Fig. 5. DESCRIPTION OF BEST MODE AND PREFERRED EMBODIMENTS
In the following, a best mode and preferred embodiments of environmental state analysis of the present invention will be explained with reference to the drawing. Insofar as reference is made to features of the present invention, it should be noted that such features may be either implemented in software, in hardware, or in a combination thereof .
For the explanations to follow, initially some explanations of terms like space, outer space, environment, environmental state, environmental setting may be given as follows :
Space : A space acts as container for all space entry objects located in the space. A space is subject to space influences and may be characterized by space conditions and/or space attributes which may change over time.
Outer space: Assuming that a space itself may contain sub- spaces as space entry object (s) and that an hierarchy is imposed on spaces and sub-spaces, an outer space is a top level root space.
Environment : Aggregation of spaces with related space entry objects, space conditions, space attributes, and/or space influences .
Environmental state : Identification of spaces and related space entry objects, space conditions, space attributes, and/or space influences of an environment and, optionally, their interrelationship.
Environmental setting: Quantification of an environmental state. The quantification may either be determined by space influences and interrelationship of spaces, space conditions, and/or space attributes or through activation of actuators provided for control of specific spaces, space conditions, and/or space attributes.
Fig. 1 shows the implication of the terms explained above on the application of a containment relation for knowledge acquisition according to the present invention.
As shown in Fig. 1, according to the present invention, there is imposed a hierarchy on spaces, where or Fig. 1 gives a non-binding example of a city as an outer space, which comprises different streets, which again comprise either different buildings or rooms, followed by desks, etc. As shown in Fig. 1, containment according to the present invention does not mean that on each level of abstraction similar instantiations are used, but different instantiations, e.g., buildings and rooms, may be assigned to the same level of the tree representation.
As also shown in Fig. 1, the tree representation given on the left side of Fig. 1 may be mapped into a containment relation where the outer space city comprises the street B, the room B, the desk A, etc. Further, the example given with respect to Fig. 1 and the explanations given so far serve for a definition of further relevant aspects of the present invention like context space, containment, context space tree model, context space transformation, and space peer as follows:
Context space : Implementation of a space model on the basis of a distributed space-based containment representation of a space. The distributed space-based containment representation may be hierarchical. Context spaces model containment of context entry objects as representation of space entry objects. Context entry objects are found based on path expressions through path matching, e.g., a Xpaht language .
Containment : Containment is a in-a relationship between a first space and a second space. Containment means that the first space is a sub-space of the second space context.
Context space tree model : Representation of a context space or a context sub-space using a tree graph structure.
Context space transformation : Mechanism of transforming the structure and content of one context space tree model into another.
Space peer: Participant to a context space. A context space peer implements an application messaging interface protocol for sharing context space related information according to a de-centralized peer-to-peer style. Space peers may join based on shared interests to form space peer groups for which the related context space serves as virtual meeting point .
To further illustrate the explanations given above, Fig. 2 illustrates the application of a context space tree graph structure according to the present invention.
With respect to Fig. 2, one may assume, e.g., that a space peer is an end user receiving services being located, e.g., in street B in the containment relation and hierarchy of spaces shown in Fig. 1.
As shown in Fig. 2, it is proposed to therefore transform the context space tree graph structure shown in Fig. 1 with respect to the complete context space into a content- dependent modified or smaller context space tree graph structure wherein the route node is now no longer the city but the street B as example. Generally, according to the present invention, this step is transformation of the context space tree graph structure according to the view taken on the context space by a context-aware application, i.e. according to the context of a space peer at runtime of the context-aware application.
Besides this tree model, according to the present invention, it is also suggested to apply node step patterns or path expressions to define a condition that nodes in the context space tree graph structure must satisfy in order to be selected. Apparently, such path expressions may express the path in an absolute manner or a relative manner. Also, the containment of a space in a space according to an upper hierarchy may be expressed through path matching in view of a submitted path expression, either an absolute or a relative path expression. Typical examples of tree models and related node step patterns would be file trees, HTML, XML, and related node step patterns XPath, Regular
Expressions, Unix Shell Commands, given as example only and being non-binding for the present invention.
Further, as shown in Fig. 2 and as will be explained in more detail in the following, after transformation of the context space tree graph, the context space tree graph may also contain added information, e.g., in view of desk B also contained in room B, which information may be available from previous service delivery and not yet represented in the starting point before transformation, e.g., the context space tree graph structure shown in Fig. 1. Therefore, according to the present invention, it is proposed to apply previous path expressions pre-cached before service delivery to a transformation process in preparing for a subsequent logic inference reasoning, which will be explained in more detail in the following. The same principle of adding pre-cache information may also be applied with respect to information available for environmental states in correspondence to spaces or related reasoning rules, as will also be explained in the following.
In view of the illustrations shown in Figs . 1 and 2 , it should become clear that the method of environmental analysis in support of context-aware application (s) with dynamic runtime behaviour according to the present invention relies on the execution of context acquisition for a context space using the containment relation. As outlined previously, this allows to apply the object- oriented paradigm of state information during creation time of the context space via inheritance instantiation exploiting in-a-composition hierarchy of the context space. Here, should environmental state information not be available with respect to a specific node in the context space tree graph structure, a specific behaviour or particular feature with respect to a space may be acquired by means of abstraction to a higher level of hierarchy or by forwarding such behaviour and particular feature to lower level hierarchies in the context space tree graph structure .
Fig. 3 shows the application of the principles outlined above to an apparatus for environmental state analysis in support of context-aware applications according to the present invention.
As shown in Fig. 3, the apparatus for environmental state analysis according to the present invention then comprises an environmental state analysis and reasoning unit 12 and a cache memory 14 for storage of environmental state information, e.g., a context space tree graph structure, related path expressions, and reasoning results achieved with respect to the available information.
As shown in Fig. 3, the input of the environmental state analysis and reasoning unit 12 during runtime is a state_e as discourse statement provided for service delivery during runtime of the context-aware application. Further, from the cache memory 14, there is retrieved a state_c as set of entry objects to the space context retrieved from the context space after analysing the state_e. Further, there is provided a set of node step patterns pattern_C being related to specific operations taken with respect to perceived environmental states and retrieved from pre- stored context spaces after analysis of the state_c. Also, from the cache memory 14, there is retrieved a reasoning_C as set of entry objects to the context space containing previous submissions to the environmental state analysis apparatus 10 and related reasoning results, which may preferably be expressed as speech acts for pragmatic interpretation, as will be explained in the following.
According to the present invention it is proposed to use a pseudo natural formal language for user interaction with the system, as explained in the following in more detail. Here natural implies that grammar and lexicon of the language are set up so as to follow the intuition of system users to facilitate information exchange. Nevertheless, it is still a formal language for automized processing of user interactions which is reflected through the term pseudo for the pseudo natural language.
Further, as components of the pseudo natural language are grammar and lexicon, as will be explained in more detail below, the pseudo natural language may also be extended during system runtime, e.g., by following the same rules of environmental acquisition as for any other objects in the context space. In view of the above, there may be submitted a perceived state-E, identifying a related state_C corresponding to the state and previously reasoned upon by the environmental state analysis apparatus, related path expressions pattern_C with respect to the pre-stored state_C and related reasoning results reasoning_C .
Further, the environmental state analysis and reasoning unit 12 shown in Fig. 12 will apply a formal natural language reasoning on the submitted information by way of logical inference so as to adapt the behaviour during runtime of context-aware applications. Therefore, the present invention allows for context-aware applications to use acquired knowledge with respect to environmental states and attributes to determine and adapt application behaviour during runtime through:
Perception and collection of the environment, i.e. the collection of environmental state and attributes, e.g. via sensors; distributing and selecting of collected environmental state information via data communication, to be explained in the following; application of adaptation mechanisms to context- aware applications for achieving dynamic behaviour driven by the collected environmental state information. The outcome of the reasoning process conducted by the environmental state analysis and reasoning unit 12 shown in Fig. 3 will be a discourse statement, represented as a sentence utterance, e.g., in the pseudo natural formal language, and returned by the environmental state analysis and reasoning unit 12 shown in Fig. 3. Further results of reasoning will be newly generated state information state_D in view of the context space, derived discourse statements and reasoning_D and modified state_D for the context space. Typical examples would be that, e.g., in view of newly submitted state information state_E a new reasoning has been derived during logic inference, e.g., through user interaction using a discourse pseudo natural language to be explained in the following, which may also lead to new states and path expressions pattern_D for supply of reasoning results results_R.
Fig. 4 shows a flowchart of operation of the environmental state analysis and reasoning unit shown in Fig. 3.
As shown in Fig. 4, operatively the apparatus for environmental state analysis according to the present invention achieves context acquisition using containment relation in step S10. Optionally, path expressions are applied for identification of relevant nodes in the hierarchy of the acquired context space and the context space tree graph structure may be transformed, if necessary, in a step S12. Finally, in a step S14, there is executed a reasoning using a pseudo natural discourse language to be explained in the following, which step is also optional,, should a conclusion in view of a supplied environmental state already be available in the context space cache memory 14 from previous environmental state process analysis processes.
In the following, more detailed explanations of the inventive environmental state analysis in reasoning concepts outlined so far will be given with respect to Figs. 5 to 7.
Heretofore, initially the terms context entry object, content object, logic object, space object may be introduced as follows:
Context entry object : Either one of a content object to model environmental state and related setting that may be observed by a space peer, a logic object achieving a predetermined form of processing, and/or space object for sub- spaces contained in the space context under consideration. Context spaces use a template field to match context entry objects within the context space.
Data distribution model : A first option to manage context entry objects stored with respect to space contexts is centralized management, e.g., through a central control peer. A second option to manage context entry objects stored with respect to space contexts is distributed management, e.g., using broadcasting and caching mechanisms. A third option is a hybrid of centralized management and distributed management. Content object : A content object is any relevant environmental state and environmental setting that can be observed or perceived by a space peer. In other words, the role of a content object is to act as recording environmental state and environmental setting forming the basis of context-awareness of applications running on top of the context space.
Logic object : A logic object is an entry, possibly a script, code or sequence of instructions, which involves performing logic operations at runtime of an application running on top of the context space and leads to dynamic behaviour. Typical tasks performed by logic objects are, e.g., testing conditions, changing environmental state or environmental setting, starting or performing or stopping some action at the runtime of the application running on top of the context space.
Space obj ect : A space object acts as a container for all context entry objects located in the space modelled by a context space. As context spaces may be hierarchical, the same applies to space objects.
In view of the above, Fig. 5 shows a context space representation in support of context-aware applications according to the present invention.
As shown in Fig. 5, a context space is represented as a context space tree graph structure and different nodes represent context spaces and a containment relation as explained above. Each space in the environment is modelled by a node SI, S1,0, Sl,l, where spaces S1,0 and Sl,l are sub-spaces to space SI. Further, the sub-spaces are linked to the after-space SI via containment object C1,0.
As shown in Fig. 5, with respect to sub-space S1,0, there are defined related objects for the environmental state to contents object C1,0,0 and logic objects LI , 0 , 0 and LI, 0,1. The contents object C1,0,0 is a model for sensors provided in space S1,0, and the logic objects represent processing steps being provided with respect to space S1,0, such as activation of sensors, reading of sensors, turn-down of sensors, etc.
As shown in Fig. 5, similar modelling as with space S1.0 is also done with respect to space Sl,l having one contents object Cl,2,0 and three logic objects LI, 1,0, LI, 1,1, and LI, 1,2.
As also shown in Fig. 5, it becomes clear that path matching is achieved through path expressions or equivalently path statements such as /Sl/Sl .0/Cl .0 for matching /Sl/Cl .0 or, e.g., /Sl/Sl .0/Sl .0.0 for activating a certain logic operation with respect to certain space objects S1.0. Here, absolute path expressions start from the outer space route element, while relative path statements may start from intermediate levels of hierarchy in the context space tree graph structure . Having regard to the explanations given with respect to Fig. 5, an explanation of context acquisition with respect to containment relations may now be further refined according to: Context acquisi tion : Evaluation of context entry objects in context spaces through path matching in view of the context space hierarchy. Path matching either means identifying a context entry object according to an absolute path expression or according to a relative path expression using containment. In the latter case it is possible to share a specific behaviour, via a logic object, or feature, via a content object, between space objects in the space context hierarchy in a peer-to-peer manner using two data distribution models, centralized and de-centralized. Therefore, context acquisition is a paradigm which allows for dynamic behaviour to be shared between context entry objects via containment at runtime of applications running on top of the context space.
A further aspect related to the context space shown in Fig. 5 is the interface in between different elements of the context space representation. According to the present invention, this is achieved using an application messaging interface protocol in a peer-to-peer style.
Here, peer-to-peer systems refer to a class of systems commonly using an overtly networking addressing scheme to create a de-centralized context space system for collecting space peers to share resources. Space peers participating in the context space normally offer and consume resources from other collected space peers using interaction messages. Typical peer-to-peer systems enable space peers to cooperate and collaborate in a peer group advertised and discover resources of the environmental state analysis apparatus .
Further, the application messaging interface provides space peers with an interface to allows context information to be shared and stored independently of any specific messaging protocols. Therefore, the decision of messaging independence allows for the use of existing network protocols or transport protocols within the environmental state analysis framework according to the present invention.
Further, according to the present invention, each context space may contain space group objects which space peer may join based on interest. According to the present invention, space group objects are referred to simply as space, which space may be considered as virtual meeting point of space peers that join a peer group. A space group object is joined by a space peer based on interest.
Further, according to the present invention, each space peer in all spaces of the context space must have a unique name strain to be used for message delivery and operation within the context space. While according to the present invention, it is not necessary to specify a certain name generation algorithm for space peers, it may be recommendable for logic environmental state analysis systems to acquire unique names from either a unique lower layer protocol identifier/address or to use a W3C universal resource name. Further to the above, context entry objects stored in a context space may either be centrally managed, thus under control of a single primary space peer, or de-centrally managed, thus broadcasted and cached by any of all space peers, depending on the runtime operation of the context space. Support for the operation of the two models of data distribution requires space peer roles to be defined either as persistence space peer or as simple space peer. In the first case, a persistence space peer manages a centralized persistence service for context entry objects within a context space. The decision to use a persistence space peer increases reliability and the robustness of the system. In the second case, a simple space peer is a non-persistence space peer which increases flexibility and decreases management, at the expense of reliability and management.
In the following, further details of the application messaging interface for information exchange between space peers will be explained. Here, space peers use spaces as abstraction mechanism to collaborate for sharing and storing context entry objects via application interface messages .
In the following, the respective application messaging interface methods and the generated XML message envelopes are defined as follows:
Application messaging interface methods are used by space peers, e.g., sensors provided in a space, to update context state information in a space. As will be explained in the following, they are used by context-aware applications that retrieve related context information from the context space according to a specific topic specified by a related path expression.
A first such message is the write method being used to write context entry objects into a space with a specific value. The use of a transaction requires a centralized persistence space peer-to-peer the destination handle of the information. If the need for a transaction is not supplied, the context entry is de-centrally advertised to all space peers in the current space. Responses are not generated.
Table 1. Write Method
write (expr, entry, lease=None, txn=None) ->result Return value is True if successful or None
'entry' argument is a context entry to be held in the space 'expr' is an Xpath expression to use to match an entry 'lease' argument is a lease length in milliseconds ' txn=None ' a transaction if used requires a persistence data store.
XML Message Template:
<?xml version= ' 1.0 ' encoding= 'us-ascii ' ?>
<cs :write xmlns : cs=www. docomolab-euro . com/namespaces/ contextspace cs: timestamp= '#'>
<cs expression>XPath Expression</cs : expression> <cs : entry>Entry Element</cs : entry> <cs : lease>Number of Milliset -onds</cs : lease> <cs : transaction> Transaction Number</cs : transaction>
</cs :write>
A further method is the read method being used to read a matching content entry object from a space, or execute a logic entry object, based on a path expression. If a match is not found, the read method blocks until one exists or the timeout expires.
Table 2. Read Method
read (self, expr, txn=None, timeout=None) ->result
Return value is a copy of a matching entry or None if a timeout occurs
'expr' argument is an XPath expr to use to match an entry ' timeout=None ' a timeout length in milliseconds ' txn=None ' a transaction requiring a commit phase pre-exposure . Use of a transaction parameter, enforces that other transactions cannot take that entry until this transaction completes.
XML Message Template:
<?xml version=' 1.0 ' encoding= 'us-ascii ' ?> <cs read xmlns :cs=www. docomolab-■euro . com/namespaces/ cont -extspace cs:timestamp= #'>
<cs expression>XPath Expression</cs : expression> <cs : transaction>Transaction Number</cs transaction> <cs : timeout>Number of Milliseconds</cs : timeout>
</cs : read>
Further, a readall method may be used to read all matching content entry objects, or execute all logic entry objects, based on a path expression from a context space. If a match is not found, the readall method blocks until one exists or a timeout expires.
Table 3. Readall Method
readall (self , expr, timeout=None, txn=None) ->result
Return value is list of matching entries or None
'expr' is an Xpath expression to use to match an entry ' timeout=None ' a timeout length in milliseconds ' txn=None ' a transaction requiring a commit phase pre-exposure. Use of a transaction parameter, enforces that other transactions cannot take that entry until this transaction completes.
XML Message Template:
<?xml version= ' 1.0 ' encoding= 'us-ascii ' ?>
<cs : readall xmlns : cs=www. docomolab-euro . com/namespaces/ contextspace cs : timestamp= ' # ' >
<cs :expression>XPath Expression<:/cs :expression> <cs : transaction>Transaction Number</cs : transaction> <cs : timeout>Number of Milliseconds</cs : timeout>
</cs:readall>
Further, a readifexists method is used to read a matching content entry object, or execute a logic entry object, based on a path expression from a context space. The readifexists method is non-blocking, so that a specified timeout is only relevant within a transaction.
Table 4. ReadifExists Method
readifExists (expr, timeout=None, txn=None) ->result
Return value is a copy of a matching entry or None
' expr ' argument is an XPath expr to use to match an entry 'txn' argument is a transaction requiring a commit phase pre-exposure. 1 timeout=None ' a timeout length in milliseconds
XML Message Template:
<?xml version= ' 1.0 ' encoding= 'us-ascii ' ?> <cs : readifexists xmlns : cs=www. docomolab- euro . com/namespaces/ contextspace cs : timestamp= ' # ' >
<cs : expression>XPath Expression</cs : expression> <cs : transaction>Transaction Nύmber</cs : transaction> <cs : timeout>Number of Milliseconds</cs : timeout>
</cs : readifexists>
Further, the take method is used to remove any matching context entry objects, based on a path expression, from the context space. If a match is not found, the take method blocks until one exists or the timeout expires. The use of a centralized persistence service is mandatory for reliable service since removal cannot be guaranteed when using broadcasting and/or caching.
Table 5. Take Method
take (expr, txn, timeout=None) ->result
Return value is the matching entry or None
'expr' argument is an XPath expr to use to match an entry 'txn' argument is a transaction requiring a commit phase pre-exposure . ' timeout=None ' a timeout length in milliseconds XML Message Template:
<?xml version= ' 1.0 ' encoding= 'us-ascii ' ?>
<cs:take xmlns : cs=www.docomolab-euro . com/namespaces/ contextspace cs : timestamp= '#'>
<cs : expression>XPath Expression</cs : expres. 3ion> <cs : transaction>Transaction Number</cs : transaction> <cs : timeout>Numbe ≥r of Milliseconds</cs : timeout>
</cs : take>
Further, a takeifexists method is used to remove a matching context object entry based on a path expression from the context space, without blocking until one exists. The use of a centralized persistence service is mandatory for reliable service since removal cannot be guaranteed when using broadcasting and caching.
Table 6. TakelfExists Method
takeifExists (expr, txn, timeout=None) ->result
Return value is a copy the matching entry or None
'expr' argument is an XPath expr to use to match an entry 'txn' argument is a transaction requiring a commit phase pre-exposure. ' timeout=None ' a timeout length in milliseconds
XML Message Template:
<?xml version= ' 1.0 ' encoding= 'us-ascii ' ?> <cs : takeifexists xmlns : cs=www.docomolab- eurc . com/namespaces/ contextspace cs : timestamp= #•>
<cs : expression>XPath Expression</cs : expression> <cs :transaction>Transaction Number</cs : transaction> <cs: timeout>Number of Milliseconds</cs : timeout>
</cε -. takeifexists>
Further, a notify method provides an interface for an event model where the caller can register for remote events based on a path expression. When context entry objects are written that match the path expression into a context space, the given list of listener are notified by evaluation of the event object. Table 7. Notify Method
notify (self, expr, eventobj ect, txn=None, listeners=None, lease=None) ->result
Return value is True if the notify command was accepted in the space None for non-acceptance
'expr' argument is an L XPath expr to use to to register for remote events ' eventobject=None ' a return argument used for listener cookies ' txn=None ' a transaction allows notification in the scope of a write ' listeners=None ' a list of registered file objects
(pipes, files, etc.) ' lease=None ' argument is a lease length in milliseconds XML Message Template:
<?xml version= ' 1.0 ' encoding= 'us-ascii ' ?>
<cs: notify xmlns : cs=www. docomolab-euro . com/namespaces/ contextspace cs : timestamp= ' # ' > <cs :expression>XPath Expression</cs :expression> <cs :eventobject>Listener Cookie</cs :eventobject> <cs : transaction>Transaction Number</cs : transaction> <cs :listeners>Listener Element</cs : listeners> <cs : lease>Number of Milliseconds</cs : lease>
</cs :notify>
In view of the above, the building of a dynamic context- aware application using context spaces application messaging interfaces relies heavily on shared and stored context entry objects. As stated above, context entry objects are found in context spaces by using path matching, e.g., XTat high language path expressions identifying a space and matching context entries .
In view of the above, according to the present invention, the use of context spaces as architectural framework is intended as mechanism for sharing a specific behaviour, via a logic object, or a feature, via content object, using containment . Context spaces based context acquisition is different to other frameworks as context spaces match context entry objects based on path expressions supported a peer-to-peer model using two data distribution models , decentralized or centralized, to share stored context information via context entry obj ects across a distributed space based information system.
Context acquisition within context spaces architectural framework is used to dynamically either acquire content obj ects or to call logic obj ects not existing in the current space obj ect from a containing space obj ect via a path statement passed to application messaging interface methods .
Yet another mechanism for exchange of information, further to the application messaging interface , is the application of the discourse pseudo natural language according to the present invention, as outlined above . This discourse pseudo natural language may be used for submission of information to the environmental state analysis apparatus or for providing written results therefrom.
The discourse pseudo natural language DPNL according to the present invention is a formal knowledge representation language used to facilitate construction of a limited domain knowledge based to allow logic interference reasoning within the proposed system.
It is important to note that discourse pseudo natural language components include knowledge space, a grammar, a lexicon, and a logic processing algorithm. Excluding the logic processing algorithm, all instances of the discourse pseudo natural language components in various systems are relative with respect to the current context space.
Further, excluding the logic processing algorithm, each instance of a discourse pseudo natural language component includes a base set of persistence element which may be extended during operation. For example, if the grammar rule MP->rule clause in not present in the set base grammar rules of the language, the set of rules may be extended in the current context space to include MP->real clause. Further, all language property extensions follow the same rules of environmental acquisition as any other context entry objects in the space. In view of the above, negotiation on the basis of the discourse pseudo natural language is the intentional exchange of information, shared system of conventional symbols, messages or sounds referred to as vocabulary. Further, the exchange of language messages using a defined grammar is referred to as a speech act.
Before describing discourse pseudo natural speech acts, several definitions are given as follows:
According to the present invention, discourse pseudo natural language speech acts allow communication with the environmental state analysis apparatus and under the related method. Users interact with the environmental state apparatus by generating propositions P into an utterance, using synthesis. It is likely that the environmental state analysis system, upon perceiving the utterance in the current situation, can infer the meaning of the proposition P. Synthesis between the environmental state analysis apparatus and the user can be achieved via vibrations in the air when using speech recognition software or a network medium, which aspect is, however, non-binding to the scope of the present invention.
According to the present' invention, the discourse pseudo natural language supports five speech acts as follows:
In the following, there will be explained a discourse pseudo natural grammar as set of rules that formally specify the discourse pseudo natural language. This grammar expresses that the discourse pseudo natural language is a formal language relying on a base grammar that initially limits the way sentences may be written. Further, the discourse pseudo natural language base set of grammar rules exists in all spaces. Nevertheless, according to the present invention, the intention is not to force the set of grammar rules to be static with respect to size and composition. In other words, the set of grammar rules may be extended during runtime of the context-aware application. A set of grammar rules may be expressed in the Backus-Naur form as follows:
Further to the base set of grammar rules, the definition of the discourse pseudo natural language provides a base lexicon existing in all spaces. Again, according to the present invention, it is not the intention to force the base lexicon to be static with respect to size and composition, but it may be flexible during runtime of the context-aware application. One example of a base lexicon for the discourse pseudo natural language may be given on the basis of the Backus-Naur form as follows:
In view of the above, an example of a context space representation using the context space as outlined above, further the discourse pseudo natural language as final related representations may be given in view of the example given in Figs . 1 and 2 , assuming that this city is Munich, that the street is Landsberger Straβe 312, that the room is Room R18 as follows:
In view of the above, Fig.6 shows a more detailed schematic diagram of the apparatus for environmental state analysis as shown in Fig. 3.
As shown in Fig. 6, the environmental state analysis in reasoning unit 12 comprises an environmental state acquisition and analysis unit 12-1, a path expression and context space tree graph structure transformation unit 12-2 and a logic inference unit 12-3.
As shown in Fig. 6, each of the different sub-units 12-1 to 12-3 is connected to a corresponding data base, i.e. an environmental state data base 14-1, a path pattern data base 14-2, and a reasoning data base 14-3.
As also shown in Fig. 6, the coordination of operation of the different sub-units and data bases shown in Fig. 6 is achieved by a controller 16.
Operatively, the environmental state acquisition and analysis unit 12-1 achieves acquisition of environmental state data and an appropriate knowledge representation thereof in the environmental state data base 14-1. Here, the knowledge base and the data base 14-1 is represented using a set of sentences which is related to a knowledge representation language. The sentences represent declarations about the perceived environment, i.e. a perceived domain being a topic of discourse or part of the world. The general process of knowledge-based construction achieved by the environmental state acquisition and analysis unit 12-1 may be referred to as knowledge engineering and is suitable for construction special purpose knowledge bases for limited context bases. Again, the use or discourse pseudo natural languages with the context space. allows for acquiring and release of knowledge upon entering and executing a context space, respectively.
A more detailed explanation of knowledge representation and construction of knowledge representation may be given as follows :
Knowledge representation : Representation of knowledge is achieved using a set of sentences expressed in a knowledge representation language. Sentences represent declarations about perceived domain, according to the present invention typically a context space and/or related context entry objects. In the most general sense, a domain in knowledge representation is a topic of discourse or a part of the world.
Construction of knowledge representation : Is related to construction of special purpose knowledge representations where the context space or equivalently domain is limited. The construction phase typically divides into six sub- phases :
(1) Context space set-up: gather knowledge on context space, e.g., identify containment relation(s) of context space, further knowledge on content entry objects, and acquire environmental state and environmental setting, e.g., using sensors. (2) Knowledge analysis: Read context space for sensor information and related rules for transforming the sensor information into an environmental setting. (3) Knowledge encoding: Knowledge is encoded into sentences and the knowledge base is updated using forward and backward chaining.
(4) Instance encoding: Knowledge related to instances, e.g., content entry objects like space objects or contents objects, is added to the knowledge base and the knowledge base is updated using forward and backward chaining . (5) Accept speech acts: A speech act means exchange of messages using a defined grammar. Speech acts trigger logical inference procedures to derive results . (6) Refine knowledge base: Add further sentences for a more detailed description of the context space and update the knowledge base using forward and backward chaining .
Assuming that a knowledge representation regarding the environmental state has been constructed as outlined above, the next step is transformation of a context space tree graph structure and applying of path expressions as outlined above. Here, operatively the path expression and tree transformation unit may be used to resolve path ambiguities. This operation will be achieved as outlined above . One example would be the submission of an absolute path
/Munich/Landsberger Straβe 312/ Room Rl8/Temperature
which may be transformed into an acquisition path according to
/Munich/Landsberger Straβe 312/ Room R18/Desk 1/Temperature .
The further example could be the submission of a path/Munich/Landsberger Straβe 312/Wolfgang
which may resolved through path matching into
/Munich/Landsberger Straβe 312/ Room R18/Desk 1/Wolfgang
for subsequent storage of related state information, e.g., presence of Wolfgang or not.
Further, as shown in Fig. 6, a further operation of the state analysis according to the present invention is achieved by the logic interference unit 12-3 achieving reasoning, i.e. logic interference to derive conclusions and return results. According to the present invention, reasoning may use language messages and support of introduction of speech acts for user interaction.
Here, discourse pseudo natural language reasoning logic makes use of standard first order predicate calculators, also known as first order logic. First order logic is a declarative logic mechanism for knowledge and inference discovery in the context space. Using first order logic, knowledge acquisition and inference are separated, and inference is context space-dependent .
Using standard inference rules, applied to first order logic, entailment can be determined using either forward chaining or backward chaining algorithms for reasoning.
Forward chaining are standard inference rules starting from a' knowledge base and working forward in attempting to derive new inference rules and therefore new conclusions. Further, backward chaining are standard inference rules starting from a goal and attempting to derive inference rules that allows the goal to be achieved.
In the following, a discourse pseudo natural language general algorithm is expressed aiming at a combination of forward chaining and backward chaining reasoning. However, it should be noted that the indication of such a general algorithm is provided for illustrative purpose only and should not be considered as restricting the scope of the present invention.
Function DNLP LOGICOPROCESSOR (percept)' returns result Static kb, /*Knowledge-base, a list of sentences*/ t, /*a counter indicating time*/ state, /*the current state of the environment*/ cs /^interface to a context space*/ result, state=UPDATE_STATE_FROM_CS (cs, kb, state, percept, t) result, kb=FORWARD_CHAIN_UPDATE_JKB(kb, state, result) parse_chart=PARSE SPEECHACT (percent , t) speechact=PRAGMATICS (RESOLVE_SEMANTICS (parse_chart) if speechact==None : return None else if speechact . type () ==Query then result=DO QUERY (BACKWARD_CHAIN__UPDATE_KB (kb, speechact) ) else if speechact .type () ==Assertion then result=DO_ASSERTION (BACKWARD_CHAIN_UPDATE_KB (kb, speechact) ) else if speechact . type () ==Representation then result=DO_REPRESENTATION (BACKWARD_CHAIN_UPDATE__KB (kb, speechact) ) else if speechact .type () ==Acknowledge then result=DO_ACKNOWLEDGE(BACKWARD_CHAINJPDATE_KB (kb, speechact) ) else if speechact . type () ==Interrogative then result=DO__INTERROGATIVE (BACKWARD_CHAIN_UPDATE_KB (kb, speechact) ) result, kb=FORWARD_CHAIN_UPDATE_KB(kb, state, result) return result As outlined above, the present invention is not restricted to a particular type of logic inference and any type of reasoning may be implemented aiming at a weighting of conflicting considerations against competing options to plain some future action and reach a goal . Typical further examples would be means ends decisions, deliberation, and/or intentional systems. A further qualification would be deploying of rule-based inference systems, where elementary rules are made available, giving instructions on how to obtain a result given a set of pre-conditions. For rule-based systems, an interpreter is presented with a final goal in the backward chaining case or data in the forward chaining case, and the inference system attempts to find rules to achieve a final goal and conclude a hypothesis. Yet another example would be a plan-based system as class of systems where elementary actions are pre-assembled into plans which describe in detail how to achieve a given goal. While these systems are less flexible than rule-based systems, they are more efficient as they use a specific type of elementary steps towards a specific goal, e.g., according to interaction protocols for collaborative dialogues.
Fig. 7 shows a flowchart of operation of the apparatus of environmental state analysis, in particular a flow of steps achieved under control of the controller 16 shown in Fig. 6.
As shown in Fig. 7, initially in a step S16, there is achieved an identification of a containment relation and context entry objects of a context space under consideration via the environmental state acquisition and analysis unit 12-1. The there found knowledge is then transformed into a knowledge representation language by the same unit in a step S18. Such transformation may also be related to the operations of the path expression and tree transformation unit 12-2 shown in Fig. 6.
As shown in Fig. 7, during operation of the context-aware application, the controller 16 in combination with the environmental state acquisition and analysis unit 12-1 will continuously evaluate whether additional knowledge and/or reasoning has become available during runtime of the context-aware application. If this is the case, the knowledge representation and/or reasoning representation will be extended in a step S22 followed by an interrogation with respect to the termination of the context-aware application in a step S22 achieved by the controller 16. In the non-affirmative case, the procedure will branch back for continuation of the context-aware application, while otherwise the same will terminate.
Further to the above, it should be noted that the extension of a knowledge representation is achieved by adding further sentences to a knowledge representation language during runtime of the context-aware application or knowledge-based refinement in combination with a state of updating the knowledge base through forward and/or backward chaining.
In view of the above, it becomes clear that the present invention provides an environmental state analysis apparatus and related method implemented into a computer system enabling development of context-aware application for adaptation and modification application runtime behaviour by means of analysis of the state of the environment, using acquisition, transformation, and reasoning, related to perceived environmental states and settings .

Claims

1. Method of environmental analysis in support of a context-aware application with dynamic runtime behaviour, wherein an environment is modelled through a context space expressing a space-based containment relation between spaces of the environment, comprising the steps : - executing context acquisition for the context space using the containment relation, and executing input/output processing during context acquisition using a formal pseudo natural language for user interaction.
2. Method according to claim 1, characterized in that input/output processing is executed during context acquisition with respect to context queries, context assertions and/or context representations.
3. Method according to claim 1 or 2, characterized in that it comprises a step of reasoning about the result of transformation using the formal pseudo natural language for user interaction.
4. Method according to one of the claims 1 to 3 , characterized in that components of the pseudo natural language are grammar and lexicon which may be extended during runtime of the context-aware application.
5. Method according to claim 3 or 4 , characterized in that reasoning about the result of transformation is based on a submitted environmental state and knowledge available from the knowledge representation of the context space.
6. Method according to claim 5, characterized in that the knowledge available from the knowledge representation of the context space is related to at least a previous environmental state and a corresponding previous reasoning result .
7. Method according to claim 5 or 6, characterized in that it comprises a step of feedback of reasoning result and/or environmental state to the knowledge representation of the context space .
8. Method according to one of the claims 1 to 7, characterized in that containment relation between spaces of the environment expresses a hierarchy between spaces of the environment .
9. Method according to claim 8, characterized in that the hierarchy between spaces of the environment is represented using a context space tree graph structure.
10. Method according to claim 9, characterized in that spaces in the environment are modelled through context entry objects describing a content object to model an environmental state, a logic object achieving a predetermined form of processing, and/or space object for sub-spaces contained in the space under consideration.
11. Method according to claim 10, characterized in that a content object models a relevant environmental state that can be observed in the related space.
12. Method according to claim 10, characterized in that a logic object involves performing logic operations at runtime of an application running on top of the context space .
13. Method according to claim 12, characterized in that logic object is a script, code or sequence of instructions.
14. Method according to claim 12 or 13 , characterized in that logic objects perform testing of conditions, changing environmental states, starting or performing or stopping an action in the related space at the runtime of the application running on top of the context space .
15. Method according to claim 10, characterized in that the space object acts as a container for all sub- spaces of a related space.
Method according to one of the claims 10 to 15 , characterized in that context entry obj ects of the space context are administrated in a centralized manner .
Method according to one of the claims 10 to 15 , cha-raete-rized in that context entry obj ects of the space context are administrated in a de-centralized manner .
Method according to one of the claims 10 to 15 , characterized in that context entry obj ects of the space context are administrated in a combined centralized and de-centralized manner .
Method according to one of the claims 1 to 18 , characterized in that exchange of information within the context space modell ing the environment is achieved through an application messaging interface protocol in a peer- to-peer style .
Method according to one of the claims 9 to 19 , cha-racterized in that context acquisition using the containment relation is achieved through a path expression and related path matching for identif ication of at least one context entry obj ect in the space context .
Method according to claim 20 , characterized in that path expression identifies an absolute path .
22. Method according to claim 20, characterized in that path expression identifies a relative path.
23. Method according to one of the claims 1 to 22, characterized in that in comprises the step constructing a knowledge representation of the context space using a set of sentences expressed in a knowledge representation language.
24. Method according to claim 23, characterized in that a sentence represents a declaration about a perceived context space and/or related context entry objects.
25. Method according to claim 23 or 24, characterized in that the construction of the special purpose knowledge representation comprises a step of gathering knowledge on context space to identify containment relation of context space, knowledge on content entry objects, and knowledge on environmental state.
26. Method according to claim 25, characterized in that the construction of the special purpose knowledge representation comprises a step of analysing the gathered knowledge through reading rules for transforming the gather knowledge into an context space compatible representation.
27. Method according to claim 25 or 26, characterized in that it comprises a step of encoding knowledge into sentences of the knowledge representation language.
28. Method according to one of the claims 23 to 27, characterized in that it comprises a step of encoding knowledge related to content entry objects for addition to the knowledge base.
29. Method according to one of the claims 23 to 27, characterized in that it comprises a step of adding further sentences to the knowledge representation language during runtime of the context-aware application for knowledge base refinement.
30. Method according to one of the claims 27 to 29, characterized in that it comprises a step of updating the knowledge base through forward and backward chaining .
31. Method according to one of the claims 9 to 30, characterized in that it comprises a step of transforming the context space tree graph structure according to the view taken on the context space by the context-aware application.
32. Apparatus for environmental analysis in support of a context-aware application with dynamic runtime behaviour, comprising: an environmental state modelling unit adapted to model an environment model as context space expressing a space-based containment relation between spaces of the environment ; and a context acquisition unit adapted to acquire an environmental context using the containment relation; wherein context acquisition unit is adapted to execute input/output processing during context acquisition using a formal pseudo natural language for user interaction.
33. Apparatus according to claim 32, characterized in that context acquisition unit adapted to execute input/output processing during context acquisition with respect to context queries, context assertions and/or context representations.
34. Apparatus according to claim 32 or 33, characterized in that it comprises a logic inference unit adapted to reason about the result of transformation using the formal pseudo natural language for user interaction.
35. Apparatus according to claim one of the claims 32 to 34, characterized in that the logic inference unit is adapted to process grammar and lexicon components of the pseudo natural language which may be extended during runtime of the context-aware application.
36. Apparatus according to claim 34 or 35, characterized in that the logic inference unit is adapted to reason about the result of transformation based on a submitted environmental state and knowledge available from the knowledge representation of the context space .
37. Apparatus according to claim 36, characterized in that the logic inference unit is adapted to process the knowledge available from the knowledge representation of the context space is related to at least a previous environmental state and/or a corresponding previous reasoning result.
38. Apparatus according to claim 36 or 37, characterized in that the logic inference unit is adapted to feedback reasoning result and/or environmental state to the knowledge representation of the context space.
39. Apparatus according to one of the claims 32 to 38, characterized in that the environmental state modelling unit is adapted to express the containment relation between spaces of the environment as hierarchy between spaces of the environment.
40. Apparatus according to claim 39, characterized in that the environmental state modelling unit is adapted to represent the hierarchy between spaces of the environment using a context space tree graph structure .
41. Apparatus according to claim 40, characterized in that it comprises an environmental state memory unit and that the environmental state modelling unit is adapted to model spaces in the environment through context entry objects stored in the environmental state memory, wherein context entry objects describe a content object as model of an environmental state, a logic object as pre-determined form of processing within a space, and/or space object as representation of sub-spaces contained in the space under consideration .
42. Apparatus according to claim 41, characterized in that the environmental state modelling unit is adapted to map a relevant environmental state that can be observed in the related space onto the content object.
43. Apparatus according to claim 41, characterized in that the environmental state modelling unit is adapted to map logic operations at runtime of an application running on top of the context space onto logic objects .
44. Apparatus according to claim 43, characterized in that logic object is a script, code or sequence of instructions .
45. Apparatus according to claim 44, characterized in that logic objects are related to testing of conditions, changing environmental states, starting or performing or stopping an action in the related space at the runtime of the application running on top of the context space .
46. Apparatus according to claim 41, characterized in that the environmental state modelling unit is adapted to map sub-spaces of a given space onto a space object acting as a container for the sub-spaces.
47. Apparatus according to one of the claims 32 to 46, characterized in that it comprises a controlling unit adapted to administrate context entry objects of the space context in a centralized manner.
48. Apparatus according to one of the claims 32 to 46, characterized in that it comprises a controlling unit adapted to administrate context entry objects of the space context in a de-centralized manner.
49. Apparatus according to one of the claims 32 to 46, characterized in that it comprises a controlling unit adapted to administrate context entry objects of the space context in a combined centralized and de- centralized manner.
50. Apparatus according to one of the claims 32 to 49, characterized in that the environmental state memory unit is adapted achieved exchange of information between different content entry objects through an application messaging interface protocol in a peer-to- peer style.
51. Apparatus according to claim 50, characterized in that it comprises a path expression unit adapted to achieve context acquisition using the containment relation through a path expression and related path matching for identification of at least one context entry object in the space context.
52. Apparatus according to claim 51, characterized in that the path expression unit is adapted to identify a path expression as absolute path.
53. Apparatus according to claim 51, characterized in that the path expression unit is adapted to identify a path expression as relative path.
54. Apparatus according to one of the claims 32 to 53, characterized in that the environmental sate acquisition unit is adapted to construct a knowledge representation of the context space using a set of sentences expressed in a knowledge representation language .
55. Apparatus according to claim 54, characterized in that a sentence represents a declaration about a perceived context space and/or related context entry objects.
56. Apparatus according to claim 54 or 55, characterized in that the environmental sate acquisition unit is adapted to gather knowledge on context space to identify containment relation of context space, knowledge on content entry objects, and knowledge on environmental state.
57. Apparatus according to claim 56, characterized in that the environmental sate acquisition unit is adapted to analyse the gathered knowledge through reading rules for transforming the gather knowledge into an context space compatible representation.
58. Apparatus according to claim 56 or 57, characterized in that the environmental sate acquisition unit is adapted to encode knowledge into sentences of the knowledge representation language.
59. Apparatus according to one of the claims 54 to 58, characterized in that the environmental sate acquisition unit is adapted to encode knowledge related to content entry objects for extension of the knowledge base.
60. Apparatus according to one of the claims 54 to 58, characterized in that the environmental state acquisition unit is adapted to add further sentences to the knowledge representation language during runtime of the context-aware application for knowledge base extension.
61. Apparatus according to one of the claims 58 to 60, characterized in that the environmental sate acquisition unit is adapted to update the knowledge base through forward and backward chaining.
62. Apparatus according to one of the claims 40 to 61, characterized in that it comprises a transformation unit adapted to transform the context space tree graph structure according to the view taken on the context space by the context-aware application.
63. Computer program product directly loadable into the internal memory of a environmental sate analysis processor, comprising software code portions for performing the steps of one of the claims 1 to 30 when the product is run on the environmental sate analysis processor.
EP04728550A 2004-04-21 2004-04-21 Environmental state analysis Withdrawn EP1738304A1 (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/EP2004/004226 WO2005104028A1 (en) 2004-04-21 2004-04-21 Environmental state analysis

Publications (1)

Publication Number Publication Date
EP1738304A1 true EP1738304A1 (en) 2007-01-03

Family

ID=34957386

Family Applications (1)

Application Number Title Priority Date Filing Date
EP04728550A Withdrawn EP1738304A1 (en) 2004-04-21 2004-04-21 Environmental state analysis

Country Status (3)

Country Link
EP (1) EP1738304A1 (en)
JP (1) JP2007534068A (en)
WO (1) WO2005104028A1 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090083768A1 (en) * 2007-09-20 2009-03-26 Hatalkar Atul N Context platform framework for aggregation, analysis and use of contextual information
CN114207620B (en) * 2019-07-29 2023-08-15 国立研究开发法人理化学研究所 Data interpretation device, method and storage medium, data integration device, method and storage medium, and digital city construction system

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08129488A (en) * 1994-09-05 1996-05-21 Toshiba Corp Inference method and inference system

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See references of WO2005104028A1 *

Also Published As

Publication number Publication date
JP2007534068A (en) 2007-11-22
WO2005104028A1 (en) 2005-11-03

Similar Documents

Publication Publication Date Title
Domingue et al. IRS-III: A broker-based approach to semantic Web services
Balzer et al. Pitfalls of OWL-S: a practical semantic web use case
Battle et al. Semantic web services ontology (swso)
CN101861581A (en) Network operating system
Modgil et al. Towards characterising argumentation based dialogue in the argument interchange format
WO2005104028A1 (en) Environmental state analysis
Marinos et al. An SBVR framework for RESTful web applications
Botelho et al. Review of content languages suitable for agent-agent communication
Antoniou et al. Proof explanation for a nonmonotonic semantic web rules language
Spanoudakis et al. Modular JADE agents design and implementation using ASEME
Keeney et al. Ontology-based semantics for composable autonomic elements
Netedu et al. A web service composition method based on OpenAPI semantic annotations
Oaks et al. Guided interaction: A mechanism to enable ad hoc service interaction
Peña et al. Web-services based ontology agent
Pastor Fitting the pieces of the Web engineering puzzle
Domingue et al. The choreography model for irs-iii
Botelho et al. Greeks and Trojans Together
Wrona et al. Dynamic Modification of Agent Behaviors Without Disrupting a Running System
Kardas et al. Metamodeling of Semantic Web Enabled Multiagent Systems.
Cimpian et al. Ontologies and matchmaking
Peña et al. Ontology agent based rule base fuzzy cognitive maps
Sierra et al. An Abstract View of Electronic Institutions
Shakshuki et al. A multi-agent temporal constraint satisfaction system based on Allen's Interval Algebra and probabilities
Murtagh Automated Web Service Composition
Cyment et al. Enhancing model-based AOP with behavior representation

Legal Events

Date Code Title Description
PUAI Public reference made under article 153(3) epc to a published international application that has entered the european phase

Free format text: ORIGINAL CODE: 0009012

17P Request for examination filed

Effective date: 20061004

AK Designated contracting states

Kind code of ref document: A1

Designated state(s): DE GB

DAX Request for extension of the european patent (deleted)
RBV Designated contracting states (corrected)

Designated state(s): DE GB

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: THE APPLICATION HAS BEEN WITHDRAWN

18W Application withdrawn

Effective date: 20120329