Open theanmolsharma opened 10 months ago
Since no one is assigned. I'll start working on this.
Since no one is assigned. I'll start working on this.
This issue is not a high priority. #24 is a higher priority. I'd appreciate if you work on that instead of this.
Since no one is assigned. I'll start working on this.
This issue is not a high priority. #24 is a higher priority. I'd appreciate if you work on that instead of this. #24 is a bit more involved issue, so before you start implementing code, I'd like to see a short description of what changes you'd need to make and how you'd do it. In summary, make a plan first.
Okay, I'll start working on it.
The current
CoinSelector
class only implements the Lowest Larger coin selection algorithm. The goal is to implement Branch and Bound coin selection and Single Random Draw selection, then use a waste metric to pick the best selection.Things to implement in
CoinSelector
class :selectBranchAndBound()
selectSingleRandomDraw()
getWaste()
select()
inCoinSelector
class to call all 3 algorithms, calculate waste for all selections and choose the one with least waste.References: Our implementation is very very similar to bcoin's implementation so I suggest reading attemptSelection() and the functions it calls.