Knapsack problem based piece-picking algorithms for layered content in peer-to-peer networks
1. Contact1
InstituteofInformationTechnology(ITEC),ResearchGroupMultimediaCommunication(MMC),KlagenfurtUniversity,Austria
2
eLearningDepartment,ComputerandAutomationResearchInstituteoftheHungarianAcademyofSciences,Hungary
E-Mail1
firstname.lastname@itec.uni-klu.ac.at,2
sztibor@sztaki.hu/szobonya@sztaki.hu
Piece Utility and the Knapsack Problem
Piece-Picking Algorithms
Requirements:
Bittorrent-based Peer-to-Peer system (Next-Share)
For live streaming and video-on-demand
(rarest-first not suitable)
Supporting layered content
We need an algorithm that finds the best trade-off
between smooth playback and displaying the best
possible quality.
Approach:
The Piece-Picking problem is closely related to the
Knapsack problem.
Analyze existing algorithms for solving the Knapsack
problem and try to improve them taking the requirements
of a Peer-to-Peer system into account.
Piece-Picking in Peer-to-Peer Networks
Evaluation
Network conditions change every 24 timeslots (60 sec.)
Algor. Complexity DC Applicability
Baseline O(m⋅n) not nec. For simple settings
DP O(S⋅m⋅n(2)
) dep. Higher comlexity
version suitable
MMKP O(m2
⋅ (n-1)2
⋅z) yes Includes also peer
selection
Greedy O(m⋅n⋅log(
max(m,n)))
no Suitable if utility is
well defined
DC: Dependency Check DP: Dynamic Programming
MMKP: Multiple-Choice Multidimensional Knapsack Problem
m: number of timeslots S: max. download bandwidth
n: number of layers z: number of neighbours
Utility Calculation
jj jkliklijijkl prprwp ' 1' )(
zl ijklijk wpwp ' ' )1(1
j
ijk
ijk
c
u
wu
)( kj
ijkj
ijk
tt
wpd
u
Sxc ijkj
1,0ijkx
kijijk xx 1
jkiijk xx 1
(1)
(2)
(3)
(4)
ijkijk xu (5)
(6)
(7)
(8)
(9)
The Knapsack Problem
Maximize
Subject to
ti: the ith timeslot
tk: the kth decision point
lj: the jth layer of the stream
nl: the lth neighbour peer
pij: a piece at timeslot ti and layer lj
dj: the distortion reduction importance
prijkl: the probability that a piece will be
downloaded in time
wpijkl: the weighted probability that a
piece will be downloaded in time
from neighbour nl
wpijk: the weighted probability that a
piece will be downloaded in time
uijk: the utility of a piece
: the urgency weighting
cj: the required bandwidth for a piece
wuijk: the weighted utility of the piece
xijk:if piece pij is selected for download
Knapsack Problem-based Piece-Picking Algorithms for
Layered Content in Peer-to-Peer Networks
Michael Eberhard1
, Tibor Szkaliczki2
, Hermann Hellwagner1
, László Szobonya2
, Christian Timmerer1