На главную Наши проекты:
Журнал   ·   Discuz!ML   ·   Wiki   ·   DRKB   ·   Помощь проекту
ПРАВИЛА FAQ Помощь Участники Календарь Избранное RSS
msm.ru
Страницы: (10) [1] 2 3 ...  9 10 все  ( Перейти к последнему сообщению )  
> вырастим искусственный интеллект!! , эволюция по ламарку
    Официальный сайт проекта - http://erg.biophys.msu.ru/lamarckathome/forum/ . В настоящее время проводится альфа-тестирование.



    Здравствуйте!

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

    Как вы, наверное, знаете из школы, Дарвин учит, что живые организмы (далее ЖО) подвергаются действию естественного отбора, в результате которого часть из них передаёт свой генотип в следующее поколение, а другая часть подыхает, и в результате мы имеем выживание наиболее приспособленных ЖО. Поскольку признаки организма передаются потомкам с генами, потомки наследуют приспособленность к данной среде обитания. Среди них также происходит естественный отбор и т. д. Поскольку мутации неизбежны, генотипы (и фенотипы) особей меняются, причём среди мутаций могут попадаться как плохие, так и хорошие, которые будут иметь преимущество в естественном отборе, и таким образом происходит изменение генофонда популяции, которое и принято называть эволюцией (точнее микроэволюцией). Таков в общих чертах процесс, согласно современной науке сгенерировавший всё современное биологическое разнообразие, включая нас с вами и наш с вами интеллект.

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

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

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

    Это был небольшой экскурс :rolleyes: . Теперь обратимся к компьютерному моделированию процесса эволюции. Как известно, этой проблемой занимается отрасль под названием «генетические алгоритмы». Здесь эта тема уже обсуждалась и дано хорошее описание генетические алгоритмы (сообщение #446100) , но я решил, что предмет моего повествования не вписывается в данный топик. В терминологии вышеупомянутой статьи всё, о чём я буду вести разговор, касается генетического программирования - автоматического составления программ с использованием эволюционных алгоритмов. Как известно, успехи в этой области весьма скромны, по крайней мере, я не слышал о коммерческом применении подобных методов. Попробуем понять, почему.

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

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

    Но дальше возникает такой вопрос: как производить рекомбинацию? Если мы изберём некоторую конкретную схему, то она с очень большой вероятностью окажется неоптимальной или откровенно неудачной, или сначала удачной, а потом ситуация изменится и она станет неэффективной. Обратимся снова к матери природе. У реальных ЖО все процессы, связанные с передачей генетической информации (половой процесс, поиск полового партнёра и даже бесполое размножение), происходят за счёт самого организма, а это значит, что сам ЖО волен выбирать, как ему изменять свой геном, комбинировать его с чужим и размножаться. И эти процессы у конкретного организма идут так, как это было выгодно в ходе эволюции. Посему следует задавать конкретный закон только для смерти и предоставить организмам возможность самим выбирать механизм рекомбинации, полового процесса и размножения, оставить только некоторый базовый уровень мутаций. Несомненно, бесконечного размножения допустить нельзя, поэтому надо разумным образом ограничить рождаемость. Кстати говоря, такой подход называется не иначе, как эволюционной теорией Ламарка: наследственная изменчивость происходит по воле самого организма. Именно это отличает мою идею от всех мне известных, и поэтому я вынес в подзаголовок выражение «эволюция по Ламарку». Кстати, если вы заметили, такая концепция не противоречит дарвиновской теории, а потому противопоставлять Дарвина и Ламарка не имеет смысла.

    Существует ещё одна проблема: помимо географического разнообразия, в живой природе существует и экологическое разнообразие, то есть на малой площади существует множество экологических ниш, и на этой площади могут жить тысячи разных видов. Более того, существует понятие «дифференциация экологических ниш», то есть организмы могут создавать новые ниши, в них поселяться новые организмы и т. д. И это несводимо к простому увеличению множества решаемых задач, ибо не появляется возможность жить иным способом, кроме как решая задачу, а число задач всегда ограничено. Этот вопрос я ещё не решил.

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

    Языком, на котором пишутся организмы, предлагаю сделать Форт (см. подпись). Для такого использования он хорош тем, что обладает предельно простым синтаксисом и в то же время компактен и выразителен. Каждый организм будет представлен исходниками (генотипом) и откомпилированной частью (фенотипом). Все организмы должны исполняться в многопоточном режиме (один организм - один поток) для облегчения контроля за временем.

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

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

    Интерфейс между организмом и задачей ещё надо продумать, в общих чертах он таков. Должны быть средства получения условия задачи (исходников на форте) и сообщения системе решения. В условии задачи должна определяться зависимость вознаграждения (в виде процессорного времени) от найденного решения и от других условий, например, вознаграждение может уменьшаться с ростом числа правильных ответов, т. е. задача будет обесцениваться. Если возможно несколько вариантов задач, следует предусмотреть возможность выбора задачи организмом.

    Вот, собственно, и вся моя идея. Посредством таковой я надеюсь создать искусственный интеллект (или искусственную жизнь, смотря как назвать). И назвать проект «lamarck@home» (по аналогии с «darwin@home»).

    На настоящем этапе мне нужна помощь в следующем:

    1. Организовать многозадачность и сделать замкнутую виртуальную машину для организма. Критерия два: чтобы она работала побыстрее и чтобы надёжно отгораживала адресное пространство.
    2. Написать модуль работы с интернетом. Ибо я в этом вопросе ни бум-бум.

    Когда эти два вопроса (или хотя бы первый) будут решены и движок будет написан, надо будет решать следующие задачи (но думать над ними можно уже сейчас):

    3. Решить вопрос с дифференциацией экологических ниш.
    4. Придумывать (и соответственно кодировать) различные задачи.
    5. Возможно, вручную программировать особей.
    6. Очень желательно заняться раскруткой настоящего проекта. Конечно, цивилизованными методами, без применения спама и прочих «заработай реальные деньги». Хотя бы сайт сделать. Опять же, я в этом вопросе ни бум-бум.

    Если у вас есть желание участвовать в проекте или чем-либо помочь, буду благодарен.

    Настоятельно рекомендую перед участием в обсуждении ознакомиться хотя бы с пунктом 0 литературного списка.

    Литература

    0. Ваш покорный слуга. История и основные концепции науки об искусственном интеллекте
    1. Учебник по биологии за 11 класс (фактически любой)
    2. Р. Докинз. Эгоистичный ген
    3. В. Г. Редько. Эволюционная кибернетика
    4. Д. С. Чернавский. Белок-машина
    5. Л. Броуди. Способ мышления - Форт
    6. Ю. В. Чайковский. Что такое молекулярный ламаркизм
    Сообщение отредактировано: Обедающий философ -
      Как то все слишком сложно!
      2 warmball:
      не очень понимаю в чем смысл использования большого количества компьютеров?? тем более существенно разных задач. Ведь в природе внешние условия меняются постепенно и гладко, а задачи врядли будут настолько мало отличаться что будет проявляться хоть какая то приспосабливаемость...

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

      Так что я пришел к выводу что надо эмулировать поведение организмов не языком, а нейронной сеткой!

      2 all: Предлагаю сначало просто обсудить как можно соеденить генетическое программирование с нейронными сетями... потому что я думал над этим вопросом и так и не пришел к решению какая должна быть эта нейронная сеть чтобы она могла приспосабливаться...

      ЗЫ да кстати программа о которой я говорил осталась, и впринципе я могу ее выложить если кому интересно только она под дос..
        ух ё!!! я все не читал!! времени не было!!
        Может не в тому попаду, но все же..
        Но мое мение что ИИ должен работать на уровне свойств обектов! ИИ должен знать свойсва обектов и знать систему их взаимодействия т.е. работать и влиять на систему свойств объктов. Так же знасть пренадлежность свойств к обектам(что б не подсунули ни чего лишнего). А так просто сказать ему " - это вот стул, это вот цвет черный, это вот железка", так не льзя. Не зная простейшей-подробной информации о этих объектах, его можно очень просто обмануть или чего хуже, ИИ не будет воспринимать эти объекты т.е не знать что с ними делать и для чего они вообще нужны!

        С уважением Максим.
          Хех! Кто читал Стругацких, "Понедельник начинается в субботу", помнит, на что применялись
          дубли. Делали работу, которую мог бы делать и их создатель, только лучше. Но только ее. Вот
          зачем всякие ИИ и нужны. Делать то, что могли бы делать и мы, если бы не влом.

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

            Но вот не нашел такой простой вещи .. как же всётаки этот интеллект будит решать задачу ..

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

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

              Цитата shob_vas @
              Krasher убил тему своими коментариями на пол страницы которые абсолютно невозможно осилить никакому вообще интелекту =) не искуственному ни тем более человеческому

              попытаюсь оживить 8-)

              Цитата Coala @
              До сих пор еще никто не опроверг мысль Артура Кларка о том, что производить органические мозги при помощи неквалифицированной рабочей силы дешевле,
              чем создавать ИИ

              зато создавать ии интереснее :P не сочтите меня за извращенца

              Цитата Зверуга @
              Любой ИИ есть машина Тьюринга с бесконечным числом внутренних состояний и бесконечной лентой.

              это утверждение не доказано, стало быть, любые выводы из него совершенно безосновательны.

              Цитата Зверуга @
              Все, что ты описал выше, есть всего лишь обвертка к тому, что носит название машина Тьюринга.

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

              Цитата shob_vas @
              не очень понимаю в чем смысл использования большого количества компьютеров?? тем более существенно разных задач. Ведь в природе внешние условия меняются постепенно и гладко, а задачи врядли будут настолько мало отличаться что будет проявляться хоть какая то приспосабливаемость...

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

              Цитата shob_vas @
              Кроме того могу вас заверить что я уже пробовал сэмулировать эволюцию орагнизмов , геномом которых является специально созданный элементарный язык. Однако ни к чему хорошему это не привело, полезные мутации так и не возникли (хотя возникали те которые приводили к временным приимуществам...).

              Так что я пришел к выводу что надо эмулировать поведение организмов не языком, а нейронной сеткой!

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

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

              Цитата shob_vas @
              ЗЫ да кстати программа о которой я говорил осталась, и впринципе я могу ее выложить если кому интересно только она под дос..

              хочу!

              Цитата maxim84_ @
              Но мое мение что ИИ должен работать на уровне свойств обектов!

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

              Цитата Div @
              Но вот не нашел такой простой вещи .. как же всётаки этот интеллект будит решать задачу ..

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

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

              и ещё преимущество предлагаемого подхода: можно писать организмов (и просто куски "неживого" кода, например, библиотеки полезных функций) вручную. таким образом можно, например, проверять жизнеспособность своих идей или встраиваемость внешнего кода в организмы.
                Вот эта программа о которой я говорил
                http://www.gamedev.ru/download/?id=2558
                Почему то правда некоторые говорили что она не запускается, но у меня все нормлаьно работает даже под ВинХР!
                  Надо заметить, что в реальном мире борьбу за выживание вели миллиарды особей в течение миллиардов лет. Одна машина подобные масштабы не потянет, да и тысяча вряд ли.
                    господа! давайте по существу! если у вас есть просто желание поделиться своими мыслями - была тут где-то тема про искусственый интеллект. Искусственный интелект заодно и узнаете чужие мнения и поймёте, что вы не одиноки. а тут желательно высказываться только по поводу данного конкретного проекта. то есть высказывания могут быть только трёх типов: либо вам проект не нравится, и вы это аргументированно доказываете, либо нравится, и вы предлагаете свою помощь (что, к сожалению, случается редко), либо вы предлагаете какое-либо усовершенствование.

                    собственно говоря, помощь требуется по следующим направлениям:
                    1. написать модуль работы с интернетом. ибо я в этом вопросе ни бум-бум.
                    2. организовать многозадачность и сделать замкнутую виртуальную машину для организма.
                    3. решить вопрос с дифференциацией экологических ниш (см. первый пост).

                    Цитата shob_vas @
                    Вот эта программа о которой я говорил
                    http://www.gamedev.ru/download/?id=2558
                    Почему то правда некоторые говорили что она не запускается, но у меня все нормлаьно работает даже под ВинХР!

                    у меня она тоже работает. часом не тмт паскаль? можешь её описать поподробнее? есть исходники? помимо всего прочего, там ещё такой недостаток: она при выходе не сохраняет плодов своего творчества, плюс генерирует всегда одно и то же.
                    Цитата amk @
                    Надо заметить, что в реальном мире борьбу за выживание вели миллиарды особей в течение миллиардов лет. Одна машина подобные масштабы не потянет, да и тысяча вряд ли.

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

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

                      Добавлено
                      Что нам известно о прототипе?

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

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

                        Да, тмт паскаль 3.9. Я ее описал достаточно подробно, см выше, если чго-то интересует, задавай конкретные вопросы, отвечу. Отсутствие save'а это не недостаток а недоделка. Просто ничего нового эта прога так и не стала создавать и мне неохото стало доделывать ее...
                          Я тут достаточно давно высказывал кое какие идеи по сабжу и приводил свою програмку написаную под Дос. Программу я переделал под Виндоус и сделал из нее скринсейвер, если интересно Скринсейвер iVolution
                            shob_vas
                            Искуственный интелект нужно не выращивать, а писать. То что предлогаешь ты это ГА. Я предлогаю совершенно другой подход.
                            Мы просто программируем. Создаем основные блоки эти блоки должны быть взаимо связанны причем четко, формально. Но такой алгоритм не приведет к должным результатом. Поэтому помимо четкого алгоритма должен быть блок который создовал бы не формальное мышление. Они должны конкурировать между собой. Для этих целий создается 3 слойная нейронная сеть, но с динамически изменяемым входных и выходных параметров. Число входных параметров растетет с развитием интелекта. В идеальном случии НС должна быть рекурсивной, но за основу возьмем рекурсию только 2 уравня. Основная задача НС выбор блока и выбор метода из блока. Для улучшения алгоритма используются все тежи ГА.
                            Для чего все это нужно. Все очень просто перед ИИ стоит формальная задача илиже не формальная. Так вот для контроля такой системы мы можем использовать коэфицент предпочтения который будет скланять систему к более послушнему состоянию. Или проявление непредсказуемости. Оптимальный вариант держать по середине. Это поможет охватить широкий круг задачь. При этом такая модель больше похожа на мышление человека.Есть Левосторнние и Правосторнние люди но у тех и удругих задействованы обе системы только у одного в большей степени преоблодает одно у другого другое.

                            Назначение моего ИИ решение задачь:Математических, физических и др. Для таких целий подходит формальный подход. Но перед тем как решить задачу искуственный интелект должен перевести с человеческого описания задачи, а это уже не формальное мышление, не тривиальная задача.

                            Рендом зависящий от времени хорошей генератор. При условии что компьютер будет во время эксперементов, также задействован в различных нуждах. Так как даже один эксперемент длить конечное время. То он будет зависеть от многих факторов.
                              Цитата A.I. @
                              А если по существу: давайте уж распределять кто что будет делать.

                              ну для начало нуна описать схему работы. Что, как и когда.
                                Коллеги, вы не учитываете одного факта! ЭВОЛЮЦИЯ - ЭТО НЕ РАЗВИТИЕ ОТ ПРОСТОГО К СЛОЖНОМУ. Если внезапно на Земле пропадет почти весь кислород, выживут самые приспособленные - простейшие бактерии, а все остальные животные вымрут! И это тоже будет ЭВОЛЮЦИЯ! Не надо смешивать интелект и приспособляемость!
                                0 пользователей читают эту тему (0 гостей и 0 скрытых пользователей)
                                0 пользователей:
                                Страницы: (10) [1] 2 3 ...  9 10 все


                                Рейтинг@Mail.ru
                                [ Script execution time: 0,0701 ]   [ 15 queries used ]   [ Generated: 16.04.24, 14:05 GMT ]