Modern tanks are ground-based electronic weapons with a wide range of weapons, the main armament being a large caliber tank gun mounted in a rotating turret, supplemented by other long-range weapons such as machine guns or anti-tank missiles, rocket, launcher. They are equipped with heavy transport equipment, transport magazines, fuel tanks and propulsion systems to protect the crew. The use of tracks instead of wheels enhances combat as the tank can navigate mud and adverse conditions such as mud and ice better than rival vehicles, making it easier in combat situations.

As they play a vital role in the military. The security measures for tankers at the time of war during the transportation of fuel or heavy-weighted defence vehicles are most important. These four main security measures involved in protecting the tankers at the time of war are Surveillance and Reconnaissance, Route Planning and Analysis ^{1, 2, 3}, Communication and coordination ^{4, 5} and Contingency plans. In modern military terminology, it is necessary to develop more new technologies and software applications that must be highly secured for use in the military to be more protective and to strengthen the armed forces.

Graph theory is a branch of mathematics that deals with the study of graphs, which are mathematical structures used to represent relationships between objects. In a graph, objects are represented as points (called vertices or nodes), and relationships between those objects are represented as lines (called edges or arcs) that connect the points. Graph theory has applications in various fields, including computer science, network analysis, social sciences, transportation planning, and others. It is used to solve problems related to connectivity, optimization and studying relationships in different systems. For example, it is the basis of algorithms used in finding the shortest path in GPS navigation systems, social network analysis, and designing efficient computer networks.

There are several common representations of graphs, including adjacency matrix, adjacency list, and edge list, to analyse tanker network parameters ^{6}, which contain the number of tankers (nodes) and their distances (edges). Graphs can be traversed and analysed using various algorithms. Some of the most common graph algorithms include depth-first search (DFS), breadth-first search (BFS), Dijkstra's algorithm ^{7, 8} for finding the shortest path ^{9, 10, 11}, and Kruskal's algorithm for finding the minimum spanning tree. Graph theory provides a rich set of concepts and techniques for analysing and solving graph-related problems. Overall, graphs are a versatile and powerful data structure that plays a crucial role in solving a wide range of problems in various domains.

The following graph algorithms are used to implement most of the graph applications: Breadth First Search (BFS), Depth First Search (DFS), Dijkstra’s Algorithm, Prim’s Algorithm, Kruskal’s algorithm, and Floyd’s algorithm ^{12}.

Prim’s algorithm is a greedy algorithm that is used to find the minimum spanning tree from a graph. Prim's algorithm finds the subset of edges that includes every vertex of the graph such that the sum of the weights of the edges can be minimised. Kruskal’s algorithm is used to find the minimum spanning tree for a connected weighted graph. The main target of the algorithm is to find the subset of edges using which it can traverse every vertex of the graph. It follows the greedy approach that finds an optimum solution at every stage instead of focusing on a global optimum.

Dijkstra’s algorithm is a single-source shortest path algorithm. Here, single-source means that only one source is given, and it is used to find the shortest path from the source to all the nodes. Floyd’s Algorithm is for solving all pairs of shortest-path problems. The problem is to find the shortest distances between every pair of vertices in a given edge-weighted directed Graph. It is an algorithm for finding the shortest path between all the pairs of vertices in a weighted graph. This algorithm follows the dynamic programming approach to find the shortest path ^{12}.

Breadth-first search is a graph traversal algorithm that starts at the root node and explores all the neighbouring nodes. Then, it selects the nearest node and explores all the unexplored nodes. While using BFS for traversal, any node in the graph can be considered the root node. Depth-first search is a recursive algorithm to search all the vertices of a tree data structure or a graph. The depth-first search (DFS) algorithm starts with the initial node of graph G and goes deeper until it finds the goal node or the node with no children.

Notation If (!selected[j] && G[i][j]) { if (min > G[i][j]) {min = G[i][j]; x = i; y = j; } } if find-Set(u) ≠ findSET(v): A = A ∪ {(u, v)}union(u, v)return A dist[u] = dist[v] + Graph.Edges[v,u]. dist[u] distance[i][j] = min(distance[i][j], distance[i][k] + distance[k][j]) If(!nodes[a]) {nodes[a] = true; que.add(a);} if (!visited[n]) DFS(n); } visited[vertex] = true Space Complexity
O( |V|+E ) O( |V|+E ) O( |V|+E ) O( |V|^2 ) O(V) O(V) Time Complexity Best O(|V|+|E|log|V|) O(|E|log|V|) O(|V|+|E|log|V|) O( |V|^3 ) O(1) O(1) Average O( |E|log|V|) O(|E|log|E|) O((|V|+|E|) log|V|) O( |V|^3 ) O(n) O(V+E) Worst O(|E|log|V|) O(|E|log|E|) O((|V|+|E|) log|V|) O( |V|^3 ) O(n2) O(V+E) Input Prim’s algorithm prefer list data structures. Kruskal’s algorithm prefer heap data structures It takes a single source vertex as an input. It takes all pairs as input. Queue data structure is used for the BFS traversal Stack data structure is used for the BFS traversal. Algorithm Features Process Prim’s algorithm runs faster in dense graphs. Kruskal’s algorithm runs faster in sparse graphs. It takes a single source vertex as an input. It takes all pair shortest path and computes shortest path between all pair of nodes. BFS is slower than DFS. DFS is faster than BFS. Output It generates the minimum spanning tree starting from the root vertex. It generates the minimum spanning tree starting from the least weighted edge. It takes all pair shortest path and computes shortest path between all pair of nodes. It can be implemented in distributed systems, so output can be found. It is not memory efficient as it requires more memory than DFS. It is memory efficient as it requires less memory than BFS.

The main aim is to develop a software application that acts as an intermediary between the controller and the military tankers. In the first step, the controller is an overall controller of all the attributes, such as tanker, specialist, and location of the tanker. When a problem occurs in the tanker, the head Commander of that tanker sends a notification to the controller about the problem. The Controller immediately finds the type of problem that occurred and rectifies it with the help of the other attributes mentioned. If the tanker is damaged, then it must be completely replaced with the nearby tanker, which is known by calculating the shortest path ^{9, 10, 11} from the source tanker. Otherwise, if the tanker is in repairable condition, the controller identifies the type of repair that occurred, calls the specialist for that type of repair, and rectifies the problem. This is an overview of how an application works. In this model, all important security measures like Surveillance and Reconnaissance, Route Planning and Analysis ^{1, 2, 3}, Communication and coordination ^{4, 5}, and Contingency plans have been considered.

The model consists of the basics of graph for tanker network where each tanker network attribute is compared with graph attributes and the prototype model for the tanker network have been determined.

The tankers in the tanker network are known as nodes in the tanker network. The connections between tankers in the network are known as edges. A weight can be assigned to an edge, representing the cost or distance between two tankers in the network. The degree of a tanker is the number of connections that connect to it in a tanker network. In a directed graph, the in-degree of a tanker is the number of connections that point to it, and the out-degree is the number of connections that start from it. A path is a sequence of tanks that are connected by connections. A cycle is a path that starts and ends at the same tanker. A network is said to be connected if there is a path between any two tankers. A disconnected network is a network that is not connected. A network is said to be planar if it can be drawn on a plane without any A network is said to be bipartite if its tankers can be divided into two disjoint sets such that no two tankers in the same set are connected by a connection.

The prototype model contains the following attributes: controller, specialist, tanker, and location, as shown in

Controller: The controller acts as an overall controller for the system. The controller controls the following entities: the tanker, the specialist, and the location of the tanker. Tanker: The tanker is controlled by the head commander, who is the head of the tanker. Each action that takes place in the tanker entity is controlled by the controller. Specialist: The specialist is controlled by the controller entity. There will be several specialists who perform the work specified by the controller when the tanker is in trouble. Location: Location is also controlled by the controller entity. It specifies the location of the tanker.

Graph data structures are used in various real-time applications. It is used to solve various applications around us every day. It uses various algorithms to solve real-time problems. The architecture diagram describes a high-level overview of major system components and important working relationships. It represents the flow of execution and involves the following five major steps: The architecture diagram is defined by the flow of the process—how the application works and solves the problem using graph data structures. The Controller acts as a system head and specifies that it controls Military tankers, specialists, and the location of the tanker.

The military tanker contains a head Commander who informs the controller each time a problem occurs. When a problem occurs, the head Commander notifies the controller, and the controller makes decisions according to the problem in the tanker. If the tanker is damaged, then it must be completely replaced with the nearby tanker, which is known by calculating the shortest path from the source tanker. If the tanker is in repairable condition, the controller identifies the type of repair that occurred, calls the specialist for that type of repair, and rectifies the problem. MODULE DIVISION: The different modules in the suggested methodology are: creating a dataset, connecting to a dataset, Controller, Military tanker, Specialist, Location, applying algorithms, and testing code, as shown in

The manual dataset is created by MySQL. At first, a database is created with the name military. And next, the tables have been created for the following entities: controller, tanker, status, specialist, and user. The table controller is created with the following attributes: tanker ID, tanker name; head commander ID, head Commander name; location number; location name; specialist ID, specialist name. The table tanker is created with the following attributes: tanker ID, tanker name, head commander ID, and head commander name. The table status is created with the following attributes: tanker ID, tanker name, and status. The table specialist is created with the following attributes: specialist ID, specialist name, and specialist type. The user table is created with the following attributes: username and password. And then, each table is inserted with manual data in it.

The MySQL database is connected using JDBC connectivity. It is a Java API that provides a standard interface for connecting Java applications to databases and executing SQL queries. It includes some key components for establishing connections, such as Connection, Statement, ResultSet, and Driver Manager.

The Controller controls the overall tanker network. It acts as an authority of access for all the tankers, the specialists, and the location of the tankers. It has a workflow for controlling and updating the application. Each time a problem occurs in the tanker, it is updated in the database by the controller, and it controls all the functionalities that must be done when a problem occurs and when no problem occurs in the tanker.

In a military tanker, the head Commander acts as the tanker's head. The tanker is controlled by the controller System. The head Commander in the tanker sends the problem state to the controller, and the required action has been taken by the controller and updated in the database. The military tanker does the following functionalities, such as updating the problem state to the controller if there is any problem and informing the controller of every piece of information.

The specialist is controlled by the controller module. Whenever a problem occurs in the tanker, the head commander of the tanker intimates the problem to the controller. If the problem is of the repaired type, the controller finds the specialist required for the specified problem that occurred in the tanker. Finally, the controller sends the location of the tanker to the specialist. The specialist will move to the repaired tanker location and rectify the problem.

The location module is controlled by the controller module. Whenever a problem occurs in the tanker, the head commander sends the problem type to the controller. If the problem that occurred is of type defected, then the controller finds the shortest path between the tankers with the help of the location of the source tanker using Dijkstra’s algorithm, as shown as follows:

The distance is calculated as:

int[] dijkstra(int graph[][], int s)

{

int distance[] = new int[totalVertex];

Boolean spSet[] = new Boolean[totalVertex];

for (int j = 0; j < totalVertex; j++)

{

distance[j] = Integer.MAX_VALUE;

spSet[j] = false;

}

distance[s] = 0;

for (int cnt = 0; cnt < totalVertex - 1; cnt++)

{

int ux = minimumDistance(distance, spSet);

spSet[ux] = true;

for (int vx = 0; vx < totalVertex; vx++)

if (!spSet[vx] && graph[ux][vx] != -1 && distance[ux] != Integer.MAX_VALUE &&

distance[ux] + graph[ux][vx] < distance[vx])

{

distance[vx] = distance[ux] + graph[ux][vx];

}

}

int[] res=printSolution(distance, totalVertex);

return res;

}

The RAM requirement is 4GB. The storage requirement is 10 to 20 GB, and the processor requirement is 500 MHz. The software required is Java. The operating system requirement is Windows 11, and the tool that is required is the JDBC API.

The dataset has been manually created for all the prototypes, and then the Java application has been created for various test cases, such as defected and repaired cases, and has been tested with the manual data. Dijkstra’s algorithm has been implemented to find the shortest path in the application. The data has been visualised using a line chart for all climatic conditions and surfaces at which a tanker moves per hour.

The graphical representation of tankers in the war field that are consider as an tanker network is shown in the

The dataset values for tanker network parameters such as distance, environment, and surface have been calculated for every 500 metres of the speed at which the tanker moves in the only climatic conditions and surfaces. The distance attribute describes the distance in km, and all other attributes are climatic conditions and surfaces that have been given in km per hour.

The distance has been taken in metres (x-axis), and the speed of the tanker has been taken in kilometres per hour (y-axis), which is shown in

For various environments, Dijkstra’s algorithm has been tested, and the best-case time complexity is O(|V|+|E|log|V|) for plain and desert surfaces with dry climatic conditions. The average case time complexity is O((|V|+|E|) log|V|) for snow climatic conditions and forest and mountain surfaces, and time complexity is O((|V|+|E|) log|V|) for river and mud surfaces. Where E denotes Edges and V denotes Vertices.

In the military, contemporary communication technologies like Secure Radio Communication, Satellite Communication, and Secure Digital Messaging are utilized. Despite this, there is typically no direct communication between the military's central command, responsible for overseeing all wartime activities, and personnel in military tankers. Conversely, in a Java application, direct communication is established on both ends, and the application is tailored to accommodate various constraints, including climatic conditions and the tanker's speed under different environmental circumstances. These factors have been figured in

The conclusion of the application is that it acts as an intermediary between the controller of the system and the armed forces. As per the requirement of the application to provide security measures like Surveillance and Reconnaissance, Route Planning and Analysis, Communication and coordination, and Contingency plans, all have been successfully implemented in the application. The implementation of various graph algorithms to find the shortest path between the tankers will be given rise to various experimental analyses on time complexity, space complexity, and various algorithmic features of each algorithm used for finding the shortest path. The shortest path analyzation for the replacement of the tankers has been implemented using Dijkstra’s algorithm. The application has been analysed with various test cases, and an optimal output has been known for each test case. The future outcome of the project includes adding encryption and decryption to the application for higher security measures and data safety. Increasing data safety measures, including new technologies for the mode of communication between the system and the user, Analysing the present model with real-time datasets for better and more effective results and using tank authentication to provide data privacy for the System administrator.