DRAKON.SU

Текущее время: Четверг, 26 Ноябрь, 2020 23:26

Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему  [ Сообщений: 12 ] 
Автор Сообщение
СообщениеДобавлено: Вторник, 12 Ноябрь, 2019 14:41 

Зарегистрирован: Воскресенье, 24 Февраль, 2008 15:32
Сообщения: 4951
Откуда: Москва
Что такое АЛГОРИТМ
согласно Большой российской энциклопедии


Большая российская энциклопедия — авторитетное издание, написанное знающими специалистами.

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

В статье АЛГОРИТМ даны ссылки на три другие статьи:
— АЛГОРИТМ ВЫЧИСЛИТЕЛЬНЫЙ,
— АЛГОРИТМ ОБУЧАЮЩИЙСЯ,
— ПРОГРАММИРОВАНИЕ.

Что делать? Во избежание недоразумений я решил дать полную картину и выложить все четыре статьи.
В этом сообщении приводится статья АЛГОРИТМ, а остальные статьи — в трех следующих.
https://bigenc.ru/mathematics/text/1810305
Цитата:
Автор А.Л. Семенов (академик РАН).

АЛГОРИ́ТМ (от al­go­rithmi – лат. на­пи­сания араб. име­ни аль-Хо­рез­ми), ин­струк­ция, точ­ное опи­са­ние спо­со­ба дей­ст­вия с ис­поль­зо­ва­ни­ем про­стых, об­ще­по­нят­ных эле­мен­тов (напр., опе­ра­ций).

В ма­те­ма­ти­ке по­ня­тие А. су­жа­ет­ся и уточ­ня­ет­ся сле­дую­щим об­ра­зом.
Дей­ст­вие со­сто­ит в по­сле­до­ва­тель­но­сти пе­ре­хо­дов от од­но­го со­стоя­ния вы­чис­ле­ния (про­цес­са ра­бо­ты А.) к дру­го­му; со­стояния – это кон­ст­рук­тив­ные объ­ек­ты (напр., сло­ва в дан­ном ал­фа­ви­те; в ча­ст­но­сти, це­лые чис­ла в де­ся­тич­ной или дво­ич­ной за­пи­си).

А. так­же яв­ля­ет­ся кон­ст­рук­тив­ным объ­ек­том. Пер­вое со­стоя­ние на­зы­ва­ет­ся ис­ход­ным дан­ным, по­след­нее – ре­зуль­та­том ра­бо­ты А.

Фик­си­ро­ван­ный А. мож­но при­ме­нять к разл. ис­ход­ным дан­ным; для не­ко­то­рых он мо­жет не за­кан­чи­вать ра­бо­ту. Тем са­мым А. за­да­ёт (воз­мож­но, не всю­ду оп­ре­де­лён­ную) функ­цию, вы­чис­ляе­мую этим А. Та­кие функ­ции на­зы­ва­ют­ся вы­чис­ли­мы­ми.

По­ня­тия А. и вы­чис­ли­мой функ­ции от­но­сят­ся к ис­ход­ным по­ня­ти­ям ма­те­ма­ти­ки и че­рез дру­гие по­ня­тия не вы­ра­жа­ют­ся.

Рас­смат­ри­ва­ют­ся рас­ши­ре­ния по­ня­тия А., напр. ве­ро­ят­но­ст­ные А., т. н. А. с ора­ку­лом, А. взаи­модей­ст­вия с ок­ру­жаю­щей сре­дой, па­рал­лель­ные А.

Час­то А. оп­ре­де­ля­ет­ся с по­мо­щью аб­ст­ракт­ной вы­чис­ли­тель­ной ма­ши­ны, по­лу­чаю­щей на вход про­грам­му дей­ст­вия и ис­ход­ное дан­ное.

До кон. 19 в. А. – об­щее по­ня­тие, от­но­ся­щее­ся к из­вест­ным А. та­ким, как А. вы­пол­не­ния ариф­ме­тич. опе­ра­ций в де­ся­тич­ной сис­те­ме счис­ле­ния, А. диф­фе­рен­ци­ро­ва­ния функ­ций, А. Евк­ли­да на­хо­ж­де­ния об­щей ме­ры от­рез­ков или наи­боль­ше­го об­ще­го де­ли­те­ля мно­го­чле­нов.

В 1900–10-х гг. бы­ли осоз­на­ны труд­но­сти в по­строе­нии об­ще­го А. ре­ше­ния не­ко­то­рых мас­со­вых про­блем.

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

То­гда же бы­ла до­ка­за­на эк­ви­ва­лент­ность разл. по­ня­тий вы­чис­ли­мой функ­ции и клас­сов вы­чи­сли­мых фун­к­ций, по­рож­да­е­мых эти­ми по­ня­ти­я­ми; сфор­му­ли­ро­ван т. н. те­зис Чёр­ча, при­ня­тый в ка­че­ст­ве ес­теств.-на­уч. фак­та: класс вы­чис­ли­мых функ­ций сов­па­да­ет с лю­бым из упо­мя­ну­тых вы­ше клас­сов. Раз­ви­тие ком­пь­ю­тер­ных тех­но­ло­гий не из­ме­ни­ло пред­став­ле­ний о клас­се функ­ций, вы­чис­ляе­мых А.

По­строе­ние и ана­лиз кон­крет­ных А., пред­на­зна­чен­ных для вы­пол­не­ния ком­пь­ю­те­ром, от­но­сит­ся к про­грам­ми­ро­ва­нию.

Вы­де­ля­ют­ся так­же клас­сы ал­го­рит­мов вы­чис­ли­тель­ных и ал­го­рит­мов об­уча­ю­щих­ся.

См. так­же ста­тьи Ал­го­рит­ми­че­ская про­бле­ма, Ал­го­рит­ма слож­ность, Ал­го­рит­мов тео­рия.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Вторник, 12 Ноябрь, 2019 15:07 

Зарегистрирован: Воскресенье, 24 Февраль, 2008 15:32
Сообщения: 4951
Откуда: Москва
https://bigenc.ru/mathematics/text/1810319
Цитата:
Автор: Г. М. Кобельков

АЛГОРИ́ТМ ВЫЧИСЛИ́ТЕЛЬНЫЙ, од­но из осн. по­ня­тий вы­чис­лит. ма­те­ма­ти­ки, по­сле­до­ва­тель­ность дей­ст­вий, ко­то­рая, на­чи­ная с за­дан­ных ис­ход­ных дан­ных, за ко­неч­ное чис­ло ша­гов при­во­дит к ис­ко­мо­му ре­зуль­та­ту.

Про­стей­ши­ми при­ме­ра­ми А. в. яв­ля­ют­ся пра­ви­ла сло­же­ния, вы­чи­та­ния, ум­но­же­ния и де­ле­ния.

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

Ариф­ме­тич. вы­ра­же­ние, как пра­ви­ло, не оп­ре­де­ля­ет од­но­знач­но А. в., по­сколь­ку оно ино­гда до­пус­ка­ет разл. по­ря­док вы­пол­не­ния опе­ра­ций, что для А. в. мо­жет ока­зать­ся су­ще­ст­вен­ным.

На­при­мер, при вы­чис­ле­нии сум­мы чи­сел ви­да n–2 от 1 до 1000000 на вы­чис­лит. ма­ши­не с пла­ваю­щей за­пя­той су­ще­ст­вен­ным яв­ля­ет­ся по­ря­док сум­ми­ро­ва­ния чи­сел.

Ре­зуль­та­ты при пря­мом и об­рат­ном по­ряд­ках сум­ми­ро­ва­ния от­ли­ча­ют­ся друг от дру­га. Это свя­за­но с тем, что вы­чис­ле­ния про­из­во­дят­ся с ок­руг­ле­ния­ми; при пря­мом по­ряд­ке сум­ми­ро­ва­ния име­ют ме­сто су­ще­ст­вен­но бо́ль­шие ок­руг­ле­ния и, со­от­вет­ст­вен­но, боль­шее на­ко­п­ле­ние по­греш­но­сти ок­руг­ле­ний.

А. в. дол­жен удов­ле­тво­рять не­ко­то­рым не­об­хо­ди­мым тре­бо­ва­ни­ям. Наи­бо­лее важ­ное из них – ус­той­чи­вость.

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

Предъ­яв­ля­ют­ся так­же тре­бо­ва­ния к ариф­ме­тич. слож­но­сти А. в. – ко­ли­че­ст­ву эле­мен­тар­ных опе­ра­ций, не­об­хо­ди­мых для его вы­пол­не­ния.

В ка­че­ст­ве при­ме­ра мож­но при­вес­ти вы­чис­ле­ние вы­ра­же­ния ABx, где A и B – квад­рат­ные мат­ри­цы раз­мер­но­сти n×n, а x – век­тор раз­мер­но­сти n.

При­ве­дён­ное вы­ра­же­ние не оп­ре­де­ля­ет А. в., по­сколь­ку не оп­ре­де­лён по­ря­док дей­ст­вий. Вы­бор разл. по­сле­до­ва­тель­но­стей опе­ра­ций при­во­дит к двум ал­го­рит­мам A(Bx) и (AB)x, для пер­во­го из ко­то­рых ариф­ме­тич. слож­ность есть O(n2), а для вто­ро­го – O(n3).

Ариф­ме­тич. слож­ность А. в. яв­ля­ет­ся од­ним из осн. кри­те­ри­ев его ка­че­ст­ва. В слу­чае ис­поль­зо­ва­ния мно­го­про­цес­сор­ной тех­ни­ки и па­рал­лель­ных вы­чис­ле­ний кри­те­рий ка­че­ст­ва А. в. ме­ня­ет­ся.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Вторник, 12 Ноябрь, 2019 15:17 

Зарегистрирован: Воскресенье, 24 Февраль, 2008 15:32
Сообщения: 4951
Откуда: Москва
https://bigenc.ru/mathematics/text/1810335
Цитата:
Автор: В. В. Рязанов

АЛГОРИ́ТМ ОБУЧА́ЮЩИЙСЯ, ал­го­ритм, ко­то­рый мо­жет улуч­шить свои ха­рак­тери­сти­ки в про­цес­се ра­бо­ты по ме­ре нако­п­ле­ния опы­та ре­ше­ния за­дач, для ко­то­рых он пред­на­зна­чен.

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

При не­пра­виль­ном или не­точ­ном ре­ше­нии за­да­чи А. о. про­из­во­дит кор­рек­цию ал­го­рит­ма, по­сле ко­то­рой за­да­ча ре­ша­ет­ся без­оши­боч­но или с мень­шей по­греш­но­стью.

А. о. ис­поль­зу­ет­ся в ря­де мо­де­лей рас­по­зна­ва­ния об­ра­зов. В опи­са­ние А. о. вхо­дят чи­сло­вые па­ра­мет­ры, зна­че­ния ко­то­рых на­хо­дят­ся по обу­чаю­щей вы­бор­ке.

В даль­ней­шем па­ра­мет­ры А. о. уточ­ня­ют­ся (из­ме­ня­ют­ся) по ме­ре ре­ше­ния за­дач рас­по­зна­ва­ния но­вых объ­ек­тов.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Вторник, 12 Ноябрь, 2019 15:38 

Зарегистрирован: Воскресенье, 24 Февраль, 2008 15:32
Сообщения: 4951
Откуда: Москва
https://bigenc.ru/mathematics/text/3178905
Цитата:
Автор: В. В. Кулямин

ПРОГРАММИ́РОВАНИЕ, про­цесс соз­да­ния ком­пь­ю­тер­ных про­грамм или про­грамм­но­го обес­пе­че­ния, а так­же дис­ци­п­ли­на, изу­чаю­щая ме­то­ды и приё­мы соз­да­ния и раз­ви­тия ком­пь­ю­тер­ных про­грамм (бо­лее точ­ное назв. дис­ци­п­ли­ны – ин­же­не­рия про­грамм­но­го обес­пе­че­ния или про­грамм­ная ин­же­не­рия).

П. вклю­ча­ет:
ана­лиз пред­мет­ной об­лас­ти – вы­де­ле­ние тре­бо­ва­ний к про­грам­ме и точ­ную по­ста­нов­ку ре­шае­мых за­дач;

про­ек­ти­ро­ва­ние про­грам­мы – вы­де­ле­ние ком­по­нен­тов или мо­ду­лей на ос­но­ве отд. ре­шае­мых за­дач, оп­ре­де­ле­ние спо­со­бов взаи­мо­дей­ст­вий ме­ж­ду ни­ми, оп­ре­де­ле­ние ал­го­рит­мов ра­бо­ты и струк­тур дан­ных, ис­поль­зуе­мых ка­ж­дым мо­ду­лем;

ко­ди­ро­ва­ние – на­писа­ние отд. мо­ду­лей на оп­ре­де­лён­ных язы­ках про­грам­ми­ро­ва­ния;

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

раз­вёр­ты­ва­ние – раз­ме­ще­ние про­грам­мы в её ра­бо­чем ок­ру­же­нии, на­строй­ка и под­го­тов­ка её к ра­бо­те, обу­че­ние поль­зо­ва­те­лей ра­бо­те с про­грам­мой;

со­про­во­ж­де­ние – под­держ­ка ра­бо­то­спо­соб­но­сти, на­строй­ка под из­ме­няю­щее­ся ок­ру­же­ние, вы­яв­ле­ние де­фек­тов и но­вых за­дач, вне­се­ние ис­прав­ле­ний и из­ме­не­ний.

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

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

До­пол­нит. слож­но­сти для со­про­во­ж­де­ния и раз­ви­тия про­грамм воз­ни­ка­ют из-за раз­ме­ров и слож­но­сти совр. про­грамм­ных сис­тем, дос­ти­гаю­щих де­сят­ков млн. строк ко­да, на разл. язы­ках про­грам­ми­ро­ва­ния.

Та­кие мас­шта­бы про­грамм­ных сис­тем ста­ли воз­мож­ны за счёт ис­поль­зо­ва­ния под­про­грамм и ком­по­нен­тов, по­зво­ляю­щих соз­да­вать ие­рар­хич. сис­те­мы из боль­шо­го ко­ли­че­ст­ва не­боль­ших про­грамм.

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

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

В за­ви­си­мо­сти от по­став­лен­ных це­лей, раз­мер­но­сти за­да­чи, ме­то­дов ре­ше­ния раз­ли­ча­ют па­рал­лель­ное про­грам­ми­ро­ва­ние, рас­пре­де­лён­ное про­грам­ми­ро­ва­ние и др.

Сло­во «П.» ис­поль­зу­ет­ся также в не­ко­то­рых ус­то­яв­ших­ся сло­во­со­че­та­ни­ях, напр. ди­на­ми­че­ское про­грам­ми­ро­ва­ние, ли­ней­ное про­грам­ми­ро­ва­ние, ма­те­ма­ти­че­ское про­грам­ми­ро­ва­ние, где оно обыч­но яв­ля­ет­ся си­но­ни­мом сло­ва «пла­ни­ро­ва­ние».

Язы­ки про­грам­ми­ро­ва­ния под­дер­жи­ва­ют разл. сти­ли П. (па­ра­диг­мы про­грам­ми­ро­ва­ния). В ис­кус­ст­во П. вхо­дит вы­бор язы­ка про­грам­ми­ро­ва­ния, наи­бо­лее пол­но под­хо­дя­ще­го для ре­ше­ния по­став­лен­ной за­да­чи.

Боль­шин­ст­во ме­то­дов и тех­нич. приё­мов П. не уни­вер­саль­ны, при­ме­ни­мы лишь для спе­ци­фич. ви­дов про­грамм (при­клад­ные, сис­тем­ные, встро­ен­ные).

Од­на­ко мож­но вы­де­лить как ба­зо­вые сле­дую­щие три прин­ци­па П.:
мо­дуль­ность – су­ще­ст­вен­но разл. за­да­чи долж­ны ре­шать­ся раз­ны­ми про­грамм­ны­ми ком­по­нен­та­ми, взаи­мо­дей­ст­вую­щи­ми друг с дру­гом че­рез чёт­ко оп­ре­де­лён­ные ин­тер­фей­сы, и не за­ви­сеть от внутр. ал­го­рит­мов и струк­тур дан­ных друг дру­га (см. в ст. Мо­дуль­ное про­грам­ми­ро­ва­ние);

ис­поль­зо­ва­ние аб­ст­рак­ций – ре­ше­ние лю­бой за­да­чи не­об­хо­ди­мо оформ­лять в тер­ми­нах на­бо­ра сущ­но­стей, дос­та­точ­ных для опи­са­ния всех су­ще­ст­вен­ных эле­мен­тов за­да­чи и не со­дер­жа­щих лиш­ней, не­су­ще­ст­вен­ной ин­фор­ма­ции;

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

Пер­вым про­грам­ми­стом, на­пи­сав­шим в 1843 про­грам­му (вы­чис­ле­ние чи­сел Бер­нул­ли) для вы­чис­лит. уст­рой­ст­ва (ана­ли­ти­че­ской ма­ши­ны Ч. Бэб­бид­жа), счи­та­ет­ся гр. А. Лав­лейс.

П. на пер­вых ком­пь­ю­те­рах осу­ще­ст­в­ля­лось пу­тём ус­та­нов­ки пе­ре­клю­ча­те­лей в нуж­ные по­ло­же­ния; про­грамм как та­ко­вых ещё не су­ще­ст­во­ва­ло.

Пер­вая ЭВМ с хра­ни­мой в па­мя­ти про­грам­мой (реа­ли­за­ция т. н. прин­ци­пов фон Ней­ма­на) – EDSAC (1949, см. в ст. Вы­чис­ли­тель­ная ма­ши­на).

Раз­ви­тие П. (в нач. 1950-х гг.) свя­за­но с пе­ре­хо­дом от на­пи­са­ния про­грамм на язы­ках ма­шин­ных ин­ст­рук­ций к бо­лее удоб­ным для вос­при­ятия че­ло­ве­ка язы­ком ас­семб­лер, а за­тем – к язы­кам вы­со­ко­го уров­ня, не­за­ви­си­мым от ар­хи­тек­ту­ры ком­пь­ю­те­ра, пер­вы­ми из ко­то­рых бы­ли фор­тран (fortran, 1954–57) и лисп (LISP, 1958, от LISt Processing language – язык об­ра­бот­ки спи­сков).

Не­ко­то­рые идеи, реа­ли­зо­ван­ные в та­ких язы­ках, сфор­му­ли­ро­ва­ны А. А. Ля­пу­но­вым в его опе­ра­тор­ном ме­то­де про­грам­ми­ро­ва­ния (1953).

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

В анг­лоя­зыч­ной лит-ре вме­сто тер­ми­на «П.» ис­поль­зу­ется «software engineering» – «про­грамм­ная ин­же­не­рия» (вве­дён в 1968 Ф. Л. Бау­эром, США). В СССР в 1970-х гг. А. П. Ер­шо­вым тер­мин пе­ре­во­дил­ся как «тех­но­ло­гия про­грам­ми­ро­ва­ния».

Важ­ны­ми ве­ха­ми в раз­ви­тии дис­ци­п­ли­ны ста­ли вы­де­ле­ние по­ня­тий про­грамм­но­го мо­ду­ля и его ин­тер­фей­са ка­над. инж. Д. Пар­на­сом в 1972, чёт­кое оп­ре­де­ле­ние в нач. 1990-х гг. по­ня­тия ар­хи­тек­ту­ры про­грамм­но­го обес­пе­че­ния и по­сте­пен­но рас­ши­ряю­щее­ся при­ме­не­ние ана­ли­за про­грамм.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Вторник, 12 Ноябрь, 2019 16:42 

Зарегистрирован: Воскресенье, 24 Февраль, 2008 15:32
Сообщения: 4951
Откуда: Москва
Уважаемые коллеги!

Изложенные выше четыре энциклопедических статьи написаны на высоком научном уровне и являются авторитетным источником, отражающим взгляд современных российских ученых на понятия АЛГОРИТМ и ПРОГРАММИРОВАНИЕ.

Преподаватели могут опираться на эти материалы на занятиях со студентами.

Приглашаю желающих высказать свое мнение и критические замечания.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Вторник, 12 Ноябрь, 2019 19:20 

Зарегистрирован: Пятница, 08 Декабрь, 2017 18:24
Сообщения: 419
Откуда: Астрахань-Сочи
Спасибо.
Из определения алгоритма в БРЭ следует, что инструкция с использованием сложных (малопонятных) элементов алгоритмом не является.

Значит ли это, что диаграмма на ДРАКОНе с использованием Вставок алгоритмом не является? Ведь Вставка - это практически "Черный ящик" для читателя, когда он в её впервые увидел, и не познакомился с сутью, как работает диаграмма, на которую эта Вставка ссылается.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Вторник, 12 Ноябрь, 2019 20:31 

Зарегистрирован: Воскресенье, 24 Февраль, 2008 15:32
Сообщения: 4951
Откуда: Москва
Дмитрий Бардынин писал(а):
Значит ли это, что диаграмма на ДРАКОНе с использованием Вставок алгоритмом не является?

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

Я понял так, что следует различать понятия:
— АЛГОРИТМ,
— ВЫЧИСЛИТЕЛЬНЫЙ АЛГОРИТМ.

Компьютер умеет выполнять только ВЫЧИСЛИТЕЛЬНЫЙ АЛГОРИТМ, но не АЛГОРИТМ.

Дракон-схема со Вставками, в которой что-то не указано, НЕ является ВЫЧИСЛИТЕЛЬНЫМ АЛГОРИТМОМ.

Вы говорите о читателе алгоритма, т. е. о человеке.
Здесь следует учесть, что АЛГОРИТМ — это НЕ математическое понятие.

Математическим понятием, по А. Л. Семенову является ВЫЧИСЛИТЕЛЬНЫЙ АЛГОРИТМ (или ОБУЧАЮЩИЙСЯ, или расширение понятия алгоритм).
Академик РАН А. Л. Семенов писал(а):
В ма­те­ма­ти­ке по­ня­тие А. су­жа­ет­ся и уточ­ня­ет­ся сле­дую­щим об­ра­зом.
Дей­ст­вие со­сто­ит в по­сле­до­ва­тель­но­сти пе­ре­хо­дов от од­но­го со­стоя­ния вы­чис­ле­ния (про­цес­са ра­бо­ты А.) к дру­го­му; со­стояния – это кон­ст­рук­тив­ные объ­ек­ты (напр., сло­ва в дан­ном ал­фа­ви­те; в ча­ст­но­сти, це­лые чис­ла в де­ся­тич­ной или дво­ич­ной за­пи­си).

Трудность в том, что Семенов, разграничив два понятия (АЛГОРИТМ, ВЫЧИСЛИТЕЛЬНЫЙ АЛГОРИТМ), по ходу изложения начинает их смешивать.

Говоря об алгоритме, он, как правило, имеет в виду ВЫЧИСЛИТЕЛЬНЫЙ АЛГОРИТМ.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Среда, 13 Ноябрь, 2019 17:26 

Зарегистрирован: Понедельник, 25 Июнь, 2012 17:26
Сообщения: 374
Владимир Паронджанов писал(а):
Здесь следует учесть, что АЛГОРИТМ — это НЕ математическое понятие.

Математическим понятием, по А. Л. Семенову является ВЫЧИСЛИТЕЛЬНЫЙ АЛГОРИТМ (или ОБУЧАЮЩИЙСЯ, или расширение понятия алгоритм).
...
Трудность в том, что Семенов, разграничив два понятия (АЛГОРИТМ, ВЫЧИСЛИТЕЛЬНЫЙ АЛГОРИТМ), по ходу изложения начинает их смешивать.

Говоря об алгоритме, он, как правило, имеет в виду ВЫЧИСЛИТЕЛЬНЫЙ АЛГОРИТМ.

Семенов ничего не смешивает. В математике своё понятие именно как "алгоритм" (по своей природе он вычислительный). Такие математические понятия как обучающийся алгоритм и пр. -- расширения исходного понятия, формирующие определенные классы алгоритмов.

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

viewtopic.php?f=170&t=6063&start=60#p101337
Цитата:
В теории алгоритмов понятие математического алгоритма отождествляется с понятием рекурсивной или эффективно вычислимой функции, определенной в классе конструктивных объектов, а само определение алгоритма формулируется так:

«точное предписание, которое задает вычислительный процесс (называемый в этом случае алгоритмическим), начинающийся с произвольного исходного данного (из некоторой совокупности возможных для данного алгоритма исходных данных) и направленный на получение полностью определяемого этим исходным данным результата» [84].

Это и подобные ему определения априори понятными математическому субъекту на уровне интуиции, и при углубленном анализе понятие алгоритма в конечном счете математики относят к неопределенным базисным понятиям, таким как множество или число.

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

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

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

Так, S-базис содержит перечень допустимых статусных (сигнатных) объектов и форм их представления: вещества, детали, изделия, виды энергии, сигналы, базы данных и другие знаки;

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

реляционный базис определяет типы R-объектов: условия, ограничения, требования, связи и т. п.

Математический алгоритм материально-информационного процесса есть приближенная абстрактная модель технологического алгоритма.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Среда, 13 Ноябрь, 2019 17:30 

Зарегистрирован: Понедельник, 25 Июнь, 2012 17:26
Сообщения: 374
Дмитрий Бардынин писал(а):
Из определения алгоритма в БРЭ следует, что инструкция с использованием сложных (малопонятных) элементов алгоритмом не является.

Значит ли это, что диаграмма на ДРАКОНе с использованием Вставок алгоритмом не является? Ведь Вставка - это практически "Черный ящик" для читателя, когда он в её впервые увидел, и не познакомился с сутью, как работает диаграмма, на которую эта Вставка ссылается.

Там же по ссылке выше:
Цитата:
Чтобы отделить технологические алгоритмы, частичные или всюду
определенные в заданном классе объектов предметики, от квазиал-
горитмов, необходимо фиксировать FSR-базис и систему, в которой
этот базис реализуется, а также определить алгоритмический или,
точнее сказать, технологический язык алгоритмики — язык
реализации информационных и материальных процессов и технологий, на
котором будет определено управление реализацией алгоритмического
процесса в заданном базисе. На технологическом языке по строго
формализованным правилам задается последовательность шагов
процесса с указанием FSR-объектов для каждого этапа процесса, входные
и выходные объекты, данные F-объекта, предусловия и постусловия
и действия при их нарушении, что и составляет программу процесса,
т. е. точную инструкцию на технологическом языке без предположений
о «догадливой, изобретательной и умной» системе, которая сама решит,
домыслит, что делать, если описание алгоритма неполное.
Реализацию математического алгоритма, записанного на логико-
математическом языке, выполняет математический процессор
объективированного субъекта. Реализация технологического алгоритма может
быть выполнена в информационно-материальной системе —
технологическом процессоре, если он имеет в своем составе все
необходимые функциональные объекты, правильно воспринимающие команды
технологического алгоритма и способные обеспечить информационный
процесс контроля и управления ходом протекания воплощаемого
информационно-материального технологического процесса, поэтому в
открытых системах важную функцию несет подсистема управления.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Среда, 13 Ноябрь, 2019 17:33 

Зарегистрирован: Понедельник, 25 Июнь, 2012 17:26
Сообщения: 374
Владимир Паронджанов писал(а):
Компьютер умеет выполнять только ВЫЧИСЛИТЕЛЬНЫЙ АЛГОРИТМ, но не АЛГОРИТМ.

Компьютер выполняет технологический алгоритм. Алгоритм может иметь особенность, при которой его можно определить как вычислительный (отделяя, напр., от управленческих, реагирующих и пр.). Вариант формулировки такой особенности на форуме был представлен В.И. Шелеховым:
https://forum.drakon.su/viewtopic.php?f=170&t=6063&start=40#p101296
https://forum.drakon.su/viewtopic.php?f=142&t=4284#p89624
Цитата:
Программа-функция не взаимодействует с внешним окружением. Точнее, если возможно перестроить программу таким образом, чтобы все операторы ввода данных находились в начале программы, а весь вывод собран в конце программы, то такая программа относится к классу программ-функций.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Среда, 13 Ноябрь, 2019 20:12 

Зарегистрирован: Воскресенье, 24 Февраль, 2008 15:32
Сообщения: 4951
Откуда: Москва
PSV100 писал(а):
Здесь на форуме уже были обсуждения формализации понятия алгоритма. В теоретической информатике, в частности по Г.Н. Звереву, реальные трудности сняты благодаря разграничению понятий математического и технологического алгоритма:

viewtopic.php?f=170&t=6063&start=60#p101337
Цитата:
В теории алгоритмов понятие математического алгоритма отождествляется с понятием рекурсивной или эффективно вычислимой функции, определенной в классе конструктивных объектов, а само определение алгоритма формулируется так:

«точное предписание, которое задает вычислительный процесс (называемый в этом случае алгоритмическим), начинающийся с произвольного исходного данного (из некоторой совокупности возможных для данного алгоритма исходных данных) и направленный на получение полностью определяемого этим исходным данным результата» [84].

Это и подобные ему определения априори понятными математическому субъекту на уровне интуиции, и при углубленном анализе понятие алгоритма в конечном счете математики относят к неопределенным базисным понятиям, таким как множество или число.

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

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

Книги
Цитата:
Зверев Г.Н. Теоретическая информатика и ее основания. В двух томах. Т. 1. — М.: ФИЗМАТЛИТ, 2007. — 592с. Т. 2. — М.: ФИЗМАТЛИТ, 2009. — 576с.

Кто такой Г.Н. Зверев? http://gnzv.ru/about/
Справка
на личном сайте "Обсуждение оснований теоретической информатики и их приложений"

Цитата:
Геннадий Никифорович Зверев

Об авторе
Зверев Геннадий Никифорович

Место работы: Уфимский государственный авиационный технический университет (УГАТУ)

Должность: профессор кафедры компьютерной математики, д.т.н. Заслуженный деятель науки техники Республики Башкортостан.

Биографическая справка: родился 26 августа 1935 года, в 1958 году окончил Грозненский нефтяной институт с дипломом инженера — геофизика и направлен в Башкирию в Волго-Уральский филиал ВНИИГеофизики.

В 1965 году защитил в МГРИ кандидатскую диссертацию по информационному моделированию геофизических исследований и машинному проектированию электромагнитных средств измерений.

В 1982 году защитил в МИНХиГП докторскую диссертацию по общей теории автоматизированной интерпретации геофизических данных, проектированию и анализу эффективности геофизических исследований.

В 1986 году организовал и возглавил лабораторию вычислительной техники и автоматизированного проектирования в Институте проблем сверхпластичности металлов АН СССР и кафедру проектирования средств информатики в УГАТУ (с 1999 года профессор кафедры). Автор более 250 научных работ.
http://gnzv.ru/about/


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Вторник, 06 Октябрь, 2020 11:30 

Зарегистрирован: Воскресенье, 24 Февраль, 2008 15:32
Сообщения: 4951
Откуда: Москва
Академик РАН А. Л. Семенов писал(а):
В ма­те­ма­ти­ке по­ня­тие А. су­жа­ет­ся и уточ­ня­ет­ся сле­дую­щим об­ра­зом.
Дей­ст­вие со­сто­ит в по­сле­до­ва­тель­но­сти пе­ре­хо­дов от од­но­го со­стоя­ния вы­чис­ле­ния (про­цес­са ра­бо­ты А.) к дру­го­му; со­стояния – это кон­ст­рук­тив­ные объ­ек­ты (напр., сло­ва в дан­ном ал­фа­ви­те; в ча­ст­но­сти, це­лые чис­ла в де­ся­тич­ной или дво­ич­ной за­пи­си).

Трудность в том, что Семенов, разграничив два понятия (АЛГОРИТМ, ВЫЧИСЛИТЕЛЬНЫЙ АЛГОРИТМ), по ходу изложения начинает их смешивать.

Говоря об алгоритме, он, как правило, имеет в виду ВЫЧИСЛИТЕЛЬНЫЙ АЛГОРИТМ.

По моему мнению, понятие алгоритм является неоднозначным и нуждается в уточнении.

Чтобы добиться ясности, я различаю два термина:
— алгоритм,
— жизнеритм.

Далее см. viewtopic.php?f=170&t=6898


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 12 ] 

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
cron
Вся информация, размещаемая участниками на конференции (тексты сообщений, вложения и пр.) © 2008-2020, участники конференции «DRAKON.SU», если специально не оговорено иное.
Администрация не несет ответственности за мнения, стиль и достоверность высказываний участников, равно как и за безопасность материалов, предоставляемых участниками во вложениях.
Powered by phpBB® Forum Software © phpBB Group
Русская поддержка phpBB