throbber
PAAAPC* — A T o r n n i n i io
`
`t or
`
`Resource Allocation and Multi-Project Scheduling
`
`Jack Moshman, Jacob Johnson, and Madalyn Larsen
`C-E-I-R, INC.
`1200 Jefferson Davis Highway
`Arlington 2, Virginia
`
`INTRODUCTION
`Some Recent Developments
`
`Work planning, a never-ending management
`responsibility, has been aided tremendously in
`recent years by the development of a new tech(cid:173)
`nique commonly referred to as networking or
`arrow-diagramming. Today, the network
`is
`widely accepted by business, scientific, and
`governmental organizations as a worthy re(cid:173)
`placement for the Gantt chart and other less
`flexible and less meaningful methods of plan(cid:173)
`ning work.1"3-!) 1-
`PERT,4-10 Critical Path Method (CPM),78
`and many other similar systems5-6 use esti(cid:173)
`mates of the time required to complete each
`activity as the basis for determining the work
`schedule. The scheduling system sequences all
`the activities in the network and calculates the
`earliest and latest completion dates for each
`activity. These dates are then woven together
`to form a schedule for the total project.
`In
`some instances the scheduling function is auto(cid:173)
`mated, that is, an electronic computer is used
`to perform the calculations; in others the sched(cid:173)
`ule is determined manually and monitored with
`the aid of a computer.*
`RAMPS, a system for Resource Allocation
`and Multi-Project Scheduling, was recently de(cid:173)
`veloped by C-E-I-R, INC. and now is an opera(cid:173)
`tional IBM 7090 digital computer program.
`RAMPS retains many of the basic concepts of
`
`its predecessors; it uses the network for work
`planning and relies on a careful analysis of the
`needs of each individual activity, but it also has
`unique features not found in other systems.
`Two of these are readily apparent in its name—
`Resource Allocation and Multi-Project Sched(cid:173)
`uling.
`
`Activity Resource Requirements
`Major differences among many networking
`systems lie in the information provided for each
`activity and ultimately used in the work sched(cid:173)
`uling function. In most systems, this informa(cid:173)
`tion includes estimates of the time needed to
`complete each activity and the total cost of the
`activity or a related group of activities. Where
`a schedule is produced, it attempts to reflect the
`most desirable time-cost relationships.
`WThile RAMPS includes time and cost con(cid:173)
`siderations in its work schedules, it also incor(cid:173)
`porates the resource requirements of each ac(cid:173)
`tivity and the availability of these resources at
`the time the activity is to be scheduled—both
`extremely vital factors
`in any meaningful
`scheduling system.
`
`Multi-Project Schedules
`A unique feature of RAMPS is its ability to
`schedule simultaneously more than one work
`
`* A comprehensive bibliography is to be found
`Voress, et al.11
`
`in
`
`17
`
`CiM Ex. 1039 Page 1
`
`

`
`18
`
`PROCEEDINGS—SPRING JOINT COMPUTER CONFERENCE, 1963
`
`project. The projects to be scheduled may differ
`in size, type of work, importance and starting
`times. They are related only in their reliance
`on a common pool of resources.
`RAMPS recognizes and responds to estab(cid:173)
`lished priorities for the projects and competi(cid:173)
`tion among activities within all projects for
`limited quantities of available resources. The
`system also strives to meet established target
`completion dates by applying larger quantities
`of available resources
`to critical activities
`within all projects.
`
`Competition for Available Resources
`In addition to denning the work and resources
`requireu uy tue various activities, nie RAMPS
`user provides the system with a knowledge of
`the quantity of each resource type that is avail(cid:173)
`able to all projects. Provision is also made for
`using overtime or additional units of a given
`resource at a premium cost.
`There may be many activities in all projects
`competing for the same resources during the
`same work period. RAMPS weighs the needs
`of each activity individually and in relation to
`the other activities before deciding how the
`resources are to be allocated.
`
`Management Controls
`Under the many constraints imposed by com(cid:173)
`pletion deadlines, specified resource limits and
`project priorities, RAMPS must weigh many
`factors before deciding how best to schedule
`each project. Frequently, there are many pos(cid:173)
`sible routes that RAMPS could follow, each
`with a different effect on the schedules pro(cid:173)
`duced. There is, for example, the route that
`
`minimizes project completion time, but perhaps
`at an increased cost because of the use of over(cid:173)
`time. Another route may assure a minimum
`of idle resources throughout the lives of the
`projects, and another might maximize the total
`number of activities being worked on during
`each scheduled work period. In instances such
`as these, RAMPS relies on control information
`provided by the RAMPS user to determine
`which course of action is most desirable. This
`ability on the part of management to influence
`and guide the scheduling function is one of the
`major features of the RAMPS system.
`
`ESTABLISHING THE NETWORKS
`General Description
`The foundation of the RAMPS system is the
`network—a graphic display of a plan. The net(cid:173)
`work portrays an orderly step-by-step series of
`actions which must be performed successfully
`in order to reach a specific, definable objective.
`Simply stated, a network
`is a work flow
`diagram.
`
`Concurrency in the Network
`In almost every real situation, there are many
`activities that can be carried on concurrently;
`others must be accomplished in a purely serial
`fashion. By planning to allow several related
`efforts to proceed simultaneously and converge
`at the proper event, the manager is able to
`reach his stated objective in a much shorter
`period of time. Since the network is a work
`plan, those activities which logically can be
`worked on in parallel should be shown in the
`network as concurrent activities. The concept
`of serial and concurrent activities is shown in
`Figure 1.
`
`/ - >. REPAIR
`
`O
`
`-(5
`
`REMOVE OLD BASE *® ERECT BASE FORMS
`
`SERIAL WORK FLOW
`<g
`^<D
`©ORDER REPAIR PARTS /-^DISMANTLE EQUIPMENTWTRANSFER TO SHOP
`CONCURRENT WORK FLOW
`^DISMANTLE EQUIPMENT , - V R E M O VE OLD BASE
`
`8&
`&>
`^ XW
`
`^^ERRECT BASE FORMS x-vPOUR CONCRETE
`-<3j
`»(6)
`
`/^ASSEMBLE EQUIPMENT
`K7) —
`
`•®
`
`\TRANSFER EQUIPMENT ^ REPAIR
`TO SHOP
`
`.TRANSFER EQUIPMENT
`*§>
`TO SITE
`
`Figure 1. Concept of Concurrent Work Flow and Serial Work Flow.
`
`CiM Ex. 1039 Page 2
`
`

`
`RAMPS—A TECHNIQUE FOR RESOURCE ALLOCATION AND MULTI-PROJECT SCHEDULING
`
`19
`
`It is obvious that a considerable amount of
`effort must be expended to determine which
`activities may be concurrent and which must
`proceed alone. But it is this effort at the plan(cid:173)
`ning level that saves time and money later when
`the actual work is done.
`
`ESTIMATING TIME AND RESOURCE
`REQUIREMENTS
`General Description
`Although the importance of an accurate and
`well-planned network cannot be over-empha(cid:173)
`sized, there is perhaps no other function in the
`total application of RAMPS that is more im(cid:173)
`portant than obtaining accurate estimates of
`the time and resources required by each activity.
`Because RAMPS bases many of its scheduling
`and resource allocation decisions on this infor(cid:173)
`mation, the validity of the schedules produced
`hinges on the thoroughness with which time and
`resource requirements are estimated. It is im(cid:173)
`perative that these estimates be made by those
`individuals who are most familiar with the
`work to be accomplished by each activity.
`
`Determining Amount-of-Work
`With the preliminary networks drawn and
`available as work guides, the next step in ap(cid:173)
`plying RAMPS can begin: determining the
`amount-of-work required by each activity in the
`networks.
`Amount-of-work is derived from multiplying
`the number of unit time periods required to
`complete an activity under normal working con(cid:173)
`ditions by the number of units of resource re(cid:173)
`quired per time period. The unit time period
`may be an hour, day, month, or any unit of
`time that defines the smallest period within
`which work will be scheduled and resources
`allocated.
`Although it is not necessary to record amount-
`« i - n u ia in i/nc HCIWUIJV, li is nequtJiiwy uene-
`ficial because it provides a ready visual display
`of the time and resource estimates for each
`activity as illustrated in Figure 2. The amount-
`of-work figures are enclosed in boxes below the
`activity lines. The units of resource required
`per time period are recorded beside the amount-
`of-work boxes. The estimated number of time
`periods needed to complete each activity can be
`quickly determined by dividing the units of
`resource figure into the amount-of-work.
`
`PROJECT A
`MODERNIZE PLANT
`
`AMOUNT-OF-WORK-
`
`2 ^ ? / T ,UP
`
`\ NUMBER OF UNITS OF
`., f RESOURCE REQUIRED
`
`PROJECT B
`RENOVATE OFFICE
`
`Figure 2. Amount-of-Work and Alternate Resource
`Utilization Rates in the Networks.
`
`If we assume that under normal conditions
`activity 3-6 of Project A will require three days
`to be completed and will consume the work of
`two painters during each day, the amount of
`work for the activity would be six units.
`the
`The amount-of-work concept provides
`system with unique flexibility in work sched(cid:173)
`uling and resource allocation. By including two
`additional resource utilization rates to the nor(cid:173)
`mal rate already established, this flexibility can
`be further increased.
`Establishing Alternate Utilization Rates
`Under normal conditions, activity 3-6 would
`require three time periods to be completed and
`would use two painters per time period. To
`provide for the possibility of doing the job
`faster or slower than normal, one can provide
`two other estimates. The first is a resource
`utilization rate under accelerated work condi(cid:173)
`tions, speed-up; the second is a resource utiliza(cid:173)
`tion rate under relaxed or extended work con(cid:173)
`ditions, slow-down. The work efficiency at other
`than the normal rate is introduced to account
`for the absence of precise linear relationships.
`
`CiM Ex. 1039 Page 3
`
`

`
`20
`
`PROCEEDINGS—SPRING JOINT COMPUTER CONFERENCE, 1963
`
`Once the amount-of-work has been deter(cid:173)
`mined for an activity, it should be the guiding
`factor in determining desirable speed-up and
`slow-down utilization rates. It is necessary to
`"tailor" utilization rates and work efficiencies
`for a given resource to the individual activity
`to which the resource is to be applied. Each
`activity in the network and the resources it
`needs are considered as autonomous units for
`purposes of estimating amount-of-work,
`re(cid:173)
`source utilization rates, and work efficiency at
`the three utilization rates.
`Scheduling and Allocating Flexibility
`The three rates of resource utilization pro(cid:173)
`vide RAMPS with great flexibility in manipu(cid:173)
`lating
`time anu resources requirements 01
`each activity
`to meet resource availability
`levels. The same flexibility extends from the
`activity level to the project level where the
`speed-up, normal, and slow-down rates allow
`the system to adjust work accomplishment rates
`to meet project completion deadlines.
`As shown in Figure 3, Project A could be
`completed in as few as 9 time periods at the
`speed-up rate, or as many as 32 time periods
`at the slow-down rate. At the normal rate, the
`project could be completed in 16 time periods.
`Note that the use of each rate requires a differ(cid:173)
`ent peak work force. The total work force re(cid:173)
`quired reaches peaks of 20 men during period
`5 at speed-up, 10 men during period 8 at nor(cid:173)
`mal, and 6 men during period 15 at slow-down
`rates.
`If all the needed resources were available,
`it is likely that RAMPS would schedule a proj(cid:173)
`ect at the speed-up rate. However, in real
`situations, all the needed resources are rarely
`available at all times, especially when there
`are several projects involved.
`Let us assume, therefore, that only 7 men
`are available for work on Project A. Under
`this restriction, we can examine the steps taken
`by RAMPS in developing a schedule for that
`project considered in isolation. We will also
`see how the three utilization rates are inter(cid:173)
`mixed in the schedule produced.
`
`the Critical Path
`Determining
`One of the first uses RAMPS makes of the
`amount-of-work values is in determining the
`critical path within each project. The critical
`path is the longest path or sequence of activi-
`
`TIME PERIODS
`| , |2| 3 | 4 | » | 6 | 7 | . | ,|
`O © 0 © ©©
`tamtam*!
`© ©
`fgigl
`© ©
`
`SPEED-UP
`
`© ©
`EH
`
`TIME PERIODS
`
`| I | 2 | 9 ] -4 | 3 j 6 | 7 | • | 9 j )OJ II 112[ IS|!-«] IS 11« |
`
`© © ©

`© ©
`|2!2i2|2i2!2!2i4!4!4S4F^4|2^j
`
`l&
`
`{&
`
`flsflsfrfl
`© NORMAL

`
`© © EH
`
`3 3 1616 2 0 1 1 9 64
`
`2 2 2 8 88 8 1 0 1 0 6 6 6 4 42 2
`
`TIME PERIODS
`| I | 2 | 3 | 4 | 5 16 17 j 8 | S ||01II 1121 tf| 14 jt»jis|l71 ia|l9 |go|2l |22|z3|z4|z5|e«|27|2«|2»{3o| 31|w|






`I.!.!. !•!.!. 1.!.!.!.!.!. !.:.k:2!2!2!2!2!2!2|2!2!2!2!2!2|.!i!.!.|


`J2j2J2j2j2J2j2|2_[i]


`J2|2[2j2j2]2j2J2jSt|

`
`sinw-nnwN
`

`
`I I I I I 1 5 5 5 5 5 5 5 5 6 3 3 3 3 3 3 2 2 2 2 2 2 21 I I I
`
`Figure 3. Possible Project Completion and Workforce
`Requirements at each Rate of Homogeneous Resource
`Utilization (Project A, Figure 2).
`
`ties, in terms of total time required, from the
`starting to the ending activity.
`All activities on the critical path are critical
`activities. As shown in Figure 2, there are
`three possible work paths in Project A, the
`longest of which requires 16 time periods at
`normal rates and travels through events 1, 2,
`4, 5. 6, and 7. This path is the critical path;
`any delay in the completion of a critical activity
`will cause an equal delay in completion of the
`project. If any or all of the activities not on
`the critical path are completed ahead of sched(cid:173)
`ule, there could be no time gained in project
`completion. On the other hand, time gained
`along the critical path means time gained in
`project completion. Thus, the critical path cal(cid:173)
`culation provides the following information:
`1. The duration of the project if all activities
`on the critical path are scheduled at the
`normal resource utilization rate, and
`2. The identity of those activities which are
`critical and therefore must receive pref(cid:173)
`erence when they are competing for a
`limited resource with activities that are
`not on the critical path.
`
`CiM Ex. 1039 Page 4
`
`

`
`RAMPS—A TECHNIQUE FOR RESOURCE ALLOCATION AND MULTI-PROJECT SCHEDULING
`
`21
`
`Therefore, the next step in developing a
`schedule is determining when there will be com(cid:173)
`petition between critical and non-critical activi(cid:173)
`ties for the 7 men that are available. This is
`done by establishing the earliest possible start
`times for the non-critical activities so that the
`total resource requirements for all activities in-
`each time period can be determined. Figure 3
`shows the earliest periods at which work on
`each activity in the project can begin. Note
`that beginning in period 4, the resources re(cid:173)
`quired at normal rates exceed the quantity
`available.
`It can be seen that by using the slow-down
`utilization rates during periods 4 through 9, a
`schedule could be produced that stays within
`the limits of the available resources. However,
`this can be done only at the expense of extend(cid:173)
`ing the project completion time.
`Since RAMPS strives to complete each proj(cid:173)
`ect as quickly as possible, the use of slow-down
`rates on critical activities is essentially a last
`resort. Therefore, another alternative must be
`considered: delaying the start of the non-criti(cid:173)
`cal activities so that the resources they would
`otherwise consume can be diverted to the criti(cid:173)
`cal activities. This is called "floating" an
`activity.
`Determining Activity Float
`Activity float is the difference in time peri(cid:173)
`ods between the earliest time an activity can be
`completed and the time it must be completed
`without extending the project completion time.
`An activity float analysis for Project A is
`shown in Figure 4. Note that the critical activi(cid:173)
`ties have zero float—they cannot be delayed
`without delaying project completion.
`
`TIME PERIODS
`
`FLOAT
`
`The float for activity 2-6 is five time periods.
`The earliest time it can be completed is period
`9; it must be completed during period 14 to pre(cid:173)
`clude a delay in the start of activity 6-7. This
`kind of float is called free float because the
`activity can be delayed without interfering in
`any way with the float of other activities.
`Conversely, activity 2-3 has two periods of
`float. Since it must be completed
`interfering
`before activity 3-6 can begin, 2-3 can be delayed
`one or two time periods, but only with an equal
`reduction in the float of activity 3-6. For this
`reason, the float of activity 2-3 is said to inter(cid:173)
`fere with the float of an activity that is to be
`started later.
`
`Producing a Schedule
`With the combined power of the float analysis
`and the three rates of resource utilization,
`RAMPS is now equipped to produce an efficient
`schedule that meets the work requirements of
`each activity, minimizes project completion
`time, and stays within the limits of available
`resources. An idea of how this power is used
`can be gained from Figure 5 which shows the
`schedule produced for Project A.
`By delaying the start of activity 2-6 and
`using the speed-up and slow-down rates where
`necessary, RAMPS has scheduled the project
`for completion in 15 time periods using a total
`work force of only 7 men. Note, too, that idle
`resources have been minimized where possible.
`Although this small example serves to illus(cid:173)
`trate how RAMPS schedules work, a better idea
`of the scheduling power of RAMPS can be
`gained when one considers that this example
`takes into account only one project and only
`
`| I ( 2| 3 | « {s [e | ?'|a | 9 |lo| H | l 2 | l 3 | l « | l 9 | f ef
`TOTAL FREE
`0


`® © ©
`2]i|
`2 22 2!2!2!2 44 4 4 44 4


`i T~r~!
`, 1 , 1 , 1 , 1 , 1 , r ~i
`3,3,3;3;3,3| I j j j j
`<D
`3 ; 3 ; 3 ; 3 ; 3 ; 3 | g|
`
`5
`
`5
`
`oo
`
`INTERFERING.
`
`MOOCNMZE PLANT
`
`o
`
`JMULABLE WORK FORCE. 7 man
`
`Tim* Periods
`
`| 2 | 3 | 4 | 5 | 6 | 7 | e J 9 | K > | l l | l 2 | l 3 | l 4 | s|
`© @©
`©©_©
`?' J , ' 4 «U

`

`

`


`
`® ©
`ESUIi
`
`RESOURCES AVWLABLE
`RESOURCES ASSIGNED
`IDLE RESOURCES
`
`7 7 7 7 7 7 7 7 7 7 7 7 7 77
`3 3 7 7 7 7 7 7 7 7 7 7 4 44
`4 4 0 0 0 0 0 0 0 0 0 0 3 33
`
`Figure 4. Activity Float Analysis.
`
`Figure 5. Derived Work Schedule for Project A Using
`Float and Combined Resource Utilization Rates.
`
`CiM Ex. 1039 Page 5
`
`

`
`22
`
`PROCEEDINGS—SPRING JOINT COMPUTER CONFERENCE, 1963
`
`one resource type: men. Looking again at the
`network for Project A, one sees that although
`men are required in each activity, they have
`different skills. There are carpenters, painters,
`electricians, and other skills involved. There(cid:173)
`fore, in scheduling this project, RAMPS would
`not only have to consider total work force, but
`also the availability levels of each of the skills
`in each time period.
`
`RESOURCE TEAMING
`
`In our discussions to this point, we have in(cid:173)
`cluded only the contingency of an activity re(cid:173)
`quiring one resource type. There is a need, of
`course, for a means of applying several differ(cid:173)
`ent resources to the same activity while still
`maintaining the amount-of-work concept.
`In
`the RAMPS system, this need is fulfilled by
`resource teaming.
`When an activity requires several different
`resource types, they are combined to form a
`resource team for the activity. Each resource
`team is composed of a lead resource and one or
`more trailing resources.
`The lead resource can be considered the re(cid:173)
`source in the team upon which the greatest
`overall demand is levied. It then is used to
`determine the amount-of-work for the activity
`and the slow-down and speed-up completion
`rates. The trailing resources are those "sub(cid:173)
`ordinate" resources that are needed to support
`the work to be done by the lead resource. Al(cid:173)
`though trailing resources may actually perform
`work on the activity, they do not enter into the
`amount-of-work calculation. Amount-of-work
`for resource teams is derived solely from the
`lead resource date but all resources must be
`available before the activity can be scheduled.
`
`DETERMINING RESOURCES AVAILABLE
`
`Having covered the first two steps in the
`application of RAMPS:
`1. Project planning and network prepara(cid:173)
`tion, and
`2. Amount-of-work estimates and resource
`requirements for each activity in each
`project,
`one must form the resource pools from which
`RAMPS will allocate the needed resources to
`
`is
`
`type
`
`the various activities and projects. The task
`is to determine:
`1. How much of each resource
`available,
`2. When and how long this quantity is avail(cid:173)
`able, and
`3. The resource cost.
`For each resource, these questions must be
`answered from two points of view. First, we
`must determine
`the answers under normal
`working conditions or at normal cost. Then we
`must establish the various means by which ad(cid:173)
`ditional resource units could be provided if
`needed. The possibilities include overtime, sub(cid:173)
`contracting, and hiring or acquiring additional
`units.
`These additional units are called premium
`resources and, as the name implies, their unit
`costs are usually higher than those of the nor(cid:173)
`mal resources.
`Obviously, normal availability data is re(cid:173)
`quired by the RAMPS system; if work is to be
`scheduled, resources must be provided. Pre(cid:173)
`mium availability data is not required, but it
`is important in providing RAMPS with further
`flexibility in accomplishing the required work.
`Certainly
`the application of additional
`re(cid:173)
`sources, derived by any means, will contribute
`to the completion of the required work in a
`shorter period of time, but at an additional cost.
`This data is particularly important when man(cid:173)
`agement is willing to incur greater expense to
`complete a project in a minimum amount of
`time. The quantity of any resource may be con(cid:173)
`stant over the total scheduling period or may
`vary in level as a function of time.
`Additional resource information needed in(cid:173)
`cludes the unit cost per time period, the availa(cid:173)
`bility of additional premium resources, and the
`cost of premium resources.
`Although RAMPS strives to avoid allocating
`premium resources, it may use them under
`either of the following two conditions:
`1. To meet a project completion deadline
`when no other means exists for accom(cid:173)
`plishing the required amount of work
`within the time specified.
`2. To alleviate an otherwise untenable sched(cid:173)
`uling bottleneck caused by an acute short(cid:173)
`age of one or more resources during one
`or more time periods.
`
`CiM Ex. 1039 Page 6
`
`

`
`RAMPS—A TECHNIQUE FOR RESOURCE ALLOCATION AND MULTI-PROJECT SCHEDULING
`
`23
`
`SETTING MANAGEMENT CONTROLS
`AND OBJECTIVES
`General Description
`The next, and final, step before operating on
`the data accumulated so far is the setting of the
`objectives to be reached in the schedules that
`are produced. The use of the various controls
`determines project priority and provides an(cid:173)
`swers to such questions as: "In scheduling all
`projects, should cost be minimized? Is time im(cid:173)
`portant? Should idle resources be minimized?"
`Establishing Project Priorities
`In perhaps every instance of multi-project
`scheduling, management can pinpoint
`those
`projects which, when completed, will be more
`beneficial to the company as a whole. Naturally,
`if these benefits are to be realized as early as
`possible, these projects must be given priority
`when all projects are competing simultaneously
`for a limited quantity of available resources.
`Project priority can also be viewed from a
`slightly different angle: "How much is it going
`to cost if this project is not completed on time?
`How much can be saved or gained if it is com(cid:173)
`pleted ahead of time?" The answers to these
`questions are crucial in the many areas of busi(cid:173)
`ness where work projects are negotiated under
`bonus-penalty agreements.
`The relative importance of the various proj(cid:173)
`ects is injected into RAMPS decision-making
`by providing the system with three facts: proj(cid:173)
`ect start dates, desired project
`completion
`dates, and project delay penalties.
`Establishing project starting dates is the
`first step in exercising control over the sched(cid:173)
`ules produced by RAMPS. This is done merely
`by specifying the earliest time period at which
`work may begin on each of the projects to be
`scheduled.
`Tire desired completion date is expressed in
`the same manner as the starting dates—the
`time periods during which the projects are to
`be completed. In many instances, it is difficult
`to provide a knowledgeable estimate of how
`much time, from start to finish, a project should
`require, particularly when the work is unprec(cid:173)
`edented. In others, experience will allow rea(cid:173)
`sonably accurate completion dates to be set.
`By providing RAMPS with the costs incurred
`in delaying each project, we can identify those
`projects with the higher priorities and thus
`
`provide the basis for deciding which projects
`are to be completed on the deadlines indicated
`if all targets cannot be met.
`
`Control Factors
`While the start date, completion date, and
`delay penalties provide a means for expressing
`priority among projects, there is also a need
`for expressing other criteria that are to be
`observed in the schedules that are produced for
`all projects. For example, in addition to recog(cid:173)
`nizing the relative importance of projects, man(cid:173)
`agement may also recognize a need to minimize
`project costs, minimize idle resources, or maxi(cid:173)
`mize the total number of activities being worked
`on at all times. These and other needs can be
`conveyed to RAMPS through the use of the
`management control factors.
`It should be emphasized that RAMPS at(cid:173)
`tempts to complete each project as soon as
`possible by making the most efficient and ap(cid:173)
`propriate use of time and resources. More spe(cid:173)
`cifically, RAMPS continually strives to:
`1. Start and complete each activity at the
`earliest possible time.
`2. Achieve a smooth rate of work accom(cid:173)
`plishment and resource utilization by
`"looking ahead" for possible bottlenecks.
`3. Minimize idle resources.
`4. Work simultaneously on as many activi(cid:173)
`ties as possible.
`5. Give priority to critical activities.
`6. Avoid interrupting work on an activity
`once it has been started.
`In forming a schedule of work during a
`given time period, RAMPS is almost always
`confronted by conflicts among these objectives;
`rarely can they all be achieved at the same time.
`When there is conflict, the program must deter(cid:173)
`mine which of these objectives are to be satis(cid:173)
`fied at the necessary expense of excluding
`others. For example, consider the following
`situation: there are four activities that could
`be started in the current time period and there
`are adequate resources at the normal utilization
`rates to start all of them. However, one of the
`activities is on the critical path and in order to
`meet the desired project completion time, it
`must be scheduled at the speed-up rate. This
`will mean delaying one of the other projects so
`that the resources it would otherwise consume
`can be diverted to the critical activity. In addi-
`
`CiM Ex. 1039 Page 7
`
`

`
`24
`
`PROCEEDINGS—SPRING JOINT COMPUTER CONFERENCE, 1963
`
`tion, another activity must be completed during
`the current time period to avert a probable
`work bottleneck in the subsequent time period.
`To avoid the bottleneck, a second activity must
`be delayed so that the activity preceding the
`possible bottleneck can be accelerated.
`Of the four activities that could be started,
`only two can begin if a work bottleneck is to be
`averted and a critical activity is to be given
`priority. The decision to be made is whether
`the first and fourth objectives are more impor(cid:173)
`tant than the second and fifth objectives.
`Certainly these considerations and decisions
`are common to any scheduling system. Indeed
`they are made every day by one means or
`another. In most instances, however, they come
`from an individual who is thoroughly familiar
`with the project being planned and is therefore
`able to judge the relative importance of each
`of the considerations.
`The control factors that are a part of RAMPS
`offer a means for expressing the relative im(cid:173)
`portance of the many items that bear on sched(cid:173)
`uling decisions. Through their use, those who
`are most familiar with the work to be done and
`the environment in which it will be done, can
`provide RAMPS with a means for determining
`the best course of action when there is a con(cid:173)
`flict in the overall scheduling objectives.
`Thus, the discretionary use of management
`controls in the situations we have just discussed
`exercises a direct influence and control over the
`schedule produced.
`
`Weighting the Control Factors
`
`Influence of RAMPS' scheduling decisions is
`exercised by preparing a table of
`relative
`weights for the following six factors:
`1. Free Float
`4. Work Continuity
`2. Total Float
`5. Number of Jobs
`3. Look-Ahead
`Scheduled
`6. Idle Resources
`As shown in Figure 6, each of these factors
`can be used to exercise a unique influence on
`the scheduling functions and thus satisfy one
`of the management objectives mentioned earlier
`in this section.
`The degree to which the schedule is affected
`by any one factor depends upon its weight rela(cid:173)
`tive to the weights assigned to the other factors.
`
`CONTROL
`FACTOR
`
`Total Float
`Free Float
`
`Look-
`Ahead
`
`Work
`Continuity
`
`EFFECT ON SCHEDULE
`
`Gives priority to those activities
`which cannot be delayed without
`delaying project completion.
`
`Gives priority to those activities
`upon whose completion many
`activities are waiting.
`
`MANAGEMENT
`OBJECTIVE
`SATISFIED
`
`• Minimizes Project
`Completion Time
`• Gives Priority to
`Critical Activities
`
`• Avoids Work
`Bottlenecks
`
`Gives priority to those activities
`which were started earlier and
`are incomplete.
`
`• Avoids Activity
`Work Interruption
`
`Number of
`Jobs
`
`Gives priority to starting as
`many new activities as possible.
`
`• Maximizes the
`Number of Job
`Being Worked On
`
`Idle
`Resources
`
`Gives priority to assigning all
`available resources.
`
`• Minimizes Idle
`Resources
`
`Figure 6. Control Factors.
`
`For example, if the paramount consideration in
`accomplishing the work on a project is keeping
`idle resources at a minimum, the idle resource
`factor might be assigned an over-whelmingly
`high weight in relation to the weights assigned
`to the other factors. This would indicate to the
`system that highest emphasis is to be placed
`on minimizing idle resources in making sched(cid:173)
`uling decisions.
`
`Using the Control Factors
`RAMPS first examines the three utilization
`rates prescribed for each of the competing ac(cid:173)
`tivities and lists all the possible assignment
`combinations. The weighted control factors are
`then consulted in deciding which combination
`is the most desirable. In evaluating the possible
`assignments that can be made, RAMPS must
`also consider the indicated project completion
`dates, project delay penalties, and activity in(cid:173)
`terrupt penalties.
`Occasionally, these items override one or
`more control factors. This might occur, for
`example, when a project has a high delay pen(cid:173)
`alty so that it becomes imperative from a cost
`standpoint to give priority to critical activities
`even though the free and total float control fac(cid:173)
`tors carry a relatively small weight. In another
`instance, an activity with an extremely low
`interrupt penalty may be interrupted even
`though the interrupt control factor is shown to
`be most important. However, the management
`control factors are used in scheduling every
`time period and will therefore dominate sched-
`
`CiM Ex. 1039 Page 8
`
`

`
`RAMPS—A TECHNIQUE FOR RESOURCE ALLOCATION AND MULTI-PROJECT SCHEDULING
`
`25
`
`uling decisions and directly control the schedule
`produced.
`Four of the control factors, free float, total
`float, work continuity, and look-ahead, are used
`to evaluate individual activities that are com(cid:173)

This document is available on Docket Alarm but you must sign up to view it.


Or .

Accessing this document will incur an additional charge of $.

After purchase, you can access this document again without charge.

Accept $ Charge
throbber

Still Working On It

This document is taking longer than usual to download. This can happen if we need to contact the court directly to obtain the document and their servers are running slowly.

Give it another minute or two to complete, and then try the refresh button.

throbber

A few More Minutes ... Still Working

It can take up to 5 minutes for us to download a document if the court servers are running slowly.

Thank you for your continued patience.

This document could not be displayed.

We could not find this document within its docket. Please go back to the docket page and check the link. If that does not work, go back to the docket and refresh it to pull the newest information.

Your account does not support viewing this document.

You need a Paid Account to view this document. Click here to change your account type.

Your account does not support viewing this document.

Set your membership status to view this document.

With a Docket Alarm membership, you'll get a whole lot more, including:

  • Up-to-date information for this case.
  • Email alerts whenever there is an update.
  • Full text search for other cases.
  • Get email alerts whenever a new case matches your search.

Become a Member

One Moment Please

The filing “” is large (MB) and is being downloaded.

Please refresh this page in a few minutes to see if the filing has been downloaded. The filing will also be emailed to you when the download completes.

Your document is on its way!

If you do not receive the document in five minutes, contact support at support@docketalarm.com.

Sealed Document

We are unable to display this document, it may be under a court ordered seal.

If you have proper credentials to access the file, you may proceed directly to the court's system using your government issued username and password.


Access Government Site

We are redirecting you
to a mobile optimized page.





Document Unreadable or Corrupt

Refresh this Document
Go to the Docket

We are unable to display this document.

Refresh this Document
Go to the Docket