Ru-Board.club
← Вернуться в раздел «Прикладное программирование»

» Эволюция в виртуальной машине

Автор: Crazy_Shrike
Дата сообщения: 08.07.2004 15:13

Цитата:
Если существо двигалось медленно и при этом жило долго - оно родит много потомков со схожими хромосомами. То есть больше медленных существ. В этом суть


Одна маленькая проблемка... В чем суть, там, кажется, не написано.... или я не догнал...
Автор: UncoNNecteD
Дата сообщения: 09.07.2004 01:19
Crazy_Shrike
Суть в жизни. Если из за медленности существо живет круче - то оно даст больше потомков, которые разовьют эту идею.
Автор: ppch
Дата сообщения: 09.07.2004 12:48
Разрешите и мне присоединиться к вашей дискуссии.
Этой задачей я интересуюсь уже лет так 10, так что может мои мысли окажутся для вас полезны.
1. ИМХО, сложно создать эволюцию, создавая в ней "жителей". Необходимо создать _среду_, достаточную для возникновения жизни.
Что я имею в виду.
а) Нет четкой границы между живым и неживым объектом. Например, цветок в вазе это живой организм? А пол червяка? А высохшая травинка?
б) Признаки живого организма появляются только под воздействием среды обитания.
в) Следовательно необходимо создать _среду_, под воздействием которой через некоторое время в ней появятся живые (на наш взгляд) организмы.
Чем сложнее и сбаланисрованнее среда, тем больше шансов, что в ней появиться жизнь (опять же в нашем понимании).
2. Попробую сформулировать отличии живого организма от неживого.
а) Живой организм обладает собственной оболочкой
б) Живой орагнизм обладает механизмом избегать вредных для себя воздействий
в) Все живые механизмы объединены в сообщества, назначение которых это конкуренция, для воспроизводства только наиболее жизнеспособных.
Важный вывод: не бывает живого объекта в единственном экземпляре. Где то рядом должны быть сходные объекты.
3. Эволюцию удобно строить исходя из теории систем. Как известно, система может быть устойчивой, неустойчивой и безразличной. Устойчивая система возвращается в исходной состояние под некоторым воздействием. Можно сказать, что живой объект - это устойчивая система (упрощенно).
4. Введя понятие _подсистемы_, мы можем построить математическую модель нашей _среды_ (очень упрощенно). Итак _мат. модель среды_ это набор подсистем (возможно пересекающихся) с заданными свойствами (например масса, цвет, температура, жидкое, твердое, вектор сорости и т.д.) Например, я это подсистема системы _люди_. А _люди_ это подсистема системы _животные_ и т.д. Наша _среда_ - это тоже система.
5. Далее необходимо ввести _законы изменения среды_. Аналог природы - законы физики. Законы эти вообщем то простые (в своей основе). Тяжелое притягивает тяжелое. Жидкое при нагревании испаряется. Вообще-то законы можно придумать свои, не копирую законы физики.
Запрограммировав среду и законы ее изменения, мы запускаем эволюцию.
Чем сложнее и сбаланированнее будет среда, тем выше будет уровень жизни.

Извините если все это не в тему.

Автор: beeos
Дата сообщения: 09.07.2004 17:04

Цитата:
Извините если все это не в тему.

Почему же, в тему... Только как это запрограммировать? хотя бы примерно? я имею в виду среду. Какими объектами оперировать, по какому принципу живые существа и неживые объекты будут "возникать" в среде?
Автор: ppch
Дата сообщения: 10.07.2004 13:16
beeos
Самый простой пример - игра "жизнь". Это там где сначала кубики выставляешь, а потом в зависимости от расклада некоторые кубики умирают, а некоторые наоборот рождаются.
Тут есть _среда_ - неограниченное поле с клеточками. Клеточка имеет два _состояния_ - занято или свободно. И есть _законы изменения среды_ - это правила "рождения" и "умирания" клеточек.

Эта игра - самая простая реализация эволюции. Но теоретически оно верное.
Вот если попытаться усложнить понятия среды, разнообразить законы ее изменения, придумать кучу разных состояний у среды, то из первоночального хауса может зародиться какое-то подобие системы и возможно мы даже увидим что-то похожее на жизнь в нашем понимании.

Чем сложнее и разнообразнее среда, тем выше уровень жизни.

Теперь конкретно.
Думаю что среду нужно делать трехмерной.
Каждая ячейка C(x,y,z) обладает набором свойств и их значений {s1=v1, ..., sn=vn}. Это могут быть: масса, прочность, температура, вектор скорости, твердость, цвет, энергия, и т.д.
Законы изменения - это самое сложное. Для начала я думаю стоит попробовать "скопировать" законы физики за курс средней школы

Реализация этого всего мне кажется не будет очень сложной задачей.
Проблемы которые я вижу, это прежде всего дискректность работы компьютера, т.е. придется высчитывать следующее состояние сразу для всей "вселенной", а не последовательно для каждой ячейки.
Другая проблема - это ресурсоемкость. Эволюция может безбожно жрать ресурсы, и время, необходимое для появления жизни может быть непредсказуемо большим.

Кстати нужна будет еще и программа-монитор для наблюдением за всем эти счастьем

Автор: Crazy_Shrike
Дата сообщения: 11.07.2004 03:16
Ого... На три месяца раздумий... Большое спасибо...
Автор: UncoNNecteD
Дата сообщения: 13.07.2004 00:02
А помоему ничего нового...
Автор: beeos
Дата сообщения: 13.07.2004 09:35
Ну что, с чего начали, к тому и вернулись Кто первый будет радовать практическими результатами? Сразу скажу -- мне к сожалению пока похвастаться нечем...
Автор: UncoNNecteD
Дата сообщения: 14.07.2004 02:01

Цитата:
Ну что, с чего начали, к тому и вернулись

вот вот

Crazy_Shrike
Как твои успехи в программировании?
Автор: taiwan
Дата сообщения: 23.03.2009 05:48
Может имеет смысл поизучать нейронные сети? Это единственная технология на сегодняшний день, которая не имеет толкового объяснения своей работоспособности. Имеет задатки интеллектуальности и может делать такие сложные вещи как анализ нечетких данных, выявление скрытых взаимосвязей и т.д. Кстати эта технология применяется во всех системах оптического распознавания текста.
Автор: UncoNNecteD
Дата сообщения: 24.03.2009 00:50
taiwan
Прошло 5 лет и мы вспомнили о нейронных сетях
Это скучно... ну как моделировать мозг или поведение в курятнике, второе явно интереснее, хотя и менее наукоценно может быть.
Crazy_Shrike
Я надеюсь ты совсем не пропал, буду рад продолжить дискуссию... редко я тут, но вот тема всплыла интересная
Автор: delover
Дата сообщения: 26.03.2009 21:39
UncoNNecteD
Что то ты сам на себя не похож... Гы-гы. Курятник - это будущее. Ты для чего рай строишь? Ну Вот - курятник будет. Значит ценнось наибольшая.

Редко ты тут? Тебя вообще не видно, не помню какой у тебя ник вм аське.
Автор: UncoNNecteD
Дата сообщения: 29.03.2009 22:51
delover c возрастом видимо приходит понимание, что мир нам не перевернуть, а рай в курятнике - вполне реализуемая задача.

Заходи общаться ко мне на БОРД.

Страницы: 123456

Предыдущая тема: C++: Построчное чтение файла в Builder


Форум Ru-Board.club — поднят 15-09-2016 числа. Цель - сохранить наследие старого Ru-Board, истории становления российского интернета. Сделано для людей.