Research Reviews

Sunday, November 22, 2009

Mobile Learning






Wednesday, November 18, 2009

Semantic Web


The difference between Semantic Web and Web Services:
The mainstream XML standards for interoperation of web services specify only syntactic interoperability, not the semantic meaning of messages.

"If HTML and the Web made all the online documents look like one huge book, RDF, schema, and inference languages will make all the data in the world look like one huge database"
Tim Berners-Lee, Weaving the Web, 1999


RDF

RDF is a framework for describing Web resources.
RDF is data about data - or metadata. Often RDF files describe other RDF files.
An RDF pointer is a pointer (actually an URL) to information about things (like a knowledge database).
RDF identifies things using Web identifiers (URIs), and describes resources with properties and property values.The combination of a Resource, a Property, and a Property value forms a Statement (known as the subject, predicate and object of a Statement).
A container is a resource that contains things. The contained things are called members (not list of values)
RDF collections are used to describe groups that can contains ONLY the specified members.
The Dublin Core is a set of predefined properties for describing documents.

OWL

Ontology is about the exact description of things and their relationships.
OWL stands for Web Ontology Language. OWL is built on top of RDF. OWL is for processing information on the web.
OWL comes with a larger vocabulary and stronger syntax than RDF.
OWL has three sublanguages:
  • OWL Lite
  • OWL DL (includes OWL Lite)
  • OWL Full (includes OWL DL)

An OWL ontology consists of a set of axioms which place constraints on sets of individuals (called "classes") and the types of relationships permitted between them.


Semantic Web provides a common protocol for data and service to inter-operate.

Semantic Web provide a common manual way to define the logic rules and break the natural sentence to machine understandable concepts and relationships. It makes human to fit for machine.



Thursday, November 12, 2009

Math

Hash function
A hash function is any well-defined procedure or mathematical function which converts a large, possibly variable-sized amount of data into a small datum, usually a single integer that may serve as an index to an array.

In general, a hashing function may map several different keys to the same index. Therefore, each slot of a hash table is associated with (implicitly or explicitly) a set of records, rather than a single record. For this reason, each slot of a hash table is often called a bucket, and hash values are also called bucket indices.

Thursday, November 5, 2009

An Introduction to MultiAgent Systems

1. Introduction
In a classic distributed/concurrent system, all the computing elements are implicitly assumed to share a common goal(of making the overall system function correctly). In multiagent systems, it is assumed instead that agents are primarily concerned with their own welfare.
2. Intelligent Agents
An agent is a computer system that is situated in some environment, and that is capable of autonomous action in this environment in order to meet its design objectives.
In most domains of reasonable complexity, an agent will not have complete control over its environment. It will have a best partial control, in that it can influence it.
In practice, almost all realistic environments must be regarded as non-deterministic from an agent's perspective.
From agent's point of view, dynamic environments have at least two important properties. The first is that if an agent performs no external action between times t0 and t1, then it cannot assume that the environment at t1 will be the same as it was at time t0. The second property is that other processes in the environment can interfere with the actions it attempts to perform.
Functional systems f : I->O.
A functional system is one that simply takes some input, performs some computation over this input, and eventually produces some output.
Reactive systems
Reactive systems are harder to engineer than functional ones, because an agent engaging in a (conceptually) non-terminating relationship with its environment must continually make local decisions that have long-term consequences.
In an episodic environment, the performance of an agent is dependent on a number of discrete episodes, with no link between the performance of the agent in different episodes.
Intelligent agent has:
  • Reactivity. Intelligent agents are able to perceive their environment, and respond in a timely fashion to changes that occur in it in order to satisfy their design objectives.
  • Proactiveness. Intelligent agents are able to exhibit goal-directed behavious by taking the initiative in order to satisfy their design objectives.
  • Social ability. Intelligent agents are capable of interacting with other agents (and possibly humans) in order to satisfy their design objectives.
Achieving a good balance between goal-directed and reactive behavior is hard.

Environments are assumed to be history dependent. In other words, the next state of an environment is not solely determined by the action performed by the agent and the current state of the environment. The actions make earlier by the agent also play a part in determining the current state.
Certain types of agents decide what to do without reference to their history. They base their decision-making entirely on the present, with no reference at all to the past. We call such agents purely reactive, since they simply respond directly to their environment. Sometimes they are called tropistic agents)
More usually, we want to tell our agent what to do without telling it how to do it.
A utility is a numeric value representing how 'good' the state is: the higher the utility, the better. The task of the agent is then to bring about states that maximize utility.
It is difficult to specify a long-term view when assigning utilities to individual states. To get around this problem, we can specify a task as a function which assigns a utility not to individual states, but to runs themselves.
One of the disadvantages of utility-based approach is that it is very often difficult to derive an appropriate utility function. The second is that usually we find it more convenient to talk about tasks in terms of 'goals to be achieved' rather than utilities.
An achievement task is specified by a number of goal states; the agent is required to bring about one of these goal states. The environment and agent both begin in some state; the agent takes a turn by executing an action, and the environment responds with some state; the agent then takes another turn, and son on. The agent 'wins' if it can force the environment into one of the goal states.
Maintenance task environments: the agent is required to avoid some state of affairs.

3. Deductive Reasoning Agents
Traditional AI systems, known as symbolic AI, suggests that intelligent behavious can be generated in a system by giving that system a symbolic representation of its environment and its desired behaviour, and syntactically manipulating this representation.
In logic-based approaches to building agents, decision-making is viewed as deduction. The process of selecting an action reduces to a problem of proof. But logic-based approaches have many disadvantages. In particular, the inherent computational complexity of theorem proving makes it questionable whether agents as theorem provers can operate effectively in time-constrained environments.
4. Practical Reasoning Agents
Practice reasoning is a matter of weighing conflicting considerations for and against competing options, where the relevant considerations are provided by what the agent desires/values/cares about and what the agent believes.


Deciding what state of affairs to achieve is known as deliberation.
Deciding how to achieve these states of affairs is known as means-ends reasoning. It is better known in the AI community as planning.
A planner is a system that takes as input representations of the following.
  1. A goal, intention or a task. This is something that the agent wants to achieve, or a state of affairs that the agent wants to maintain or avoid.
  2. The current state of the environment - agent's beliefs.
  3. The actions available to the agent.
As output, a planning algorithm generates a plan. This is a course of action - a 'recipe'.
The mechanism an agent uses to determine when and how to drop intentions is known as a commitment strategy.
The Belief-Desire-Intention (BDI) software model (usually referred to simply, but ambiguously, as BDI) is a software model developed for programming intelligent agents.A third activity, creating the plans in the first place (planning), is not within the scope of the model, and is left to the system designer and programmer.
  • Beliefs: Beliefs represent the informational state of the agent, in other words its beliefs about the world (including itself and other agents). Beliefs can also include inference rules, allowing forward chaining to lead to new beliefs.
  • Desires: Desires represent the motivational state of the agent. They represent objectives or situations that the agent would like to accomplish or bring about. Goals: A goal is a desire that has been adopted for active pursuit by the agent. Usage of the term goals adds the further restriction that the set of active desires must be consistent. For example, one should not have concurrent goals to go to a party and to stay at home - even though they could both be desirable.
  • Intentions: Intentions represent the deliberative state of the agent - what the agent has chosen to do. Intentions are desires to which the agent has to some extent committed. In implemented systems, this means the agent has begun executing a plan.
  • Events: These are triggers for reactive activity by the agent. An event may update beliefs, trigger plans or modify goals. Events may be generated externally and received by sensors or integrated systems. Additionally, events may be generated internally to trigger decoupled updates or plans of activity.
5 Reactive and Hybrid Agents
Subsumption architecture: no complex symbolic reasoning and many behavious can 'fire' simultaneously.

6 Multiagent Interactions
Utility function are just a way of representing an agent's preferences.
Dominant strategies.
We will say that a strategy si is dominant for player i if, no matter what strategy sj agent j choose, i will do at least as well playing si as it would doing anything else.
A strategy si for agent i is dominant if it is the best response to all of agent j's strategies.
Nash equilibria
The mutual form of an equilibrium is important because it locks the agents in to a pair of strategies. Neither agent has any incentive to deviate from a Nash equilibrium.
Mixed strategies and Nash's theorem
Sometimes, it can be useful to introduce randomness or uncertainty into our actions.
Every game in which every player has a finite set of possible strategies has a Nash equilibrium in mixed strategies.
Pareto efficiency
Pareto efficiency/optimality is not really a solution concept so much as a property of solution. It is  a criterion that desirable solutions should satisfy.
We will say that an outcome is Pareto efficient if there is no other outcome that improves one player's utility without making somebody else worse off. Conversely, an outcome is said to be Pareto inefficient if there is another outcome that makes at least one player better off without making anybody else worse off.
While Pareto efficiency is an important property of outcomes, it is perhaps not very useful as a way of selecting outcomes.
Maximizing social welfare
Social welfare is an important property of outcomes, but is not generally a way of directly selecting outcomes.
Maximizing social welfare becomes relevant  if all the agents within a system have the same owner.
Competitive and Zero-Sum Interactions
The preferences of the players are diametrically opposed to one another: one agent can only improve its lot at the expense of the other.(strictly competitive)
Zero-sum encounters are those in which, for any particular outcome, the utilities of the two agents sum to zero.
The Prisoner's Dilemma
The result seems to imply that cooperation can only arise as a result of irrational behavior, and that cooperative behavior can be exploited by those who behave rationally.
Rational cooperation is possible in the iterated prisoner's dilemma with an infinite number of rounds.
Even though a cooperative agent can suffer when playing against a defecting opponent, it can do well overall provided it it gets sufficient opportunity to interact with other cooperative agents.
7 Reaching Agreements
Mechanism design is the design of protocols for governing multiagent interaction, such that these protocols have certain desirable properties.
An auction takes place between an agent known as the auctioneer and a collection of agents known as the bidders. The goal of the auction is for the auctioneer to allocate the good to one of the bidders.
Negotiation: agent must reach agreements on the matters of mutual interest.
Argumentation

8 Communication
A certain class of natural language utterances - speech acts - had the characteristics of actions, in the sense that they change the state of the world in a way analogous to physical actions.
The Knowledge Query and Manipulation Language(KQML) is a message-based language for agent communication which define a common format for messages.
The Knowledge Interchange Format(KIF) is a language intended to form the content parts of KQML messages.
Ontologies enable agents to agree on the terminology that they use to describe a domain.
A DTD can be thought of as being analogous to the formal grammars used to define the syntax of programming languages.

9 Working Together
In parallel problem solving, the computational components are simply processors; a single node will be responsible for decomposing the overall problem into sub-components, allocating these to processors, and subsequently assembling the solution. The nodes are frequently assumed to be homogeneous in the sense that they do not have distinct expertise - they are simply processors to be exploited in solving the problem.
The Contract Net (CNET) protocol is a high-level protocol for achieving efficient cooperation through task sharing in networks of communicating problem solvers.

11 Applications
Agent for information retrieval and management
The most obvious difficulty from the point view of human users of the WWW is the 'information overload' problem. People get over-whelmed by the sheer amount of information available, making it hard for them to filter out the junk and irrelevancies and focus on what is important, and also to actively search for the right information.
In short, it is all too easy to become lost in cyberspace. When searching for a particular item of information, it is also easy for people to either miss or misunderstand things.
In multiagent information retrieval systems, each agent typically advertises its capabilities to some broker. Brokers come in several different types. They may be simply matchmakers or yellow page agent.
The goal of interface agents/expert assistants is to make computer programs that in certain circumstances could take the initiative, rather than wait for the user to spell out exactly what they wanted to do. This leads to the view of computer programs as cooperating with a user to achieve a task, rather than acting simply as servants.

Monday, November 2, 2009

Digital signature and encryption

A digital signature or digital signature scheme is a mathematical scheme for demonstrating the authenticity of a digital message or document. A valid digital signature gives a recipient reason to believe that the message was created by a known sender(Authentication), and that it was not altered in transit(Integrity).
A digital signature scheme typically consists of three algorithms:
  1. A key generation algorithm that selects a private key uniformly at random from a set of possible private keys. The algorithm outputs the private key and a corresponding public key.
  2. A signing algorithm which, given a message and a private key, produces a signature.
  3. A signature verifying algorithm which given a message, public key and a signature, either accepts or rejects.


Public-key cryptography

The two main branches of public key cryptography are:


  1. Public key encryption — a message encrypted with a recipient's public key cannot be decrypted by anyone except a possessor of the matching private key -- presumably, this will be the owner of that key and the person associated with the public key used. This is used for confidentiality.
  2. Digital signatures — a message signed with a sender's private key can be verified by anyone who has access to the sender's public key, thereby proving that the sender had access to the private key (and therefore is likely to be the person associated with the public key used), and the part of the message that has not been tampered with.

Monday, October 26, 2009

Artificial neural network

There are three major learning paradigms, each corresponding to a particular abstract learning task. These are supervised learning, unsupervised learning and reinforcement learning. Usually any given type of network architecture can be employed in any of those tasks.

Supervised learning
Tasks that fall within the paradigm of supervised learning are pattern recognition (also known as classification) and regression (also known as function approximation).

Unsupervised learning
Tasks that fall within the paradigm of unsupervised learning are in general estimation problems; the applications include clustering, the estimation of statistical distributions, compression and filtering.

Reinforcement learning
Tasks that fall within the paradigm of reinforcement learning are control problems, games and other sequential decision making tasks.

Application areas include system identification and control (vehicle control, process control), quantum chemistry,[1] game-playing and decision making (backgammon, chess, racing), pattern recognition (radar systems, face identification, object recognition and more), sequence recognition (gesture, speech, handwritten text recognition), medical diagnosis, financial applications (automated trading systems), data mining (or knowledge discovery in databases, "KDD"), visualization and e-mail spam filtering.

Feedforward neural network
The feedforward neural network was the first and arguably simplest type of artificial neural network devised. In this network, the information moves in only one direction, forward, from the input nodes, through the hidden nodes (if any) and to the output nodes. There are no cycles or loops in the network.

Wednesday, October 21, 2009

Petri net

A Petri net (also known as a place/transition net or P/T net) is one of several mathematical modeling languages for the description of discrete distributed systems.
A Petri net consists of places, transitions, and directed arcs. Arcs run between places and transitions, never between places or between transitions. The places from which an arc runs to a transition are called the input places of the transition; the places to which arcs run from a transition are called the output places of the transition.

Places may contain any non-negative number of tokens. A distribution of tokens over the places of a net is called a marking. A transition of a Petri net may fire whenever there is a token at the end of all input arcs; when it fires, it consumes these tokens, and places tokens at the end of all output arcs. A firing is atomic, i.e., a single non-interruptible step.

About Me