Abstract:
Methods, systems, program products are described to create a social network based on dynamic interests of users and using ad-hoc networking. A user of mobile device can identify another user who is close by and has similar interests. Dynamic interests of the users can be extracted or identified based on mobile usage, browsing history, places traveled, and other user actions. Users are notified if another user who is similar more than a threshold is present nearby. The system also facilitates communication between users by way of chatting, file sharing, image sharing etc.

Description:
RELATED APPLICATION 
       [0001]    This application claims the benefit of India Ordinary Application No. 3105/DEL/2015 filed on Sep. 29, 2015 and entitled “Ad-Hoc Social Networking and Profile Matching System”, the content of which is incorporated in its entirety herein by reference. 
       TECHNICAL FIELD 
       [0002]    This disclosure relates to location based social networking. 
       BACKGROUND 
       [0003]    Today, mobile devices play an important role enabling people to access large variety of ubiquitous services and in particular social services. Usage of social services has increased significantly in recent years due to the different types of social applications and inexpensive Internet connectivity available on the mobile devices. Capabilities of Mobile Operating Systems e.g. Android, iOS, and Windows devices have improved significantly and data in the devices can now be shared faster without holding two phones together. For Example, Android 4.0 and later devices with particular hardware can be connected directly to each other via Wi-Fi peer-to-peer (P2P) technology without wireless access point. Wi-Fi Direct was also recently announced by Google from Android 4.0 to connect nearby devices at a range beyond the capabilities of Bluetooth and without requiring a wireless access point. 
         [0004]    People now looking for new features in their mobile devices to create location based social networking using ad-hoc network. Ad-hoc social network provides a new type of service that is different from online social network service provided by current Facebook, Google+, Twitter, or others. Ad-hoc social network enables users to search friends to communicate and share contents which are of similar interest without the use of Internet. It provides an opportunity to meet unknown people with similar interest anytime anywhere. 
     
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
         [0005]      FIG. 1  is a flow chart describing process to connect a mobile device with another mobile device using ad-hoc social network. 
           [0006]      FIG. 2  is a flow chart describing process to connect a mobile device with another mobile device based on similar profiles. 
           [0007]      FIG. 3  describes structure of a user profile that is used to create ad-hoc social network. 
           [0008]      FIG. 4  is communication network for ad-hoc social network. 
       
    
    
     DETAILED DESCRIPTION OF THE INVENTION 
       [0009]    Specific language has been used to describe exemplary embodiments illustrated in drawings. Alterations and modifications of the described features, and additional applications of the embodiments, which would occur to one skilled in the relevant art and having possession of this disclosure, are to be considered within the scope of the description. 
         [0010]      FIG. 1  is a flow chart that describes the process to create an ad-hoc social network according to the present invention. 
         [0011]    An ad-hoc network or Peer-to-Peer network is a local area network that connects multiple devices without relying on a base station to coordinate flow of messages in the network. Nodes cooperate each other for forwarding the network packets. According to  FIG. 1 , a mobile node when receives a request from other nodes by step  101 , accepts the request by step  102  by respective acceptance process. In one of embodiment, the acceptance process is to satisfy a criteria required by a user. The criteria for the acceptance process may include matching one or more user defined parameters, hobbies, or interests. 
         [0012]    According to  FIG. 2 , a mobile node receives profiles of one or more users by step  201  by wireless network. In one of embodiment, the profile includes users preferences and criteria that the mobile node is looking in other mobile nodes to be met completely or partially. The mobile node compute similarity of its own profile with the received one or more profiles by step  202 . The mobile node provides indication by replying the received request by step  203  when similarity of the profiles is greater than the predefined threshold. In one of embodiment, the threshold is configured by a user as user preference. In one of embodiment, the threshold is configured by algorithm and is updated based on historical trends of as how threshold is helping users to find similar users. The algorithm lowers threshold if number of similar users are less and increases threshold if many similar users are suggested. 
         [0013]    In one of embodiment, similarity of the profiles is calculated using cosine similarity. 
         [0014]    According to present invention,  FIG. 3  provides a description of user profile that is used to create ad-hoc social network in one of embodiment. A user profile  301  includes some parameters  302  and dynamic interests  303 . Parameters  302  further includes but not limited to Age  304 , Sex  305 , education details  306 , job details  307 , address details  308 , and other keywords  309 . 
         [0015]    In one of embodiment, the dynamic interests are provided by user of the mobile device or can be automatically extracted based on user behavior. In one of embodiment, user behavior includes search and browsing history. Dynamic interests are extracted from keywords used in the search and from accessed URLs of the links visited by the user. 
         [0016]    In one of embodiment in according to present invention.  FIG. 3  provides structure of dynamic interests  303 . The dynamic interests are based on different locations. In one of the embodiment, location based interests are based on location based user behavior including location based search and browsing history. Keywords  313  are extracted and stored based on user behavior at Location  310 . Similarly, keywords  314  are extracted based on user search and behavior at location  311  and keywords  315  are extracted based on user search and behavior at location  312 . 
         [0017]    In one of embodiment, the Keywords are time accumulated meaning whenever a user visits a location, the system activates the profile if already exists for that location or creates a new profile for that location if it is a new location. User profile of the location is updated based on user search and behavior for that location. 
         [0018]    In one of the embodiment, the user has a global profile that is combination of all local profiles and is independent of location. Global profile is updated continuously based on user behavior at any location. 
         [0019]      FIG. 4  describes communication system and network that is used in the present invention to create a social network using ad-hoc communication network. Ad-hoc communication network is a network in which nodes cooperate to forward network packets without any base station. 
         [0020]    As an example to demonstrate,  FIG. 4  includes a network  400  with exemplary mobile devices  401 - 406  that are part of the wireless network. In one of the embodiment, the ad-hoc social network is created by a request from one mobile device to another and consequent reply or acknowledgement from the other device based on the received request. 
         [0021]    In one of embodiment, ad-hoc social network is established in two phases. Phase  1  is a preprocessing phase in which all nodes interested in the establishing ad-hoc social network broadcast their request, indication, or their profile. For example, as displayed in  FIG. 4 , mobile device  401  receives profile and other information from all nodes that can be connected with mobile device using ad-hoc network. Mobile device  401  receives user profiles from mobile devices  402 - 404  directly via paths  407 - 409  and from mobile devices  405 - 406  indirectly via mobile device  403  and via paths  410 - 411 . Mobile device  403  further forwards profiles received from mobile devices  405  and  406  to mobile device  401  via path  408 . 
         [0022]    Once a mobile device receives a request from another mobile device, it decides if reply or acknowledgement should be sent to the other mobile device sending the request. In one of embodiment, the decision to send reply is made by an acceptance process based on similarity value and threshold required by the mobile device. 
         [0023]    In one of embodiment, mobile device  401  computes similarity with the profiles received from other mobile devices before accepting the social connection request. 
         [0024]    Some of embodiments described in the specification are labeled as steps or components in flowchart and drawings to demonstrate specific exemplary implementation. A step or component may be implemented as hardware circuit comprising customized semiconductors or other electronics components. A step or component may also be implemented in programmable hardware devices or software for execution by processors. 
         [0025]    Software is an executable code that implements step or module and comprises of blocks of instructions organized in objects or functions. The blocks of instructions may be stored in different locations in a memory device and are joined at the time of execution. 
         [0026]    The module or steps comprising of block of instructions may also be distributed over several memory or computing devices. Similarly, the data comprising of profiles or routing information may be stored at single location or may be distributed among several devices. 
         [0027]    Features described in one or more embodiments may be combined in any suitable manner. A person of skilled in the art will recognize that the present invention can be practiced with other methods, components, devices, communication technology and not limited to ad-hoc communication technology. 
         [0028]    The subject matter has been described in language specific to structural features and/or operations, however, it is to be understood that the subject matter defined in the claims is not necessarily limited to the specific features and operations. Specific features and modules described in the specification are disclosed as example forms of implementing the claims. Number of modifications and alternative arrangements can be devised without departing from the scope of the present invention. 
         [0029]    Embodiments of the present invention may be implemented entirely in hardware components, entirely in software components, or combining both software and hardware aspects that may be referred as a “circuit,” “step,” “module” or “system.” Embodiments of the present invention may also take the form of a computer program product that may include a computer readable storage media having computer readable program instructions thereon for causing a processor to carry out embodiments of the present invention. 
         [0030]    The computer readable storage medium can be a tangible device that can retain and store instructions for use by execution device. The computer readable storage medium may be, but not limited to, an electronic storage device, a magnetic storage device, an optical storage device, an electromagnetic storage device, a semiconductor storage device, a portable computer diskette, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or Flash memory), a static random access memory (SRAM), a portable compact disc read-only memory (CD-ROM), a digital versatile disk (DVD), a memory stick, a floppy disk, a mechanically encoded device such as punch-cards or raised structures in a groove having instructions recorded thereon, and any suitable combination. 
         [0031]    A computer readable storage medium, as used herein, is not to be construed as being transitory signals per se, such as radio waves or other freely propagating electromagnetic waves, electromagnetic waves propagating through a waveguide or other transmission media (for example, light pulses passing through a fiber-optic cable), or electrical signals transmitted through a wire. 
         [0032]    Computer readable program instructions described herein can be downloaded to respective computing/processing devices from a computer readable storage medium or to an external computer or external storage device via a network, for example, the Internet, a local area network, a wide area network and/or a wireless network. 
         [0033]    Embodiments of the present invention are described herein with reference to flowchart. It will be understood that each block of the flowchart illustrations and combinations of blocks in the flowchart illustrations can be implemented by computer readable program instructions.