  Although user cooperation cannot improve the capacity of Gaussian two-way
channels (GTWCs) with independent noises, it can improve communication
reliability. In this work, we aim to enhance and balance the communication
reliability in GTWCs by minimizing the sum of error probabilities via joint
design of encoders and decoders at the users. We first formulate general
encoding/decoding functions, where the user cooperation is captured by the
coupling of user encoding processes. The coupling effect renders the
encoder/decoder design non-trivial, requiring effective decoding to capture
this effect, as well as efficient power management at the encoders within power
constraints. To address these challenges, we propose two different two-way
coding strategies: linear coding and learning-based coding. For linear coding,
we propose optimal linear decoding and discuss new insights on encoding
regarding user cooperation to balance reliability. We then propose an efficient
algorithm for joint encoder/decoder design. For learning-based coding, we
introduce a novel recurrent neural network (RNN)-based coding architecture,
where we propose interactive RNNs and a power control layer for encoding, and
we incorporate bi-directional RNNs with an attention mechanism for decoding.
Through simulations, we show that our two-way coding methodologies outperform
conventional channel coding schemes (that do not utilize user cooperation)
significantly in sum-error performance. We also demonstrate that our linear
coding excels at high signal-to-noise ratios (SNRs), while our RNN-based coding
performs best at low SNRs. We further investigate our two-way coding strategies
in terms of power distribution, two-way coding benefit, different coding rates,
and block-length gain.
