As software systems evolve, they become more complex and larger, creating challenges in predicting change propagation while maintaining system stability and functionality. Existing studies have explored extracting co-change patterns from changelog data using data-driven methods such as dependency networks; however, these approaches suffer from scalability issues and limited focus on high-level abstraction (package level). This article addresses these research gaps by proposing a file-level change propagation to vector (FCP2Vec) approach. FCP2Vec is a recommendation system designed to aid developers by suggesting files that may undergo change propagation subsequently, based on the file being presently worked on. We carried out a case study utilizing three publicly available datasets: Vuze, Spring Framework, and Elasticsearch. These datasets, which consist of open-source Java-based software development changelogs, were extracted from version control systems. Our technique learns the historical development sequence of transactional software changelog data using a skip-gram method with negative sampling and unsupervised nearest neighbors. We validate our approach by analyzing historical data from the software development changelog for more than ten years. Using multiple metrics, such as the normalized discounted cumulative gain at K (NDCG@K) and the hit ratio at K (HR@K), we achieved an average HR@K of 0.34 at the file level and an average HR@K of 0.49 at the package level across the three datasets. These results confirm the effectiveness of the FCP2Vec method in predicting the next change propagation from historical changelog data, addressing the identified research gap, and show a 21% better accuracy than in the previous study at the package level.
A vessel sails above the ocean against sea resistance, such as waves, wind, and currents on the ocean surface. Concerning the energy efficiency issue in the marine ecosystem, assigning the right magnitude of shaft power to the propeller system that is needed to move the ship during its operations can be a contributive study. To provide both desired maneuverability and economic factors related to the vessel’s functionality, this research studied the shaft power utilization of a factual vessel operational data of a general cargo ship recorded during 16 months of voyage. A machine learning-based prediction model that is developed using Random Forest Regressor achieved a 0.95 coefficient of determination considering the oceanographic factors and additional maneuver settings from the noon report data as the model’s predictors. To better understand the learning process of the prediction model, this study specifically implemented the SHapley Additive exPlanations (SHAP) method to disclose the contribution of each predictor to the prediction results. The individualized attributions of each important feature affecting the prediction results are presented.
scite is a Brooklyn-based organization that helps researchers better discover and understand research articles through Smart Citations–citations that display the context of the citation and describe whether the article provides supporting or contrasting evidence. scite is used by students and researchers from around the world and is funded in part by the National Science Foundation and the National Institute on Drug Abuse of the National Institutes of Health.