ONTS-data

January 29, 2023 · View on GitHub

This data set comprises examples of the Offline Nanosatellite Task Scheduling (ONTS) problem, which was generated based on the FloripaSat-I CubeSat project. The instances provide information time set, tasks . The resource variable provides the power available for each time unit and is calculated using the FloripaSat-I mission orbital parameters and realistic power harvesting calculations. The instances in this data set are intended to be scalable in difficulty and may be used to compare the performance of various ONTS solution techniques. The data is delivered in the form of a Python list, which may be readily imported and utilized in other Python scripts.

The data is freely available to other researchers, who may use it to assess their own methodologies and compare their findings to those described in the journal. The information is supplied "as is" and may have restrictions or assumptions. By providing a common starting point for future investigations, we urge researchers to use the data and report any concerns or feedback to improve the field's research.

Please cite the following paper when using this data set:

BibTex

@misc{ONTS-data,
title = {Title},
author = {Authors},
url = {https://github.com/c-a-rigo/ONTS-data}
}

To use this data set, you will need to have python installed on your computer.

Example files

Each example (T)_(jobs).py in the single satellite folder contains the following keys:

Variable (Code)Variable (Paper)Definition
JJJnumber of jobs
TTTtime horizon
resourcertr_tvector containing the available resource for each time instant
min_cpu_timetjmint_j^{\min}vector containing the minimum duration of each job
max_cpu_timetjmaxt_j^{\max}vector containing the maximum duration of each job
min_period_jobpjminp_j^{\min}vector containing the minimum period for each job
max_period_jobpjmaxp_j^{\max}vector containing the maximum period for each job
min_startupyjminy_j^{\min}vector containing the minimum number of startups for each job
max_startupyjmaxy_j^{\max}vector containing the maximum number of startups for each job
win_minwjminw_j^{\min}minimum time window for each job
win_maxwjmaxw_j^{\max}maximum time window for each job
priorityuju_jvector containing the priority of each job
consumptionqjq_jvector containing the power usage of each job

In the costellation folder the examples follow the (T)_(jobs)_(satellite).py naming convention and the files have the same keys for each constellation satellite plus constellation related flags.

Battery parameters file

The battery parameters contains the following definitions:

Variable (Code)Variable (Paper)Definition
qQQnominal battery capacity (in Ah)
soc0SoC1SoC_1initial battery SoC
lower_boundρ\rhominimum accepted battery SoC
bat_usageγ\gammamaximum charge/discharge battery current (in Ampéres)
efeebattery charge/discharge efficiency
v_batVbV_bbattery voltage

Please make sure to read the paper and understand the data format and usage before using this data in your research.