jump to navigation

How Web 2 Are You? January 13, 2009

Posted by nhabibi in Internet.
1 comment so far

Take this quiz, interesting. My score was awful!

Social Web Usage Ladder November 6, 2008

Posted by nhabibi in Internet.
add a comment

web usage ladder

web usage ladder


(source)

PS: Well, I’m almost on the top step! :D

Flower Web 2.0 October 18, 2008

Posted by nhabibi in Internet.
add a comment

Conference Alert October 9, 2008

Posted by nhabibi in Conference, Internet.
add a comment

This is a good way to be informed about incoming conferences. Just subscribe and determine the filed/fields.
I don’t know how much complete it is, but is good enough.

PS: care about the ending “s” in the URL!!!

Pdb-L Mailing List August 14, 2008

Posted by nhabibi in Bioinformatics, Internet.
3 comments

I don’t have so much experiment with mailing lists, but this one is great! A number of knowledgeable and helpful people in the field, around the world.

Special thanks to Dr. Kevin Karplus, professor of Bioinformatics at University of California, Santa Cruz, for his useful and detailed responses.

Protein Contact Map Prediction November 28, 2007

Posted by nhabibi in Bioinformatics.
4 comments

Bioinformatics and computational biology involve the use of techniques including applied mathematics, informatics, statistics, computer science, artificial intelligence, chemistry, and biochemistry to solve biological problems usually on the molecular level. Major research efforts in the field include sequence alignment, gene finding, genome assembly, protein structure alignment, protein structure prediction, prediction of gene expression and protein-protein interactions, and the modeling of evolution.

(Source: Wikipedia)

As the definition indicates, bioinformatics is an interdisciplinary field, hard but interesting.

The studies in bioinformatics are categorized in three groups: Genomics, Proteomics and Transcriptoemics. (Now we have some biology, You would like it! Skip, if your not interested. :D )


Genomics is the study of an organism’s entire genome. the genome of an organism is its whole hereditary information and is encoded in the DNA. This includes both the genes and the non-coding sequences of the DNA. More precisely, the genome of an organism is a complete DNA sequence of one set of chromosomes.

Proteomics is the large-scale study of proteins, particularly their structures and functions. The proteome of an organism is the set of proteins produced by it during its life, and its genome is its set of genes.

The transcriptome is the set of all messenger RNA (mRNA) molecules, or “transcripts”, produced in one or a population of cells. Unlike the genome, which is roughly fixed for a given cell line (excluding mutations), the transcriptome can vary with external environmental conditions. Because it includes all mRNA transcripts in the cell, the transcriptome reflects the genes that are being actively expressed at any given time. The study of transcriptomics examines the expression level of mRNAs in a given cell population, often using high-throughput techniques based on DNA microarray technology.


Proteins are large organic compounds made of amino acids arranged in a linear chain. Proteins are essential parts of organisms and participate in every process within cells.

A protein contact map represents the distance between every two amino acids of a three-dimensional protein structure in a two-dimensional matrix. It can be used to describe the similarity between protein structures and prediction of tertiary structure. These maps are either predicted from protein sequence or calculated from a given structure.

Contact map prediction is a problem in bionformatics. Several approaches have been proposed, each one with a degree of success. We are working now on the subject. You can take a look at my seminar report and presentation, both in Persian.

More information:
- Computational Methods for Protein Structure Prediction and Modeling: Volume 1: Basic Characterization – Chapter 8

PS: Can you guess Why my “Blogroll” is empty?

JDM: The Java API for Data Mining October 29, 2007

Posted by nhabibi in Data Mining, Java.
2 comments

Data mining tools were traditionally provided in products with vendor-specific interfaces. JDM defines a common Java API to interact with data mining systems. In this way, data Mining clients can be coded against a single API that is independent of the underlying data mining system. It is developed by Java Community Data Mining Expert Group.
JDM includes supervised and unsupervised learning algorithms such as decision trees, neural networks, Naive Bayes, Support Vector Machine, K-Means, and Apriori.

In fact, JDM provides for data mining systems what JDBC did for relational databases.

For using JDM, you must follow a few steps:
1-Identify the data whit a URL
2-Create a loical representaion of your data
3-Specify the type of model (clustering,etc.)
4-Specify the parameters to your data mining algorithm
5-Create a build task
6-Execute the task
7-Get result

You must get the JDM API source codes and code your program against it.

There are also Data mining Web services that provide an opportunity to facilitate integration of multiple data mining software implementations in a single application, enable a service oriented architecture.

More Information:
-Java Specification Request 247: Java Data Mining (JDM) 2.0
-F. Sommers, “Mine Your Own Data with the JDM API”
-M. F. Hornick, E. Macade, S. Vankayala, “Java Data mining Concepts”
-Robert Chu,” Web Services Standards for Data Mining”

Iranian Student Conference on Electrical Engineering September 27, 2007

Posted by nhabibi in Conference, nhabibi.
4 comments

10th Iranian Student Conference on Electrical Engineering was held at Isfahan University of Technology, 4-6 September 2007.

I was both a referee and a session Chair for software and hardware section. It was a new experience in my academic life.

More information:
- The task of the referee
- Session Chair Duties

Prediction with Neural Networks September 25, 2007

Posted by nhabibi in Artificial Intelligence, Neural Network.
1 comment so far

An artificial neural network (ANN), often just called a “neural network” (NN), is a mathematical model or computational model based on Biological neural networks. It consists of an interconnected group of artificial neurons. In a neural network model, simple nodes are connected together to form a network of nodes — hence the term “neural network”.

In most cases an ANN is an adaptive system that changes the strength (weights) of the connections in the network, based on information that flows through the network during the learning phase.

The utility of artificial neural network models lies in the fact that they can be used to infer a function from observations. This is particularly useful in applications where the complexity of the data or task makes the design of such a function by hand impractical.

(Source: Wikipedia)

ANN has application in many areas, like Stock Market Prediction. We’ve investigated the efficiency of ANN for predicting the low and high monthly stock price, by using some technical indicators, and prices of previous months, as ANN input.

The ANN is a feedforward one with Backpropagation learning algorithm. We have predicted low and high monthly price for some companies in S&P500. Prices are gotten from Yahoo! Finance. Several technical indicators are applied and results are analyzed. Implementation is done with NeuroSolutions software. You can find our paper here.

More information:
- M. Hagan et al., “Neural Network Design”
- In depth description of Technical Indicators
- S&P500 list

AntNet September 23, 2007

Posted by nhabibi in Artificial Intelligence, Internet, Machine Learning.
2 comments

AntNet routing algorithm is a mobile agents system that is based on Ant Colony Optimization (ACO) method (refer to perevious post). Informally, the AntNet algorithm and its main characteristics can be summarized as follows:

- At regular intervals, and concurrently with the data traffic, from each network node mobile agents are asynchronously launched towards randomly selected destination nodes.

- Agents act concurrently and independently, and communicate in an indirect way, through the information they read and write locally to the nodes.

- Each agent searches for a minimum cost path joining its source and destination nodes.

- Each agent moves step-by-step towards its destination node. At each intermediate node a greedy stochastic policy is applied to choose the next node to move to. The policy makes use of (i) local agent-generated and maintained information, (ii) local problem-dependent heuristic information, and (iii) agent-private information.

-While moving, the agents collect information about the time length, the congestion status and the node identifiers of the followed path.

- Once they have arrived at the destination, the agents go back to their source nodes by moving along the same path as before but in the opposite direction.

- During this backward travel, local models of the network status and the local routing table of each visited node are modified by the agents as a function of the path they followed and of its goodness.

- Once they have returned to their source node, the agents die.

(Source: AntNet original paper)

OPNET, is a network simulator that can be used to design networks with different size and components, and to implement, test and evaluate protocols.

I implemented AntNet by OPNET. The difficult point was learning OPNET! It’s a little tricky, but very well-defined and powerful. (Of course when you learned! :D ) The best starting point is OPNET tutorials, inside software. In short, you first define network packets, links and nodes separately and then integrate them. Protocols can be coded in C/C++.

My report describe AntNet algorithm in detail and its implementation by OPNET, in Persian.

More information:
G. Caro & M. Dorigo paper: AntNet: Distributed Stigmergetic Control for communication networks

PS:
1-A network specialist says that AntNet is not applicable for large networks, like internet, due to high volume of routing related messages. I think it’s true.
2- What a long post! Didn’t you get bored? :D