Fair Division on the Hubble Space Telescope (repo: bkerr) Brandon Kerr and Jordana Kerr Project Description We mapped the intricacies of scheduling jobs for the Hubble Space Telescope to fair division algorithms, specifically to naive and modified versions of Last Diminisher. We implemented our Last Diminisher algorithms using preference files that consider time constraints on proposed jobs, as well as the Hubble telescope’s position in space in relation to the Earth and the Sun and the further limitations that imposes on scheduling. We compared our two algorithms based on total time allocated, number of cuts, percent of pending jobs scheduled, and the total weighted value of the jobs selected based on importance to the scientific community. 1 Introduction 1.1 Problem Overview For over two decades, the Hubble Space Telescope has been a pivotal tool for helping the scientific community better understand the cosmos. To this day, the telescope’s marked capabilities remain in constant high demand, to the point where its usage has to be scheduled to the last second. Dividing the Hubble’s time among those who request its use involves a careful, rigorous process that is subject to change based on what is considered most valuable to the scientific community of astronomers. Planning and scheduling usage for the Hubble Space Telescope involves carefully allocating and redistributing time slots based on ever-changing phenomena in the universe. Astronomers from around the world submit proposals to vie for time on the telescope, with particular constraints attached; astronomers have to consider the time of year, day, or even hour that their target is most likely to be easily viewable. A review committee then takes proposals directly in competition with each other timewise and decides how to allocate the Hubble’s usage based on what they consider priority contributions to science, as well as how well the proposals fit with the telescope’s capabilities. Demand for the Hubble Space Telescope is so high that using block scheduling is inefficient and wasteful. Schedules are measured down to a fraction of a second, including the time needed to reconfigure the telescope’s settings for what it needs to view. Any wasted time could severely limit the number of proposals that the scheduling committee can adhere to, and render the telescope’s costly quick reconfiguration performance useless. 1.2 Fair Division As the team of experts who commission the telescope’s time carefully take all of these complications into consideration, their concise methods inevitably leave astronomers whose proposals are constantly at high risk of being rejected, based on unavoidable time demands and constraints. We decided it would be interesting to reevaluate the Hubble scheduling process and see what results when time allocations are instead mapped to what might be considered a “fair” division among the entire community of researchers lobbying for time with the telescope. Instead of using a panel to determine the Hubble’s schedule, the astronomers with pending jobs could divvy up the time themselves using a traditional fair division algorithm. For this project, we describe the implementation of two Last Diminisher algorithms based on naive and then less naive assumptions. We further evaluate other possible algorithms in direct response to complaints among the Hubble community about the current scheduling process, and compare their results. 2 Relating Hubble Space Telescope Scheduling to Cake Cutting For this project, we have researched some of the considerations and complications that go into the scheduling process for the Hubble Space Telescope, and extracted some of the key facets to try and relate to common fair division terms. In this section, we will describe some of these elements, and explain how they did or did not map to our last diminisher algorithms. 2.1 Time Restrictions When allocating schedule times with highly valued proposals, there are a number of possible conditions that the author of the proposal has to declare that constrain the periods of time that are acceptable for the proposed project. If there are three orbits around Earth that the Hubble has available, and a proposed project requires three such orbits, that does not mean that the panel can simply schedule the proposal without further considerations. For our purposes, this means that, like flavors in a cake to be divided, there are certain time slots that have value to some astronomers while having no value to others. Time periods that are viewed as too short have no value to our astronomers, and time periods where the telescope is viewed as poorly placed in relation to the Earth and the Sun also have no value to astronomers. For example, most jobs can only happen at certain times of the year. In this project, we consider the fact that the Hubble telescope cannot view an object when facing within a 50 degree angle of the Sun. To do this, we break a year into quarters, and claim that for each job, there is one quarter where it is not possible for the job to be completed, and so that period of time is not valuable to astronomers heading the proposed job. Restrictions are further broken down into orbits, with limitations on the Hubble’s view of space based on its position in relation to Earth. For this project, we define an orbit as one full orbit that the Hubble makes around the Earth. There are a finite number of orbits that we have available to pair with proposed jobs. For each of these orbits, there are periods of time where the Earth is blocking the object of interest for the proposed job. To address this issue, we break each orbit into available half orbits, allowing astronomers to select the period of an orbit when their job can be completed. 2.2 Event Restrictions In real life, jobs do not seamlessly transition from one to the next. The Hubble telescope requires time to “lock” onto guiding stars that guide its view toward the object of interest, and then need further time to be precisely focused to allow in the amount of light needed to observe that object. For the scope of our project, based on the algorithms we chose, we have decided to not take these time lapses into account. Our main reason for this decision is because the “players” in our algorithm do not know each other’s preferences, and thus cannot try to guess who might end up taking jobs before or after them. As a result, they cannot know what settings the telescope will have prior to needing to be reconfigured for their job’s setting requirements, and thus cannot account for transition time within their minimum required time. Many job proposals are also based on conditions that cannot be determined too far in advance, based on unknown celestial events. For example, a proposal might center around the predicted but uncertain possibility that a supernova might occur at a certain time. As a result, Hubble’s schedule is subject to change until about five days prior to the proposed time of observation, when many such phenomena are more readily predictable and certain. While our finite list of time slots may span more than five days, we assume that such conditions have already been determined and that their criteria was met, so we are now creating the final schedule. 2.3 Other Complications Time allocation on the Hubble is carried out by the Space Telescope Science Institute. The director of the institute has final go or no-go authority to any proposal selection, but also has the unique perk of being able to assign 10% of Hubble’s total yearly time all by himself. While this large block of time is usually devoted to objects of interest that appear at random over the course of a year, it adds another level of complexity to the selection process. In our implementation, we assumed the director gives up his time for the greater good (and the ease of scheduling), just as we assumed there are no random objects of interest. 3 Implementation 3.1 Preference Files For our implementation, preference files are randomly generated based on a few key constants. Without random generation, likeness to the Hubble allocation problem wouldn’t be possible since it involves such a large number of proposals and available times. If instead we forced the user to choose preference files, they would be sitting there all day just checking boxes. The key constants in the preference/proposal generation process are: number of proposals to generate, length of the “year” in orbits, and a probability that represents the chance a generated proposal has of not having any time restrictions. When a proposal is generated, a random number determines whether or not orbit and year restrictions come into play based on the given probability value. Orbit restrictions represent those times when the Earth’s disc blocks the subject of observation for half of every orbit. In order to encourage a little diversity in the preference files, these half-orbit restrictions can be a restriction of the even half-orbits or the odd. Once these restrictions are determined, a preference list can be generated. Since time on the Hubble is of a unit value, we don’t use any fancy integrals or scaling. Each time block (half orbit) is assigned a binary value, zero if that time slot is not valued and one if it is. In addition to random restrictions, scientific value and minimum time to completion for each proposal are also randomly generated. Scientific value will help determine the pecking order later on in the process and min time sets the baseline for the amount of time needed for this particular proposal to value any time at all on the Hubble. If the min time is not met for a given proposal, the total value to the astronomer for use of the telescope is zero. 3.2 Process In order to simulate cake cutting scenarios discussed alongside Last Diminisher in class, as well as to simulate real Hubble conditions of little time and many people, we organize our generated proposals into free lists, working lists, and done lists. Once proposals are sorted, we naively choose the top N of them whose combined minimum time requirements are less than or equal to the total amount of time available. These top proposals form the working list, which will be the “players” in our Last Diminisher scenario. Future work could include using proposals from the free list based on some heuristic to fill in unused time. Once the working list is formed, it is passed into our algorithms to get back an allocation scheme for the time available. 3.3 Algorithms We implemented two algorithms: the original Last Diminisher and another, smarter version. In the original (or at least how we understand it), pieces of cake are passed down the list of players who can then choose to trim cake off of either end to ensure they receive a proportional slice. In the smarter version, we implemented a rule where players could trim anywhere on the cake and as many times as they wanted to form the “trimmed piece”. This way, large gaps of time some proposals don’t care about wouldn’t get wasted. We chose Last Diminisher for a few reasons. For one, we needed an algorithm that achieved proportionality for n>=2 people, where proportional here has been redefined to mean a proposal received min_time / total_time of the cake. Second, we wanted to implement something a little less trivial than moving knife, which would have also been proportional. 4.3 Analysis 4.3.1 Output Running our fair division algorithms produces detailed output. The constants used for the given program run are displayed at the top, followed by the list of proposals that were generated. Each proposal line displays it’s unique ID, scientific value, minimum time to completion, and a preference list. The position p in the preference list represents the pth half-orbit (or time p) while the value of the list at that position represents the binary value for that proposal at that time. Following the proposals is a detailed description of the Last Diminisher run, including the final allocation scheme by ID (proposal ID assigned to that time slot, 0 for none), the total number of cuts, the percentage of total Hubble time that ended up being allocated, the percentage of the working list that actually was used (which varies since our assignment to the working list is pretty naive), and the percentage of scientific value captured by the final allocation scheme. The stats for the smarter version of Last Diminisher are then shown below that. 4.3.2 Simulations For our simulations, we decided to use smaller constants than would represent a true Hubbleesque time allocation situation for a few reasons. Given that an accurate scenario would be over ten-thousand half orbits and several thousand proposals, we wanted to have numbers that were both more manageable and more visually inspectable. With a small proposal base and amount of total time, any mistakes made in implementation could be spotted easily. The constants used for the simulations were: 8 proposals to generate, 4 orbits in a “year”, and no chance of having non-restricted preferences. Since all generated proposals have a minimum time to completion of less than ¼ the length of a year, the 8 proposals generated had minimum times of either 1 or 2 half-orbits. This meant we could see the working lists being selected, but would not see many extraneous proposals that never made it to the working list. 4.3.3 Results We ran our simulation 40 times against both the naive Last Diminisher algorithm and the modified Last Diminisher algorithm. We then took the results of both algorithms and compared mean number of cuts (see Figure 2 in Appendix), and mean percentages of time allocated, jobs scheduled, and the cumulative assigned value to the Hubble telescope community (see Figure 3 in Appendix). For percentage of total available time allocated by our algorithms, the smarter last diminisher implementation performed better 65% of the time compared to the naive approach. That is, in 65% of the simulations the smarter version was able to allocated more time and more efficiently use the telescope’s resources. The modified algorithm also assigned a greater percentage of the pending job list for 70% of the simulation runs, and the assigned weighted value was greater for 72% of the simulation runs. The modified algorithm’s superior results comes at a significant cut cost. Our original naive algorithm had an average of 6 cuts less than the modified algorithm, where the average number of cuts for the naive algorithm was 9 versus the 15 average number of cuts for the modified algorithm. Ironically, even with more cuts the implementation for the smarter version is actually more efficient. This is because the naive version, given a piece of “cake” has to find the subpiece bounded on both sides that encompasses a proportional share. This ended up being O(n^2) time per player. The smarter implementation only needed O(n) time per player, since one pass through the allocation scheme was enough to cherry-pick open time slots until min time was reached. 5 Discussion There are a number of things that could be done as future work. One of these is obviously the naive way we assign proposals to the working list. Due to the random incompatibilities between proposals that may be in the working list, large blocks of unallocated time are occasionally seen (especially if a lot of the working list proposals all value the same time slots). Given this observation, we could have used some method that selected not only the top proposals, but those top proposals whose preferences balanced out. This most likely would have given us more consistent results and less wasted time, even if it would circumvent scientific value priorities at the higher level. Also, instead of changing working list selection, we could have simply added another step once our algorithms finished that worked down the free list to see if any proposals that were previously not slated to be players in the division could be allocated. Another interesting aspect for future exploration are the frequent gripes from the Hubble community. While there aren’t a whole lot to be found, it seems most of them revolve around the slush fund of time the director gets to allocate to any projects he wishes. As it stands, 10% of Hubble’s total time is given to the director, which is 520 total orbits. Traditionally, people argue for this time to be spent on unforeseen complications in the initial scheduling, such as objects of interest. To simulate this, we could assume that the director took these gripes to heart, donated his time strictly to unforeseen complications, and randomly generated issues post-scheduling (maybe even at runtime for a cool visualization). 6 References http://www.stsci.edu/hst http://www.columbia.edu/~cs2035/courses/ieor4405.S09/p2-3.ppt Appendix Figure 1: Mean Percent of Unallocated Time Figure 2: Mean Number of Cuts Figure 3: Comparison of Three Metrics
© Copyright 2026 Paperzz