Современная наука не мыслима без использования компьютеров и соответствующего программного обеспечения. Но, как выясняется (http://www.guardian.co.uk/technology/2010/feb/05/science-cli...), код самих научных программ зачастую нуждается в скрупулезном анализе и проверке на наличие ошибок. И наиболее эффективным методом защиты от подобных «неприятностей», по мнению профессора Даррела Инси (Darrel Ince), должна стать открытая публикация исходного кода ПО, наряду с полученными с его помощью результатами.«Научное ПО имеет плохую репутацию из-за большого количества ошибок» - говориться в статье Инси. По сравнению с коммерческим ПО, процесс разработки, тестирования и контроля качества которого отточен до мельчайших деталей, научные лаборатории не обладают надлежащими навыками, технологиями и опытом. Отсюда достаточно высокий процент неточностей и ошибок, каждая из которых может поставить под сомнение достоверность выводов, сделанных по-окончании ра...
URL: http://science.slashdot.org/story/10/02/09/1336250/Call-For-...
Новость: http://www.opennet.me/opennews/art.shtml?num=25354
> может поставить под сомнение достоверность выводов,
> сделанных по-окончании работы.Компутер не должен решать, компутер должен считать.
Компутер должен считать точно. Ошибки в программном обеспечении могут очень сильно исказить результат. Обсчет одного несложного внешне эксперимента может занимать сотни страниц одних математических выкладок, а уж чтобы привести все это к численному виду надо очень постараться.
неверно.
комьютерный бэкэнд - позволяет безукоризенно выявлять слабые места в менеджменте/планировании.
как произвольные, так и преднамеренные.
программу в СССР зарубили именно инсургены, в страхе за свой междусобойчик/гадюшник.
но вне "народного хозяйства" такой подход применялся с феноменальным успехом.
фрагменты армейской АСУ, попавшие в НАТО после фрагментации стран ВД, повергли их в ШОК, по результатам КШУ.
пруфлинк?
>неверно.
>комьютерный бэкэнд - позволяет безукоризенно выявлять слабые места в менеджменте/планировании.
>как произвольные, так и преднамеренные.
>программу в СССР зарубили именно инсургены, в страхе за свой междусобойчик/гадюшник.
>но вне "народного хозяйства" такой подход применялся с феноменальным успехом.
>фрагменты армейской АСУ, попавшие в НАТО после фрагментации стран ВД, повергли их
>в ШОК, по результатам КШУ.страны ВД в данном случае это сокращение от Варшавского Договора или от Вассенаарских Договоренностей?
Да... Нефиг торговать Mathcad
mathcad - для студентов. Это ПО не используется в реально сложных вычислениях.
Научные, обычно не сложные, а замороченые, ибо сами не знают чего будет и чего хотят ;)
Это не значит что там мало рассчетов.ЗЫ а закрытые сорсы в научном софте вообще идиотизм. Веселее только "мы тут что-то открыли, но вам нифига не скажем в чем состоит суть нашего открытия" :)
Вам не скажим, а вот ИМ скажем и у них телевизоры будут лучше чем у вас...
Вы "немного" заблуждаетесь, наши НИИ перечислять не буду а один из США, как пример, будет даже забавно - это Lockheed Martin.
Ну сказанное по-моему очевидно как божий день, вообще аксиома и нифига не новость.
"Более того, точность вычислений из-за таких ошибок падает с приемлемых шести значащих цифр до одной!"
Смешная фраза. Если уж в программе есть ошибки, то надо быть готовым, что результаты могут быть любыми. А тут одна цифра после запятой - гарантирована.
Не после запятой, а значащая
5432.54 = 5.43254*10^3 - 6 значащих цифр
5*10^3 - 1 значащая цифра, в принципе тоже неплохой результат, правда
В оригинале не слова про цифры и числа, там фигуры :)What he also discovered, even more worryingly,
is that the accuracy of results declined from
six significant figures to one significant
figure during the running of programs.
>В оригинале не слова про цифры и числа, там фигуры :)
>
>What he also discovered, even more worryingly,
>is that the accuracy of results declined from
>six significant figures to one significant
>figure during the running of programs.Ага, это в духе "построений компасом и правителем".
>В оригинале не слова про цифры и числа, там фигуры :)Словарь себе купи, коли aptitude install mueller7-dict не помогает---
figure
[↗fɪgɜ]
1. _n.
9) цифра; _pl. цифровые данные; in round figures круглым счётом
>>В оригинале не слова про цифры и числа, там фигуры :)
>
>Словарь себе купи, коли aptitude install mueller7-dict не помогает---
>
>figure
> [↗fɪgɜ]
> 1. _n.
> 9) цифра; _pl. цифровые данные; in
>round figures круглым счётомfull, надеюсь всё значения этого слова помнишь.
Так что, о дибильности английского языка, на другом форуме.
Главное что бы нашлись те люди-энтузиасты которые бы просматривали код научных проектов, ведь мало знать Си или Фортран, нужно ещё понять что хотят учёные от программы и какая у неё должна быть логика, что бы искать ошибки не только в синтаксисе кода но так же и в логие.
Как и сказано в статье, если только другие универы захотят покапаться.
А то выложат программу по "Анигиляции сферической пустоты в вакууме путём смешивания антиматерии" - и пойми как она должна работеть =)
Студентов заставить.
>Студентов заставить.У меня есть подозрение, что существующее научное ПО как раз и писано студентами (полностью, или частично) =)
P.S.
> По сравнению с коммерческим ПО, процесс разработки, тестирования и контроля качества которого отточен до мельчайших деталей...Наивные)
Научное ПО имеется ввиду относительно мелкие программулины для расчета одной конкретной фигнюшки? Тогда да, сорцы по-хорошему надо бы прилагать к публикации и делать перманентную ссылку на них. Рецензентам только вот что, и сорцы тоже анализировать?
>Научное ПО имеется ввиду относительно мелкие программулины для расчета одной конкретной фигнюшки?
>Тогда да, сорцы по-хорошему надо бы прилагать к публикации и делать
>перманентную ссылку на них. Рецензентам только вот что, и сорцы тоже
>анализировать?Обязательно! Расчеты(и программа в том числе) - неотъемлимая часть исследования. По моему мнению нужно еще открыть код компиляторов/интерпретаторов, операционки и микрокода процессоров. Короче, Open Source forever! А за выявление багов в коде считаю нужным награждать людей, если не деньгами, то хоть медалькой из рук выдающихся ученых нашего времени. :)
>>Научное ПО имеется ввиду относительно мелкие программулины для расчета одной конкретной фигнюшки?
>>Тогда да, сорцы по-хорошему надо бы прилагать к публикации и делать
>>перманентную ссылку на них. Рецензентам только вот что, и сорцы тоже
>>анализировать?
>
>Обязательно! Расчеты(и программа в том числе) - неотъемлимая часть исследования. По моему
>мнению нужно еще открыть код компиляторов/интерпретаторов, операционки и микрокода процессоров. Короче,
>Open Source forever! А за выявление багов в коде считаю нужным
>награждать людей, если не деньгами, то хоть медалькой из рук выдающихся
>ученых нашего времени. :)P.S. А вообще, поиск багов в научном софте нужно приравнять к участию в научном исследовании и тех кто находит и исправляет косяки в коде пусть маленьким шрифтом, но включать в команду исследователей. Всем от этого польза и радость будет.
А Дональд Кнут так и делает (http://habrahabr.ru/blogs/lenta/46729)... :-)
> По сравнению с коммерческим ПО, процесс разработки, тестирования и контроля качества которого отточен до мельчайших деталей,Эта фраза вызывает грусную улыбку, но в science дела обстоят ещё хуже...
Сложные вычисления ха,крайне трудоемкий обсчет магнитного поля, там ппц просто, солнце земля плюс наш источник, и надо 3д картинку поля, вернее матрицы эквипотенциальных полей, еще это все во времени постоянно изменяется, плюс совершенно непонятно от чего взбрыкивает поэтому часть формул эвристические, и высчитываются вот прямо здесь и сейчас И все это у нас пишут на, внимание, Qbasic!
Напротив, каждый раз убеждаюсь какая это правда. Коммерческое ПО, особенно научное, принципиально нежизнеспособно, иногда диву даешься как вообще можно _такое_ выпускать и кто этим хотя бы теоретически может пользоваться. Опенсорс же почти всегда на высоте.
>Коммерческое ПО, особенно научное, принципиально нежизнеспособно, иногда диву даешься как вообще можно _такое_ выпускать и кто этим хотя бы теоретически может пользоваться.Ну вы господин ученый и даете. Сейчас половина физики сводится к расчетам в Ansys.
>> По сравнению с коммерческим ПО, процесс разработки, тестирования и
>>контроля качества которого отточен до мельчайших деталей,
>Эта фраза вызывает грусную улыбку, но в science дела обстоят ещё хуже...Эта фраза звучит как издевательство. В случае коммерческого ПО зачастую на качество попросту кладется откровенный болт. Как доктор говорю.
>Эта фраза звучит как издевательство. В случае коммерческого ПО зачастую на качество
>попросту кладется откровенный болт. Как доктор говорю.А вам господин ученый советую поработать в Оctave и Matlab. В первой даже хелпа нету.
> А вам господин ученый советую поработать в Оctave и Matlab. В первой даже хелпа нету.Чета Вы гоните:
octave:2> help sin
-- Mapping Function: sin (X)
Compute the sine of each element of X.sin is a built-in mapper function
Additional help for built-in functions and operators is
available in the on-line version of the manual. Use the command
`doc <topic>' to search the manual index.
>octave:2> help sinА так вы это хелпом называете? Понятно.
На самом деле хелп это гипертекст с перекрестными ссылками, примерами использования и т.п. И хороший хелп важный аргумент за использование конкретного софта. Только создатели открытых проектов об этом понятия не имеют. Да и еще, хелп он не должен быть онлайн. Онлайн проще гуглом найти чем в их манах рыться.
А хелп по синусу он вообще не нужен. Нужен хелп потоптав который 5 минут можно без труда узнать как фильтрануть сигнал фильтром Баттерворта 5 порядка.
В Scilab правда хелп получше. Но там зато совместимость с Матлабом слабее.
В ответ надо бы требовать открыть исходники MathCAD, Maple, Wolfram Mathematica и им подобных коммерческих. А то попробуй пойми, вдруг какой-нибудь элементарных solve использует метод, совсем неприменимый в твоей задаче? Тем более что на этих пакетах считают весьма регулярно, и делают очень даже неплохие работы, и не только студенты. По крайней мере, на двух последних.
Хотя бы один из комментаторов имеет отношение к проблематике?
>Хотя бы один из комментаторов имеет отношение к проблематике?Без Трухина -- как без рук!
>Хотя бы один из комментаторов имеет отношение к проблематике?Имеет конечно, примерно такое же как эконометрика и экономика к науке. Курсовик в маткаде считали.
ЭЭЭ, так можно договориться до того, что и исходные данные надо обязательно публиковать. И как тогда глобальное потепление доказывать?
>ЭЭЭ, так можно договориться до того, что и исходные данные надо обязательно
>публиковать. И как тогда глобальное потепление доказывать?Обязательно публиковать, а иначе вдруг попросят пруфлинк на конференции и опа!
>ЭЭЭ, так можно договориться до того, что и исходные данные надо обязательно
>публиковать. И как тогда глобальное потепление доказывать?Я правильно понимаю ваш намек на то, что некоторые научные выводы высосаны из пальца?
Я не спорЮ. просто уточняю)А вообще как-бы да, исходные данные публиковать желательно.
Чтобы при желании можно было провести такие же расчеты и прийти к такому же результату.
Это научный подход.
>ЭЭЭ, так можно договориться до того, что и исходные данные надо обязательно
>публиковать. И как тогда глобальное потепление доказывать?Исходные данные публикуют. А исходные тексты инструментов для анализа- нет.
Потому что результат научной работы не зависит от используемых инструментов.
Иначе он не объективен и ненаучен.Проблема вообще высосана из пальца. Автор играет на публику.
>Исходные данные публикуют. А исходные тексты инструментов для анализа- нет.И исходные данные часто не публикуют.
>Потому что результат научной работы не зависит от используемых инструментов.
Это точно.
>Проблема вообще высосана из пальца. Автор играет на публику.
Не проблема то есть. Ну так и ГЦЦ может неправильно компилировать и что? А в бухгалтерском софте что проблем нет? А это поопаснее чем в научном.
>>Исходные данные публикуют. А исходные тексты инструментов для анализа- нет.
>И исходные данные часто не публикуют.Требование к научной работе - воспроизводимость результатов. Если вы не опубликуете исходные данные и (как следствие) результат вашей работы нельзя повторить - то ваши изыскания не будут приняты. Оно вам надо?
>Требование к научной работе - воспроизводимость результатов. Если вы не опубликуете исходные данные и (как следствие) результат вашей работы нельзя повторить - то
>ваши изыскания не будут приняты. Оно вам надо?Чудеса какие то. Вы когда последнюю статью писали то?
Теоретически. Как вы можете повторить например эксперимент на суперколлайдере? Он один. И где вы видели с него сырые данные? Там много терабайт за эксперимент.
Практически. Берем любой научный журнал и смотрим, что там можно повторить на основании описания в статье.
>>ЭЭЭ, так можно договориться до того, что и исходные данные надо обязательно
>>публиковать. И как тогда глобальное потепление доказывать?
>
>А исходные тексты инструментов для анализа- нет.Так в том и суть вопроса.
Если смотреть на научные расчеты с точки зрения "В ПО бывают ошибки", то проверка расчетов на ошибки может привести к проверке ПО на ошибки.
А для проверки ПО на ошибки очень полезен исходный код.
Публичная наука - это же не сфера покупки-продажи.
"Я доказал теорему Ферма. Но как - не скажу!"
Наоборот, например, при каком-то открытии стараются проверить и перепроверить все, что можно.
Потому что в науке уже 100 раз натыкались на грабли типа вечного двигателя или КПД 120% из за ошибки в расчетах.
>>>ЭЭЭ, так можно договориться до того, что и исходные данные надо обязательно
>>>публиковать. И как тогда глобальное потепление доказывать?
>>
>>А исходные тексты инструментов для анализа- нет.
>
>Так в том и суть вопроса.
>Если смотреть на научные расчеты с точки зрения "В ПО бывают ошибки",
>то проверка расчетов на ошибки может привести к проверке ПО на
>ошибки.
>А для проверки ПО на ошибки очень полезен исходный код.в результате все это затевается не ради проверки на ошибки, а ради того чтобы увидеть чужой код. Причем затевается теми - кто к проблематике вопроса отношения не имеет.
Например Darrel Ince - автор статьи (http://www.computing.open.ac.uk/People/d.c.ince) - он компьютерщик... все его научные работы- связаны с компьютерами. Поэтому его интерес основан на идеях витающих в компьютерных кругах.>Публичная наука - это же не сфера покупки-продажи.
>"Я доказал теорему Ферма. Но как - не скажу!"
>Наоборот, например, при каком-то открытии стараются проверить и перепроверить все, что можно.ну после таких рассуждений становится очевидно что вы тоже к проблематике отношения не имеете.
>Потому что в науке уже 100 раз натыкались на грабли типа вечного
>двигателя или КПД 120% из за ошибки в расчетах.Это вообще беспредметно.
>в результате все это затевается не ради проверки на ошибки, а ради того чтобы увидеть чужой код.Если не секрет, в результате чего?
Объясните сей вывод.>ну после таких рассуждений становится очевидно что вы тоже к проблематике отношения
>не имеете.Да, не имею.
Но могу предположить, что в науке используется научный подход.
Если вы имеете отношение к проблематике, то вы можете рассказать, как там должно быть и как на самом деле.>>Потому что в науке уже 100 раз натыкались на грабли типа вечного
>>двигателя или КПД 120% из за ошибки в расчетах.
>
>Это вообще беспредметно.Я имею в виду расчеты, когда из за ошибки получали "сенсационный" результат.
Можно привести в пример историю большой теоремы Ферма.
Было очень много случаев, когда её якобы доказывали, пока не проверяли доказательство.
>>в результате все это затевается не ради проверки на ошибки, а ради того чтобы увидеть чужой код.
>
>Если не секрет, в результате чего?
>Объясните сей вывод.Научная работа рождается не на компьютере. Компьютер не создает новых знаний.
ПО- всего лишь инструмент, который используется для обсчета тех идей, которые существуют в голове исследователя. Так всегда было, и я надеюсь что так и останется впредь.
И инструменты эти - универсальны. Одни и те же программы используются для статистического анализа, моделирования и в области физики, и в области молекулярной биологии, и в области химии и т.д. Ученые мужи не пишут программ сами. Они от этого фантастически далеки.
Ошибка в исследованиях чаще всего кроется не в ошибке ПО, а в методологическом просчете или неверных исходных данных.>>>Потому что в науке уже 100 раз натыкались на грабли типа вечного
>>>двигателя или КПД 120% из за ошибки в расчетах.
>>
>>Это вообще беспредметно.
>
>Я имею в виду расчеты, когда из за ошибки получали "сенсационный" результат.Последний громкий "сенсационный результат" - это миф о глобальном потеплении, когда громадная компания по выколачиванию денег из налогоплательщиков на фиктивные исследования якобы существующей проблемы (в мировом масштабе...) родилась от ошибки при перепечатке статьи. Один исследователь неверно интерпретировал зависимость (поставил телегу перед лошадью), а второй не проверил первоисточник, при перепечатке которого в одно число был вставлен лишний нолик. И тем не менее, находятся люди которые продолжает муссировать эту тему, и не только о глобальном потеплении, и такой затасканный миф как утка о 25 кадре...
Никаких компьютеров. Никакого ошибочно работающего ПО. Все что нужно для сенсации- это разруха в голове.
>
>Можно привести в пример историю большой теоремы Ферма.
>Было очень много случаев, когда её якобы доказывали, пока не проверяли доказательство.Доступность исходных данных, методологии исследования и анализа - это краеугольные камни проверки научных выводов. На этом строится научный подход. А еще он подразумевает что выводы тогда объективны- когда результат получается один и тот же при использовании разных инструментов. если вы сомневаетесь в программе исследователя- возьмите любую другую.. посчитайте то в чем сомневаетесь в своей программе.
Не на гарантии безошибочности ПО строится достоверность научного вывода. А на том как вы понимаете проблему.Ошибки в методологии намного серьезнее чем любые существующие ошибки в ПО.
Острота проблемы- вымышлена. Возможно он просто выбивал грант на очередные "очень интересные" исследования... Опенсорс популярно, опенсорс модно.. профессор компьютер сайнс ищет на чем бы еще можно заработать денег. И у него это наверняка получится.. вон даже на глобальное потепление деньги выбили..политические карьеры себе устроили...
> Ошибки в методологии намного серьезнее чем любые существующие ошибки в ПО.
> Острота проблемы- вымышлена. Возможно он просто выбивал грант на очередные "очень интересные" исследования... Опенсорс популярно, опенсорс модно.. профессор компьютер сайнс ищет на чем бы еще можно заработать денег. И у него это наверняка получится.. вон даже на глобальное потепление деньги выбили..политические карьеры себе устроили......и тем не менее, того факта, что компьютеры стали использовать бездумно и используемые алгоритмы перестали перепроверять на применимость, что полностью дискредитирует полученные результаты, это ну никак не отменяет. )))
Что-то в сторону уходим)
Я думаю, вы не станете утверждать, что "научное ПО не содержит ошибок, которые могли бы повлиять на результат расчетов".
Суть в том, что если (из одних и тех же данных) в одной программе получились одни результаты, а в другой программе - другие, то наличие исходников обеих программ очень облегчит поиск ответа на вопрос "а с чего они различаются".А насчет ваших выводов я не спорю.
Может быть человек, прикрываясь одним, хочет другого.
Но остальным комментаторам (включая меня) интересна сама тема ошибок в научном ПО.
Что мы и обсуждаем)