Dr. AM Nageswara Yogi,

hesitantdoubtfulAI and Robotics

Oct 29, 2013 (3 years and 7 months ago)

111 views

Dr. AM
Nageswara

Yogi,

Professor and HOD

Department of MCA

TJ Institute of Technology,

Bengaluru


Introduction

Mobilization of convoys

Aim and Objective

Features in DSS

Constraints

Solution to the problem

Shortest route between source and destination

Second shortest path

User defined path

Case study

Conclusions


Mobilization of convoys

This is multidisciplinary problem involving


Mathematical modeling


Operations Research


Graph Theory


Simulation


Software Engineering


Statistics


Modern War


involves lot of complexities


War on terror in Afghanistan


Do you feel Americans and Pakistan working together?


What is the important reason in spite of many differences
between them, America still continues to align with
Pakistan?


Reason: Logistics
--



Pakistan’s geography helps to fight war in
Af
.



How to win the war?


Plan Logistics to a high level of accuracy


Damage and Disrupt the Enemy Logistics

INTRODUCTION


In
Kargil

(40 days war), first 22 days, many causalities on
our side.



Reasons were analyzed
--

60
Kms

from
Kargil
, there were
supply sheds of Pak army providing support to terrorists.




Logistics were destroyed by IAF with full strength


(
MiG

-

27 fighter squadron )



War was over within 18 days.



Area of operations 10kms X200kms



With the complexities of modern war, logistics is concerned not
only with the

1.
movement and maintenance of forces,

2.
evacuation and hospitalization of personnel

but also with storage and distribution of weapons, food etc.



The complexities of modern war impose many strains on the
logistic planners who must recognize

1.
the speed and depth of the operations,

2.
vulnerability of line of communications to air and ground attack
and

3.

vast organizational need for the maintenance of modern forces.



Logistics planning is the intelligent forecasting of the requirements
of an operation.



In early wars, armies brought supplies with them. Men and animals
like elephants, camels, horses were used to carry the supplies.



The development of motor vehicles and railways revolutionized
military transportation during WW I.



WW II was a war of logistics on a global scale.



Apart from the motor vehicles, the transport aircraft and supply
through sea routes considerably eased the situations.





In France, a high priority, high speed truck transport
system known as Red Ball Express between Normandy
and Reims used some 100 truck companies to operate
convoys in 1944.




Results were excellent in spite of wastages from
accidents and breakdowns.



Such huge motor transport operations require
exhaustive and meticulous planning.




A Convoy is a group of vehicles with a leading vehicle called
the head of the convoy and the last vehicle is called the tail of
the convoy.



Optimization of the movement of such convoys on a network
of roads between multiple sources and destinations is a complex
problem.



It involves many constraints. These constraints cannot be
related mathematically and occur independently and arrive
dynamically.




Move plans require a high standard of accuracy. Any initial
mistakes are likely to have cumulative effect.


Mobilization of convoys


Evolving schedules of a number of convoys
manually and the subsequent monitoring control
on a real time basis becomes a herculean task,
which needs lot of thinking and variations in
planning the moves


Due to reasons like



Prioritization of the new movement of convoys



Natural disasters like land slide



enemy actions.



Maintenance of vehicles



The initial planned movement of convoys which are on their
way to various destinations will get disturbed dynamically


Mobilization of convoys



The convoys, which are already on move,

1.
will have to wait at some places or

2.

change their routes.

Therefore the problem becomes very complicated and
many decisions have to be taken.



An on
-
line simulation model is the best avenue for
knowing and analyzing all the possible outcomes in
such situations.



So there was a need to develop a DSS and a software to
simulate scenarios, which will help in training the
officers involved in such planning


AIM AND OBJECTIVE


The aim of the move plan of convoys is to get men and materials at a new
location quickly. The objective was to design a DSS and develop a training
software package for scheduling of convoys so that the DSS must.

1.
Help the decision
-
maker to simulate and optimize routes in terms of
travelling distance from a source to the destination subject to the various
constraints.

2.
Enable the decision
-
maker to obtain the positions of scheduled convoys at
specified date and time, so as to keep track of the move plan.

3.
Be capable of accepting the dynamic modifications to network of roads
and the convoy inputs at any stage and generating fresh convoy schedules.

FEATURES IN DSS

1.
It is possible to create a map of the required portion of the area of interest
by giving the positions of the nodes and arcs (roads) joining them with all
their characteristics.

2.
It is possible to schedule any number of convoys by specifying starting
date and time at the source, destination along with the relevant
information. The DSS supports the user to schedule a convoy along a
shortest path, second shortest path or a user specified path between the
source and the destination.

3.
The decision maker has the facility to find out the status of the convoys at
a specified date and time.

4.
It is possible to get total scheduled timetable of any running convoy from
the source to destination including the distance travelled, time of arrival
and departure of head and tail of the convoys at each node, halt times
along the confirmed path of the convoy.






5.
It is possible to change convoys parameters and reschedule all the
affected convoys.

6.
It is possible to change the path of a running convoy from the next
reaching node,

7.
It is possible to delete a scheduled convoy before it starts from the source
node, terminate a running convoy at the next reaching node and all the
affected convoys are automatically rescheduled.

8
It is possible to block a road for a certain period. Those convoys passing
through this road will wait at the starting node of the blocked arc till the
arc block is lifted. User can change the convoy’s path provided a route
exists.

9
It is possible to estimate the starting date and time from the source node
for a convoy whose reaching date and time at the destination node is
specified.

1.
Priority of convoys

Ex: Action is progressing in the border


Providing trained personnel, medicines for injured,
food and water , equipment
--

high priority

Commander based on the information fix priority to
the convoys like which convoy should reach the
front area earliest.

In the DSS model we assign number to convoys such as
1,2,3….

DSS will assign convoy priority higher if number
assigned is lower.

Constraint
--

Priority of convoys


If two convoys of same priority arrive at node around the same
time, the DSS will allow the convoy , which has reached
earlier, to move. The following convoy will move at a speed
=Min (road speed, convoys speed) along the common roads.
--

No overtaking.



If two convoys of different priorities arrive a node around the
same time and are going to travel along common roads, then
DSS will calculate the starting time of Low priority convoy if it
affects the higher priority convoy.



Algorithms are developed for two and extended to n number of
convoys.

Arrival and departure times at the succeeding nodes will be
calculated as usual

Speed constraints

Road speed (
S
r
) depends on



the condition of the road


user will specify



the gradient of road


calculated as follows


If
Θ

is the average road gradient in
degs

from starting node to the end node
of the road, Then speed of the convoy moving along that road,

Sc = Min(
Sr
, Sc)*(1
-

Θ
/90)

(DSS uses radians


degs

are taken for clarity),

The convoy that is moving in opposite direction will be moving along
negative gradient

Speed of that convoy =Sc = 0.90 * Min(
Sr
, Sc)


Note: In case a slower moving convoy is moving ahead of a convoy with
higher or lower priority convoy, then


the speed of following convoy will restricted till the first convoy reaches
the next node,


Lower priority convoy will be made to wait at next node till tail of higher
priority convoy leaves that node + extra time.

Road block


dynamic constraint

The constraint will occur due to


Enemy action


Natural calamity
like Land slide

Road will blocked for a period of time.

DSS will delete this road for that period of time and re
-
schedules of the affected convoys.

Decision maker will have options like


halting the convoys


rescheduling depending on the priorities


changing destination of the affecting convoys



Classification of roads and convoys

Road will be classified depending max wt of a vehicle which
can move on that road.

For Example a Road is classified as 9 means that vehicles more
than 9 tons cannot move on that road.


Convoy will be classified again based on max wt of the vehicle.

For example a convoy is classified as 40 means that there is at
least one vehicle whose wt is 40 tons. Then this convoy
cannot move on a road whose classification less than 40.


A convoy of higher classification cannot move on road of lower
classification. This is taken as a logical constraint during
modeling.

Restriction of movement along arcs


Movement of convoys along some roads will be restricted
to


Day only
--

0600 to 1800 hours


depends on location


Night only


1800 to 0600 hours


depends on location


Day and night only

The convoys will be halted at a node where it reaches within +
or
-

30 minutes of the stipulated time.


+ or


30 can be changed by the commander of the move.



Restriction of movement of convoys


Convoys themselves will restricted move during


Day only


Night only


Day and night only


A day only convoy can not move on night only road.


This is also built as logical constraint in DSS model.


One way roads constraint


In this model one road means the convoys can move from both
directions but they cannot cross along that road.



If a convoy is moving along the one way road then the convoy
coming opposite will be made to halt at the node at the other
end.


Fatigue of the Drivers




How to model this constraint ?

DSS model takes care of fatigue of Drivers by giving halts
for tea/coffee at specified nodes and also along the road.


It is also important that personnel breaks for lunch and
dinner.


Giving rest to drivers will reduce fatigue and rest time can
be utilized for maintenance of vehicles by maintenance
staff.


DSS models allows the commander to reschedule based
on the requirements


SOLUTION TO THE PROBLEM


A network of roads or a map consists of a set of nodes connected by roads.


The attributes of nodes are

name, number, longitude, latitude, node length,

facilities like parking, maintenance available or not.


The attributes of each road are

starting node
i,
ending node
j,
distance (d
i,j
)
in km

(if there is no road between nodes
i

and
j
then
d
i,j


=
-
1),


road speed, (S
a,i,j
-
max speed of any vehicle along the arc),

Road classification (c
i,j
),

restriction of movement(
r
i,j


day and night/day only/night only),

direction (one/two way)


Convoy attributes


A scheduled convoy on the selected map is identified by

name / number, speed(S
c
), total number of vehicles (n),

density (d
-

number of vehicles per km)
,


restriction of movement,

classification (Cc),

priority,

starting date and time at the source or the reaching date
and time at the destination,

source and destination.


To find the shortest route between the source node and
destination node

Let A = (
a
i,j
) be n x n matrix which defines whether an arc exists or not
between two nodes, in which
a
i,j

= 1 if arc is available from node i to j ,
otherwise it is zero.

Let R=(
r
i,j
) be n x n matrix representing the arc restriction regarding the
movement of convoys along the arc joining the nodes i and
j.

The elements
are “d&n” or “d” or “n” as per the following definitions:


r
i,j

= “d & n” if
a
i,j

= 1 and the arc joining i and j is “Day and Night”.


r
i,j

= “d” if
a
i,j

= 1 and the arc is “Day Only”.


r
i,j

= “n” if
a
i,j

= 1 and the arc is “Night Only”.


r
i,j

= “d” if
a
i,j

= 0 meaning arc does not exist from
i

to j.



Let C= (
c
i,j

) be the arc classification matrix of order n x n, whose elements are the
maximum weight of a vehicle which can pass through the nodes
i

and j.
C
i,j

=Max. weight of the vehicle if
a
i,j

= 1.


If
a
i,j

= 0, then
C
i,j

= 0.


The time
t
i,j

taken to travel from node i to j by a convoy moving with a speed
S
c

will be calculated as follows provided
d
i,j


-
1.


If the convoy is “Day and Night” then

t
i,j

=
d
i,j

/ S
c

if S
c


S
a,i,j

and C
c


c
i,j


t
i,j

=
d
i,j

/
S
a,i,j

if S
c

>
S
a,i,j

and C
c


c
i,j

If the convoy is “Day Only” then

t
i,j

=
d
i,j

/ S
c

if S
c


S
a,i,j

and C
c


c
i,j

and
r
i,j

≠ “n”

t
i,j

=
d
i,j

/
S
a,i,j

if S
c

>
S
a,i,j

and C
c


c
i,j

and
r
i,j

≠ “n”

If the convoy is “Night Only” then

t
i,j

=
d
i,j

/ S
c

if S
c


S
a,i,j

and C
c


c
i,j

and
r
i,j

≠ “d”

t
i,j

=
d
i,j

/
S
a,i,j

if S
c

>
S
a,i,j

and C
c


c
i,j

and
r
i,j

≠ “d”





If
t
i,j

can not be calculated due to constraints like arc/convoy classifications
or restriction of movement, then the path does not exist from
i

to j for the
convoy to be scheduled.


Now we utilize Dijkstras algorithm to find the shortest route between the
source node and the destination node for the scheduled convoy.


The route thus found takes the minimum travelling time, excluding the wait
and routine halts.


Overall journey time is the time between the passing of the leading vehicle
(Head) from the source node and the reaching time at the destination by the
last vehicle (Tail) of the column, which includes the wait time and routine
halts.

To find the second shortest path

Consider that the first shortest path from the source node N1 to the
destination node Nn for a specified convoy found using
Dijkstra’s

algorithm is passing through the nodes

N0
-

-
N1
-

-
N2
-

-

N3
-

-
N4…….Nn
-
1
-

-
Nn.

To find the second shortest path for same convoy with starting node
N1 and destination node Nn, we follow the following procedure:

1.
We first remove the arc joining N0
-

-

N1.

2.
We find the available route between N0 and Nn using the Dijkstra’s
algorithm. If the path exists, let this path takes a travelling time t0.
if the path does not exist, we move to the next step.

4.
Now remove the arc joining the nodes N1
-

-

N2 and restore
the arc between No and N1

5.
We compute the route between N0 and Nn. Let this route
takes a travelling time t1, if it exists. If the path does not
exist, then continue the process till we reach the arc joining
Nn
-
1
-

-
Nn. If there is no path found, display the message
“second shortest path does not exist”.

6.
For more details on shortest path algorithms please refer any
text book on Graph Theory.

7.
We find t* = min(t
0

, t
1
,…, t
m
), m≤n. The route which takes a
travelling time t* is the second shortest route.

To schedule a convoy along the User Defined Path from its
source to destination

Commander wants to schedule the convoy on his choice that is “User Defined Path”.

Selected map along with roads and nodes will be displayed on the screen


All those arcs whose classifications are less than the convoy classification are
removed from the displayed map as the scheduled convoy will not be able to move
along these arcs.

If the convoy is day only or night only then the arcs that are night only or day only
respectively will be removed from the displayed map.


Now user can select the route of the scheduled convoy from source node( in blue
colour

circle) to any other intermediate node joining this node with the help of the
mouse. Then from this node select the next node joining the previous node. continue
this process till we reach the destination node (in black
colour

circle).

If any along selected arc, speed restriction(arc speed is less than the convoy speed)
occurs, then suitable warning message will appear. User will have the choice of moving
the convoy with the Min (arc speed, convoy speed).

Once the user reaches the destination node user can confirm this path . The
scheduled timetable will be generated

To schedule a convoy whose reaching date and time at the
destination is specified

Another notable feature of DSS model is that a convoy whose reaching date
and time is specified at the destination can be scheduled.


The DSS model will estimate the approximate starting date and time of the
convoy from the source node using iteration technique so that the convoy will
reach the destination at the required reach date and time.


The model takes into account the priority, routine and node halts,
lunch/dinner time into consideration.


The path of this convoy can also be confirmed along shortest path or second
shortest path or user defined path.

Software project data

Front
-
end : VB 6.0



No. front
-
end forms : 43

Back

end : MSACCESS


No tables : 10

No. of modules : 18



KLOC : 8.18

No. pages of documents :258 (5 documents)

No. of reports designed : 8

Estimated Effort: 45 PMs

Actual Effort


: 60 PMs (2 asstX6 + 1 Off X24 + 1PDX24)





Actual

effort

Yogi
-
Patil

Bailey
-

Basili

Barry
Boehm

COCO

MO
-
II

Doty

Walston
-
Felix

60

50

14

30

30

48

36

1.0

1.2

4.34

2.06

2.01

1.26

1.7


DSS software is developed using in VB
6.0

with
backend database in MSACCESS.


The working of the DSS system can be explained
with the help of the following example.


The first step is the creation of road map under
consideration by giving the characteristics of nodes
and roads




Start

node

End node

d
i,j

(km/hr)

S
a,i,j

(km/hr)


C
i,j



Restricti
on

directio
n

Gradie
nt

Hassan

Mangalore

110


45

70

d&n

2

way

Hassan

Bangalore

200

30

70

n

2 way


Kolar

Bangalore

70

45

70

d

1
way


Tirupati

Chittor

110

40

40

d&n


2 way


Chittor

Kolar

120

25

18

d&n


2 way


Chennai


Kanchipur
am

75

50

24

d&n


2 way


Kanchipu
ram

Chittor

85

50

40

n


2 way


Arc characteristics

Notes:

1.
Arc from Hassan to Bangalore is blocked from 1800 to 2000 hours on
19/04/2003.

2.
Routines halts are 0140
-
0200, 0340
-
0400, 0540
-
0600, 0740
-
0800,etc.,

3.
Lunch time 1300
-
1400 and Dinner time 2100
-
2200.



Table 2:scheduled convoy’s characteristics

Name/n
umber

S
c
Km/hr

n/d

restri
ction

C
c

Priorit
y

Source/starting
date/time

Destinatio
n

C1/555

35

450/30

d&n

9

2

Tirupathi
/

18/04/03/ 1130

Mangalore

C2/444

45

400/20

d&n


9

1

Chennai/

18/04/03/ 1130

Mangalore

C3/333

40

500/25

d&n


9

1

Mangalore/

18/04/04/ 1400

Chennai

Table 3(a): scheduled time table of convoy C1

Node

Convoy’s
he慤
慲rivin朠g
d慴a⁡ d
瑩me

Head’s
w慩琠
瑩me

Head’s
dep慲瑵re
瑩me

Convoy’s
T慩l
Arrivin朠
瑩me

Tail’s
w慩琠
瑩me

Tail’s
dep慲瑵re
瑩me

Tirupathi



--

00:40

18/04/03/1130

18/04/03/1130

02:08

18/04/03/1218

Chittor

18/04/03/1618

07:00

18/04/03/2218

18/04/03/1646

07:00

18/04/03/2246

Kolar

19/04/03/0406

03:09

19/04/03/0655

19/04/03/0434

03:29

19/04/03/0723

Banglore

19/04/03/0915

13:44

19/04/03/2059

19/04/03/1003

13:44

19/04/03/2227

Hassan

20/04/03/0539

00:40

20/04/03/0539

20/04/03/0627

00:40

20/04/03/0627

mangalore

20/04/03/0927


--

--

20/04/03/1015


--

-

Table 3(a): scheduled time table of convoy C1

Node

Convoy’s
he慤
慲rivin朠g
d慴a⁡ d
瑩me

Head’s
w慩琠
瑩me

Head’s
dep慲瑵re
瑩me

Convoy’s
T慩l
Arrivin朠
瑩me

Tail’s
w慩琠
瑩me

Tail’s
dep慲瑵re
瑩me

Tirupathi


--

00:40

18/04/03/1130

18/04/03/1130

02:08

18/04/03/1218

Chittor

18/04/03/1618

07:00

18/04/03/2218

18/04/03/1646

07:00

18/04/03/2246

Kolar

19/04/03/0406

03:09

19/04/03/0655

19/04/03/0434

03:29

19/04/03/0723

Banglore

19/04/03/0915

13:44

19/04/03/2059

19/04/03/1003

13:44

19/04/03/2227

Hassan

00:40

20/04/03/0539

20/04/03/0627

00:40

20/04/03/0627

mangalore


--

--

20/04/03/1015


--

Table 3(b): scheduled time table of convoy C2

chennai

--

00:20

18/04/03/1130

18/04/03/1130

01:49

18/04/03/1219

Kanchipur
am

18/04/03/1430

03:50

18/04/03/1800

18/04/03/1459

03:50

18/04/03/1829

Chittor

18/04/03/2013

01:40

18/04/03/2013

18/04/03/2042

00:40

18/04/03/2042

Kolar

19/04/03/0241

03:19

19/04/03/0600

19/04/03/0310

03:39

19/04/03/0629

Banglore

19/04/03/0734

14:26

19/04/03/2000

19/04/03/0823

14:06

19/04/03/2029

Hassan

20/04/03/0440

00:20

20/04/03/0440

20/04/03/0509

00:40

20/04/03/0509

Mangalore

20/04/03/0726


--

--

20/04/03/0815


--

--

Table 3(c): scheduled time table of convoy C3

Mangalore

--

00:20

18/04/03/1400

18/04/03/1400

01:16

18/04/03/1436

Hassan

18/04/03/1705

02:55

18/04/03/1800

18/04/03/1801

02:35

18/04/03/1836

Bangalore


19/04/03/0240

07:43

18/04/03/1003

19/04/03/0316

07:43

19/04/03/1039

Kolar


19/04/03/1208

01:40

19/04/03/1208

19/04/03/1244

01:40

19/04/03/1244

Chittor

19/04/03/1836

01:20

19/04/03/1836

19/04/03/1912

01:20

19/04/03/1912

Kanchipur
am

20/04/03/2203

00:20

20/04/03/2203

20/04/03/2239

00:20

20/04/03/2239

Chennai


20/04/03/0016


--

--

20/04/03/0052


--

--

CONCLUSIONS

1.
A DSS for optimal scheduling of convoys by road in terms of travelling
distance is developed.

2.
This model will be useful for training decision
-
makers in simulating a
large scenario in real time planning.

3.
The model is tested over a map with about 500 nodes and scheduling 55
convoys with various priorities and from different sources to destinations.

4.
The model was also tested at two user sites for various cases and working
satisfactorily.

5.
The model was used during “Operation
Parakram



APPENDIX “A”


South India map was created with 200 nodes and
258

roads
connecting these nodes. It took about
3

days for a computer operator to
create the complete map database.


The DSS model was run on a
pIII

with speed of
550

Mhz. it was
observed that to compute the shortest path between a source and
destination having
23

nodes in between them, the CPU time was
6
seconds and for the second shortest path took
9

seconds when other
convoys were scheduled on the map.

It was observed that the time to compute the shortest path and the
second shortest path starts increasing as more number convoys starts
overlapping along the paths and affect the movement of each other due to
priorities, speeds, road conditions.

It was observed that, when fifteen convoys were scheduled, the
computing time to find the shortest and the second shortest path went up
to
39

seconds and
190

seconds respectively. We found that more than
8

convoys were affecting the movement of this convoy.

Computing time for shortest path for a convoy whose reaching date and
time was given at the destination was found to be
36

seconds when five
convoys were running along the some common routes and the time
increased to
104

seconds when fifteen convoys were running along some
common paths. The increase in time is due to iterations involved in
finding the starting date and time at the source node.

WHAT IF SCENARIOS

1.
Is there a path existing between the specified source and destination?

2.
If yes, schedule the convoy either on a shortest path or on a second
shortest path or on a user
-
defined path?

3.
What is total journey time?

4.
When (date and time) will the convoy reach destination?

5.
What is the average
spped
?

6.
What is the total wait time during the journey?


A higher priority convoy C
2

which left some other node will be
reaching the same destination node of C
1
. it will pass through the some
of the common arcs.

1.
how much time will C
1
wait because of the convoy C
2

at the first
common node?

2.
What is the revised schedule timetable of C
1
?

3.
What will be the additional wait time of C
1
?

4.
Is it possible to schedule C
1

on a different path so that C
2

will not
affect the movement of C
1

and the total wait time of C
1
reduces?

5.
Would like to change the priority of C
2

and reschedule, so that C
2
will not affect the schedule of C
1
? Or would like to change the
priority of C
2

less than that of C
1

and reschedule?

WHAT IF SCENARIOS

Another convoy from C
3

is moving in the opposite direction of C
1

1.
Is there a one way between source and destination?

2.
Are the convoys going to meet along this one way?

3.
If so? Which convoy will wait at the previous node to make way for
other?

4.
What is the additional wait time of each convoy.

A day only convoy C
4

has to reach the destination node on
25

Aug.
2003

at 1000 whose starting node is specified.

1.
What should be starting date and time at source node?

2.
Are there convoys, which affect the movement of C
4
?

3.
If so?, what is the additional wait time?

4.
Suppose C
4

reaches a node at
1630

and it is going to halt there,
because it will be reaching the next node around
1900

hours. Would
you like to continue journey
upto

next node even though it is the day
only convoy. Please note that day only convoys will travel between
0600

hours to
1800

hours.

WHAT IF SCENARIOS

Based on the latest information an arc was closed due to landslide
from
1000

hours on
20

June
2003

to
1500

hours on
25

June
2003
. questions
addressed by DSS are

1.
Which are all the convoys affected due to this change of
environment?

2.
How many convoys have to wait at the previous node?

3.
Would like to change their paths if exists?

4.
Would like to change the destination from this node and get the
schedule table?

5.
Would you like to terminate the convoy at the some other node?

6.
Would you like to delete the convoy if is not yet started from the
source node?

7.
Reschedule all convoys after each of option mentioned in above
questions (
1
) to (
6
)?


WHAT IF SCENARIOS

User can build the required scenario and feed the data to the model
in the specified input forms. Output will be generated in the form of
reports. Required reports can be generated