1 Scheduling 9 Scheduling An event planner has to juggle many workers completing different tasks, some of which must be completed before others can begin. For example, the banquet tables would need to be arranged in the room before the catering staff could begin setting out silverware. The event planner has to carefully schedule things so that everything gets done in a reasonable amount of time. The problem of scheduling is fairly universal. Contractors need to schedule workers and subcontractors to build a house as quickly as possible. A magazine needs to schedule writers, editors, photographers, typesetters, and others so that an issue can be completed on time. Getting Started To begin thinking about scheduling, let us consider an auto shop that is converting a car from gas to electric. A number of steps are involved. A time estimate for each task is given. Task 1: Remove engine and gas parts (2 days) Task 2: Steam clean the inside of the car (0.5 day) Task 3: Buy an electric motor and speed controller (2 days for travel) Task 4: Construct the part that connects the motor to the car s transmission (1 day) Task 5: Construct battery racks (2 days) Task 6: Install the motor (0.5 day) Task : Install the speed controller (0.5 day) Task 8: Install the battery racks (0.5 day) Task 9: Wire the electricity (1 day) Some tasks have to be completed before others we certainly can t install the new motor before removing the old engine! There are some tasks, however, that can be worked on simultaneously by two different people, like constructing the battery racks and installing the motor. To help us visualize the ordering of tasks, we will create a digraph, a graphical representation in which tasks are represented with dots, called vertices, and arrows between vertices are used to show ordering. For example, this digraph shows that Task 1, notated T 1 for compactness, needs to be completed before Task 2. The number in parentheses after the task name is the time required for the task. T 1 (2) T 2 (0.5) David Lippman Creative Commons BY-SA
2 80 Example: A complete digraph for our car conversion would look like this: T 1 (2) T 2 (0.5) (2) (1) T 6 (0.5) T (0.5) T 9 (1) T 5 (2) T 8 (0.5) The time it takes to complete this job will partially depend upon how many people are working on the project. In scheduling jargon, the workers are called processors. While in this example the processors are humans, in some situations the processors are computers, robots, or other machines. For simplicity, we are going to make the very big assumptions that every processor can do every task, that they all would take the same time to complete it, and that only one processor can work on a task at a time. If we had only one processor working on this task, it is easy to determine the finishing time - how long it will take to complete all the tasks; just add up the individual times. We assume one person can t work on two tasks at the same time, ignore things like drying times during which someone could work on another task. Scheduling with one processor, a possible schedule would look like this, with a finishing time of 10 days. T 1 T 5 T 2 T 6 T T 8 T 9 In this schedule, all the ordering requirements are met. This is certainly not the only possible schedule for one processor, but no other schedule could complete the job in less time. Because of this, this is an optimal schedule with optimal finishing time there is nothing better. For two processors, things become more interesting. For small digraphs like this, we probably could fiddle around and guess-and-check a pretty good schedule. Here would be a possibility: T 1 T 6 T 9 P 2 T 5 T 2 T 8 T With two processors, the finishing time was reduced to 5.5 days. What was processor 2 doing during the last day? Nothing, because there were no tasks for the processor to do. This is called idle time.
3 Scheduling 81 Is this schedule optimal? Could it have been completed in 5 days? Because every other task had to be completed before task 9 could start, there would be no way that both processors could be busy during task 9, so it is not possible to create a shorter schedule. So how long will it take if we use three processors? About 10/3 = 3.33 days? Again we will guess-and-check a schedule: T 1 T 2 T 6 T 8 T 9 P 2 T P 3 T 5 With three processors, the job still took 4.5 days. It is a little harder to tell whether this schedule is optimal. However, it might be helpful to notice that since Task 1, 2, 6, and 9 have to be completed sequentially, there is no way that this job could be completed in less than = 4 days, regardless of the number of processors. Four days is, for this digraph, the absolute minimum time to complete the job, called the critical time. Adding an algorithm Up until now, we have been creating schedules by guess-and-check, which works well enough for small schedules, but would not work well with dozens or hundreds of tasks. To create a more procedural approach, we might begin by somehow creating a priority list. Once we have a priority list, we can begin scheduling using that list and the list processing algorithm. List Processing Algorithm 1) On the digraph or priority list, circle all tasks that are ready, meaning that all prerequisite tasks have been completed. 2) Assign to each available processor, in order, the first ready task. Mark the task as in progress, perhaps by putting a single line through the task. 3) Move forward in time until a task is completed. Mark the task as completed, perhaps by crossing out the task. If any new tasks become ready, mark them as such. 4) Repeat until all tasks have been scheduled. Example: Using our digraph from above, schedule it using the priority list below: T 1,,, T 5, T 6, T, T 8, T 2, T 9 Time 0: Mark ready tasks Priority list: T 1,,, T 5, T 6, T, T 8, T 2, T 9 We assign the first task, T 1 to the first processor,, and the second ready task,, to the second processor. Making those assignments, we mark those tasks as in progress:
4 82 Priority list: T 1,,, T 5, T 6, T, T 8, T 2, T 9 Schedule up to here: T 1 P 2 Time 2: Both processors complete their tasks. We mark those tasks as complete. With Task 1 complete, Task 2 becomes ready: Priority list: T 1,,, T 5, T 6, T, T 8, T 2, T 9 We assign the next ready task on the list, to, and T 5 to P 2. Priority list: T 1,,, T 5, T 6, T, T 8, T 2, T 9 T 1 P 2 T 5 Time 3: Processor 1 has completed. Completing does not make any other tasks ready (note that all the rest require that T 2 be completed first). Priority list: T 1,,, T 5, T 6, T, T 8, T 2, T 9 Since the next three tasks are not yet ready, we assign the next ready task, T 2 to Priority list: T 1,,, T 5, T 6, T, T 8, T 2, T 9 T 1 T 2 P 2 T 5 Time 3.5: Processor 1 has completed T 2. Completing T 2 causes T 6 and T to become ready. We assign T 6 to Priority list: T 1,,, T 5, T 6, T, T 8, T 2, T 9 T 1 T 2 T 6 P 2 T 5
5 Scheduling 83 Time 4: Both processors complete their tasks. The completion of T 5 allows T 8 to become ready. We assign T to and T 8 to P 2. Priority list: T 1,,, T 5, T 6, T, T 8, T 2, T 9 T 1 T 2 T 6 T P 2 T 5 T 8 Time 4.5: Both processors complete their tasks. T 9 becomes ready, and is assigned to. There is no ready task for P 2 to work on, so P 2 idles. Priority list: T 1,,, T 5, T 6, T, T 8, T 2, T 9 T 1 T 2 T 6 T T 9 P 2 T 5 T 8 With the last task completed, we have a schedule. It is worth noting that the list processing algorithm itself does not influence the resulting schedule the schedule is completely determined by the priority list followed. The list processing, while do-able by hand, could just as easily be computed by a computer. The interesting part of scheduling, then, is how to create the best priority list possible. Choosing a priority list We will explore two algorithms for selecting a priority list. Decreasing time algorithm The decreasing time algorithm takes the approach of trying to get the very long tasks out of the way as soon as possible by putting them first on the priority list. Decreasing Time Algorithm Create the priority list by listing the tasks in order from longest completion time to shortest completion time.
6 84 Example: Consider the scheduling problem represented by the digraph below. T 1 (6) T 5 (5) T 9 (2) T 2 (3) T 6 (10) T 8 (3) T 10 () () (4) T (4) To use the decreasing time list algorithm, we create our priority list by listing the tasks in order from longest task time to shortest task time. If there is a tie, we will list the task with smaller task number first (not for any good reason, but just for consistency). For this digraph, the decreasing time algorithm would create a priority list of: T 6 (10), (), T 10 (), T 1 (6), T 5 (5), (4), T (4), T 2 (3), T 8 (3), T 9 (2) Once we have the priority list, we can create the schedule using the list processing algorithm. With two processors, we d get: Time 0: We identify ready tasks, and assign to and T 1 to P 2 Priority list: T 6,, T 10, T 1, T 5,, T, T 2, T 8, T 9 6 Time 6: P 2 completes T 1. No new tasks become ready, so is assigned to P 2. Priority list: T 6,, T 10, T 1, T 5,, T, T 2, T 8, T Time : completes. No new tasks become ready, so T 2 is assigned to. Priority list: T 6,, T 10, T 1, T 5,, T, T 2, T 8, T 9 T
7 Scheduling 85 Time 10: Both processors complete their tasks. T 6 becomes ready, and is assigned to. No other tasks are ready, so P 2 idles. Priority list: T 6,, T 10, T 1, T 5,, T, T 2, T 8, T 9 T 2 T Time 20: With T 6 complete, T 5 and T become ready, and are assigned to and P 2 respectively. Priority list: T 6,, T 10, T 1, T 5,, T, T 2, T 8, T 9 T 2 T 6 20 T 5 25 T Time 24: P 2 completes T. No new items become ready, so P 2 idles. Time 25: completes T 5. T 8 and T 9 become ready, and are assigned. Priority list: T 6,, T 10, T 1, T 5,, T, T 2, T 8, T T 2 T 6 T 5 T T 24 T 9 2 Time 2: T 9 is completed. No items ready, so P 2 idles. Time 28: T 8 is completed. T 10 becomes ready, and is assigned to. Priority list: T 6,, T 10, T 1, T 5,, T, T 2, T 8, T 9 T 2 T 6 20 T 5 25 T 8 28 T T 24 T 9 2 Using the decreasing time algorithm, the priority list led to a schedule with a finishing time of 35. Is this good? It certainly looks like there was a lot of idle time in this schedule. To get some idea how good or bad this schedule is, we could compute the critical time, the minimum time to complete the job. To find this, we look for the sequence of tasks with the highest total completion time. For this digraph that sequence would appear to be: T 2, T 6, T 5, T 8, T 10, with total sequence time of 28. From this we can conclude that our schedule isn t horrible, but there is a possibility that a better schedule exists.
8 86 Critical path algorithm A sequence of tasks in the digraph is called a path. In the previous example, we saw that the critical path dictates the minimum completion time for a schedule. Perhaps, then, it would make sense to consider the critical path when creating our schedule. For example, in the last schedule, the processors began working on tasks 1 and 3 because they were longer tasks, but starting on task 2 earlier would have allowed work to begin on the long task 6 earlier. The critical path algorithm allows you to create a priority list based on ideas of critical paths. Critical Path Algorithm (version 1) 1) Find the critical path. 2) The first task in the critical path gets added to the priority list. 3) Remove that task from the digraph 4) Repeat, finding the new critical path with the revised digraph. Example: The original digraph from above has critical path T 2, T 6, T 5, T 8, T 10, so T 2 gets added first to the priority list. Removing T 2 from the digraph, it now looks like: T 1 (6) T 5 (5) T 9 (2) T 6 (10) T 8 (3) T 10 () () (4) T (4) The critical path is now T 6, T 5, T 8, T 10, so T 6 is added to the priority list and removed. T 1 (6) T 5 (5) T 9 (2) T 8 (3) T 10 () () (4) T (4) Now there are two paths with the same length: T 1, T 5, T 8, T 10 and, T, T 8, T 10. We can add T 1 to the priority list (or we usually add the one with smaller item number) and remove it, and continue the process.
9 Scheduling 8 I m sure you can imagine that searching for the critical path every time you remove a task from the digraph would get really tiring, especially for a large digraph. In practice, the critical path algorithm is implementing by first working from the end backwards. This is called the backflow algorithm. Backflow Algorithm 1) Introduce an end vertex, and assign it a time of 0, shown in [brackets] 2) Move backwards to every vertex that has an arrow to the end and assign it a critical time 3) From each of those vertices, move backwards and assign those vertices critical times. Notice that the critical time for the earlier vertex will be that task s time plus the critical time for the later vertex. Example: T 1 (5) T 2 (4)  In this case, if T 2 has already been determined to have a critical time of 10, then T 1 will have a critical time of 5+10 = 15 T 1 (5)  T 2 (4)  If you have already assigned a critical time to a vertex, replace it only if the new time is larger. Example: In the digraph below, T 1 should be labeled with a critical time of 16, since it is the longer of 5+10 and T 1 (5) T 2 (4)  T 2 (3)  4) Repeat until all vertices are labeled with their critical times One you have completed the backflow algorithm, you can easily create the critical path priority list by using the critical times you just found. Critical Path Algorithm (version 2) 1. Apply the backflow algorithm to the digraph 2. Create the priority list by listing the tasks in order from longest critical time to shortest critical time This version of the Critical Path Algorithm will usually be the easier to implement.
10 88 Example: Applying this to our digraph from earlier, we add an end vertex and give it a critical time of 0. T 1 (6) T 5 (5) T 9 (2) T 2 (3) () T 6 (10) T 8 (3) T 10 () End  (4) T (4) We then move back to, T 9, and T 10, labeling them with their critical times T 1 (6) T 5 (5) T 9 (2)  T 2 (3) T 6 (10) T 8 (3) T 10 ()  () End  (4)  T (4) From each vertex marked with a critical time, we go back. T, for example, will get labeled with a critical time 11 the task time of 4 plus the critical time for T 10. For T5, there are two paths to the end. We use the longer, labeling T 5 with critical time 5+ = 12. (This value will end up getting replaced later with the even longer path through T 8 ). T 1 (6) T 5 (5)  T 9 (2)  T 2 (3) T 6 (10) T 8 (3)  T 10 ()  () End  (4)  T (4) 
11 Scheduling 89 Continue the process until all vertices are labeled. T 1 (6)  T 5 (5)  T 9 (2)  T 2 (3)  T 6 (10)  T 8 (3)  T 10 ()  ()  End  (4)  T (4)  We can now quickly create the critical path priority list by listing the tasks in decreasing order of critical time: Priority list: T 2, T 6, T 1,, T 5, T, T 8, T 10,, T 9 Applying this priority list using the list processing algorithm, we get the schedule: T 2 T 6 T 10 T 5 T T In this particular case, we were able to achieve the minimum possible completion time with this schedule, suggesting that this schedule is optimal. This is certainly not always the case. Example: This example is designed to show that the critical path algorithm doesn t always work wonderfully. T9 T 1 (1) T 6 (2) T 2 (1) T (2) T 9 (6) (1) T 8 (2) (6) T 5 (6)
12 90 To create a critical path priority list, we could first apply the backflow algorithm: T 1 (1)  T 6 (2)  T 2 (1)  T (2)  T 9 (6)  (1)  T 8 (2)  (6)  T 5 (6)  This yields the critical-path priority list: T 1, T 6, T, T 8,, T 5, T 9, T 2,. Applying the list processing algorithm to this priority list leads to the schedule: T 1 1 T 6 3 T 5 T 9 13 T 8 T2 P 2 P 3 T 5 6 By observation, we can see that a much better schedule exists: 9 P 2 T 1 1 T 6 3 T 2 T 9 T T 5 P 3 T 8 In most cases the critical path algorithm will lead to a very good schedule. There are cases, like this, where it will not. Unfortunately, there is no known algorithm to always produce the optimal schedule.
13 Scheduling 91 Exercises Skills 1. Create a digraph for the following set of tasks: Task Time required Tasks that must be completed first A 3 B 4 C D 6 A, B E 5 B F 5 D, E G 4 E 2. Create a digraph for the following set of tasks: Task Time required Tasks that must be completed first A 3 B 4 C D 6 A E 5 A F 5 B G 4 D, E Use this digraph for the next 6 problems. T 1 (8) T 5 (9) T 9 (2) T 2 (6) T 6 (3) T 8 (5) T 10 () () (4) T (2) 3. Using the priority list,, T 9, T 10, T 8, T 5, T 6, T 1, T, T 2 schedule the project with two processors. 4. Using the priority list T 2,, T 6, T 8, T 10, T 1,, T 5, T, T 9 schedule the project with two processors. 5. Using the priority list,, T 9, T 10, T 8, T 5, T 6, T 1, T, T 2 schedule the project with three processors.
14 92 6. Using the priority list T 2,, T 6, T 8, T 10, T 1,, T 5, T, T 9 schedule the project with three processors.. Use the decreasing time algorithm to create a priority list for the digraph above, and schedule with two processors. 8. Use the decreasing time algorithm to create a priority list for the digraph above, and schedule with three processors. 9. Use the decreasing time algorithm to create a priority list for the problem from #1, and schedule with two processors. 10. Use the decreasing time algorithm to create a priority list for the problem from #2, and schedule with two processors. 11. With the digraph from above question 3: a. Apply the backflow algorithm to find the critical time for each task b. Find the critical path for the project and the minimum completion time c. Use the critical path algorithm to create a priority list and schedule on two processors. 12. With the digraph from above question 3, use the critical path algorithm to schedule on three processors. 13. Use the critical path algorithm to schedule the problem from #1 on two processors. 14. Use the critical path algorithm to schedule the problem from #2 on two processors. Concepts 15. If an additional order requirement is added to a digraph, can the optimal finishing time ever become longer? Can the optimal finishing time ever become shorter? 16. Will an optimal schedule always have no idle time? 1. Consider the digraph below. a. How many priority lists could be created for these tasks? b. How many unique schedules are created by those priority lists? T 1 (6) T 2 (5) () (3) T 5 (4)
15 Scheduling Create a digraph and priority list that would lead to the schedule below T 2 5 T 5 T Is it possible to create a digraph with three tasks for which every possible priority list creates a different schedule? If so, create it. 20. Is it possible to create a digraph with four tasks for which every possible priority list creates a different schedule? If so, create it. Exploration 21. Independent tasks are ones that have no order requirements; they can be completed in any order. a. Consider three tasks, with completion times 2, 2, and 4 hours respectively. Construct two different schedules on two processors with different completion times to show that the priority list still matters with independent tasks. b. Choose a set of independent tasks with different completion times, and implement the decreasing time list algorithm and the critical path algorithm. What do you observe? c. Will using the decreasing time list or critical path algorithms with independent tasks always produce an optimal schedule? d. Will using the decreasing time list or critical path algorithms with independent tasks always produce an optimal schedule? 22. In a group, choose ten tasks necessary to throw a birthday party for a friend or child (for example, cleaning the house or buying a cake). Determine order requirements for the tasks, create a digraph, and schedule the tasks for two people.
Discrete Math A, Chapter 8: Scheduling 2 Chapter 8: The Mathematics of Scheduling House Building See pages 280 & 281 8.1 Basic Elements of Scheduling: PROCESSOR: Whomever or whatever is working on a task
Mat 114 Part Five: Problem Set I Key 1. Consider the following order-requirement digraph, where all indicated weights are in hours. a) What is the critical path time? For this we need to backtrack. The
Chapter 8 Data Structures Computer has to process lots and lots of data. To systematically process those data efficiently, those data are organized as a whole, appropriate for the application, called a
Arithmetic Circuits Addition, Subtraction, & Multiplication The adder is another classic design example which we are obliged look at. Simple decimal arithmetic is something which we rarely give a second
Set Theory: Shading Venn Diagrams Venn diagrams are representations of sets that use pictures. We will work with Venn diagrams involving two sets (two-circle diagrams) and three sets (three-circle diagrams).
0.1 Friend Trends This puzzle is based on the following anecdote concerning a Hungarian sociologist and his observations of circles of friends among children. In the 1950s, a Hungarian sociologist S. Szalai
1. PROGRAMMABLE LOGIC CONTROLLERS Topics: PLC History Ladder Logic and Relays PLC Programming PLC Operation An Example Objectives: Know general PLC issues To be able to write simple ladder logic programs
Key Terms in This Session Session 7 Fractions and Decimals Previously Introduced prime number rational numbers New in This Session period repeating decimal terminating decimal Introduction In this session,
The Swap Puzzle Age group: Abilities assumed: Time: 7 adult Nothing Size of group: 8 to 30 50-60 minutes, Focus What is an algorithm? Testing Efficiency of algorithms Computational Thinking: algorithmic
Finite State Machine Module: Lab Procedures Goal: The goal of this experiment is to reinforce state machine concepts by having students design and implement a state machine using simple chips and a protoboard.
Critical Chain Critical Chain Project Management (CCPM) was first publicised in 1997 in Eliyahu M. Goldratt's book, Critical Chain. It is a method of planning and managing projects that puts the main emphasis
6.825 Techniques in Artificial Intelligence Decision Making under Uncertainty How to make one decision in the face of uncertainty Lecture 19 1 In the next two lectures, we ll look at the question of how
1. An engineering project is modelled by the activity network shown in the figure above. The activities are represented by the arcs. The number in brackets on each arc gives the time, in days, to complete
Tools & Automation Making the Right Choice The features you need in a GUI test automation tool by Elisabeth Hendrickson QUICK LOOK Factors to consider in choosing a GUI testing tool Treating GUI test automation
Critical Chain Critical Chain Project Management (CCPM) was first publicised in 1997 in Eliyahu M. Goldratt's book, Critical Chain. It is a method of planning and managing projects that puts the main emphasis
Sensors and Programmable Controls Assignment 15 should be considered unrelated to assignments 16, 17, and 18, since its primary focus is on detection sensors while the other three assignments address topics
Section Arithmetic in Other Bases Arithmetic in Other Bases The operations of addition, subtraction, multiplication and division are defined for counting numbers independent of the system of numeration
5 2. PROGRAMMABLE LOGIC CONTROLLERS Topics: PLC History Ladder Logic and Relays PLC Programming PLC Operation An Eample Objectives: Know general PLC issues To be able to write simple ladder logic programs
CRITICAL PATH ANALYSIS AND GANTT CHARTS 1. An engineering project is modelled by the activity network shown in the figure above. The activities are represented by the arcs. The number in brackets on each
Induction Margaret M. Fleck 10 October 011 These notes cover mathematical induction and recursive definition 1 Introduction to induction At the start of the term, we saw the following formula for computing
HOW TO START WORKING WITH P2WARE PROJECT MANAGER 7? This document contains introduction to P2ware Project Manager 7 views (P2ware Project Manager 7 walkthrough) and shows how to create high quality plans
LESSON 7: IMPORTING AND VECTORIZING A BITMAP IMAGE In this lesson we ll learn how to import a bitmap logo, transform it into a vector and perform some editing on the vector to clean it up. The concepts
Binary There are 10 types of people in the world those that understand binary and those that don t. What is binary? You and I write numbers like this: twelve is 12, sixty eight is 68, and one hundred is
100 40 5 4 = 149 0 635 735 775 780 784 1000 8 5 2 1 5 3 how many left? what s the difference? 5 60 80 4 = 149 take away 0 635 640 700 780 784 1000 Maths in School minus Subtraction in School by Kate Robinson
Friction Let s talk about another ever present force on this Earth, friction. Friction is the resistance that one object encounters when it is rubbing against another object. Friction is what makes things
Chapter 3 Solving for Voltage and Current Nodal Analysis If you know Ohm s Law, you can solve for all the voltages and currents in simple resistor circuits, like the one shown below. In this chapter, we
Project and Production Management Prof. Arun Kanda Department of Mechanical Engineering Indian Institute of Technology, Delhi Lecture - 15 Limited Resource Allocation Today we are going to be talking about
GRAPH PAPER PROGRAMMING 1 VOCABULARY Algorithm - A list of steps that you can follow to finish a task Programming Language - a formal constructed language designed to communicate instructions to a machine,
2 1.1. Solving Inequalities www.ck12.org 2.1 1.1 Solving Inequalities Learning Objectives Write and graph inequalities in one variable on a number line. Solve inequalities using addition and subtraction.
Unit 5 Length Five daily lessons Year 4 Autumn term Unit Objectives Year 4 Suggest suitable units and measuring equipment to Page 92 estimate or measure length. Use read and write standard metric units
Project and Production Management Prof. Arun Kanda Department of Mechanical Engineering Indian Institute of Technology, Delhi Lecture - 9 Basic Scheduling with A-O-A Networks Today we are going to be talking
1 Electrical Switches Jeffrey La Favre Think for a moment about all the devices in your house that are powered by electricity. Are they always on? Nearly all electrical devices have some type of switch
3. BINARY NUMBERS AND ARITHMETIC 3.1. Binary Numbers The only place in a computer where you will find the number 9 is on the keyboard. Inside the computer you will only find 0 s and 1 s. All computer memory
Rubber Band Race Car Physical Science Unit Using LEGO Mindstorms NXT Copyright 2009 by Technically Learning 1 of 17 Overview: Through a series of hands-on activities, students will design a rubber band
Top tips for supporting your child with Literacy As a parent/carer you are the person who know your child best, so you are ideally placed to help them with reading, writing, speaking and listening. Everywhere
CAD/ CAM Prof. P. V. Madhusudhan Rao Department of Mechanical Engineering Indian Institute of Technology, Delhi Lecture No. # 03 What is CAD/ CAM Now this lecture is in a way we can say an introduction
Worksheets Meetings (1): Getting down to business Reading: Text 1 Let s stop wasting time and get on with it! TeachingEnglish Lesson plans Did you know you can download a clock from the internet to calculate
Critical Path Analysis & PERT Charts (taken from www.business.com. - Planning and scheduling more complex projects Critical Path Analysis and PERT are powerful tools that help you to schedule and manage
COLLEGE ALGEBRA Paul Dawkins Table of Contents Preface... iii Outline... iv Preliminaries... Introduction... Integer Exponents... Rational Exponents... 9 Real Exponents...5 Radicals...6 Polynomials...5
Overview Summary Background Information The Age of Inventions By Ann Rossi The Age of Inventions refers to the time from 1870 to 1910 when new machines and new ways of producing goods and services altered
Teacher s Guide Banks, Credit & the Economy in a fla Time Needed: Two class periods Materials Needed: Student worksheets Projector (optional) Calculators (optional) Copy Instructions: Advance Organizer
CRITICAL CHAIN VERSUS CRITICAL PATH IN PROJECT MANAGEMENT Mark Gershon Temple University Kyle Boelter Liquent, Inc. Project management is a fast growing area of management. A new approach, critical chain,
Control Engineering Prof. Madan Gopal Department of Electrical Engineering Indian Institute of Technology, Delhi Lecture - 11 Models of Industrial Control Devices and Systems (Contd.) Last time we were
Teaching Functional Skills to Individuals with Autism and other Developmental Disabilities Dr. Barry D. Morgenstern Institute of Professional Practice 1 2 Why Focus on Functional Skills? Functional skills
BP2SAN From Business Processes to Stochastic Automata Networks Kelly Rosa Braghetto Department of Computer Science University of São Paulo firstname.lastname@example.org March, 2011 Contents 1 Introduction 1 2 Instructions
Short-Run Production and Costs The purpose of this section is to discuss the underlying work of firms in the short-run the production of goods and services. Why is understanding production important to
Introduction Welcome to our Python sessions. University of Hull Department of Computer Science Wrestling with Python Week 01 Playing with Python Vsn. 1.0 Rob Miles 2013 Please follow the instructions carefully.
CS 161 LAB 5 This lab will have two parts. In the first part, we will create a class to automate the drawing of the robot from the second lab. For the second part, we will begin a ClunkyCalculator class
1 The Complete Guide to Query Letters for Travel Writers shows you everything you need to know to craft compelling query letters. Well-written query letters convince magazine editors that you have an exciting
Digital Circuits and Systems Prof. S. Srinivasan Department of Electrical Engineering Indian Institute of Technology, Madras Lecture 3 Combinational Logic Basics We defined digital signal as a signal which
Learn the secrets to becoming financially independent. Five Reasons Why Most Don t Become Wealthy Brian Tracy WWW.BRIANTRACY.COM FIVE REASONS WHY MOST DON'T BECOME WEALTHY BRIAN TRACY 1 FIVE REASONS WHY
Introduction to Computer Graphics Dr. Prem Kalra Department of Computer Science and Engineering Indian Institute of Technology, Delhi Lecture - 5 Polygon Clipping and Polygon Scan Conversion We have been
NYS COMMON CORE MATHEMATICS CURRICULUM Lesson 18 2 5 Lesson 18 Objective: Apply and explain alternate methods for subtracting from multiples of Suggested Lesson Structure Fluency Practice Application Problem
Scheduling is a DRAG Better project management does not mean making schedules longer but rather making projects shorter. By William R. Duncan and Stephen A. Devaux Most organizations have realized that
Linear Programming Notes VII Sensitivity Analysis 1 Introduction When you use a mathematical model to describe reality you must make approximations. The world is more complicated than the kinds of optimization
How to build a sustainable and profitable freelance track record on Upwork The purpose of this report is to give you as much information as possible to succeed on the popular online job work site known
Energy, Work, and Power This worksheet and all related files are licensed under the Creative Commons Attribution License, version 1.0. To view a copy of this license, visit http://creativecommons.org/licenses/by/1.0/,
Intersections of Polar Curves The purpose of this supplement is to find a method for determining where graphs of polar equations intersect each other. Let s start with a fairly straightforward example.
CHAPTER 9 Quiz Name: 1. What is the purpose of a plot, graph, or picture of data? ANSWER: TO GIVE YOU A QUICK VISUAL SUMMARY OF THE DATA THAT IS MORE INFORMATIVE THAN LOOKING AT A COLLECTION OF NUMBERS.
Lesson 1 The Basic Building Blocks of Geometry 1 2 Overview Geometry is the study of shapes, patterns, relationships, and measurements. There are many different kinds of shapes in geometry including trapezoids,
The sweet computer: machines that learn Created by Peter McOwan and Paul Curzon of Queen Mary, University of London with support from EPSRC and Google The sweet computer: machines that learn Age group:
Writing a Scholarship Essay Making the essay work for you! Reasons why students don t write scholarship essays (and lose out on scholarships!) They hate to write. They don t think they will win anyway.
Algorithm & Flowchart & Pseudo code Staff Incharge: S.Sasirekha Computer Programming and Languages Computers work on a set of instructions called computer program, which clearly specify the ways to carry
Conversation Pieces: Using Artwork and Art-Making to Enhance Communication for People with Intellectual Disabilities By: Amanda Gee We think of art as something to look at, something to hang on your wall
Week 12 The Law of Cosines and Using Vectors Overview This week we look at a law that handles some of the situations that the Law of Sines could not. The Law of Cosines can be used as well, in part, to
8.5 PETRI NETS Consider the computer program shown in Figure 8.5.1. Normally, the instructions would be processed sequentially first, A = 1, then B = 2, and so on. However, notice that there is no logical
Performance Assessment Task Coffee Grade 10 This task challenges a student to represent a context by constructing two equations from a table. A student must be able to solve two equations with two unknowns
1 Writing reports Introduction Engineers spend significant amounts of time writing reports, whether they are design reports, construction reports, reports for clients, and so on. It is essential that all
Perimeter and Area Page 1 of 57 PERIMETER AND AREA Objectives: After completing this section, you should be able to do the following: Calculate the area of given geometric figures. Calculate the perimeter
Pace University DigitalCommons@Pace Math High School 1-1-2010 Grades 9-10 Algebra: Graphic Quadratics on the Coordinate Plane Michelle Darcy Pace University Follow this and additional works at: http://digitalcommons.pace.edu/high_math
Multiplication and Division with Rational Numbers Kitty Hawk, North Carolina, is famous for being the place where the first airplane flight took place. The brothers who flew these first flights grew up
CMSC 451: Graph Properties, DFS, BFS, etc. Slides By: Carl Kingsford Department of Computer Science University of Maryland, College Park Based on Chapter 3 of Algorithm Design by Kleinberg & Tardos. Graphs
Chapter 2. Linear Equations We ll start our study of linear algebra with linear equations. Lots of parts of mathematics arose first out of trying to understand the solutions of different types of equations.
Distribution Displays, Conventional and Potential Stephen Few, Perceptual Edge Visual Business Intelligence Newsletter July/August/September 1 We can graphically display how a set of quantitative values
2 SYSTEM DESCRIPTION TECHNIQUES 2.1 INTRODUCTION Graphical representation of any process is always better and more meaningful than its representation in words. Moreover, it is very difficult to arrange
Just Enough Structured Analysis Chapter 4: Tools of Modern Systems Analysis Nature has... some sort of arithmetical-geometrical coordinate system, because nature has all kinds of models. What we experience
How to Have a Pee-Free Home In this article based on Karen Pryor s work, you re going to learn how to quickly potty train your dog. For a lot of dog owners, potty training can be very frustrating but it
Worksheet 2.4 Introduction to Inequalities Section 1 Inequalities The sign < stands for less than. It was introduced so that we could write in shorthand things like 3 is less than 5. This becomes 3 < 5.
A Unique Restoration Facility Taking the art of craftsmanship to a new level On a visit to Christchurch, New Zealand, late last year David Newton-Ross visited Auto Restorations and talked to General Manager
Career Planning What Career? I don t know what I want to do! Contents Introduction Page 1 Know Yourself Page 2 Skills, Abilities & Strengths Page 3 Generating Careers Ideas Page 4 Careers Information Resources
READING 7.1 HOW TO CREATE CHARTS AND GRAPHS IN EXCEL CREATING A BAR CHART IN EXCEL 1. Create a simple table in the spread sheet with two or more columns. 2. The information you want at the bottom of the
Dynamic Programming Dynamic programming is an optimization approach that transforms a complex problem into a sequence of simpler problems; its essential characteristic is the multistage nature of the optimization
Some practice with velocity and position graphs Position to Velocity The main idea here is that the velocity is the rate of change of the position. A large velocity means the position changes fast, a big
Unit 6 Geometry: Constructing Triangles and Scale Drawings Introduction In this unit, students will construct triangles from three measures of sides and/or angles, and will decide whether given conditions
Simple games to play at home to develop recall of number facts The games in this booklet are designed to help children develop their quick recall of number facts. The ability to remember number facts such