私は大学で数学を専攻しておりました、社会人1年目の者です。
最近は機械学習・AIなどが流行っており、数学がシステム開発の場で応用されていますが、それ以外にも、何か利用されている数学の分野はあるのでしょうか?
エンジニアの方々の中で、システム開発に数学の知識を活用したことがあるという方がいらっしゃれば、是非どういう分野をどのように活用したのか、可能な範囲で教えてください。
よろしくお願いします。
気になる質問をクリップする
クリップした質問は、後からいつでもMYページで確認できます。
またクリップした質問に回答があった際、通知やメールを受け取ることができます。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。

回答6件
0
TL;DR
求められている回答では無いかもしれませんが、7年前に土地管理システムの保守開発で、図形の内包判定について理解していなければいけないことがありました。
といっても、「点が多角形に内包されているか証明せよ」程度のごく初歩的なものです。
今となっては幾何学関係のライブラリは揃っていると思われるので、
「マウスでクリックした座標がある図形に内包されているか」
なんていう処理は、もうノンコーディングでできてしまう時代なのかもしれませんが、保守してたプログラムはVisual C++6.0で制作されたもので、かつそれを置き換える様な人的・技術的リソースも無いものの、官公系であったり、会社の売りのパッケージシステムだったため、当時一番新人だった私がC++は微塵もできないのに後任になりました。
さて、sigmacshalingさんとしては、深層学習・AI以外の分野で数学の知識を使う場面があるかというお話ですが、
「パソコンは元々計算機である」
ということが抜けていなければ、数学的概念は非常に出てきます。
特に集合や行列・総和なんかは、知ってると知らないでは計算量(計算時間)、に雲泥の差が出てきます。
「そういう話ではない」
と仰りたいかと思いますが、もう少し踏み込んで統計学の知識などを知っているだけでも、大量のデータを更に高速に、かつ理想的な処理をさせたい場合には重宝する学問と思います。
私自身、高校数学の2B以前の段階で転んで落ちこぼれ組でしたので、数学を専攻されていたsigmacshalingさんが正直うらやましかったりもします。
とはいえ、数学も使い方が分かったり、必要に迫られると分かるものですね。社会人になって知りました(笑)
ということで、私の結論といたしましては、
「道具の使い道が分かれば使い方も分かる」
というところです。
余談: Visual C++ 6.0案件と私
案件のソースコード自体は、それはすごく綺麗なソースコードでした。
しかし、私としてはそのコードの綺麗さゆえ、手をつけるのが恐ろしく、更にプレッシャーでその案件から逃げるように、新卒で入った会社を退職いたしました。
投稿2017/12/31 13:50
総合スコア2244
0
こんにちは。
システム開発に該当するかどうか分かりませんが、数学は結構使われてますよ。jpegとかmp3などの圧縮アルゴリズムはバリバリの数学が使われているようです。暗号アルゴリズム周りも該当するでしょう。
それから、C++を深く知るにつれて感じるのですが、プログラミング言語開発って数学的なセンスが必要な気がします。私自身の数学的センスはお粗末なのでC++言語の深い部分を把握するのに時間がかかりすぎなので使うだけで精一杯です。でも、数学的なセンスが有る人なら言語そのものの開発にも手を出せるのではないかと感じます。
投稿2017/12/31 13:51
総合スコア23274
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
0
ベストアンサー
ブール代数は当然だからそれ以外と言うことですよね?あと制御系のシステムのように対象自体が数学的な物も当然か。金融の価格分析なんかもそうですね。まだまだ、ありそう。
それら以外の一般の話だと、機上性能評価で待ち行列理論を使うことがあります。
投稿2017/12/31 13:18
編集2017/12/31 13:20総合スコア86295
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
0
プログラミングで使われている要素も、バックグラウンドに数学的な概念があるものが存在します。というより、「計算する」ということを抽象化して理論分析する理論計算機科学は、もはや数学の一部となります。
まず、「コンピューターで処理できるもの」と同義に扱われているチューリング完全という概念も、コンピューターが登場するはるか前の1930年台に提唱されています。
そして、正規表現も、形式言語理論に基づいた単語です。理論から「(本来の)正規表現では、左右で対応したカッコとマッチさせることができない」ということが導かれます。
あと、Haskellのような関数型言語も、バックグラウンドとしてはラムダ計算という理論モデルに基づいています。「カリー化」や「モナド」と言った概念も、数学から持ち込まれたものです。
投稿2017/12/31 23:17
総合スコア146544
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。

0
私はソフトウェアエンジニアでなくハードウェアエンジニアでした。
LSI設計は、デジタル設計・アナログ設計・プロセス設計など、細かく分業化されています。私はデジタル設計を担当していましたが、それほど数学は必要とされませんでした。デジタル設計では、暗号理論や誤り訂正理論などを用いることがあります。暗号理論は代数や数論と深くかかわっていたと思います。デジタル設計では、数学というよりもコンピュータ・アーキテクチャの方が重要になってきます。これはCPUやその他周辺部品をどうやって効率化させるかということであり、数学というよりは経験が物をいう世界だと私は思っています。とにかく試行錯誤するということですね。
デジタル設計においては、EDAツールというのを使いますが、EDAツールベンダーはソフトウェアハウスであり、EDAツールの主な課題は「最適化」なので、最適化問題のスペシャリストが多いと思います。
浅学ではございますが、ご参考までに、宜しくお願いいたします。
投稿2017/12/31 13:57
編集2018/01/01 03:33総合スコア667
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。

あなたの回答
tips
太字
斜体
打ち消し線
見出し
引用テキストの挿入
コードの挿入
リンクの挿入
リストの挿入
番号リストの挿入
表の挿入
水平線の挿入
プレビュー
質問の解決につながる回答をしましょう。 サンプルコードなど、より具体的な説明があると質問者の理解の助けになります。 また、読む側のことを考えた、分かりやすい文章を心がけましょう。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。