Generation device, method, and program
By integrating graph neural networks and reinforcement learning, the generation device, method, and program efficiently generate service recovery plans that minimize recovery costs and time for large-scale network failures, addressing the challenges faced by existing technologies.
Patent Information
- Application Number
- PCT/JP2023/038756
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2023-10-26
- Publication Date
- 2025-05-01
AI Technical Summary
In the event of a large-scale network failure, such as in communication, road, or power networks, existing methods struggle to efficiently generate recovery plans that minimize recovery costs and time, especially when the number of failed nodes is large and the combinations of nodes to be repaired are numerous.
A generation device, method, and program that combines graph neural networks (GNN) and reinforcement learning to generate service recovery plans. This approach inputs the state of the network and the service to be restored into a model, calculates a reward for each repair action, and prioritizes the repair of nodes based on the calculated reward, thereby generating an optimal recovery plan.
The proposed solution enables rapid and cost-effective service restoration by determining the most effective sequence of node repairs, taking into account the network's state and the service's requirements, thus overcoming the limitations of existing methods.
Smart Images

Figure JP2023038756_01052025_PF_FP_ABST
Abstract
Description
Generation device, method and program
[0001] SUMMARY OF THE INVENTION An embodiment of the present invention relates to a generating device, a method, and a program.
[0002] When a large-scale failure, such as a breakdown, occurs in a network, such as a communications network, road network, or power network, the operations manager is required to quickly restore the services provided on the network, such as communication between any nodes provided on the communications network, transportation provided on the road network, or power transmission provided on the power network.
[0003] Restoring a service requires costs, such as time and money, corresponding to the repair of the nodes required for the restoration. However, in many cases, networks have a redundant configuration, and in this configuration, if the connection between the node providing the service and the node receiving the service can be restored, it is possible to restore the service without immediately repairing all of the nodes where the failure or fault occurred. Note that all nodes are eventually repaired.
[0004] Therefore, in order to restore services as quickly as possible, it is desirable to create a recovery plan (sometimes simply referred to as a plan) that combines nodes to be repaired in a way that minimizes the cost required for recovery, and then carry out the repair of the target nodes.
[0005] When a large-scale failure occurs, the number of failed nodes is large and the number of combinations of nodes to be restored is enormous, making it difficult for a human, for example, an operations manager, to devise an appropriate recovery plan.
[0006] Furthermore, Non-Patent Document 1 proposes a technology that combines a graph neural network and reinforcement learning to generate an efficient restoration plan for a disaster-stricken network in a short time.
[0007] Reinforcement learning is a machine learning technique in which an agent determines its actions based on the state of a given environment, and then updates the environment accordingly and acquires rewards for these actions, thereby learning the optimal actions for each state.
[0008] The technology disclosed in Non-Patent Document 1 inputs the state of a road network, in which intersections are nodes and roads connecting the intersections are links, into a model consisting of a GCN (Graph Convolutional Networks) and a fully connected layer, and estimates the reward for each action. Here, the action is to repair any of the failed nodes, and the reward is the degree of recovery of the road network. The degree of recovery of the road network is calculated based on the number of independent paths between all nodes.
[0009] Then, a randomly generated disaster-stricken network restoration simulation is run multiple times, and model parameters are determined through reinforcement learning. The state of the disaster-stricken network is then input into the trained model, and the action with the highest estimated reward is selected to update the network state. This process is repeated until the termination condition is met, i.e., all nodes have been repaired, and the order in which the nodes are to be repaired is determined.
[0010] Furthermore, Non-Patent Document 2 adopts a method of repairing a failed node on the shortest path between a source node and a destination node of a network service with priority. This method regards nodes that exist on the shortest paths of a larger number of network services as important nodes.
[0011] X. Fan, X. Zhang, X. Wang, and X. Yu, “A deep reinforcement learning model for resilient road network recovery under earthquake or flooding hazards,” Journal of Infrastructure Preservation and Resilience, vol. 4, 2023. N. Bartolini, S. Ciavarella, T. La Porta, and S. Silvestri, “On Critical Service Recovery After Massive Network Failures,” IEEE / ACM Transactions on Networking, vol. 25, pp. 1-15, Aug. 2017.
[0012] The technology disclosed in Non-Patent Document 1 aims to restore traffic volume between all nodes, and therefore cannot be directly applied to the problem of restoring communication between arbitrary nodes. Furthermore, the method disclosed in Non-Patent Document 2 cannot take into account detour routes, and therefore may not be able to generate a globally optimal solution.
[0013] This invention has been made in light of the above circumstances, and its purpose is to provide a generating device, method, and program that can properly restore a service provided on a network when a failure occurs in the service.
[0014] A generation device according to one aspect of the present invention comprises an input unit that accepts input of information regarding the state of the network where the failure occurred and the service that is no longer provided normally due to the occurrence of failures at multiple locations on the network when the service provided on the network is no longer provided normally; a calculation unit that calculates, based on the results of the input, a reward indicating the degree of recovery of the service for actions to repair the location where the failure occurred; and a generation unit that generates, based on the calculated reward, a recovery plan for the service that indicates the location of the multiple locations where the failure occurred that should be repaired as a priority.
[0015] A generation method according to one aspect of the present invention is a method performed by a generation device, and includes the steps of: when a service provided on a network is no longer provided normally due to the occurrence of failures at multiple locations on the network, receiving input of information regarding the state of the network where the failure occurred and the service that is no longer provided normally due to the occurrence of the failure via an input unit of the generation device; calculating, based on the results of the input, a reward indicating the degree of recovery of the service for actions to repair the location where the failure occurred; and generating, based on the calculated reward, a recovery plan for the service by the generation unit of the generation device, which indicates the location of the multiple locations where the failure occurred that should be repaired as a priority.
[0016] According to the present invention, when a failure occurs in a service provided on a network, the service can be appropriately restored.
[0017] FIG. 1 is a diagram showing an example of generation of a service recovery plan according to an embodiment of the present invention. FIG. 2 is a diagram showing an application example of a recovery plan generation device according to an embodiment of the present invention. FIG. 3 is a diagram showing an example of node information in a table format. FIG. 4 is a diagram showing an example of link information in a table format. FIG. 5 is a diagram showing an example of service information in a table format. FIG. 6 is a diagram showing an example of a supply graph and a demand graph. FIG. 7 is a flowchart showing an example of a service recovery plan generation process. FIG. 8 is a flowchart showing an example of a model learning process. FIG. 9 is a diagram showing an example of plan generation conditions in a table format. FIG. 10 is a diagram showing an example of inference data. FIG. 11 is a flowchart showing an example of processing by a plan generation unit. FIG. 12 is a diagram showing an example of learning conditions in a table format. FIG. 13 is a flowchart showing an example of processing by a model learning unit. FIG. 14 is a block diagram showing an example of the hardware configuration of a recovery plan generation device according to an embodiment of the present invention.
[0018] An embodiment of the present invention will be described below with reference to the drawings. In this embodiment, a method for generating a recovery plan for a network in which failures have occurred at multiple locations is described, which combines a graph neural network (GNN) and reinforcement learning, and by inputting into a model a graph representation of not only the state of the network but also the state of the service to be restored (sometimes referred to as the provision state), a method for generating a recovery plan for a service is described, which indicates the location to be repaired first among the multiple locations in which failures have occurred, according to the state of the network and the state of the service.
[0019] In this embodiment, the system performs a model learning process in which model parameters are determined through reinforcement learning by repeatedly simulating the recovery of a network in which failures have occurred at multiple locations. The system then inputs the network and service states into the trained model, selects the action with the highest reward, which indicates the degree of service recovery estimated as a result of the model learning process, and performs a recovery plan generation process in which the nodes to be repaired and the priority of recovery are determined as a service recovery plan by repeatedly updating the network state according to this action until a termination condition, such as the condition that all services to be restored, are satisfied. A graph of the network state (hereinafter sometimes referred to as a supply graph) has nodes and edges. Taking a communication network as an example, nodes represent devices or communication buildings, and edges represent physical connections between nodes.
[0020] The attributes of each node include the node identifier, a failure state (0: normal, 1: fault) indicating whether the node exists, and the cost required to repair the node, and the attributes of each edge include at least the failure state of the edge. When the failure state is "0", it indicates that the node is normal, and when the failure state is "1", it indicates that the node has failed.
[0021] On the other hand, a graph of the service status (hereinafter sometimes referred to as a demand graph) has nodes on the network and edges representing service connections between multiple nodes. Nodes in the demand graph are source and destination nodes of information related to the service. The attributes of the nodes include at least the node identifier and the node's failure status, and the attributes of each edge include at least the service status. Each service is considered to have a failure if, in the supply graph excluding the failed node, there is no path connecting nodes connected by edges in the demand graph.
[0022] Fig. 1 is a diagram showing an example of generating a service recovery plan in this embodiment. The generation of a service recovery plan in this embodiment will be explained as being performed by an agent of the neural network model shown in Fig. 1. This agent inputs the supply graph (Gs) to a first GNN, inputs the demand graph (Gd) to a second GNN, and inputs the sum of the outputs from these GNNs into a Transformer and a fully connected layer to calculate an estimated reward for each action.
[0023] More specifically, this embodiment employs a framework for constructing a solution step by step, similar to Non-Patent Document 1. In this embodiment, in reinforcement learning, an agent observes the state of the environment, selects an action according to this state, and receives a reward based on the selected action. Here, the network and service in which a failure has occurred are considered to be the environment.
[0024] The agent then estimates the reward Q for each action using the model and selects an action, such as a node to repair, based on a greedy policy. Specifically, the state, action, reward, and termination condition are defined as follows (1) to (4).
[0025] (1) State In this embodiment, the state refers to the state of the nodes and edges of the supply graph and the demand graph at each step of plan generation. Each graph node has attributes such as a node identifier, a failure state, and a node repair cost. The node identifier is, for example, a number unique to the node. In FIG. 1, seven nodes having node identifiers "0" to "7" are shown, and the nodes assigned with node identifiers "0," "2," "3," "5," and "6" are in a failure state, while the nodes assigned with other node identifiers are in a normal state.
[0026] The edges of the demand graph have attributes such as the service provision status, etc. For example, when the service provision status is "0", it indicates that the service is being provided normally, and when the service provision status is "1", it indicates that the service is not being provided normally due to a node failure.
[0027] Regarding the state of each edge in the demand graph, if there is no path connecting the nodes connected by that edge in the supply graph excluding the failed node, it is considered that the service is not being provided normally.Other methods include including information such as bandwidth capacity in the link and information such as required bandwidth in the service, and determining to what extent the required bandwidth for providing the service is met.
[0028] (2) Action In this embodiment, action means that the agent selects and repairs a target node. According to this repair, the action space becomes a list of candidates for nodes that can be repaired at each step, i.e., candidates for nodes in a fault state. After repairing a node, the agent updates the status of each service.
[0029] (3) Reward If the service is restored as a result of the agent's actions, the agent is given an immediate reward according to the degree of service restoration. In this case, the agent is given a larger reward for actions that restore more services at a lower cost. On the other hand, if the service is not restored, the agent is given a penalty based on the repair cost of that action. In Figure 1, the reward for repairing each node in a failed state is shown in a bar graph, and it is shown that the reward for repairing the node with node identifier "3" is the largest of the rewards given to each node.
[0030] (4) Termination Condition: The process of generating a service recovery plan is terminated when all services in the environment are restored to normal. The agent outputs the set of nodes selected for repair up to this point as a recovery plan.
[0031] By using advance reinforcement learning to determine the parameters of a neural network model that outputs information about a node whose repair will have a relatively high effect on restoring services, such as equipment, depending on the service to be restored and the fault status of the network, when a node failure occurs, it becomes possible to quickly devise a plan with a lower total repair cost, such as a combination of nodes to be repaired and a recovery order.
[0032] In this embodiment, information on the network service to be restored, in this case information on communications between specific nodes, can be input to a neural network model, and a plan for restoring communications between specific nodes can be generated by defining the state, action, reward, and termination condition as described above. This allows nodes that are not on the shortest path between the source and destination nodes of each service to be selected as targets for restoration, making it possible to create a restoration plan that takes detour paths into account.
[0033] 2 is a diagram showing an application example of a recovery plan generation device according to an embodiment of the present invention. As shown in FIG. 2, the recovery plan generation device 100 according to this embodiment has a network information holding unit 11, a service information holding unit 12, a model parameter holding unit 13, a plan generation condition input unit 21, an inference data generation unit 22, a plan generation unit 23, a plan output unit 24, a learning condition input unit 31, a learning data generation unit 32, and a model learning unit 33. The contents held in each unit or the contents of processing will be described later.
[0034] Next, examples of information held in the network information holding unit 11 and information held in the service information holding unit 12 will be described. FIG. 3 is a diagram showing an example of node information in a table format. FIG. 4 is a diagram showing an example of link information in a table format. FIG. 5 is a diagram showing an example of service information in a table format. The network information holding unit 11 holds node information and link information. In the example shown in FIG. 3, the node information includes a node identifier unique to the node and a repair cost, which is the cost required to repair this node when it fails. Here, the node identifiers are "1" to "6" as shown in FIG. 6, and FIG. 6 shows a network in which nodes (sometimes referred to as nodes "0" to "7") are connected in a ring shape and are represented by circles with node identifiers "0" to "7" attached.
[0035] 4, the link information includes a link identifier unique to each link, a "destination node 1" which is a node at one end of the link, and a "destination node 2" which is a node at the other end of the link. Here, the link information corresponds to the solid lines connecting the circles of each node shown in FIG.
[0036] Service information is stored in the service information storage unit 12. In the example shown in Fig. 5, the service information includes a service identifier unique to each service, a source node of information related to the provision of the service, and a destination node to which the information is sent. Here, the source node and the destination node correspond to the nodes connected by dotted lines shown in Fig. 6.
[0037] Fig. 7 is a flowchart showing an example of a service recovery plan generation process. Fig. 8 is a flowchart showing an example of a model learning process. The service recovery plan generation process shown in Fig. 7 corresponds to the processing by the plan generation condition input unit 21, the inference data generation unit 22, the plan generation unit 23, and the plan output unit 24. The model learning process shown in Fig. 8 corresponds to the processing by the learning condition input unit 31, the learning data generation unit 32, and the model learning unit 33.
[0038] First, the individual processes constituting the service recovery plan generation process as shown in FIG. 7 will be described. (Input of Plan Generation Conditions) The plan generation condition input unit 21 accepts input of the generation conditions for a service recovery plan by the user and outputs them to the inference data generation unit 22 (S21). FIG. 9 is a diagram showing an example of plan generation conditions in a table format. In the example shown in FIG. 9, the plan generation conditions include a failed node and a recovery service. The failed node is the node identifier of the failed node. The recovery service is the service identifier of a service that should be restored with priority among multiple services that have failed due to a node failure.
[0039] (Generation of inference data) First, the inference data generation unit 22 generates a supply graph based on the node information and link information stored in the network information storage unit 11. After this generation, the inference data generation unit 22 determines the state of each node in the supply graph based on the information on the failure node input in S21 as the plan generation condition.
[0040] Next, the inference data generating unit 22 selects the identifier of the service to be restored with priority, which was input as a plan generation condition in S21, from the service identifiers of the service information stored in the service information holding unit 12.
[0041] The inference data generating unit 22 generates a demand graph in which the edges are the services provided by connecting the nodes of the supply graph corresponding to the source node and destination node corresponding to the selected service identifier.
[0042] Fig. 10 is a diagram showing an example of inference data. The inference data generation unit 22 generates a set of the supply graph and demand graph generated as described above as inference data as shown in Fig. 10 and outputs this to the plan generation unit 23 (S22). In Fig. 10, each node and the solid-line edges between nodes correspond to the supply graph, while the dotted-line edges and each node connected by said edges correspond to the demand graph. In Fig. 10, color-coded nodes with node identifiers "0," "2," "3," "5," and "6" are nodes in a fault state.
[0043] (Plan Generation) The plan generation unit 23 generates a service recovery plan using the inference data generated in S22 (S23). Details are provided below. FIG. 11 is a flowchart showing an example of processing by the plan generation unit. The plan generation unit 23 sets the input data, which is the inference data generated in S22, as the environment and initializes a recovery plan stored in an internal memory or the like (S23-1). The plan generation unit 23 inputs the supply graph and demand graph, which are the current state of the environment, into a neural network model and estimates, for each action, a reward indicating the degree of recovery of the service to be prioritized, which is associated with an action to repair each failed node indicated by the inference data (S23-2).
[0044] The plan generating unit 23 selects one node that is an appropriate restoration destination by the action using the ε-greedy strategy, and adds the selected node to the restoration destination nodes in the restoration plan (S23-3).
[0045] In this ε-greedy strategy, a failed node is randomly selected with a probability of ε, and the failed node with the highest estimated reward when repaired is selected as a priority repair target with a probability of 1-ε. In addition, ε is set to 0 during processing by the plan generation unit 23, and the condition "ε>0" is set during processing by the model learning unit 33, which will be described later.
[0046] The plan generation unit 23 updates the environment under the assumption that the selected failed node has been repaired (S23-4). This environment update is performed by updating the state of the node selected in S23-3 to a normal state, and then updating the state of each service in accordance with this state.
[0047] The plan generation unit 23 determines whether the termination condition for generating the recovery plan has been met (S23-5). Here, it determines whether the states of all the services to be prioritized for recovery, which are the states of all edges in the demand graph, have returned to normal.
[0048] If the neural network model is currently being trained (Yes in S23-6), the plan generation unit 23 stores the state of the service before the environment is updated, the action to repair the node to be repaired, the state of the service after the environment is updated, and the result of the termination condition determination in internal memory, etc. (S23-7).
[0049] If S23-6 is "No", or if the above termination condition is not satisfied after S23-7 (No in S23-8), the process returns to S23-2, and if the above termination condition is satisfied (Yes in S23-8), the generation of the recovery plan by the plan generation unit 23, which is the series of processes in S23, ends.
[0050] (Plan Output) The plan output unit 24 presents the contents of the recovery plan generated in S23, including the recovery costs of the nodes to be recovered based on the node information, to the user by outputting the contents as, for example, a display screen or a file (S24). For example, the recovery plan to be output indicates the identifiers of the nodes to be preferentially recovered in order to recover all the services to be preferentially recovered, and the total recovery costs of these nodes.
[0051] Next, each process constituting the model learning process as shown in Fig. 8 will be described. (Input of Learning Conditions) The learning condition input unit 31 accepts input of learning conditions, which are various parameters used in learning a neural network model, by the user (S31). Fig. 12 is a diagram showing an example of learning conditions in a table format. In the example shown in Fig. 12, the learning conditions include parameters of the learning data and parameters of the neural network model. Each parameter includes a parameter name and a value.
[0052] The learning data includes the number of training data, the number of validation data, the number of epochs, the node failure probability (0<failure probability≦1), and the number of services to be restored. The failure probability range is "0<failure probability≦1". The model parameters include the memory size, batch size, learning rate, and reward discount rate. The neural network model parameters shown in Figure 12 are an example when DQN (Deep Q-Network) is used as the model, and vary depending on the reinforcement learning method.
[0053] (Generation of Learning Data) The learning data generation unit 32 generates training data and validation data as learning data based on the learning data parameters set under the learning conditions input in S31 (S32). The training data and validation data are configured as a supply graph and a demand graph.
[0054] The learning data generation unit 32 generates a demand graph related to the learning data based on the node information and link information stored in the network information storage unit 11. After this generation, the learning data generation unit 32 randomly determines the state of each node in the demand graph related to the learning data according to the "node failure probability" in the parameters of the learning data. The state of each node is "normal" or "failure", and if the node failure probability is "1", the state of each node is always changed to "failure". Here, it is assumed that the state of some of the multiple nodes in the network is "failure".
[0055] Next, the learning data generating unit 32 randomly selects service identifiers from the service identifiers of the service information stored in the service information holding unit 12, the number of which corresponds to the parameter "number of restored services" of the learning data.
[0056] The learning data generation unit 32 generates a demand graph in which the edges are services provided by connecting each node of the supply graph related to the learning data, which corresponds to the source node and destination node corresponding to the selected service identifier.
[0057] The learning data generation unit 32 generates a designated number of training data and validation data when the pair of supply graph and demand graph generated as described above is used as one learning data.
[0058] (Model Learning) The model learning unit 33 uses the learning data generated in S32. Using the training data and validation data, reinforcement learning of the neural network model is performed for the specified number of epochs input in S31, and the model parameters that provide the best validation results across all epochs are stored in the model parameter holding unit 13 (S33). Details are explained below. FIG. 13 is a flowchart showing an example of processing by the model learning unit. The model learning unit 33 initializes the best score of the node repair cost (S33-1). Here, the best score is set to a sufficiently large value.
[0059] Next, the model learning unit 33 performs the following learning process of S33-2 to S33-5: The model learning unit 33 selects one piece of training data that has not been selected for generating a service recovery plan from the training data of the learning data generated in S32 (S33-2).
[0060] The model learning unit 33 inputs the training data selected in S33-2 into the neural network model, generates a recovery plan for the service by estimating the reward for each action to repair each failed node indicated in the training data, and stores the resulting service state, action, and reward in an internal memory (S33-3). The generation of the recovery plan here is equivalent to the processes of S23-1 to S23-8 shown in FIG.
[0061] The model learning unit 33 updates the parameters of the neural network model under the learning conditions so that the reward estimated from the action increases according to the result of generating the service recovery plan (S33-4).
[0062] If the model learning unit 33 has not completed generating service recovery plans for all of the training data of the learning data generated in S32 (No in S33-5), it returns to S33-2 and processes another piece of training data again.
[0063] Furthermore, when the generation of service recovery plans has been completed for all of the training data of the learning data generated in S32 (Yes in S33-5), the process proceeds to the following verification process of S33-6 to S33-9.
[0064] The model learning unit 33 selects all validation data one by one from the training data generated in S32, and inputs this validation data into the neural network model to generate a service recovery plan including the node repair cost (S33-6). If the average repair cost, which is the average of the repair costs generated for each of all validation data in S33-6, is less than the currently set best score (Yes in S33-7), the model learning unit 33 updates the currently set best score to the average repair cost, and stores the model parameters updated in S33-4 in the model parameter holding unit 13 (S33-8).
[0065] If the answer is "No" in S33-7, or after S33-8, if the learning process and verification process have not yet been completed for the number of epochs included in the parameters of the learning data (No in S33-9), the model learning unit 33 initializes the training data, verification data, and recovery plan stored in the internal memory (S33-10) and returns to S33-2.
[0066] On the other hand, when the learning process and the verification process have been completed for the number of epochs included in the parameters of the learning data (Yes in S33-9), the series of processes in S33 ends.
[0067] Fig. 14 is a block diagram showing an example of the hardware configuration of a recovery plan generation apparatus 100 according to an embodiment of the present invention. In the example shown in Fig. 14, the recovery plan generation apparatus 100 according to the embodiment is configured by, for example, a server computer or a personal computer, and has a hardware processor 111A such as a CPU (Central Processing Unit). A program memory 111B, a data memory 112, an input / output interface 113, and a communication interface 114 are connected to this hardware processor 111A via a bus 115.
[0068] The communication interface 114 includes, for example, one or more wireless communication interface units, and enables transmission and reception of information to and from a communication network NW. As the wireless interface, for example, an interface that adopts a low-power wireless data communication standard such as a wireless LAN (Local Area Network) is used.
[0069] An input device 200 and an output device 300 that are attached to the recovery plan generation device 100 and used by a user or the like are connected to the input / output interface 113. The input / output interface 113 takes in operation data input by a user or the like through the input device 200, such as a keyboard, touch panel, touchpad, or mouse, and outputs output data to an output device 300, which includes a display device using liquid crystal or organic electroluminescence (EL) or the like, for display. Note that the input device 200 and the output device 300 may be devices built into the recovery plan generation device 100, or may be input devices and output devices of other information terminals that can communicate with the recovery plan generation device 100 via a network NW.
[0070] The program memory 111B is a non-transitory tangible storage medium that is a combination of a non-volatile memory that can be written to and read from at any time, such as a hard disk drive (HDD) or a solid state drive (SSD), and a non-volatile memory such as a read only memory (ROM), and stores programs necessary to execute various control processes, etc., according to one embodiment.
[0071] The data memory 112 is a tangible storage medium that is a combination of, for example, the above-mentioned nonvolatile memory and a volatile memory such as a RAM (Random Access Memory), and is used to store various data that is acquired and created in the course of various processes performed by the recovery plan generation device 100.
[0072] A recovery plan generation device 100 according to an embodiment of the present invention may be configured as a data processing system or information processing device having a software-based processing function unit. The storage system used as a work memory or the like by the recovery plan generation device 100 may be configured by using the data memory 112 shown in FIG. 14. However, these configured storage areas are not essential components within the recovery plan generation device 100, and may be, for example, areas provided in an external storage medium such as a USB (Universal Serial Bus) memory, or a storage system such as a database server located in the cloud.
[0073] The processing function unit can be realized by having the hardware processor 111A read and execute a program stored in the program memory 111B, but the processing function unit may also be realized in various other forms, including an integrated circuit such as an application specific integrated circuit (ASIC) or a field-programmable gate array (FPGA).
[0074] The methods described in each embodiment may be stored as a program (software means) that can be executed by a computer on a recording medium such as a magnetic disk (e.g., a floppy disk, a hard disk, etc.), an optical disk (e.g., a CD-ROM, a DVD, an MO, etc.), or a semiconductor memory (e.g., a ROM, a RAM, a flash memory, etc.), or may be transmitted and distributed via a communication medium. The program stored on the medium also includes a configuration program that configures the software means (including not only executable programs but also tables and data structures) that the computer executes. The computer that realizes this device reads the program stored on the recording medium and, in some cases, configures the software means using the configuration program, and executes the above-described processing by having the operation controlled by this software means. The term "recording medium" as used herein is not limited to a storage medium for distribution, but also includes a storage medium such as a magnetic disk or semiconductor memory installed inside the computer or in a device connected via a network.
[0075] The present invention is not limited to the above-described embodiments, and various modifications can be made in the implementation stage without departing from the spirit of the invention. Furthermore, the embodiments may be implemented in appropriate combinations, in which case the combined effects can be obtained. Furthermore, the above-described embodiments include various inventions, and various inventions can be extracted by combining selected elements from the disclosed elements. For example, if the problem can be solved and the desired effect can be obtained even if some elements are deleted from all elements shown in the embodiments, the configuration from which these elements are deleted can be extracted as an invention.
[0076] REFERENCE SIGNS LIST 100: Recovery plan generation device 11: Network information storage unit 12: Service information storage unit 13: Model parameter storage unit 21: Plan generation condition input unit 22: Inference data generation unit 23: Plan generation unit 24: Plan output unit 31: Learning condition input unit 32: Learning data generation unit 33: Model learning unit
Claims
1. A generation device comprising: an input unit that accepts input of information related to the state of the network where a service provided on a network is no longer provided normally due to the occurrence of failures at multiple locations on the network, and information related to the service that is no longer provided normally due to the occurrence of the failure; a calculation unit that calculates a reward indicating the degree of recovery of the service for an action to restore the location where the failure occurred based on the results of the input; and a generation unit that generates a recovery plan for the service, based on the calculated reward, which indicates the location of the multiple locations where the failure occurred that should be given priority for repair.
2. The generating device according to claim 1, wherein the input unit accepts input of information relating to the state of the network in which a failure has occurred and the service that is no longer provided normally due to the occurrence of a failure in multiple nodes on the network, when the service is no longer provided normally due to the occurrence of the failure in multiple nodes; the calculation unit calculates a reward indicating the degree of recovery of the service for a repair action on the node where the failure has occurred based on the result of the input; and the generation unit generates a plan for recovery of the service, based on the calculated reward, in which a node that should be given priority for repair among the nodes where the failure has occurred is indicated.
3. The generating device according to claim 2, wherein the input unit receives input of information relating to a service that is to be preferentially restored among the plurality of services when the plurality of services executed by the plurality of nodes are no longer provided normally due to a failure occurring in one or more of the nodes, and the calculation unit calculates, based on the result of the input, a reward indicating the degree of recovery of the service that is to be restored in response to a repair action taken on the node where the failure occurred.
4. The generating device according to claim 2, wherein the generating unit selects one by one of the nodes where the failure has occurred as a node to be repaired as a priority based on the calculated reward, the calculation unit recalculates the reward under conditions assuming that the selected node has been restored, and the selection of the node by the generating unit is completed when all of the services that have become unable to be provided normally, as indicated by the result of the input, can be restored.
5. The generating device according to claim 1, wherein the input unit accepts input of first graph information in which a plurality of nodes on the network, edges connecting the plurality of nodes, and the node where the failure occurred are shown in graph form, and second graph information in which the relationship between a plurality of nodes necessary to restore the service that is no longer being provided normally is shown in graph form.
6. The generating device according to claim 2, further comprising: a second calculation unit that calculates a reward indicating the degree of recovery of the service for a repair action to the node where the failure has occurred by inputting a condition assuming that a failure has occurred in some of the multiple nodes of the network into a neural network model; and a learning unit that learns the neural network model based on the calculated reward.
7. A method performed by a generating device, comprising: when a service provided over a network is no longer provided normally due to the occurrence of failures at multiple locations on the network, an input unit of the generating device accepts input of information related to the state of the network where the failure occurred and the service that is no longer provided normally due to the occurrence of the failure; a calculation unit of the generating device calculates a reward indicating the degree of recovery of the service for the action of repairing the location where the failure occurred based on the results of the input; and a generation unit of the generating device generates a recovery plan for the service based on the calculated reward, in which a location to be repaired as a priority among the multiple locations where the failure occurred is indicated.
8. A generation processing program that causes a processor to function as each part of the generation device according to any one of claims 1 to 6.
Citation Information
Patent Citations
Disaster recovery plan generation device, disaster recovery plan generation method, and program
WO2021205542A1