Learning device, selection device, learning method, selection method, and program
A learning device employs a genetic algorithm to efficiently prioritize faulty equipment restoration in networks with multiple failures, addressing computational delays by learning an optimal criterion value for equipment selection.
Patent Information
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Filing Date
- 2022-12-05
- Publication Date
- 2026-04-07
AI Technical Summary
Determining the priority for restoring communication equipment in a network with multiple failures is computationally intensive, leading to delays in decision-making due to varying factors such as ring status, ripple effects, and line importance.
A learning device uses a genetic algorithm to determine a criterion value for selecting faulty equipment prioritization by calculating total priority patterns, adjusting equipment combinations, and learning a reference value for optimal restoration based on the difference between approximate and optimal solutions.
Enables quick determination of which communication devices to restore in a network with multiple failures, reducing computation time and improving decision-making efficiency.
Smart Images

Figure 0007841622000001 
Figure 0007841622000002 
Figure 0007841622000003
Abstract
Description
Technical Field
[0001] The present invention relates to a technique for restoring a failure of communication equipment caused by a disaster.
Background Art
[0002] The communication network used by a communication carrier for providing communication services has a configuration in which a plurality of communication buildings are connected by transmission lines. Also, generally, communication buildings have a redundant configuration with a ring configuration. That is, even if a failure occurs in one communication building and communication becomes impossible, it is possible to continue the service with a standby system (one system).
[0003] Since the ring configuration has multiple levels, if communication becomes impossible in the upper ring, communication becomes impossible in the lower ring. Also, in addition to the difference in importance between the upper and lower rings, there are differences in importance among various lines housed in the communication building.
[0004] On the other hand, when a disaster occurs, failures often occur in a plurality of communication buildings. When a failure occurs in a communication building, it is necessary to recover it. However, since the resources for recovery are limited, when failures occur in a plurality of communication buildings, it is necessary to determine which communication building among the plurality of communication buildings should be preferentially recovered.
Prior Art Documents
Non-Patent Documents
[0005]
Non-Patent Document 1
Summary of the Invention
Problems to be Solved by the Invention
[0006] However, the priority for restoring communication buildings varies depending on factors such as ring status (upper / lower), ripple effects, and the type of lines they accommodate. Therefore, determining which communication buildings should be prioritized for restoration requires a massive amount of computation, leading to delays in decision-making. This issue is not limited to communication buildings but can occur with communication facilities in general.
[0007] This invention has been made in view of the above points, and aims to provide a technology for quickly determining which communication equipment to restore when a failure occurs in multiple communication equipment in a network. [Means for solving the problem]
[0008] According to the disclosed technology, a learning device used to determine a criterion value used to select specific faulty equipment from among multiple faulty equipment that should be prioritized for restoration in a network comprising multiple equipment providing communication services, Obtained by randomly introducing failures into the network A calculation unit that performs a process to calculate the total priority of a pattern while replacing faulty equipment in a pattern consisting of a specific number of faulty equipment, The system includes a learning unit that determines the reference value based on the difference between the approximate solution obtained by the processing performed by the calculation unit and the optimal solution, The learning unit determines the minimum or average number of times the process is performed so that the difference becomes zero as the reference value. A learning device will be provided. [Effects of the Invention]
[0009] According to the disclosed technology, when multiple communication devices fail in a network, it becomes possible to quickly determine which communication device needs to be restored. [Brief explanation of the drawing]
[0010] [Figure 1] This figure shows an example of the overall system configuration in the first embodiment. [Figure 2] This is a flowchart illustrating the operation of the selection device 100 in the first embodiment. [Figure 3] It is a diagram showing an example of a network configuration. [Figure 4] It is a flowchart for explaining the operation of the selection device 100 in the first embodiment. [Figure 5] It is a diagram showing an example of facilities affected by a failure. [Figure 6] It is a diagram showing an example of facilities affected by a failure. [Figure 7] It is a diagram showing a specific example of processing. [Figure 8] It is a flowchart for explaining the operation of the selection device 100 in the first embodiment. [Figure 9] It is a diagram showing a specific example of processing. [Figure 10] It is a diagram showing a specific example of processing. [Figure 11] It is a diagram showing a specific example of processing. [Figure 12] It is a diagram showing how the total priority increases as generations progress. [Figure 13] It is an example of a network configuration in the example of the first embodiment. [Figure 14] It is a diagram showing the priority in Example 1-1. [Figure 15] It is a diagram showing the simulation conditions in Example 1-1. [Figure 16] It is a diagram showing the results of Example 1-1. [Figure 17] It is a diagram showing the priority in Example 1-2. [Figure 18] It is a diagram showing the results of Example 1-2. [Figure 19] It is a diagram for explaining the problem to be solved in the second embodiment. [Figure 20] It is a diagram showing an example of the overall configuration of the system in the second embodiment. [Figure 21] It is a flowchart for explaining the operation of the selection device 100 (learning device) in the second embodiment. [Figure 22]This diagram illustrates the calculation of the difference between the optimal value and the approximate solution. [Figure 23] This is a diagram illustrating an example of an acceptance judgment value. [Figure 24] This is a flowchart illustrating the operation of the selection device 100 in the second embodiment. [Figure 25] This is a diagram illustrating an example of a decision to terminate processing. [Figure 26] This is an example of a network configuration in an embodiment of the second embodiment. [Figure 27] This diagram shows the priority order in Example 2-1. [Figure 28] This figure shows the simulation conditions in Example 2-1. [Figure 29] This figure shows the results of Example 2-1. [Figure 30] This figure shows an example of the device's hardware configuration. [Modes for carrying out the invention]
[0011] Hereinafter, embodiments of the present invention (this embodiment) will be described with reference to the drawings. The embodiments described below are merely examples, and the embodiments to which the present invention is applied are not limited to the embodiments described below.
[0012] In the embodiments described below, the target for determining the recovery priority is defined as "communication equipment." Communication equipment may be any of the following: a communication building, communication devices, a group of communication devices, or an area where communication is provided by the communication equipment. Furthermore, communication equipment may be something other than these. Communication equipment may also be referred to simply as "equipment." The first and second embodiments will be described below.
[0013] (First Embodiment: System Configuration) Figure 1 shows an example of the overall system configuration in this embodiment. As shown in Figure 1, this system has a selection device 100 that selects faulty equipment to be restored as a priority, and a network 200. The network 200 is a network that provides communication services and has multiple communication equipment (groups of communication equipment). In this embodiment, the multiple communication equipment is connected in a ring shape, and it is assumed that the multiple rings have a hierarchy of upper and lower levels.
[0014] The selection device 100 and the network 200 are connected by a control line or the like, and the selection device 100 can obtain information from the network 200, such as whether or not there are any malfunctions in individual communication equipment.
[0015] As shown in Figure 1, the selection device 100 includes an information acquisition unit 110, a selection unit 120, an output unit 130, and a data storage unit 140.
[0016] (First embodiment: Example of operation of selection device 100) An example of the operation of the selection device 100 having the above configuration will be explained with reference to the flowchart. Specific examples will also be used as appropriate.
[0017] <S1、S2> First, refer to the flowchart in Figure 2 to explain S1 (Step 1) and S2. In S1 (Step 1), the information acquisition unit 110 acquires information from the network 200 about communication equipment that has been damaged due to a disaster. The communication equipment that has been damaged is referred to as the damaged equipment.
[0018] In S2, the information acquisition unit 110 stores information about the faulty equipment in the data storage unit 140.
[0019] Specific examples of S1 and S2 will be explained with reference to Figure 3. Figure 3 shows an example configuration of network 200, which includes faulty equipment. In Figure 3, "A1," etc., are symbols that identify communication equipment. In the example in Figure 3, "A" and "B" are used to distinguish the hierarchy. "A" is higher than "B." In the following explanation, symbols such as A1 may be used to mean the communication equipment that the symbol refers to.
[0020] In the example shown in Figure 3, A5, A10, B1, and B10 are faulty equipment, and in S1, the information acquisition unit 110 acquires this information and stores it in the data storage unit 140.
[0021] <S3~S8> Refer to the flowchart in Figure 4 to explain steps S3 to S8. In this embodiment, a combination of multiple faulty equipment is called a "pattern." By considering a "pattern" as a "gene," the algorithm described below can be considered a genetic algorithm. In the following explanation, each stage in the iterative process is called a "generation."
[0022] In S3, the selection unit 120 determines the number of faulty equipment units that constitute one pattern. The number of faulty equipment units that constitute one pattern may be a predetermined number, or the number of faulty equipment units that constitute one pattern may be determined according to the total number of faulty equipment units.
[0023] In S4, the selection unit 120 randomly determines the number of combinations (=patterns) of faulty equipment determined in S3, based on the information of faulty equipment stored in the data storage unit 140.
[0024] In S5, the selection unit 120 calculates the sum of the priorities of the multiple faulty equipment components that make up the determined pattern. Here, the priority of the faulty equipment includes the impact (cascading effects) that the faulty equipment has on other equipment. Details will be described later.
[0025] In this embodiment, priority refers to the priority at which a fault should be restored, and a higher priority means that the restoration should be carried out with greater priority. In this embodiment, when priority is expressed numerically, a higher number means that the priority is higher.
[0026] Here, we assume there is an upper limit to the number of patterns determined in S4. In S6, if the number of patterns has not reached the upper limit, the process returns to S4 and executes S4 and S5 again. The selection unit 120 continues this process until the number of patterns reaches the upper limit.
[0027] For example, if one pattern consists of three faulty devices, and these devices are A5, A10, B1, and B10, then by repeatedly performing steps S4 and S5, patterns such as "A5, A10, B1", "A10, B1, B10", "A5, B1, B10", etc., and the sum of the priority levels of the faulty devices in each pattern can be calculated.
[0028] When the number of patterns reaches the upper limit (No. in S6), the process proceeds to S7, where the selection unit 120 sorts the determined set of patterns in descending order of total priority. In S8, the selection unit 120 selects the top X% of patterns based on total priority from the sorted patterns, discarding those that do not fall within the top X%. X is a predetermined value.
[0029] In this embodiment, "sorting in descending order of total priority" may be replaced with "sorting in descending order of total priority." If "sorting in descending order of total priority" is performed by selecting from patterns with lower total priority, it is equivalent to "sorting in descending order of total priority."
[0030] The set of patterns obtained in the flow chart in Figure 4 is the set of patterns from the first generation. In other words, if we represent the generation as the nth generation, then n here is 1.
[0031] Regarding the total priority in S5, for example, the data storage unit 140 may pre-store the priority for each communication device, including the cascading effects in the event of a failure in that device. In this case, the selection unit 120 obtains the priority of each faulty device from the data storage unit 140 and sums the priorities of the multiple faulty devices in the pattern. For example, for the pattern "A5, A10, B1", if the priority of A5 is 3, the priority of A10 is 5, and the priority of B1 is 1, the total will be 9. Note that, since cascading effects are considered, the priority of individual faulty devices may change depending on the combination of multiple faulty devices that make up the pattern.
[0032] As illustrated in Figure 5, if a failure occurs in A10, the impact will spread to the equipment below it. From this perspective, the selection unit 120 may, for example, calculate the priority of A10 as the sum of the impact of A10 itself (e.g., the number of affected users) and the impact of the affected equipment (B1 to B10) (e.g., the total number of users affected in the affected equipment).
[0033] Furthermore, the selection unit 120 may use the technology disclosed in Non-Patent Literature 1 to identify equipment affected by a faulty piece of equipment, and calculate a priority based, for example, on the number of affected pieces of equipment. For example, as shown in Figure 6, equipment affected can be identified based on information such as the hierarchical relationships between layers.
[0034] In the example in Figure 6, the areas affected by a failure in device A are shown. In this case, the priority of device A can be calculated as "impact of device A's failure + impact of the affected areas". If device B also fails, the priority of device A remains unchanged because it is located close to device B.
[0035] Refer to Figure 7 to explain specific examples of S3 to S8. In the example in Figure 7, the number of faulty equipment components that make up one pattern is 3.
[0036] As shown on the left side of Figure 7, repeating steps S3 to S4 until the maximum number of patterns is reached yields the patterns "A5, A10, B1", "A10, B1, B10", ... "C2, B1, A5". The sum of the priorities for each pattern is also calculated.
[0037] As shown on the right side of Figure 7, the set of patterns is sorted in descending order of total priority, and the top X% of total priority are filtered out. In the example in Figure 5, the combination (pattern) "A5, A10, B1" has the highest total priority. The top X% refers to the number of patterns that make up the top X% of all patterns being considered.
[0038] Note that filtering by the top X% of the total priority in each generation is just one example. For example, filtering by the top Y items in the total priority could also be used, where Y is a predetermined integer.
[0039] <S9~S17> Next, refer to the flowchart in Figure 8 to explain steps S9 to S18. Here, the process of generating the set of patterns for the (n+1)th generation by processing the set of patterns for the nth generation is repeated, advancing one generation at a time.
[0040] In S9, the selection unit 120 selects the pattern with the highest total priority among the top X% of patterns in the current generation and leaves it for the next generation. A specific example is shown in Figure 9. In the example in Figure 9, "A5, A10, B1" has the highest priority, so this pattern is left for the next generation.
[0041] In S10 of Figure 8, the selection unit 120 selects one pattern from the current generation set that does not have the highest total priority, and generates multiple copies of that pattern. Here, we assume that two copies are generated. Note that generating two copies is just one example, and three or more copies may be generated.
[0042] In S11, the selection unit 120 extracts the lowest-level fault equipment from among the multiple fault equipment constituting each copy pattern (the pattern extracted in S10). If there are multiple fault equipment with the lowest level, any one of them can be selected.
[0043] In S12, the selection unit 120 replaces the faulty equipment with the lowest priority level extracted in S11 for each copy pattern with another faulty equipment of the same priority level or higher. The selection unit 120 then calculates the total priority level for each pattern in which the faulty equipment with the lowest priority level has been replaced with another faulty equipment.
[0044] Figure 10 shows specific examples of S10-S12. In the example in Figure 10, "C2, B1, A5" are selected in S10, and two copies are created. Of C2, B1, and A5, A5 is assumed to have the lowest rank.
[0045] In S11, A5 is selected as the faulty equipment to be replaced for each of the two copy patterns. In S12, in one of the two copy patterns, A5 is replaced with A10, and in the other pattern, A5 is replaced with B10. The selection unit 120 calculates the sum of the priorities of the two patterns created by this process, "C2, B1, A10" and "C2, B1, B10", as AA and BB, respectively.
[0046] In the flow shown in Figure 8, the selection unit 120 executes the processes S10 to S12 for each pattern from all patterns of the current generation (all patterns after filtering) except for the pattern with the highest total priority. Once the processes S10 to S12 are completed for all patterns except the pattern with the highest total priority (No. S13), the process proceeds to S14.
[0047] The set of patterns at the point of moving to S14 consists of the pattern with the highest total priority remaining in S9 and the set of patterns obtained through the repetitions of S10 to S12. The set of patterns at the point of moving to S14 is the set of patterns that has advanced one generation from the previous set of patterns.
[0048] In S14, the selection unit 120 sorts the set of patterns in descending order of total priority, and in S15, it performs a filter on the top X% of the total priority. Figure 11 shows an example of S14 and S15. At this point, the remaining set of patterns is processed in S9 to S13, and S14 and S15 are executed on the resulting set of patterns. This process is repeated.
[0049] The selection unit 120 repeatedly performs the processes S9 to S15 as described above. The repetition continues, for example, until the number of generations reaches a predetermined number. Furthermore, while the repetition continues until the number of generations reaches a predetermined number, if the change (increase) in the sum of the highest priority between the mth generation and the m+kth generation is less than or equal to a threshold, the repetition process may be terminated at the m+kth generation. k is a predetermined integer. k may be 1. The threshold may be 0.
[0050] The flow in Figure 8 includes the termination decision S16 described above. In S16, the selection unit 120 decides whether or not to terminate the process using the decision method described above. If the decision in S16 is Yes, the process proceeds to S18; otherwise, it proceeds to S17. Regarding the decision of whether or not to terminate the process, the process may be terminated when a predetermined number of generations has been reached.
[0051] In S17, the selection unit 120 determines whether the number of generations has reached a predetermined number. If yes, the process proceeds to S18; otherwise, it returns to S9. For example, if the predetermined number of generations required for completion is 50, the determination in S17 becomes yes when the current generation reaches the 50th generation.
[0052] In S18, the selection unit 120 passes the pattern with the highest total priority (the pattern with the highest total priority) from the set of patterns in the current generation to the output unit 130. The output unit 130 outputs this pattern. Alternatively, the output may consist of the top Z patterns with the highest total priority from the set of patterns in the current generation, where Z is a predetermined integer.
[0053] The faulty equipment in the pattern output from the output unit 130 is the faulty equipment that should be restored as a priority.
[0054] Figure 12 shows how the sum of the highest priority increases as the generations progress, as shown in the flow in Figure 8. The example in Figure 12 also shows the case where the process is terminated at an intermediate point. As shown in Figure 12, in the processing of the flow in Figure 8, patterns with high sum of priority are frequently found in the early generations, but no updates to the sum of priority are observed in the later generations.
[0055] The following describes specific processing examples (simulations) using the selection device 100 as implementation examples. Below, Examples 1-1 and 1-2 of the first embodiment are described.
[0056] (First Embodiment: Example 1-1) Figure 13 shows the configuration of network 200 in Example 1-1. In Figure 13, each rectangle represents equipment, and the shaded rectangles represent faulty equipment. Each piece of equipment is numbered, and below, each piece of equipment will be referred to by its number.
[0057] As shown in Figure 13, the network 200 has a hierarchical structure in which lower-level rings are connected to higher-level rings. In Example 1-1, the priority of equipment belonging to a higher-level ring is higher than the priority of equipment belonging to a lower-level ring.
[0058] Figure 14 shows an example of information about faulty equipment and its priority, which is acquired from the information acquisition unit 110 and stored in the data storage unit 140. In this embodiment, priority is set for each individual faulty piece of equipment to make the effect easier to understand.
[0059] Figure 15 shows the simulation conditions in Example 1-1. As shown in Figure 15, the number of faulty equipment in one pattern is set to 5. The total number of combinations of selecting 5 faulty equipment from all 30 faulty equipment is 142,506. The initial number of patterns (first generation) is set to 50, and the cutoff number is set to 20. The number of trial generations is set to 1000. Also, the number of generations at which processing is terminated midway is set to 100.
[0060] Figure 16 shows the results of the calculation performed by the selection device 100 under the above conditions. As shown in Figure 16, the algorithm according to this embodiment can be used to perform calculations at high speed compared to performing calculations for all combinations.
[0061] (First Embodiment: Examples 1-2) Next, Example 1-2 will be described. The configuration of network 200 in Example 1-2 is the same as in Example 1-1 and is shown in Figure 13.
[0062] Figure 17 shows an example of information about faulty equipment and its priority, which is acquired from the information acquisition unit 110 and stored in the data storage unit 140. In this embodiment as well, priority is set for each individual faulty piece of equipment in order to make the effect easier to understand.
[0063] In Examples 1-2, due to the network configuration, etc., the priority of equipment belonging to a lower-level ring may be higher than the priority of equipment belonging to a higher-level ring. Equipment 17, 36, and 41 in Figure 17 are examples of such equipment.
[0064] The simulation conditions in Example 1-2 are the same as in Example 1, as shown in Figure 15.
[0065] Figure 18 shows the results of the calculation performed by the selection device 100 under the above conditions. As shown in Figure 18, the calculation can be performed at high speed by using the algorithm according to this embodiment compared to the case where calculation is performed for all combinations. In Example 2, when using the algorithm according to this embodiment, the sum of priorities obtained is lower than the sum of priorities of the best pattern obtained by calculating all combinations, but the difference is small, so it can be seen that the algorithm according to this embodiment is effective.
[0066] (Second Embodiment) Next, a second embodiment will be described. The basic processing flow in the second embodiment (specifically, the processing flow of the genetic algorithm) is the same as in the first embodiment. The following will mainly describe the differences from the first embodiment.
[0067] When checking the recovery priority (sum of priorities) for all possible combinations of faulty equipment in a network, the large number of patterns results in a long calculation time.
[0068] Therefore, in the technique described in the first embodiment, the genetic algorithm shown in Figures 2, 4, and 8 was used to search for patterns with a high total priority by repeatedly processing while rearranging the patterns.
[0069] In the technology described in the first embodiment, increasing the number of generations (number of iterations) allows for the calculation of good patterns with a high total priority, but this increases the computation time. Conversely, reducing the number of generations to shorten the computation time makes it difficult to obtain good patterns.
[0070] Furthermore, in the first embodiment, as explained with reference to Figure 12, etc., it is possible to use a method that terminates the generation progression midway through the iterative processing (referred to as the processing termination method; this may also be called the simulated annealing method).
[0071] However, in the first embodiment, when using the termination method, it is not always possible to terminate the process at the optimal number of times (the number of times in which the processing time is short and a high total priority is obtained).
[0072] For example, as shown in Figure 19, if processing is terminated at the number of iterations indicated in (1), the processing time is short, but the total priority increases as the generations progress. Therefore, the point indicated in (1) is too early to terminate processing. Also, if processing is terminated at the point indicated in (2) in Figure 19, the pattern with the highest total priority can be obtained, but the processing time becomes longer.
[0073] It is best to terminate the process at the point indicated in (3) in Figure 19. However, the first embodiment does not have a mechanism to determine the best number of terminations. Therefore, in the second embodiment, the selection device 100 determines a reference value for determining the optimal number of terminations (number of generations) through pre-learning, and terminates the process based on that reference value when selecting faulty equipment that should be prioritized for restoration. The device configuration and operation of the second embodiment will be described in detail below.
[0074] (Second Embodiment: Device Configuration) Figure 20 shows an example of the configuration of the selection device 100 in the second embodiment. As shown in Figure 20, the selection device 100 in the second embodiment has a configuration in which a learning unit 150 is added to the selection device 100 in the first embodiment (Figure 1). The learning unit 150 performs pre-learning to determine the optimal number of times to terminate the selection.
[0075] In addition to the selection device 100 that selects the faulty equipment to be restored as a priority, a learning device for determining a reference value may also be provided. In that case, the configuration of the learning device is the same as that shown in Figure 20. Furthermore, the functional unit that performs repetitive processing in the learning device may be called the calculation unit.
[0076] (Second Embodiment: Device Operation) Next, the operation of the selection device 100 in the second embodiment will be described.
[0077] (Second embodiment: Pre-training) First, we will explain the process during pre-training, following the steps outlined in the flowchart in Figure 21.
[0078] <s21> In S21, a random failure is introduced into the target network 200. The failure here may be introduced not into the actual network 200, but into a computer containing the network configuration data.
[0079] Information about the faulty equipment resulting from the malfunction is acquired by the information acquisition unit 110 and stored in the data storage unit 140.
[0080] <s22> In S22, the selection unit 120 extracts the optimal solution (the pattern with the highest total priority) by calculating the sum of priorities for each of all combinations (patterns) of faulty equipment. The sum of priorities in the pattern with the highest total priority is called the "optimal value." The sum of priorities in the pattern with the highest total priority may also be called the "optimal solution."
[0081] <s23> In S23, the selection unit 120 executes the genetic algorithm (the procedure shown in Figures 2, 4, and 8). In the following flow description, the genetic algorithm may be referred to as "GA".
[0082] <s24> In S24, the learning unit 150 calculates the difference between the optimal value obtained in S22 and the best value in the GA (the sum of priorities of the pattern with the best total priority) for each iteration (each generation).
[0083] <s25> In S25, the learning unit 150 stores in the data storage unit 140 the number of times (number of generations) the difference calculated in S24 became zero. The number of times the difference became zero may be the number of times the difference first became zero.
[0084] <s26> In S26, the learning unit 150 calculates an acceptance decision value using the evaluation value (best value in total priority) at the number of times (number of generations) the difference from the optimal solution became zero, and the evaluation value of the previous generation, and stores it in the data storage unit 140. The learning unit 150 may also calculate the acceptance decision value using the evaluation value from the previous number of times (number of generations) the difference from the optimal solution became zero, and the evaluation value of the previous generation.
[0085] <s27> The selection device 100 executes processes S21 to S26 multiple times. That is, it repeatedly executes processes S22 to S26 by changing the faulty node (faulty equipment).
[0086] <Results of pre-learning> Based on the values obtained in the above process, the learning unit 150 obtains, for each number of faulty nodes on the network, the minimum value of the number of attempts to reach the optimal value, the average value of the number of attempts to reach the optimal value, and the acceptance judgment value when the optimal value is reached. These values may also be called reference values. The reference values are stored in the data storage unit 140. Note that the minimum value and average value are examples of statistical values. The learning unit 150 may also calculate a statistical value other than "minimum value / average value" of the number of attempts to reach the optimal value as a reference value.
[0087] (Second embodiment: Specific explanation of pre-learning) Let's explain the main operations in the pre-training flow described above in more detail.
[0088] As explained in S24 and S25, the learning unit 150 calculates the difference between the optimal value obtained in S22 and the best value in the GA (which may also be called an approximate solution), and stores the number of times the difference becomes zero. This calculation is performed multiple times, with the faulty node being changed randomly.
[0089] Figure 22 shows the process where the difference between the optimal solution and the approximate solution becomes zero. As shown in Figure 22, as the generations progress, the value of the approximate solution gradually increases until the difference between the optimal value and the approximate solution becomes zero.
[0090] By randomly changing the faulty nodes and performing calculations multiple times, the learning unit 150 obtains multiple counts of the number of times the difference between the optimal solution and the approximate solution becomes zero. Using these results, the learning unit 150 calculates, for example, the minimum value (X times) and average value (Y times) of the number of times the difference between the optimal solution and the approximate solution becomes zero when M nodes fail in the target network, and stores the calculation results in the data storage unit 140. Since the number of faulty nodes can vary, the data storage unit 140 stores the minimum value (X times) and average value (Y times) for each number of faulty nodes M.
[0091] Next, the acceptance determination value in S26 will be explained. The acceptance determination value in this embodiment is a value used for acceptance determination in the Simulated Annealing method, and the learning unit 150 calculates the acceptance determination value using the following formula.
[0092] "Acceptance criteria value = 1" (if ΔE > 0), "Acceptance criteria value = exp(-ΔE / N)" (if ΔE is not > 0) In the above formula, N corresponds to the number of times n is used to calculate ΔE. ΔE = E(n-1) - E(n). E(n-1) is the evaluation value (best value in total priority) at n-1 times, and E(n) is the evaluation value at n times.
[0093] Since "-ΔE / N" approaches 0 as the number of iterations N increases, the "acceptance judgment value = exp(-ΔE / N)" approaches 1 as the number of iterations N increases.
[0094] An example of an acceptance judgment value will be explained with reference to Figure 23. In Figure 23, for example, the acceptance judgment value when the number of iterations is n1 is 0.85, and the acceptance judgment value when the number of iterations is n2 (the number of iterations when the difference becomes 0) is 0.93 (a value calculated from the evaluation value of n2 and the evaluation value of the previous iteration). In other words, in this case, the learning unit 150 calculates 0.93 as the acceptance judgment value (which may also be called the acceptance value) and stores it in the data storage unit 140.
[0095] For example, if the number of faulty nodes is M when the acceptance criterion value = 0.93 is calculated, then, as described later, the acceptance criterion value = 0.93 can be used in the genetic algorithm to determine when to terminate processing when the number of faulty nodes is M.
[0096] Since the above process is performed by randomly changing the faulty node, acceptance criteria corresponding to various values of M can be obtained. If multiple acceptance criteria are obtained for the same M, for example, the average of those multiple acceptance criteria can be used as the acceptance criteria for that M.
[0097] (Second embodiment: Regarding the execution of the genetic algorithm) In the second embodiment, when executing the genetic algorithm, the results of the pre-training described above (reference values) are used to determine whether to terminate the process.
[0098] Referring to Figure 24, the process for extracting the pattern with the highest total priority in the second embodiment (processing using a genetic algorithm) will be explained.
[0099] Here, we assume that, as a result of pre-training, when the number of faulty nodes is M, Z is obtained as the acceptance criterion, X is obtained as the minimum number of times the difference between the optimal solution and the approximate solution becomes zero, and Y is obtained as the average number of times the difference between the optimal solution and the approximate solution becomes zero.
[0100] In S201, the selection device 100 executes S1 to S8 as described in the first embodiment. Here, it is assumed that the number of faulty nodes (faulty equipment) in the network 200 is M.
[0101] In S202, the selection device 200 performs steps S9 to S15 as described in the first embodiment.
[0102] In the first embodiment, for example, the processes S9 to S15 were repeated until the number of generations reached a predetermined number.
[0103] On the other hand, in the second embodiment, in S203, the selection unit 120 uses the results obtained from pre-training (Z, X, Y, etc.) to determine whether the generation pattern (sum of the highest priority) obtained in S15 satisfies the conditions for terminating the process. In other words, the determination in S203 is made each time a generation advances.
[0104] If the determination result in S203 is Yes, the selection unit 120 terminates the process at this point. In S204, the output unit 130 outputs the pattern with the highest total priority among the pattern sets of the generation at the time when the process was terminated. If the determination result in S203 is No, in the next generation, S9 to S15 are executed.
[0105] <S203: Specific Example of Determination of Process Termination> A specific example of the determination of process termination in S203 will be described. FIG. 25 is a diagram for explaining the method of determining process termination. In FIG. 25, it is assumed that the number of times (generation number) at the time of determining whether to terminate is n. Z, X, and Y are respectively the acceptance determination value obtained in pre-learning, the minimum value of the "number of times the difference between the optimal solution and the approximate solution becomes 0", and the average value of the "number of times the difference between the optimal solution and the approximate solution becomes 0".
[0106] The selection unit 120 determines whether to terminate the process, for example, using any one of the following conditions 1 to 8. That is, when the selection unit 120 determines that the condition is satisfied, it terminates the process of generation progress. Regarding which of the conditions 1 to 8 to use, it can be set in advance.
[0107] In the following, "A exceeds B" may be regarded as "A is greater than or equal to B". Also, "A is less than or equal to B" may be regarded as "A is less than B". Also, when using "the acceptance determination value at time point of number of times n exceeds Z", "the acceptance determination value at time point of number of times n exceeds Z" may be regarded as meaning that "at time point of number of times n, the acceptance determination value has exceeded Z for a predetermined number of times". Note that the calculation method of the acceptance determination value at time point of number of times n is as described above.
[0108] <Condition 1> The number of times n exceeds the minimum value X.
[0109] <Condition 2> "(The number of times n exceeds the minimum value X) and (the number of times n is less than or equal to the average value Y)" <Condition 3> The acceptance determination value at the n-th count exceeds Z.
[0110] <Condition 4> “(The count n exceeds the minimum value X) and (the acceptance determination value at the n-th count exceeds Z)” <Condition 5> “(The acceptance determination value at the n-th count exceeds Z) and (the count n is less than or equal to the average value Y)” <Condition 6> “(The acceptance determination value at the n-th count exceeds Z) and (the count n exceeds the minimum value X) and (the count n is less than or equal to the average value Y)” <Condition 7> The count n exceeds the average value Y.
[0111] <Condition 8> “(The count n exceeds the average value Y) and (the acceptance determination value at the n-th count exceeds Z)” Next, a specific processing example (simulation) by the selection device 100 in the second embodiment will be described as Example 2-1.
[0112] (Second Embodiment: Example 2-1) FIG. 26 shows the configuration of the network 200 in Example 2-1. Each square in FIG. 26 represents a facility, and the shaded square represents a faulty facility. Each facility is numbered, and hereinafter, each facility will be referred to using its number.
[0113] As shown in FIG. 26, the network 200 has a hierarchical structure in which a lower-level ring is connected to an upper-level ring of a ladder. In Example 2-1, the priority of the facilities belonging to the higher ladder ring is higher than the priority of the facilities belonging to the lower ladder ring than that ring. Also, the priority takes into account the propagation effect between facilities.
[0114] FIG. 27 shows an example of information on faulty facilities and their priorities obtained from the information acquisition unit 110 and stored in the data storage unit 140.
[0115] Figure 28 shows the simulation conditions in Example 2-1. As shown in Figure 28, the number of faulty equipment in one pattern is set to 5. The total number of combinations of selecting 5 faulty equipment from all 18 faulty equipment is 8568. The initial (first generation) number of patterns is set to 50, and the cutoff number is set to 20. The number of trial generations when performing the processing in the first embodiment is set to 1000 generations. The minimum value in pre-training (corresponding to X mentioned above) is 1, the average value in pre-training (corresponding to Y mentioned above) is 5, and the acceptance judgment value in pre-training (corresponding to Z mentioned above) is 0.9.
[0116] Figure 29 shows the results of the calculation performed by the selection device 100 under the above conditions. In Figure 29, "genetic algorithm" means that the calculation in the first embodiment is performed for the number of trial generations. "genetic + simulated annealing" means that the calculation in the second embodiment is performed. As shown in Figure 29, the calculation can be performed faster by using the genetic algorithm compared to the case where the calculation is performed for all combinations. In particular, it can be seen that the calculation can be performed even faster by using the "genetic + simulated annealing" method.
[0117] (Example hardware configuration) Both the selection device 100 and the learning device described in this embodiment can be realized, for example, by having a computer execute a program. This computer may be a physical computer or a virtual machine on the cloud. Hereinafter, the selection device 100 and the learning device will be collectively referred to as "devices".
[0118] In other words, the device can be realized by using hardware resources such as the CPU and memory built into a computer to execute a program corresponding to the processing performed by the device. The program can be recorded on a computer-readable recording medium (such as portable memory), saved, and distributed. It can also be provided via a network, such as the Internet or email.
[0119] Figure 30 shows an example of the hardware configuration of the computer described above. The computer in Figure 30 has a drive device 1000, an auxiliary storage device 1002, a memory device 1003, a CPU 1004, an interface device 1005, a display device 1006, an input device 1007, an output device 1008, etc., all of which are interconnected by a bus BS. The computer may also be equipped with a GPU.
[0120] The program that enables processing on the computer is provided, for example, on a recording medium 1001 such as a CD-ROM or memory card. When the recording medium 1001 containing the program is set in the drive device 1000, the program is installed from the recording medium 1001 to the auxiliary storage device 1002 via the drive device 1000. However, the program does not necessarily have to be installed from the recording medium 1001; it may also be downloaded from another computer via a network. The auxiliary storage device 1002 stores the installed program as well as necessary files and data.
[0121] The memory device 1003 reads and stores a program from the auxiliary storage device 1002 when a program startup command is received. The CPU 1004 implements the functions related to the memory device 1003 according to the program stored in the memory device 1003. The interface device 1005 is used as an interface for connecting to a network, etc. The display device 1006 displays a GUI (Graphical User Interface) etc. generated by a program. The input device 1007 consists of a keyboard and mouse, buttons, or a touch panel etc., and is used to input various operation commands. The output device 1008 outputs the calculation results.
[0122] (Effects of the embodiment) As explained above, the technologies described in the first and second embodiments make it possible to quickly determine which communication equipment needs to be restored when multiple communication equipment fails in the network, thereby shortening the time it takes to restore communication services.
[0123] Furthermore, as described in the second embodiment, by performing a processing termination decision (such as simulated annealing) based on a criterion value determined by pre-training, in addition to the genetic algorithm, it becomes possible to further shorten the time until communication service is restored.
[0124] Further details regarding the above embodiments are disclosed below, specifically Appendix 1 and Appendix 2.
[0125] <Note 1> (Additional note 1) A selection device for selecting specific faulty equipment from among multiple faulty equipment that should be prioritized for restoration in a network equipped with multiple pieces of equipment that provide communication services, Memory and At least one processor connected to the memory, Includes, The aforementioned processor, Information on faulty equipment in the aforementioned network is acquired, Multiple patterns consisting of a specific number of faulty devices are extracted from the aforementioned multiple faulty devices, and the specific set of faulty devices is selected based on the sum of the priorities of the specified number of faulty devices in each pattern. Selection device. (Additional note 2) The processor repeatedly performs the following process: extract the pattern with the highest total priority from the first set of patterns; generate a set of patterns from each pattern in the set of patterns obtained by removing the pattern with the highest total priority from the first set of patterns; and generate a third set of patterns from the second set of patterns which includes the pattern with the highest total priority, treating the third set of patterns as a new first set of patterns. The selection device described in Appendix 1. (Additional note 3) The processor sorts the second set of patterns in order of the sum of the priorities of each pattern, and the set of patterns with the highest sum of priorities in the sorted set of patterns becomes the third set of patterns. The selection device described in Appendix 2. (Additional note 4) The processor generates multiple copies of each pattern in the set of patterns obtained by removing the pattern with the highest total priority from the set of first patterns, and replaces the lowest-level fault equipment in each copy with fault equipment of a higher level. The selection device described in Appendix 2. (Additional note 5) The processor selects the faulty equipment belonging to the pattern with the highest total priority in the set of third patterns after performing the above process multiple times as the specific set of faulty equipment. The selection device described in Appendix 3. (Additional note 6) The processor calculates a priority for each faulty piece of equipment in the specified number of faulty pieces of equipment, taking into account the ripple effect on other pieces of equipment. A selection device as described in any one of the appendices 1 through 5. (Additional note 7) A selection method performed by a selection device that selects specific faulty equipment from among multiple faulty equipment that should be prioritized for restoration in a network equipped with multiple pieces of equipment that provide communication services, An information acquisition step to acquire information about faulty equipment in the aforementioned network, A selection step involves extracting multiple patterns consisting of a specific number of faulty equipment from the aforementioned multiple faulty equipment, and selecting a specific set of faulty equipment based on the sum of the priorities of the specified number of faulty equipment in each pattern. A selection method that includes the following features. (Additional note 8) A non-temporary storage medium storing a program for causing a computer to function as a component of any one of the selected devices described in any one of the appendices 1 through 6.
[0126] <Note 2> (Additional note 1) A learning device used to determine a reference value used to select specific faulty equipment that should be prioritized for restoration from among multiple faulty equipment in a network equipped with multiple pieces of equipment that provide communication services, Memory and At least one processor connected to the memory, Includes, The aforementioned processor, The process of calculating the total priority of a pattern while replacing faulty equipment in a pattern consisting of a specific number of faulty equipment is executed. The reference value is determined based on the difference between the approximate solution obtained by the above process and the optimal solution. Learning device. (Additional note 2) The processor determines the minimum or average number of operations for which the difference becomes zero as the reference value. The learning device described in Appendix 1. (Additional note 3) The processor calculates an acceptance determination value based on the total priority at the time the difference becomes zero and the total priority in the processing one step prior to that time, and determines the acceptance determination value as the reference value. A learning device as described in Appendix 1 or 2. (Additional note 4) A selection device for selecting specific faulty equipment from among multiple faulty equipment that should be prioritized for restoration in a network equipped with multiple pieces of equipment that provide communication services, Memory and At least one processor connected to the memory, Includes, The aforementioned processor, Information on faulty equipment in the aforementioned network is acquired, The process involves swapping faulty equipment in a pattern consisting of a specific number of faulty devices, calculating the total priority of the pattern, terminating the process based on a baseline value obtained through pre-training, and selecting the specific set of faulty devices based on the pattern at the time the process was terminated. Selection device. (Additional note 5) A learning method performed by a learning device that determines a reference value used to select specific faulty equipment to be prioritized for restoration from among multiple faulty equipment in a network equipped with multiple pieces of equipment that provide communication services, A calculation step that performs a process to calculate the total priority of a pattern while replacing faulty equipment in a pattern consisting of a specific number of faulty equipment, A learning step in which the reference value is determined based on the difference between the approximate solution obtained by the processing in the calculation step and the optimal solution. A learning method that includes [the following features]. (Additional note 6) A selection method performed by a selection device that selects specific faulty equipment from among multiple faulty equipment that should be prioritized for restoration in a network equipped with multiple pieces of equipment that provide communication services, An information acquisition step to acquire information about faulty equipment in the aforementioned network, A selection step which involves executing a process to calculate the total priority of a pattern while swapping faulty equipment in a pattern consisting of a specific number of faulty equipment, terminating the process based on a reference value obtained from pre-training, and selecting a specific set of faulty equipment based on the pattern at the time the process was terminated. A selection method that includes the following features. (Additional note 7) A non-temporary storage medium storing a program for causing a computer to function as a component of a learning device described in any one of the appendices 1 to 3. (Additional note 8) A non-temporary storage medium storing a program for causing a computer to function as a component in the selection device described in Appendix 4.
[0127] Although this embodiment has been described above, the present invention is not limited to this specific embodiment, and various modifications and changes are possible within the scope of the gist of the invention as described in the claims. [Explanation of Symbols]
[0128] 100 Selection device (learning device) 110 Information Acquisition Department 120 Selection Section 130 Output section 140 Data Storage Unit 150 Learning Department 200 Networks 1000 drive unit 1001 Recording media 1002 Auxiliary storage 1003 Memory device 1004 CPU 1005 Interface device 1006 Display device 1007 Input device 1008 Output device
Claims
1. A learning device used to determine a reference value used to select specific faulty equipment that should be prioritized for restoration from among multiple faulty equipment in a network equipped with multiple pieces of equipment that provide communication services, A calculation unit that performs a process to calculate the sum of the priorities of a pattern while replacing faulty equipment in a pattern consisting of a specific number of faulty equipment obtained by randomly generating faults in the network, The system includes a learning unit that determines the reference value based on the difference between the approximate solution obtained by the processing performed by the calculation unit and the optimal solution, The learning unit determines the minimum or average number of times the process is performed so that the difference becomes zero as the reference value. Learning device.
2. A learning device used to determine a reference value used to select specific faulty equipment that should be prioritized for restoration from among multiple faulty equipment in a network equipped with multiple pieces of equipment that provide communication services, A calculation unit that performs a process to calculate the sum of the priorities of a pattern while replacing faulty equipment in a pattern consisting of a specific number of faulty equipment obtained by randomly generating faults in the network, The system includes a learning unit that determines the reference value based on the difference between the approximate solution obtained by the processing performed by the calculation unit and the optimal solution, The learning unit calculates an acceptance judgment value based on the total priority at the time the difference becomes zero and the total priority in the processing immediately preceding that time, and determines this acceptance judgment value as the reference value. Learning device.
3. A selection device for selecting specific faulty equipment from among multiple faulty equipment that should be prioritized for restoration in a network equipped with multiple pieces of equipment that provide communication services, An information acquisition unit that acquires information on faulty equipment in the aforementioned network, A selection unit performs a process to calculate the sum of the priorities of a pattern consisting of a specific number of faulty devices while swapping the faulty devices in the pattern, and randomly generates failures in the network during pre-training. Based on a reference value which is the minimum or average number of times the process is performed that results in zero difference between the approximate solution obtained by the process and the optimal solution, the selection unit terminates the process and selects a specific set of faulty devices based on the pattern at the time the process is terminated. A selection device equipped with the following features.
4. A selection device for selecting specific faulty equipment from among multiple faulty equipment that should be prioritized for restoration in a network equipped with multiple pieces of equipment that provide communication services, An information acquisition unit that acquires information on faulty equipment in the aforementioned network, A selection unit performs a process to calculate the total priority of a pattern consisting of a specific number of faulty devices while swapping the faulty devices in the pattern, and in pre-learning performed by randomly generating faults in the network, the process is terminated based on a reference value which is an acceptance judgment value calculated based on the total priority at the point when the difference between the approximate solution and the optimal solution obtained by the process becomes zero, and the total priority in the process immediately preceding that point, and selects the specific multiple faulty devices based on the pattern at the time the process was terminated. A selection device equipped with the following features.
5. A learning method performed by a learning device that determines a reference value used to select specific faulty equipment to be prioritized for restoration from among multiple faulty equipment in a network equipped with multiple pieces of equipment that provide communication services, A calculation step that performs a process to calculate the sum of the priorities of a pattern while replacing faulty equipment in a pattern consisting of a specific number of faulty equipment obtained by randomly generating failures in the network, The system includes a learning step that determines the reference value based on the difference between the approximate solution obtained by the processing in the calculation step and the optimal solution, In the learning step, the learning device determines the minimum or average number of processing steps at which the difference becomes zero as the reference value. Learning methods.
6. A selection method performed by a selection device that selects specific faulty equipment from among multiple faulty equipment that have occurred in a network equipped with multiple pieces of equipment providing communication services, the equipment being selected to be restored first. An information acquisition step to acquire information about faulty equipment in the aforementioned network, A selection step in which, in pre-learning performed by replacing faulty equipment in a pattern consisting of a specific number of faulty equipment, calculating the sum of the priorities of the pattern, and randomly generating faults in the network, the process is terminated based on a reference value which is the minimum or average number of times the process is performed when the difference between the approximate solution obtained by the process and the optimal solution becomes zero, and a selection step in which a specific number of faulty equipment are selected based on the pattern at the time the process is terminated. A selection method that includes the following features.
7. A program for causing a computer to function as a component of the learning device described in claim 1 or 2.
8. A program for causing a computer to function as a component in the selection device described in claim 3 or 4.
Citation Information
Patent Citations
Network topology system and topology and constructing method of routing table thereof
JP2019036936A