Algorithmic research

Post on 28-Nov-2014

841 Views

Category:

Education

1 Downloads

Preview:

Click to see full reader

DESCRIPTION

Algorithmic research types

Transcript

UNIT – 5

ALGORITHM RESEARCH

CONTENT:

IntroductionAlgorithmic Research ProblemsTypes of Algorithmic research problems

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.

Some Standard Algorithms

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

Cont…

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

CONTENT:

IntroductionAlgorithmic Research ProblemsTypes of Algorithmic research problems

Algorithmic Research Problem

Research problems in different functional

areas of management

Production management

Marketing management

Financial management Personnel

management

Other areas

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

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

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

Financial Management:

Determination of rate of return Capital budgeting

Exclusive Selection of mutually and

collectively exhaustive projects

Portfolio management

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

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.

CONTENT:

IntroductionAlgorithmic Research ProblemsTypes of algorithmic Research Problems

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

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.

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:

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:

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

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:

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

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.

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

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 =

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

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

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

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.

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

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

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

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

top related