LINUX.ORG.RU

Международный чемпионат по искусственному интеллекту

 ,


1

0

Опубликованы результаты международного чемпионата в области AI, организованного в университете Ватерлоо (Канада), при спонсорской поддержке Google. Приятно было увидеть в числе финалистов несколько представителей из России. Удивительным оказался тот факт, что среди победителей, попавших в top10, все 100% использовали язык C++.

>>> Подробности



Проверено: boombick ()
Последнее исправление: hibou (всего исправлений: 1)

Ответ на: комментарий от los_nikos

> Tron не ахти какая интеллектуальная игрушка, во всяком случае вывести ракету на орбиту будет на порядок сложнее. То что накодили всё на C++ говорит о железячной ориентации привлекаемых программистов.

в ватерлоо просто отбор неплохой и случайные люди не поступят. Тем более - призёры олимпиад.

siberean
()
Ответ на: комментарий от Anonymous

> среднее арифметическое от мест для каждого языка посчитать что-ли...

это будет ерунда, т.к. распределение по местам не симметрично

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

да и вообще — толпа недоподелок может опустить супервещь.

если уж считать что-то — так это как-то компенсировать разницу в к-ве: лиспов 10, с++ 250 штук.

www_linux_org_ru ★★★★★
()
Ответ на: комментарий от siberean

В Лиспе нет совершенно ничего особенного с точки зрения современных языков. Просто Лисп - один из первых high-level языков, и его популярность совпала с популярностью AI.

Я очень любил Scheme в универе, но на одном из последних курсов с удивлением обнаружил, что любой супер-пупер навороченный/lazy/whatnot интерпретатор того же Scheme гораздо легче имплементировать на самой обычной Яве, чем на самом Scheme.

faustus
()
Ответ на: комментарий от siberean

под невозможно, разумеется имеется в виду - «невозможно в рамках приемлемой скорости и сложности кода» (Ясно, что если есть 3 известных оператора - то теоретически возможно всё. Мы говорим не о теоретической возможности, а практической, за день например, и имея поддерживаемый код).

siberean
()
Ответ на: комментарий от los_nikos

>То что накодили всё на C++ говорит о железячной ориентации привлекаемых программистов.

Тут уже аналитика понеслась крутая :) С++ выиграл у всех и неважно на что заточены программисты по мнению местных аналитиков, потому что лисперы - уроды и язык уродский.

anonymous
()
Ответ на: комментарий от ikm

> SMT, или что-то похитрее?

Я, если честно, не разбираюсь. :3 Помню, что там 15 тредов можно было одновременно пускать. Вообще, custom процессор - ужасная вещь, даже на обычном C под него не попишешь.

faustus
()
Ответ на: комментарий от faustus

> Вообще, custom процессор - ужасная вещь, даже на обычном C под него не попишешь.

О да, чем кастомнее архитектура, тем толще партизаны!

ikm ★★
()
Ответ на: комментарий от Vudod

> Всё просто объясняется: кроме компилятора C++ другого функционала на тестовом стенде не было.

что не помешало 179 программам на яве получить ело от 2400 до 1200

www_linux_org_ru ★★★★★
()

Был бы большой и годный призовой фонд, расклад в плане языков программирования был бы другой.

mirocumo
()

А еще там есть C#.

Мужик-2, где ты ?

aldayneko
()

А что всех так заело на этот самый Лисп? Я знаю от плохо до хорошо: C, Fortran, (Object/Free)Pascal, Python. Ещё писао на SciLab. Но зачем нужен Lisp, моя не знает. А создаётся ощущение, что кроме крестов и него больше ничего нет.

Vudod ★★★★★
()
Ответ на: комментарий от Vudod

> А создаётся ощущение, что кроме крестов и него больше ничего нет.

Больше ЛОР читай. Сейчас придет мужик-2 и создастся совсем иное впечатление.

ikm ★★
()
Ответ на: комментарий от Vudod

> Но зачем нужен Lisp, моя не знает.

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

Werehuman ★★
()
Ответ на: комментарий от Vudod

Ну так ты ничего не знаешь. Все языки, которые ты перечислил, одинаковые. Расширяй кругозор.

anonymous
()
Ответ на: комментарий от Anonymous

> среднее арифметическое от мест для каждого языка посчитать что-ли...

Логичнее посчитать среднее набраных баллов. Только кроме средней еще и дисперсию, пожалста.

moradan
()
Ответ на: комментарий от Vudod

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

Werehuman ★★
()

о! так в этой лотерее даже не каждый с каждым сыграл. бугага. это сверхразумное решение организаторов. искусственный интеллект организаторов считаю таки доказанным.

psv1967 ★★★★★
()

Удивительным оказался тот факт, что среди победителей, попавших в top10, все 100% использовали язык C++.
А что здесь удивительного? Это же чемпионат по исскуственному интеллекту, а не по самым хитрозакрученным скриптам.

WARNING ★★★★
()
Ответ на: комментарий от siberean

> выходи и покажи мне тёмному - пример больших аппликаций на лиспе.

Maxima, например. Или Axiom. Посмотри на код - всё очень поддерживаемое.

То что я видел в индистрии

Ты мало чего видел.

Если на лиспе можно открыть стримы, написать инкрементальный парсер (ну даже пусть наколенночный, без antlr-ов), покусочечно контролируя: что в данный момент в локальных переменных итд?

На Лиспе прекрасно пишутся поточные парсеры. Даже для бинарных форматов.

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

Ты гонишь. Лисп - императивный язык с макрами и некоторыми функциональными возможностями. Главная фича Лиспа - макры. А ты ни хрена не понимаешь, что такое Лисповый стиль.

Но на основании того что я учил когда-то - это невозможно.

Проверить свою память хотя бы по статье в википедии ты мог бы за меньшее время, чем ты потратил на написание этого бреда. Спрашивается - какого хрена?!?

anonymous
()

Прикол, я в U Waterloo собственно работаю, а про события там узнаю с ЛОРа...

qWen71n ★★★
()
Ответ на: комментарий от faustus

> В Лиспе нет совершенно ничего особенного с точки зрения современных языков.

Есть. Прямая работа с AST, без всяких quasiquoting-ов. В других языках такого нет.

что любой супер-пупер навороченный/lazy/whatnot интерпретатор того же Scheme гораздо легче имплементировать на самой обычной Яве, чем на самом Scheme.

Да ты, бедняжка, бредишь. Попробуй на жабе сделать аналог http://lambda-the-ultimate.org/node/349

Будет раз в пять длиннее и совершенно нечитабельно.

anonymous
()

>Приятно было увидеть в числе финалистов несколько представителей из России.

Разработчики кабинета министров РФ?

thesis ★★★★★
()

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

boo32
()
Ответ на: комментарий от boo32

Экспертные системы на Лиспе - это извращение.

Лисп рулил (и до сих пор рулит) в другой связанной с AI областью - computer algebra systems, то бишь, символьная математика.

anonymous
()
Ответ на: комментарий от anonymous

> Есть. Прямая работа с AST, без всяких quasiquoting-ов. В других языках такого нет.

И макросы. И что? Профит от этого при реальном программировании никакой.

Да ты, бедняжка, бредишь. Попробуй на жабе сделать аналог http://lambda-the-ultimate.org/node/349
Будет раз в пять длиннее и совершенно нечитабельно.

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

faustus
()
Ответ на: комментарий от anonymous

>Экспертные системы на Лиспе - это извращение.

вероятно, ты прав. но я не про эффективность говорил, а про историю.

boo32
()
Ответ на: комментарий от faustus

> В Лиспе нет совершенно ничего особенного с точки зрения современных языков. Просто Лисп - один из первых high-level языков, и его популярность совпала с популярностью AI.

Не согласен с тобой. Я знаю довольно много языков с разной степенью владения. Лисп отличается и очень сильно. Не только внешне. Во многом благодаря макросам и s-выражениям. Да-да, эти самые скобочки. Они переворачивают все, или почти все. Язык можно подстраивать под себя, выбирая тот уровень абстракции, который тебе нужен. Ничего подобного я пока не встречал в других языках. Не даром, язык создавался математиками. Фундамент в основание языка был заложен мощный. Еще на долго хватит. Без «матана» явно не обошлось :)

Есть, конечно, еще Nemerle из тех, что на слуху, но я с ним пока не знаком. Вот, в F# макросов нет :( Есть quotations, но до лисповских макросов они не дотягивают.

dave ★★★★★
()
Ответ на: комментарий от faustus

> И макросы. И что? Профит от этого при реальном программировании никакой.

Не много же ты знаешь про реальное программирование.

Ну да, ну да, расскажи мне, как оно на самом деле.

Тебе, похоже, рассказывать бесполезно. Ты упёртый.

Я писал компиляторы и интерпретаторы на Scheme, и интерпретаторы на Яве.

Очевидно же, что херово писал. И то, и другое. Грамотности не хватило.

На Яве гораздо легче, используя полиморфизм параллельный AST.

Чего-чего? Одно только определение AST на Java будет в до хера строк, на каждый node по классу.

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

Что в коде по моей ссылке нечитабельного? И слабо тебе это написать ЛУЧШЕ на жабке?

Да, на нормальном языке с ADT и pattern matching-ом это ещё лучше будет выглядеть (Scala, например). Но жабка тут ни в какие ворота не лезет. Что говорит только о твоей неграмотности.

anonymous
()
Ответ на: комментарий от ikm

> Больше ЛОР читай. Сейчас придет мужик-2 и создастся совсем иное впечатление.

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

anonymous
()
Ответ на: комментарий от dave

> Есть, конечно, еще Nemerle из тех, что на слуху, но я с ним пока не знаком.

В Nemerle, как и в Template Haskell и MetaOCaml - только quasiquotation есть. И сложный AST. Кроме того, во всех трёх не более одного прохода раскрытия макросов, тогда как в Лиспе число проходов неограниченно.

anonymous
()

> Международный чемпионат по исскуственному интеллекту

саныч а ты че новость то запостил? про соларис-то здесь не слова? Ты так скоро и про windows постить начнешь

anonymous
()
Ответ на: комментарий от anonymous

> Maxima, например. Или Axiom. Посмотри на код - всё очень поддерживаемое.

это специфические аппликации

Ты мало чего видел.


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

Ты гонишь. Лисп - императивный язык с макрами и некоторыми функциональными возможностями. Главная фича Лиспа - макры. А ты ни хрена не понимаешь, что такое Лисповый стиль.


Здесь ты прав оказался. Посмотрел макры и в код - понял, как лисперы борятся со сложностью (про макры я за много лет забыл. Таки склероз. Или не учили).
Да, ещё подумаю - как написать на лиспе. Пока трудно представить, как это возможно. И может вернусь ещё опять к этому топику.

siberean
()
Ответ на: комментарий от siberean

> это специфические аппликации

Да ну и что же там такого «специфического»?!? Ввод/вывод, причем для весьма объёмистых данных - сколько угодно.

много.

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

Если ты работаешь в университете

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

Пока трудно представить, как это возможно.

Повторяю - Лисп - императивный язык. Если представляешь себе, как что-то написать на Си++, то можешь то же самое почти подстрочно перевести и на Лисп. А потом сократить и улучшить.

anonymous
()

Grammar Nazi негодуэ!

>Международный чемпионат по исскуственному интеллекту

исскуственному

Саныч неграмотнее тупой лоровской белки.

den2
()
Ответ на: комментарий от dave

> Язык можно подстраивать под себя, выбирая тот уровень абстракции, который тебе нужен.

Так гласит догма. Но тем не менее, прочитав книжку «On Lisp» одного широко известного в узких кругах гуру сетевого start-up-маркетинга, каких-либо ярких и годных примеров использования макросов я в ней не узрел.

Не даром, язык создавался математиками. Фундамент в основание языка был заложен мощный.

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

faustus
()
Ответ на: комментарий от anonymous

> Чего-чего? Одно только определение AST на Java будет в до хера строк, на каждый node по классу.

В каждом будет одна перегруженная функция в пару строк. Очень удобно.

faustus
()
Ответ на: комментарий от anonymous

> саныч а ты че новость то запостил? про соларис-то здесь не слова? Ты так скоро и про windows постить начнешь

Саныч уже не торт!

faustus
()
Ответ на: комментарий от faustus

> В каждом будет одна перегруженная функция в пару строк. Очень удобно.

Совершенно неудобно. Ты не писал никогда хоть немного серьёзных компиляторов.

Обычно над AST определено более одного преобразования. Так что твой дурацкий visitor pattern применим лишь в самых убогих случаях, да и там он просто отстой рядом с декларативными описаниями без всякого boilerplate.

anonymous
()
Ответ на: комментарий от faustus

> каких-либо ярких и годных примеров использования макросов я в ней не узрел.

Почитай «Practical Common Lisp», что ли. Грэм не особо умеет макрами пользоваться.

Посмотри, какие извращения с макрами делают:

http://lambda-the-ultimate.org/node/3281

anonymous
()
Ответ на: комментарий от anonymous

> Ну я и говорю - ты лох. Неграмотный лох.

Саморефлексии замучали? Заладил одно и то же. Если хочешь привнести что-то новое, рассказал бы про этот твой lnmos поподробнее.

ikm ★★
()
Ответ на: комментарий от ikm

> Если хочешь привнести что-то новое, рассказал бы про этот твой lnmos поподробнее.

В гугле забанили?

http://en.wikipedia.org/wiki/Transputer

Легковесные треды реализованные в железе. Более того, даже миграция процессов между узлами - и та реализована в железе. Так что твой скептицизм оскорбителен.

anonymous
()
Ответ на: комментарий от anonymous

> Обычно над AST определено более одного преобразования. Так что твой дурацкий visitor pattern применим лишь в самых убогих случаях, да и там он просто отстой рядом с декларативными описаниями без всякого boilerplate.

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

faustus
()
Ответ на: комментарий от faustus

> Во всех книжках, что читал (SICP, например), на каждое преобразование

Ты не книжки читай, а код.

большой switch,

Ты не обращал внимания, что в этом «switch» часто используется весьма сложный pattern matching?

аналогичный набору классов на Яве

Ты собрался городить набор классов на каждое преобразование? Молодец.

И никуда ты от этого свитча не денешься, в той или иной форме.

Только на Лиспе он - несколько строк, а на жабе - сотни строк. Вот и вся разница. Смотри в те примеры, на которые я ссылался.

anonymous
()
Ответ на: комментарий от anonymous

> Лисп рулил (и до сих пор рулит) в другой связанной с AI областью -

computer algebra systems, то бишь, символьная математика.


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

archimag ★★★
()
Ответ на: комментарий от anonymous

> Так что твой скептицизм оскорбителен.

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

ikm ★★
()
Ответ на: комментарий от erfea

>Ничего удивительно, нормальные отдупляющиеся программисты используют С++, что бы не говорили красноглазые лоровцы и жабо/моно-филы с остальными быдлокодерами вместе взятые.

Толсто. Или просто дурак...

Waterlaz ★★★★★
()
Ответ на: комментарий от erfea

Сам erfea-кун чего напейсал полезного? Только «Hello world!» на лабораторном занятии в своем институтишке?

Bioreactor ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.