Detailed Description
The embodiment of the invention provides a method and a device for mining alarm association rules.
In order to make those skilled in the art better understand the technical solution of the present invention, the technical solution in the embodiment of the present invention will be clearly and completely described below with reference to the drawings in the embodiment of the present invention, and it is obvious that the described embodiment is only a part of the embodiment of the present invention, and not all embodiments. All other embodiments, which can be derived by a person skilled in the art from the embodiments given herein without making any creative effort, shall fall within the protection scope of the present invention.
As shown in fig. 1, an execution main body of the method may be a server, where the server may be an independent server or a server cluster composed of a plurality of servers, and the server may be a server capable of performing network operation processing, such as a server configured by a network resource. The method may specifically comprise the steps of:
and step S01, acquiring alarm items generated in each time window according to a preset time window division method to form an alarm set.
In the implementation, the server collects alarm items generated by various services in the system and stores the alarm items in a historical alarm library. The alarm item may include a plurality of preset fields according to actual needs, for example: alarm number, alarm title, generation time, elimination time, alarm level, machine room attribute, network element object, etc.
In order to solve the problem that the transaction division in the traditional data mining algorithm is difficult, all the collected alarm items need to be time sliced according to the generation time of each alarm item. According to a preset time window dividing method, acquiring alarm items corresponding to each time window from a historical alarm library, namely acquiring alarm items with time in the time windows. And combining the alarm items belonging to the same time window to obtain an alarm set corresponding to each time window.
Before time slicing is performed on each alarm item, preprocessing may also be performed on each alarm item in the historical alarm library, where the preprocessing may include: cleaning, value supplementing, weight removing and the like. The cleaning and the complementing value are selected according to preset fields of original alarm items acquired from the historical alarm library, and corresponding operations are executed according to whether the preset fields have missing or wrong states: if there is a missing or error in the key field of the default field, for example: and if the non-key field has a missing or error, the supplementary value operation can be executed by looking up a dictionary and the like. The duplication removal is used for merging or eliminating the alarm items which are judged to be the same in a preset time period, and the preset time period can be a corresponding time window.
And step S02, clustering the alarm items in the alarm set according to the first word vector of each alarm item through a preset clustering algorithm, and classifying each alarm item into an alarm transaction corresponding to each cluster.
According to a preset word segmentation algorithm, for example: and jieba word segmentation and the like, and weighting the word vectors of all keywords in the same alarm item through keyword extraction and word vector conversion to obtain a first word vector of each alarm item.
Clustering is carried out according to the first word vector of each alarm item through a preset clustering algorithm, and all alarm items in the alarm set are divided into a plurality of clusters.
Further, the preset clustering algorithm is a DBSCAN clustering algorithm.
The preset clustering algorithm is multiple, and the embodiment of the invention only gives the DBSCAN clustering algorithm as an example. And clustering operation is carried out according to the distance between the first word vectors by using a DBSCAN clustering algorithm. And dividing the alarm items contained in each cluster obtained by the DBSCAN clustering algorithm into alarm affairs corresponding to the cluster.
The DBSCAN is a density-based clustering algorithm, and can be clustered by the closeness of the first word vector distribution. The alarm items in the same cluster are closely connected with each other through the first word vectors, that is, the first word vectors of any alarm item in the cluster are not far away from the first word vector of other alarm items in the same cluster.
And step S03, according to the preset attribute weight of each alarm item, carrying out alarm rule mining through a preset association analysis algorithm to obtain alarm association rules in each alarm transaction.
Obtaining the attribute weight of each alarm item, wherein the attribute weight is the preset weight value of each alarm attribute contained in the alarm item.
And according to the attribute weight of each alarm item, utilizing a preset association analysis algorithm to carry out alarm rule mining on the alarm items contained in each alarm transaction. And obtaining alarm association rules in each alarm transaction according to the result of alarm rule mining.
And summarizing the alarm association rules in all the alarm transactions to obtain all the alarm association rules. The root alarm as a key factor and the secondary alarms as corresponding secondary factors can be determined from all alarm items through the alarm association rule, wherein the root alarm and the corresponding secondary alarms have strong association relationship, namely the root alarm causes the secondary alarms with high probability. Therefore, the fault or problem corresponding to the alarm item can be more quickly and accurately positioned according to the root alarm.
It can be seen from the above technical solutions provided by the embodiments of the present invention that, in the embodiments of the present invention, an alarm set corresponding to each time window is obtained according to a preset time window division method, then, in the alarm set, clustering is performed according to a preset clustering algorithm according to a first word vector of each alarm item to obtain an alarm transaction corresponding to each cluster, and alarm rule mining is performed according to an attribute weight of each preset alarm item through a preset association analysis algorithm to obtain an alarm association rule in each alarm transaction. By the embodiment of the invention, the accurate association rule among the alarm items can be efficiently given.
Based on the above embodiment, further, as shown in fig. 2, the specific processing manner of the step S01 may be varied, and only one alternative processing manner is provided below, and the processing of the steps S011 to S012 can be referred to specifically.
Step S011, obtaining each time window according to the duration and the sliding step length of the preset time window;
and step S012, acquiring alarm items generated in each time window according to the generation time of each alarm item, and forming an alarm set.
The embodiment of the invention adopts a sliding window mode to carry out time slicing, and according to the duration and the sliding step length of the preset time window, after the initial time of the first time window is determined, each time window is obtained in sequence. Specific examples are as follows:
if the time length of the set time window is T and the sliding step length is lambda, obtaining each time window:
first time window t1,tm1],tm1=t1+T;
Second time window [ t ]2,tm2],t2=t1+λ,tm2=tm1+λ=t2+T;
……;
Ith time window ti,tmi],ti=ti-1+λ,tmi=tmi-1+λ=ti-1+T;
……
Nth time window tn,tmn],tn=tn-1+λ,tmn=tmn-1+λ=tn-1+T。
And then, according to each divided time window, acquiring alarm items of the generated time in each time window from a historical alarm library, and combining to obtain an alarm set corresponding to each time window.
In practice, to ensure that all alarm items can be covered, the sliding step length λ is often smaller than the time length T, for example, the set time length is 5 minutes and the sliding step length is 3 minutes. At this time, the adjacent two time windows have partial time overlap, and the corresponding alarm sets also have partially identical alarm items.
According to the technical scheme provided by the embodiment of the invention, the time windows are obtained by adopting the sliding window division method, so that the reasonable and flexible division of the alarm sets is realized, and the accurate association rule among the alarm items can be provided efficiently in the follow-up process.
Based on the above embodiment, as shown in fig. 3, further, the specific processing manner of step S03 may be varied, and only one alternative processing manner is provided below, which may specifically refer to the processing of steps S031-S032 below.
And step S031, obtaining the attribute weight of each alarm item through a weighted average algorithm according to the preset weight of the alarm attribute of the alarm item.
The fields of the alarm items comprise a plurality of alarm attributes, such as alarm levels, alarm types, machine room attributes, alarm network classifications, alarm interpretation assistance and the like, and the weighted values of the alarm attributes are set according to the attribute information of the alarm attributes. And then carrying out weighted average on the weighted values of the alarm attributes so as to obtain the attribute weight of each alarm item.
And S032, mining alarm rules through a preset Apriori algorithm according to the attribute weight of each alarm item in each alarm transaction to obtain alarm association rules in each alarm transaction.
There are many algorithms that can be used for mining alarm rules, and the embodiment of the present invention is illustrated by taking Apriori algorithm as an example. And acquiring the alarm association relation of all alarm items in each alarm transaction according to the attribute weight of each alarm item through an Apriori algorithm.
Further, the specific steps of performing the Apriori algorithm in step S032 can be referred to as steps S0321-S0322.
Step S0321, calculating the weighted support of each alarm item set according to the attribute weight of each alarm item, and obtaining a frequent item set according to a preset minimum support threshold.
And calculating the weighting support degree of each alarm item set according to the attribute weight of each alarm item contained in the alarm transaction and the preset classification, wherein the weighting support degree is a factor of the attribute weight introduced on the basis of the existing support counting method. For example, if the alarm item set X ═ { i ═ i1,i2…ikIn which ijThe alarm item contained in the alarm item set has a corresponding attribute weight of wj,0≤wjAnd if the weight support degree of the alarm item set is less than or equal to 1, the weighting support degree of the alarm item set is as follows: supw(X)=max{w1,w2…wkAnda (x), where sup (x) is a preset conventional support degree, and a higher conventional support degree indicates that the frequency of simultaneous occurrence of each alarm item included in the alarm item set is higher.
According to a preset minimum support threshold value minsup, obtaining a weighted support by the weighted support of each alarm item set, and taking each alarm item set with the weighted support greater than or equal to the minimum support threshold value as a frequency sensitive item set, which is equivalent to a ifw(X) is more than or equal to min, the alarm item set X is a frequent k item set and is marked as Lk。
In implementation, the obtained alarm frequent item set L can be further processedkObtaining a new frequent item set C after carrying out preset splicing and pruning operationsk. The splicing and pruning operation is specifically composed of two parts, one part passing through Lk-1To be connected with itself to obtain Ck1The other part needs to be at Lk-1Is extended to obtain Ck2,Ck=Ck1∪Ck2Through this step, a new alarm frequency set is obtainedCk。
Step S0322, calculating to obtain a weighted confidence coefficient and a weighted lifting degree of the frequent item set, and obtaining an alarm association rule in each alarm transaction according to a preset minimum confidence coefficient threshold value and a preset minimum lifting degree threshold value.
Calculating the weighting confidence coefficient and the weighting promotion degree of the obtained alarm frequency set, wherein the specific calculation process is as follows:
The weighted confidence is used for representing the possibility that an alarm item y appears simultaneously under the condition that the alarm item x appears, and the weighted promotion is used for representing the incidence relation between the alarm items x and y: if the weighted lifting degree is 1, x and y are independent; if the weighted lifting degree is greater than 1, x is strongly correlated with y; if the weighted boost is <1, then x is weakly correlated with y.
Setting a minimum confidence threshold value minconf and a minimum lifting degree threshold value minlift to satisfy Wconf(x=>y) is not less than minconf, and lift (x ═ y>y) is more than or equal to minlift, and all the association relation records are stored to obtain the alarm association rule of the alarm transaction. In the alarm association rule, each alarm item with association relation is divided, and the levels are divided according to the importance degree of the alarm item in the association relation, in the embodiment of the invention, the alarm item is divided into two levels: a root alarm as a key factor and a secondary alarm as a secondary factor.
According to the technical scheme provided by the embodiment of the invention, the embodiment of the invention obtains the weighting support degree of each alarm item set and the weighting confidence degree and the weighting promotion degree of each frequent item set through the obtained attribute weight of each alarm item, and performs screening according to the preset minimum confidence degree threshold value and the minimum promotion degree threshold value to obtain the alarm association rule in each alarm transaction, so that the accurate association rule among the alarm items is efficiently given.
Based on the foregoing embodiment, as shown in fig. 4, after the foregoing S03, the method for mining alarm association rules further includes:
and step S04, according to the generation time of each alarm item, splicing the feature words of the alarm items in each time window to obtain feature sentences corresponding to each alarm set, splicing the sentences to obtain feature articles, and inputting the feature articles into a preset natural language word vector model to obtain second word vectors of each alarm item.
It can be known from the above embodiments that the alarm association rule obtained by the preset association analysis algorithm only includes the alarm item with a higher occurrence frequency, and in order to obtain the alarm association rule more comprehensively, the embodiments of the present invention utilize a natural language vector model.
And obtaining a second word vector of each alarm item through a preset natural language vector model according to the generation time of each alarm item.
Extracting corresponding feature words from each alarm item, splicing the feature words of the alarm items in each alarm set according to the time sequence of the generation time of each alarm item to obtain feature sentences corresponding to each alarm set, and splicing the feature sentences according to the time sequence of a time window corresponding to each alarm set to obtain feature articles.
And inputting the obtained feature words of the alarm items, the feature sentences of the alarm sets and the spliced feature articles into a pre-trained natural language vector model to obtain second word vectors of the alarm items.
Further, the natural language word vector model is constructed based on a word2vec algorithm.
The natural language vector model has a plurality of construction methods, and the embodiment of the invention takes a word2vec algorithm as an example for illustration.
The word2vec algorithm uses two models to define input and output: a connective Bag model (CBOW) and a Skip-Gram. The input of the CBOW model is a second word vector corresponding to a context-related feature word of a certain feature word, and the output is the second word vector of the certain feature word; the thinking of the Skip-Gram model and the CBOW model is just opposite, the input is a second word vector of a certain characteristic word, and the output is a second word vector of the characteristic word of the context corresponding to the certain characteristic word. Wherein the Skip-Gram model is more accurate when processing results of large-scale datasets.
Step S05, according to the similarity of the second word vector of each alarm item, supplementing the alarm item with the similarity higher than the preset similarity threshold value with the alarm item in the alarm association rule
And supplementing the alarm items which are greater than a preset similarity threshold value into an alarm association rule obtained through a preset association analysis algorithm by calculating the distance and the similarity between the second word vectors of the alarm items. Specifically, the method comprises the following steps: if the similarity between the alarm item and any one alarm is greater than a preset similarity threshold, judging that the alarm item is also a root alarm; and if the similarity of any alarm is greater than a preset similarity threshold, judging that the alarm item is the secondary alarm.
According to the technical scheme provided by the embodiment of the invention, the embodiment of the invention obtains the second word vector of each alarm item through the preset natural language word vector model, and supplements the alarm association rule according to the similarity of each second word vector, so that the accurate and comprehensive association rule among the alarm items is efficiently given.
Based on the above embodiment, as shown in fig. 5, further after step S05, the method further includes:
and step S06, acquiring new alarm items under the current time window, matching each new alarm item with the alarm association rule, and obtaining the root alarm corresponding to the new alarm item according to the matching result.
When a newly generated alarm item is obtained, all new alarm items in the current time window are obtained by taking the time window as a unit, then each new alarm item is compared with each alarm item in the obtained alarm association rule, whether a matched root alarm or secondary alarm exists or not is judged according to a preset matching rule, and if the alarm is the secondary alarm, the root alarm corresponding to the secondary alarm is further determined.
Further, the method further comprises:
and according to the matching result, performing alarm compression on the multiple secondary alarms, and performing alarm derivation on the multiple root alarms.
If a plurality of secondary alarms are obtained by matching in the current time window, alarm compression is performed on the plurality of secondary alarms, for example, merging or de-duplicating is performed on the plurality of secondary alarms corresponding to the same root alarm, and if a plurality of root alarms are obtained by matching, alarm derivation can be performed, for example, a new alarm item is derived from the plurality of root alarms, so that alarm information is further compressed, and unnecessary information transmission and display are reduced.
In addition, the processed new alarm items are stored in a historical alarm library and used for updating and iterating various models and algorithms in the implementation periodically so as to update the alarm association rule.
According to the technical scheme provided by the embodiment of the invention, the embodiment of the invention can match each new alarm item with the alarm association rule by acquiring the new alarm item under the current time window, and obtain the root alarm corresponding to the new alarm item according to the matching result, so that the accurate and comprehensive association rule among the alarm items can be efficiently given.
Corresponding to the alarm association rule mining method provided in the above embodiment, based on the same technical concept, an alarm association rule mining device is further provided in the embodiment of the present invention, fig. 6 is a schematic diagram of modules of the alarm association rule mining device provided in the embodiment of the present invention, the alarm association rule mining device is configured to execute the alarm association rule mining method described in fig. 1 to fig. 5, and as shown in fig. 6, the alarm association rule mining device includes: a data preprocessing module 10, a transaction partitioning module 11 and an association analysis module 12.
The data preprocessing module 10 is configured to obtain alarm items generated in each time window according to a preset time window division method, and form an alarm set; the transaction dividing module 11 is configured to perform clustering in the alarm set according to the first word vector of each alarm item by using a preset clustering algorithm, and classify each alarm item into an alarm transaction corresponding to each cluster; the association analysis module 12 is configured to perform alarm rule mining according to preset attribute weights of the alarm items through a preset association analysis algorithm, so as to obtain alarm association rules in the alarm transactions.
It can be seen from the above technical solutions provided by the embodiments of the present invention that, in the embodiments of the present invention, an alarm set corresponding to each time window is obtained according to a preset time window division method, then, in the alarm set, clustering is performed according to a preset clustering algorithm according to a first word vector of each alarm item to obtain an alarm transaction corresponding to each cluster, and alarm rule mining is performed according to an attribute weight of each preset alarm item through a preset association analysis algorithm to obtain an alarm association rule in each alarm transaction. By the embodiment of the invention, the accurate association rule among the alarm items can be efficiently given.
Further, the data preprocessing module includes: a window dividing unit and a data combining unit.
The window dividing unit is used for obtaining each time window according to the duration and the sliding step length of the preset time window; and the data combination unit is used for acquiring the alarm items generated in each time window according to the generation time of each alarm item to form an alarm set.
Further, the preset clustering algorithm is a DBSCAN clustering algorithm.
Further, the association analysis module includes: a weight analysis unit and an algorithm analysis unit.
The weight analysis unit is used for obtaining the attribute weight of each alarm item through a weighted average algorithm according to the preset weight of the alarm attribute of the alarm item; and the algorithm analysis unit is used for mining alarm rules through a preset Apriori algorithm according to the attribute weight of each alarm item in each alarm transaction to obtain the alarm association rules in each alarm transaction.
Further, the algorithm analysis unit includes: a first analysis unit and a second analysis unit.
The first analysis unit is used for calculating the weighted support of each alarm item set according to the attribute weight of each alarm item and obtaining a frequent item set according to a preset minimum support threshold; and the second analysis unit is used for calculating to obtain the weighted confidence coefficient and the weighted promotion degree of the frequent item set and obtaining the alarm association rule in each alarm transaction according to a preset minimum confidence coefficient threshold value and a preset minimum promotion degree threshold value.
Further, the alarm association rule mining device further includes: the device comprises a vector acquisition module and a rule supplement module.
The vector acquisition module is used for splicing the feature words of the alarm items in each time window to obtain feature sentences corresponding to each alarm set according to the generation time of each alarm item, splicing each sentence to obtain a feature article, and inputting the feature article into a preset natural language word vector model to obtain a second word vector of each alarm item; and the rule supplementing module is used for supplementing the alarm items with the similarity higher than a preset similarity threshold value with the alarm item in the alarm association rule according to the similarity of the second word vector of each alarm item.
Further, the alarm association rule mining device further includes: and a rule matching module.
The rule matching module is used for acquiring new alarm items in the current time window, matching each new alarm item with the alarm association rule, and obtaining a root alarm corresponding to the new alarm item according to the matching result.
Further, the alarm association rule mining device further includes: and an information compression module.
And the information compression module is used for carrying out alarm compression on a plurality of secondary alarms and carrying out alarm derivation on a plurality of root alarms according to the matching result.
Further, the natural language word vector model is constructed based on a word2vec algorithm.
It can be seen from the above technical solutions provided by the embodiments of the present invention that, in the embodiments of the present invention, an alarm set corresponding to each time window is obtained according to a preset time window division method, then, in the alarm set, clustering is performed according to a preset clustering algorithm according to a first word vector of each alarm item to obtain an alarm transaction corresponding to each cluster, and alarm rule mining is performed according to an attribute weight of each preset alarm item through a preset association analysis algorithm to obtain an alarm association rule in each alarm transaction. By the embodiment of the invention, the accurate association rule among the alarm items can be efficiently given.
The alarm association rule mining device provided by the embodiment of the invention can realize each process in the embodiment corresponding to the alarm association rule mining method, and is not repeated here for avoiding repetition.
It should be noted that the alarm association rule mining device provided in the embodiment of the present invention and the alarm association rule mining method provided in the embodiment of the present invention are based on the same inventive concept, and therefore specific implementation of the embodiment may refer to implementation of the alarm association rule mining method, and repeated details are not described again.
Corresponding to the alarm association rule mining method provided in the foregoing embodiment, based on the same technical concept, an embodiment of the present invention further provides an electronic device, where the electronic device is configured to execute the alarm association rule mining method, and fig. 7 is a schematic structural diagram of an electronic device implementing various embodiments of the present invention, as shown in fig. 7. Electronic devices may vary widely in configuration or performance and may include one or more processors 701 and memory 702, where one or more stored applications or data may be stored in memory 702. Memory 702 may be, among other things, transient storage or persistent storage. The application program stored in memory 702 may include one or more modules (not shown), each of which may include a series of computer-executable instructions for the electronic device. Still further, the processor 701 may be configured to communicate with the memory 702 to execute a series of computer-executable instructions in the memory 702 on the electronic device. The electronic device may also include one or more power supplies 703, one or more wired or wireless network interfaces 704, one or more input-output interfaces 705, one or more keyboards 706.
Specifically, in this embodiment, the electronic device includes a processor, a communication interface, a memory, and a communication bus; the processor, the communication interface and the memory complete mutual communication through a bus; the memory is used for storing a computer program; the processor is used for executing the program stored in the memory and realizing the following method steps:
acquiring alarm items generated in each time window according to a preset time window dividing method to form an alarm set;
clustering is carried out on the alarm set through a preset clustering algorithm according to the first word vector of each alarm item, and each alarm item is classified into an alarm transaction corresponding to each cluster;
and according to the attribute weight of each preset alarm item, carrying out alarm rule mining through a preset association analysis algorithm to obtain alarm association rules in each alarm transaction.
An embodiment of the present application further provides a computer-readable storage medium, in which a computer program is stored, and when executed by a processor, the computer program implements the following method steps:
acquiring alarm items generated in each time window according to a preset time window dividing method to form an alarm set;
clustering is carried out on the alarm set through a preset clustering algorithm according to the first word vector of each alarm item, and each alarm item is classified into an alarm transaction corresponding to each cluster;
and according to the attribute weight of each preset alarm item, carrying out alarm rule mining through a preset association analysis algorithm to obtain alarm association rules in each alarm transaction.
As will be appreciated by one skilled in the art, embodiments of the present invention may be provided as a method, apparatus, or computer program product. Accordingly, the present invention may take the form of an entirely hardware embodiment, an entirely software embodiment or an embodiment combining software and hardware aspects. Furthermore, the present invention may take the form of a computer program product embodied on one or more computer-usable storage media (including, but not limited to, disk storage, CD-ROM, optical storage, and the like) having computer-usable program code embodied therein.
The present invention is described with reference to flowchart illustrations and/or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of the invention. It will be understood that each flow and/or block of the flow diagrams and/or block diagrams, and combinations of flows and/or blocks in the flow diagrams and/or block diagrams, can be implemented by computer program instructions. These computer program instructions may be provided to a processor of a general purpose computer, special purpose computer, embedded processor, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be stored in a computer-readable memory that can direct a computer or other programmable data processing apparatus to function in a particular manner, such that the instructions stored in the computer-readable memory produce an article of manufacture including instruction means which implement the function specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be loaded onto a computer or other programmable data processing apparatus to cause a series of operational steps to be performed on the computer or other programmable apparatus to produce a computer implemented process such that the instructions which execute on the computer or other programmable apparatus provide steps for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
In a typical configuration, an electronic device includes one or more processors (CPUs), input/output interfaces, network interfaces, and memory.
The memory may include forms of volatile memory in a computer readable medium, Random Access Memory (RAM) and/or non-volatile memory, such as Read Only Memory (ROM) or flash memory (flash RAM). Memory is an example of a computer-readable medium.
Computer-readable media, including both non-transitory and non-transitory, removable and non-removable media, may implement information storage by any method or technology. The information may be computer readable instructions, data structures, modules of a program, or other data. Examples of computer storage media include, but are not limited to, phase change memory (PRAM), Static Random Access Memory (SRAM), Dynamic Random Access Memory (DRAM), other types of Random Access Memory (RAM), Read Only Memory (ROM), Electrically Erasable Programmable Read Only Memory (EEPROM), flash memory or other memory technology, compact disc read only memory (CD-ROM), Digital Versatile Discs (DVD) or other optical storage, magnetic cassettes, magnetic tape magnetic disk storage or other magnetic storage devices, or any other non-transmission medium that can be used to store information that can be accessed by a computing device. As defined herein, a computer readable medium does not include a transitory computer readable medium such as a modulated data signal and a carrier wave.
It should also be noted that the terms "comprises," "comprising," or any other variation thereof, are intended to cover a non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements does not include only those elements but may include other elements not expressly listed or inherent to such process, method, article, or apparatus. Without further limitation, an element defined by the phrase "comprising an … …" does not exclude the presence of other like elements in a process, method, article, or apparatus that comprises the element.
As will be appreciated by one skilled in the art, embodiments of the present application may be provided as a method, apparatus or computer program product. Accordingly, the present application may take the form of an entirely hardware embodiment, an entirely software embodiment or an embodiment combining software and hardware aspects. Furthermore, the present application may take the form of a computer program product embodied on one or more computer-usable storage media (including, but not limited to, disk storage, CD-ROM, optical storage, and the like) having computer-usable program code embodied therein.
The above description is only an example of the present application and is not intended to limit the present application. Various modifications and changes may occur to those skilled in the art. Any modification, equivalent replacement, improvement, etc. made within the spirit and principle of the present application should be included in the scope of the claims of the present application.