MyEnigma

とある自律移動システムエンジニアのブログです。#Robotics #Programing #C++ #Python #MATLAB #Vim #Mathematics #Book #Movie #Traveling #Mac #iPhone

GoogleのC++最適化ライブラリCeres Solverを使って制約付き最適化問題を解いてみる

目次

  • 目次
  • はじめに
  • 制約付き最適化
  • Ceres Solverで制約付き最適化問題を解く
  • 参考資料
  • MyEnigma Supporters

はじめに

今回もGoogleのC++最適化ライブラリCeres Solverを使ってようという記事です。

(これまでの関連記事は末尾のリンクを参照下さい)

 

今回は、これまでは制約条件の無い最適化問題を解いてきましたが、

制約条件付きの最適化問題を解いてみようと思います。

 

続きを読む

アメリカで生活する場合に事前に知っておくと便利なこと

目次

  • 目次
  • はじめに
  • iPhoneユーザはApple Payを登録すると便利
  • ベイエリア版Suica: Clipper Cardが便利
  • 日本の円口座から現地の米ドル口座にお金を移す方法
  • 家を決めるまでの注意点
  • 小切手の使い方
  • 銀行口座(Bank of America)を開いた時にもらえるクレジットカードは使いづらい
  • T-mobileのプリペイドプランはなぜか日本のクレジットで支払った方が安い
  • タクシー配車サービスUberとLyftが便利
  • カルフォルニアにおける運転免許の取得方法
  • 日本の映画やテレビを見るためにVPNサーバを立てる
  • 無料で作れる公立図書館のカードを作っておくと、美術館などの観光名所が無料になる
  • 参考資料
  • MyEnigma Supporters

はじめに

実際にアメリカ(自分の場合はカルフォルニア)で

生活した経験から、

知っておくと便利だと思うことを

メモとして残しておきます。

続きを読む

GoogleのC++最適化ライブラリCeres Solverを使った移動ロボットのためのGraph SLAMサンプルコード

目次

  • 目次
  • はじめに
  • Position TrackingとTrajectory Estimation
  • Graph SLAMとは?
  • Ceres Solverを使ったGraph SLAMのサンプルコード
  • 参考資料
  • MyEnigma Supporters

はじめに

今回も、C++最適化ライブラリCeres Solver関連の記事です。

myenigma.hatenablog.com

myenigma.hatenablog.com

myenigma.hatenablog.com

myenigma.hatenablog.com

 

今回は、Ceres Solverを使って、

移動ロボットで良く利用されるGraph SLAMの

非常にシンプルなサンプルコードを作成してみたいと思います。

 

続きを読む

GoogleのC++最適化ライブラリCeres Solverを使ったバンドル調整サンプルコード

目次

  • 目次
  • はじめに
  • バンドル調整とは?
  • Ceres Solverを使ったバンドル調整コード
  • Ceres Solver関連記事
  • 参考資料
  • MyEnigma Supporters

はじめに

今回も、GoogleのC++最適化ライブラリCeres Solverを使ってみよう

という記事です。

myenigma.hatenablog.com

myenigma.hatenablog.com

myenigma.hatenablog.com

 

今回は、画像処理やロボットのアプリケーションで有名な

バンドル調整という問題を、

このCeres Solverを使って解くサンプルコードを解説したいと思います。

 

続きを読む

GoogleのC++最適化ライブラリCeres Solverを使った曲線フィッティングの方法

目次

  • 目次
  • はじめに
  • Ceres Solverによる曲線フィッティング
  • Ceres Solverによるロバスト曲線フィッティング
  • Ceres Solver関連記事
  • 参考資料
  • MyEnigma Supporters

はじめに

今回の記事もこれらの記事の続きです。

myenigma.hatenablog.com

myenigma.hatenablog.com

 

今回は、Ceres Solverを使って

曲線フィッティングをしてみようと思います。

 

続きを読む

Windows用のキーボードとマウスをMacで使うための初期設定まとめ

目次

  • 目次
  • はじめに
  • Windowsの半角全角キーをMacの英数/かな変換にする
  • JISキーボードの設定
  • Windowsキーボードのスペースの横のキーを変換/無変換にする
  • キーボードのCtrlキーをcommandに、Caps LockをCtrlに
  • マウスの方向をWindowsと同じ方向に設定する
  • マウスのボタンを設定
  • 参考資料
  • MyEnigma Supporters

はじめに

色々な理由で、

自分はWinwosとUbuntu, MacのそれぞれのOSを使うことが多いのですが、

キーボードとマウスは、

コストパフォーマンスが最高だと言われる、

下記の2つのLogicoolのものを使っています。

 

しかし、このマウスとキーボードは

Windows用なので、Macでそのまま使用すると結構不便です。

 

そこで、できるだけWindowsのキーボードの操作を

ストレスなくMacでも使えるような設定方法をまとめておきたいと思います。

 

ちなみに下記の内容はSierra対応です。

 

その他のMacの初期設定は下記を参照下さい。

myenigma.hatenablog.com

 

続きを読む

アメリカにおける小切手(Check)の使い方と注意点

目次

  • 目次
  • はじめに
  • 小切手を取得する
  • 小切手の書き方
  • 数字を英語に変換するWebツール
  • 参考資料
  • MyEnigma Supporters

はじめに

日本とアメリカの大きな文化的な違いとして、

小切手(Check)があります。

 

アメリカはクレジットカード文化と言われるので、

なんでもクレジットカードで支払えるかと思いきや、

ライフライン系(家賃や電気・ガスなど)や、

大きめの支払い(10万円以上など)は

未だに小切手で支払う必要がある場合があります。

(日本では銀行振込が基本ですが、

なぜかアメリカでは銀行振込(wire transfer)が

非常に手数料が高いので、

手数料が安い小切手の文化が残っているようです)

 

最近は自動引き落としに対応したマンションなども

増えてきているようですが、

個人オーナの家などは、

毎月、家賃の支払いのために小切手を郵送する必要があったりします。

 

また、日系の不動産屋などでも、

支払いは小切手でした。

myenigma.hatenablog.com

 

そこで、今後アメリカで生活する人のために、

小切手の書き方や注意点などをまとめておきたいと思います。

 

続きを読む

GoogleのC++最適化ツールCeres solverを使って複雑な最適化を解いてみた。

目次

  • 目次
  • はじめに
  • Ceresにおける導関数の指定方法
    • 数値演算的に導関数を与える方法
    • 解析的に導関数を与える方法
    • その他の導関数の求め方
  • 複雑な最適化の実施
  • より深く最適化を学びたい人は
  • 参考資料
  • MyEnigma Supporters

はじめに

先日、上げた記事の続きです。

myenigma.hatenablog.com

 

今回は、もう少しCeresのシステムの詳しい説明と、

複雑な最適化を実際に実装してみたいと思います。

 

Ceresの基本的な部分は先程の記事を参照下さい。

続きを読む

Googleが開発しているC++最適化ライブラリCeres Solverの使い方とサンプルコード

これなら分かる最適化数学―基礎原理から計算手法まで

これなら分かる最適化数学―基礎原理から計算手法まで

目次

  • 目次
  • Ceres Solverとは?
  • Ceresの名前の由来
  • Ceres Solverの特徴
  • Ceres Solverの利用用途
  • 各プラットフォームのインストール方法
  • Ceres Solverを使った最適化サンプルコード
    • サンプルの最適化処理を実行する
    • 制約付き非線形最適化の基礎
    • 非常に簡単な非線形最適問題を解いてみる
  • Ceres Solver関連記事
  • より深く最適化を学びたい人は
  • 参考資料

 

Ceres Solverとは?

Ceres Solverは、

Googleが開発&公開している

オープンソースの最適化用C++ライブラリです。

   

複雑で大規模な最適化問題をモデリングしたり、

解いたりすることができます。

このCeres Solverは2010年からGoogleの製品にも使われてきました。

Ceres Solverは下記の二つの用途で使用することができます。

  1. 制約付き非線形最小二乗問題

  2. 制約なしの最適化問題

 

今回の記事ではこのCeres Solverのインストール方法から

Ceres Solverを使用したサンプルコードまで説明したいと思います。

 

続きを読む

アメリカのベイエリア(Berkeley)で住居を決めるまでにやったことのメモ

目次

  • 目次
  • はじめに
  • 日系の不動産屋にアポを取る
  • 渡米後内見&物件の仮押さえ
  • 賃貸保険
  • 電気-ガス
  • インターネット
  • 家具のレンタルと不動産屋とのトラブル
  • 参考資料
  • MyEnigma Supporters

はじめに

2016年9月から

しばらくBerkeleyに滞在する予定なのですが、

誰かの役に立つかもしれないので、

Bekeleyで住居を決めるまでのメモを残しておきたいと思います。

 

続きを読む