mates
A location-based social networking system

:: why ·  what ·  how ·  when ·  where ·  who
  we use mates!
Connecting people everywhere..



Why mates..

 

Imagine this scenario..

You're a college student studying for an exam in the library. Around the corner sits another student studying for the same exam. The class has 150 students. You don't know any of them. Wouldn't it be great if there were some way to be introduced and make a study mate?

Or this one...

You're attending a trade show in another city. Coincidentally, an old friend you rarely see is in town at the same time. Your trips overlap, but you have no way of knowing that you happen to be staying on the same city block.

Imagine what it would be like if..

  • Your instant messaging program could automatically create and populate buddy lists based on the people in your classroom, your office building, or even your neighborhood.

  • Your mobile phone could receive a text message when old friends you rarely see happen to be nearby.

  • Your laptop computer or handheld device connected you to a live feed of information about nearby people and events.

gaim + mates interface mockup



  What is mates..


RSN Visualization (profile view)


RSN Visualization (common interests)
 

mates is a location-based social networking system in the form of a robust web service, or Relationship Engine, and an optional rich media client application, or Relationship Space Navigator.

Our objective in creating mates has been to build an open infrastructure to introduce and connect individuals based on the intersection of physical location and other properties they might have in common.

mates is different than the wide range of existing social networking and instant messaging applications. We strive to create an open infrastructure that will allow existing software to harness the power of location based social networking and a platform on top of which other new, powerful applications can be developed.

The current version of mates is geared towards the academic community, focusing on course registration and academic interests. This set of properties could easily be extended to encompass professional or social environments with hooks into LDAP directories or existing social networking applications.



How it works..

 

Intelligent Location Determination

The Relationship Engine attempts to automatically determine user locations at any given point in time based on combinations of user input and statistical analysis. The RE can be sent explicit location information from a GPS device, a positioning system such as ekahau, or as the result of user input (clicking a point on a visual map, for example).

The Relationship Engine maintains associations between IP addresses, hardware addresses of wireless access points, and physical locations. Intelligent guesses as to the client's physical location are made based on these associations.

Relationship Discovery

The Relationship Engine maintains information on user attributes as received from the user and other information stores such as LDAP directories. The RE generates relationships when these attributes change, and notifies users of relationship additions, deletions, and modifications that may affect them via a message queueing system. The RE and RSN currently compute and support relationships of the following types: friend, friend of friend, interest, course, and physical location.

By computing only incremental relationship changes and notifying users when they occur, the RE avoids having to maintain large amounts of relationship state information. Message queues are stored as heap tables in active memory and are relatively small in size. The performance of the RE scales linearly with respect to the number of users and amount of attribute data present in the system.

The Relationship Engine is powered by Apache, PHP, MySQL, and NuSOAP. The web service architecture allows the RE and its clients to seamlessly support SSL for encrypted information exchange. For more information on the web service architecture, see the latest mates wsdl file (visual version).

RS Navigator Technology

The RS Navigator is a visual software client for the Relationship Engine. It features a live, animated visualization of related users in nearby locations, a buddy list, a messaging subsystem, and an interface for supplying attribute information to the Relationship Engine. The RSN also features a "location wall", allowing users to broadcast and receive location-related information and events to nearby users.

The RSN is built in C# and uses Avalon, the latest graphics engine that Microsoft will feature in its next version of Windows, code-named Longhorn.



When it will be available..

 

The Relationship Engine and RS Navigator were debuted at the 2005 Michigan Inspire Fair on Thursday, April 14th.

As of mid-2007, Jeff and Adam have moved on to launch a new venture and the team is no longer actively developing mates. We have made the source code available for anyone who is interested in exploring mates technology further.


RE Client Simulator (profile view)


University of Michigan Where we code..

  mates is developed and maintained by a team of EECS students at the University of Michigan.

Funding, lab space, and general support have been provided through GROCS, a program of the Digital Media Commons sponsored by the Office of the Provost and made possible through the generous support of Apple Computer with additional support from HP.

The original mates project proposal through GROCS is now available online.


Who we are..

  The mates team

Ayush Agarwal is a junior at the University of Michigan pursuing degrees in Mathematics and Computer Science Engineering. He is passionate about designing software-enabled experiences that add simplicity to our life and allow for rich interactions. In his free time Ayush enjoys photography, programming, solving puzzles and making gadgets.

Adam Herscher is a senior at the University of Michigan pursuing a B.S. in Computer Science with a minor in Near Eastern Languages and Cultures. He has a passion for Location Based Services and Mobile & Handheld Devices. Adam will be graduating in May and relocating to Redmond, WA where he will begin working at Microsoft.

Jeff Powers is starting graduate school at the University of Michigan, where he recently completed his B.S.E. in Electrical Engineering. He was the President of Michigan's Tau Beta Pi chapter in his senior year. In grad school, he will be pursuing an M.S.E. in Computer Science & Engineering (Intelligent Systems). In addition to wireless technologies, he has strong interests and has preformed research in robotics and machine learning.

Participating Advisor

Dr. Elliot Soloway is a Professor affiliated with Electrical Engineering & Computer Science, School of Education, and School of Information.

Special Thanks

Special thanks to Wesley Craig, Professor Viviane Jensen, Professor Sugih Jamin, Linda Kendall Knox, and the entire GROCS program for their knowledge, assistance, and support.

teammates@umich.edu · rss feed · grocs
last updated - nov 1st 2007

Email photos with Fluxify.