Code for the research paper:
- Krzysztof Kurczab, Maksymilian Wojnar, Kamil Szczech and Katarzyna Kosek-Szott, "Improving Robustness of Indoor Positioning by Tuning IEEE 802.11 Fine Timing Measurement Parameters," in IEEE Access, vol. 13, pp. 215506-215518, 2025.
- Clone the repository:
git clone https://github.com/ml4wifi-devs/ftm-optimal.git - Install requirements:
pip install optuna~=4.1.0
The wifi-ftm-ns3 extension of the ns-3 network simulator needs to be installed on your machine. You can read more on ns-3 installation process in the official installation notes.
- Download and unzip wifi-ftm-ns3:
git clone https://github.com/tkn-tub/wifi-ftm-ns3.git mv wifi-ftm-ns3/ns-allinone-3.33-FTM-SigStr/ns-3.33 $NS3_DIR - Copy the scenario file to the ns-3 scratch directory:
cp $PROJECT_DIR/scenario.cc $NS3_DIR/scratch - Build ns-3:
./waf configure -d optimized --enable-examples --enable-tests --disable-werror --disable-python ./waf
Run the following command to start the optimization process:
python main.py --nWifi=<N_WIFI> --dataRate=<DATA_RATE> [ARGS]
The process takes a significant amount of time to complete. The results are stored in the SQLite database. To run the evaluation process in the background, execute the following command:
nohup python main.py --nWifi=<N_WIFI> --dataRate=<DATA_RATE> [ARGS] &
To install the required packages for the graphical analysis, run the following command:
pip install optuna-dashboard
To start the dashboard, run the following command:
optuna-dashboard sqlite:///<FILENAME>.db
@ARTICLE{kurczab2025improving,
author={Kurczab, Krzysztof and Wojnar, Maksymilian and Szczech, Kamil and Kosek-Szott, Katarzyna},
journal={IEEE Access},
title={{Improving Robustness of Indoor Positioning by Tuning IEEE 802.11 Fine Timing Measurement Parameters}},
year={2025},
volume={13},
number={},
pages={215506--215518},
doi={10.1109/ACCESS.2025.3645690}
}