8 -1 Dynamic Programming Khujaev Otabek Fibonacci sequence Fibonacci sequence: 0, 1, 1, 2, 3, 5, 8, 13, 21, … F i = i if i 1 F i = F i-1 + F i-2.

Презентация:



Advertisements
Похожие презентации
Minimum spanning trees. Minimum Connector Algorithms Kruskals algorithm 1.Select the shortest edge in a network 2.Select the next shortest edge which.
Advertisements

BREADTH FIRST TRAVERSAL Lesson Plan -3. Evocation.
Choosing the right career to follow is probably one of the most important decisions people ever make. For that reason we should do a lot of thinking about.
Relation properties in graphs. Reflexive relation All nodes have loops ReflexiveNot reflexiveReflexive
What does GSM, Lock&Unlock mean?. The term GSM means - Global System for Mobile Communications. It is the most popular standard for mobile phones in the.
Copyright (c) 2004 Brooks/Cole, a division of Thomson Learning, Inc. The Integral chapter 6 The Indefinite Integral Substitution The Definite Integral.
The main problem between generations. There are many problems between parents and their children. It can be differences between the views of the younger.
© 2006 Cisco Systems, Inc. All rights reserved. ICND v Determining IP Routes Introducing Link-State and Balanced Hybrid Routing.
Prepared by student of group MChB-310 Shtukman Elizaveta.
Tool: Pareto Charts. The Pareto Principle This is also known as the "80/20 Rule". The rule states that about 80% of the problems are created by 20% of.
Для просмотра программы Powerpoint. Related Article - Different Ways to View PowerPoint 2007 SlidesDifferent Ways to View PowerPoint 2007 Slides Use the.
DEPTH FIRST TRAVERSAL Lesson Plan -2. Evocation Traverse Graph All vertices in graph must to traverse A vertex in graph have multiple parents, traversal.
Project BNB-Grid: solving large scale optimization problems in a distributed environment M. Posypkin (ISA RAS)
Mathematical modeling in Power Engineering. Mathematical model A mathematical model is a description of a system using mathematical concepts and language.
WS4-1 WORKSHOP 4 MODAL TRANSIENT ANALYSIS NAS122, Workshop 4, August 2005 Copyright 2005 MSC.Software Corporation.
© 2005 Cisco Systems, Inc. All rights reserved. BGP v Route Selection Using Policy Controls Using Multihomed BGP Networks.
Internet as a MODERN WAY OF COMMUNICATION We are glad to present here our project which is called Internet is Modern Way of Communication. It is a very.
WS13 -1 NAS105, Workshop 13, May 2005 WORKSHOP 13 TRANSIENT DYNAMIC ANALYSIS OF A CAR GOING OVER A BUMP.
1 Search Problems (Where reasoning consists of exploring alternatives) R&N: Chap. 3, Sect. 3.1–
Транксрипт:

8 -1 Dynamic Programming Khujaev Otabek

8 -2 Fibonacci sequence Fibonacci sequence: 0, 1, 1, 2, 3, 5, 8, 13, 21, … F i = i if i 1 F i = F i-1 + F i-2 if i 2 Solved by a recursive program: Much replicated computation is done. It should be solved by a simple loop.

8 -3 Dynamic Programming Dynamic Programming is an algorithm design method that can be used when the solution to a problem may be viewed as the result of a sequence of decisions

8 -4 The shortest path To find a shortest path in a multi-stage graph Apply the greedy method : the shortest path from S to T : = 8

8 -5 The shortest path in multistage graphs e.g. The greedy method can not be applied to this case: (S, A, D, T) = 23. The real shortest path is: (S, C, F, T) = 9.

8 -6 Dynamic programming approach Dynamic programming approach (forward approach): d(S, T) = min{1+d(A, T), 2+d(B, T), 5+d(C, T)} d(A,T) = min{4+d(D,T), 11+d(E,T)} = min{4+18, 11+13} = 22.

8 -7 Dynamic programming d(B, T) = min{9+d(D, T), 5+d(E, T), 16+d(F, T)} = min{9+18, 5+13, 16+2} = 18. d(C, T) = min{ 2+d(F, T) } = 2+2 = 4 d(S, T) = min{1+d(A, T), 2+d(B, T), 5+d(C, T)} = min{1+22, 2+18, 5+4} = 9. The above way of reasoning is called backward reasoning.

8 -8 Backward approach (forward reasoning) d(S, A) = 1 d(S, B) = 2 d(S, C) = 5 d(S,D)=min{d(S, A)+d(A, D),d(S, B)+d(B, D)} = min{ 1+4, 2+9 } = 5 d(S,E)=min{d(S, A)+d(A, E),d(S, B)+d(B, E)} = min{ 1+11, 2+5 } = 7 d(S,F)=min{d(S, A)+d(A, F),d(S, B)+d(B, F)} = min{ 2+16, 5+2 } = 7

8 -9 d(S,T) = min{d(S, D)+d(D, T),d(S,E)+ d(E,T), d(S, F)+d(F, T)} = min{ 5+18, 7+13, 7+2 } = 9

8 -10 Principle of optimality Principle of optimality: Suppose that in solving a problem, we have to make a sequence of decisions D 1, D 2, …, D n. If this sequence is optimal, then the last k decisions, 1 k n must be optimal. e.g. the shortest path problem If i, i 1, i 2, …, j is a shortest path from i to j, then i 1, i 2, …, j must be a shortest path from i 1 to j In summary, if a problem can be described by a multistage graph, then it can be solved by dynamic programming.

8 -11 Forward approach and backward approach: Note that if the recurrence relations are formulated using the forward approach then the relations are solved backwards. i.e., beginning with the last decision On the other hand if the relations are formulated using the backward approach, they are solved forwards. To solve a problem by using dynamic programming: Find out the recurrence relations. Represent the problem by a multistage graph. Dynamic programming

8 -12 The resource allocation problem m resources, n projects profit p(i, j) : j resources are allocated to project i. maximize the total profit.

8 -13 The multistage graph solution The resource allocation problem can be described as a multistage graph. (i, j) : i resources allocated to projects 1, 2, …, j e.g. node H=(3, 2) : 3 resources allocated to projects 1, 2.

8 -14 Find the longest path from S to T : (S, C, H, L, T), =13 2 resources allocated to project 1. 1 resource allocated to project 2. 0 resource allocated to projects 3, 4.

8 -15 The traveling salesperson (TSP) problem e.g. a directed graph : Cost matrix:

8 -16 A multistage graph can describe all possible tours of a directed graph. Find the shortest path: (1, 4, 3, 2, 1) =17 The multistage graph solution

8 -17 The representation of a node Suppose that we have 6 vertices in the graph. We can combine {1, 2, 3, 4} and {1, 3, 2, 4} into one node. (3),(4,5,6) means that the last vertex visited is 3 and the remaining vertices to be visited are (4, 5, 6).

8 -18 The dynamic programming approach Let g(i, S) be the length of a shortest path starting at vertex i, going through all vertices in S and terminating at vertex 1. The length of an optimal tour : The general form: Time complexity: ( ),( ) (n-k) (n-1)