Travelling Sales Person problem using Branch & Bound
SOURCE CODE:
#include<stdio.h>
int main(){
int n,rmin=999,cmin=999,rsum=0,csum=0,i,j;
printf("Enter # of vertices :\n");
scanf("%d",&n);
int arr[n][n];
printf("Enter adjacency matrix :\n");
for(i=0;i<n;i++)
for(j=0;j<n;j++){
scanf("%d",&arr[i][j]);
if(arr[i][j]==0)
arr[i][j]=999;
}
for(i=0;i<n;i++){
rmin=999;
for(j=0;j<n;j++){
if(arr[i][j] < rmin)
rmin=arr[i][j];
}
rsum+=rmin;
for(j=0;j<n;j++)
if(arr[i][j]!=999)
arr[i][j]=arr[i][j]-rmin;
}
for(i=0;i<n;i++){
cmin=999;
for(j=0;j<n;j++){
if(arr[j][i] < cmin)
cmin=arr[j][i];
}
csum+=cmin;
for(j=0;j<n;j++)
if(arr[j][i]!=999)
arr[j][i]=arr[j][i]-cmin;
}
printf("\nsolved matrix is :\n");
for(i=0;i<n;i++,printf("\n"))
for(j=0;j<n;j++)
printf("%d\t",arr[i][j]);
printf("Value of L at root node is %d\n",rsum+csum);
return 0;
}
OUTPUT:
Enter # of vertices :
5
Enter adjacency matrix :
0 20 30 10 11
15 0 16 4 2
3 5 0 2 4
19 6 18 0 3
16 4 7 16 0
solved matrix is :
999 10 17 0 1
12 999 11 2 0
0 3 999 0 2
15 3 12 999 0
11 0 0 12 999
Value of L at root node is 25
#include<stdio.h>
int main(){
int n,rmin=999,cmin=999,rsum=0,csum=0,i,j;
printf("Enter # of vertices :\n");
scanf("%d",&n);
int arr[n][n];
printf("Enter adjacency matrix :\n");
for(i=0;i<n;i++)
for(j=0;j<n;j++){
scanf("%d",&arr[i][j]);
if(arr[i][j]==0)
arr[i][j]=999;
}
for(i=0;i<n;i++){
rmin=999;
for(j=0;j<n;j++){
if(arr[i][j] < rmin)
rmin=arr[i][j];
}
rsum+=rmin;
for(j=0;j<n;j++)
if(arr[i][j]!=999)
arr[i][j]=arr[i][j]-rmin;
}
for(i=0;i<n;i++){
cmin=999;
for(j=0;j<n;j++){
if(arr[j][i] < cmin)
cmin=arr[j][i];
}
csum+=cmin;
for(j=0;j<n;j++)
if(arr[j][i]!=999)
arr[j][i]=arr[j][i]-cmin;
}
printf("\nsolved matrix is :\n");
for(i=0;i<n;i++,printf("\n"))
for(j=0;j<n;j++)
printf("%d\t",arr[i][j]);
printf("Value of L at root node is %d\n",rsum+csum);
return 0;
}
OUTPUT:
Enter # of vertices :
5
Enter adjacency matrix :
0 20 30 10 11
15 0 16 4 2
3 5 0 2 4
19 6 18 0 3
16 4 7 16 0
solved matrix is :
999 10 17 0 1
12 999 11 2 0
0 3 999 0 2
15 3 12 999 0
11 0 0 12 999
Value of L at root node is 25
Comments
Post a Comment