16. A non-transitory program storage device readable by a machine, embodying a program of instructions executable by the machine to perform a method, the method comprising: parsing patent data to generate a set of nodes; selecting at least one node of the set of nodes; determining initial links from meta data associated with the patent data for the at least one node; creating links among the set of nodes based on the metadata; identifying a set of seed nodes; determining a community structure for the set of seed nodes, the community structure including a plurality of communities; and assigning concepts to the plurality of communities, wherein determining the community structure comprises: initiating a percolation message from a source node of a linked network, the linked network comprising a plurality of nodes and a plurality of edges, each edge connecting at least two of the plurality of nodes, wherein a node is a neighbor if the node is connected to another node in the plurality of nodes by an edge, wherein the percolation message comprises a percolation probability and an identifier of the source node, and wherein initiating a percolation message from the source node comprises transmitting the percolation message to each neighbor of the source node with the percolation probability; propagating the percolation message through the linked network, wherein propagating the percolation message through the linked network comprises: transmitting the percolation message from each node that receives the percolation message to each neighbor of each node that receives the percolation message; and transmitting a response to the source node from each node that receives the percolation message; collecting each response to the percolation message at the source node; and storing a list of nodes that transmitted the response at the source node.
16. A non-transitory program storage device readable by a machine, embodying a program of instructions executable by the machine to perform a method, the method comprising: parsing patent data to generate a set of nodes; selecting at least one node of the set of nodes; determining initial links from meta data associated with the patent data for the at least one node; creating links among the set of nodes based on the metadata; identifying a set of seed nodes; determining a community structure for the set of seed nodes, the community structure including a plurality of communities; and assigning concepts to the plurality of communities, wherein determining the community structure comprises: initiating a percolation message from a source node of a linked network, the linked network comprising a plurality of nodes and a plurality of edges, each edge connecting at least two of the plurality of nodes, wherein a node is a neighbor if the node is connected to another node in the plurality of nodes by an edge, wherein the percolation message comprises a percolation probability and an identifier of the source node, and wherein initiating a percolation message from the source node comprises transmitting the percolation message to each neighbor of the source node with the percolation probability; propagating the percolation message through the linked network, wherein propagating the percolation message through the linked network comprises: transmitting the percolation message from each node that receives the percolation message to each neighbor of each node that receives the percolation message; and transmitting a response to the source node from each node that receives the percolation message; collecting each response to the percolation message at the source node; and storing a list of nodes that transmitted the response at the source node. 22. The program storage device of claim 16 , further comprising producing a report based on user requirements.