ホーム |  独り言  |  論評  |  小話  旅行  | 御挨拶 ガーデニング   |  ブログ  |  English  | YouTube 

 論評  オントロジの庭(その8) <-----  現在のページ                                                        戻る  ----->   論評   

 バックナンバー        | その1 | その2 | その3 | その4 | その5 | その6 | その7 | その8 | その9 | その10 |


 オントロジの庭(その8)    アルゴリズムとプログラム言語

   
 アルゴリズムは世界を動かす呪文である。

                              2022年2月15日

      
 卵焼きを作る「アルゴリズム」
   

アルゴリズム(algorithm)
問題を解くための手順を定式化したものです。その手順とはプログラムのことです。
プログラムという言葉は昔から使われてきました。音楽会のプログラム、運動会のプログラム、同窓会のプログラムなど日常語です。葬儀や結婚式にも式次第というプログラムがあります。共通した意味は、段取りや順番を示していることです。

運動会ならば

  (1) 9:00  校長挨拶
  (2) 9:20  全員体操
  (3) 10:00 1年生100m徒競争


など運動会の段取り(順番)の手順が示されています。

アルゴリズムとして考えれば、運動会という問題を解くためのブログラムといえます。
すなわち、アルゴリズムは、人間が問題を解決するための思考の手順なのです。
身近な事例を考えてみます。料理のレシピなどにも、アルゴリズムを見つけることができます。

卵焼きを作る「アルゴリズム」を示してみましょう。例えば、手順(1)〜(8)になるでしょう。

  (1)生卵を割る
  (2)容器に入れる
  (3)卵白と卵黄を溶く
  (4)調味料を入れる
  (5)フライパンに流し込む
  (6)一定時間の経過を待つ
  (7)火を止める
  (8)皿に移す


さらに分かりよくするために「手順(1)〜(8)」を図解してみます。この図解を「フローチャート」と呼びます。図解規則を設けると、誰もが理解できるようになります。処理は「四角図」とし、判断は「三角図」とします。この例では三角図は「失敗した?」を判断し、「Yes」ならば(1)〜(3)の手順を繰り返します。「No」ならば、失敗していないので(4)〜(8)の手順を行います。手順の内容を数式のように「記号規則」によって記述する文法があれば人工言語になります。これがプログラム言語なのです。

例えば、卵焼きを作る「アルゴリズム」は、架空の料理プログラム言語で記述すると、以下のようになるでしょう。

  (1) LetBreak eggs   生卵を割る
  (2) LetInput eggs   容器に入れる
  (3) LetMix eggs    卵白と卵黄を溶く


プログラム言語
アルゴリズムをプログラミングするためにプログラム言語は開発されました。コンピュータはもともと機械語というハードウェアに適合したコード(記号)で動作します。機械語は英語などの自然言語と違い、専門家でも分かりづらい。出来るだけ人間に分かりよい、英語や日本語など自然言語に似ているプログラム言語を開発できないか。これがプログラム言語の進化の歴史になりました。その結果、英語に似せた高級プログラム言語が続々と誕生しました。

昔はFORTRAN、COBOL、BASICなど開発されましたが、現在はC言語、Java、Pythonなどが支流になっています。これらのプログラム言語は疑似英語なので、英語を母国語とする人達には違和感なく使えます。

下記はC言語によるプログラミング例で、画面に「Hello world」という文字を表示させます。

   main()
   {
   printf("Hello world!\n");
   }


これをJavaでプログラミングすると下記のように記述されます。Javaの文法規則は複雑で、アルゴリズムを良く理解してないと、なかなか記述できないようです。

  public class HelloWorld {
  public static void main (String arg[]) {
  System.out.printin ("Hello world") ;
  }
  }


なお、JavaScriptというプログラム言語はオントロジの庭(その4)をお読みください。

英語文法というアルゴリズム
デジタル世界はアルゴリズムの集合体なのです。アルゴリズムを素早く解読できるシンプルなIT言語がなによりも重要です。アルファベットなど記号は単純な組み合わせによって英語文法というアルゴリズムが成り立ちました。

それに比べると、日本語は複雑な記号を使い豊かに表現します。その表現の中にアルゴリズムも同時に組み込もうとします。欲張った世界でも稀な自然言語と言えます。日本人は手書き、漢字カナ文字そして日本語にこだわり続けました。日本語は文法的にIT向きではなかった。ただし概念化という最も人間的な概念文法オントロジ」(その1)では、日本語は世界一です。しかし世界一であることが、かえってガラパゴス化の原因になったと思います。

  自然と草花を愛でながらオントロジを再考し、2022年を穏やかに過ごします。

                      オントロジの庭は連載です。


    ホーム |  独り言  |  論評  |  小話  旅行  | 御挨拶 ガーデニング   |  ブログ  |  English  | YouTube 

 論評  オントロジの庭(その8)  <-----  現在のページ                                                  戻る  ----->   論評

 バックナンバー            | その1 | その2 | その3 | その4 | その5 | その6 | その7 | その8 | その9 | その10 |   



著作権について

このWebサイトに掲載されている記事、写真、イラストなどの著作権は、斉藤孝が所有していますから「私的使用」または「引用」など著作権法上認められている場合を除き、斉藤孝に無断で転載、複製、放送、公衆送信、翻訳などに利用をすることはできません。宜しく配慮願います。


    Copyright(C)  斉藤孝のガーデニング All Rights Reserved.


 

 

inserted by FC2 system