Baseline P1-C in Awesome-ISAC
📖 Part of Yuanhao Cui's ISAC paper-repro infrastructure
Title: Cramer-Rao Bound Optimization for Joint Radar-Communication Design
Authors: Fan Liu, Ya-Feng Liu, Ang Li, Christos Masouros, Yonina C. Eldar
Venue: IEEE Transactions on Signal Processing (TSP), Vol. 70, pp. 240–253, 2022
Awards: 🏆 2024 IEEE SPS Best Paper Award
| Figure | Description | Status |
|---|---|---|
| Fig. 2 | Root-CRB / MSE vs SINR threshold (K=1) | ✅ |
| Fig. 3 | Beampattern comparison (K=4, SINR=15dB) | ✅ |
- Fig. 2: Validates the closed-form solution for single-user CRB minimization. Shows that estimation errors remain stable when SINR requirements are below 30 dB, then rise sharply.
- Fig. 3: Demonstrates that the proposed CRB-Min design achieves the highest power at the target angle (0°) compared to benchmark beampattern approximation methods.
MIMO DFRC BS with
CRB for point target angle
where
Power sharing model: Given total power
Problem (P1) — CRB minimization with SINR constraints:
Solved via Semidefinite Relaxation (SDR) + rank-one extraction (Theorem 4 in paper).
# Install dependencies
pip install numpy cvxpy matplotlib scipy pytest pytest-cov
# Reproduce Fig. 2 (Root-CRB vs SINR)
python examples/reproduce_fig2.py
# Reproduce Fig. 3 (Beampattern comparison)
python examples/reproduce_fig3.py
# Run tests
pytest tests/ -v
.
├── src/
│ ├── model.py # CRB model, system params, steering vectors
│ ├── solver.py # SDR solver, closed-form, benchmark designs
│ └── metrics.py # Beampattern, RMSE, MSE, trend verification
├── tests/
│ ├── test_model.py
│ ├── test_solver.py
│ ├── test_metrics.py
│ └── test_reproducibility.py
├── examples/
│ ├── reproduce_fig2.py
│ └── reproduce_fig3.py
├── configs/
│ └── default.yaml
├── README.md
└── requirements.txt
| Parameter | Value | Description |
|---|---|---|
| 16 | Transmit antennas | |
| 20 | Receive antennas | |
| 4 | Communication users | |
| 30 | Frame length | |
| 30 dBm | Total transmit power | |
| 0 dBm | Noise variance | |
| 15 dB | Per-user SINR threshold |
pytest tests/ -v
# test_model.py ✅ 6 tests
# test_solver.py ✅ 9 tests
# test_metrics.py ✅ 6 tests
# test_reproducibility.py ✅ 6 tests
This baseline follows the Awesome-ISAC contributing guidelines.
To add this baseline to Awesome-ISAC, see the Reproducible Baselines section in the main README.
@article{liu2022crb,
author={Liu, Fan and Liu, Ya-Feng and Li, Ang and Masouros, Christos and Eldar, Yonina C.},
title={Cramer-Rao Bound Optimization for Joint Radar-Communication Design},
journal={IEEE Trans. Signal Processing},
volume={70},
pages={240--253},
year={2022},
doi={10.1109/TSP.2021.3135692}
}