saurabhshubham.com

A MULTI SUSTAINABLE SUPPLY CHAIN MODEL FOR RESOURCE ALLOCATION HAVING LIMITED SHELF LIFE

Star APPLICATION OF FUZZY LOGIC IN MACHINING PARAMETERS OF EBM PROCESS Star

EXECUTIVE SUMMARY

Successful businesses are finding ways to improve profitability levels, streamline costs and eliminating waste. Considering that for many organizations employee’s themselves represent a significant cost to the business, it comes as no surprise that many have used staff redundancies and lay-offs as their primary cost cutting strategy during these challenging economic times.However, business success even in difficult times is heavily dependent on the contributions made from staff members; letting go of important skills, experience and expertise may bring short term relief, but will this loss have an adverse effect on the future performance of the business? The answer is probably yes. Perhaps there should be more focus on tightening up internal resource management processes with a view to improving overall productivity levels. One solution to this problem is to implement a resource management solution.  The right resource management solution will help eliminate common problems associated with poor resource planning, such as a lack of visibility of who is doing what, a lack of understanding of the talent available within the organization, numerous resourcing conflicts, increased project risk, or an under or over utilization of staff. By standardizing your resource management processes, you can improve visibility and control, which in turn can lead to significant benefits for any business.  And because, for most Professional Service Organizations (PSO), your talent represents your greatest cost but largest revenue source, the benefits are sure to affect your bottom line. Optimization nowadays is very important criteria while dealing with any issue or real life problem. A supply chain is a system of organizations, people, activities, information, and resources involved in moving a product or service from supplier to customer. Supply chain activities involve the transformation of natural resources, raw materials, and components into a finished product that is delivered to the end customer. There are a variety of supply chain models, which address both the upstream and downstream elements of supply chain management (SCM). Supply chain management (SCM), the management of the flow of goods and services,[involves the movement and storage of raw materials, of work-in-process inventory, and of finished goods from point of origin to point of consumption. Interconnected or interlinked networks, channels and node businesses combine in the provision of products and services required by end customers in a supply chain. In economics, resource allocation is the assignment of available resources to various uses. 

ABOUT

In the context of an entire economy, resources can be allocated by various means, such as markets or central planning. In project management, resource allocation or resource management is the scheduling of activities and the resources required by those activities while taking into consideration both the resource availability and the project time. One of such problems is the optimization of the scheduling of trucks used for distributing perishable goods from the distribution centre to the customers. A solution to this can be obtained if a model is developed for their efficient use. This paper deals with a multi-objective sustainable supply chain model for allocating resources having limited shelf life. Using this model, most efficient path can be obtained while transporting products from a distribution centre to N number of customers. Thus total transportation cost incurred will be minimum. This scheduling problem will eliminate the traffic congestion and will help in reducing the carbon emission to its lowest possible value. The model is developed in C++ using Diextra and Bitmapping .This model is analogous to Bee-Technology. Considering responsiveness and environmental impacts, this project presents a sustainable supply chain for resource allocation having limited shelf life, in which transportation fleet at hub nodes serving customers are limited in number. Because of this limitation, assignment and sequencing of outbound vehicles at each hub is taken into consideration. Therefore, each hub node performs as a scheduling and sequencing problem. The model considers perishability of products for distribution in a food supply chain and considers total CO2 emission of hub network, simultaneously. The problem is modeled as a multi-objective mixed integer linear programming optimizing the total transportation costs, freshness and quality of foods at the time of delivery, the total carbon emissions of the vehicles to fulfill the sustainability desire of the environment and the energy constrained in the transportation facility.

Year

2017

Client

BIT MESRA

Services

Supply Chain

Project

Resource Allocation

Code Description

Resource Allocation Method

Methodology

Language used: C++.

Technology/algorithm used: Dijkstra’s algorithm, Bee’s technology, Bitmapping

The problem to find the minimum critical path of each transportation vehicle required for allocating the resource by optimizing the priority sequence of the transportation vehicle which reduces transportation cost maintaining / keeping in mind the perishability of food products and thereby reducing the carbon emission.

First of all, the distance between the distribution center and the customer is known and the perishability of different products is known. This program first of all determining the priority sequence for allocating the resources keeping in mind the perishability with allocating the transportation vehicle with minimizing the different cost incurred.  Dijkstra’s algorithm is used to find out shortest critical path for allocation of resources between the nodes (in this case between the customers so as to provide allocation of resources) and bit mapping is used to prioritize the sequence which customers should be allocated the resource first keeping the availability of transportation vehicle and bee’s technology help us to minimize the total distance covered while allocating the resources.

The code is as follows:

#include <bits/stdc++.h>

#define ll long long

#define pb push_back

#define pll pair<ll,ll>

#define mp make_pair

#define pt complex<double>

#define maxn 100005

#define iosync ios_base::sync_with_stdio(false);cin.tie(0);

const ll mod = 1000000007;

const double pi = acos(-1.0);

const double eps = 1e-9;

const ll inf = (ll) (1e18);

using namespace std;

 

ll n,maxdis,maxamt,v[15][15],s[15],ans = inf;

vector< vector<ll> > final;

 

void check(vector< vector<ll> > u){

      ll totaldis = 0;

      for (int i = 0; i < u.size(); ++i){

           ll dis = s[u[i][0]];

           for (int j = 1; j < u[i].size(); ++j){

                 dis += v[u[i][j]][u[i][j-1]];

           }

           if(dis > maxdis || u[i].size()>maxamt)

                 return;

           dis += s[u[i][u[i].size()-1]];

           totaldis += dis;

      }

      if(totaldis < ans){

           ans = totaldis;

           final = u;

      }

}

 

void build(vector<ll> node){

      vector< vector<ll> > sub;

      vector<ll> xx;

      for (int i = 0; i < (1<<(n-1)); ++i){

           sub.clear();

           xx.clear();

           for (int j = 0; j < n; ++j){

                 xx.pb(node[j]);

                 if( (i+(1<<(n-1))) & (1<<j)){

                      sub.pb(xx);

                      xx.clear();

                 }

           }

           check(sub);

      }

}

 

int main (){

      freopen(“input.txt”, “r”, stdin);

      // freopen(“output.txt”, “w”, stdout);

      iosync

      vector<ll> nodes;

      cin>>n>>maxamt>>maxdis;

      for (int i = 0; i < n; ++i)

           for (int j = i+1; j < n; ++j){

                 cin>>v[i][j];

                 v[j][i] = v[i][j];

           }

      for (int i = 0; i < n; ++i){

           nodes.pb(i);

           cin>>s[i];

      }

      do{

           build(nodes);

}while(next_permutation(nodes.begin(),nodes.end()));

 

      for (int i = 0; i < final.size(); ++i){

           for (int j = 0; j < final[i].size(); ++j){

                 cout<< final[i][j]+1 <<” “;

           }

           cout<<endl;

      }

      cout<<ans<<endl;

      return 0;

 

}