The OpenNET Project / Index page

[ новости/++ | форум | wiki | теги | ]

09.02.2010 21:19  Открытие кода исследовательского ПО позволит избежать ошибок в научных выводах

Современная наука немыслима без использования компьютеров и соответствующего программного обеспечения. Но, как выясняется, код самих научных программ зачастую нуждается в скрупулезном анализе и проверке на наличие ошибок. И наиболее эффективным методом защиты от подобных «неприятностей», по мнению профессора Даррела Инси (Darrel Ince), должна стать открытая публикация исходного кода ПО, наряду с полученными с его помощью результатами.

«Научное ПО имеет плохую репутацию из-за большого количества ошибок» - говорится в статье Инси. По сравнению с коммерческим ПО, процесс разработки, тестирования и контроля качества которого отточен до мельчайших деталей, научные лаборатории не обладают надлежащими навыками, технологиями и опытом. Отсюда достаточно высокий процент неточностей и ошибок, каждая из которых может поставить под сомнение достоверность выводов, сделанных по окончании работы.

Результаты исследования профессора Леса Хаттона (Les Hatton) работающего в университетах Кента и Кингстона, только подтверждают процитированное выше утверждение. Проанализировав несколько миллионов строк кода научного ПО, он выявил неприемлемо высокую степень несоответствий между его структурными составляющими. Например, несоответствия в интерфейсах обмена данными между модулями обнаруживаются в каждом седьмом случае для программ, написанных на Фортране, и в каждом 37 для Си. Более того, точность вычислений из-за таких ошибок падает с приемлемых шести значащих цифр до одной!

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

  1. Главная ссылка к новости (http://science.slashdot.org/st...)
Автор новости: blkdog
Тип: К сведению
Ключевые слова: opensource
При перепечатке указание ссылки на opennet.ru обязательно
Обсуждение Ajax/Линейный | Раскрыть все сообщения | RSS
 
  • 1.1, pavlinux (ok), 01:56, 10/02/2010 [ответить] [показать ветку] [···]    [к модератору]
  • +2 +/
    > может поставить под сомнение достоверность выводов,
    > сделанных по-окончании работы.

    Компутер не должен решать, компутер должен считать.

     
     
  • 2.3, AleksK (?), 02:26, 10/02/2010 [^] [ответить]     [к модератору]
  • +4 +/
    Компутер должен считать точно Ошибки в программном обеспечении могут очень силь... весь текст скрыт [показать]
     
  • 2.35, Basiley (ok), 03:17, 11/02/2010 [^] [ответить]     [к модератору]  
  • +/
    неверно комьютерный бэкэнд - позволяет безукоризенно выявлять слабые места в ме... весь текст скрыт [показать]
     
     
  • 3.46, Аноним (-), 13:10, 12/02/2010 [^] [ответить]    [к модератору]  
  • +/
    пруфлинк?
     
  • 3.47, Square (ok), 13:41, 12/02/2010 [^] [ответить]     [к модератору]  
  • +/
    страны ВД в данном случае это сокращение от Варшавского Договора или от Вассенаа... весь текст скрыт [показать]
     
  • 1.2, vit (??), 02:25, 10/02/2010 [ответить] [показать ветку] [···]    [к модератору]  
  • +1 +/
    Да... Нефиг торговать Mathcad
     
     
  • 2.4, mine (?), 02:36, 10/02/2010 [^] [ответить]    [к модератору]  
  • +3 +/
    mathcad - для студентов. Это ПО не используется в реально сложных вычислениях.
     
     
  • 3.6, pavlinux (ok), 04:10, 10/02/2010 [^] [ответить]    [к модератору]  
  • +2 +/
    Научные, обычно не сложные, а замороченые, ибо сами не знают чего будет и чего хотят ;)  
     
     
  • 4.17, User294 (ok), 12:25, 10/02/2010 [^] [ответить]    [к модератору]  
  • +/
    Это не значит что там мало рассчетов.

    ЗЫ а закрытые сорсы в научном софте вообще идиотизм. Веселее только "мы тут что-то открыли, но вам нифига не скажем в чем состоит суть нашего открытия" :)

     
     
  • 5.18, ASM (??), 12:33, 10/02/2010 [^] [ответить]    [к модератору]  
  • +/
    Вам не скажим, а вот ИМ скажем и у них телевизоры будут лучше чем у вас...
     
  • 3.44, jkeffer (ok), 00:14, 12/02/2010 [^] [ответить]    [к модератору]  
  • +/
    Вы "немного" заблуждаетесь, наши НИИ перечислять не буду а один из США, как пример, будет даже забавно - это Lockheed Martin.
     
  • 1.5, аноним (?), 02:39, 10/02/2010 [ответить] [показать ветку] [···]    [к модератору]  
  • +6 +/
    Ну сказанное по-моему очевидно как божий день, вообще аксиома и нифига не новость.
     
  • 1.7, Аноним (-), 06:52, 10/02/2010 [ответить] [показать ветку] [···]     [к модератору]  
  • +/
    Более того, точность вычислений из-за таких ошибок падает с приемлемых шести зн... весь текст скрыт [показать]
     
     
  • 2.9, Аноним (-), 08:01, 10/02/2010 [^] [ответить]    [к модератору]  
  • +2 +/
    Не после запятой, а значащая
     
  • 2.16, Аноним (-), 11:18, 10/02/2010 [^] [ответить]    [к модератору]  
  • +1 +/
    5432.54 = 5.43254*10^3 - 6 значащих цифр
    5*10^3 - 1 значащая цифра, в принципе тоже неплохой результат, правда
     
     
  • 3.21, pavlinux (ok), 14:02, 10/02/2010 [^] [ответить]     [к модератору]  
  • –1 +/
    В оригинале не слова про цифры и числа, там фигуры What he also discovered, ... весь текст скрыт [показать]
     
     
  • 4.25, pkunk (ok), 16:48, 10/02/2010 [^] [ответить]     [к модератору]  
  • +/
    Ага, это в духе построений компасом и правителем ... весь текст скрыт [показать]
     
  • 4.26, Andrey Mitrofanov (?), 16:53, 10/02/2010 [^] [ответить]     [к модератору]  
  • +/
    Словарь себе купи, коли aptitude install mueller7-dict не помогает--- figure ... весь текст скрыт [показать]
     
     
  • 5.32, pavlinux (ok), 21:39, 10/02/2010 [^] [ответить]     [к модератору]  
  • –1 +/
    full, надеюсь всё значения этого слова помнишь Так что, о дибильности английско... весь текст скрыт [показать]
     
  • 1.8, EuPhobos (ok), 07:50, 10/02/2010 [ответить] [показать ветку] [···]    [к модератору]  
  • +/
    Главное что бы нашлись те люди-энтузиасты которые бы просматривали код научных проектов, ведь мало знать Си или Фортран, нужно ещё понять что хотят учёные от программы и какая у неё должна быть логика, что бы искать ошибки не только в синтаксисе кода но так же и в логие.
    Как и сказано в статье, если только другие универы захотят покапаться.
    А то выложат программу по "Анигиляции сферической пустоты в вакууме путём смешивания антиматерии" - и пойми как она должна работеть =)
     
     
  • 2.10, ПринцЧорнойТьмы (??), 09:06, 10/02/2010 [^] [ответить]    [к модератору]  
  • +/
    Студентов заставить.
     
     
  • 3.11, XoRe (ok), 09:33, 10/02/2010 [^] [ответить]     [к модератору]  
  • +3 +/
    У меня есть подозрение, что существующее научное ПО как раз и писано студентами ... весь текст скрыт [показать]
     
  • 1.12, azure (ok), 09:38, 10/02/2010 [ответить] [показать ветку] [···]    [к модератору]  
  • +/
    Научное ПО имеется ввиду относительно мелкие программулины для расчета одной конкретной фигнюшки? Тогда да, сорцы по-хорошему надо бы прилагать к публикации и делать перманентную ссылку на них. Рецензентам только вот что, и сорцы тоже анализировать?
     
     
  • 2.14, Pasha (??), 10:51, 10/02/2010 [^] [ответить]     [к модератору]  
  • +2 +/
    Обязательно Расчеты и программа в том числе - неотъемлимая часть исследования ... весь текст скрыт [показать]
     
     
  • 3.15, Pasha (??), 10:54, 10/02/2010 [^] [ответить]     [к модератору]  
  • +2 +/
    P S А вообще, поиск багов в научном софте нужно приравнять к участию в научном ... весь текст скрыт [показать]
     
     
  • 4.23, Damon (??), 15:57, 10/02/2010 [^] [ответить]    [к модератору]  
  • +/
    А Дональд Кнут так и делает (http://habrahabr.ru/blogs/lenta/46729)... :-)
     
  • 1.13, anonymous (??), 10:31, 10/02/2010 [ответить] [показать ветку] [···]    [к модератору]  
  • +2 +/
    > По сравнению с коммерческим ПО, процесс разработки, тестирования и контроля качества которого отточен до мельчайших деталей,

    Эта фраза вызывает грусную улыбку, но в science дела обстоят ещё хуже...

     
     
  • 2.19, Gra2k (ok), 13:34, 10/02/2010 [^] [ответить]     [к модератору]  
  • +/
    Сложные вычисления ха,крайне трудоемкий обсчет магнитного поля, там ппц просто, ... весь текст скрыт [показать]
     
  • 2.24, аноним (?), 16:25, 10/02/2010 [^] [ответить]     [к модератору]  
  • –1 +/
    Напротив, каждый раз убеждаюсь какая это правда Коммерческое ПО, особенно научн... весь текст скрыт [показать]
     
     
  • 3.33, anonymous vulgaris (?), 02:54, 11/02/2010 [^] [ответить]     [к модератору]  
  • +/
    Ну вы господин ученый и даете Сейчас половина физики сводится к расчетам в Ansy... весь текст скрыт [показать]
     
  • 2.30, User294 (ok), 20:26, 10/02/2010 [^] [ответить]     [к модератору]  
  • +/
    Эта фраза звучит как издевательство В случае коммерческого ПО зачастую на качес... весь текст скрыт [показать]
     
     
  • 3.34, anonymous vulgaris (?), 02:56, 11/02/2010 [^] [ответить]     [к модератору]  
  • +/
    А вам господин ученый советую поработать в Оctave и Matlab В первой даже хелпа ... весь текст скрыт [показать]
     
     
  • 4.37, Damon (??), 08:32, 11/02/2010 [^] [ответить]     [к модератору]  
  • +/
    Чета Вы гоните octave 2 help sin -- Mapping Function sin X Compute t... весь текст скрыт [показать]
     
     
  • 5.41, anonymous vulgaris (?), 21:45, 11/02/2010 [^] [ответить]    [к модератору]  
  • +/
    >octave:2> help sin

    А так вы это хелпом называете? Понятно.

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

    А хелп по синусу он вообще не нужен. Нужен хелп потоптав который 5 минут можно без труда узнать как фильтрануть сигнал фильтром Баттерворта 5 порядка.

    В Scilab правда хелп получше. Но там зато совместимость с Матлабом слабее.

     
  • 1.20, Kirill B. Tsiberkin (?), 13:50, 10/02/2010 [ответить] [показать ветку] [···]    [к модератору]  
  • +/
    В ответ надо бы требовать открыть исходники MathCAD, Maple, Wolfram Mathematica и им подобных коммерческих. А то попробуй пойми, вдруг какой-нибудь элементарных solve использует метод, совсем неприменимый в твоей задаче? Тем более что на этих пакетах считают весьма регулярно, и делают очень даже неплохие работы, и не только студенты. По крайней мере, на двух последних.
     
  • 1.27, Square (ok), 17:04, 10/02/2010 [ответить] [показать ветку] [···]    [к модератору]  
  • +1 +/
    Хотя бы один из комментаторов имеет отношение к проблематике?
     
     
  • 2.28, Andrey Mitrofanov (?), 17:15, 10/02/2010 [^] [ответить]    [к модератору]  
  • +/
    >Хотя бы один из комментаторов имеет отношение к проблематике?

    Без Трухина -- как без рук!

     
  • 2.31, anonymous vulgaris (?), 21:19, 10/02/2010 [^] [ответить]    [к модератору]  
  • +/
    >Хотя бы один из комментаторов имеет отношение к проблематике?

    Имеет конечно, примерно такое же как эконометрика и экономика к науке. Курсовик в маткаде считали.

     
     
  • 3.36, s79 (?), 04:37, 11/02/2010 [^] [ответить]    [к модератору]  
  • +1 +/
    ЭЭЭ, так можно договориться до того, что и исходные данные надо обязательно публиковать. И как тогда глобальное потепление доказывать?
     
     
  • 4.38, centosuser (ok), 08:37, 11/02/2010 [^] [ответить]    [к модератору]  
  • +1 +/
    >ЭЭЭ, так можно договориться до того, что и исходные данные надо обязательно
    >публиковать. И как тогда глобальное потепление доказывать?

    Обязательно публиковать, а иначе вдруг попросят пруфлинк на конференции и опа!

     
  • 4.39, XoRe (ok), 11:15, 11/02/2010 [^] [ответить]    [к модератору]  
  • +/
    >ЭЭЭ, так можно договориться до того, что и исходные данные надо обязательно
    >публиковать. И как тогда глобальное потепление доказывать?

    Я правильно понимаю ваш намек на то, что некоторые научные выводы высосаны из пальца?
    Я не спорЮ. просто уточняю)

    А вообще как-бы да, исходные данные публиковать желательно.
    Чтобы при желании можно было провести такие же расчеты и прийти к такому же результату.
    Это научный подход.

     
  • 4.40, Square (ok), 13:55, 11/02/2010 [^] [ответить]    [к модератору]  
  • +1 +/
    >ЭЭЭ, так можно договориться до того, что и исходные данные надо обязательно
    >публиковать. И как тогда глобальное потепление доказывать?

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

    Проблема вообще высосана из пальца. Автор играет на публику.

     
     
  • 5.42, anonymous vulgaris (?), 21:50, 11/02/2010 [^] [ответить]    [к модератору]  
  • +/
    >Исходные данные публикуют. А исходные тексты инструментов для анализа- нет.

    И исходные данные часто не публикуют.

    >Потому что результат научной работы не зависит от используемых инструментов.

    Это точно.

    >Проблема вообще высосана из пальца. Автор играет на публику.

    Не проблема то есть. Ну так и ГЦЦ может неправильно компилировать и что? А в бухгалтерском софте что проблем нет? А это поопаснее чем в научном.

     
     
  • 6.43, Square (ok), 22:30, 11/02/2010 [^] [ответить]    [к модератору]  
  • +/
    >>Исходные данные публикуют. А исходные тексты инструментов для анализа- нет.
    >И исходные данные часто не публикуют.

    Требование к научной работе - воспроизводимость результатов. Если вы не опубликуете исходные данные и (как следствие) результат вашей работы нельзя повторить - то ваши изыскания не будут приняты. Оно вам надо?

     
     
  • 7.45, anonymous vulgaris (?), 04:45, 12/02/2010 [^] [ответить]    [к модератору]  
  • +/
    >Требование к научной работе - воспроизводимость результатов. Если вы не опубликуете исходные данные и (как следствие) результат вашей работы нельзя повторить - то
    >ваши изыскания не будут приняты. Оно вам надо?

    Чудеса какие то. Вы когда последнюю статью писали то?

    Теоретически. Как вы можете повторить например эксперимент на суперколлайдере? Он один. И где вы видели с него сырые данные? Там много терабайт за эксперимент.

    Практически. Берем любой научный журнал и смотрим, что там можно повторить на основании описания в статье.

     
  • 5.49, XoRe (ok), 11:55, 15/02/2010 [^] [ответить]    [к модератору]  
  • +1 +/
    >>ЭЭЭ, так можно договориться до того, что и исходные данные надо обязательно
    >>публиковать. И как тогда глобальное потепление доказывать?
    >
    >А исходные тексты инструментов для анализа- нет.

    Так в том и суть вопроса.
    Если смотреть на научные расчеты с точки зрения "В ПО бывают ошибки", то проверка расчетов на ошибки может привести к проверке ПО на ошибки.
    А для проверки ПО на ошибки очень полезен исходный код.
    Публичная наука - это же не сфера покупки-продажи.
    "Я доказал теорему Ферма. Но как - не скажу!"
    Наоборот, например, при каком-то открытии стараются проверить и перепроверить все, что можно.
    Потому что в науке уже 100 раз натыкались на грабли типа вечного двигателя или КПД 120% из за ошибки в расчетах.

     
     
  • 6.50, Square (ok), 12:35, 15/02/2010 [^] [ответить]    [к модератору]  
  • –1 +/
    >>>ЭЭЭ, так можно договориться до того, что и исходные данные надо обязательно
    >>>публиковать. И как тогда глобальное потепление доказывать?
    >>
    >>А исходные тексты инструментов для анализа- нет.
    >
    >Так в том и суть вопроса.
    >Если смотреть на научные расчеты с точки зрения "В ПО бывают ошибки",
    >то проверка расчетов на ошибки может привести к проверке ПО на
    >ошибки.
    >А для проверки ПО на ошибки очень полезен исходный код.

    в результате все это затевается не ради проверки на ошибки, а ради того чтобы увидеть чужой код. Причем затевается теми - кто к проблематике вопроса отношения не имеет.
    Например Darrel Ince - автор статьи (http://www.computing.open.ac.uk/People/d.c.ince) - он компьютерщик... все его научные работы- связаны с компьютерами. Поэтому его интерес основан на идеях витающих в компьютерных кругах.

    >Публичная наука - это же не сфера покупки-продажи.
    >"Я доказал теорему Ферма. Но как - не скажу!"
    >Наоборот, например, при каком-то открытии стараются проверить и перепроверить все, что можно.

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

    >Потому что в науке уже 100 раз натыкались на грабли типа вечного
    >двигателя или КПД 120% из за ошибки в расчетах.

    Это вообще беспредметно.

     
     
  • 7.51, XoRe (ok), 14:38, 15/02/2010 [^] [ответить]    [к модератору]  
  • +/
    >в результате все это затевается не ради проверки на ошибки, а ради того чтобы увидеть чужой код.

    Если не секрет, в результате чего?
    Объясните сей вывод.

    >ну после таких рассуждений становится очевидно что вы тоже к проблематике отношения
    >не имеете.

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

    >>Потому что в науке уже 100 раз натыкались на грабли типа вечного
    >>двигателя или КПД 120% из за ошибки в расчетах.
    >
    >Это вообще беспредметно.

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

     
     
  • 8.52, Square (ok), 17:16, 15/02/2010 [^] [ответить]     [к модератору]  
  • +/
    Научная работа рождается не на компьютере Компьютер не создает новых знаний ПО... весь текст скрыт [показать]
     
     
  • 9.53, . (?), 19:28, 15/02/2010 [^] [ответить]    [к модератору]  
  • +/
    > Ошибки в методологии намного серьезнее чем любые существующие ошибки в ПО.
    > Острота проблемы- вымышлена. Возможно он просто выбивал грант на очередные "очень интересные" исследования... Опенсорс популярно, опенсорс модно.. профессор компьютер сайнс ищет на чем бы еще можно заработать денег. И у него это наверняка получится.. вон даже на глобальное потепление деньги выбили..политические карьеры себе устроили...

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

     
  • 9.54, XoRe (ok), 15:09, 16/02/2010 [^] [ответить]    [к модератору]  
  • +/
    Что-то в сторону уходим)
    Я думаю, вы не станете утверждать, что "научное ПО не содержит ошибок, которые могли бы повлиять на результат расчетов".
    Суть в том, что если (из одних и тех же данных) в одной программе получились одни результаты, а в другой программе - другие, то наличие исходников обеих программ очень облегчит поиск ответа на вопрос "а с чего они различаются".

    А насчет ваших выводов я не спорю.
    Может быть человек, прикрываясь одним, хочет другого.
    Но остальным комментаторам (включая меня) интересна сама тема ошибок в научном ПО.
    Что мы и обсуждаем)

     

     Добавить комментарий
    Имя:
    E-Mail:
    Заголовок:
    Текст:


      Закладки на сайте
      Проследить за страницей
    Created 1996-2018 by Maxim Chirkov  
    ДобавитьПоддержатьВебмастеруГИД  
    Hosting by Ihor