Generating Realistic, Protocol-Compliant Maritime Radio Dialogues using Self-Instruct and Low-Rank Adaptation
Organizations: Fraunhofer Center for Maritime Logistics and Services (CML), Hamburg, Germany
Abstract
VHF radio miscommunication remains a major safety risk in maritime operations, with human factors accounting for over 58% of recorded incidents in Europe between 2014 and 2023. Despite decades of operational use, VHF radio communications are still prone to noise, interference, linguistic variability, and the absence of real-time transcription, making procedural errors both frequent and difficult to correct. Developing AI-assisted systems to support real-time communication and decision-making requires a considerable amount of high-quality maritime data, yet operational, regulatory, and privacy constraints render such datasets scarce. This study introduces a compliance aware Self-Instruct methodology for generating realistic maritime radio dialogues that conform to the IMO's SMCP. Our approach integrates a 26-filter verification pipeline directly into the iterative generation loop to enforce entity information accuracy, hallucination detection, SMCP-compliance, logical consistency, and linguistic diversity. We employ LORA for parameter-efficient fine-tuning, reducing computational overhead during training and enabling efficient deployment of the resulting models on resource-constrained maritime systems. To assess dataset quality, we introduce a novel evaluation framework combining automated and expert assessments: Format Accuracy, Information Accuracy, Uniqueness, and Logical Coherence. Experiments using publicly available vessel, coastal and AIS datasets demonstrate that the approach produces synthetically diverse, procedurally compliant, and operationally realistic dialogues. Although downstream applications such as automatic speech recognition and natural language processing are reserved for future work, the released code, datasets, and verification tools provide a reproducible foundation for artificial intelligence-assisted maritime safety and other safety-critical domains.
Figures & tables
| Filter | Coefficient |
| Parentheses | 1 |
| Bracket | 1 |
| Mayday | 1 |
| Incomplete | 2 |
| Vessel Name Not After Mayday | 1 |
| Duplicate Sentences | 2 |
| Filter | Coefficient |
| Wrong Category | 2 |
| Unknown | 1 |
| Vessel Name | 2 |
| Vessel MMSI | 2 |
| Vessel Call Sign | 2 |
| Vessel Type | 2 |
| Coherence Level | Description | Points |
| Excellent | Fully coherent, logically structured, all relevant info | 5 |
| Good | Mostly coherent, minor logical gaps | 4 |
| Average | Noticeable inconsistencies | 3 |
| Poor | Significant logical gaps | 2 |
| Very Poor | Incoherent and confusing, fails to convey a clear message | 1 |
| Temperature | 0.9 |
| top_p | 0.9 |
| top_k | 400 |
| max_new_tokens | 400 |
| r | 256 |
| Epochs | 10 |
| Learning rate | 2e-4 |
| Optimizer | AdamW |
| Scheduler | Linear Scheduler |
| Warm-up Steps | 30 |
| Batch size | 2 |
| Disaster Category | Format Accuracy | Information Accuracy | Unique- ness | Logical Coherence* | Valid Chatters |
| Armed Attack, Piracy | 0.623 | 0.751 | 0.418 | 0.10 | 0 |
| Collision | 0.581 | 0.742 | 0.528 | 0.11 | 0 |
| Disabled, Adrift | 0.635 | 0.765 | 0.423 | 0.11 | 0 |
| Fire, Explosion | 0.630 | 0.733 | 0.472 | 0.10 | 0 |
| Flooding | 0.609 | 0.759 | 0.479 | 0.10 | 0 |
| Grounding | 0.612 | 0.733 | 0.427 | 0.10 | 0 |
| Disaster Category | Number of Rejected Chatters | Percentage of Successful Attempts |
| Armed Attack, Piracy | 1243 | 28.68 |
| Collision | 1482 | 25.22 |
| Disabled, Adrift | 445 | 52.91 |
| Fire, Explosion | 1548 | 24.41 |
| Flooding | 857 | 36.84 |
| Grounding | 371 | 57.40 |
| Disaster Category | Format Accuracy | Information Accuracy | Unique- ness | Logical Coherence | Valid Chatters |
| Armed Attack, Piracy | 0.981 | 0.925 | 0.533 | 0.84 | 89 |
| Collision | 0.998 | 0.912 | 0.548 | 0.9 | 92 |
| Disabled, Adrift | 0.998 | 0.928 | 0.612 | 0.80 | 93 |
| Fire, Explosion | 0.978 | 0.962 | 0.443 | 0.78 | 86 |
| Flooding | 0.988 | 0.918 | 0.405 | 0.80 | 89 |
| Grounding | 0.986 | 0.971 | 0.421 | 0.70 | 83 |
| Disaster Category | Number of Unique Chatters |
| Armed Attack, Piracy | 89 |
| Collision | 94 |
| Disabled, Adrift | 94 |
| Fire, Explosion | 97 |
| Flooding | 97 |
| Grounding | 93 |
Appendix figures & tables2 assets
Supplementary material from the paper’s appendix.
Appendix
| SMCP Category | Instruction |
| Fire, explosion | Generate a maritime radio chatter. A vessel makes a distress call and reports a fire. |
| Flooding | Generate a maritime radio chatter. A vessel makes a distress call and reports flooding. |
| Collision | Generate a maritime radio chatter. A vessel makes a distress call and reports collision. |
| Grounding | Generate a maritime radio chatter. A vessel makes a distress call and reports grounding. |
| List, Danger of Capsizing | Generate a maritime radio chatter. A vessel makes a distress call and reports list-danger of capsizing. |
| Sinking | Generate a maritime radio chatter. A vessel makes a distress call and reports sinking. |
| Disaster Category | Keywords |
| Fire, explosion | fire, explosion |
| Flooding | flood, taking on water, taken on water, took on water |
| Collision | collide, collision |
| Grounding | grounding, grounded, aground |
| List, Danger of Capsizing | list, danger of capsiz |
| Sinking | sink |
Synthetic Data Generation for Language Models
Synthetic data generation for language models creates artificial text, tasks, and interaction traces to train or evaluate models.
See all 293 papers