Communications on Applied Nonlinear Analysis ISSN: 1074-133X Vol 31 No. 4s (2024) 135 https://internationalpubls.com Innovations in Transport Optimization: Topological Graphical Methodologies and Computational Strategies Dr. E. Kungumaraj1*, C.Ruby Sharmila2, Deepak Umrao Sarwe3, N. Preethi4, Mrs.T.Jayapriya5, Dr. Sanjay Sharma 6,, Dr Mithilesh Deo Pandey7 1Associate Professor of Mathematics, Department of Science and Humanities, Nehru Institute of Engineering and Technology, Coimbatore, (corresponding Author) Email ID: kungum99522@gmail.com 2Assistant Professor, Department of Mathematics, Tamilnadu College of Engineering, Coimbatore Email ID: sharmi.ruby2011@gmail.com 3Assistant professor, Department of mathematics, University of Mumbai , Kalina, Santacruz East 400098. Email ID: deepak.sarve@mathematics.mu.ac.in 4Assistant Professor, Department of Science and Humanities, Sri Krishna College of Engineering and Technology, Coimbatore. Email ID:preethin@skcet.ac.in 5Assistant Professor, Department of Mathematics, M.Kumarasamy College of Engineering, Karur, Tamil Nadu. Email ID: jayapriyathangavel@gmail.com 6Assistant Professor , Department of Mathematics, NIET, NIMS University Rajasthan, Jaipur. Email id sanjay.sharma1@nimsuniversity.org 7Associate Professor, Department of Applied Mathematics , Bhilai Institute of Technology Durg. Email ID: mithileshpandey1978@gmail.com Article History: Received: 18-04-2024 Revised: 02-06-2024 Accepted: 20-06-2024 Abstract: This article presents a novel approach for solving the transportation problem(TP) by leveraging Topologized Bipartite graphs along with computational techniques. The methodology involves three key steps: the digitization of the transportation problem, the digitization of topological spaces, and the digitization of graphs. The study initially reconditions the TP into a graphical format and then transforms it into a topologized graphical illustration. Using the recommended method, it effectively determines the best cost for shipping goods from supply sockets to destination sockets. This pioneering method underscores the importance of digitalizing the concepts and relationships among topological spaces, transportation issues, and graph theory. Moreover, it paves the way for exploring various solutions to transportation challenges. Keywords: Topological Graphical methodologies; Computational Strategies. 1. Introduction In recent times, Mathematics has seen significant applications in two major domains: Topology and Graph Theory. In 2005, Antonie Vella pioneered the integration of topological properties into graph theory. Building on this foundation, Vimala and Kalpana advanced the model, known as the Topologized Bipartite Graph (TBG), applying it to challenges such as Matching and Coloring. One of the most common uses of measurable analysis in addressing commercial problems is optimizing the circulation of goods, frequently referred to as TP. The primary goal is to decrease delivery costs while ensuring that the demands of respective destination are met, and delivery locations operate within their capacity. To tackle a transportation problem effectively, key decision parameters like supply, demand, Communications on Applied Nonlinear Analysis ISSN: 1074-133X Vol 31 No. 4s (2024) 136 https://internationalpubls.com and unit transportation costs must be defined with precision. Chanas et al. [2] introduced an optimal solution for transportation problems (TP) in 1996. Kadhim et al. [3] developed the Modified Kruskal’s Algorithm in 2015. Kaufmann [4] presented a graphical approach for TP in 2015. Koopsman [5] proposed the utilization of TP in 1949. Mesbahuddin Ahmed et al. [6] offered a novel methodology to solving TP. Santhi et al. [7, 8] and Shungani Poonam et al. [9] presented solutions for TP in a fuzzy environment in 2016. While many researchers have proposed various methods to find optimal solutions for TP, there has been limited exploration of topological perspectives in this area. Therefore, this article introduces a novel topological approach to achieving optimal solutions for transportation problems, building on the innovative approaches of the Topologized Graph by Antoine Vella [1] in 2005 and Vimala et al. [10, 11] in 2017. The Python program presented in this article implements the topologized graphical method, leveraging graph theory and digitalization techniques. This approach offers a versatile solution applicable to a wide range of scenarios, including transportation and network flow challenges. By converting the problem into a topologized graphical (TG) representation, users can efficiently discover optimal solutions. This tool proves invaluable in fields like logistics, supply chain management, and network design. This article comprises the following sections: Introduction, Preliminaries, Proposed Algorithm, Numerical Illustration with Computation Techniques, Conclusion and References. 2. Preliminaries Numerous methods have been developed to achieve the smallest transportation schedules. It is essential to recall the basic definitions of transportation problem, bipartite graph, and topological spaces, in addition to introducing the concept of the topologized graph. Definition: Topologized graph [1] A topologized graph (TG) is comprising a topology(Ο„) of G also satisfies the following two conditions (i) Every one-point set is open set or the closed set in the collection of subsets of G. (ii) For all g ∈ G such that |πœ•(𝑔)| ≀ 2, πœ•(𝑔) is symbolized for the boundary of a vertex 𝑔. At this point the topology is well-defined on the graph, meanwhile the space G is the union of vertices and edges. 3. Computational Techniques of Topologized Graph Method Transportation problems are normally resolved by means of methods such as the MODI method, stepping stone method, and zero-point method, among others, which are all numerical approaches. In this study, we familiarize a novel technique for solving TP from a topological perspective consuming computational techniques. Initially, we translate the standard transportation table into a graphical depiction, then transform it into a TG representation. This innovative approach marks a significant advancement in finding solutions to transportation problems. Our proposed method is simpler than existing methods and yields an optimal solution with lower costs compared to traditional approaches. 3.1 Recommended Algorithm The projected algorithm comprises the succeeding steps: Step 1: Build a balanced transportation table (βˆ‘ π‘Žπ‘– π‘š 𝑖=1 = βˆ‘ 𝑏𝑗 𝑛 𝑗=1 ) for the given TP. Communications on Applied Nonlinear Analysis ISSN: 1074-133X Vol 31 No. 4s (2024) 137 https://internationalpubls.com Step 2: If it is an Unbalanced TP, modify into a well-adjusted TP by adding row or column with suitable supply or demand quantity with zero cost. Step 3: Represent the TP in a diagram and consider available & requirement places as vertices 𝑠𝑖 & 𝑑𝑗 and connecting lines are denoted for unit arrangement cost 𝑐𝑖𝑗 from π‘–π‘‘β„Ž available place to π‘—π‘‘β„Ž requirement place. Step 4: Recognize the foremost two minimum arrangement cost of each row & column then modify the graphical depiction with the selected nodes. Step 5: Create a topological space consisting of vertices 𝑆𝑖, 𝐷𝑗 , (𝑖, 𝑗 ∈ 𝑁, 𝑁 𝑖𝑠 π‘‘β„Žπ‘’ π‘›π‘Žπ‘‘π‘’π‘Ÿπ‘Žπ‘™ π‘›π‘’π‘šπ‘π‘’π‘Ÿπ‘ ) and connecting lines 𝑒𝑖𝑗 of the improved graph. If the improved graph obliges the two necessary conditions of a TG compute from the python coding, continue to the succeeding step; or else, reschedule the graph to meet these necessary conditions. Step 6: Categorize the vertex in the TG which consumes the minimum transportation cost and distribute π‘₯𝑖𝑗 = minimum {π‘Žπ‘–, 𝑏𝑗} β€’ Sub condition (i): If minimum{π‘Žπ‘–, 𝑏𝑗} = π‘Žπ‘– then distribute π‘₯𝑖𝑗 = π‘Žπ‘– and skip the π‘–π‘‘β„Ž available place and decrease π‘Žπ‘– at requirement place 𝐷𝑗 , then proceed to the succeeding step. β€’ Sub condition (ii): If minimum{π‘Žπ‘–, 𝑏𝑗} = 𝑏𝑗 then distribute π‘₯𝑖𝑗 = 𝑏𝑗 and skip the π‘—π‘‘β„Ž requirement place and decrease 𝑏𝑗 at supply point 𝑆𝑖, then progress to the succeeding step. β€’ Sub condition (iii): If min{π‘Žπ‘–, 𝑏𝑗} = π‘Žπ‘– = 𝑏𝑗 then distribute π‘₯𝑖𝑗 = π‘Žπ‘– = 𝑏𝑗 and skip both available place and requirement place further proceed to the succeeding step. Step 7: Compute new available and requirement for outstanding quantities at 𝑆𝑖 & 𝐷𝑗 and recall the procedure in Step 6 until all available and requirement are satisfied. Step 8: Suppose some numbers at π‘Žπ‘– or 𝑏𝑗 are not distributed at any available and requirement places identify that specific vertex, include a connecting line and distribute hence to fulfil the residual available and requirement numbers. Step 9: If all available and requirement places have two or three distributions, this indicates the best solution for the taken TP. If not, fine-tune the TG and recall Steps 5 through 9. 3.2 Numerical Example A transport corporation is scheduling to dispense its preserved automobiles to towns A, B, and C. The company's executives have arranged shipping tables that outline the costs associated with transporting from the warehouses (available places) to these cities (requirement places). Communications on Applied Nonlinear Analysis ISSN: 1074-133X Vol 31 No. 4s (2024) 138 https://internationalpubls.com The graphical illustration of the TP which follows The improved demonstration of the above TP using TBG. # Topologized Graph: from pulp import * import networkx as nx from networkx.algorithms import bipartite # Sources and Destinations: List Available = ['a1','a2','a3'] Requirement = ['r1','r2','r3'] # In[1]: G = nx.Graph() # In[2]: G.add_nodes_from(['a1','a2','a3'], bipartite=0) G.add_nodes_from(['r1','r2','r3'],bipartite=1) # In[3]: G.add_edges_from([('a1',"r2"),('a1',"r3"), ('a2', "r1"),('a2', "r3"),('a3', "r1"),('a3', "r2")]) # In[4]: bipartite.is_bipartite(G) # In[5]: nx.draw_networkx(G, pos = nx.drawing.layout.bipartite_layout(G, ['a1','a2','a3']), width = 2) Communications on Applied Nonlinear Analysis ISSN: 1074-133X Vol 31 No. 4s (2024) 139 https://internationalpubls.com In this context π‘Ž1, π‘Ž2, π‘Ž3, π‘Ÿ1, π‘Ÿ2 π‘Žπ‘›π‘‘ π‘Ÿ3 represents the vertices of the graph corresponding to the available and demand points. The connecting lines 𝑙1, 𝑙2, 𝑙3, 𝑙4, 𝑙5, 𝑙6, 𝑙7, 𝑙8, 𝑙9 illustrate the connection between the supply and the demand points. We now need to verify if the graph meets the criteria of a topologized graph. Topology Coding from typing import Set, FrozenSet def generate_topology(subsets: Set[Set[str]]) -> Set[Set[FrozenSet[str]]]: all_topologies = set() for subset in subsets: if subset == set(): # Skip the empty set continue topology = generate_subset_topology(subset, subsets) all_topologies.add(frozenset(topology)) return all_topologies def generate_subset_topology(subset: Set[str], subsets: Set[Set[str]]) -> Set[FrozenSet[str]]: # Generate topology by iteratively combining existing subsets topology = set(subset) added_subsets = set(subset) while True: new_subsets = set() for A1 in added_subsets: for A2 in subsets: if A2 == set(): # Skip the empty set continue new_subset = frozenset(A1).union(A2) if new_subset not in topology: new_subsets.add(new_subset) if not new_subsets: break topology.update(new_subsets) added_subsets = new_subsets return topology def is_true_topology(topology: Set[FrozenSet[str]], X: Set[str]) -> bool: # Check if the generated topology is a true topology for X if not {frozenset(), frozenset(X)} in topology: return False for subset1 in topology: for subset2 in topology: if not subset1.intersection(subset2) in topology: return False return True # Provide your true topology for X Communications on Applied Nonlinear Analysis ISSN: 1074-133X Vol 31 No. 4s (2024) 140 https://internationalpubls.com X = {{a1}, {a2}, {a3}, {r1}, {r2}, {r3}} true_topology_subsets = [{Ο†}, X, {a1}, {a3}, {a1, a3}, {a1, l1, r2, l2, r3, l6, a3, l5, r1, l3, a2}, {r1, l3, a2, l4, r3}, {a1,r1, l3, a2, l4, r3}, {a1, a3, r1, l3, a2, l4, r3}, {a3, r1, l3, a2, l4, r3}] topologies = generate_topology(true_topology_subsets) for topology in topologies: print("Topology:", topology) print("Is True Topology:", is_true_topology(topology, X)) print() Let X = {π‘Ž1, π‘Ž2, π‘Ž3, π‘Ÿ1, π‘Ÿ2, π‘Ÿ3} be a topological space with the topology 𝜏 = {{πœ‘}, 𝑋, {π‘Ž1}, {π‘Ž3}, {π‘Ž1, π‘Ž3}, {π‘Ž1, 𝑙1, π‘Ÿ2, 𝑙2, π‘Ÿ3, 𝑙6, π‘Ž3, 𝑙5, π‘Ÿ1, 𝑙3, π‘Ž2}, {π‘Ÿ1, 𝑙3, π‘Ž2, 𝑙4, π‘Ÿ3}, {π‘Ž1, π‘Ÿ1, 𝑙3, π‘Ž2, 𝑙4, π‘Ÿ3}, {π‘Ž1, π‘Ž3, π‘Ÿ1, 𝑙3, π‘Ž2, 𝑙4, π‘Ÿ3}, {π‘Ž3, π‘Ÿ1, 𝑙3, π‘Ž2, 𝑙4, π‘Ÿ3}}. Subsequently all one-point sets are one closed or the other open in 𝑋 and each vertex has a limit of 2, the graph encounters the criteria of a topologized graph. Begin the distribution from π‘Ž3, which has the lowest unit transportation cost to π‘Ÿ1 and π‘Ÿ2. Follow the projected process and distribute all quantities accordingly. The final distribution schedule is as follows: import numpy as np def get_balanced(available, requirement, costs, penalties = None): total_ available = sum(available) total_demand = sum(demand) if total_ available < total_demand: if penalties is None: raise Exception(' available less than demand, penalties required') new_ available = available + [total_demand - total_ available] new_costs = costs + [penalties] return new_ available, demand, new_costs if total_ available > total_demand: new_demand = demand + [total_ available - total_demand] Communications on Applied Nonlinear Analysis ISSN: 1074-133X Vol 31 No. 4s (2024) 141 https://internationalpubls.com new_costs = costs + [[0 for _ in demand]] return available, new_demand, new_costs return available, demand, costs def vogel(available, demand,costs): supply_copy = supply.copy() demand_copy = demand.copy() m=len(available) n=len(demand) i = 0 j = 0 bfs = [] while len(bfs) < len(supply) + len(demand) - 1: s = available _copy[i] d = demand_copy[j] v = min(s, d) available _copy[i] -= v demand_copy[j] -= v bfs.append(((i, j), v)) if available _copy[i] == 0 and i < len(available) - 1: i += 1 elif demand_copy[j] == 0 and j < len(demand) - 1: j += 1 cost=0 bfs_arr = [[0 for i in range(n)] for j in range(m)] for item in bfs: bfs_arr[item[0][0]][item[0][1]]=item[1] print('\n The initial bfs is:\n',bfs_arr) for item in bfs: cost=cost+costs[item[0][0]][item[0][1]]*item[1] print('total bfs cost is: ',cost) return bfs In [6]: def get_us_and_vs(bfs, costs): us = [None] * len(costs) vs = [None] * len(costs[0]) us[0] = 0 bfs_copy = bfs.copy() while len(bfs_copy) > 0: for index, bv in enumerate(bfs_copy): i, j = bv[0] if us[i] is None and vs[j] is None: continue cost = costs[i][j] Communications on Applied Nonlinear Analysis ISSN: 1074-133X Vol 31 No. 4s (2024) 142 https://internationalpubls.com if us[i] is None: us[i] = cost - vs[j] else: vs[j] = cost - us[i] bfs_copy.pop(index) break return us, vs In [7]: def get_ws(bfs, costs, us, vs): ws = [] for i, row in enumerate(costs): for j, cost in enumerate(row): non_basic = all([p[0] != i or p[1] != j for p, v in bfs]) if non_basic: ws.append(((i, j), us[i] + vs[j] - cost)) return ws In [8]: def can_be_improved(ws): for p, v in ws: if v > 0: return True return False In [9]: def get_entering_variable_position(ws): ws_copy = ws.copy() ws_copy.sort(key=lambda w: w[1]) return ws_copy[-1][0] In [11]: def get_loop(bv_positions, ev_position): def inner(loop): if len(loop) > 3: can_be_closed = len(get_possible_next_nodes(loop, [ev_position])) == 1 Communications on Applied Nonlinear Analysis ISSN: 1074-133X Vol 31 No. 4s (2024) 143 https://internationalpubls.com if can_be_closed: return loop not_visited = list(set(bv_positions) - set(loop)) possible_next_nodes = get_possible_next_nodes(loop, not_visited) for next_node in possible_next_nodes: new_loop = inner(loop + [next_node]) if new_loop: return new_loop return inner([ev_position]) In [12]: def loop_pivoting(bfs, loop): even_cells = loop[0::2] odd_cells = loop[1::2] get_bv = lambda pos: next(v for p, v in bfs if p == pos) leaving_position = sorted(odd_cells, key=get_bv)[0] leaving_value = get_bv(leaving_position) new_bfs = [] for p, v in [bv for bv in bfs if bv[0] != leaving_position] + [(loop[0], 0)]: if p in even_cells: v += leaving_value elif p in odd_cells: v -= leaving_value new_bfs.append((p, v)) return new_bfs In [13]: def transportation_method(supply, demand, costs, penalties = None): balanced_supply, balanced_demand, balanced_costs = get_balanced( supply, demand, costs ) def inner(bfs): us, vs = get_us_and_vs(bfs, balanced_costs) ws = get_ws(bfs, balanced_costs, us, vs) if can_be_improved(ws): ev_position = get_entering_variable_position(ws) loop = get_loop([p for p, v in bfs], ev_position) return inner(loop_pivoting(bfs, loop)) return bfs basic_variables = inner(vogel(balanced_supply, balanced_demand,costs)) ans = np.zeros((len(costs), len(costs[0]))) for (i, j), v in basic_variables: ans[i][j] = int(v) return ans In [16]: def get_total_cost(costs, ans): Communications on Applied Nonlinear Analysis ISSN: 1074-133X Vol 31 No. 4s (2024) 144 https://internationalpubls.com total_cost = 0 for i, row in enumerate(costs): for j, cost in enumerate(row): total_cost += cost * ans[i][j] return total_cost In [20]: m=int(input("Enter m:")) n=int(input("Enter n:")) print("Enter all costs in one line") entries = list(map(int, input().split())) costs = np.array(entries).reshape(m, n) print('\n The costs are:\n',costs) print('\n') supply = list(map(int,input("Enter the supply values : ").strip().split()))[:m] print('\n') demand = list(map(int,input("Enter the demand values : ").strip().split()))[:n] print('\n') ans = transportation_method(supply, demand, costs) print('\n') print('\n The optimal solution is:\n',ans) print('total optimal cost: ', get_total_cost(costs, ans)) Output: Enter m:3 Enter n:3 Enter all costs in one line 6 8 10 7 11 11 4 5 12 The costs are: [[ 6. 8. 10.] [ 7. 11. 11.] [ 4. 5. 12.]] Enter the supply values : 150 175 275 Enter the demand values : 200 100 300 The initial bfs is: [[150.0, 0, 0], [50.0, 100.0, 25.0], [0, 0, 275.0]] total bfs cost is: 5925.0 The optimal solution is: [[ 25. 0. 125.] [ 0. 0. 175.] [175. 100. 0.]] total optimal cost: 4550.0 Communications on Applied Nonlinear Analysis ISSN: 1074-133X Vol 31 No. 4s (2024) 145 https://internationalpubls.com The table below shows the optimal distribution based on the earlier described procedure: The total transportation cost = 8 βˆ— 25 + 10 βˆ— 125 + 11 βˆ— 175 + 4 βˆ— 200 + 5 βˆ— 75 = 4550. 4 Conclusion The research article has introduced a novel and promising approach to solving transportation problems through the application of the Topologized Graphical Method and computational techniques. This study has highlighted the significance of digitalization in optimizing logistics, supply chain management, and network design. The utilization of topological spaces and graph theory has provided a fresh perspective on addressing transportation problems, opening up new avenues for optimization. By transforming these problems into topologized graphical representations, the research has demonstrated the efficiency and versatility of this approach in finding optimal solutions. The Python coding established as portion of this research offers a practical tool for implementing the topologized graphical method, making it accessible and applicable to a wide range of scenarios. Overall, this research contributes valuable insights and a practical solution to address transportation problems using digitalization and mathematical techniques in real-world problem-solving. It is expected that this research will stimulate further exploration and application of topological methods in optimization and computational fields. References : [1] Antoine Vella. A, Fundamendally topological perspective on graph theory. Ph.D., Thesis, Waterloo, Ontario, Canada; 2005. [2] Chanas. S, Kuchta. D, A concept of the optimal solution of the transportation problem with fuzzy cost coefficients, Fuzzy Sets and Systems, ISSN 0165-0114, Volume 82, Issue 3, 1996, Pages 299-305, 1996. [3] Kadhim B.S. Aljanabi and Anwar Nsaif Jasim, An Approach for solving Transportation Problem Using Modified Kruskal’s Algorithm, International Journal of Science and Research, Vol.4, Issue 7, July 2015. [4] Kaufmann. A., Introduction a la Theorie des sonsensembles flous, Masson Paris, Vol. 1, 41- 189, 1973. [5] Koopsman. C. Tjalling., Utilization of the Transportation System, Econometrica, vol.17, pp. 136-146, July 1949. [6] Mollah Mesbahuddin Ahmed et.al., A New Approach to Solve Transportation Problems, Open Journal of Optimization, Vol 5, pp 2230, 2016. [7] Priyadharsini. S, Kungumaraj.E and Santhi. R, An Evaluation of Triangular Neutrosophic PERT Analysis for Real-life Project Time and Cost Estimation, Vol.63, Nuetrosophic Sets and Systems, pp 62-81, 2024. Communications on Applied Nonlinear Analysis ISSN: 1074-133X Vol 31 No. 4s (2024) 146 https://internationalpubls.com [8] Santhi. R and Kungumaraj. E, Topological solution of a transportation problem using Topologized graph, IAETSD Journal for Advanced Research in Applied Sciences, Volume VI, Issue VI, pp 30-38, June 2019. [9] Shugani Poonam, Abbas S. H. and Gupta V.K., Fuzzy Transportation Problem of Triangular Numbers with Ξ±cut and Ranking Technique, IOSR Journal of Engineering, Vol.2(5),pp 1162- 1164 May 2012. [10] Vimala.S and Kalpana.S, Matching and Coloring in Topologized Bipartite Graph, International Journal of Innovative research in Science, Engineering and Technology Vol.6, Issue 4, pp 7079-7086, Apr 2017. [11] Vimala. S and Kalpana. S, Topologied Bipartite Graph, Asian Research Journal of Math- ematics,ISSN 2456-477X, Vol.4(1), pp 1-10, May 2017.