Astronomical observation planning tool using the Traveling Telescope Problem (TTP) formulation.
ttpsolver
helps you plan observations for over 100 targets within a specified time frame. It simplifies the process by allowing you to input your observatory details, observing time constraints, and a target table. The tool plans observations to maximize successful exposures and optimizes the path between targets.
To install ttpsolver
, run:
Update this line with package installation
This will set up the environment with the exception of Gurobipy.
ttpsolver
relies on Gurobi for solving large matrix equations efficiently. Follow these steps to install and set up Gurobi:
- Create an an Account on Gurobi's registration site. Select that you are an "Academic", type in your home institution, and submit the form via "Access Now". You will receive an email to complete the registration.
- Download Gurobi for your OS from this download page.
- Request an Academic License from your user portal while connected to a university network. You want the 'Named-User Academic License' which has a one year lifetime.
- Retrieve the License by running the command from the popup window in a shell. It should look like:
grbgetkey 253e22f3...
- Install Gurobipy using either pip or conda after completing the previous steps.
pip install gurobipy
Or:
conda install -c gurobi gurobi
ttpsolver
employs a Mixed-Integer Linear Programming formulation to optimize scheduling in a time-dependent manner, similar to the Traveling Salesman Problem. It determines both the order of targets and the timing of observations to respect celestial object rise and set times. The algorithm is detailed in the Astronomical Journal here. Please cite this work when using ttpsolver for planning scientific observations.
You can find a simple tutorial for using the package in the /tutorial
directory.