Command Line Documentation
usage: hot [-h] {infer,generate,evaluate} ...
Sub-commands:
infer
Infer routing topology from additive path data.
hot infer [-h] [--order ORDER] [--alphas ALPHAS [ALPHAS ...]]
[--powers POWERS [POWERS ...]]
[--thresholds THRESHOLDS [THRESHOLDS ...]] [--n-groups N_GROUPS]
[--resample-size RESAMPLE_SIZE] [--max-size MAX_SIZE]
[--l1-weight L1_WEIGHT] [--l1-exponent L1_EXPONENT]
[--nnz-threshold NNZ_THRESHOLD] [--solver_args SOLVER_ARGS]
[--seed SEED]
data_filename output_directory
Positional Arguments
- data_filename
CSV file containing the path data sample.
- output_directory
Directory where output files from the inference are saved.
Named Arguments
- --order
Maximum cumulant order to evaluate.
Default: 3
- --alphas
Significance threhsolds for nonzero common cumulant tests at orders 2, 3, 4, …, <order>. E.g., “–alphas 1e-40 1e-30” accepts nonzero 2nd-order ccs to a significance of 1e-40 and 3rd-order ccs to a significance of 1e-30.
- --powers
Statistical power estimates for the nonzero common cumulant tests at orders 3, 4, …, <order>. E.g., “–powers 0.95 0.9” estimates the test power to be 0.95 for 3rd-order ccs and 0.9 for 4th-order ccs. If a single float is provided, this power is used for all orders.
- --thresholds
Robustness thresholds for tightening the bounding topology at orders 3, 4, …, <order>. Similar to –powers. If a single float is provided, this threshold is used for all orders.
- --n-groups
Number of resamples to generate by bootstrapping.
- --resample-size
Size of each resample to generate by bootstrapping. If 0, the resample sizes are the same size as the original sample.
Default: 0
- --max-size
Largest acceptable size of a non-maximal path set.
- --l1-weight
Weight for the lasso regularizer.
Default: 0.1
- --l1-exponent
Exponent for the lasso regularizer.
Default: 0.0
- --nnz-threshold
Threshold to decide if estimated exact cumulants are nonzero.
Default: 0.001
- --solver_args
JSON object of arguments for the CVXPY solver. See CVXPY documentation at https://www.cvxpy.org/tutorial/advanced/index.html#setting-solver-options
Default: “{“verbose”: false, “solver”: “OSQP”, “eps_abs”: 1e-10, “eps_rel”: 1e-10}”
- --seed
Random seed.
Default: 1234
generate
Generate synthetic path delay data.
hot generate [-h] [--monitors MONITORS] [--samples SAMPLES]
[--delay-mean DELAY_MEAN] [--delay-std DELAY_STD]
[--delay-scale DELAY_SCALE] [--seed SEED]
edgelist_filename data_filename links_filename
Positional Arguments
- edgelist_filename
Edge list file for the underlying network.
- data_filename
Path for the output file of path delay samples.
- links_filename
Path for the output file with the ground-truth links (as path sets).
Named Arguments
- --monitors
Number of monitor nodes.
Default: 5
- --samples
Number of path delay samples.
Default: 100000
- --delay-mean
Average of mean delays for links.
Default: 10.0
- --delay-std
Std. dev. of mean delays for links.
Default: 2.0
- --delay-scale
Scale parameter for link delay gamma distributions.
Default: 4.0
- --seed
Random seed.
Default: 1234
evaluate
Evaluate an estimated routing topology against ground truth.
hot evaluate [-h] estimate_filename true_filename
Positional Arguments
- estimate_filename
JSON file containing the predicted-links (as path sets).
- true_filename
JSON file containing the ground-truth links (as path sets).