# Hybrid Dual-Link Data Transmission Based on Internet of Vessels
## 3 Algorithm Design
### Spatial Crowdsourcing Task Allocation
#### 3.2.2 Bayesian Reputation-Based Crowdsourcing Task Allocation Algorithm  
A Bayesian-based reputation model aimed at evaluating the integrity level of workers is proposed. The model not only serves as an important metric for assessing worker quality but also plays a crucial role when workers participate in crowdsourcing tasks. During the crowdsourcing task allocation process, users with higher reputations should be given higher priority, while those with lower reputations should be given lower priority. And inspired by research in physical dynamics, which enhances robustness by adopting original methods for reputation allocation, this paper introduces an iterative reputation allocation process within the Rating-Based Preference Dynamics (RBPD) method. By utilizing an iterative reputation ranking based on the Beta probability distribution, we propose a Bayesian reputation-based spatial crowdsourcing allocation algorithm. In this paper, we use Bayesian methods to calculate the direct reputation values of eligible ship workers. First, the historical data of users are divided into \(m\) equal time periods, with each period representing a specific phase of user behavior. When calculating reputation values, different weights are assigned to each time period, with more recent periods receiving higher weights. In other words, the recent behavior of ship workers is given greater relative importance in the evaluation process. As shown in Figure 5, over time, the system automatically incorporates new data segments and gradually discards the oldest ones, ensuring that the evaluation results are updated in a timely manner. This approach ensures that the reputation values are continuously adapted to reflect the latest behaviors and performance of the workers. The algorithm defines \(m\) as the total number of time periods, where \(t_{1},t_{2},\ldots t_{m}\) represent each time period, with \(t_{1}\) being the most recent time period and \(t_{m}\) being the earliest time period. Different weights are assigned to each time period, and the direct weighted sum of credibility values is  
\[C=\sum_{t=1}^{m}w_{t}\cdot D_{t} \tag{1}\]  
The term \(w_{t}\) represents the weight corresponding to the time period \(t\), and \(D_{t}\) the credibility value for the time period \(t\). When a new data segment \(D_{new}\) is added, we have the following:  
* The weight is updated to \(w_{m}\gets w_{m-1},w_{m-1}\gets w_{m-2},\ldots,w_{2}\gets w_{1}, w_{1}\gets w_{new}\);
* The direct credibility value is updated to \[C=w_{new}\cdot D_{new}+\sum_{t=1}^{m-1}w_{t+1}\cdot D_{t}\] (2)  
It uses [PERSON] formula to calculate the credibility value for each time segment of the ship. In the Bayesian framework, the initial assessment of user credibility (i.e., prior probability) is combined with the observed behavioral data (i.e., likelihood) to form an updated estimate of user credibility (i.e., posterior probability). The key advantage of this  
Figure 5: Time segment update process of reputation model. method lies in its natural ability to integrate new information, allowing the credibility evaluation to flexibly reflect the latest user behavior. The [PERSON] formula is  
\[P(H|D)=\frac{P(D|H)\times P(H)}{P(D)} \tag{3}\]  
In this context, \(P(H|D)\) represents the posterior probability of assuming \(H\) to be true for given data \(D\). \(P(H|D)\) represents the likelihood that \(D\) is observed if \(P(H)\) is true. \(P(H)\) represents the prior probability that hypothesis \(H\) is true. \(P(D)\) represents the total probability of observing data \(D\). To facilitate the expression and update of reputation, we use the Beta distribution as the prior probability distribution for the direct credibility value. The Beta distribution is preferred for modeling user reputation, and this model is used to calculate the user's instantaneous reputation. A normalization method is applied to extract scores as positive or negative behaviors.