Information processing device, information processing method, and service providing system

JP7668941B2Active Publication Date: 2025-04-25KK TOSHIBA +1
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
JP2024137676
Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Filing Date
2024-08-19
Publication Date
2025-04-25
Estimated Expiration
2041-03-09

AI Technical Summary

Technical Problem

Existing IoT technologies face challenges in enabling seamless cooperation and utilization of multiple devices and services due to manufacturer-specific rules, hindering interoperability and expansion of integrated systems.

Method used

An information processing device and method that utilizes a rule management and control system to manage and display the connection states between IF-THEN rules, including attribute information for devices and services, allowing for easier understanding and utilization of cooperative actions.

Benefits of technology

Facilitates easier understanding and management of device and service cooperation, enhancing interoperability and utilization across multiple devices and services.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 00000023_0000
    Figure 00000023_0000
  • Figure 00000024_0000
    Figure 00000024_0000
  • Figure 00000025_0000
    Figure 00000025_0000
Patent Text Reader

Abstract

To provide an information processing apparatus, an information processing method and a service providing system that can detect an association state by a plurality of devices and services (i.e. modules), report the detection result to a user, and make an association state of the plurality of modules easy to understand to facilitate utilization of the plurality of devices and services.SOLUTION: An information processing apparatus manages a plurality of rule sets for linking and associating functions of a precedent element and a following element. Then connections of the plurality of rule sets can be detected and displayed to facilitate management on the rule sets.SELECTED DRAWING: Figure 18A
Need to check novelty before this filing date? Find Prior Art

Description

[Technical field]

[0001] An embodiment of the present invention relates to an information processing device, an information processing method, and a service providing system. [Background technology]

[0002] Many IoT (Internet of Things) technologies have been proposed that link the actions of objects (devices) in the real world via the Internet. Many manufacturers have their own rules for linking devices. This has led to a slowdown in the use of individual devices that can be linked. [Prior art documents] [Patent documents]

[0003] [Patent Document 1] JP 2019-117587 A [Patent Document 2] JP 2020-024742 A Summary of the Invention [Problem to be solved by the invention]

[0004] Therefore, the present embodiment aims to provide an information processing device, an information processing method, and a service providing system that are convenient for making it easier to understand the collaborative state of multiple devices and services (so-called modules) and for facilitating the use of multiple devices and services. [Means for solving the problem]

[0005] In this embodiment, in an information processing device that manages a plurality of rule sets each including a rule set description in which at least one IF-THEN rule is described, the rule set description of the IF-THEN rule includes first attribute information including at least preceding element identification information of a preceding element that performs a preceding action, and second attribute information including subsequent element identification information of a subsequent element that performs a subsequent action in cooperation with the preceding action, A rule management and control unit is provided, The rule management and control unit By comparing and judging the contents of first attribute information describing an action of the subsequent element of the first rule set and second attribute information describing a detection function of the preceding element of the second rule set, a processor for detecting when execution of the first rule set leads to execution of the second rule set; a processing unit that outputs display data indicating a connection state between the first rule set and the second rule set to a display unit; An information processing device comprising: [Brief description of the drawings]

[0006] [Figure 1A] FIG. 1A is an explanatory diagram showing the basic concept of a system according to this embodiment. [Figure 1B] FIG. 1B is an explanatory diagram showing the configuration of FIG. 1A from a different perspective. [Diagram 2] FIG. 2 is an explanatory diagram showing an example of a function for linking an IF device and a THEN device in an edge computer. [Diagram 3] FIG. 3 is an explanatory diagram that shows a schematic diagram of the relationship between various IF devices and THEN devices and IF-THEN rules that link them. [Figure 4] FIG. 4 is an explanatory diagram showing an example of the configuration of a rule set of IF-THEN rules. [Diagram 5] FIG. 5 is an explanatory diagram showing an example of a description of an IF-THEN rule that can be read by the IF-THEN engine. [Figure 6]FIG. 6 is an explanatory diagram showing an example of a program configuration used in an Android (registered trademark)-based smartphone (an example of an edge computer). [Figure 7] FIG. 7 is a diagram showing a schematic configuration within an edge computer that handles IF-THEN rules and the relationship between this edge computer, a cloud server, an IF device, and a THEN device. [Figure 8] FIG. 8 is an explanatory diagram showing a list of further various functions within the IF-THEN engine. [Figure 9A] FIG. 9A is a diagram showing the logic of an example of an IF-THEN rule. [Figure 9B] FIG. 9B is a diagram showing logic of another example of an IF-THEN rule. [Figure 9C] FIG. 9C is a diagram showing logic of yet another example of an IF-THEN rule. [Figure 9D] FIG. 9D is a diagram showing logic of yet another example of an IF-THEN rule. [Figure 10A] FIG. 10A is a diagram showing logic of yet another example of an IF-THEN rule. [Figure 10B] FIG. 10B is a diagram showing logic of still another example of an IF-THEN rule. [Figure 11] FIG. 11 is a diagram showing logic of still another example of an IF-THEN rule. [Figure 12] FIG. 12 is a flow chart illustrating an example method for detecting rule set conflicts. [Figure 13] FIG. 13 is a diagram showing an example of a display unit that visualizes conflicts between rule sets and explains how to resolve the conflicts. [Figure 14] FIG. 14 is a diagram showing an example of a display unit that visualizes conflicts between rule sets, shows a method for resolving the conflicts, and provides a sequel to FIG. [Figure 15A] FIG. 15A is a diagram showing an example of a display unit that visualizes a conflict between rule sets and explains a method for resolving the conflict. [Figure 15B]FIG. 15B is an explanatory diagram showing an example of adjusting the rule set when the conflict in FIG. 15A occurs. [Figure 16] FIG. 16 is an explanatory diagram showing a display example when adjusting the validity periods of a plurality of IF-THEN rules. [Figure 17] FIG. 17 is an explanatory diagram showing an example of the display on the display unit when stopping a plurality of rule sets individually or all of them. [Figure 18A] FIG. 18A is an explanatory diagram showing a display example in which a cyclic pattern of a plurality of rule sets is detected. [Figure 18B] FIG. 18B is an explanatory diagram showing a display example in which a series type of a plurality of rule sets is detected. [Figure 19] FIG. 19 is a flow chart showing an example for detecting rule sets that form cycles. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

[0007] The basic concept of the system of this embodiment will be described with reference to Figures 1A and 1B. Figures 1A and 1B show the relationship between a cloud server 2 and an edge computer 600. Figure 1A specifically shows the inside of the cloud server 2. Figure 1B specifically shows the inside of one edge computer 600 as a representative. The cloud server 2 and the edge computer 600 are physically configured with a control device, a memory, and a bus connecting these devices, but are shown as functional blocks for ease of explanation. The cloud server 2 and the edge computer 600 are configured to be able to communicate with each other via a network (not shown).

[0008] <Cloud server...Fig. 1A> 1A shows a simplified view of various functions in the cloud server 2 and shows the relationship with each edge computer. The cloud server 2 is also referred to as an ifLink (registered trademark) platform.

[0009] The edge computers 600 (6A-6F) may be installed in transportation vehicles such as trucks, trains, ships, and airplanes, as well as hospitals, factories, apartments, private homes, etc. In addition, various types of facilities may include agricultural facilities, fishing facilities, forestry facilities, schools, parks, etc.

[0010] Edge computers 600 (6A-6F) include, for example, router types, smartphone types, personal computer types, product embedded types, and IC chip embedded types. For vehicles, aircraft, and mobile devices, the IC embedded type is preferable. In addition, Windows (registered trademark), Linux (registered trademark), Android (registered trademark), iOS, etc. are used as interfaces between various devices and services in microservices and edge computers.

[0011] The cloud server 2 has a data unit 250. The data unit 250 stores various data used in the ifLink system. For example, data related to the sensor devices and processing devices (hereinafter sometimes simply referred to as devices) connected to each edge computer 600 (6A-6F) and the service system is stored. Therefore, so-called attribute information (including configuration, characteristics, setting information, etc.) including identification information of the device and service is organized and registered for each device and service. The setting information includes information such as the device's operating period, various restriction information, and usage period, and can also be added or changed.

[0012] Rule data describing rules or rule sets is also stored in the data section 250. The rules and / or rule sets include monitor (or condition) data for judging a detection signal when the detection signal from an IF device is recognized in order to associate devices with each other, and execution (JOB control) data for issuing a control command in response to monitor data that satisfies the condition.

[0013] A rule and / or a rule set associates multiple devices with each other by including attribute information of multiple devices under the rule in a predetermined descriptor. A rule is a rule that instructs the operation mode of a device or the usage mode of a service, and therefore instructs (specifies) device operations (on, off, output, waiting time, reception, extraction, etc.) and service contents (information transmission, display, input, deletion, etc.). A rule may also include attribute information such as device response speed, usage restriction information, replacement time guideline, lifespan information, and expiration date information. Furthermore, the data unit 250 may also store information on recipes (rule usage status described later) and image data corresponding to devices and services.

[0014] The cloud server 2 is further provided with a manager for managing the above specific data, that is, a rule manager 241, a device manager 242, and an account manager 243.

[0015] The rule manager 241 manages a list of various rules and / or rule sets (information indicating specific operations and control contents) in the ifLink system, manages the distribution and storage destination of rules and / or rule sets, and when a rule is added or changed, executes the addition or change process and manages the rule and / or rule set after the change. Therefore, the rule manager 241 can specify the rule and / or rule set in the data section 250, or call it up and modify or change the data forming the rule.

[0016] The device manager 242 monitors the device data in the data section 250 and keeps track of the active devices that realize the IF-THEN rules of the ifLink system. It also checks and manages not only the sensors and devices used in the ifLink system, but also other devices, accepts registrations of new devices, and checks and manages removal of devices. It can also check and manage lists of devices, and the identification data and attributes of each device.

[0017] The account manager 243 manages the accounts of users who use the ifLink system.

[0018] The IF-THEN engine 244 can specify a descriptor that describes the data of the rules and / or rule sets that link the IF and THEN devices. The IF-THEN engine 244 can then build a command function to control one or more devices that specifically execute the rules and / or rule sets based on the descriptor. The descriptor specifies the devices and their attributes, etc., that are stored in the data portion 250.

[0019] Note that rule execution (specific operations) based on the rules and / or rule sets is actually executed in the IF-THEN engine of the edge computer 600 (6A-6F) described later. Therefore, the execution operations of the IF-THEN engine 244 on the cloud may be used for confirmation by simulation.

[0020] The microservice repository 245 is a storage unit (registry unit) of software that functions as an interface when controlling sensors, devices, services, etc. connected to each edge computer. The software includes, for example, an API (Application Program Interface).

[0021] Furthermore, the cloud server 2 includes an application platform 5010. The application platform 5010 is a platform on which various applications can be set, such as those for performing various analyses, data visualization, monitoring and tracking of rule usage status, etc., by utilizing the data in the data unit 250. Therefore, in the application platform 5010, new applications are added as necessary, and unused applications are deleted.

[0022] The application platform 5010 can also perform visualization processing of the linkage state, machine learning, AI (artificial intelligence) learning, analysis of optimal control, and various other analyses using data forming the rules, the usage status (recipes) of the rules, and log information of JOBs. It also has an application that accepts consultations and inquiries regarding the selection of IF devices and / or THEN devices, and constructs data of new rule sets. It includes an application that can accept solutions to consultations and inquiries, and can view modules in IF-THEN relationships. It also has an application that detects the positions of edge computers, modules in IF-THEN relationships, etc. using GPS.

[0023] <Edge computer 600...Figure 1B> Each edge computer (e.g., a smartphone) 600 downloads a rule set to be used at the location where it is installed from the cloud server 2 and stores it. There may be multiple rule sets, or just one rule set. The rule set may be created by the user, or may be a rule set sold or rented by a specialized company. The specialized company may also rent out the rule set via the cloud server 2 for a fee. The usage fee may be set on a monthly or annual basis.

[0024] The rule set is written so that elements (which may be called modules) such as devices and services used in the vicinity of the installation location of the edge computer 600 can be controlled according to the rules. In this case, data that is sucked up (read) into the rules and data that is output based on the rules are read or output via microservices (including application program interfaces (APIs)).

[0025] The rule set describes the attribute information of each device and service (including the identification information of the device or service) in an integrated manner, and is constructed so that each installed device and service can be controlled. There is also an application that controls the entire edge computer 600, and it is called the ifLink application 1000.

[0026] There are several methods available for setting the rule set in the edge computer 600 (when the edge computer is not a smartphone but is incorporated in, for example, a router). For example, a user can download the rule set from the cloud server 2 to, for example, a smartphone (hereinafter referred to as a smart phone) or a personal computer (hereinafter referred to as a PC). The user can install the rule set stored in the smartphone or PC in the edge computer 600 wirelessly or via a wired connection. For example, the smartphone and the edge computer 600 can be connected using a communication system such as Bluetooth (registered trademark) or Wi-Fi (registered trademark).

[0027] As another method, the user can remotely control the edge computer 600 via a smartphone. Then, the user can obtain a state in which the edge computer 600 is connected to the cloud server 2 by using, for example, a uniform resource locator (URL). In this state, the user can cause the edge computer 600 to download a desired rule set from the cloud server 2.

[0028] Various devices 8, such as a sensor 802, a beacon 804, a home appliance 806, a mobile terminal 808 such as a smartphone or tablet, an HMD (head mounted display) 810, and an IoT device 820, are connected to the outside of the edge computer 600. The edge computer 600 can control these various devices 8, and the present system can provide various services to the user. In the case where these various devices are, for example, a temperature sensor, a pressure sensor, a gyroscope, etc., they may be built into the edge computer 600. In addition, all or a part of these various devices may be placed outside the edge computer 600 and controlled by communication. In addition, the present system can transfer and entrust a control signal for starting the THEN device from the edge computer 600 to another edge computer (not shown).

[0029] The edge computer 600 realizes various characteristic functional configurations in combination with the control unit and memory by installing various software (such as the ifLink application and rule set that are installed in advance from the cloud server 2). The functional configurations are shown and explained below.

[0030] The edge computer 600 includes an IF-THEN engine 900. The IF-THEN engine 900 reacts (responds) to the actions of the IF devices and controls the THEN devices according to rules (described as descriptors) prestored in the rule storage unit 700. The basic functions of the IF-THEN engine 900 are the same as those of the IF-THEN engine 244 of the cloud server 2. The IF-THEN engine 900 processes at least information related to this edge computer 600.

[0031] Microservices 80A-80F (dedicated software) that individually control various devices 8, such as sensors 802, beacons 804, home appliances 806, mobile terminals 808 such as smartphones and tablets, head mounted displays (HMDs) 810, and IoT devices 820, are built into the edge computer 600. The IF-THEN engine 900 operates these microservices 80A-80F to execute cooperative operations between the IF devices and the THEN devices. At this time, the IF-THEN engine 900 issues an API (application program interface) command to the microservices 80A-80F to be operated.

[0032] The edge computer 600 may also include an IoT server microservice 80G that controls the IoT service server 220, a GPS microservice 80H that acquires GPS position information obtained from the GPS satellites 230, and a Web microservice 80I that accesses the Web service server 210 to obtain Web services. The GPS functional unit may also include a communication function with RTK-GNSS, which has higher measurement accuracy.

[0033] Specific examples of control of the Web microservice 80I include control to automatically write necessary information into a form element frame specified in HTML (Hyper Text Mark-Up Language), transition control between Web pages, etc. By setting up the activity area of ​​the Web microservice 80I in the edge computer 600 in this way, users can enjoy advanced services such as Web services.

[0034] Furthermore, although not shown, microservices that can individually access any service available in the cyberspace may be placed on the same level as the Web microservices 80I, etc. For example, as examples of services in the cyberspace, user services such as automatic buying and selling of securities (specific stocks), ordering of specific products and automatic transfer of the received product price (billing process), application for purchasing movie or music tickets, and application for reservation of a specific trip may be performed.

[0035] In this way, by making it possible to place microservices that can individually access various services in cyberspace within the edge computer 600, users can enjoy a wide range of collaborative services that connect different services in cyberspace.

[0036] By arranging the microservices 80 (80A to 80F) that control the various devices 8 (802-820) in the same order as the above-mentioned Web microservices 80I, it becomes possible to provide the user with an advanced linked service that seamlessly and seamlessly spans services in the real or physical space (services by tangible objects) and services in the cyberspace (services by intangible objects) using the various devices 8. The "method of combining various services" for providing this advanced linked service can be specified by the rules of the rule storage unit 700. Note that intangible services include treatment methods, calculation methods, information acquisition methods, reservation information, education information, and recommendation information. Therefore, the information processing method described later can be easily applied to a service providing system that provides various services.

[0037] Various data (log data, etc.) obtained when the edge computer 600 provides a service to a user according to the rules in the rule storage unit 700 is managed / accumulated in the cloud server 2 and appropriately stored in the data unit 250. The log data can then be used for various analyses (future collaborative development, analysis of failures, malfunctions, etc.).

[0038] In the cloud server 2 to which data is uploaded from the edge computer 600, Various application services can be executed using various data collected and stored in the data unit 250. For example, specific service contents include: Visualization of collected data Management of collected data - Monitoring the status of the edge computer 600 and various modules (devices, etc.) using collected data and responding to link and operation anomalies Analysis of collected data Optimization of services for users using the ifLink app and optimization of module setting conditions - Information services using information obtained as a result of data analysis Analysis of the relationships between various edge computers etc.

[0039] FIG. 2 shows an example of the relationship between an IF device and a THEN device (IF-THEN cooperation structure) in an edge computer 600 and its functions. As a simple example, a system is assumed in which a temperature sensor 6031 and a human presence sensor 6032 are IF devices, and an air conditioner 6033 and an email creation function (using a personal computer or smartphone) 6034 are THEN devices. Regarding the determination of the operating state (condition) of the temperature sensor 6031, a rule is set so that a temperature microservice 6035 acquires data once per minute, for example. Regarding the determination of the operating state (condition) of the human presence sensor 6032, a rule is set so that a human presence microservice 6036 acquires data once per second, for example. In addition, the cooperation relationship with each sensor is also set as a rule.

[0040] The IF-THEN engine 6040 monitors multiple rules, and if, for example, the temperature exceeds 30 degrees and someone is in the room, it determines that the air conditioner 6033 should be turned on and an email should be created and sent by the email creation function 6034.

[0041] In this operation, the number of executed tasks is 2. The number of executed tasks is transmitted, for example, to the data unit 250 of the cloud server 2, and becomes reference data such as the usage status (also called a recipe). When a new sensor or device related to this edge computer 600 is introduced, the information is also transmitted to the data unit 250 as a log. Also, rules related to the new sensor or device can be added and transmitted to the data unit 250.

[0042] Settings such as the cycle time for acquiring data from the temperature sensor 6031, the human presence sensor 6032, etc. can be set for each device as attribute information of the IF-THEN rule, for example. The function for this setting is incorporated as part of the function of the IF-THEN engine, for example.

[0043] 3 shows examples of IF devices (including IF services) and THEN devices (THEN services) to be detected and controlled based on the rule 6040. As types of sensors, an illuminance sensor 8a31, a temperature sensor 8a32, a humidity sensor 8a33, a gas sensor 8a34, an odor sensor 8a35, a gyro 8a36, an altitude sensor 8a37, a GPS 8a38, an air pressure sensor 8a39, a pressure sensor 8a40, a water leak sensor 8a41, a dust detection sensor 8a42, and a data analysis information unit 8a43 are shown, but are not limited thereto. As the THEN devices (services), home appliances 8b31, building equipment 8b32, factory equipment 8b33, automatic control devices and assist devices 8b34 for transport vehicles, workers, passenger cars, airplanes, etc., cleaning robots 8b35, and various data services 8a36 are shown, but are not limited thereto.

[0044] 4 shows an example of a rule set configuration to explain the basic concept of the rule set. For example, rule set 6s41 has four rules: rule 1 to rule 4. In the figure, IF devices are distinguished and shown as IF1, IF2, IF3, etc., and THEN devices are distinguished and shown as THEN1, THEN2, THEN3, etc. Rule 1 is a rule that links an IF device IF1 and a THEN device THEN1, and when the condition of the IF device IF1 is satisfied, the THEN device THEN1 is activated. Rule 2 is a rule in which the THEN device THEN2 is activated when the conditions of the IF device IF2 and the IF3 device IF3 are met simultaneously. Rule 3 is a rule in which, when the condition of IF device IF4 is satisfied, THEN devices THEN3 and THEN4 are activated. Rule 4 is a rule in which, when the conditions of IF devices IF5 and IF devices IF6 are simultaneously satisfied, THEN devices THEN5 and THEN6 are activated.

[0045] Here, the overall attribute information 6s51 of the rule set includes an overview of the rule set (can be written in text), rule set identification data, and rule set name (can be written in text). In this case, information (identification data) of a microservice corresponding to this rule set may also be present. In other words, the overall attribute information may specify a microservice that is prepared to reflect the rules of the rule set in an external device. Furthermore, rule set priority information, rule set validity / invalidity setting information, and rule set usage environment information may also be present.

[0046] The rule set priority information is information for determining the priority when other rule sets compete, and may be described together with the identification data of other competing rule sets. The rule set valid / invalid setting information is information for setting whether or not the rule set should function. Therefore, by combining with the period information, the valid period and invalid period of the rule set can be set. There may also be rule set usage environment information, which is information describing, for example, a predetermined condition (environmental condition) for adopting the rule set. For example, when the weather is fine, or when the rule set is used in a special facility. The environmental condition may be automatically described by, for example, an edge computer that stores the rule set. Furthermore, attribute information of a specific usage environment, such as a facility, a user, a task, and GPS information, may be described. This attribute information of the usage environment may also be automatically described by the edge computer that stores the rule set, or may be described from outside the edge computer by a user having the edge computer.

[0047] The attribute information of individual rules 6s52 (rules 1, 2, 3, ...) includes the rule name (which can be written in text) and rule identification data. This attribute information may also include rule priority information and rule enable / disable setting information. Similarly to the rule set use environment information, each rule may have its own rule use environment information. In this case, the rule use environment information defines a subordinate concept of the rule set use environment information.

[0048] Furthermore, the attribute information of each IF device 6s53 (IF1-IF6) includes the IF device name (which may be a sensor name or a service name) (can be written in text), the serial number of the IF device, an overview of the IF device (can be written in text), conditions, etc. As conditions, the range of the operation state (detection) of the IF device, thresholds, inhibition time, individual parameters, etc. can be set.

[0049] The operating state (detection) range is, for example, a temperature sensor that transmits a detection output when it detects a temperature range between 20 and 25 degrees, the threshold is, for example, a detection output when it detects 30 degrees or higher, and the suppression time is information that determines how many seconds after detection the detection output is transmitted. With such attribute information, even if the detection output is from the same IF device, if the detection output has different values ​​(different values ​​in the value range or value threshold), it is also possible to specify different THEN devices according to the respective value ranges and value thresholds. Also, even if the same THEN device is used, it is possible to activate different control commands to the same THEN device according to the respective different values ​​input from the IF device.

[0050] The IF device is basically a preceding element that generates an action first, and has attribute information including at least preceding element identification information such as a sensor name and a serial number.

[0051] The attribute information 6s54 of each THEN device includes the THEN device name (which may be a sensor name or a service name) (can be written in text), the THEN device serial number, an overview of the THEN device (can be written in text), and conditions.

[0052] Conditions that can be set include the THEN device inhibition time, sensor name, control target, individual parameters, etc. The inhibition time is information that determines the number of seconds to wait after receiving a detection notification from an IF device before starting a response, or the waiting time to determine whether the operating environment of other THEN devices (or other IF devices) is ready. The sensor name (also called ifparam) is the name or number of the IF device as the corresponding preceding element, and is information that can reliably link with the corresponding IF device. The control object refers to a further specified part or switch within the THEN device. If the control object is described, it is useful when you want to control the current or voltage in the power on state, rather than simply controlling the power on / off of the THEN device.

[0053] The individual parameters are information for generating specific control information, such as specific information for setting an operating range (for example, information for limiting the height of a drone). The attribute information also preferably includes data for identifying the microservice that outputs a command to an external device. This prevents the edge computer 600 from inadvertently controlling devices in other areas. In other words, a microservice can identify the IF devices and THEN devices that it should manage, and therefore does not respond to or control the IF devices and THEN devices under the management of other microservices.

[0054] The THEN device is basically a subsequent element that executes a subsequent action in cooperation with a previous action, and has attribute information including subsequent element identification information such as at least a device name and a serial number.

[0055] Furthermore, the attribute information may include "event-related information." The event-related information is a field for describing the device name, serial number, or summary of the IF device when, for example, the THEN device operates and the operation affects other IF devices. The type of effect may also be described in a character string as an overview. For example, if the THEN device is a device that emits a specific sound, it may affect an IF device that is a sound sensor that is not originally related. Also, if the THEN device is a device that outputs light, it may affect an IF device that is a light sensor. If such a case is known in advance, the user can consider replacing the THEN device or the IF device with another sensor. The event-related information is described in advance by, for example, a manufacturer that sells and provides a rule set, but the user himself may be able to consciously describe it on the edge computer. This enables various uses of the rule set.

[0056] Each piece of attribute information is provided with attribute identification information (which may be called a header) for identification. The rule execution program can read the attribute identification information and determine the type of attribute and whether or not there is attribute information. If the rule execution program determines that attribute information is described, it can confirm and check the attribute contents, and if it determines that no attribute information is described, it will skip checking the attribute information.

[0057] If there is no attribute identification information, the rule execution program judges the contents of the attribute information in sequence according to the order of the attribute description symbols (e.g., deviceserial=, id=, etc.). In the case of attribute information whose contents are not determined, for example, 0000 is written in a predetermined data area following the attribute information header or attribute description symbol. In this case, the judgment and processing of the attribute information is ignored.

[0058] The above attribute information may further include information indicating (or recommending) the space where the rule set is used (scene information where the rule set is adopted), user information using the rule set, information such as themes related to the rule set, etc. as the previous rule set usage environment information. Also, information such as these scene information, user information, and themes may be selectively described within the attribute information of the IF device and within the attribute information of the THEN device.

[0059] Figure 5 shows a simplified example of a specific rule (descriptor) of the rule set 6s42, for example. Regarding the rule set, for example, the following description is made: <rule_set description="outline" id="ID" name="rule set name"> <rule name="”ルール名”" id="”ID”">Next, the following statement about the if set is made: <if devicename="”デバイス名”" deviceserial="”シリアル番号”" dataname="”センサ名”" compare="”範囲指定”" value="”閾値”" description="”概要”" suppress="”抑止時間”" "個別パラメータ” / > The example in the figure shows an example in which two if rules are written. For example, this is a rule similar to rule 2 shown in Figure 4. The device names may be different or they may be the same. When the device is the same, for example, the sensor is a temperature sensor, and temperature detection is assumed when the temperature range (or threshold) is different.

[0060] Next comes the following statement about the then set: <then devicename="”デバイス名”" deviceserial="”シリアル番号”" description="”概要”" suppress="”抑止時間”" ifparame="”センサ名”" control="”制御対象”" "個別パラメータ” / > For simplicity, detailed attribute information as shown in FIG. 4 is omitted here.

[0061] 6 is an external view showing an example of an edge computer 600 and a schematic hierarchy of a program incorporated inside the edge computer 600. The edge computer 600 is an example that employs a program used in, for example, an Android (registered trademark)-based smartphone. The ifLink (registered trademark) widget 1100 displays the status of ifLink.

[0062] Microservices 80A to 80F written in Java (registered trademark) are installed in a lower area of ​​the ifLink application 1000. An IF-THEN engine 900 (see FIG. 7) also operates as part of the ifLink application 1000. A rule storage unit is also used in the ifLink application 1000. That is, the ifLink application 1000 manages the microservices 80A to 80F and the rule storage unit 700 (see FIG. 7) connected to ifLink. When the ifLink application 1000 is started by operating the touch operation unit (operation unit of the ifLink application) of the smartphone screen, the ifLink application 1000 prepares the IF-THEN engine 900 and other functions in the edge computer 600, which will be described next.

[0063] <Outline of the edge computer> 7 shows the inside of the edge computer 600 under the management of the ifLink application 1000. Here, a schematic block configuration of the IF-THEN engine 900 is shown. Further various functions in the IF-THEN engine 900 are shown in FIG.

[0064] When an icon on the display unit 6106 is operated, the ifLink application 1000 starts an activation in the IF-THEN engine 900, and this activation establishes a connection between each unit inside the edge computer 600. The ifLink application 1000 controls the receiving unit 6101, the transmitting unit 6102, the rule storage unit 700, the IF-THEN engine 900, the microservice 80A, and the like in the edge computer 600. Although one microservice 80A is shown, other microservices (not shown) are also provided.

[0065] <Example of managing rule sets used in edge computers> A user who uses the edge computer 600 can download a desired rule set from the cloud server 2. The edge computer 600 can be conceptually called an information processing device. The edge computer 600 can manage a plurality of rule sets.

[0066] The rule set includes a rule set description that describes at least one IF-THEN rule. As described with reference to FIGS. 4 and 5, the rule set description of the IF-THEN rule is as follows: The attribute information includes first attribute information including at least preceding element identification information of a preceding element (a preceding module such as an IF device or an IF service), and second attribute information including subsequent element identification information of a subsequent element (a subsequent module such as a THEN device or a THEN service) that executes a subsequent action in cooperation with the preceding action, Detecting that the preceding element identification information and / or the succeeding element identification information among the different rule sets overlap, and generating display data for the preceding element and the succeeding element of the rule sets in the overlapping relationship, a rule management and control unit 951, and a display control unit 6105 that outputs the display data are included.

[0067] As described above, the rule management and control unit 951 detects overlapping of rule sets using the attribute information of the different rule sets (for example, using the preceding element identification information and / or the succeeding element identification information), and when the overlap is detected, generates display data for the preceding element and the succeeding element of the corresponding rule set description and notifies the display control unit 6105. The display control unit 6105 displays on the display unit 6101 that an overlap has occurred between rules based on the display data.

[0068] Thereby, since the cooperation state by a plurality of devices and services (so-called modules) is easy for the user to understand, it becomes possible to perform rule tuning (adjustment) etc. as necessary, which is convenient for facilitating the use of a plurality of devices and services.

[0069] <Explanation of acquisition of IF-THEN rules and tuning examples> A large number of rule sets are stored in the data unit 250 of the cloud server 2. The user can download a desired rule set from the cloud server 2 and store it in the edge computer 600. Alternatively, the user can apply to the operator of the cloud server 2 for distribution of a desired rule set. The application may be an electronic mail or a paper-based application form. The desired rule set may be one or a plurality. Then, the desired rule set is distributed from the cloud server 2 to the edge computer 600. The distributed rule set is managed by the rule manager 241 in the cloud server 2, and the rule manager 241 can manage the distribution date, expiration date, rental fee, etc. of the rule set.

[0070] The edge computer 600 stores the original rule set in the first storage unit 70A of the rule storage unit 700 via the reception unit 6101. At this time, the rule management and control unit 951 in the IF-THEN engine 900 has a function of checking the original rule set. That is, it detects that the leading element identification information among the different rule sets overlaps and / or the trailing element identification information overlaps, and generates display data for the leading element and the trailing element of the rule sets in the overlapping relationship. Then, the display control unit 6105 (which also serves as the operation input unit) outputs the display data to the display unit 6106. The user can visually confirm the relevance between the rule sets that compete with each other among the plurality of IF-THEN rules on the display unit 6101.

[0071] The rule set has rewritable or writable attribute information, and the user can use this attribute information to assign a priority to any rule set, or set information (valid / invalid) indicating whether to use the rule set or not. In addition, it is also possible to set information such as various constraint (or restriction) conditions (such as operation time and operation period) using the attribute information. This setting information is input from the touch input unit 6106 to the rule management and control unit 951 via the operation input unit 6105.

[0072] The original rule set adjusted as described above is stored in the second storage unit 70B as a customized rule set. Thereafter, the edge computer 600 refers to and uses the customized rule set in the second storage unit 70B. Since a dedicated customized rule set can be stored in the second storage unit 70B, the edge computer 600 can accurately execute the IF-THEN rules intended by the user and can safely and reliably control the control target.

[0073] <Explanation of the operation example using the IF-THEN rule> Next, an example in which the edge computer 600 operates using IF-THEN rules will be described. First, when activation occurs, the rule set used in the edge computer 600 is read from the second storage unit 70B and expanded in the if (condition) condition monitor 952 and the THEN execution management unit 953, and preparations are made for executing the IF-THEN rules. If_set (see FIG. 5) is set in the if (condition) condition monitor 952, and then_set (see FIG. 5) is set in the THEN execution management unit 953.

[0074] Now, when the IF device 8f1 reacts to something, a sensor detection signal is input to the microservice 80A. The microservice 80A provides microservice detection data corresponding to the sensor detection signal to the condition monitor 952 that monitors if (condition). Next, the condition monitor 952 identifies an IF device based on the microservice detection data from the microservice 80A. That is, it can determine which rule set among the multiple rule sets the microservice detection data corresponds to the IF device. This determination is made, for example, based on which microservice the microservice detection data was output from, or, for example, by comparing attribute information (e.g., IF device name, serial number, etc.) included in the microservice detection data with attribute information of the IF device included in each of the multiple rule sets to identify a rule set including matching attribute information.

[0075] The condition monitor 952 communicates this to the rule management and control unit 951 and the THEN execution management unit 953. As a result, the THEN execution management unit 953 first determines the conditions (waiting time, set control contents, etc.) for the THEN device corresponding to the IF device to operate. After this determination, the THEN execution management unit 953 gives a drive command (parameter) to the THEN device to the microservice 80A via the JOB control unit 954. Then, the microservice 80A outputs a control signal to the THEN device, which is a subsequent element corresponding to the IF device as a preceding element. Note that other microservices may be specified depending on the attribute information of the THEN device described in the rule set. This technique is used, for example, when it is desired to control a remote THEN device.

[0076] When executing the above information processing, the THEN execution management unit 953 executes the processing while observing the conditions of the attribute information (e.g., threshold value, inhibition time, etc.) described in the rule for the execution of the If_set rule, and while observing the attribute information (e.g., inhibition time, control target, etc.) described in the rule for the execution of the then_set rule. The THEN execution management unit 953 also provides the JOB control unit 954 with parameters for controlling the THEN device. After this series of operations is completed, the rule management and control unit 951 can upload the rule usage status (recipe) to the cloud server 2 as log data via the log output unit 956 and the transmission unit 6102. The log data includes the destination server ID, the rule set ID, the rule ID, the time when the rule was fired, the terminal (edge ​​computer 600) ID, etc. The cloud server 2 accumulates the log data, and it becomes possible to analyze the usage status and usage time of the rule set in the edge computer 600. The display unit 6106, which also serves as the touch input unit, may be provided outside the edge computer 600 depending on the type of the edge computer 600. That is, as described in FIG. 1A, for example, when the edge computer 600 is a router type, a product embedded type, an IC chip embedded type, or the like, a separately provided display unit may be used. For example, a vehicle or an aircraft is provided with a display unit, and this display unit may be used as the display unit 6106.

[0077] <FIG. 8 shows an overview of various functions in the IF-THEN engine 900. Note that the various functions may be called processing units or processing programs.> Activation 961: A function for establishing a connection with a specific service and a microservice when the IF-THEN engine 900 is started from the service (the display unit 6106, the ifLink application 1000, and the IF-THEN engine 900 cooperate with each other). Rule management control 962: A function for reading out rules stored in advance when the IF-THEN engine 900 is started, constructing an internal state, and also performing rule checks (the rule management and control unit 951 and the rule storage 700 are utilized). Rule execution control 963: A function for extracting rules that match the conditions according to the internal state based on the sensor data notified from the microservice (the macroservice 80A, the condition monitor 952 that monitors if (condition), the rule management and control unit 951, and the THEN execution management unit 953 operate in association with each other, and functions in a state in which a rule set has already been deployed). Sensor data control 964: A function for receiving sensor data notified from a microservice and starting a rule execution control state (macroservice 80A,A condition monitor 952 for monitoring if (condition), a rule management and control unit 951, a rule storage unit 700, and a THEN execution management unit 953 are related to operate, and this is a function for expanding a rule set from now on), · JOB control 965...Notifies the microservice 80A of necessary JOB information based on the rule, · Log output 966...Function for outputting a log according to the log level (related to the THEN execution management unit 953 and the log output unit 965), · Identical event ignorance time control 967...Function for suppressing the occurrence of an action for a set time even if similar sensor data is input (based on the determination of the suppression time by the condition monitor 952), · IF-THEN across other terminals 968...Function for notifying another specific terminal of a JOB and having that terminal execute the JOB (related to the THEN execution management unit 953, the JOB control unit 954, and the mobile terminal microservice 80D (FIG. 1B) device), Rule enable / disable 969: A function for switching on / off a rule specified in THEN in an IF-THEN rule (related to the rule management and control unit 951 and the rule storage unit 700); Execution time control 970: A function for shifting the execution timing of a specific THEN and executing the subsequent THEN after a set fixed time period (related to the THEN execution management unit 953, the JOB control unit 954, and the mobile terminal microservice 80A); Intermediate data holding object 971: A function for holding THEN control data in an intermediate data holding object and inputting it to the IF of another rule (related to the THEN execution management unit 953 and the condition monitor 952); Text matching 972: A function for determining whether an IF input in an IF-THEN rule matches a text (a function of the condition monitor 952; for example, if the IF input is a device name, it is compared with the device name described in the rule); Rule usage status collection 973: A function for periodically notifying the cloud of the usage status (recipe) of IF-THEN rules (related to the rule management and control unit 951 and the log output unit 956); variable passing between IF and THEN 974: A function for passing parameters fired (detected) in IF to THEN (when the control content of THEN differs depending on the parameter (effective for providing a service), related to the condition monitor 952 and the THEN execution management unit 953).

[0078] Furthermore, there are provided:· rule set storage control 975··· a function for acquiring a rule set and controlling the storage location of rules adjusted by the user and rules to be used;· rule conflict check 976··· a function for checking the interrelationships of rule sets and detecting conflicting relationships;· priority setting 977··· a function for setting priorities for rule-based actions among multiple rule sets;· rule set expiration date display 978··· a function for displaying expiration date information when a rule set has an available expiration date;· rule set function stop 979··· a function for temporarily stopping functions based on a rule set;· cyclic rule set check 980··· a function for detecting that multiple IF devices and THEN devices are operating in a cyclic manner in succession due to a rule set;· serial rule set check 981··· a function for detecting that multiple IF devices and THEN devices are operating in a serial manner in succession due to a rule set; and· active GPS area setting 982··· a function for specifying an area in which the rules of a rule set are adopted. By providing this function, it becomes possible to change the operation mode of the controlled object by switching the rule set that the moving object adopts depending on the moving area (moving environment), for example.

[0079] <Typical examples of logic functions realized by rule set descriptors> 9A, 9B, 9C, 9D, 10A, 10B, and 11 show examples of various logical functions realized by the rule set descriptors described above in FIG. 4 and FIG. 5.

[0080] 9A is an example of a rule set RSE1 having a rule that the THEN device 1 starts or stops depending on whether the IF device IF1 is on or off. In this case, the rule set RSE1 may have a delay setting function DL. The delay setting function DL is a function that is realized by describing operation delay time information in the attribute information of the rule set RSE1.

[0081] The rule set RSE2 shown in Fig. 9B is an example having a rule that the THEN device 2 is started or stopped depending on whether the IF devices IF2 and IF3 are simultaneously on or off (or either one is off). In this case, the rule set RSE2 may also have a delay setting function DL. By providing a delay setting function DL for covering the time difference between the detection timings of the IF devices IF2 and IF3, it is possible to cover the variation in the response characteristics of the multiple IF devices and to synchronize the detection timings of the devices. This makes it possible to make the operation of the THEN device 2 more accurate.

[0082] 9C has a rule for starting or stopping two THEN devices 3 and 4 according to the on / off state of an IF device IF4. In this case, too, if you want to synchronize the start or stop of THEN device 3 and THEN device 4 or give them a time difference (shift operation), you may provide a delay setting function DL (describe operation delay time information in attribute information) in the rule set RSE3.

[0083] 9D is an example having rules for starting or stopping THEN device 5 and THEN device 6 depending on whether IF devices IF5 and IF6 are simultaneously on or off (or either one is off). In this case as well, if there is a time difference in the detection output due to differences in the characteristics of IF devices IF5 and IF6, a delay setting function DL can be provided to adjust the operations of THEN device 5 and THEN device 6, such as by synchronizing the operations or shifting the operations.

[0084] 10A is a device that obtains a detection output that changes analogically between on and off, or between on and off, such as a thermometer, hygrometer, blood pressure monitor, pulse monitor, etc. In such a case, in the rule set RSE11, when the IF device IF11 turns on and its output starts to change, the THEN device 11 can perform control such as changing the volume or changing the light (brightness or color) according to the change value.

[0085] The rule set RSE11 has multiple "if statements" with multiple ifs (i.e., multiple conditions) set in an if_set in order to detect various changes in the IF device, and also has "then statements" corresponding to the multiple "if statements" in a then_set.

[0086] Fig. 10B shows a rule set RSE12 which is basically a combination of the example shown in Fig. 9B and the example shown in Fig. 10. According to this rule set RSE12, when the IF devices IF12 and IF devices IF13 operate simultaneously, the control state of the THEN device 12 changes in response to this simultaneous operation.

[0087] The example of FIG. 11 is an example in which the rule set RSE20 can control, for example, an IF device IFKX or a THEN device THENX through a microservice 80K that is different from the base microservice 80J. This rule set RSE20 is described so that in a normal operation mode, the THEN device THEN20 operates according to an output value from the IF device IF15. The IF device IF15 and the THEN device THEN20 are connected to the microservice 80J. The THEN device THEN20 can provide feedback information to the IF device F15. For example, as a functional example, there is an example in which the output level of the IF device IF15 (light detection) changes according to the amount of light output by the THEN device THEN20. And usually, the output of the THEN device THEN20 is fed back to the IF device IF15 to maintain a stable state.

[0088] However, the rule set RSE20 is written so that if a specific condition is detected from the output of the IF device IF15 (for example, if a specific range of values ​​is detected), it can control the IF device IFKX or the THEN device THENKX via a specified microservice 80K.

[0089] 12 shows a processing routine for checking whether or not a conflict occurs among multiple rule sets. When multiple rule sets are required in the edge computer 600, the rule sets are downloaded from the cloud server 2 and temporarily stored in the first storage unit 70A of the storage unit 700. Then, the rule management and control unit 951 checks whether or not there is, for example, a conflicting rule set among the multiple rule sets, and the rule set to be actually used is selected by the user and stored in the first storage unit 70B.

[0090] 12, when a conflict check between rules is started (SA11), the rule management and control unit 951 temporarily stores the multiple rule sets in the first storage unit 70A in a working memory (SA12). Next, by performing a rule set round-robin process, duplication of the identification information of the IF device and the identification information of the THEN device is detected between the multiple rule sets (SA13).

[0091] If an overlap is detected, the rule management and control unit 951 outputs display data for the IF device and the THEN device of the overlapping rule set. This display data is displayed on the display unit 6106 via the display control unit 6105 (SA14).

[0092] In this state, the user can deal with the conflict. For example, if two rule sets conflict, it is possible to cancel one of the rule sets or to set a priority order (SA15). To facilitate the user's operation, advice may be given by voice and / or display (SA16). When the user has finished dealing with the conflict between rule sets (the user operates the enter button), the process ends.

[0093] The conflict check processing program can also detect cases where, for example, two rule sets each use the same IF device (such as a temperature sensor) but control different THEN devices (two air conditioners). For example, a case can be assumed where a first air conditioner and a second air conditioner are required in a first area and a second area, where the cooling and heating setting ranges controlled according to temperature are different. It is also possible to detect cases where two rule sets each employ different IF devices (a motion sensor and an illuminance sensor) and control the same THEN device (lighting).

[0094] 13 shows an example of a conflicting state of rule sets displayed on the display unit. In this case, an example of a conflict between rule sets 1, 2, and 3 is shown. In this rule set, the IF device is a human sensor, and the THEN device is an air conditioner.

[0095] Each rule set is written by a different person, and, for example, the temperature control range (temperature setting contents) is different as the setting contents.

[0096] When rule management and control unit 951 detects an overlap of rule sets, it displays the overlapping rule sets so that the user can see them. The illustrated example shows an example where three rule sets overlap, indicating that there are three conflicts (display area 6213). Also, an advice button is displayed (display area 6211) to start advice in the case of overlap by voice or image. If the user wishes to make adjustments between the rule sets, they can operate the adjustment button (display area 6211) to move to the next step (from (A) to (B) in FIG. 13).

[0097] At this stage, if you wish to cancel any unnecessary rule sets, you can do so by operating the "OFF" button ((A) in FIG. 13) next to the display position of each rule set.

[0098] When making adjustments, the user operates the adjustment button (display area 6211). This causes mode buttons (display area 6215, display area 6216) to appear for selecting whether to set priorities or operating time periods (FIG. 13(B)). In addition, next to each rule set 1, 2, 3, selection buttons 1, 2, 3 are displayed for selecting when setting priorities or when setting operating time periods. These selection buttons 1, 2, 3 are used as will be described in the next FIG. 14.

[0099] FIG. 14 shows two cases in the same figure: when the user selects the button for setting the priority (display area 6215) and when the user selects the button for setting the operating time period (display area 6216). When the user operates the priority setting button (display area 6215), an image 6220 is displayed. The user can select and set the ranking characters such as 1st, 2nd, 3rd, etc. in the display area to the right of each of the displayed rule sets 1, 2, and 3. For example, the user selects an arbitrary rule set with the selection button to the right of it, for example, to make it blink, and then selects one of the rankings 1st, 2nd, or 3rd in the image 6220. This determines the priority of the rule set. In this manner, the priority of each rule set is determined. It is also possible to set the operation time for each rule set. When the user selects the button (display area 6216) for setting the operation time, a display image 6221 is displayed. Next, the user can set the operation time in the display area to the right of each of the displayed rule sets 1, 2, and 3. For example, the user can specify any rule set 1, 2, or 3 in the display image 6221, and set the operation time in the time setting area corresponding to the specified rule set.

[0100] The above images 6220 and 6221 are displayed, for example, in the lower region of the display unit 6106 when an operation mode (priority order) or (operation time zone) is selected.

[0101] FIG. 15A shows an example in which the IF devices are different sensors (for example, a human sensor and an illuminance sensor) and two rule sets that control a common THEN device (for example, an illuminator Y1) compete with each other. In such a case, the user assumes that the rule set 1 is described so that the illuminator Y1 responds to the human sensor, and the rule set is described so that the illuminator Y1 responds to the illuminance sensor. In this case, as described above, the user can set different response time periods for the rule set 1 and the rule set 2. Alternatively, the setting shown in FIG. 15B is also possible. The rule set 1 turns on the light when it detects that a person is present in the room, and adjusts it to "indefinite" when the person is absent. In other words, the rule set of this system also allows the setting of "no reaction" to the output of the sensor. On the other hand, the rule set 2 is set to turn on the light when it detects that the illuminance sensor is dark, and to turn off the light when it detects that the illuminance sensor is bright. In addition, the example shows a case in which the rule set 1 is set to have a higher priority than the rule set 2.

[0102] By configuring in this way, when the motion sensor does not detect a person, rule set 2 operates, and when the surroundings are dark, the lights are turned on, and when the surroundings are bright, the lights are turned off. In other words, by incorporating the concept of "indefinite" into the rule set, it is possible to realize IF-THEN rules with a wide range of versatility. It goes without saying that the above-mentioned general check functions are executed when an IF device or THEN device is replaced, a new one is added, or a rule set is added or replaced. When such a device is replaced or an additional rule set is replaced or added, a message is output to the user to perform the various checks described above.

[0103] 16 shows an example in which the expiration date of a rule set employed in an edge computer is displayed when the "Expiration Date Button" is touched in a menu display state of the edge computer 600. In particular, the cloud server 2 can manage billing information related to the rule set, rental expiration date information (expiration date information) of the rule set, and the like. For this reason, the cloud server 2 can transmit a notification related to the "expiration date" of the rule set to the edge computer 600. When the user operates the "Expiration Date Button" via the menu screen, the expiration date of each rule set is displayed by the function of the IF-THEN engine 900.

[0104] Various display methods are possible, but in the example shown in the figure, a list of multiple rule sets managed by the edge computer 600 is displayed. For example, an example is shown in which rule sets (A, B), (C, D), (E, F), and (G, H) are displayed. (A, B), (C, D), (E, F), and (G, H) are shown as symbols, but symbol marks, images, or device names of the IF and THEN devices are displayed. Expiration dates are displayed next to the rule sets.

[0105] In the example shown in the figure, the expiration dates for (A,B), (C,D), (E,F), and (G,H) are set to "December 31, 2025", "December 31, 2026", "September 30, 2023", and "March 31, 2024". Here, an extension button for extending the expiration date is displayed on the screen.

[0106] If the user selects the extension button here, a message such as "You can extend the expiration date. Select the ruleset you want to extend and change the expiration date" will be displayed, or they will be guided by voice. The user touches the display position of the ruleset for which they want to change the expiration date to select it. The expiration date next to it will then become editable, and it can be changed to any date. For example, a count-up button and a count-down button for the expiration date will be displayed, and the user can select a button to edit the numbers (year, month, date). When editing is complete, the user can confirm the numbers by touching the enter button.

[0107] Some rule sets are provided for a fee. For example, when an important security device is borrowed, or when explanatory data is related to the rental service of an expensive work of art, etc. When the validity period is changed, the expiration information of the rule set, log information of the usage period, etc. are automatically uploaded to the cloud server and used as billing information for the user.

[0108] Of course, the above-mentioned expiration date may be adjusted on a group basis or on a distributor basis of the ifLink rule.

[0109] FIG. 17 shows an example of a screen display used when temporarily suspending operation according to a rule set being used.

[0110] This display is displayed when the rule set pause function of the IF-THEN engine 900 is activated. When the edge computer 600 is in a menu display state, the user can touch the "rule set pause function." Then, for example, multiple rule sets used by the edge computer 600 are displayed as shown in FIG. 17. Also, by swiping or flicking the screen, other rule sets can be scrolled and displayed.

[0111] In this case, the symbol mark, image, or device name of the IF device or THEN device is displayed in the display frame of the IF device or THEN device. A setting button is displayed next to the rule set. The user can touch the setting button to set the corresponding rule set to on or off.

[0112] For example, there may be cases where a specific basic rule set (e.g., an IF-THEN rule for emergency warning such as fire detection or for maintaining power supply) is turned on, and some other rule sets are turned off to replace or repair a device for which a rule set is turned off. Of course, an operation button for temporarily stopping all rule sets may be provided. For example, this is effective when temporarily stopping a production line in a factory to repair or inspect the production line.

[0113] 18A and 18B are explanatory diagrams showing display examples in which cyclic and serial types of multiple rule sets are detected.

[0114] In FIG. 18A, rule set 1 controls a light sensor (IF device) and lighting (THEN device), and can turn on the lighting when the room is dark. Rule set 5 controls a light sensor (IF device) and a motor (THEN device) that closes the curtains to darken the room. This rule set 5 closes the curtains to darken the room when it becomes bright. However, rule set 1 turns on the lighting when the room is dark to brighten the room. This results in a cyclical room brightness control state.

[0115] In such a case, the user can make an adjustment to cancel the rule set connection. The adjustment methods include, for example, the following: 1a) Turn off one of the rule sets, 2a) Change the type of IF device. For example, change the IF device of rule set 1 to a human sensor (not a light sensor).

[0116] Moreover, rule set 4 is a rule that sounds a chime when the front door is opened, and the THEN device outputs the chime sound. Rule set 7 has a sound detection sensor (IF device) and controls a remote controller (THEN device) to automatically turn on the television when the chime sound is detected. Here, rule set 11 is a surveillance system in which an alarm device (THEN device) issues an alarm and locks the door when a surveillance camera (IF device) detects a human figure by the window.

[0117] If such a rule set existed, for example, if the image of a television screen was reflected on the window glass, the door might remain locked indefinitely.

[0118] In such a case, the user can make adjustments to cancel the rule set connections. Possible adjustment methods are, for example, the following: 1b) Turn off one of the rule sets, 2b) For example, change the IF device of rule set 7 from a sound detection sensor to a human presence sensor, change the direction of the TV, or put up curtains on the windows.

[0119] FIG. 18B shows an example of a case where a serial type is detected. Rule set 2 is a rule that sounds a chime when the door is opened, and uses a door open / close sensor (IF device) and a chime sound output device (THEN device). Rule set 6 is a rule that turns on the lights when a chime sound is detected, and includes a chime sound sensor (IF device) and a light switch control device (THEN device). Rule set 8 is a rule that turns on the TV when the lights become bright, and includes a light sensor (IF device) and a remote controller (THEN device). Rule set 10 is a robot that picks up voice and retrieves a response corresponding to the voice command from an intelligent cloud server. In the above example, rule sets are connected one after another, resulting in a serial rule. In such a case, the user can make adjustments to cancel the rule set connections. Possible adjustment methods include, for example, 1c) turning off one of the rule sets, 2c) changing the IF device of rule set 8, for example, from a light sensor to a human sensor, and moving the robot to another room.

[0120] 19 shows an example of a flowchart for detecting rule sets that form a loop as described above. When detection of a loop-type rule set is started (SB11), first, multiple rule sets in rule storage unit 70A are temporarily stored in a working memory (SB12). Next, when the THEN device of the first rule set is executed, a check is made to see if the IF device of the second rule set reacts (SB13).

[0121] This check uses information such as "summary" described as attribute information of the THEN device. In "summary", the characteristics of the THEN device are described as text information. Therefore, it is possible to describe the name and characteristics of a sensor that may react when the THEN device operates. Alternatively, information that links rule sets with other rule sets may be specially defined as event-related information, and added and described somewhere within the rule set.

[0122] The method of detecting the rule set circulation type is not limited to the above example. For example, a method of detecting nodes (IF devices and THEN devices) that exist in a circulation manner from a combination of multiple rule sets may be used. There are various types of information that can be used to detect nodes that exist in a circulation manner. For example, information indicating the performance and functions of various devices is described in the device's instruction manual. Therefore, the check program may learn the instruction manual in advance, and a database may be prepared that accumulates pattern information in which the operation of a TEHN device causes the operation of an IF device. The check program may be prepared in a cloud server. The edge computer may then download and use the check program.

[0123] Furthermore, as a method of detecting a cyclic type, a state (e.g., sound production, light emission, movement, rotation, etc.) caused by the operation of the THEN device may be defined in advance (e.g., described in a rule set), and whether or not this state causes a reaction (fire) of the IF device (whether or not it matches the detection conditions of the IF device) may be determined to detect whether or not the cyclic type is present.

[0124] If it is determined in step SB13 that the first rule set and the second rule set are linked, display data showing the link between the first rule set and the second rule set is created (SB14). If it is determined that the first rule set and the second rule set are not linked, a determination is made as to whether or not the exhaustive check of all rule sets has been completed (SB15). If not, the next rule set in rule storage unit 70A is read and the process in step SB13 is executed.

[0125] When the above-mentioned check (check for the presence or absence of linkage between rule sets) by exhaustively testing all rule sets is completed, display data is created that organizes the multiple linked rule sets (SB17). That is, display data is generated that can obtain an image that shows the circulation of rule sets as shown in Fig. 18A. Examples of the display results of this display data are shown in Figs. 18A and 18B above, but the present invention is not limited to such shapes and formats. Explanations may also be given by audio output.

[0126] Basically, the display data for the rule sets that form a cycle is displayed on the display unit (SB18). Next, the user adjusts the rule sets, and the attribute information of the rule sets is edited in accordance with these adjustments (SB18). Then, it is determined whether the adjustment of the rule sets that form a cycle has been completed (SB19), and if the adjustment has been completed, the process ends.

[0127] The in-line detection can be performed in the same manner as the above-mentioned circulation detection.

[0128] (1) As described above, the information processing device is an information processing device that manages a plurality of rule sets each including a rule set description in which at least one IF-THEN rule is described. The rule set description of the IF-THEN rule includes first attribute information including at least preceding element identification information of a preceding element (preceding module such as an IF device or an IF service) that performs a preceding action, and second attribute information including subsequent element identification information of a subsequent element (subsequent module such as a THEN device or a THEN service) that performs a subsequent action in cooperation with the preceding action (FIGS. 4 and 5). The information processing device has a rule management and control unit <rule management and control unit 951 in the IF-THEN engine 900 in FIG. 7> that detects whether the preceding element identification information between different rule sets is duplicated and / or whether the subsequent element identification information is duplicated. The information processing device has a display control unit <6105 in FIG. 7> that outputs display data of the preceding element and the subsequent element of the rule sets that are in the overlapping relationship when the overlap is detected. (2) The plurality of rule sets include a plurality of original rule sets and a plurality of customized rule sets, and the rule management and control unit 951 The original rule is stored in a first storage unit 70A, The rule management and control unit 951 further includes a processing unit <975 in FIG. 8> that adjusts a definition of a part of the original rule and stores the result as the customized rule in the second storage unit 70B. (3) The rule management and control unit 951 further includes a check processing unit SA13 that checks for conflicts between the multiple rule sets in order to detect whether the preceding element identification information and / or the following element identification information between the different rule sets are duplicated, as described in FIG. 12. The rule management and control unit 951 further includes a display data output processing unit SA14 that converts the multiple conflicting rule sets into display data and outputs the display data. The conflict state is displayed, for example, as shown in FIG. 13. (4) The rule management and control unit 951 further includes a processing unit that includes, in the display data, data for displaying a priority setting image for setting priorities between rules in association with images of the multiple conflicting rule sets, as described in FIG. 14 and FIG. 15A. (5) Furthermore, as described in Fig. 14 and Fig. 15B, the rule management and control unit 951 is capable of inputting constraint condition information for the operation of the succeeding element and the preceding element of the conflicting multiple rule sets in a state where the display data of the conflicting multiple rule sets is displayed on a display unit. (6) Furthermore, the rule management and control unit 951 includes a processing unit that displays the display data of the multiple rule sets on a display unit, and a processing unit that changes the expiration date of the multiple rule sets via an operation processing unit of the display unit, as described in Fig. 16. (7) Furthermore, the rule management and control unit 951 includes a processing unit that displays the display data of the multiple rule sets on a display unit, and a processing unit that makes it possible to set the suspension of each or all of the multiple rule sets via an operation processing unit of the display unit, as described in Fig. 17.(8) As described in Fig. 18A and Fig. 18B, the rule management and control unit 951 further includes a processing unit that detects that the execution of the first rule set leads to the execution of the second rule set by comparing and judging the contents of the first attribute information that describes the action of the subsequent element of the first rule set and the second attribute information that describes the detection processing unit of the preceding element of the second rule set, and a processing unit that outputs display data indicating the connection state between the first rule set and the second rule set to a display unit. (9) The idea of ​​the above embodiment can be adopted and applied not only between an IF device and a THEN device, but also between an IF service and a THEN service, or between an IF device and a THEN service, or between an IF service and a THEN device. (10) Although the above idea has been described as an information processing device, it can also be adopted as an information processing method. (11) The above description of the embodiment has been given in terms that are familiar to the coordinated operation of tangible preceding and succeeding elements, but it goes without saying that intangible services, such as treatment methods, calculation methods, information acquisition methods, reservation information, educational information, and recommendation information, may also be applied as preceding and succeeding elements. Therefore, when the system of this embodiment is actively used for intangible services, it may be expressed as follows. That is, In a system for managing a plurality of rule sets each including a rule set description in which at least one IF-THEN rule is described, the rule set description of the IF-THEN rule includes first attribute information including at least preceding element identification information of a preceding element (IF service) that performs preceding provision, and second attribute information including subsequent element identification information of a subsequent element (THEN service) that performs subsequent provision in cooperation with the preceding provision (FIGS. 4 and 5). The system has a rule management and control unit <rule management and control unit 951 in the IF-THEN engine 900 in FIG. 7> that detects whether the preceding element identification information between different rule sets is duplicated and / or whether the subsequent element identification information is duplicated. The system has a display control unit <6105 in FIG. 7> that outputs display data of the preceding element and the subsequent element of the rule set that are in the overlapping relationship when the duplicated information is detected. This concept includes the above-mentioned concepts 2) to 8). (12) It goes without saying that the above-mentioned embodiment can also be adopted as an information processing method and / or an information processing program. That is, 1. An information processing method or a contingency processing program for processing a plurality of rule sets, each of which includes a rule set description describing at least one IF-THEN rule, comprising: The rule set description of the IF-THEN rule includes first attribute information including at least preceding element identification information of a preceding element (IF device or IF service) that performs preceding provision, and second attribute information including subsequent element identification information of a subsequent element (THEN device or THEN service) that performs subsequent provision in cooperation with the preceding provision (FIGS. 4 and 5). The system is further equipped with a function to detect (or instruct) that the preceding element identification information and / or the subsequent element identification information between different rule sets are overlapped (rule management and control unit 951 in IF-THEN engine 900 in FIG. 7). When the overlap is detected, the system is further equipped with a function to output (or instruct) display data of the preceding element and the subsequent element of the rule sets that are in the overlapping relationship (6105 in FIG. 7). This concept includes the above-mentioned concepts 2) to 8), The above explanation describes the concept from the perspective of conflict checking, but in this embodiment, it is also possible to describe the concept based on the feature that the rule set adopted in the activity area is switched, or to describe the concept based on the circular extraction function.

[0129] Although an embodiment of the present invention has been described, this embodiment is presented as an example and is not intended to limit the scope of the invention. This novel embodiment can be implemented in various other forms, and various omissions, substitutions, and modifications can be made without departing from the spirit of the invention. This embodiment, its modifications, and combinations of the embodiments are also included in the scope and spirit of the invention, and are included in the scope of the invention and its equivalents described in the claims. [Explanation of symbols]

[0130] 2···Cloud server, 8···Device, 600···Edge computer, 6105···Display control unit / operation input unit, 700···Rule storage unit, 900···IF-THEN engine, 1000···ifLink application, 951···Rule management and control unit, 952···Condition (if) monitor, 953···THEN execution management unit, 954···JOB control unit.< / rule>

Claims

1. In an information processing device that manages a plurality of rule sets, each of which includes a rule set description in which at least one IF-THEN rule is described, the rule set description of the IF-THEN rule includes first attribute information including at least preceding element identification information of a preceding element that performs a preceding action, and second attribute information including subsequent element identification information of a subsequent element that performs a subsequent action in cooperation with the preceding action, A rule management and control unit is provided, The rule management and control unit By comparing and judging the contents of first attribute information describing an action of the subsequent element of the first rule set and second attribute information describing a detection function of the preceding element of the second rule set, a processor for detecting when execution of the first rule set leads to execution of the second rule set; a processing unit that outputs display data indicating a connection state between the first rule set and the second rule set to a display unit; An information processing device comprising:

2. The plurality of rule sets include: There are multiple original rule sets and multiple customized rule sets, The rule management and control unit storing the original rule set in a first storage unit; a processing unit that adjusts a definition of a part of the original rule set and stores the adjusted definition as the customized rule set in a second storage unit; 2. The information processing device according to claim 1.

3. An information processing method for an information processing device that manages a plurality of rule sets, each of which includes a rule set description in which at least one IF-THEN rule is described, comprising: the rule set description of the IF-THEN rule includes first attribute information including at least preceding element identification information of a preceding element that performs a preceding action, and second attribute information including subsequent element identification information of a subsequent element that performs a subsequent action in cooperation with the preceding action, By comparing and judging the contents of first attribute information describing an action of the subsequent element of the first rule set and second attribute information describing a detection function of the preceding element of the second rule set, detecting that execution of the first of the ruleset leads to execution of the second of the ruleset; outputting, to a display unit, display data indicating a connection state between the first rule set and the second rule set.

4. A service providing system using an information processing device that manages a plurality of rule sets, each of which includes a rule set description in which at least one IF-THEN rule is described, the rule set description of the IF-THEN rule includes first attribute information including at least preceding element identification information of a preceding element that performs a preceding action, and second attribute information including subsequent element identification information of a subsequent element that performs a subsequent action in cooperation with the preceding action, A rule management and control unit is provided, The rule management and control unit By comparing and judging the contents of first attribute information describing an action of the subsequent element of the first rule set and second attribute information describing a detection function of the preceding element of the second rule set, a processor for detecting when execution of the first rule set leads to execution of the second rule set; A service providing system comprising: a processing unit that outputs display data indicating a connection state between the first rule set and the second rule set to a display unit.