DSS Pressure Factor

Philosophy

The schedule pressure is a measure of unsatisfied demand. The pressure factor was created to apply feedback to equalize pressure across right ascension and frequency band (see DSPN5). The pressure factor is defined as

P = 1 + ln(n/d)

where

n = d + r

and d is the number of hours already done and r is the number of remaining hours. The factor n may be thought of as the maximum possible number of hours a band or right ascensions' sessions would complete within a semester given no competition, perfect weather, and/or the earth in perfect alignment. This is a very simple concept but in practice the implementation is far more complex because of the dynamic nature of time accounting. Whenever interpreting what should or should not be included in the pressure factor the following golden rule should be used: if the session time potentially could be scheduled during this trimester and it is not filler time (grade > 2.8) then it should be used in the pressure factor calculation.

Implementation

Here is how the pressure is implemented in the code.

The value d is easy, simply add up all the time billed for every period completed for the current semester across ALL sessions.

The value n is more difficult because the "approved" hours -- depending on the definition -- changes over the semester. During the semester, sessions go in and/or out of being completed, authorized, and enabled. So which ones to add up for the total approved hours for a given RA or band?

Our solution is to derive n indirectly by first computing r, which will guarantee the relationship n = d + r. For all authorized and not completed sessions, the value r is the allotted time minus the sum of all completed time billed, i.e., residue. Now pressure = 1 + ln[ (d+r)/d ]. The result is that the computing of pressures become somewhat dynamic without ignoring successful observation time.

Notes:

  1. The pressure factor is reset at the trimester boundary. Since sessions used for computing d are limited to the current trimester we reset d to zero at the start of each trimester. All sessions that are carried over from previous trimesters plus the sessions that are added to new trimester are included in r.
  2. Only sessions with grades > 2.8 (A or B) are considered when calculating the pressure factor since lower grades are not expected to be scheduled (i.e., they are filler time).
  3. Sessions used for computing r are limited to authorized and not completed.
  4. As sessions become completed, their hours are still used in the computation, but now via the factor d instead of being distributed between d and r.
  5. Unauthorizing a session will reduce the allotted time, but the hours done continue to factor into pressure.
  6. r includes time from a session that is larger than a quarter hour but is less then the minimum time.
  7. There are very subtle differences between the pressure factor (1 - ln[(d+r)/d]) and the fractional observed time (f = 1 - O/A), where O is the accumulated total observing time per bin (e.g, frequency band) and A is the total allocated observing time per bin. Since we require the pressure factor before scoring these values are taken from the trace. So the first values of d and r are set before we schedule for the first time in the trimester (e.g., d[0] = 0.0 hr). Moreover, the periods scheduled on the last iteration won't ever show up in the trace, therefore will not be accounted for in the pressure factor. Whereas, the fractional observed time are a reconstruction of what got observed for each day. Therefore, care must be taken when comparing pressure with the fractional observed time.

Outstanding Issues:

  1. For the simulations we expect that during a trimester the value of n will be constant. In the production system this is not true since new sessions can be authorized/unauthorized with time (that's right it's dynamic boys and girls). For simulations in the phase one upgrade to the code there have been jumps in the value of n during the trimester (e.g., see simulations IVA4 and IVA5 from dsb's sandbox).

Use Cases

Definitions

A - total allocated time [hrs]
O - total observed time [hrs]
f - fractional observed time = 1 - O/A
d - done time [hrs]
r - residue time [hrs]
n - total time = d + r [hrs]
pf - pressure factor = 1 + ln(n/d)

X-band Case

We have a total of 100 hours allocated over a year for X-band from 3 sessions. About 80% of the time is used.

  • Sessions
    • Tom: 40 hrs starting in 6A
    • Dick: 30 hrs starting in 6B
    • Harry: 30 hrs starting in 6C

  • Periods
    • Tom
      • 5 hrs at 2006 03 24 0 0 0
      • 12 hrs at 2006 04 10 0 0 0
      • 4 hrs at 2006 06 12 0 0 0
      • 1 hrs at 2006 11 11 0 0 0
    • Dick
      • 14 hrs at 2006 07 14 0 0 0
      • 15 hrs at 2006 11 11 0 0 0
    • Harry
      • 10 hrs at 2006 11 11 0 0 0
      • 7 hrs at 2006 12 10 0 0 0
      • 12 hrs at 2006 12 25 0 0 0

  • Results

Time A O fSorted ascending d r n pf
               
               
2006 12 26 0 0 0 100 80 0.20 45 20 65 1.37
2006 12 11 0 0 0 100 68 0.32 33 32 65 1.68
2006 11 12 0 0 0 100 61 0.39 26 39 65 1.92
2006 07 15 0 0 0 100 35 0.65 18 35 53 2.08
2006 10 01 0 0 0 100 35 0.65 0 65 65 5.17
2006 06 13 0 0 0 100 21 0.79 4 49 53 3.58
2006 04 11 0 0 0 100 17 0.83 17 23 40 1.86
2006 06 01 0 0 0 100 17 0.83 0 53 53 4.97
2006 03 25 0 0 0 100 5 0.95 5 35 40 3.08
2006 02 01 0 0 0 100 0 1.0 0 40 40 4.69

Ka-band Case

We have a total of 200 hours allocated over the year for Ka-band in three session. About 40% of the time is used.

  • Sessions
    • Tom: 80 hrs at Ka-band starting in 6A
    • Dick: 60 hrs at Ka-band starting in 6B
    • Harry: 60 hrs at Ka-band starting in 6C

  • Periods
    • Tom
      • 5 hrs at 2006 03 24 0 0 0
      • 12 hrs at 2006 04 10 0 0 0
      • 4 hrs at 2006 06 12 0 0 0
      • 1 hrs at 2006 11 11 0 0 0
    • Dick
      • 14 hrs at 2006 07 14 0 0 0
      • 15 hrs at 2006 11 11 0 0 0
    • Harry
      • 10 hrs at 2006 11 11 0 0 0
      • 7 hrs at 2006 12 10 0 0 0
      • 12 hrs at 2006 12 25 0 0 0

  • Results

Time A O f d r n pf
2006 02 01 0 0 0 200 0 1.0 0 80 80 5.38
2006 03 25 0 0 0 200 5 0.975 5 75 80 3.77
2006 04 11 0 0 0 200 17 0.915 17 63 80 2.55
               
2006 06 01 0 0 0 200 17 0.915 0 123 123 5.81
2006 06 13 0 0 0 200 21 0.895 4 119 123 4.43
2006 07 15 0 0 0 200 35 0.825 18 105 123 2.92
               
2006 10 01 0 0 0 200 35 0.825 0 165 165 6.10
2006 11 12 0 0 0 200 61 0.695 26 139 165 2.85
2006 12 11 0 0 0 200 68 0.660 33 132 165 2.61
2006 12 26 0 0 0 200 80 0.600 45 120 165 2.30

-- DanaBalser - 2010-09-08
Topic revision: r6 - 2010-09-10, DanaBalser
This site is powered by FoswikiCopyright © by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding NRAO Public Wiki? Send feedback