Clustering-coefficient- artificial intelligence, Computer Engineering

Assignment Help:

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/ ku  (ku  -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/(Σv∈V dist (u , v)).

Implementation

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.

 Data

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 Properties-PPI-Networks.pl that calls the subroutines described above.

Electronically submit the following:

a.     the file Properties-PPI-Networks.pl 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.

 


Related Discussions:- Clustering-coefficient- artificial intelligence

What is public, * Public, protected and private are 3 access specifier in C...

* Public, protected and private are 3 access specifier in C++. * Public data members and member functions are accessible outside the class. * Protected data members and memb

How many bits must be decoded for 128 × 8 ram chips, How many bits must be ...

How many bits must be decoded for chip select? What is the size of decoder when 128 × 8 RAM chips are required to provide a memory capacity of 2048 bytes? Ans. All higher order l

Measuring and improving cache performance, Measuring and Improving Cache Pe...

Measuring and Improving Cache Performance: 1. Reduce the possibility that 2 different memory block will contend for the similar cache location 2. Additional cache levels

Determine the uses of programming language interface, Determine the uses of...

Determine the uses of Programming Language Interface PLI  is  used  for  implementing  system  calls  that would  have  been  hard  to  do  otherwise  (or impossible) using Ve

What is magento, Magento is a feature-rich eCommerce platform built on open...

Magento is a feature-rich eCommerce platform built on open-source technology that gives online merchants with unprecedented flexibility and control over the look, content and funct

Calculate a table of responses to all boolean inputs, 1.  The network shown...

1.  The network shown in figure 2 uses neurons with:             (a) Unipolar Binary;             (b) Bipolar Binary. Calculate a table of responses to all four possi

What is open addressing, Open addressing:  The easiest way to resolve a co...

Open addressing:  The easiest way to resolve a collision is to begin with the hash address and do a sequential search by the table for an empty location. The idea is to place the

Vector-vector instructions-vector processing, Vector-Vector Instructions ...

Vector-Vector Instructions In this type, vector operands are fetched by the vector register and saved in another vector register. These instructions are indicated with the foll

What are the basic components of dialog program, What are the basic compone...

What are the basic components of dialog program? Screens (Dynpros) Every dialog in an SAP system is controlled by dynpros. A dynpros having of a screen And its flow log

Show buffered mode for point-to-point message passing, Q. Show Buffered mod...

Q. Show Buffered mode for Point-to-point Message Passing? Buffered mode: Transmitting can be started whether or not matching receives has been started and transmitting may comp

Write Your Message!

Captcha
Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd