На главную Наши проекты:
Журнал   ·   Discuz!ML   ·   Wiki   ·   DRKB   ·   Помощь проекту
ПРАВИЛА FAQ Помощь Участники Календарь Избранное RSS
msm.ru
Страницы: (10) « Первая ... 3 4 [5] 6 7 ...  9 10 все  ( Перейти к последнему сообщению )  
> вырастим искусственный интеллект!! , эволюция по ламарку
    Ну что ж, wormball. Мне интересно: как ты парируешь мой следущий выпад в сторону теории эволюции и, соответсвенно, в твоё видение ИИ.

    Генетические мутации являются движущим фактором эволюции и по своей природе случайны. Особь может приобретать как хорошие так и плохие гены, хотя для обьективного суждения нужна функция качества гена.
    В качестве примера возмём антилопу c некоторым геном, отвечающим за длину ног антилопы. Функцией качества гена антилопы будет гепард: чем длинее ноги у антилопы, тем труднее гепарду догнать её. Но с другой стороны антилопа является функцией качества для гена гепарда: чем длинее ноги у гепарда, тем легче ему догнать антилопу. Итак имеем:

    Выражая изменение гена, отвечающего за длину ног антилопы и гепарды в числовом диапазоне от -1 до 1, мы будем иметь, учитывая, что генетические мутации случайны, равнораспределенную случайную числовую последовательность (РСЧП) как для гена антилопы так и для гепарда. Тепер, обазначим за А РСЧП антилопы а за G - гепарда. Тогда:
    Цитата Условие

    если An < Gn, то Gn
    если An > Gn, то An


    Но так как A и G - РСЧП, то результат применения, описанного выше, условия, тоже будет РСЧП а это значит, что ни у антилопы, ни у гепарда, не будет происходить изменение гена(эволюция отсутсвует), отвечающего за длину ног.

    PS
    Не совсем корректно обьяснил с математической точки зрения, но суть, я надеюсь, понятна.
      Любопытно, почему же автор темы (Wormball) желает все-таки не решать практические задачи, а изучать самоорганизацию? Какие основания для этого могут быть?
        Цитата Зверуга @
        Не совсем корректно обьяснил с математической точки зрения, но суть, я надеюсь, понятна.

        Суть абсолютно непонятна. То немногое, что я из твоего повествования вынес, говорит лишь об отрывочном и превратном понимании тобой данной области.

        Цитата neurofish @
        Любопытно, почему же автор темы (Wormball) желает все-таки не решать практические задачи, а изучать самоорганизацию? Какие основания для этого могут быть?

        А для чего вообще производятся фундаментальные исследования? По-моему, это очевидно - без фундаментальных исследований невозможно движение вперёд.
          Цитата

          А для чего вообще производятся фундаментальные исследования? По-моему, это очевидно - без фундаментальных исследований невозможно движение вперёд.

          вы, как я вижу, собираетесь провести некий эксперимент в рамках фундаментальных исследований. Есть ли у вас теория, модель, которую вы собираетесь проверить, конкретный вопрос, ответ на который даст эксперимент? Или же это эксперимент наудачу - "посмотрим,что будет"?

          Каковы критерии достижения результата? Когда нужно будет остановиться?

          Почему эксперимент именно таков? Есть те же клеточные автоматы, они проще и нужные свойства отражают, почему нельзя использовать модификацию одного из них?
            Цитата neurofish @
            вы, как я вижу, собираетесь провести некий эксперимент в рамках фундаментальных исследований. Есть ли у вас теория, модель, которую вы собираетесь проверить, конкретный вопрос, ответ на который даст эксперимент? Или же это эксперимент наудачу - "посмотрим,что будет"?

            Первый пост плюс схема на гугле. По-моему, я достаточно внятно объяснил. Если есть конкретные вопросы по существу - задавайте.

            Цитата neurofish @
            Почему эксперимент именно таков?

            То же самое.

            Цитата neurofish @
            Каковы критерии достижения результата? Когда нужно будет остановиться?

            Формальных критериев, конечно, нет. Когда агенты будут решать новые задачи достаточно быстро. Остановиться - когда всё будет ясно. Скорее всего, такого никогда не случится.

            Цитата neurofish @
            Есть те же клеточные автоматы, они проще и нужные свойства отражают, почему нельзя использовать модификацию одного из них?

            Насколько я читал про клеточные автоматы - они суть словоблудие. Если вы объясните мне пользу теории клеточных автоматов (особенно в свете настоящего проекта), я буду вам безмерно благодарен.
              Итак, я снова хочу таки начать реализовывать настоящий проект 8-)

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

              - Borland Delphi (версия?)
              - Borland C++ Builder (версия?)
              - MS Visual C++/C# (версия?)
              - ещё что-то (бесплатное?)

              Критерии выбора ИДЕ следующие:

              1. Лёгкость в изучении. Я доселе никогда с подобными ИДЕ не сталкивался. Единственное предпочтение - паскаль мне как-то больше по душе, нежели С/С++.
              2. Желательно наличие (в составе ИДЕ или в инете) готовых модулей для работы с графикой, сетью и т. п., и чтобы ими было удобно пользоваться.
              3. Наличие сколько-нибудь большого количества разработчиков, потенциально могущих влиться в проект. Или наличие хотя бы ненулевого количества людей, готовых влиться уже сейчас ;)
              4. Конечно, желательно побольше скорость выполнения/компиляции и поменьше размер выдаваемого экзешника.

              Итак, исходя из вышеперечисленных пунктов и специфики настоящего проекта, какое ИДЕ бы вы мне порекомендовали?

              Заранее благодарен.
                Предложил бы Java, если здесь ява-программеров не наберешь, советую обратиться на винград, они там с жиру бесятся, не знают, куда руки приложить, причем кое-что совместно уже реализовывали.

                Но на данном этапе язык - еще неважно. Обрисуй ВЕСЬ проект, т.е.
                - цель
                - важные элементы проекта
                - шаги/этапы от начала до конца
                Шагов желательно от 3 до 7, не более, но чтобы они охватывали собой всю реализацию, после чего остается лишь нажать кнопку "Пуск".

                Сделаешь такой план, опубликуешь, и он будет твоим каркасом, на который будешь наращивать мясо.
                И людям будет более понятно, что им предстоит с тобой.
                  Цитата Тайлер @
                  Предложил бы Java

                  Насколько я понимаю, ява сама в виртуальной машине исполняется. А если я ещё одну виртуальную машину надстрою, будет медленнее не в 10, а в 100 раз. Не надо мне такого счастья.

                  Цитата Тайлер @
                  Но на данном этапе язык - еще неважно.

                  Почему же? Когда ещё задумываться о языке, если не перед началом кодирования? В фазе проектирования проект и так провалялся почти два года, пора бы уже и честь знать.

                  Цитата Тайлер @
                  Обрисуй ВЕСЬ проект, т.е.
                  - цель
                  - важные элементы проекта
                  - шаги/этапы от начала до конца
                  Шагов желательно от 3 до 7, не более, но чтобы они охватывали собой всю реализацию, после чего остается лишь нажать кнопку "Пуск".

                  Так я вроде бы обрисовал. С момента первого поста концепция фактически не изменилась. Хотя, наверное, первое сообщение слишком длинно, чтобы его асилить. Вот, можно, например, так сказать:

                  Цитата
                  - цель

                  Цель - получить искусственный интеллект. :)

                  - сущность проекта

                  Проект заключается в моделировании эволюции компьютерных программ ("агентов") на основе всем известной теории эволюции дедушки Дарвина. Агенты живут в своём виртуальном мире, могут размножаться, мутировать и умирать, посему борются за существование. Агенты представляют собой программы на языке Форт. Каждый агент выполняется в своей виртуальной машине. Агенты решают задачи .... ну невозможно суть проекта уместить в один экран, хоть ты тресни. :wall: :wall: :wall: :wall: По-хорошему, чтобы до конца понять суть проекта, надо прочитать всё, что я написал, плюс весь список литературы.

                  Хорошо, подойдём с другой стороны. Опишем, как будет это выглядеть со стороны рядового пользователя (точнее участника проекта - проект не для пользы конкретного индивидуума, а для науки, хотя от процесса тоже можно получить определённое удовольствие).

                  Итак, человек (для наглядности назовём его Васей) в один прекрасный день натыкается на сайт настоящего проекта, который заманивает его сладкими обещаниями о возможности внести посильный вклад в мировую науку и попутно получить удовольствие от выращивания искусственных созданий. Очарованный красотой идеи, Вася скачивает предлагаемую программу и устанавливает её на свой компьютер и тут же запускает (в качестве скринсейвера). Оная программа начинает свой нелёгкий труд по осуществлению эволюции. Вася при этом видит красивую картинку, как разноцветные агенты копошатся в своём мире, а сбоку высвечивается радующая глаз статистика о продвижении процесса эволюции во времени. Периодически программа обменивается агентами с другими компьютерами через интернет. Через некоторое время Вася начинает задумываться: а что, собственно, у него такое считается денно и нощно, и как это связано с искусственным интеллектом? Он лезет в настройки программы, пытаясь изменить их так, чтобы эволюция шла быстрее. Он вновь заходит на вышеупомянутый сайт, где знакомится с принципами, лежащими в основе проекта. Вася вспоминает, что он вообще-то программист, и начинает самолично придумывать новые задачи для агентов и новые варианты самих агентов. Вместо того, чтобы программировать очередной сайт, Вася часами просиживает за экраном, наблюдая за эволюцией электронных зверушек и пытаясь понять, почему же написанные им агенты дохнут. На форуме проекта Вася изучает чужой опыт ускорения электронной эволюции и делится своими соображениями на эту тему. Конечно же, всё это время у него на компьютере в фоновом режиме идёт эволюция. Попутно Вася агитирует всех своих знакомых принять участие в проекте, благо для этого не надо прилагать усилий - достаточно просто скачать файл и лицезреть красивую заставку.

                  Вот, собственно, и всё. Подобная цепочка событий будет повторяться многократно, вплоть до победного конца. А про сущность проекта лучше моего первого поста я ещё ничего не придумал.

                  - важные элементы проекта

                  Собственно, элементов всего два: программа и сайт.

                  Программа состоит из следующих модулей:
                  - Виртуальная форт-машина, которая будет выполнять код агентов и задач.
                  - Управляющий модуль, запускающий экземпляры виртуальных машин и координирующий их работу.(возможно, его функции будут в самой ВМ)
                  - Модуль визуализации, возможно модули визуализации для каждой из задач.
                  - Модуль передачи агентов по сети.
                  - Собственно агенты и задачи. Для начала хватит 3-5 задач и одного варианта агента.

                  Сайт:
                  - Описание сущности проекта, документация.
                  - Раздел "скачать": собственно система, варианты агентов, различные задачи.
                  - Форум.
                  - Возможно, некоторый серверный модуль для обеспечения передачи агентов по сети.

                  - шаги/этапы от начала до конца

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

                  Так сойдёт? Или надо что-то другое?

                  Какое всё-таки ИДЕ брать?
                    Цитата wormball @
                    Какое всё-таки ИДЕ брать?

                    Если для виртуальной машины важна скорость - то однозначно ИДЕ C/C++, Intel C Compiler отлично оптимизирует, т.ч., к великому сожалению, Делфи с Билдером (включая самые последние версии) идут лесом, причём лесом очень тёмным и глухим...
                    Сообщение отредактировано: ors_archangel -
                      Цитата ors_archangel @
                      Если для виртуальной машины важна скорость - то однозначно ИДЕ C/C++, Intel C Compiler отлично оптимизирует, т.ч., к великому сожалению, Делфи с Билдером (включая самые последние версии) идут лесом, причём лесом очень тёмным и глухим...

                      А ИДЕ у интела есть? В принципе можно ВМ отдельно интелом скомпилировать, хотя вряд ли будет коренной прирост скорости. Вообще у меня впечатление, что 90% людей программирует на M$, стало быть, я склоняюсь к M$. Но какой версии? Или всё-таки борланд..... Он сильно проще в освоении?

                      Завтра (сегодня :wall: ) в многошум пойду спрашивать.
                        Цитата wormball @
                        Так сойдёт? Или надо что-то другое?
                        Ага, хорошо :)

                        На яву зря катишь, по производительности она сравнима с тем же С++, конечно смотря где и смотря как, но в твоем случае - особенно (подробности в холиваре Java vs C++). За то код получишь более читабельный и красивый, да и программировать проще - больше концентрируешься на задаче, а не на деталях машинной имплементации.

                        Хотя вообще, раз ты - лидер проекта, то язык должен быть тот, в котором ты шаришь. Иначе удержать контроль над происходящим будет тяжело.
                        Поэтому - почему бы не паскаль?
                          Цитата Тайлер @
                          На яву зря катишь, по производительности она сравнима с тем же С++,

                          Ээээээээээээээ........ можно сцылку?

                          Цитата Тайлер @
                          Хотя вообще, раз ты - лидер проекта, то язык должен быть тот, в котором ты шаришь. Иначе удержать контроль над происходящим будет тяжело.
                          Поэтому - почему бы не паскаль?

                          Так в том-то и прикол, что я ни в одном из "попсовых" ИДЕ не работал.

                          Кстати, я таки начал реализовывать виртуальный форт - по совету тов. DJ KARIES я сделал выбор в пользу Turbo Delphi 2006. Написал уже почти 1000 строк кода (на пару с дельфёй :lol: ).
                            Цитата wormball @
                            Ээээээээээээээ........ можно сцылку?
                            Че-то лень искать, на винграде в факе явовом тоже есть сравнение.

                            Цитата wormball @
                            Кстати, я таки начал реализовывать виртуальный форт - по совету тов. DJ KARIES я сделал выбор в пользу Turbo Delphi 2006. Написал уже почти 1000 строк кода (на пару с дельфёй ).
                            Во, Кариеса тебе в руки! Пусть пишет с тобой, успех гарантирован =)
                            То есть начал уже писать виртуальную машину-среду?
                              Цитата Тайлер @
                              Во, Кариеса тебе в руки!

                              Ага, так он мне и дался. Он только советовать горазд :lol:

                              Цитата Тайлер @
                              То есть начал уже писать виртуальную машину-среду?

                              :yes: :yes: :yes: :yes:
                                Цитата wormball @
                                Ага, так он мне и дался. Он только советовать горазд
                                А четак? По мне так успешный программер, с широким портфолио наработок...
                                1 пользователей читают эту тему (1 гостей и 0 скрытых пользователей)
                                0 пользователей:
                                Страницы: (10) « Первая ... 3 4 [5] 6 7 ...  9 10 все


                                Рейтинг@Mail.ru
                                [ Script execution time: 0.0966 ]   [ 14 queries used ]   [ Generated: 26.08.26, 01:03 GMT ]