非線形最適化の基礎 2.7

メモ

2.7節 凸関数

  • 凸関数から凸関数を構成する例
  • 微分可能な凸関数の勾配による特徴付け
  • 2回連続的微分可能な凸関数のHesse行列による特徴付け
  • 2回連続的微分可能な狭義凸関数のHesse行列による十分条件
  • 2回連続的微分可能な強凸関数のHesse行列による特徴付け
  • 真凸関数は実行定義域の内部(\neq \phi)で連続

非線形最適化の基礎 2.6-

メモ

2.6節 関数の連続性と微分可能性

  • 拡張実数値関数の定義
    • 値として\pm \inftyを許す
  • 上半連続、下半連続、連続の定義
  • Brouwerの不動点定理
  • レベル集合の定義
  • 拡張実数値関数の下半連続性のレベル集合による特徴付け
  • 微分可能性の定義
  • 平均値の定理
  • Taylorの定理
  • 陰関数の定理

2.7節 凸関数

  • グラフ graph f、エピグラフ epi f の定義
  • エピグラフが凸集合である関数を凸関数と定義
  • 実行定義域 dom f の定義
  • 真凸関数の定義
  • 凹関数の定義
  • 狭義凸関数、強凸関数(一様凸関数)の定義

計算理論の基礎 1

まあ、簡単なメモ

第1章 正規言語

  • 決定性有限オートマトン(DFA)の定義
  • 正規言語をDFAで認識される言語として定義
  • 正規演算の定義
    • 和集合演算、連結演算、スター演算
  • 非決定性有限オートマトン(NFA)の定義
  • DFAとNFAは等価
  • 正規言語をNFAで認識される言語として特徴付けられる
  • 正規言語のクラスは正規演算に関して閉じている
  • 正規表現の定義
  • 言語は正規表現で記述されるとき、かつそのときに限り正規言語である。
  • 正規言語に対するポンピング補題

状態数最小のオートマトンの話題は扱っていない。

Project Euler 091

http://projecteuler.net/problem=91
http://odz.sakura.ne.jp/projecteuler/index.php?cmd=read&page=Problem%2091

O(0,0), P(x1,y1), Q(x2,y2) 0<=x1,y1,x2,y2<=50
三角形OPQで異なる直角三角形は何個作れるか?


次のコードは自分で書いたもの。原点Oが直角になる場合とそうでない場合に分けて数え上げた。角Qが直角となるときの点Qの座標のリストで(0,0)を落としているのがあまりきれいじゃないと思う。

-- 点Qの座標のリスト
qs = drop 1 [(x,y)|x<- [0..50], y<- [0..50]]

-- 点Q(x,y) /= (0,0) とが直角となるような点Pで範囲内のもの
ps (x,y) = takeWhile p [(x-k*dx, y+k*dy)| k<- [1..]]
           ++ 
           takeWhile p [(x+k*dx, y-k*dy)| k<- [1..]]
    where dx = y `quot` (gcd x y)
          dy = x `quot` (gcd x y)

-- 点(a,b)が範囲内にあるか?
p (a,b) = 0 <= a && a <= 50 && 0 <= b && b <= 50

-- 原点Oが直角になる場合とそうでない場合に分けて和をとる
p091 =  (+) (50*50)  $ sum $ map (length.ps) qs 

main = print p091

次のコードはHaskellWikiのもの。直角となる点が軸上にある場合とそうでない場合に分けて数え上げている。数え上げればいい問題だからいちいち座標を計算する必要はないことがわかる。
http://www.haskell.org/haskellwiki/Euler_problems/91_to_100

reduce x y = (quot x d, quot y d)
  where d = gcd x y
 
problem_91 n = 
    3*n*n + 2* sum others
    where
    others =[min xc yc|
        x1 <- [1..n],
        y1 <- [1..n],
        let (yi,xi) = reduce x1 y1,
        let yc = quot (n-y1) yi,
        let xc = quot x1 xi
        ]

最適化の数学 1.4

1.4 不等式制約問題の最適性条件

不等式制約問題

min: f(x)
s.t.: g_{i}(x) \leq 0 (i=1,...,l)
   g_{i}(x) = 0 (i=l+1,...,m)
    x \in \mathbb{R}^{n}

実行可能解xに対し不等式条件で等号が成り立つとき、この制約条件はxにおいて有効であるという。
有効制約条件の添え字集合を次のように記す。

A(x) = \{i|g_{i}(x)=0 (i=1,...l)\}

実行可能解xに対し有効である不等式制約条件の勾配ベクトルと等式制約条件の勾配ベクトルが互いに1次独立であるとき、xは正則であるという。

  • 不等式制約問題の最適性必要条件(KKT条件)

最適化の数学 1.3

1.3 等式制約問題の最適性条件

等式制約問題

min: f(x)
s.t.: g_{i}(x) = 0 (i=1,...,m)
    x \in \mathbb{R}^{n}

ラグランジュ関数

L(x,u) = f(x) + u^{T}g(g)

ペナルティ関数

F^{k}(x) = f(x) + \frac{k}{2}||g(x)||^{2} + \frac{\alpha}{2}||x-x^{*}||^{2}

  • 等式制約問題の最適性必要条件
  • 1次の最適性必要条件の幾何学的解釈
    • 制約が1つ g(x)=0 だけのときは、この範囲内で微小量移動させても目的関数 f(x) の値は変化しない。
  • 局所最適解x^{*}に対するラグランジュ乗数ベクトルu^{*}の意味
    • g_{i}(x)=0g_{i}(x)=\delta w_{i}だけ変化させたときに、目的関数値がf(x^{*})から-u_{i}^{*}\delta w_{i}だけ変化する。
  • 等式問題の最適性十分条件

読んでいる本

最適化の数学 (共立講座 21世紀の数学 13)

最適化の数学 (共立講座 21世紀の数学 13)