Какое отношение имеют шахматные программы к искусственному интеллекту?

Тема в разделе "Машинное отделение", создана пользователем dan77790, 30 май 2010.

  1. dan77790
    Оффлайн

    dan77790 Учаcтник

    Репутация:
    0
    Интересно было бы узнать мнение программеров, интересующихся шахматистов и Хайдука)))
    Если ли в шахматных программах реально хоть крупица ИИ, или это просто такие продвинутые калькуляторы?)
     
  2. Фримен
    Оффлайн

    Фримен Учаcтник

    Репутация:
    7
    :d
    А что вы понимаете под ИИ?
    1.Умение решать сложную интелектуальную задачу.
    2.Самообучаемость.
    3.Умение решать разнотипные интелектуальные задачи..
    4.Исскуственная личность.
    Мне кажется первое полностью отвечает понятию ИИ.
     
  3. dan77790
    Оффлайн

    dan77790 Учаcтник

    Репутация:
    0
    Мне больше второй пункт нравится)
     
  4. Фримен
    Оффлайн

    Фримен Учаcтник

    Репутация:
    7
    Самообучаемость? В движках её нет хотя бы потому что им просто некогда учиться. Они должны всё время работать. А обучение в процессе требует огромных ресурсов для сбора статистики и обработки. Да ещё не эффективно. Для большего эффекта требуется движок по сложности разработки и ресурсоёмкости превосходящий собственно игровой. Возникает вопрос, а зачем? Если программисту легче всё сделать своими руками на базе тестов.
     
  5. Осипов Юрий
    Оффлайн

    Осипов Юрий Учаcтник

    Репутация:
    11
    Когда-то давно пытались дать определение ИИ. Сначала остановились на п.1. Но тут же появились программы, решающие сложные интеллектуальные задачи. Народ почесал репу и сказал: "Нет, это не ИИ". И стали придумывать новые определения. На каждое такое определение находился умелец, который писал программу, которая полностью подходила под новое определение ИИ.
    В конце концов это всем надоело, и кто-то (не помню кто) дал "вечное" определение ИИ:
    "Я не могу дать этому определение, но всегда узнаю его, когда увижу".
     
  6. dan77790
    Оффлайн

    dan77790 Учаcтник

    Репутация:
    0
    Может, и нет никакого ИИ?) да и естественного интеллекта)
     
  7. WildCat
    Оффлайн

    WildCat Коршунов Игорь Команда форума

    Репутация:
    0
    Калькулятор достаточно интеллектуален, чтобы решать поставленные перед ним задачи.
     
  8. просроченый_кмс
    Оффлайн

    просроченый_кмс Старожил

    Репутация:
    6
    Моё мнение - никакого.
     
  9. Schurick
    Оффлайн

    Schurick Старожил

    Репутация:
    6
    При прочтении названия топика вспомнилась известная фраза советского математика Александра Кронрода: «Шахматы — дрозофила ИИ»

    Даже в старых чесбейзовских оболочках Фрица есть опция "обучаемость".

    Что же тогда говорить о программах, построенных с использованием "искусственных нейронных сетей"? SAL, Morph, Neurochess и другие обучаются во время игры. при этом некоторые способны научиться играть с нуля в любую игру где есть два соперника.

    Интересная статья о Neurochess: http://satirist.org/learn-game/systems/neurochess.html
    SAL http://satirist.org/learn-game/systems/sal.html
    Morph http://satirist.org/learn-game/projects/morph.html
    Morph играл в ICC: http://www.chessclub.com/activities/finger.php?handle=morph2 Но, похоже USCS потеряли интерес к развитию проекта.

    Как бы там ни было... Уверен, что использование ИНН достаточно перспективное направление.
     
  10. WinPooh
    Оффлайн

    WinPooh В.М. Команда форума

    Репутация:
    95
    В 50-60-х годах так и было. И свою роль шахматы тогда сыграли.
    Потом оказалось, что шахматы как задача слишком просты - решаются гораздо более примитивными методами, чем построение ИИ.
     
  11. Schurick
    Оффлайн

    Schurick Старожил

    Репутация:
    6
    Простота шахмат обманчива.

    Если бы биологи сконцентрировали свои усилия на выращивании дрозофил для забегов и продаж, а не для опытов, то генетика как наука не далеко бы ушла с тех пор. Но, по такому пути ушло программирование в шахматах...

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

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

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

    Шахматная программа в качестве тренера. Не початый край для создания ИИ.
     
  12. просроченый_кмс
    Оффлайн

    просроченый_кмс Старожил

    Репутация:
    6
    Значит так, какие бы эвристические методы не использовались это просто программа, и не стоит возвышать нейросети, они настолько просты, что это скорее не дрозофиллы а бактерии, и вообще до искусственного интеллекта лет 100 ещё, если он возможен, а к тому времени 3 мировая будет или ещё какая катастрофа и всем будет не до науки.
     
  13. dan77790
    Оффлайн

    dan77790 Учаcтник

    Репутация:
    0
    Да, нейросети мне кажется имеют к ИИ примерно такое же отношение, как и шахматные проги)
     
  14. bankuss
    Оффлайн

    bankuss Александр баннер

    Репутация:
    6
    а вот и правильный ответ :D
     
  15. Schurick
    Оффлайн

    Schurick Старожил

    Репутация:
    6
    Это сарказм или Вы на полном серьёзе делаете такие утверждения? Разве способность к обучению и обобщению, контекстуальной обработки информации, толерантность к ошибкам и др. не является признаком разума? Зачем учёные из разных стран работают над моделированием мозга в рамках Blue Brain Project , если ИНС так просты и не имеют отношения к ИИ?
     
  16. Mustitz
    Оффлайн

    Mustitz баннер

    Репутация:
    36
    Под ИИ обычно понимается набор задач, которые плохо решаются существующими методами, но хорошо решаются человеком. Определение неформальное, скорее можно говорить о совокупности программ и личной точке зрения автора.
     
  17. просроченый_кмс
    Оффлайн

    просроченый_кмс Старожил

    Репутация:
    6
    Разве подбор коэффицентов, изменение их, и проверка на тестах, лучше ли эти коэффиценты или хуже имеет отношение к интеллекту?

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

    просроченый_кмс Старожил

    Репутация:
    6
    Вот я и вывел определение искусственного интеллекта - способность создавать алгоритмы для решения любой задачи.
     
  19. WinPooh
    Оффлайн

    WinPooh В.М. Команда форума

    Репутация:
    95
    Мне больше нравится такое определение, уже не помню откуда:
    Интеллект - это способность не решать, а ставить задачи.
     
  20. просроченый_кмс
    Оффлайн

    просроченый_кмс Старожил

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

    Mustitz баннер

    Репутация:
    36
    Это алгоритмически неразрешимая задача.

    Задача постановки задачи это задача более высокого порядка :)
     
  22. просроченый_кмс
    Оффлайн

    просроченый_кмс Старожил

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

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

    К тому же мы пример разрешимости такой задачи.
     
  23. просроченый_кмс
    Оффлайн

    просроченый_кмс Старожил

    Репутация:
    6
    И для этого надо жить в физическом мире и иметь какие то потребности, пока интеллект заключён в компьютере у которого есть электричество, и всё остальное, потребность ставить задачи не возникает.

    Это задача более высокого порядка лишь с точки зрения физики, с точки зрения интеллекта, выше чем способности решать любые задачи не может быть ничего.
     
  24. Mustitz
    Оффлайн

    Mustitz баннер

    Репутация:
    36
    У Вас определение общее, а вы рассматриваете его на частном примере. Нехорошо.

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

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

    просроченый_кмс Старожил

    Репутация:
    6

    Я говорю не о шахматах а о том что Москва не сразу строилась, от простого к сложному можно создать программу которая будет решать задачи.

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

    Ок новое определение дополненное: интеллект - способность создавать алгоритмы для решения любой задачи, а если задача алгоритмически не решается понимать это.
     
  26. WinPooh
    Оффлайн

    WinPooh В.М. Команда форума

    Репутация:
    95
    Засада именно в том, что подумает - но не скажет. И это доказано стоматологами математически, а не философскими рассуждениями.

    Проблема остановки
     
  27. bankuss
    Оффлайн

    bankuss Александр баннер

    Репутация:
    6
    кстати, имейте ввиду, что ИИ без электричества ноль! кончится электричество и все, пипец ИИ, накумекался :D
     
  28. просроченый_кмс
    Оффлайн

    просроченый_кмс Старожил

    Репутация:
    6
    Я могу сказать лишь то, что подумав на каким то алгоритмом прогрмамма выдаст либо однозначный ответ что он остановится, либо что не знает, и сама придумает проблему остановки и то доказательство которое приведено в википедии.
    Приведите мне хоть 1 пример программы по которой нельзя понять остановится она или нет.
    К тому же всё это было сформулировано когда понятия искусственный интеллект не существовало, т.е. самая главная проблема в самообучаемости и самоусложнения программ ИИ, 70 лет назад об этом даже не думали.

    Так что запнувшись над решением "остановится ли когда-нить данная машина Тьюринга" ИИ подумает придумает более сложный алгоритм проверки, и за конечное время решит проблему.
     
  29. WinPooh
    Оффлайн

    WinPooh В.М. Команда форума

    Репутация:
    95
    Задача остановиться и сказать "не знаю" - тоже попадает в область проблемы остановки.

    Истинность математического доказательства не зависит от того, были ли сформулированы какие-то новые понятия. Теорема или доказана, или нет. Эта - доказана.

    Вот неплохой кандидат:
    http://www.ega-math.narod.ru/Nquant/Collatz.htm
     
  30. просроченый_кмс
    Оффлайн

    просроченый_кмс Старожил

    Репутация:
    6
    http://ru.wikipedia.org/wiki/Проблема_остановки
    =========================================

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

    "не останавливается в противном случае (если алгоритм с номером N останавливается, получив на вход X)." как они определят что он не останавливается подождут бесконечность лет? видно что даже если её принять - теория неработоспособна.

    Дело анализатора выдавать либо 1 либо 0, если он будет это делать соответственно останавливаться и выдавать результат, то весь остальной бред насчёт диагонализатора и вообще всё это можно выкинуть на свалку.


    З.Ы. Где можно высказать свою претензию по поводу этого условия? интересно послушать мнение математиков, ведь оно не является необходимым свойством анализатора.
     
  31. WinPooh
    Оффлайн

    WinPooh В.М. Команда форума

    Репутация:
    95
    for (int x = 0; x < 10; x = x + 0) {}
    Как Вы думаете, этот цикл завершается? Нужно ли Вам для того, чтобы это определить, бесконечное количество лет?

    "Навязывание логического противоречия" - это обычный метод доказательства от противного. Мне он впервые встретился в учебнике геометрии для 6-го класса.
     
  32. WinPooh
    Оффлайн

    WinPooh В.М. Команда форума

    Репутация:
    95
    А теперь другой цикл:

    while (N != 1)
    {
    if ((N % 2) == 0)
    N = N / 2;
    else
    N = 3 * N + 1;
    }

    Требуется написать программу, которой на вход дают число N, а она определяет - завершится этот цикл, или нет.
     
  33. просроченый_кмс
    Оффлайн

    просроченый_кмс Старожил

    Репутация:
    6
    1й вопрос. Речь об анализаторе, проблема в том что в самой теории указано что если анализатор определил что программа останавливается, он не останавливается, это и есть результат его работы, как они это определят.

    2й вопрос. Логическое противоречие либо есть либо нет, а тут создание искусственного условия этому анализатору, без этого условия "не останавливается в противном случае (если алгоритм с номером N останавливается, получив на вход X)." он будет прекрасно работать, выдавая 1 или 0?

    В том смысле что тут придумали противоречие а потом создали условия в теории под него, с таким же успехом можно утверждать что 2+2=5

    Сначала прочитайте что я писал а потом утверждайте.
     
  34. WinPooh
    Оффлайн

    WinPooh В.М. Команда форума

    Репутация:
    95
    Я так понял, что доказательство Петра Новикова от 1955 года как раз устанавливает эквивалентность двух разных Анализаторов (один - который выдаёт 1 или 0, а другой - выдаёт 1 или не останавливается).
     
  35. просроченый_кмс
    Оффлайн

    просроченый_кмс Старожил

    Репутация:
    6
    Интересно, вот это уже по делу, тут надо подумать) :)

    Но фраза, не вдохновляет это уже не жёсткое доказательство - Петр Новиков в 1955 г. показал, что проблема остановки почти наверняка эквивалентна так называемой "проблеме тождества слов" в теории групп и компьютерной лингвистике.[источник не указан 131 день]

    И без ссылки вообще непонятно о чём речь.