Я хочу, чтобы вероятностно выбрал «n» ребра из «e» edge_in_sorted_order в векторе. Но я хочу использовать вероятность при выборе. И я также хочу не выбирать большие края в начале.Какая вероятностная функция для использования
, так что это дает больше веса меньшим краям в начале, и, как я беру края, я бы дал больше и больше веса к большим оставшимся краям тоже.
какую вероятностную функцию от n и e я должен выбрать?
while(edgesTaken < n) {
for each edge i and edgesTaken < n
probability = pdf(edgesTaken, i)
if (prob > THRESHOLD)
take the edge
}
Я посмотрел на нормальное распределение, но заменил x для i_edge и sigma^2 для edgeTaken, положил f (x) очень маленьким для больших i_edge. Может ли это быть CDF нормального распространения? –
Не обязательно, чтобы графики были только такими. Это просто мое представление. Он должен позаботиться об ограничениях, связанных с медленным добавлением большего веса к большим краям. –
Одна (непроверенная) возможность: Начиная с края '0', берет край' i' с вероятностью '((n-edgeTaken)/(ei)) ** (1/7) '. Вы можете настроить '7' на досуге, более высокие значения будут способствовать более низким значениям краев. – Teepeemm