This application is based upon and claims the benefit of priority of the prior Japanese Patent Application No. 2009-148402, filed on Jun. 23, 2009, the entire contents of which are incorporated herein by reference.
The embodiments discussed herein are related to information processing.
Heretofore, information systems have determined whether or not a condition is satisfied relating to an object or person subject to be processed, relating to various information processes.
For example, a system has been proposed which has combinations of client attribute values, references purchase history information and client attribute information for defined products, and calculates the client frequency of entries in an aggregate chart equivalent to combinations of attributes of clients with purchases, and extracts combinations of significant attribute values of the client frequencies.
Also, for example, a system has been proposed which receives input of a user profile, and selects content that is correlated to the user profile.
Further, for example, a system has been proposed which determines whether or not to communicate access to an object or a screen during display by a user. That is to say, determination is made as to whether or not a notification condition of whether or not to notify access detection, based on the information relating to access such as the user access content, the location of the display device that has been accessed, access detection history information, and access notification history information.
However, with the techniques heretofore, in the case of determining whether or not multiple attribute values relating to an object or person satisfy a condition, arrangements have not been made as to improving processing efficiency.
According to a certain aspect of the invention, an information processing method to verify condition data specifying conditions as to multiple attribute values of an object and attribute values obtained from said object, said information processing method includes verifying processing, by a processor, to obtain a new attribute value after change for an attribute value having the smallest change frequency of attribute values not satisfying the conditions specified by said condition data, and verify whether or not the new attribute value after said change satisfy the conditions of said condition data; and further executing said verifying processing as to other attribute values not satisfying the conditions specified by said condition data in the case that said new attribute value after change for the attribute value having the smallest change frequency satisfies said conditions.
The object and advantages of the invention will be realized and attained by means of the elements and combinations particularly pointed out in the claims.
It is to be understood that both the foregoing general description and the following detailed description are exemplary and explanatory and are not restrictive of the invention, as claimed.
Hereafter, an information system according to an embodiment will be described with reference to the diagrams. (A) A first embodiment of an information system will be described with reference to
According to the first embodiment, the application hands over condition data to a platform, and requests verification of whether or not condition data has been satisfied. The condition data has multiple attribute values relating to an object or person, and conditions as to each attribute value specified therein. The platform obtains the attribute values included in the condition data from the information collecting unit, and determines whether or not the obtained new attribute values satisfy the condition data. Note that the information collecting unit monitors changes to the attribute values specified by the platform, and obtain new attribute values after the change. In the case that the condition data is satisfied, the platform notifies the application that the condition data is satisfied. Thus, the platform provides a function to manage the exchange of information between the application and information collecting unit.
Upon the information to be collected in the information collecting unit having been specified, the information collecting unit notifies new information after changing to the platform each time the collected information changes. For example, the information collecting unit C1 monitors a location sensor. Also, in
In
Similarly, in the case that the platform requests the information collecting unit C2 to collect information relating to the temperature of a certain object, the information collecting unit C2 notifies the platform of the temperature detected each time the temperature detected by the temperature sensor set for each object changes. Also, in the case that the platform requests the information collecting unit C3 to collect information relating to the humidity in the periphery of a certain object, the information collecting unit C3 notifies the platform of the humidity detected each time the humidity detected by the humidity sensor set for each object changes.
Note that the temperature sensor and humidity sensor in the configuration in
Upon the conditions of the condition data specified by the application having been satisfied, the verifying processing unit notifies the application that the specified condition data has been satisfied. For example, the information system in
The processing flow in
Each time a notification indicating a change (3) for one of the values of the information collected with the information collecting unit is received (4), the verifying processing unit reads the attribute values specified with other conditions in the condition data from the attribute value database (5), and executes processing to research (6) whether or not the multiple conditions specified by the application have all been satisfied. Note that the newest values for each attribute are stored in the attribute value database by the information collecting units C1 through C3. For example, the attribute value database stores identifying information to specify an object, and the temperature, humidity, location, and so forth of the object specified with the identifying information.
In the case that the conditions of the condition data specified by the application are satisfied, the verifying processing unit notifies the application that verification of the conditions has succeeded.
A problematic point of the processing in
According to the techniques in
For example, in
We can presume that an environment will be realized in the future wherein numerous sensors and so forth exist with which the information system requests information collection, and a large amount of information is collected in a short interval. In an environment wherein a large amount of information is collected from numerous sensors in a short interval, information showing multiple attribute value changes is notified to the platform. Accordingly, the burden of verifying processing between the attribute values and condition data with the verifying processing unit is thought to increase.
At least the newest attribute values collected by the information collecting unit 50A are stored in the attribute value database 55. The attribute value database 55 can access the platform 11 via the network 71. Accordingly, the platform 11 can read attribute values of the attribute value database 55.
The information collecting unit 50A monitors the attribute values that the sensors monitoring each attribute have detected. For example, the information collecting unit 50A-1 obtains the attribute values relating to a location detected by the location sensor 51. The location sensor 51 is a tag reader indicating the location to position an item by reading an ID of the item from a tag attached to the item, for example. A tag reader may be a reading device for an RFID (Radio Frequency Identification) tag, or may be a barcode reader. The tag reading device reports the location information identifying the location that the device itself has set and the identifying information of the item read from the tag to the information collecting unit 50A-1. Also, the location sensor 51 may include a GPS chip to detect longitude and latitude. The GPS chip is attached to individual objects or people, and only has to report the detected location to the information collecting unit 50A-1. The information collecting unit 50A-1 has a database defining the locations corresponding to longitude and latitude, and only has to define the location of the object of which the position has been detected.
Also, the information collecting unit 50A-2 obtains the temperature of an item detected by the temperature sensor 52. Also, the information collecting unit 50A-3 obtains the humidity in the periphery of the item detected by the humidity sensor 53. The information collecting unit 50A stores the attribute values of the obtained temperature, humidity, and so forth in the attribute value database 55. The temperature sensor 52 or humidity sensor 53 may be attached to each item, for example. Also, the temperature sensor 52 or humidity sensor 53 may be attached in each location that can be detected by the location sensor 51, for example.
Similar to the case in
The verifying processing unit 14 verifies whether or not the attribute values collected by the information collecting unit 50A satisfy the conditions stored in the condition data storage unit 12. When the multiple conditions included in the condition data have been satisfied, the verifying processing unit 14 notifies the application 61 that the multiple conditions included in the condition data have been satisfied.
Compared to the information system in
For example, the information collecting unit 50A records the newest changed attribute value in the attribute value database 55 when a change has occurred to an attribute value detected by a sensor, and holds the changed point-in-time as change information. The information collecting unit 50A aggregates the change information held in the past, computes the change frequency of the attribute value, and notifies the change frequency information storage unit 16.
For example, an aggregate number of pieces of attribute value change information may be converted to a number per time unit to be used, or the number of pieces of change information of the attribute values received within a fixed time from the current point-in-time may be used, as the change frequency of the attribute values thereof. However, the information collecting unit 50A may notify the change information of the attribute values on the platform 11 and the change frequency of the attribute values may be calculated at the platform 11. The platform 11 only has to store the calculated change frequency in the change frequency information storage unit 16.
In the verification of the attribute values and condition data in
The verifying processing unit 14 researches whether or not other multiple conditions included in the condition data have been satisfied when notification of the collected attribute values is received from the information collecting unit 50A requested to collected the attribute values. The processing to research whether or not the condition data is satisfied is called verifying processing. In the information system in
By using the technique in
According to the information system in the first embodiment shown in
Advantages of the information system in
(B) An information system according to a second embodiment will be described below with reference to the diagrams in
According to the second embodiment, as shown in
For example, a tag reader 51A reads identifying information of the item from the RFID, thereby notifying the platform 11 of the location where the item having a read RFID has been placed. A detecting unit of the temperature sensor 52 is attached to the item, for example, and notifies the platform 11 of the measured temperature along with the identifying information of the item. Also, the detecting unit of the humidity sensor 53 is attached to the item, for example, and notifies the platform 11 of the measured humidity along with the identifying information of the item.
From the verifying processing at the shared platform 11, information from the real world is notified to the appropriate application service. An application server 20 processes the notified real world information, in the processing of each application service, and provides appropriate service to the user.
However, the verifying processing of the platform 11 and the relation between the platform 11 and application server 20 according to the present embodiment are examples, and the configuration of the information system is not limited to the present embodiment.
A system configuration according to the second embodiment is exemplified in
With the configuration in
The attribute value frequency information is information indicating the frequency of change of various attributes provided from the information collecting terminal device 50, such as location attributes, temperature attributes, humidity attributes and so forth. The intra-attribute dependency relation chart storage unit 17 defines the dependency relation between attributes. The dependency relation between attributes is information defining that, in the case that the attribute value of one attribute is changed, the attribute values of other attributes are influenced. For example, upon the location of where an item is placed has been changed, the temperature, humidity, and so forth are to be measured anew in the changed location. That is to say, in accordance with the location change, there are cases wherein the attributes relating to the environment is reset. The location attributes and the dependency relation such as attributes relating to the environment are defined in the intra-attribute dependency relation chart storage unit 17.
The verifying processing unit 14 of the platform 11 receives instruction of the condition data from the application, holds this in the condition data storage unit 12, and executes the verifying processing.
The database server 55A has an attribute value database 55. The database server 55A stores the various attribute values notified from the information collecting terminal device 50 in the attribute value database 55. Also, the database server 55A provides the accumulated attribute values to the application server 20 according to request from the application server 20.
The information collecting terminal device 50 serves as the information collecting unit 50A to execute a computer program and monitor changes of the various attribute values. That is to say, upon the attributes that the device itself is responsible for, e.g. the attribute value of the location attribute, changing, the information collecting terminal device 50 accumulates the attribute values thereof in the attribute value database 55. Also, the information collecting terminal device 50 receives Subscribe conditions from the platform 11. The Subscribe conditions include specifications of attributes for the platform 11 to request an announcement of change to the information collecting terminal device 50. Upon attribute values corresponding to the Subscribe conditions changing, the information collecting terminal device 50 notifies the platform 11 that attribute values corresponding to the Subscribe conditions have changed. The Subscribe conditions can also, in different terminology, be called reservation conditions, in the sense of reserving a notification.
According to the configuration in
The CPU 21 executes a computer program expanded to be executable by the memory 22, and provides the function of the application server 20 or the function of the platform 11. The CPU 21 is not limited to one CPU, but may include multiple cores.
The memory 22 stores a computer program that the CPU 21 executes, data that the CPU 21 processes, and so forth. The memory 22 includes a non-volatile ROM (Read Only Memory) and a volatile DRAM (Dynamic Random Access Memory).
The computer program expanded to the memory 22 or the data and so forth processed by the CPU 21 are stored in a hard disk driven by the hard disk drive 23. Instead of the hard disk drive 23, a flash memory or the like such as SSD (Solid State Drive) may be used. The hard disk drive 23 or the external storage devices such as the SSD are connected to the CPU 21 via an interface 23A.
The interface 23A is, for example, an interface for a USB (Universal Serial Bus), IDE (Integrated Drive Electronics), SCSI (Small Computer System Interface), FC (Fibre Channel) or the like.
The display 24 is a liquid crystal display, electroluminescence panel, or the like, for example. The display 24 is, for example, connected to the CPU 21 via the interface 24A. The interface 24A is an interface for a graphics module such as VGA (Video Graphics Array) or the like, or DVI (Digital Visual Interface) or the like.
The operating unit 25 is an input device such as a keyboard, mouse, touch panel, electrostatic pad, and the like. An electrostatic pad is a device that detects user operations made by tracing a flat surface pad with a finger or the like, and is used to control the position and movement state of the cursor on the display 24 according to the user operations. For example, the movement of the user finger is detected by the change in electrostatic capacity of electrodes below the flat surface pad. The operating unit 25 is connected to the CPU 21 through the interface 25A. The interface 25A is a USB interface, for example.
The communication unit 26 is also called an NIC (Network Interface Card). The communication unit 26 is an interface for a LAN (Local Area Network), for example. The communication unit 26 is connected to the CPU 21 via the interface 26A. For example, the interface 26A is an expansion slot to connect the communication unit 26 to the internal bus of the CPU 21.
The detachable memory medium input/output device 27 is, for example, an input/output device such as a CD (Compact Disc), DVD (Digital Versatile Disk), Blu-ray disk, flash memory card or the like. The detachable memory medium input/output device 27 is connected to the CPU 21 via the interface 27A. The interface 27A is an interface for a USB, SCSI, or the like, for example.
Note that the configuration for the information collecting terminal device 50 is roughly similar to the application server 20 shown in
Further, the information collecting terminal device 50 has an interface with the various types of detecting devices. For example, the interface that connects an RFID tag reader or bar code reader or the like which is the location sensor 51 with the CPU 21 may be a USB. Similarly, the interface between the temperature sensor 52 and humidity sensor 53 may be according to the standards of USB, CAN (Controller Area Network), or the like.
First, the verifying processing unit 14 receives the condition data from the application 61 (F1). Conditions for the attribute values relating to the application 61 are specified in the condition data. The attribute value conditions are, for example, (Condition 1) the object identified as identification information=N is placed in warehouse A, (Condition 2) the temperature of the object identified as identification information=N is maintained between T1 degrees and T2 degrees Celsius, and (Condition 3) the relative humidity at the periphery of the object identified as identification information=N is between H1 and H2.
Hereafter, let us assume that the object is specified as identification information=N. Also, the received condition data is maintained in the memory 22. The storage region on the memory 22 holding the received data is equivalent to the condition data storage unit 12 shown in
The verifying processing unit 14 references the attribute value database 55 and identifies the attributes not matching the condition data. In the case there are multiple attributes not matching the condition data, the verifying processing unit 14 references the attribute value change frequency information storage unit 16, and determines the attribute having the smallest change frequency of the attributes not matching the condition data. The attribute having the smallest change frequency is determined from the attribute value change frequency information in the attribute value change frequency information storage unit 16. Note that in the case there is one attribute not matching the condition data, the attribute not matching the condition data is determined as is. The verifying processing unit 14 sets the identifying information to be obtained of the determined attribute value as the Subscribe condition. The verifying processing unit 14 then sends the Subscribe condition to the information collecting unit 50A of the information collecting terminal device 50 which collects the detected value from the detecting sensor of the determined attribute value (F2).
The verifying processing unit 14 awaits announcement from the information collecting unit 50A. In the state of awaiting announcement, the processing of the CPU 21 that executes the processing of the verifying processing unit 14 shown in
Upon receiving the Subscribe condition, the information collecting unit 50A monitors the sensor of the attribute value specified with the received Subscribe condition. When the attribute value detected by the sensor changes, the information collecting unit 50A notifies the verifying processing unit 14 of the changed attribute value. The verifying processing unit 14 receives notification of the attribute value from the information collecting unit 50A through the OS (Operating System) of the application server 20, for example (F3). However, the communication between the information collecting unit 50A and the verifying processing unit 14 may be not via the OS. For example, the attribute value from the information collecting unit 50A may be notified to an input/output interface that the verifying processing unit 14 can read by way of the CPU 21. Upon the notification of the attribute value arriving, the input/output interface may cause the verifying processing unit 14 to interrupt by way of the hardware of the CPU 21. Upon receiving the notification from the information collecting unit 50A, the verifying processing unit 14 sends a cancellation request of the Subscribe condition to the information collecting unit 50A (F4).
Further, the verifying processing unit 14 references the intra-attribute dependency relation chart storage unit 17. Determination is then made as to whether or not the changed attribute value which is included in the received notification has a dependency relation that influences other attribute values. In the case that the changed attribute value which is included in the received notification has a dependency relation as to other attribute values, the other attribute values that are specified in the condition data as to an object having the identifying information N within the attribute value database and that have a dependency relation are rewritten as “value unknown” (F5). The CPU 21 of the application server which executes the verifying processing unit 14 executes the processing in F5 serving as an updating unit.
Next, the verifying processing unit 14 researches the attribute values of other conditions specified by the condition data as to the object of the identifying information N with the attribute value database 55 (F6). Determination is made as to whether or not the condition of the attribute value specified by the condition data satisfies the condition (F7). If there are multiple attributes not satisfying the condition specified by the condition data, the attribute having the smallest change frequency of attribute values is selected from the multiple attributes not satisfied. The verifying processing unit 14 sends the identifying information N as a Subscribe condition to the information collecting unit 50A which monitors the sensor that detects the attribute values of the attribute having the smallest change frequency. The is to say, the information collecting unit 50A returns the control to F2.
On the other hand, if all of the conditions are satisfied in the determination in F7, the verifying processing unit 14 notifies the application 61 of the identifying information N specified in the condition data and the various attribute values included in the condition data (F8). Note that the processing flow is omitted in
Upon receiving the Subscribe conditions from the first process (F10), the information collecting unit 50A stores the received Subscribe conditions in the memory 22 (F11). The Subscribe conditions are, for example, information relating to the identifying information N and the like.
The information collecting unit 50A monitors the information from the sensor that detects the attribute value P for an object of the identifying information N specified with the received Subscribe condition. That is to say, the information collecting terminal device 50A starts a second process to monitor the attribute value P.
With the second process, the information collecting unit 50A detects the change information of the value of the attribute value P (F12). Upon detecting a change to the attribute value from the sensor, the information collecting unit 50A determines whether or not the identifying information of the detected attribute value P matches the Subscribe condition. For example, the location sensor 51 detects identifying information that identifies an object as the identifying information. The information collecting unit 50A determines whether or not the identifying information N specified by the Subscribe condition has been detected with the location sensor 51 (F13). In the case that the identifying information N specified with the Subscribe condition is detected by the location sensor 51, the information collecting unit 50A notifies the verifying processing unit 14 of the sensor value detected. (F14)—
Note that in either case whether or not the determination results of F13 match, the information collecting unit 50A stores the detected attribute values in the attribute value database 55. Also, the information collecting unit 50A updates the attribute value change frequency information storage unit 16. That is to say, the information collecting unit 50A notifies the frequency information managing unit 15 on the application server 20 that the detected value by the location sensor 51 has changed (F15). The second process, i.e. the processing from F12 through F15, is repeatedly executed until the Subscribe condition is deleted.
The information collecting unit 50A receives a cancellation of the Subscribe condition from the verifying processing unit 14 with the third process (F16). The information collecting unit 50A then deletes the Subscribe condition corresponding to the cancellation from the memory 22 (F17). With the cancellation of the Subscribe condition, the second process is stopped, and the information collecting unit 50A stops the processing of F12 through F15 which monitors the sensors. That is to say, even if an attribute value change occurs in the sensor information, notification to the verifying processing unit 14 is not performed due to the stopping in the second process.
<Operation Example of Verifying Processing>
Also, the attribute value change frequency information storage unit 16 stores a temperature change frequency 0.4, humidity change frequency 0.4, and location change frequency 0.05 for the identifying information=ID 004. Note that according to the second embodiment, the change frequency has no unit, and the numerical value indicates a comparative value of relative frequency between the mutual attributes.
Further, with the intra-attribute dependency relation storage unit 17, an attribute which value has changed and an attribute which receive influence from an attribute which value has changed are defined. For example, a standard is defined such as “in the case that the attribute which value has changed is location, the temperature and humidity are rewritten as unknown”. Description will be given below according to the data flow of the information system.
(1) The application 61 sends the condition data to the verifying processing unit 14 (arrow A1). The transmission of the condition data means a request from the application 61 to the verifying processing unit 14 to notify the application 61 when the condition specified by the condition data has been satisfied. As described above, the condition specified in
(2) The verifying processing unit 14 sends the identifying information=ID 004 as a Subscribe condition to the information collecting unit 50A which collects the attribute value having the smallest change frequency of the received conditions (arrow A2). Details of the processing until the Subscribe condition is transmitted will be described below.
The verifying processing unit 14 references the attribute value database 55, and confirms that multiple conditions have not been satisfied relating to the identifying information=ID 004. The verifying processing unit 14 then references the attribute value change frequency information storage unit 16, and of the attributes subject to determination by the conditions specified as to the object of the identifying information=ID 004, the attribute having the smallest change frequency is identified as “location”.
In the example in
(3) Upon receiving the Subscribe conditions, the information collecting unit 50A-1 monitors the sensor information. If the attribute “location” of the object of the identifying information=ID 004 is detected as changed to “warehouse A”, the information collecting unit 50A-1 sends a notification to the verifying processing unit 14 (arrow A3). The notification of the arrow A3 includes information indicating that the attribute “location” of the object of the identifying information=ID 004 has changed to “warehouse A”. Also, the information collecting unit 50A-1 stores the “location” value “warehouse A” in the attribute value database 55 (arrow A4). Also, the information collecting unit 50A-1 requests the frequency information managing unit 15 to update the attribute value change frequency information storage unit 16 (arrow A5).
(4) Upon receiving notification, the verifying processing unit 14 sends a cancellation request of the Subscribe condition to the information collecting unit 50A-1 (arrow A6). The cancellation request is also called unsubscribe. Upon receiving the cancellation request for the Subscribe condition, the information collecting unit 50A-1 deletes the Subscribe condition from the memory 22. Note that the cancellation request only has to include information identifying the Subscribe condition to be cancelled, e.g. identifying information=ID 004 or the like.
(5) The verifying processing unit 14 references the intra-attribute dependency relation chart storage unit 17, and rewrites the attributes “temperature” and “humidity” of the identifying information=ID 004 within the attribute value database 55 as “value unknown”, e.g. “?”. The verifying processing unit 14 reads the attribute values other than the “location” of the identifying information=ID 004 from the attribute value database 55, i.e. “temperature” and “humidity” (arrow A7).
(6) The verifying processing unit 14 verifies the condition data and various attribute values. The description will be continued with reference to
(7) If there are multiple attributes with conditions not satisfied, the verifying processing unit 14 sets the attribute having the smallest change frequency within the multiple attributes with conditions not satisfied as the Subscribe condition. In the case of the example in
(8) Upon receiving the Subscribe condition, the information collecting unit 50A-2 monitors the sensor information of the temperature sensor 51 that measures the temperature of the identifying information=ID 004. If the attribute “temperature” of the identifying information=ID 004 is detected as changing to “20° C.”, the information collecting unit 50A-2 sends a notification to the verifying processing unit 14 (A9). The notification includes the identifying information=ID 004 and detected temperature, e.g. 20° C. Note that in the example in
(9) Upon receiving notification, the verifying processing unit 14 sends a cancellation request of the Subscribe condition to the information collecting unit 50A-2 (arrow A12). Upon receiving the cancellation request of the Subscribe condition, the information collecting unit 50A-2 deletes the Subscribe condition from the memory 22.
(10) In the case that the changed attribute value is humidity, the verifying processing unit 14 confirms from the intra-attribute dependency relation chart storage unit 17 that there is no rewriting of the attribute value database based on the intra-attribute dependency relation chart. The verifying processing unit 14 then reads out the attribute values for conditions other than the “temperature” (i.e. “location”, “humidity”) of the identifying information=ID 004 from the attribute value database 55 (arrow A13).
(11) The verifying processing unit 14 verifies the condition data and various attribute values. The description will be continued below with reference to
(12) If there are any attributes for which the conditions in the condition data are not satisfied, the verifying processing unit 14 selects the attribute relating to the condition having the smallest change frequency therein as the Subscribe condition. In the case of the example in
<Computation Example of Attribute Value Change Frequency Information>
A procedure will be described, wherein, when the information collecting unit 50A detects an attribute value change, this is reflected in the attribute value change frequency information storage unit 16 by the detected attribute value change. According to the second embodiment, the attribute value change frequency information storage unit 16 stores an attribute value change frequency table. According to the second embodiment, computation examples are described for three ways of generating and updating the attribute value change frequency information. The information system may actually use a procedure for any of the computation examples. (Computation Example 1 of Attribute Value Change Frequency Information)
The frequency information managing unit 15 records the current point-in-time in an attribute generating point-in-time of the attribute corresponding to the attribute value change frequency table as an initial value, and writes 0 in the number of attribute value changes (F31). The frequency information managing unit 15 then waits for detection of an attribute value change (F32). Upon receiving announcement of an attribute value change detection, the frequency information managing unit 15 adds 1 to the number of attribute value changes of the attribute corresponding to the attribute value change frequency table (F33). The frequency information managing unit 15 calculates the number of attribute value changes per unit of time from the number of attribute value changes and the amount of time passed from the attribute generating point-in-time to the current point-in-time. The frequency information managing unit 15 then writes the calculated number of attribute value changes in the corresponding attribute field in the attribute value change frequency table as the change frequency (F34). The frequency information managing unit 15 then returns control to F32, and awaits detection of the next attribute value change.
The processing in
The attribute value change frequency table in
The attribute value change frequency table in
Accordingly, the application 61 only has to notify the platform 11 of the condition data such that the attributes of objects specified by multiple pieces of identification information are monitored, with the conditions having identified values for identified attributes as shared conditions. The verifying processing unit 14 of the platform 11 verifies that the attribute values of multiple objects sharing at least one attribute value satisfies the condition of the condition data by similar procedures as the procedures shown in
By selecting an object of a sub-group with the condition of satisfying a condition having an identified value for an identified attribute, a change frequency matching the object of shared attributes can be obtained. This is because, for example, in the case that the target is a person, in some cases the attribute change frequency will differ by gender, occupation, age, and so forth. Also this is because, for example, the attribute change frequency will differ for the attributes of an item, e.g. dimensions or materials. Also, in the case that the object is a plant or animal, in some cases the attribute change frequency will differ by biological attributes.
Note that the attribute value change frequency table in
(Computation Example 2 of Attribute Value Change Frequency Information)
The frequency information managing unit 15 records the current point-in-time in the attribute generating point-in-time of the relevant attribute to the attribute value change frequency table, as an initial value. The frequency information managing unit 15 clears the attribute value change point-in-time record, and writes 0 in the number of change records past a predetermined amount of time. The frequency information managing unit 15 sets a timer to start the processing of F46 and thereafter at a predetermined interval (F41).
The frequency information managing unit 15 awaits detection of an attribute value change (F42). Upon receiving an announcement of attribute value change detection, the frequency information managing unit 15 writes the current point-in-time in the attribute value change point-in-time record of the attribute value change frequency table (F43). Next, the frequency information managing unit 15 deletes the attribute value change point-in-time record of passing a predetermined time T1, and adds the number of deleted records to the number of change records past the predetermined time T1 (F44). The predetermined time T1 may be set as a system parameter of the information system, for example.
Next, the frequency information managing unit 15 computes the change frequency N1 within the most recent predetermined time T1 from the number of attribute change point-in-time records. Also, the frequency information managing unit 15 computes the change frequency N2 as to the attribute value change past the predetermined time T1 according to the amount of time passed from the attribute generating point-in-time 0 to the predetermined point-in-time. The predetermined point-in-time is a point-in-time back in time from the present, by the amount of time T1.
The frequency information managing unit 15 calculates a weighted change frequency of the change frequencies N1 and N2, and writes this in the attribute value change frequency table (F45). The weighted change frequency can be an average weight of the change frequency N1 and the change frequency N2, for example. The frequency information managing unit 15 returns the control to F42, and awaits detection of the next attribute value change. F42 through F45 in
On the other hand, when the timer marks the passing of a predetermined interval, the timer starts a second processing of F46 and thereafter by the frequency information managing unit 15. In the second process, the frequency information managing unit 15 deletes the attribute value change point-in-time record that has passed a predetermined time T1, and adds the number of deleted records to the number of change records past the predetermined time T1 (F47). The frequency information managing unit 15 computes the change frequency N1 within the predetermined time T1 near the number of attribute value change point-in-time records. Also, the frequency information managing unit 15 computes the change frequency N1 as to the attribute value changes past the predetermined time T1 by the amount of time passed, from the number of change records past the predetermined time T1 and the amount of time passed from the attribute generating point-in-time 0 until the predetermined point-in-time. Now, the predetermined point-in-time is a point-in-time back in time from the present, by the amount of time T1.
The frequency information managing unit 15 calculates the weighted change frequency of the change frequencies N1 and N2, and writes this in the attribute value change frequency table (F48). The frequency information managing unit 15 ends the second process, and awaits the starting of the next second process by the timer.
Accordingly, with the processing in
The frequency information managing unit 15 computes the change frequency N1 from the point-in-time 003700 to the current point-in-time. Also, the frequency information managing unit 15 calculates the change frequency N2 from the attribute generating point-in-time=000000 to the point-in-time 003699. The frequency information managing unit 15 calculates an average weighting of the change frequency N1 and change frequency N2. For example, instead of a weighted average, a simple average may be used with the same weighting.
Note that in
(Computation Example 3 of Attribute Value Change Frequency Information)
That is to say, in the processing in
Also, similar to the case in
Also, the change frequency for each attribute value is assumed to have the same change frequency for temperature and humidity, and that the change frequency for the temperature and humidity is eight times the change frequency of the location. The processing in the verifying processing unit 14 researches the attribute value database 55 for the location having the attribute with the smallest change frequency, and finds that the ID 004 item is in warehouse B. The location being in warehouse B does not satisfy the condition. Thus, the verifying processing unit 14 sends a Subscribe condition to the information collecting unit 50A-1 regarding the ID 004 item so that the change in location as an attribute will be detected. Upon sending the Subscribe condition, until the location of the ID 004 item is changed to warehouse A, the temperature and humidity of the ID 004 item changes periodically such as temperature is 21° C., humidity is 50%, temperature is 22° C., and so forth. However, the verifying processing unit 14 does not operate regarding change in the temperature or humidity which is other than the Subscribe condition. That is to say, the verifying processing unit 14 avoids the unnecessary verifying processing executed with the method in
Upon the location of the ID 004 item becoming warehouse A, notification is performed from the information collecting unit 50A-1 to the verifying processing unit 14. At this time, at the verifying processing unit 14, first, the temperature and humidity are rewritten as “value unknown” since there has been a change to location, with the intra-attribute dependency relation chart 17 exemplified in
As described above, with the verifying processing in the second embodiment, an attribute having low change frequency is focused upon, and first, for attribute values not satisfying conditions defined by the condition data, subscribe conditions are notified to the information collecting unit 50A, and notification of attribute value changes are requested in the order of low change frequency. Consequently, unnecessary verifying processing, which occurs with attribute value changes having high change frequency, can be suppressed.
Also, with the information system according to the second embodiment, for example, upon the attribute value change of the location of an object which is an item or person having been detected, the attribute values of temperature, humidity, and so forth have been changed to value unknown according to the dependency relation of the intra-attribute dependency relation chart storage unit 17. Accordingly, with the information system according to the second embodiment, even in the case wherein one attribute value change has been detected at one point and the detected attribute value satisfies the condition data, the other attribute values are reset according to the other attribute value changes, whereby each attribute value can more accurately be determined as to whether or not the condition data is satisfied.
<Modification> According to the second embodiment, a temperature sensor 52, humidity sensor 53, and so forth are provided for each object identified by the identifying information. Instead of the configuration described with the second embodiment, a temperature sensor to detect environmental temperature or a humidity sensor to measure the relative humidity in the environment may be provided for each location that the location sensor 51 can identify. Accordingly, for example, in the case that the verifying processing unit 14 detects location change relating to an object specified by the identifying information, the information collecting unit 50A which monitors the temperature or humidity can then be notified of the Subscribe condition, with the changed location identifying information as the Subscribe condition thereof.
(C) According to the second embodiment, the verifying processing unit 14 focuses on an attribute having low change frequency, sends the subscribe condition to the information collecting unit 50A, and requests notification of the attribute value change. Upon the information collecting unit 50A detecting the change of the attribute value corresponding to the Subscribe condition, a notification is sent to the verifying processing unit 14. Instead of the processing of a detection request for changes by the subscription of the Subscribe condition and an announcement of attribute value changes that match the requested Subscribe conditions as with the second embodiment, a method of polling may be used. In the case of polling, the system configuration is similar to
Also, the configuration of the condition data storage unit 12 that stored the condition data received from the application 61 and the attribute value change frequency information storage unit 16 are similar to the case of the second embodiment. In the case of using polling, the processing of the verifying processing unit 14 and the information collecting unit 50A differ from the case of the second embodiment.
The verifying processing unit 14 is started by a timer with a fixed cycle (F62). Similar to the case in the second embodiment, the verifying processing unit 14 selects an attribute having the smallest change frequency of the attributes that have not yet matched the conditions in the condition data. The verifying processing unit 14 collects the attribute values by polling as to the information collecting unit 50A corresponding to the selected attribute values, until the selected attribute value satisfies the condition (F63, F64).
If the selected attribute value condition is satisfied (YES in F64), the verifying processing unit 14 similarly performs polling for the attribute having the next smallest change frequency of the attributes not yet matching the conditions (NO in F65). If all of the conditions in the condition data are satisfied by polling (YES in F65), the verifying processing unit 14 re-collects the attribute values by the polling from the information collecting unit 50A which corresponds to the attribute values other than the finally matched condition data (F66). The verifying processing unit 14 then confirms that all of the condition data has been satisfied (F67). Upon all of the conditions specified by the condition data being satisfied, the verifying processing unit 14 sends a notification to the application 61 (F68).
According to the processing of the third embodiment, by monitoring the attribute value having the smallest change frequency with polling, the number of time that other attribute values are monitored is decreased, and the sensors can be efficiently operated. Accordingly, for example, various types of detecting devices such as the information collecting unit 50A or the sensors can have reduced power consumption.
<<Computer-Readable Recording Medium>>
A program for a computer or other machine or device (hereafter, computer or the like) to realize one of the functions described above can be recorded in a recording medium that can be read by a computer or the like. By causing a computer or the like to read and execute the program of the recording medium, the function thereof can be provided.
Thus, a recording medium that can be read by a computer or the like refers to a recording medium which can accumulate information such as data or programs with electrical, magnetic, optical, mechanical, or chemical processes, and can read from the computer or the like. Examples of such recording media detachable from the computer or the like include flexible disks, magneto-optical discs, CD-ROM, CD-R/W, DVD, Blu-Ray disk, DAT, 8 mm tape, flash memory, and so forth. Also, examples of a recording medium fixed to the computer or the like include a hard disk, ROM (Read-Only Memory), and so forth.
According to the above-described embodiment, the efficiency of verifying processing between multiple attribute values and conditions can be improved.
All examples and conditional language recited herein are intended for pedagogical purposes to aid the reader in understanding the invention and the concepts contributed by the inventor to furthering the art, and are to be construed as being without limitation to such specifically recited examples and conditions, nor does the organization of such examples in the specification relate to a showing of the superiority and inferiority of the invention. Although the embodiment(s) of the present invention has(have) been described in detail, it should be understood that various changes, substitutions, and alterations could be made hereto without departing from the spirit and scope of the invention.
Number | Date | Country | Kind |
---|---|---|---|
2009-148402 | Jun 2009 | JP | national |