date - Group Maker Algorithm based on free time avaliable -
i trying come algorithm make groups based on maximum free time available group of people have in polynomial time, believe solution problem might np.
the problem followed:
we divided week 1 hour slots users can put down each slot whether free or busy. let's gather information 30 users. let's assume users%group_size = 0
first:
is possible put these people groups of size g every member in each group of size g has 1 overlapping free time slot each other?
is possible put these people groups of size g results in optimal solution, have maximum total overlapping free time slots among groups?
for example, if had group of 6 people following free time:
a: 1pm-3pm sunday , 1pm-3pm monday
b: 2pm-3pm sunday , 1pm-3pm monday
c: 1pm-3pm sunday , 7pm-9pm monday
d: 6pm-7pm sunday , 7pm-9pm monday
e: 5pm-7pm sunday , 7pm-9pm monday
f: 6pm-7pm sunday , 1pm-3pm monday
the algorithm determine a,b,f 1 group , c,d,e group because maximum of 2 hours of free time overlaps between groups. opposed a,b,c , d,e,f contains 1 overlapping time slot every member in group. result, optimal solution greatest overlap in total among groups.
i realized problem related hopcroft-karp algorithm, needs modified accomplish task. algorithm relates more closely solution hopcroft-karp algorithm? can solution achieved in polynomial time?
background:
we have bunch of people(30-50) want volunteer cause , have times free during week. want break them groups of 3-5 , have them work cause. want group members have time possible each other want break them groups have similar free times available.
thanks bunch , please let me know if obvious question or if more clarification needed.
on first look, seems set cover problem, subset number of persons sharing time slot , universal set persons.
u = {p0, p1, p2 ..... , p29} // number of persons. s = {s0, s1, s2, ....... s23} // number of 1 hour slots.
i still not sure how use g(size of ideal group) account.
Comments
Post a Comment