Top Banner
UNIT – 5 ALGORITHM RESEARCH
34

Algorithmic research

Nov 28, 2014

Download

Education

Algorithmic research types
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Algorithmic research

UNIT – 5

ALGORITHM RESEARCH

Page 2: Algorithmic research

CONTENT:

IntroductionAlgorithmic Research ProblemsTypes of Algorithmic research problems

Page 3: Algorithmic research

Introduction:

Algorithm:It is a sequence steps to solve a problem of interest.It is procedure for solving problem with special focus on solving problem using computer.

Page 4: Algorithmic research

Some Standard Algorithms

Search algorithmsSorting algorithmsShortest path algorithmsMinimum spanning tree algorithmsBranch and bound algorithmsHungerian method for assignment method

Page 5: Algorithmic research

Cont…

Simplex algorithm for linear programmingZero-one implicit enumeration algorithm for 0-1 programmingSimulated annealing algorithmGenetic algorithmTabu search algorithmGreedy algorithm for Travelling Salesman Problem

Page 6: Algorithmic research

CONTENT:

IntroductionAlgorithmic Research ProblemsTypes of Algorithmic research problems

Page 7: Algorithmic research

Algorithmic Research Problem

Research problems in different functional

areas of management

Production management

Marketing management

Financial management Personnel

management

Other areas

Page 8: Algorithmic research

Production Management

Minimizing the mean tardiness in single scheduling problemMinimizing the weighted mean tardiness in single machine scheduling problemMinimizing the sum of the tardiness and earliness in single machine scheduling problemMinimizing the makespan in parallel machines scheduling problem

Page 9: Algorithmic research

Minimizing the makespan in flowshop scheduling problemMaximizing the balancing efficiency of an assembly lineResource leveling and allocation in project networkAggregate planning problemMaster production planning problem

Page 10: Algorithmic research

Dealer location problem W

arehouse lo cat ion pr ob lem

Salesman

assignment

problem

Pro

duct

pr

icin

g pr

oble

m

Media planning problem

Location

of after sales

service centers

Travelling

Salesman

problem

Loc

atio

n of

m

arke

tin

g br

anch

of

fice

s.

Problems in Marketing Management

Problems in Marketing Manageme

nt

Page 11: Algorithmic research

Financial Management:

Determination of rate of return Capital budgeting

Exclusive Selection of mutually and

collectively exhaustive projects

Portfolio management

Page 12: Algorithmic research

Personnel Management:

Problems in Personnel

ManagementEmployee

s in-house

training problem

Manpower planning problem

Allocation of fund to personnel activities

for improved

labor productivi

ty

Assignment

problem

Page 13: Algorithmic research

Other Areas:

Fire stations location problem

Schools location problem

Branch banks location problem

Scheduling processors in

parallel computers

Encryption and decryption

Organization of B-tree.

Page 14: Algorithmic research

CONTENT:

IntroductionAlgorithmic Research ProblemsTypes of algorithmic Research Problems

Page 15: Algorithmic research

Types of algorithmic research problems:

Algorithmic problems

Polynomial problem

Combinational/ NP-hard problems

The algorithms for solving these real

life problems

Polynomial algorithms

Exponential algorithms

Page 16: Algorithmic research

Polynomial algorithm for polynomial problem:

If the complexity of an algorithm for a problem is in polynomial form, then that algorithm is known as polynomial algorithm.It will take finite times to solve a problem optimally.The complexity of an algorithm means a function representing the number of steps required to solve a problem under the worst case behavior. An algorithm consists of a set of steps.For some problems, the algorithm will be executed for all its steps or for its subset of steps.The worst case behavior means the maximum number of steps executed for a problem.

Page 17: Algorithmic research

The complexity of an algorithm,

n – problem sizef(n) – the time complexity function

The function is a polynomial order 4.The algorithm which has this function as its complexity function is known as polynomial functionThe worst case behavior of the algorithm is known as order of the algorithm.The highest polynomial of the given function is treated to be worst case.The order of this algorithm is O(n²)

Polynomial algorithm for polynomial problem:

Page 18: Algorithmic research

The problems which will have polynomial time complexity function are called polynomial problems. These problems are solved in finite timeExamples of polynomial problem

Shortest path problemFinding the roots of a quadratic equationMinimizing mean flow time in single machine scheduling – SPT rule(Shortest Path Time)Minimizing the maximum tardiness in single machine scheduling problem – EDD(Earliest due date) rule is usedMinimizing the make span in 2 machines and n jobs case flow shop scheduling problem – Johnson’s algorithm is used for this problem.Greedy heuristic for travelling salesman problem.

Polynomial algorithm for polynomial problem:

Page 19: Algorithmic research

Floyd’s Algorithm:

Step 1: Set k=0Step 2: From the initial distance matrix [D⁰] and the initial precedence matrix[P⁰] from the distance networkStep 3: Set k = k+1Step 4: Obtain the values of the distance matrix, [ ] for all the cells, where i is not equal to j using the following formula:

Step 5: Obtain the values of the precedence matrix, ], for all the cells, where i ≠ j

Page 20: Algorithmic research

Step 6: if k=n go to step 7, otherwise, set k=k+1 and go to step-4Step 7:Trace the shortest path for a given combination of source node and destination node

7.1 : X-Source node, Y-Destination node7.2 : Fix Y node as the last node in the partially formed shortest path7.3: find the value from the final precedence matrix for the row corresponding to node X and the column corresponding to Y. Let it be Q. Prefix node Q in the partially formed shortest path.7.4 :Check whether Q is equal to X. If not so, set Y=Q and go to step 7.3; otherwise go to 7.57.5:The path constructed is the required shortest path from the source node X to the destination node Y.

Floyd’s Algorithm:

Page 21: Algorithmic research

Complexity function:

Critical analysis of execution of steps are presented

The step-1 is executed only once.The step-2 will be executed n² times to read the distance matrix, [Dº]as well as the precedence matrix[Pº]Step-3 is repeated for one more timeIn each of the step-4 and the step-5, calculations for n² cells in the distance matrix, as well as in the precedence matrix, are done for n times.The step-6 is repeated for n times.In step-7, for a given source-destination combination, maximum of n set of calculations comparisons will be done if shortest path involves all the nodes of the network

Page 22: Algorithmic research

Based on the explanations from (a) to (f), the time complexity function of Floyd’s algorithm is,f(n) = = 1+ 2a₂nᶟ+(1+a₃)na₁, a₂ , a₃ - ConstantsThe highest degree of the above polynomial is 3The worst case complexity function of Floyd’s algorithm is O(nᶟ)Floyd’s algorithm is a polynomial algorithm.This algorithm gives the optimal solution in terms of the shortest distance and the corresponding path for a given pair of source and destination node.

Page 23: Algorithmic research

Example

W = D0 =40 5

2 0

-3 0

1 2 3

1

2

3

00 0

0 0 0

0 0 0

1 2 3

1

2

3

P =

1

2

3

5

-3

24

Page 24: Algorithmic research

D1 =40 5

2 0 7

-3 0

1 2 3

1

2

3

00 0

0 0 1

0 0 0

1 2 3

1

2

3

P =

1

2

3

5

-324

D1[2,3] = min( D0[2,3], D0[2,1]+D0[1,3] )= min (, 7) = 7

D1[3,2] = min( D0[3,2], D0[3,1]+D0[1,2] )= min (-3,) = -3

40 5

2 0

-3 0

1 2 3

1

2

3

D0 =

Page 25: Algorithmic research

D2 =40 5

2 0 7

-1 -3 0

1 2 3

1

2

3

00 0

0 0 1

2 0 0

1 2 3

1

2

3

P =

D2[1,3] = min( D1[1,3], D1[1,2]+D1[2,3] )= min (5, 4+7) = 5

D2[3,1] = min( D1[3,1], D1[3,2]+D1[2,1] )= min (, -3+2) = -1

1

2

3

5

-324

D1 = 40 5

2 0 7

-3 0

1 2 3

1

2

3

Page 26: Algorithmic research

Exponential Algorithm for Combinatorial/ NP-hard Problem

If the time complexity function of an algorithm for a problem is in exponential form, then that algorithm is known as exponential algorithm.This kind of algorithm takes long time to solve a problem.Time complexity of some of the algorithms:

f(n) = n!f(n) = 15(2ⁿ + 3n² +20)f(n) = eⁿ+7n+2

n – Size of the problemf(n) – time complexity

Page 27: Algorithmic research

If a graphical plot is made for each of these functions, the value of f(n) grows exponentially.This means that even for a small increment in n will cause a very large unproportionate positive in crease in f(n).The algorithm which are having such functions are known as ‘exponential algorithms’.The order of complexity of the three functions are O(n!), O(2ⁿ) and O(eⁿ) respectively.

Exponential Algorithm for Combinatorial/ NP-hard Problem

Page 28: Algorithmic research

Exponential Algorithm for Combinatorial/ NP-hard ProblemThe problem which is having

exponential time complexity function is called combinatorial problem or NP-hard problem. NP –hard means non-polynomial hard problem.If the power of the time complexity function of an algorithm is the size of the problem(n) or if the time complexity function is in factorial form of the size of the problem(n!), then the order of the function is exponential and the corresponding problem is called combinatorial problem/NP-hard problem.

Page 29: Algorithmic research

Some examples of combinatorial problems are…

Exponential Algorithm for Combinatorial/ NP-hard ProblemProblem Solution/

Technique

Travelling salesman problem aiming at optimal solution

The branch and bound method

Minimizing mean tardiness in single machine scheduling

The branch and bound method

Minimizing weighted mean tardiness in single machine scheduling problem

Complete enumeration technique

Minimizing sum of the weighted number of early and tardy jobs in single machine scheduling problem

Mathematical model or Complete enumeration technique

Machine-component cell formation in group technology

Mathematical model

Minimizing makespan in N machines and N jobs flowshop problem

Branch and bound technique

Minimizing the total number of facilities to serve a maximum number of customers under total covering problem

Mathematical model or Complete enumeration technique

Page 30: Algorithmic research

Example of computing time complexity function of combinatorial problem

The minimizing the mean tardiness in single machine scheduling problem is solved using complete enumeration technique.It contains n different single operation jobs whose processing times and due dates are known.Generalized data of single machine scheduling problem

Job(i) Processing Time(t) Due date(d)

1 t₁ d₁

2 t₂ d₂

.

.

.

.

.

.

.

.

.

i tᵢ dᵢ

.

.

.

.

.

.

.

.

.

n tn dn

Page 31: Algorithmic research

The objective of this problem is to find the sequence of jobs which minimizes the mean tardiness.The tardiness of the job i is as defined below:

Tᵢ = Cᵢ - dᵢ, if Cᵢ > dᵢ = 0, otherwise.Tᵢ - tardiness of job iCᵢ - Completion time of the job iDᵢ - Due date of job i

Page 32: Algorithmic research

Growth of no.of Sequences versus Problem Size(n)Problem Size (n) No.Of.Sequences

(n!)

1 1

2 2

3 6

4 24

5 120

6 720

7 5040

8 40320

9 362880

10 3628800

Page 33: Algorithmic research
Page 34: Algorithmic research