Friday, August 12, 2005

what is median?

from http://mathworld.wolfram.com/Median.html

The statistical median is an order statistic that gives the "middle" value x^~ of a sample. More specifically, it is the value x^~ such that an equal number of samples are less than and greater than the value (for an odd sample size), or the average of the two central values (for an even sample size).

Tuesday, August 09, 2005

what is middleware

from http://en.wikipedia.org/wiki/Middleware

In computing, middleware consists of software agents acting as an intermediary between different application components. It is used most often to support complex, distributed applications. The software agents involved may be one or many.

The ObjectWeb consortium gives the following definition of middleware: "In a distributed computing system, middleware is defined as the software layer that lies between the operating system and the applications on each site of the system."

F2F P2P

from http://en.wikipedia.org/wiki/Friend-to-friend

A friend-to-friend (or F2F P2P) computer network is a particular type of anonymous P2P in which people use direct connections with their "friends". F2F software only allows people you trust (using IP addresses or digital signatures you trust) to exchange files directly with your computer. Then your friends' own friends (and so on) can indirectly exchange files with your computer, never using your IP address.

These networks are also called private P2P though they can grow in size without compromising the users anonymity.

Byzantine General's Problem

from http://en.wikipedia.org/wiki/Byzantine_failure

Byzantine refers to the Byzantine Generals' Problem, an agreement problem in which generals of the Byzantine Empire's army must decide unanimously whether or not to attack some enemy army. The problem is complicated by the geographic separation of the generals, who must communicate by sending messengers to each other, and by the presence of traitors amongst the generals. These traitors can act arbitrarily in order to achieve the following aims: trick some generals into attacking; force a decision that is not consistent with the generals' desires, e.g. forcing an attack when no general wished to attack; or so confusing some generals that they never make up their minds. If the traitors succeed in any of these goals, any resulting attack is doomed, as only a concerted effort can result in victory.

The Byzantine failure assumption models real-world environments in which computers and networks may behave in unexpected ways due to hardware failures, network congestion and disconnection, as well as malicious attacks. Byzantine failure-tolerant algorithms must cope with such failures and still satisfy the specifications of the problems they are designed to solve. Such algorithms are commonly characterized by their resilience t, the number of faulty processes with which an algorithm can cope.

Many classic agreement problems, such as the Byzantine Generals Problem, have no solution unless t<n/3, where n is the number of processes in the system.

Wednesday, August 03, 2005

Golden section search

From Wikipedia, the free encyclopedia.

Diagram of a golden section search
Enlarge
Diagram of a golden section search

The Golden section search is a technique for finding the extremum (minimum or maximum) of a mathematical function, by successively narrowing brackets by upper bounds and lower bounds.

The diagram on the right illustrates the technique for finding a minimum. The functional values of f(x) are on the vertical axis, and the horizontal axis is the x parameter. The value of f(x) has been evaluated at the three points: x1, x2, and x3.

Since f2 is smaller than either f1 or f3, it is clear that a minimum lies inside the interval from x1 to x3.

The next step in the minimization process is to evaluate the function at a new value of x, namely x4. It is most efficient to choose x4 somewhere inside the largest interval, i.e. between x2 and x3. From the diagram, it is clear that if the function yields f4a then a minimum lies between x1 and x4 and the new triplet of points will be x1, x2, and x4. However if the function yields the value f4b then a minimum lies between x2 and x3, and the new triplet of points will be x2, x4, and x3. The question is, how to choose the value of x4?

Whatever choice method is in use, it was also used to pick the position of x2. We postulate that we would like the same proportions of spacing as we have before the choice. In other words, if f(x4) is f4a and our new triplet of points is x1, x2, and x4 then we want:

\frac{c}{a}=\frac{a}{b}

However, if f(x4) is f4b and our new triplet of points is x2, x4, and x3 then we want:

\frac{c}{b-c}=\frac{a}{b}

Solving for c yields:

\left(\frac{b}{a}\right)^2=\frac{b}{a}+1

or

\frac{b}{a}=\varphi

where φ is the golden ratio:

\varphi= \frac{\sqrt{5}+1}{2}= 1.618033989\ldots

From which the search algorithm gets its name.