Clustering-coefficient- artificial intelligence, Computer Engineering

This programming assignment is about computing topological properties of Protein-Protein Interaction (PPI) networks. Recall that a PPI network is represented by a graph G=(V,E) where  nodes of V represent  proteins and an edge of E connecting  two nodes represents interacting proteins (either physically or functionally).  The properties include clustering coefficient and node centrality.  A detailed description of these properties  follows:

 Clustering coefficient

In many networks, if node u is connected to v, and v is connected to w, then it is highly probable that u also has a direct link to w. This phenomenon can be quantified using the clustering coefficient

Cu = 2nu/ k(k-1)

where nu is the number of edges connecting the ku  neighbors of node u to each other. In other words, Cu gives the number of 'triangles' that go through node i, whereas ku(ku -1)/2 is the total number of triangles that could pass through node u, should all of node u's neighbors be connected to each other.

The average clustering coefficient,<C>, characterizes the overall tendency of nodes to form clusters or groups. An important measure of the network's structure is the function C(h),which is defined as the average clustering coefficient of all nodes of degree h, i.e. with h adjacent vertices.

Closeness centrality of a node

Closeness-centrality is a measure of node centrality and uses information about the length of the shortest paths within a network; it uses the sum of the shortest distances of a node to all other nodes. The closeness-centrality of node u is defined as the reciprocal of this sum:

Cclo(u) = 1/(ΣvV dist (u , v)).


Write 5 subroutines:

1.    Clustering-Coefficient

2.    All-Pairs-Shortest-Paths

3.    Create-Adjacency-Matrix

4.    Node-Centrality

5.    Get-Shortest-Paths 

The subroutine Clutering-Coefficient outputs 1) the average clustering coefficient <C>, 2) C(H), for all H values, and 3) the top 5 nodes (proteins) with highest cluster coefficient. The protein ids should be those used in the .sif file.

The procedure Create-Adjacency-Matrix takes as input argument the .sif representation of a graph and generates the adjacency matrix representation of the graph. It uses hashes (as defined in perl)  to map the protein ids into indexes of the adjacency matrix. 

The procedure All-Pairs-Shortest-Paths has as input argument the adjacency matrix representation of a graph. The subroutine returns a two-dimensional matrix, A, with A[i,j]  giving the length of the shortest path between nodes i and j.

 The subroutine Node-Centrality outputs the top 5 nodes according to the centrality measure, that is the 5 proteins that are most central. The protein ids should be those used in the .sif file.

 The subroutine Get-Shortest-Path takes in input a pair of nodes and the adjacency matrix representation of a graph and returns a shortest path  between the two nodes.  Call this subroutine from the main using as input parameters the two nodes with highest value of node-centrality.


In this assignment you analyze the Protein-Protein Interaction (PPI) graph of the herpes Kaposi virus. The file kshv.cys (available at t-square, Resources) contains such a graph in cytoscape format.

You select the subgraph of this network consisting of the nodes with degree equal or less than k,(k=7).

This will be the input to your perl program that calls the subroutines described above.

Electronically submit the following:

a.     the file containing the main program and all subroutines. 

b.    A document where you state the time complexity of each subroutine  as a function of the number of nodes and/or edges and explain how you obtained it.


Posted Date: 2/21/2013 4:57:21 AM | Location : United States

Related Discussions:- Clustering-coefficient- artificial intelligence, Assignment Help, Ask Question on Clustering-coefficient- artificial intelligence, Get Answer, Expert's Help, Clustering-coefficient- artificial intelligence Discussions

Write discussion on Clustering-coefficient- artificial intelligence
Your posts are moderated
Related Questions
Determine the Framed data including a parity bit   For illustration when even parity is chosen, parity bit is transmitted with a value of 0 if the number of preceding

My name is mrs flo and i apporve dubstep, do you apporve it?

Explain the Structure of Virtual Enterprise. The virtual enterprise can be a suitable structure to explore the emerging opportunities for forming value in the information socie

First-Order Models: Here if we proposed first-order logic as a good knowledge representation language than propositional logic is just because there is more expressive than we

What are interrupts?  Interrupt: An interrupt is a hardware mechanism which enables an external device, classically input/output devices, to send a signal to the CPU. An int

Don't scan at more resolution than needed. This saves both Disk and time Space. Typically itisn't useful to scan at more than optical resolution because it adds no new informa

How will you form an 8 bit adder using 2 four bit adder IC's 7483? Ans: 4 bit adder IC is IC 7483. This has two four bit data inputs and output carry, 4 bit data output carr

Q. What do you mean by Software Poll? In this scheme on occurrence of an interrupt, processor jumps to an interrupt service program or routine whose job is to poll (roll call

What is a Manifest?  An assembly manifest contains all the metadata required to specify the assembly's version requirements and security identity, and all metadata required to

What is self reference?  The Turing machine that ignores its input and prints out a copy of its own description,   we call this as SELF. There is a computable function q: €*€*,