I am new to stackoverflow and I have specific problem regarding supply chain. I have many demand locations (latitude and longitude) along with its demand. I also have 2 supply locations (latitude and longitude) along with its capacity. I want to find additional 2 supply locations (latitude and longitude) with least weighted average haversine distance considering existing supply locations.
Please help me with which algorithm to use (probably some combination of clustering and nearest neighbour). I am using Python for this programming.
consider following example for better understanding. Demand location details
| Demand location | Lat | Long | Demand (V) |
|---|---|---|---|
| D1 | 13.2 | 78.5 | 100 |
| D2 | 14.6 | 75.2 | 200 |
| D3 | 12.4 | 77.0 | 400 |
| D4 | 15.6 | 74.5 | 150 |
| D5 | 13.3 | 76.1 | 200 |
| D6 | 15.6 | 77.9 | 250 |
| D7 | 12.8 | 73.2 | 300 |
| D8 | 15.3 | 76.7 | 50 |
| D9 | 14.0 | 73.4 | 500 |
| D10 | 17.2 | 78.6 | 550 |
| D11 | 11.9 | 72.0 | 100 |
Supply location details
| Demand location | Lat | Long | Capacity(C) |
|---|---|---|---|
| S1 | 14.4 | 73.7 | 1000 |
| S2 | 16.7 | 76.8 | 1500 |
haversine distance between demand and supply location is D so that Min -> D*V considering
- All demand is fulfilled
- Volume served from S1 & S2 does not exceed its capacity (C).
Expected output is
- Lat/long of S3 & S4
- Volume served from S1, S2, S3 & S4 to each demand locations
I tried creating through non-linear programming in excel solver but I am not getting desire output.
Thanks in advance
Regards Darshan Gosalia