Steiner Tree 4+

Reinhard MAENNER

Разработано для iPad

    • Бесплатно

Снимки экрана

Описание

This app computes Steiner trees using an evolutionary algorithm. You can place, drag, and delete points of your tree. The optimal number and position of Steiner points is computed.

A minimal spanning tree (MST) connects a given set of points in a plane so that the sum of all edges is minimal. Often this sum of all edges can be reduced, if additional points are added. These points are called Steiner points, and the corresponding minimal spanning tree Steiner tree. If more than 3 points are given, it is a hard optimization problem to compute the optimal number and position of Steiner points.

This app uses a simple evolutionary algorithm for demonstration purposes. It uses a population of individuals. Each individual represents a MST containing some Steiner points. The population develops towards the optimal Steiner tree in an evolutionary loop: Initially, each individual sets random Steiner points, and constructs the corresponding Steiner tree. The minimal length of the Steiner tree in the population is stored. Each individual has now a fitness value, which is the higher, the closer its Steiner tree length is to the minimal length in the population. Fitter individuals have more descendants by reproduction, and less fit individuals die out. In order to explore better solutions, reproduction does not create descendants that are identical to the parent individual, i.e. do not have their Steiner points at the same position. Rather these positions are shifted randomly by mutation, using a Gaussian distribution. How far they are shifted on average is determined also by their fitness: Good individuals shift their Steiner points less than worse individuals.
How fast a good solution is found, depends thus on the population size, and the mutation strength.

Что нового

Версия 4.3

Minor internal update for newer iOS versions

Конфиденциальность приложения

Разработчик Reinhard MAENNER указал, что в соответствии с политикой конфиденциальности приложения данные могут обрабатываться так, как описано ниже. Подробные сведения доступны в политике конфиденциальности разработчика.

Сбор данных не ведется

Разработчик не ведет сбор данных в этом приложении.

Конфиденциальные данные могут использоваться по-разному в зависимости от вашего возраста, задействованных функций или других факторов. Подробнее

Другие приложения этого разработчика

Вам может понравиться

Metamath
Образование
Nisqually Match
Образование
LineAlgebrArt
Образование
qFt
Образование
Relational Intelligence
Образование
PiBase: Topology
Образование