Publication Date

Spring 5-25-2017

Degree Type

Master's Project

Degree Name

Master of Science (MS)


Computer Science

First Advisor

Chris Pollett

Second Advisor

Robert Chun

Third Advisor

Rajesh Navantheenakrishnan


People who work in an office often have different pools of resources that they want to exchange. They want to trade their resources/work(seller) with a person who wants that particular resource(buyer) and in return get another resource the buyer offers. These kind of exchanges are often called Barter-exchanges where an item is traded for another item without the involvement of actual money. An exchange is set to be complete when there is a match between an available item and a desired item. This exchange is called direct exchange. When an item desired by one user is made available through a series of intermediate exchanges this is called as multi-lateral exchange. In this project, I designed an online bartering system with multi-lateral possibilities. The algorithm implemented by the system supports multi-way trades using a graph data structure and then searches the graph for paths to effect the trade. The algorithm also identifies a sequence of trades through at least one intermediate trader that will complete the trades of the two original traders. The system starts with the search for direct exchange for a given scenario. If no such exchange is found, then the system starts looking for an indirect exchange. The system also incorporates a rating mechanism to provide user ratings based on successfully completed trades. A/B testing and stress testing was performed to test the reliability and efficiency of our system.