見出し画像

【CTOブログ】モルゲンロットが目指す世界~技術の視点から

モルゲンロットCTOの中村です。
モルゲンロットはミッションとして”必要な時に必要な計算力にアクセスできる世界を実現できる”ことを目指しています。
この世界を実現するにはビジネスと技術の両面で様々なチャレンジが必要です。今回はこのチャレンジを技術の面からどう考えているかを、簡単にご紹介したいと思います。


計算力とは何か?なぜ必要なのか?

まず、”計算力”というのはモルゲンロットの造語です。そもそも計算という言葉自体にも色々な意味がありますが、ここでは、いわゆるサーバー(高性能なパソコン)によって行われる仕事だと定義します。この計算にはとてもたくさんの種類があります。最近流行っているChat-GPTをはじめとするAIにやらせるものであり、何かをシミュレーションするようなものでもあります。今の世界は、たくさんのサーバーによる計算によって成り立っています。
モルゲンロットでは、この計算を実行するもののことを計算力と呼んでいます。
この計算力は、AIが流行りだして以来、とても重要なものと考えられていますが、同時に計算力が必要な人たち全員に届けるのが難しい状況にもなっています。急激な需要の増加に対して供給が追いつかないと同時に、値段も急激に上昇したため、計算力を使用するには多くの制約があります。
モルゲンロットはこの問題を解決するため、いくつかのサービスを提供しており、その基盤となる技術開発にも注力しています。

誰がどのくらい計算力を使うのか?

ここまで書くと、この疑問が浮かんでくると思います。仮に何かAI関連のサービスを利用している人であったとしても、自分がどれくらい計算力を使用しているかわからない人の方が多いかと思います。これは何も、サービス利用者に限らず、開発者に関しても同じです。
自分が今どのくらい計算力を使用しているのか、いちいち管理しながら開発を進めるのはとても大変です。これが大きな組織になったら、管理はさらに大変です。
結局、誰がどのくらいの計算力が必要かわからず、あいまいなままビジネスを進めていかないといけません。

計算力の最適化が必要

こういった課題解決には最適化が有効です。計算力の最適化にあたり、計算力を使用するエンジニアやユーザーの情報を集め、整理していく必要があります。その上で、様々な最適化の手法により、必要な人に必要な計算力の割り当てをすることが有効です。
しかし残念ながら、十分な情報があったとしてもこの最適化は簡単ではありません。計算力の最適な割り当てをする問題は、数理計画的な観点ではとても複雑な問題です。
そこで、モルゲンロットでは様々な条件を考慮しつつ、計算力の最適割り当て問題を解決する方法を模索しています。

最適化に必要な要素と技術開発

計算力の最適化について、何かのリソースを必要な人に割り当てる問題と考えるのであれば会議室割り当て問題やシフト最適化などのスケジュール最適化とみなすことができますし、何かの仕事を適切な順序で処理する問題と考えれば、ジョブショップ問題であると考えることができます。これらの最適化はOperations researchの分野では古くから取り組まれてきた手法です。
簡単な条件であれば、これらの手法を用いて計算力の最適化が可能ですが、色々な要望や大きなスケールの問題になると、何かの工夫をしなければこれらの手法を使っても最適化は困難です。
モルゲンロットでは、このような最適化技術の開発にとても注力しています。将来的には、計算力の割り当て問題の最適化について汎用的な手法の開発を目指し、今は小さな最適化問題から順番に取り組んでいます。

最適化に自信のある人、最適化をビジネスに活用したい人を募集中


ここまで書いたのは、モルゲンロットの開発している内容の一部ですが、非常に重要な部分であるとともに、まだまだ開発が十分でない部分でもあります。
ちなみにこの記事を書いている私自身も最適化が専門というわけではありません。もしかしたら、最適化に詳しい人からしたら、計算力の最適割り当てはとても簡単に解決できる問題かもしれません。
そこでモルゲンロットではそのような最適化に自信のある人材を募集してます。我々のビジネスには最適化しなければいけない問題がたくさんありますので、最適化をビジネスに活かしていきたい人にはうってつけの環境です。もしも興味があれば、ぜひ一緒に開発に取り組んでいきましょう!

▼エンジニア募集中

▼Cloud Bouquet

モルゲンロットが提供するGPUクラウドサービス
 ~GPUを安価に使えます~