Conference Scheduling

Description
<p>I have a task on hand to optimize 1:1 meeting scheduling at a large event.</p><pre><b>GOAL: Allocate times and locations to meetings using the least number of tables while minimizing the amount of walking in between meetings.</b></pre><ul><li>EXAMPLE</li><li>Total attendees at the event: 1000</li><li>Total buyer: 600</li><li>Total seller: 400</li><li>Total time slots: 30 (All time slots are 30 minutes)</li><li>Total meeting tables available: 100</li></ul><p>Prior to running the optimization algorithm, buyers and seller communicate with each other and decide who they would like to meet with. Please note that not all buyer are meeting all seller.</p><p>Prior to running the optimization algorithm, buyers and seller have the ability to block certain time slots for external reasons. We cannot assume all buyer and seller are available in all 30 time slots.</p><p>The algorithm should add a buffer time slot if both parties are changing at a table.<br/>Example: Seller A and Buyer A have a meeting at 9am at Table 100 and Seller B and Buyer B have a meeting immediately following at Table 100. In this case 9:30am should be a buffer time slot with no meeting incase the 9am meeting goes over. Seller B and Buyer B will be assigned 10am time slot at Table 100.<br/>Example: Seller A and Buyer A have a meeting at 9am and Seller A and Buyer B have a meeting immediately following at 9:30am. In this case we don't need a buffer because Seller A stays at the same table for two back-to-back meetings at Table 100.</p><p>The goal is to make sure all scheduled meetings will have a time and meeting table assigned to them while making sure we are using the least amount of meeting tables and the meetings are clustered for either buyers or sellers so they are not running around from table to table in between meetings.</p><p>I envision the buyers and seller would communicate for a few days to decide who they would like to meet with and then we would run the optimization algorithm the day before the event and generate times and meeting tables (locations) for all the meetings.<br/></p><p>Please note that all meetings involve one (1) seller and one (1) buyer.</p><p>----------------</p><p><span><b><u>INPUT</u></b></span><br/></p><p><u>Input Table 1   (Meetings)</u><br/>Column A = SellerID<br/>Column B = BuyerID</p><p><u>Input Table 2   (Available time slots)<br/></u>Column A = SellerID or BuyerID<br/>Column B = Available time slot</p><p style="color: rgb(85, 85, 85);background-color: rgb(255, 255, 255);">----------------</p><p><b><u>OUTPUT</u></b></p><p><u>Output Table    (Meetings)<br/></u>Column A = SellerID<br/>Column B = BuyerID<br/>Column C = Time slot<br/>Column D = Meeting table number</p><p style="color: rgb(85, 85, 85);background-color: rgb(255, 255, 255);">----------------</p><p>Please let me know if you have any questions. Thanks!</p><p><br/></p><hr/><h3>Sample Data</h3><p><a href="https://www.dropbox.com/s/qpaqckcjcqvndl6/BuyerSellerMeetings.csv?dl=0" target="_blank">Input Table 1 CSV</a><br/><a href="https://www.dropbox.com/s/o5tv9927bs71umi/BuyerSellerMeetingTimesAvailable.csv?dl=0" target="_blank">Input Table 2 CSV</a> (Value = 1 denotes 6am-6:30am. Value =2 denotes 6:30-7:00am, etc.)<br/>Total number of time slots = 36<br/>Total number of buyers = 437<br/>Total number of sellers = 401</p>
Discussion
  • {{comment.username}}
Status
Active
submission(s) pending review
Bounty expires in
Bounty expired
Bounty
550
Tags
(no tags)