An intelligent operation and maintenance method for rail transit
Through microservice architecture and distributed computing, combined with GPU acceleration and integrated learning algorithms, the real-time and concurrency requirements of data processing and storage in intelligent operation and maintenance of rail transit are solved, and the accuracy and robustness of fault diagnosis are improved, so as to achieve Intelligent and automated operation and maintenance decisions.
Patent Information
- Application Number
- CN202411034402.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2024-07-31
- Publication Date
- 2025-02-14
- Estimated Expiration
- 2044-07-31
AI Technical Summary
The existing intelligent operation and maintenance methods of rail transit have problems that real-time and concurrency requirements are difficult to meet in terms of data processing and storage, and the generalization performance and robustness of the diagnostic model are insufficient, making it difficult to adapt to complex and changeable operation environments.
Using microservice architecture and distributed computing, the data processing task is cached through the Rabbit MQ message queue, and the data processing task is decomposed into two microservices for data checksum data analysis, and executed in parallel. GPU acceleration is used using the CUDA framework, combined with integrated learning algorithms such as Boosting, and the classification results of the fusion decision tree and support vector machine, to improve the accuracy and robustness of fault diagnosis.
It significantly improves the efficiency of rail transit operation and maintenance diagnosis, realizes intelligence and automation of fault diagnosis, risk warning and maintenance decision-making, and improves operational efficiency and safety.
Smart Images

Figure CN118606805B_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of rail transit, and in particular to an intelligent operation and maintenance method for rail transit. Background Art
[0002] With the acceleration of urbanization, rail transit has become an important transportation infrastructure in modern cities. As a large-capacity, fast, punctual, safe and environmentally friendly public transportation mode, rail transit plays an increasingly important role in alleviating urban traffic congestion, improving travel conditions, and promoting economic development. Traditional rail transit operation and maintenance mainly rely on manual experience and regular inspections, which have many shortcomings. On the one hand, the rail transit system covers a wide range and has a large number of equipment. It is difficult to fully cover manual inspections, and the efficiency is low and the labor intensity is high. On the other hand, regular inspections often adopt a post-maintenance strategy, and only repairs are carried out after the equipment fails. At this time, normal operations have been affected, and the maintenance cost is high. In addition, the professional skills of operation and maintenance personnel are uneven, and the diagnostic level is limited by personal experience, making it difficult to deal with sudden failures.
[0003] In order to improve the level of rail transit operation and maintenance, domestic and foreign scholars and enterprises have carried out a lot of research and practice. Based on traditional methods such as fault diagnosis expert system and equipment status monitoring system, the informatization and automation of the operation and maintenance process have been achieved to a certain extent. However, these methods are mainly aimed at single equipment or subsystems, lack a global perspective and system integration, and it is difficult to fully tap the value of massive operation and maintenance data. In addition, the diagnostic model has poor universality and weak migration ability. In recent years, with the development of new generation information technologies such as the Internet of Things, big data, and artificial intelligence, intelligent operation and maintenance has gradually become a research hotspot and development trend in the rail transit industry. By integrating multi-source heterogeneous data through big data platforms, using machine learning algorithms to build predictive maintenance models, and combining knowledge engineering with data-driven, intelligent operation and maintenance is expected to break through the limitations of traditional methods, realize the intelligence and automation of fault diagnosis, risk warning, and maintenance decisions, and comprehensively improve the efficiency and safety of rail transit operations.
[0004] However, the existing intelligent operation and maintenance methods for rail transit still have some shortcomings. First, rail transit data is of many types, complex formats, and huge quantities, which puts higher requirements on data processing and storage. A single data processing architecture and algorithm are difficult to meet the real-time and concurrency requirements. Secondly, most of the current diagnostic models use a single machine learning algorithm, such as support vector machines or decision trees, and the generalization performance and robustness need to be improved, making it difficult to adapt to the complex and changeable rail transit operation environment. Furthermore, the existing methods do not integrate domain knowledge enough, resulting in poor interpretability of diagnostic results, making it difficult to gain the trust and recognition of experts. In addition, intelligent operation and maintenance of rail transit involves multiple links such as data collection, storage, calculation, and visualization. The lack of a unified system architecture and standard specifications leads to difficulties in system integration and high maintenance costs. Summary of the invention
[0005] In response to the problem of low efficiency in rail transit operation and maintenance diagnosis in the prior art, the present application provides an intelligent operation and maintenance method for rail transit, which improves the operation and maintenance diagnosis efficiency through microservice architecture and distributed computing, as well as integrated learning algorithms.
[0006] The present specification provides an intelligent operation and maintenance method for rail transit, including: collecting rail transit data and preprocessing the collected data; transmitting the preprocessed data to a data processing task queue, wherein the data processing task queue uses Rabbit MQ message queue middleware to cache the data tasks to be processed; taking out the data processing task from the data processing task queue, decomposing the data processing task into a data verification microservice and a data analysis microservice, and deploying the data verification microservice and the data analysis microservice in different servers or containers; wherein, an incremental verification method is adopted in the data verification microservice, and only the changed data is verified, and whether the data has changed is determined by comparing the MD5 hash value of the data; in the data analysis microservice, the CUDA framework is adopted for GPU acceleration, and the GPU is used for parallel data processing; the processing results of the data verification microservice and the data analysis microservice are sent to a data stream processing platform, and the data stream processing platform uses the Apache Flink framework to perform stream data processing on the received microservice processing results; the processing results of the data stream processing platform are used as input, and analyzed using a machine learning model to generate a rail transit operation and maintenance report, and the operation and maintenance report includes fault diagnosis results and maintenance suggestions.
[0007] Preprocessing includes data cleaning and feature extraction; data cleaning includes removing noise data, filling missing values and filtering invalid data. Feature extraction includes the extraction of time domain features, frequency domain features and time-frequency domain features. The extracted features include mean, variance, peak, spectral entropy and wavelet coefficients. Preferably, the Apache Flink framework adopts memory computing and incremental processing mechanism to achieve millisecond-level streaming data processing delay.
[0008] Among them, the data verification microservice is an independent, fine-grained service dedicated to verifying and validating data. It checks the integrity, accuracy and consistency of the data to ensure that the data complies with predefined rules and formats. In this application, the data verification microservice adopts an incremental verification method to verify only the changed data, thereby improving the verification efficiency. The data analysis microservice is an independent, fine-grained service dedicated to analyzing and processing data. It receives legitimate data from the data verification microservice, applies various data analysis algorithms and models, and extracts valuable information and insights. In this application, the data analysis microservice uses the CUDA framework for GPU acceleration, and uses the parallel computing capabilities of the GPU to increase the speed of data processing. CUDA (Compute Unified Device Architecture) is a parallel computing platform and programming model developed by NVIDIA. It allows developers to use CUDA-enabled GPUs for general computing, greatly improving the execution efficiency of computationally intensive tasks. CUDA provides a set of software tools and libraries that enable developers to easily write and optimize GPU-based parallel programs. MD5 (Message-Digest Algorithm5) is a widely used hash function used to generate a summary or fingerprint of data. It maps data of arbitrary length to a hash value of fixed length (usually 128 bits). MD5 hash values are often used to verify the integrity and consistency of data, because even if the data changes slightly, its MD5 hash value will change significantly. In the data verification microservice, by comparing the MD5 hash value of the data, you can quickly determine whether the data has changed. GPU (Graphics Processing Unit) is a processor designed specifically for parallel computing. Through programming frameworks such as CUDA, you can make full use of the parallelism of GPUs and significantly accelerate the data processing and analysis process. Stream data processing is a computing model for real-time processing of continuous data streams. Unlike traditional batch processing, stream data processing systems can process data immediately when it arrives and continuously generate processing results. Apache Flink is a well-known open source stream data processing framework that provides a rich API and library to support high-throughput, low-latency stream data processing.
[0009] Furthermore, the processing results of the data stream processing platform are used as input, and the machine learning model is used for analysis to generate a rail transit operation and maintenance report, which includes fault diagnosis results and maintenance suggestions, including: establishing a knowledge base, the knowledge base uses a graph database to store structured data formed by historical fault cases; the structured data includes fault characteristics, fault causes and treatment plans; feature engineering is performed on the structured data in the knowledge base, and the feature engineering includes feature selection, feature extraction and feature conversion processing to obtain a training data set for the machine learning model; an ensemble learning method is used to combine the decision tree and the support vector machine into a strong learner through the Boosting method; the obtained training data set is used to train the obtained strong learner; the analysis results of the data stream processing platform are converted into the same feature vector format as the training data set as the input of the trained strong learner; the trained strong learner is used to classify the input features and output a probability distribution representing different fault types; the fault type with the highest probability is selected as the diagnosis result, and the current state of the rail transit is diagnosed to generate a fault diagnosis result.
[0010] Among them, Boosting is an ensemble learning method that builds a strong learner by combining multiple weak learners. The basic idea of Boosting is to train a series of weak learners in sequence, and each learner tries to correct the errors of the previous learner. During the training process, the Boosting method adjusts the weights of the samples so that the samples that were misclassified by the previous learner receive higher attention in the subsequent learners. Finally, the weighted combination of all weak learners forms a strong learner, whose performance is usually better than that of a single learner. Common Boosting algorithms include AdaBoost, GradientBoosting, etc. A strong learner is a learning model with superior performance, usually composed of multiple weak learners. Compared with a single learner, a strong learner has stronger learning and generalization capabilities, can better fit complex data relationships, and achieve better prediction results on unknown data. A feature vector is a mathematical representation used to represent sample features in machine learning. It is a fixed-length numerical vector, and each dimension corresponds to a characteristic attribute of the sample. The feature vector converts the characteristic information of the sample into a numerical form that can be processed by a computer, and is the input data format of the machine learning algorithm. Through feature engineering, effective feature vectors can be extracted and constructed from raw data to improve the performance of machine learning models. Common feature vector representation methods include one-hot encoding, bag-of-words model, TF-IDF, etc.
[0011] Further, feature engineering is performed on the structured data in the knowledge base to obtain a training data set for the machine learning model, including: using a feature importance evaluation method based on a gradient boosting tree to perform feature selection on the structured data in the knowledge base, calculating the importance score of each feature in the model by training a gradient boosting tree model, sorting features from high to low according to the importance score, and selecting the top N features with the highest importance score as the initial feature set; performing nonlinear dimensionality reduction on the initial feature set by a kernel principal component method to obtain M principal component features after dimensionality reduction; performing feature conversion processing on the obtained M principal component features to obtain a standardized feature vector; wherein , the Z-score standardization method is used to standardize each principal component feature, and the feature value distribution is converted into a standard normal distribution with a mean of 0 and a variance of 1 by subtracting the feature mean and dividing by the feature standard deviation, so as to obtain a standardized feature vector; the obtained standardized feature vector is combined with the corresponding fault type label to form a training sample, and all training samples are combined into a training sample set; preferably, the obtained training sample set is balanced, and the minority class samples are repeatedly sampled by oversampling technology, so that the number of samples of each fault type is similar, and the final training data set is obtained after balancing as the input of the machine learning model.
[0012] Among them, the fault type label refers to the target variable or output variable associated with each training sample during the training of the machine learning model. It indicates the fault type or fault state corresponding to the sample. In the scenario of intelligent operation and maintenance of rail transit, the fault type label is usually a set of discrete values pre-defined based on historical fault cases and expert knowledge, such as "signal system fault", "track equipment fault", "power supply system fault", etc. When constructing the training data set, each training sample consists of two parts: a feature vector and a fault type label. The feature vector represents the input feature of the sample, which is a standardized numerical vector obtained through feature engineering. The fault type label indicates the actual fault type corresponding to the sample and is the supervisory information in the model training process. The goal of the machine learning model is to learn the mapping relationship between the feature vector and the fault type label, so that the most likely fault type of the new sample can be predicted based on its feature vector. During the training process, the model continuously optimizes the parameters by minimizing the error between the predicted label and the true label to improve the accuracy of fault diagnosis.
[0013] Furthermore, the initial feature set is subjected to nonlinear dimensionality reduction by a kernel principal component method to obtain M principal component features after dimensionality reduction, including: selecting a Gaussian kernel function based on local density as the kernel function of kernel principal component analysis, mapping the initial feature set from the original feature space to a high-dimensional feature space by the kernel function to obtain a high-dimensional feature representation; the dimension of the high-dimensional feature space is equal to the number of samples in the initial feature set; constructing a kernel matrix according to the obtained high-dimensional feature representation, wherein the elements of the kernel matrix are the kernel function values between the samples in the high-dimensional feature representation; performing eigenvalue decomposition on the obtained kernel matrix to obtain eigenvalues and eigenvectors of the kernel matrix; according to a preset number of principal components M, selecting the first M eigenvectors with the largest eigenvalues as principal component vectors, mapping the samples in the initial feature set to an M-dimensional subspace spanned by the principal component vectors, and obtaining the coordinates of each sample in the M-dimensional subspace as the M principal component features after dimensionality reduction.
[0014] Among them, local density refers to the density of other sample points in a small area around a sample point in the feature space. Local density reflects the distribution characteristics of sample points in a local area and can be used to describe the similarities and differences between sample points. In kernel principal component analysis, by selecting a kernel function based on local density, the local structural information between sample points can be better captured, thereby improving the effect of nonlinear dimensionality reduction. High-dimensional feature space refers to a high-dimensional space to which sample points in the original feature space are mapped by a kernel function. In kernel principal component analysis, by selecting a suitable kernel function, nonlinearly distributed sample points can be mapped to a high-dimensional feature space so that they present linearly separable features in the high-dimensional space. The dimension of a high-dimensional feature space is usually equal to the number of sample points, and each sample point corresponds to a coordinate in the high-dimensional feature space. By performing principal component analysis in a high-dimensional feature space, the main change direction of the sample points can be extracted to achieve nonlinear dimensionality reduction. The introduction of high-dimensional feature space overcomes the limitations of the original feature space and enhances the ability of kernel principal component analysis to process nonlinear data. The M-dimensional subspace spanned by the principal component vectors refers to an M-dimensional subspace formed by the first M eigenvectors obtained by eigenvalue decomposition of the kernel matrix. In kernel principal component analysis, a set of eigenvectors can be obtained by eigenvalue decomposition of the kernel matrix, among which the first M eigenvectors with the largest eigenvalues are selected as principal component vectors. These M principal component vectors span an M-dimensional subspace, which represents the main change direction of the sample points in the high-dimensional feature space. By mapping the original sample points to this M-dimensional subspace, the M principal component features of the sample points after dimensionality reduction can be obtained, and each principal component feature corresponds to a coordinate of the sample point in the subspace. The M-dimensional subspace spanned by the principal component vectors retains the main information of the sample points in the high-dimensional feature space, and achieves the purpose of dimensionality reduction and feature extraction at the same time.
[0015] Furthermore, the Gaussian kernel function expression based on local density is as follows: , where x and y are two samples in the initial feature set; represents the Euclidean distance between x and y; and are the local density adaptive bandwidth parameters of samples x and y respectively; the local density distribution characteristics of the samples are further considered based on the Gaussian kernel function based on local density adaptation. and , so that the kernel function can more finely characterize the similarity relationship between samples. By introducing the local density adaptive bandwidth parameter and , the Gaussian kernel function based on local density adaptation can more finely characterize the similarity relationship between samples. In areas where samples are densely distributed, the local density is large and the bandwidth parameter is small, making the kernel function more sensitive to local structures; in areas where samples are sparsely distributed, the local density is small and the bandwidth parameter is large, making the kernel function smoother. This adaptive characteristic enables kernel principal component analysis to better capture the intrinsic structure of the data and improve the effect of feature extraction. At the same time, when calculating the local density of samples, the Gaussian kernel function based on local density adaptation takes into account the local distribution characteristics of the samples through the k nearest neighbor method. Compared with the global density estimation method, it is more robust and can better adapt to different data distributions.
[0016] Get the k samples closest to sample x in the initial feature set and calculate the average Euclidean distance from k samples to sample x ; The local density of sample x Defined as: , where k is the preset number of neighbors and π is the circumference of a circle. Calculate the corresponding local density adaptation bandwidth parameter , the calculation formula is: .
[0017] Preferably, the local density of sample x is Defined as: , where k is the preset number of neighbors, is centered on sample x and is the volume of a hypersphere with radius, is the global bandwidth parameter, which is used to control the smoothness of the local density estimation. , by adjusting The size of can control the smoothness of the local density estimation. When it is larger, the local density estimation will be smoother and reduce the impact of noise; when When , is smaller, the local density estimate will be more refined and better capture the local structure. Using the volume of the hypersphere Instead of the area of a circle , which more accurately measures the size of the local area around the sample x. For high-dimensional data, the volume of the hypersphere can better reflect the size of the local area and avoid the error caused by using the area of the circle. The exponential function term is introduced , which makes the local density estimation have better attenuation characteristics. When the distance between samples is small, the exponential function term is close to 1, and the contribution to the local density estimation is large; when the distance between samples is large, the exponential function term is close to 0, and the contribution to the local density estimation is small. This attenuation characteristic makes the local density estimation pay more attention to the local neighborhood of the sample and reduces the interference of distant samples.
[0018] Furthermore, an integrated learning method is used to combine the decision tree and the support vector machine into a strong learner through the Boosting method, including: randomly dividing the training sample set into K mutually exclusive subsets, each subset containing O / K training samples, where O is the number of samples in the training sample set and K is the preset number of subsets; where the value of K ranges from 5 to 10. The decision tree model and the support vector machine model are trained using the first subset to obtain the base learner. and .
[0019] The decision tree model and support vector machine model are trained using the second to Kth subsets in turn to obtain the base learner to and to ; When training each base learner, the adaptive boosting algorithm (Adaboost) is used to adjust the sample weights so that the currently trained base learner pays more attention to the samples that were predicted incorrectly by the previous base learner. The process of using the adaptive boosting algorithm (Adaboost) to adjust the sample weights includes: calculating the prediction error rate of the previous base learner on the current subset; calculating the sample weight adjustment coefficient of the current base learner according to the prediction error rate; updating the weight of each sample in the current subset according to the sample weight adjustment coefficient, increasing the weight of the sample that was predicted incorrectly by the previous base learner, and reducing the weight of the sample that was predicted correctly by the previous base learner; and training the current base learner with the updated sample weights. Preferably, when training the decision tree model, the CART (Classification And Regression Tree) algorithm is used to select the optimal partitioning attribute based on the Gini index, and a pruning strategy is used to avoid overfitting. When training the support vector machine model, the SMO (Sequential Minimal Optimization) algorithm is used to solve the dual problem of the support vector machine, and the samples are mapped from the original space to the high-dimensional feature space through the kernel technique, and the optimal separation hyperplane is constructed in the high-dimensional feature space. Construct an incremental update mechanism for the strong learner, regularly add newly collected rail transit operation data to the training sample set, and use the incremental learning algorithm to update the strong learner so that the strong learner can adapt to the dynamic changes of the rail transit system and maintain the accuracy and timeliness of fault diagnosis. to and K support vector machine models to Combine to form a strong learner.
[0020] Preferably, the strong learner is fine-tuned and parameter optimized, and the optimal parameter combination is found through grid search and other methods to further improve the prediction performance of the strong learner; when the grid search method is used to optimize the parameters of the strong learner, the optimized parameters include: the maximum tree depth, the minimum number of leaf node samples and the partition feature selection criteria of the decision tree model; the kernel function type, kernel function parameters, penalty coefficient and marginal slack variable of the support vector machine model. When the grid search method is used to optimize the parameters of the strong learner, the F1 value of fault diagnosis is used as the optimization target, and the parameter combination with the highest F1 value is selected as the optimal parameter.
[0021] Among them, the base learner is the basic building block in ensemble learning and is a relatively simple and independent learning model. In ensemble learning, the overall learning performance is improved by combining the prediction results of multiple base learners. Each base learner is trained independently, usually using different data subsets or feature subsets. The base learners can be models of the same type, such as multiple decision trees or multiple support vector machines; or they can be models of different types, such as a combination of decision trees and support vector machines. The decision tree model is a commonly used supervised learning algorithm for solving classification and regression problems. It recursively divides the data space according to the value of the feature and constructs a tree-structured decision model. The decision tree consists of nodes and directed edges, with internal nodes representing features and leaf nodes representing categories or predicted values. Common decision tree algorithms include ID3, C4.5, and CART. Support Vector Machine (SVM) is a supervised learning algorithm based on statistical learning theory, which is mainly used to solve binary classification problems and can also be extended to multi-classification and regression problems. The goal of the support vector machine is to find an optimal hyperplane in the feature space so that sample points of different categories can be correctly separated by the hyperplane, and the distance from the sample point (support vector) closest to the hyperplane to the hyperplane is maximized. By introducing the kernel function, the support vector machine can map nonlinearly separable data to a high-dimensional feature space, construct an optimal hyperplane in the high-dimensional space, and realize nonlinear classification. Common support vector machine algorithms include soft margin SVM and kernel SVM.
[0022] Furthermore, the obtained K decision tree models to and K support vector machine models to Combining to form a strong learner, including: calculating each decision tree model Classification accuracy on the training sample set ; Calculate each support vector machine model Classification accuracy on the training sample set ; Calculate the weight coefficient of each base learner according to the classification accuracy, decision tree model The weight coefficient The calculation formula is: ,in, represents the tree depth of the i-th decision tree model, is a balancing factor used to control the influence of tree depth on weights. In the weight calculation of the decision tree model, the tree depth factor is introduced. Generally speaking, the greater the tree depth, the higher the complexity of the decision tree model, the stronger the fitting ability of the training samples, but the generalization performance may be reduced. Therefore, considering the tree depth factor in the weight calculation can balance the model's fitting ability and generalization ability to a certain extent. By introducing the balancing factor , can control the influence of tree depth on weight. When λ is larger, tree depth has a greater influence on weight. When λ is smaller, classification accuracy has a greater influence on weight.
[0023] Support Vector Machine Model The weight coefficient The calculation formula is: ,in, represents the number of support vectors of the i-th support vector machine model, is a balancing factor used to control the influence of the number of support vectors on the weights. In the weight calculation of the support vector machine model, the number of support vectors is introduced. Support vectors are sample points located on or near the classification boundary, and they play a key role in the classification decision of the model. Therefore, considering the number of support vectors in the weight calculation can reflect the model's fitting ability and generalization ability to a certain extent. By introducing the balancing factor , we can control the influence of the number of support vectors on the weight. When the value is larger, the number of support vectors has a greater impact on the weight. When the value is smaller, the classification accuracy has a greater impact on the weight.
[0024] For the input sample x of the strong learner, K decision tree models and K support vector machine models are used for classification, and 2K classification results are obtained; among them, the decision tree model The classification result is recorded as , support vector machine model The classification result is recorded as ; According to the classification results and weight coefficients of each base learner, calculate the final classification result y of the strong learner.
[0025] Furthermore, according to the classification results and weight coefficients of each base learner, the final classification result y of the strong learner is calculated, including: for the input sample x of the strong learner, K decision tree models are used for classification to obtain K classification result vectors, and the i-th decision tree model is recorded as The classification result vector is , The length of is equal to the number of fault types, and each element of the vector represents the probability that the sample x belongs to the corresponding fault type;
[0026] For the input sample x of the strong learner, K support vector machine models are used for classification to obtain K classification result vectors, and the i-th support vector machine model is recorded as The classification result vector is , The length of is equal to the number of fault types, and each element of the vector represents the probability that sample x belongs to the corresponding fault type. For each fault type, the weighted probability that sample x belongs to the fault type is calculated based on the classification result vectors and weight coefficients of the decision tree model and the support vector machine model. Based on the calculated weighted probabilities of various fault types, the fault type with the largest weighted probability is selected as the final diagnosis result of the strong learner.
[0027] Furthermore, the weighted probability that sample x belongs to the fault type is calculated using the following formula: ,in, represents the weighted probability that sample x belongs to the jth fault type, Represents the jth element of the classification result vector of the i-th decision tree model, Represents the jth element of the classification result vector of the i-th support vector machine model.
[0028] Preferably, the improved weighted probability calculation formula is: , It represents the comprehensive weighted probability that sample x belongs to the jth fault type. The jth element of the classification result vector of the i-th decision tree model for sample x represents the probability that sample x belongs to the j-th fault type. The jth element of the classification result vector of the i-th support vector machine model for sample x represents the probability that sample x belongs to the j-th fault type. Represents the weight coefficient of the i-th decision tree model, which is determined by the classification accuracy and complexity of the model. Represents the weight coefficient of the i-th support vector machine model, which is determined by the classification accuracy and complexity of the model. It represents the quadratic weighting factor of the decision tree model, reflecting the importance of the decision tree model relative to the support vector machine model, and can be optimized through cross-validation. It represents the quadratic weighting factor of the support vector machine model, reflecting the importance of the support vector machine model relative to the decision tree model, and can be optimized through cross-validation. Represents the correlation penalty factor of the decision tree model, which is used to reduce the weighted probability of the decision tree model with strong correlation and can be optimized through cross-validation. Represents the correlation penalty factor of the support vector machine model, which is used to reduce the weighted probability of the support vector machine model with strong correlation and can be optimized through cross-validation. It represents the correlation coefficient between the i-th decision tree model and the k-th decision tree model, which can be measured using indicators such as the Pearson correlation coefficient or mutual information. Represents the correlation coefficient between the i-th support vector machine model and the k-th support vector machine model. It represents the absolute value of the difference in classification probability between the i-th decision tree model and the k-th decision tree model for the j-th fault type, and is used to measure the difference in the classification results of the two models. It represents the absolute value of the difference in classification probability between the i-th support vector machine model and the k-th support vector machine model for the j-th fault type. The improved weighted probability calculation formula comprehensively considers the classification probability scale normalization of the decision tree model and the support vector machine model, the difference in model category importance, the correlation of the base learner and other factors. By introducing the quadratic weighting factor and the correlation penalty term, the weighted probabilities of different models and base learners are adjusted, which improves the accuracy and robustness of fault diagnosis.
[0029] Furthermore, data from the rail transit signal system, ticketing system, monitoring system and communication system are collected; specifically, the signal system data includes signal equipment failure, depot signal equipment failure, and on-board equipment failure; the ticketing system data includes automatic ticket gates, manual ticket machines, automatic ticket machines, automatic inquiry machines and station computer systems; the monitoring system includes environment and equipment monitoring, automatic fire alarm information, shielding door information and power monitoring system; the communication system includes transmission system failure, broadcasting system failure, wireless system failure, business telephone system failure, dedicated telephone system failure, CCTV system failure, clock system failure, power supply system failure, PIS system failure, WLAN system failure and access control system failure.
[0030] More specifically, signal equipment failures include computer interlocking failures, balise failures, train blockage alarms, train ATP, ATO failures, switchboard alarm failures, signal filament alarm failures, etc.; depot signal equipment failures include track circuit failures, UPS failures, ATS extension failures, signal filament alarm failures, etc.; on-board equipment failures include on-board ATP / ATO failures, on-board HMI failures, on-board antenna failures, speed measuring motor failures, etc.
[0031] More specifically, environment and equipment monitoring includes elevator or escalator operation failures, and over-high water level alarms for station and section main drainage pumps; automatic fire alarm information includes comprehensive fire alarms and smoke partition alarms; shield door information includes control power supply, drive power supply, platform shield door failure alarms, sliding doors, emergency doors, and end door failure alarms; the power monitoring system includes UPS, battery cells, AC distribution cabinets, high-frequency switches, dual power switching and other failure alarms.
[0032] More specifically, the automatic ticket checking machine includes service status alarm, communication status alarm, clock failure, reader / writer module failure, etc.; the manual ticket vending machine includes communication interruption, working mode, equipment service suspension, clock failure, etc.; the automatic ticket vending machine includes issuance module failure, touch screen module failure, printer module failure, etc.; the automatic inquiry machine includes reader / writer module failure, touch screen failure, etc.; the station computer system includes communication interruption failure, clock failure, etc.
[0033] Compared with the prior art, the advantages of this application are:
[0034] This application collects multi-source heterogeneous data from rail transit signal systems, ticketing systems, monitoring systems, and communication systems, constructs a knowledge graph containing historical fault cases, and uses a graph database to store structured fault data. Through feature selection based on gradient boosting trees and kernel principal component analysis based on local density, the most representative and discriminative fault features are extracted to eliminate redundancy and noise interference. On this basis, the integrated learning algorithm of decision trees and support vector machines is combined to fuse the classification results of multiple base learners, balance the deviation and variance of the model, and improve the generalization performance and robustness of fault diagnosis. At the same time, this application uses the Apache Flink stream processing platform to analyze real-time data in real time, and performs online predictions through trained diagnostic models, which can detect potential faults and warn in a timely manner, shorten the fault diagnosis delay, and improve the real-time performance of the system.
[0035] This application uses microservice architecture and distributed computing technology to decompose data processing tasks into two microservices: data verification and data analysis, which are executed in parallel to shorten task processing time. Data verification uses an incremental verification method to avoid repeated verification of processed data; data analysis uses GPU acceleration technology to use the powerful parallel computing capabilities of GPU to further improve data processing speed.
[0036] This application uses knowledge graphs to represent rail transit field knowledge, combines explicit knowledge such as fault cases, fault characteristics, and fault causes with training data, guides model learning, and makes up for the shortcomings of pure data-driven methods. Feature selection based on gradient boosting trees fully utilizes the advantages of decision trees in feature screening to automatically discover high-quality feature subsets. Kernel principal component analysis uses an adaptive local kernel function to automatically adjust the kernel width according to the local density of the sample to enhance the ability to extract nonlinear features. These feature engineering and dimensionality reduction methods can learn more essential and high-level feature representations from high-dimensional heterogeneous data, enabling the diagnostic model to better characterize the intrinsic connection between fault symptoms and causes, thereby having stronger generalization and migration capabilities and adapting to different rail transit lines and equipment.
[0037] Ensemble learning is used to balance diagnostic performance and efficiency. The decision tree model has good interpretability and computational efficiency, but is prone to overfitting; the support vector machine model has good generalization performance, but has high computational complexity in high-dimensional feature space. This application cleverly integrates the two models, adopts the Boosting method, iteratively trains multiple base learners, and introduces a weighted voting mechanism to integrate the prediction results of each base learner. The design of the weight coefficient comprehensively considers factors such as model classification accuracy, decision tree depth, and the number of support vectors to balance the contribution of the base learners. Through ensemble learning, the accuracy of fault diagnosis can be significantly improved compared to a single model; through parallel training and prediction, the diagnostic efficiency is guaranteed, and real-time requirements are taken into account.
[0038] This application uses Rabbit MQ message queue to cache data processing tasks, which can effectively relieve server pressure and smooth data traffic. The microservice architecture decouples data verification and analysis, and a single service has high cohesion and low coupling. It can be independently developed, tested, deployed and upgraded, improving the maintainability of the system. The Flink stream processing platform supports horizontal expansion and fault tolerance mechanisms, and can flexibly adjust computing resources to adapt to changes in business load. The knowledge graph is easy to expand and update, and new fault cases can be accumulated continuously for incremental training models. These architectural designs enable the system to be open and continuously evolve, and can follow up on new business and new needs of rail transit to achieve smooth upgrades. At the same time, the closed-loop automation of fault diagnosis and early warning processes greatly simplifies operation and maintenance work and reduces system integration and maintenance costs. BRIEF DESCRIPTION OF THE DRAWINGS
[0039] Figure 1 is an exemplary flow chart of an intelligent operation and maintenance method for rail transit according to some embodiments of this specification;
[0040] Figure 2 is an exemplary flow chart of obtaining fault diagnosis results according to some embodiments of this specification;
[0041] Figure 3 is an exemplary flow chart of obtaining a training sample set according to some embodiments of this specification;
[0042] Figure 4 This is an exemplary flow chart for obtaining the final classification result according to some embodiments of this specification. DETAILED DESCRIPTION
[0043] The method and system provided in the embodiments of this specification are described in detail below with reference to the accompanying drawings.
[0044] Figure 1This is an exemplary flow chart of an intelligent operation and maintenance method for rail transit according to some embodiments of the present specification, an intelligent operation and maintenance method for rail transit, comprising: collecting rail transit data and preprocessing the collected data; transmitting the preprocessed data to a data processing task queue, the data processing task queue using Rabbit MQ message queue middleware to cache data tasks to be processed; taking out data processing tasks from the data processing task queue, decomposing the data processing tasks into data verification microservices and data analysis microservices, and deploying the data verification microservices and data analysis microservices in different servers or containers; wherein, an incremental verification method is adopted in the data verification microservice, only the changed data is verified, and whether the data has changed is determined by comparing the MD5 hash value of the data; in the data analysis microservice, the CUDA framework is adopted for GPU acceleration, and the GPU is used for parallel data processing; the processing results of the data verification microservice and the data analysis microservice are sent to the data stream processing platform, and the data stream processing platform adopts Apache The Flink framework performs stream data processing on the received microservice processing results. The processing results of the data stream processing platform are used as input, and the machine learning model is used for analysis to generate a rail transit operation and maintenance report, which includes fault diagnosis results and maintenance recommendations.
[0045] First, the system collects the operating data of each subsystem such as the rail transit signal system, ticketing system, monitoring system and communication system. The system collects the operating data of rail transit equipment in real time through the data collection agents deployed in each subsystem. The data collection agent is connected to the equipment communication interface, which can be a standard interface such as serial port, Ethernet or field bus. For the signal system, the data collection agent obtains the working status and fault information of the equipment by reading the status information of the signal machine, section track circuit, trackside equipment, etc.; for the ticketing system, the data collection agent obtains the equipment operation log, transaction record, etc. by accessing the data interface of the gate machine, ticketing terminal, clearing system and other equipment; for the monitoring system, the data collection agent obtains the equipment working condition, environmental parameters, personnel entry and exit records, etc. by integrating subsystems such as video monitoring, environmental monitoring, and access control management; for the communication system, the data collection agent obtains network performance, voice call, clock synchronization and other data by connecting to the transmission network, dispatching system, clock system, etc. The data collection agent samples at a certain frequency, packages the collected raw data in a unified data format, and publishes it to the data bus through the message middleware to realize the real-time convergence of data from each subsystem.
[0046] The raw data on the data bus is subscribed and consumed by the data preprocessing module. The data preprocessing module uses the Spark Streaming framework to perform window processing on real-time data streams. First, the system decodes and parses the raw data, extracts key fields in the data packet, such as device number, timestamp, status value, etc., and standardizes the field name and data type according to the data dictionary and metadata definition to form a structured data record. Then, the system cleans and filters the data, removes incomplete, inconsistent, and duplicate data, and identifies and marks suspicious or abnormal data according to data quality rules, such as exceeding the value range and deviating greatly from historical data, so as to facilitate subsequent verification and correction. Next, the system converts and normalizes the data, converting data from different sources and formats into a unified representation, such as mapping non-standard device codes to standard codes, normalizing the original numerical data, etc., to improve the consistency and comparability of the data. Finally, the system associates and fuses multi-source data from the same device or the same type of device, merges data records from different sources into a complete data view based on timestamps or key fields, and performs processing such as deleting redundant fields and completing fields to form a high-quality data set.
[0047] The pre-processed data is written into the distributed message queue Kafka, with the device number and timestamp as the key of the message and the structured data record as the value of the message. Kafka supports persistent storage of messages and multi-partition parallel processing, which can ensure data reliability and throughput. At the same time, Kafka also provides a flexible consumer mechanism, allowing multiple data processing tasks to read data from different partitions concurrently to achieve horizontal expansion of data processing. The system uses the KafkaConnect component to synchronize the data in Kafka to the data processing task queue Rabbit MQ in real time, and sort and schedule the messages in the task queue according to the timeliness and priority of the data to ensure that key data is processed in a timely manner. Rabbit MQ supports a variety of message routing strategies and consumption modes, such as point-to-point, publish-subscribe, request-response, etc., which can flexibly distribute data to different data processing microservices to achieve decoupling and coordination of data processing processes. The data processing microservice dynamically adjusts the number and concurrency of consumers according to the task type and load conditions to achieve elastic scaling and fault self-healing.
[0048] The system uses Rabbit MQ as the message middleware for data processing task queues. Rabbit MQ supports multiple message queue protocols, such as AMQP, MQTT, STOMP, etc., and can be seamlessly integrated with different programming languages and frameworks. The system encapsulates the data processing tasks synchronized from Kafka into Rabbit MQ messages, and sends the messages to different queues according to the priority, timeliness, data volume and other attributes of the task. Rabbit MQ supports persistent storage and automatic fault tolerance of queues, and can ensure that tasks are not lost and automatically resume processing even in the event of system failure or restart. At the same time, Rabbit MQ also provides flexible message scheduling strategies, such as priority queues, delay queues, dead letter queues, etc., which can dynamically adjust the execution order and number of retries of tasks according to the urgency and processing time limit of the tasks. The system monitors the status and performance of the queue in real time through the management interface and monitoring interface of Rabbit MQ, such as the number of messages, consumption rate, accumulation time, etc., and dynamically adjusts the parameters and resource allocation of the queue according to predefined thresholds and rules to achieve adaptive optimization and elastic expansion of task processing.
[0049] The system splits the data processing task into two microservices, data verification and data analysis, which are deployed in different servers or containers to achieve decoupling and parallel processing. The microservices are developed using the Spring Boot and Spring Cloud frameworks, supporting RESTful API interfaces and service registration and discovery. The data verification microservice subscribes to the verification task queue in Rabbit MQ, obtains the data to be verified, and calls the verification rule engine to verify the data. The verification rules are defined using the Drools rule engine, which supports declarative rule writing and dynamic updates, and can flexibly adapt to different data quality requirements. The data analysis microservice subscribes to the analysis task queue in Rabbit MQ, obtains the verified data, and calls the data analysis algorithm library to process the data. The data analysis algorithm is implemented in Python, integrating commonly used scientific computing libraries such as NumPy, Pandas, and SciPy, and supporting a variety of statistical analysis, machine learning, and data mining algorithms. Apache Kafka is used to achieve asynchronous data transmission and decoupling between microservices, avoiding direct synchronous calls and improving the system's concurrency performance and fault tolerance. At the same time, microservices also use mechanisms such as service circuit breaking, current limiting, and degradation to prevent cascading failures caused by service failures or overloads.
[0050] In the data verification microservice, the system adopts an incremental verification method to avoid repeated verification of verified data and reduce unnecessary computing overhead. In specific implementation, the system calculates the MD5 hash value for each piece of raw data at the data collection end as the unique identifier of the data, and sends the hash value together with the raw data to the data bus. After receiving the data, the data verification microservice first queries the Redis cache based on the hash value to determine whether the data has been verified. If the hash value exists in the cache, it means that the data has been verified and no repeated verification is required. The data is directly sent to the next processing link; if the hash value does not exist in the cache, it means that the data has not been verified and a full verification is required. After the verification is completed, the hash value is written to the cache and the data is sent to the next processing link. Through incremental verification, the system can significantly reduce repeated calculations and improve data processing efficiency, especially in scenarios with large data volumes and complex verification rules. The effect is more obvious.
[0051] In the data analysis microservice, the system uses the CUDA framework and GPU hardware to accelerate computationally intensive data processing tasks, such as machine learning training, graphics rendering, and numerical simulation. CUDA is a parallel computing platform and programming model developed by NVIDIA. It can use the large-scale parallel processing capabilities of GPUs to decompose complex computing tasks into multiple simple subtasks and execute them in parallel, thereby significantly improving computing performance. The system re-implements the computationally intensive parts of the data analysis algorithm in CUDAC / C++ language, and by defining computing grids and thread blocks, it assigns tasks to the numerous processing units of the GPU to achieve high parallelization. At the same time, the system also uses some optimization techniques, such as memory access merging, shared memory usage, and branch differentiation minimization, to make full use of the hardware characteristics of the GPU and maximize the computing power of the GPU. In the data analysis microservice, the system uses different GPU acceleration strategies for batch processing tasks and real-time processing tasks. For batch processing tasks, such as data statistical analysis and data mining, the system uses a distributed computing framework based on Map Reduce, such as Hadoop and Spark, to decompose the tasks into multiple Map and Reduce stages, GPU acceleration is used within each stage, and data parallelism and task parallelism are used between multiple stages to achieve efficient processing of batch data. For real-time processing tasks, such as online analysis of data streams and anomaly detection, the system uses a computing framework based on stream processing, such as Storm and Flink, to decompose the data stream into multiple continuous processing stages, GPU acceleration is used within each stage, and pipeline parallelism is used between multiple stages to achieve real-time data processing. Through GPU acceleration, the system can reduce the time cost of data analysis by several orders of magnitude, so that complex data processing tasks can be completed within an acceptable delay, meeting the real-time requirements of intelligent operation and maintenance of rail transit.
[0052] The processing results of the data verification and data analysis microservices are sent to the data stream processing platform, and the Apache Flink framework is used for stream processing. Flink is a distributed stream processing and batch processing framework that supports stateful computing with high throughput, low latency, and exactly-once semantics. The system deploys Flink on the Kubernetes container orchestration platform, and implements automated operation and maintenance and dynamic scaling of the Flink cluster through declarative application orchestration and resource management. In the Flink job, the system uses the Data Stream API to define the logic of data processing, abstracts the data into unbounded event streams, and transforms, filters, aggregates, and processes the event streams through function operations. Flink provides a wealth of built-in functions and custom functions, supports aggregation calculations based on multiple window types such as time windows, session windows, and count windows, and can easily implement continuous query and real-time analysis of data. In Flink, the system also introduces a Kafka connector, using Kafka as the data source and data sink of the event stream, realizing seamless integration of stream processing and message queues. For the processing result data sent from the data verification and analysis microservices, the system reads it into the Flink job through the Kafka connector. After a series of conversion operations to extract key information, the result data is written back to the specified partition of Kafka through the Kafka connector for subsequent data storage modules and machine learning modules to subscribe to and use.
[0053] On the one hand, the result data of stream processing is transmitted to time series databases (such as InfluxDB) and real-time data warehouses (such as Druid) for persistent storage, which is convenient for subsequent offline processing such as indicator display, report analysis, and data mining; on the other hand, it is transmitted to machine learning platforms (such as TensorFlow) as training samples for building and optimizing intelligent algorithm models such as fault diagnosis and anomaly detection. By building a real-time, high-throughput data processing pipeline on the stream processing platform, the rail transit intelligent operation and maintenance system can quickly respond to business changes, promptly discover and locate potential faults, optimize operation and maintenance decisions, and ultimately achieve intelligent management of the entire life cycle of equipment. At the same time, with the help of Flink's high reliability, strong consistency, and easy scalability, the stream processing module has enterprise-level data processing capabilities, further consolidating the high availability and scalability of the system architecture.
[0054] Figure 2This is an exemplary flowchart for obtaining fault diagnosis results according to some embodiments of this specification, and the construction of a machine learning model: the system uses the graph database Neo4j to store structured data formed by historical fault cases to build a knowledge base for intelligent diagnosis. In Neo4j, the system abstracts fault cases into three types of nodes: "fault characteristics", "fault causes" and "processing solutions", and abstracts the relationship between nodes into directed edges to build a fault knowledge graph. Each type of node contains a set of attributes, such as fault characteristics including feature names, feature values, etc., fault causes including cause descriptions, impact ranges, etc., and processing solutions including solution names, operating steps, working hours, etc. The same features, causes, and solutions of different fault cases correspond to the same node, and different nodes are connected by edges, and weight attributes are attached to the edges to indicate the strength of association. In this way, scattered fault cases are organized in a graphical manner to form a structured fault knowledge base.
[0055] The system performs feature engineering on the structured fault data in the knowledge base, including feature selection, feature extraction, feature conversion and other steps, to obtain a standardized machine learning training data set. Feature selection: A feature importance evaluation method based on gradient boosting tree (GBDT) is used to select feature subsets with large information content and high discrimination from a large number of fault features. The fault cases in the knowledge base are randomly divided into training sets and validation sets; the GBDT model is trained using the training set data, and the contribution of each feature to the objective function is calculated based on the gradient information during the training process to obtain the feature importance score; all features are sorted from high to low according to the feature importance score, and the top N features with the highest importance are selected as the initial feature set, where N is the preset threshold; the validation set data is used to evaluate the discrimination ability of the initial feature set, and different N values are tried, and the feature set with the lowest classification error rate on the validation set is selected as the final feature selection result.
[0056] Feature extraction: Perform nonlinear dimensionality reduction on the initial feature set obtained by feature selection to extract high-level semantic feature representation. The system adopts the kernel principal component analysis (KPCA) method and introduces a Gaussian kernel function based on local density to obtain the principal component subspace representation of the fault feature. KPCA is divided into the following steps: Data normalization: Perform maximum and minimum value normalization on the initial feature set, scale the feature values to the [0, 1] interval, and eliminate the influence of different feature dimensions; Kernel matrix construction: Define the kernel function of KPCA as a Gaussian kernel function: , where x and y are two samples in the initial feature set; represents the Euclidean distance between x and y; and are the local density adaptive bandwidth parameters of samples x and y respectively. Get the k samples closest to sample x in the initial feature set and calculate the average Euclidean distance from k samples to sample x. ; Define the local density ρ(x) of sample x as: , where k is the preset number of neighbors and π is the circumference of a circle; according to the local density of sample x Calculate the corresponding local density adaptation bandwidth parameter , the calculation formula is: ; According to the kernel function definition, calculate the kernel function value between all sample pairs , and get the kernel matrix K: ,in, and are the samples in the initial feature set, i, j = 1, 2, ..., m, m is the total number of samples.
[0057] Eigenvalue decomposition: Perform eigenvalue decomposition on the kernel matrix K to obtain the eigenvalues and eigenvectors of K: , where v is the eigenvector of K and λ is the corresponding eigenvalue. Principal component extraction: According to the preset number of principal components M, select the first M eigenvectors with the largest eigenvalues As the principal component vector, the sample x in the original data set is mapped to the principal component subspace to obtain the coordinates of the sample in the principal component subspace : ,in, , That is, the feature representation of sample x in the M-dimensional principal component subspace. Feature conversion: standardize the principal component features obtained by KPCA to construct a training sample set. Feature normalization: normalize the maximum and minimum values of each principal component feature and scale the feature value to the [0, 1] interval; Data set construction: combine the standardized principal component feature vector with the corresponding fault type label to construct a training sample. ,in is the normalized feature vector, is the fault type label, i=1, 2, ..., n, n is the total number of training samples. All training samples are combined into a data set .
[0058] Figure 3This is an exemplary flow chart for obtaining a training sample set according to some embodiments of this specification. This solution adopts the Boosting integrated learning method to combine a decision tree model and a support vector machine model into a strong learner to improve the accuracy and robustness of fault diagnosis. Boosting trains multiple base learners in series, adjusts the weights of the training samples according to the performance of the base learners, and finally weights the base learners into a strong learner. This integration method can effectively reduce deviations and enhance the generalization ability of the model. The fault case data set labeled in the knowledge base is randomly divided into K equal-sized non-intersecting subsets, each subset containing m / K training samples, where m is the total number of training set samples and K is the preset number of subsets. Generally, a suitable K value is selected based on the amount of data and the model training time overhead, and common values are 5, 10, etc. Each subset will be used to train a decision tree model and a support vector machine model. This data partitioning method is conducive to improving the diversity of base learners.
[0059] Use the first training subset to train the first decision tree and the first support vector machine The decision tree uses the CART (Classification and Regression Tree) algorithm, selects the optimal partitioning attribute based on the Gini coefficient, and uses a pruning strategy to control the complexity of the tree. The support vector machine uses the soft margin SVM model and the RBF (Radial Basis Function) kernel function to optimize the penalty coefficient C and the kernel function parameter γ through grid search. The decision tree is trained using the 2nd to Kth training subsets in sequence. to and support vector machine to The training process of each decision tree and each support vector machine is carried out independently without affecting each other, and can be implemented in parallel to improve the training efficiency. The K decision trees and K support vector machines obtained by training are used as base learners to prepare for the construction of strong learners.
[0060] Figure 4 This is an exemplary flow chart for obtaining the final classification result according to some embodiments of this specification, and the classification accuracy of each base learner is calculated. , evaluate its classification accuracy on the entire training set For the support vector machine model , evaluate its classification accuracy on the entire training set . Calculate the weight coefficient of each base learner. Decision Tree The weight coefficient The calculation formula is: ,in, is the tree depth of the i-th decision tree, λ is the balance factor that controls the influence of tree depth, and the optimal value is determined by cross-validation.
[0061] Support Vector Machine The weight coefficient The calculation formula is: ,in, is the number of support vectors of the ith support vector machine, μ is the balancing factor that controls the influence of the number of support vectors, and the optimal value is determined by cross-validation. The calculation of the weight coefficient comprehensively considers the classification accuracy and model complexity of the base learner. The base learner with higher accuracy and simpler model will obtain a larger weight.
[0062] Classification decision process of strong learner. For the input fault case sample x, K decision trees and K support vector machines are used for classification, and 2K classification result vectors are obtained. , and the classification result is recorded as , The length of is equal to the number of candidate fault types, and the elements of the vector represent the probability that sample x belongs to each fault type. , and the classification result is recorded as , The length of is equal to the number of candidate fault types, and the elements of the vector represent the probability that sample x belongs to each fault type. For each fault type, the weighted probability of sample x is calculated based on the classification probability and weight coefficient of the base learner. The calculation formula is: ,in, It represents the weighted probability that sample x belongs to the jth fault type. Finally, the fault type with the largest weighted probability is used as the diagnosis result of the strong learner.
[0063] In order to apply the strong learner to online fault diagnosis, it is necessary to convert the device status data obtained by real-time analysis of the data stream processing platform into the same feature vector format as the training data set. The conversion process is as follows: Receive the device status data from the data stream processing platform in real time. The data content includes measurement data collected by various sensors, equipment operating parameters, environmental status, etc. Preprocess the original status data, including data cleaning, denoising, normalization, feature extraction, etc., to obtain normalized status features. According to the feature definition of the training data set, convert the normalized status features into feature vectors. The conversion process needs to ensure that the online diagnostic data is consistent with the training data in terms of feature type, quantity, value range, etc. The obtained status feature vector is input to the trained strong learner for online fault diagnosis.
[0064] The trained strong learner is used to classify the input state features and give the fault diagnosis results. The diagnosis process is as follows: the state feature vector prepared by the online diagnosis input is input to the strong learner. The diagnosis decision process of the strong learner: the input features are classified using K decision tree models to obtain K probability distribution vectors. The elements of each probability distribution vector represent the probability that the input sample belongs to different fault types. The input features are classified using K support vector machine models to obtain K probability distribution vectors. For each fault type, the comprehensive weighted probability is calculated based on the classification results of the decision tree and support vector machine and the weights of the base learners. The fault type with the largest weighted probability is taken as the final diagnosis result. The fault diagnosis results are output in the form of the probability distribution of each candidate fault type and the diagnosis conclusion (the fault type with the highest probability). The fault diagnosis results are fed back to the rail transit dispatching control center to provide a basis for fault handling and maintenance decisions. At the same time, the diagnosis results are recorded in the fault log database for subsequent statistical analysis and model improvement.
Claims
1. An intelligent operation and maintenance method for rail transit, comprising: Collect rail transit data and pre-process the collected data; The pre-processed data is transferred to the data processing task queue, which uses Rabbit MQ message queue middleware to cache the data tasks to be processed; Take the data processing task from the data processing task queue, decompose the data processing task into data verification microservice and data analysis microservice, and deploy the data verification microservice and data analysis microservice in different servers or containers; in which, the incremental verification method is adopted in the data verification microservice, and only the changed data is verified, and the MD5 hash value of the data is compared to determine whether the data has changed; in the data analysis microservice, the CUDA framework is used for GPU acceleration, and the GPU is used for parallel data processing; The processing results of the data verification microservice and the data analysis microservice are sent to the data stream processing platform. The data stream processing platform uses the Apache Flink framework to perform stream data processing on the received microservice processing results. The processing results of the data stream processing platform are used as input, and the machine learning model is used for analysis to generate a rail transit operation and maintenance report, which includes fault diagnosis results and maintenance suggestions; The processing results of the data stream processing platform are used as input, and the machine learning model is used for analysis to generate a rail transit operation and maintenance report. The operation and maintenance report contains fault diagnosis results and maintenance suggestions, including: Establish a knowledge base, which uses a graph database to store structured data formed by historical fault cases; the structured data includes fault characteristics, fault causes, and treatment solutions; Perform feature engineering on the structured data in the knowledge base. Feature engineering includes feature selection, feature extraction, and feature conversion processing to obtain the training data set for the machine learning model. Adopting ensemble learning method, through Boosting method, decision tree and support vector machine are combined into a strong learner; Using the obtained training data set to train the obtained strong learner; Convert the analysis results of the data stream processing platform into the same feature vector format as the training data set as the input of the trained strong learner; The trained strong learner is used to classify the input features and the output represents the probability distribution of different fault types; Select the fault type with the highest probability as the diagnosis result, perform fault diagnosis on the current state of rail transit, and generate a fault diagnosis result; Perform feature engineering on the structured data in the knowledge base to obtain the training data set for the machine learning model, including: The feature importance evaluation method based on gradient boosting tree is used to select features of structured data in the knowledge base. By training the gradient boosting tree model, the importance score of each feature in the model is calculated, and the features are sorted from high to low according to the importance score. The top N features with the highest importance scores are selected as the initial feature set. The initial feature set is subjected to nonlinear dimensionality reduction by the kernel principal component method to obtain M principal component features after dimensionality reduction; Perform feature conversion processing on the obtained M principal component features to obtain a standardized feature vector; The obtained standardized feature vector is combined with the corresponding fault type label to form a training sample, and all training samples are combined into a training sample set; The kernel principal component method is used to perform nonlinear dimensionality reduction on the initial feature set to obtain M principal component features after dimensionality reduction, including: A Gaussian kernel function based on local density is selected as the kernel function of kernel principal component analysis. The initial feature set is mapped from the original feature space to the high-dimensional feature space through the kernel function to obtain a high-dimensional feature representation; the dimension of the high-dimensional feature space is equal to the number of samples in the initial feature set; According to the obtained high-dimensional feature representation, a kernel matrix is constructed, and the elements of the kernel matrix are the kernel function values between samples in the high-dimensional feature representation; Perform eigenvalue decomposition on the obtained kernel matrix to obtain the eigenvalues and eigenvectors of the kernel matrix; According to the preset number of principal components M, the first M eigenvectors with the largest eigenvalues are selected as principal component vectors, and the samples in the initial feature set are mapped to the M-dimensional subspace spanned by the principal component vectors, and the coordinates of each sample in the M-dimensional subspace are obtained as the M principal component features after dimensionality reduction; The Gaussian kernel function expression based on local density is as follows: ; Among them, x and y are two samples in the initial feature set; represents the Euclidean distance between x and y; and are the local density adaptive bandwidth parameters for samples x and y respectively; Get the k samples closest to sample x in the initial feature set and calculate the average Euclidean distance from k samples to sample x ; The local density of sample x Defined as: , where k is the preset number of neighbors, is the ratio of pi; According to the local density of sample x Calculate the corresponding local density adaptation bandwidth parameter , the calculation formula is: .
2. The intelligent operation and maintenance method of rail transit according to claim 1, characterized in that: The ensemble learning method is used to combine the decision tree and support vector machine into a strong learner through the Boosting method, including: The training sample set is randomly divided into mutually disjoint subsets, each containing O / training samples, where O is the number of samples in the training sample set, is the preset number of subsets; Use the first subset to train the decision tree model and support vector machine model to obtain the base learner and ; Use the second to The subsets are used to train the decision tree model and the support vector machine model to obtain the base learner to and to ; Will get Decision Tree Model to and Support Vector Machine Model to Combine to form a strong learner.
3. The intelligent operation and maintenance method of rail transit according to claim 2, characterized in that: Will get Decision Tree Model to and Support Vector Machine Model to Combining to form a strong learner, including: Calculate each decision tree model Classification accuracy on the training sample set ; Calculate each support vector machine model Classification accuracy on the training sample set ; The weight coefficient of each base learner is calculated according to the classification accuracy, and the decision tree model The weight coefficient The calculation formula is: ; in, Represents the tree depth of the i-th decision tree model; is a balancing factor, which is used to control the influence of tree depth on weight; Support Vector Machine Model The weight coefficient The calculation formula is: ; in, Represents the number of support vectors of the i-th support vector machine model; is a balancing factor, which is used to control the influence of the number of support vectors on the weight; For the input sample x of the strong learner, use decision tree models and Support vector machine models are used for classification, and 2 classification results; among them, the decision tree model The classification result is recorded as , support vector machine model The classification result is recorded as ; According to the classification results and weight coefficients of each base learner, the final classification result y of the strong learner is calculated.
4. The intelligent operation and maintenance method of rail transit according to claim 3, characterized in that: According to the classification results and weight coefficients of each base learner, the final classification result y of the strong learner is calculated, including: For the input sample x of the strong learner, use A decision tree model is used for classification, and we get classification result vector, record the i-th decision tree model The classification result vector is , The length of is equal to the number of fault types, and each element of the vector represents the probability that the sample x belongs to the corresponding fault type; For the input sample x of the strong learner, use Support vector machine model is used for classification, and we get classification result vector, record the i-th support vector machine model The classification result vector is , The length of is equal to the number of fault types, and each element of the vector represents the probability that the sample x belongs to the corresponding fault type; For each fault type, the weighted probability that the sample x belongs to the fault type is calculated based on the classification result vector and weight coefficient of the decision tree model and the support vector machine model; According to the calculated weighted probabilities of various fault types, the fault type with the largest weighted probability is selected as the final diagnosis result of the strong learner.
5. The intelligent operation and maintenance method of rail transit according to claim 4, characterized in that: Calculate the weighted probability that sample x belongs to this fault type. The calculation formula is: ; in, represents the weighted probability that sample x belongs to the jth fault type, Represents the jth element of the classification result vector of the i-th decision tree model, Represents the jth element of the classification result vector of the i-th support vector machine model.
6. The intelligent operation and maintenance method of rail transit according to any one of claims 1 to 5, characterized in that: Collect data from rail transit signal systems, ticketing systems, monitoring systems and communication systems.
Citation Information
Patent Citations
Method and system of fault diagnosis of rail transit based on SVM (Support Vector Machine)
CN103745229A
Cost-sensitive ensemble learning classification method and system
CN112382382A