1. นายอิทธิเดช มูลมั่งมี
นักศึกษาปริญญาโท ภาควิชาวิศวกรรมเครื่องกล
มหาวิทยาลัยเทคโนโลยีพระจอมเกลาธนบุรี
แนวคิดของการหาจุดตรึง (fixed point) มาจากวิธีการหาผลเฉลยโดยประมาณที่เรียกวา Successive
Approximation ซึ่งเปนวิธีการหาผลเฉลยโดยการคํานวณวนรอบซ้ํา (iteration) จากความสัมพันธ
x = T ( x ) เมื่อ n = 0 ,1, 2 ,... เมื่อการกําหนดเงื่อนไขเริ่มตน x มาให กลาวคือผลลัพธที่ไดจากการ
n +1 n 0
คํานวณในรอบกอน( n ) จะถูกสงคาไปยังรอบถัดๆไป( n + 1 ) จนกระทั่งคาของผลลัพธลูเขาสูคงที่คาหนึ่ง
เราเรียกคาคงที่นี้วา จุดตรึง
ทฤษฎีบทการสงแบบดึงดูด (contraction mapping theorem) หรือ ทฤษฎีบทจุดตรึงของบานาค
(Banach fixed point theorem) เปนทฤษฎีบทที่อธิบายผลของการสงแบบดึงดูด (contraction mapping)
เมื่อพิจารณาบนปริภูมิเมตริกบริบูรณ (complete metric space) ซึ่งจะใหเงื่อนไขเพียงพอ (sufficient
condition) สําหรับการมีอยู (existence) และมีเพียงคาเดียว (uniqueness) ของจุดตรึง x * จากการสง T
ขางตน การคํานวณซ้ําจะทําใหลําดับ { x } ลูเขาจุดตรึง x * ดังบทนิยามตอไปนี้
n
บทนิยาม 1 (Fixed point)
ให T เปนการสงบนปริภูมิเวกเตอร X กลาวคือ T : X → X เรานิยาม x * ∈ X วาเปนจุดตรึง (fixed
point) ถา T (x *) = x * และนิยมเขียนแทนดวยสัญลักษณ T x* = x*
2. บทนิยาม 2 (Contraction)
ให X = (X , d ) เปนปริภูมิเมตริก เราจะกลาววา การสง T:X →X เปนการสงแบบดึงดูด
(contraction mapping) ถามีจํานวนจริงบวก α < 1 ซึ่งทําให
d (T x , T y ) ≤ α d ( x , y ) สําหรับทุกคา x , y∈ X
โดยที่จํานวนจริงบวก α เรียกวา คาคงที่การดึงดูด (contraction constant) ของการสง T
ปริภูมิ X x
d(x,y)
Tx
d(Tx,Ty)
y
Ty
รูปที่ 1 แสดงใหเห็นตัวอยางการสงแบบดึงดูดบนปริภูมิ X ใดๆ
เมื่อพิจารณาเฉพาะกรณีที่ T :ℜ → ℜ จากนิยามการสงแบบดึงดูดสามารถเขียนไดเปน
T ( y ) − T (x )
≤ α
y−x
ซึ่งความหมายทางเรขาคณิตคือ เสนตรงที่เชื่อมระหวางสองจุดใดๆ ของฟงกชั่น T ( ⋅ ) จะตองมีความชัน
ไมเกิน α ( 0 < α < 1 หรือ 45 ) ดังรูปที่ 2
o
3. T(y)
T(x) α
x y
รูปที่ 2 แสดงความหมายทางเรขาคณิตของคาคงที่การดึงดูด
โดยอาศัยความรูทางแคลคูลัส ความชันของเสนโคงที่จุดใดๆ ก็คือคาอนุพันธของเสนโคงที่จุดนั้น
dT ( x )
นั่นคือ 0 < ≤ α < 1
dx
กลาวคือ เราสามารถกําหนดคา α ไดจากเงื่อนไขคาอนุพันธของฟงกชั่นขางตน
ทฤษฎีบท 3 (Banach fixed point theorem หรือ Contraction Mapping Theorem)
กําหนดปริภูมิเมตริกบริบูรณ X = (X , d ) โดยที่ X ≠Ø และสมมติใหการสง T:X →X เปนการ
สงแบบดึงดูดบนเซต X จะไดวาการสง T มีผลเฉลย x*∈ X เปนจุดตรึงเพียงคาเดียว
4. พิสูจน
เริ่มตนโดยการกําหนดลําดับ { x } n และแสดงใหเห็นวา ลําดับดังกลาวเปนลําดับโคชี (Cauchy
sequence) ที่ลูเขาหาคา x* ซึ่งเปนจุดตรึงของการสง T ในปริภูมิเมตริกบริบูรณ X และจุดตรึง x* ที่
ไดมีเพียงคาเดียว (uniqueness)
โดยการเลือก x0 ∈ X พิจารณาการสง x n +1 = T x n สําหรับทุกจํานวนเต็ม n ≥ 0
d (x x +1 , x n ) = d (T x n , Tx n −1 ) ≤ α d ( x n , x n −1 ) = α d (T x n −1 , T x n − 2 )
≤ α 2 d ( x n −1 , x n − 2 ) = α 2 d (T x n − 2 , T x n −3 ) ≤ K ≤ α n d ( x1 , x0 )
อาศัยอสมการสามเหลี่ยม (triangle inequality) และอนุกรมเรขาคณิตจํากัด (finite geometric series)
โดยกําหนดให n<r
d ( x n , x r ) ≤ d ( x n , x n + 1 ) + d ( x n + 1 , x n + 2 ) + K + d ( x r −1 , x r )
( )
≤ α n + α n + 1 + K + α r −1 d ( x 0 , x 1 )
⎛ 1− α r−n ⎞
= α ⎜ n
⎜ 1−α ⎟ d ( x 0 , x1 )
⎟
⎝ ⎠
เนื่องจาก 0 <α <1 จึงทําให 1 − α r −n
<1 ดังนั้น
αn
d ( xn , xr ) ≤ d ( x0 , x1 ) (1)
1− α
และพบวา xn → xr ∈ X เมื่อ n → ∞ ดังนั้น { x } เปนลําดับโคชี
n
ตอไปจะแสดงใหเห็นวา ลําดับโคชีลูเขาสูคา x * ซึ่งเปนจุดตรึงของการสง T
จากอสมการสามเหลี่ยม d (x*, T x *) ≤ d (x*, xn ) + d ( xn , x *)
และพิจารณาการสง T x n −1 = x n จะไดวา d (x n , T x *) = d (T x n −1 , x *)
5. ดังนั้น d ( x*, T x *) ≤ d ( x*, x n ) + α d ( x n −1 , x *)
เมื่อ n มีคามากพอ จะทําใหดานขวาของอสมการมีคาเปนศูนย (Q x n → x *)
แสดงวา d (x*, T x *) = 0 นั่นคือ x * = T x * เปนจุดตรึงของการสง T
เพื่อที่จะพิสูจนวาจุดตรึงดังกลาวมีเพียงคาเดียว โดยการพิสูจนแบบขอขัดแยง (contradition)
สมมติใหมีจุดตรึงสองคา x* = T x* และ y* = T y*
จะไดวา d (x*, y *) = d (T x*, T y *) ≤ α d ( x*, y *) เมื่อ 0 ≤α <1
นั่นคือ x* = y* ซึ่งเกิดการขัดแยง ดังนันมีจุดตรึงคาเดียว
้ □
หมายเหตุ ทฤษฎีบท 3 ให เงื่ อ นไขเพี ย งพอที่จ ะบอกได เพีย งว า“ มี จุ ด ตรึ ง ถ า สอดคลอ งตาม
ขอกําหนดขางตน” แตเราไมสามารถใหขอสรุปเกี่ยวกับการมีอยูของจุดตรึงได หากไมสอดคลองกับ
เงื่อนไขดังกลาว
ตัวอยาง 1 จงพิจารณาวาฟงกชันที่กําหนดใหตอไปนี้เปนการสงแบบดึงดูดหรือไม ถาไมเปนให
พิจารณาตอไปวามีจุดตรึงหรือไม
1. ให F 1 :ℜ → ℜ กําหนดโดย F1 ( x ) = 2 x + 1
เนื่องจาก F1 ( x ) − F1 ( y ) = 2 x − 2 y = 2 ⋅ x − y
พบวา α = 2 >1 ดังนั้น F1 ไมเปนการสงแบบดึงดูด แตเราไมสามารถใชทฤษฎีบท 3 สรุปวาฟงกชัน
F1 ไมมีมีจุดตรึง ( ดูหมายเหตุขางบน ) ตรวจสอบคาของจุดตรึงโดย สมมติให x1 * เปนจุดตรึงของ
ฟงกชัน F จะได
1 F1 ( x1 *) = x1 * = 2 x1 * + 1 ซึ่งมี x1 * = -1 เปนจุดตรึงของฟงกชัน F 1
2. ให F 2 :ℜ → ℜ กําหนดโดย F2 ( x ) = x + 1
เนื่องจาก F2 ( x ) − F2 ( y ) = x − y = 1 ⋅ x − y พบวา α = 1 ดังนั้น F2 ไมเปนการสงแบบดึงดูด
ดวยวิธีเดียวกัน ตรวจสอบคาของจุดตรึงโดย สมมติให x2 * เปนจุดตรึงของฟงกชัน F 2
6. โดยบทนิยาม1 จะได F2 (x 2 *) = x 2 * = x 2 * + 1 ซึ่งพบวาสมการขางตนไมเปนจริง
ดังนั้น F2 จึงไมมีจุดตรึง
3. ให X = (0 , 1 ]
4 และ F3 : X → X กําหนดโดย F3 ( x ) = x 2
เนื่องจาก F3 ( x ) − F3 ( y ) = x 2 − y 2 = (x − y )( x + y ) ≤ ( x + y ) x+ y ≤ 1
2 x− y
ดังนั้น F เปนการสงแบบดึงดูด แตการสงนี้ไมมีจุดตรึงเนื่องจากไมสอดคลองกับทฤษฎีบท 3
3
โดยพิจารณาจาก 0 หรือ 1 ที่เราคิดเปนวาจุดตรึงของฟงกชัน F ไมไดเปนสมาชิกของ X ดังนั้น F ไม
3 3
บริบูรณ (not complete) ■
บทแทรก 4 (Iteration and Error Bounds)
ตามเงื่อนไขของทฤษฎีบท 3 ลําดับ { x } ของการคํานวณซ้ํา โดยคาเริ่มตน
n x0 ∈ X จะลูเขาสู
จุดตรึง x * เพียงคาเดียวจากการสง T และสามารถประมาณคาความคลาดเคลื่อน (error estimates)
ไดจาก
αn
การประมาณขั้นกอน (prior estimate) : d ( x n , x *) ≤ d ( x0 , x1 ) (2)
1− α
α
การประมาณขั้นหลัง (posterior estimate) : d ( xn , x *) ≤ d ( xn−1 , xn ) (3)
1− α
พิสูจน
เห็นไดชัดวา จากสมการ (1) เมื่อกําหนดให r→∞ จะได x r → x* ตามสมการ (2)
เราจะพิสูจนสมการ (3) โดยแทนคา n = 1 ลงใน (2) และกําหนดให y 0 = x0 , y1 = x1
α
จะได d ( y1 , x ) ≤ d ( y 0 , y1 ) โปรดสังเกตวา y 0 = x n −1 และ y1 = T y 0 = x n □
1−α
7. จากบทแทรก 4 การประมาณขั้นกอน จะถูกใชในการตรวจสอบจํานวนรอบ (n) ของการคํานวณซ้ํา เมื่อ
กําหนดคาความผิดพลาด ( ε ) โดยประมาณมาให โดยพิจารณาจากผลตางของคาที่ไดจากการคํานวณซ้ําครั้ง
ที่ n (หรือ xn ) กับคาจุดตรึง (x*) กลาวคือ
αn
จากสมการ (2) d (xn , x ) ≤ d ( x0 , x1 ) ≤ ε
1−α
ε (1 − α ) ⎡ ε (1 − α ) ⎤
จะได αn ≤
d (x0 , x1 )
⇒ n ln α ≤ ln ⎢ ⎥
⎣ d ( x0 , x1 ) ⎦
⎡ ε (1 − α ) ⎤
ln ⎢ ⎥
⎣ d ( x0 − x1 )⎦
(Q0 < α <1 ⇒ ln α < 0 ) n ≥
ln α
(2)
โดยทั่วไปคาความผิดพลาดจริง (actual error ; eact ) หาไดจาก
eact = คาจริง – คาที่คํานวณได (3)
สําหรับในทางปฏิบัติ หลายๆปญหาเราจะไมทราบคาความผิดพลาดจริง จึงจําเปนตองใชการประมาณ
คาความผิดพลาด (error estimate ; eest )ในระหวางการคํานวณซ้ํา โดยมี 2 วิธีดังนี้
1. อาศัยวิธีการประมาณขั้นหลัง
α
d (x n , x ) ≤ d ( x n −1 , x n ) ≤ eest (4)
1− α
2. อาศัยวิธีการประมาณโดยใชคาความผิดพลาดสัมพัทธ (relative error ; erel )
เมื่อพิจารณาจากบทแทรก (4) พบวาการประมาณขั้นหลังจะใหคาความผิดพลาดนอยกวาการ
ประมาณขั้นกอน
α αn
กลาวคือ d ( x n −1 , x n ) ≤ d ( x0 , x1 )
1− α 1− α
ดังนั้น d ( x n −1 , x n ) ≤ α n −1 d ( x0 , x1 ) (5)
สมการนี้บอกวาความผิดพลาดสัมพัทธครั้งที่ n-1 กับครั้งที่ n จะมีคาไมเกิน α n−1 d ( x0 , x1 )
8. ตัวอยาง 2 ให X = { x ∈ℜ : x ≥ 1 } ⊂ ℜ พิจารณาการสง T:X →X
กําหนดโดย Tx =
x 1
+ จงแสดงใหเห็นวา T เปนการสงแบบดึงดูด และประมาณรอบของการ
2 x
คํานวณซ้ํา เมื่อกําหนดเงื่อนไขคาเริ่มตน x0 = 1 และคาความผิดพลาดไมเกิน 10-3
วิธีทํา ตรวจสอบวา T เปนการสงบนเซต X หรือไม
เนื่องจาก 1.5 ≤ T x ≤ ∞ ∀x∈ X ดังนั้น Tx จึงเปนการสงบนเซต X
หรือ T : X → X พิจารณาคาคงที่การดึงดูด α = sup T ′(x ) เมื่อ T ′( x ) =
1 1
− 2
x∈ X 2 x
1 1 1
(หมายเหตุ : α พิจารณาจากคาขอบเขตบนของฟงกชั่น T ′ ) จะได α = sup − 2 =
2 x 2
<1
x∈X
ดังนั้น T เปนการสงแบบดึงดูด
การประมาณจํานวนรอบการคํานวณซ้ํา อาศัยสมการ (2) เมื่อกําหนดเงื่อนไขคาเริ่มตน x0 = 1
และคาความผิดพลาดไมเกิน 10-3 ( ε = 10 −3 ) เราจะได x1 = T x0 =
1
+ 1 = 1.5
2
ดังนั้น
⎡ ε (1 − α ) ⎤
ln ⎢ ⎥
n ≥ ⎣ d ( x 0 − x1 ) ⎦
ln α
⎡10 −3 1 − 1
ln ⎢
(2
)⎤
⎥
⎢ 1.5 − 1 ⎥
≥ ⎣ ⎦
ln 2
≥ 9 .9
≈ 10 ครั้ง
Note เมื่อพิจารณาคาจุดตรึงของการสง T x* = x* =
x*
+
1
2 x*
จะได (x *) 2
= 2 ⇒ x * = ± 2 ซึ่งเปนรูปแบบการคํานวณหารากที่สองนั่นเอง ■
9. ตัวอยาง 3 พิจารณาฟงกชั่น f (x ) = cos x บนโดเมน x ∈ [0 ,1] จงแสดงใหเห็นวา f เปนการ
สงแบบดึงดูด และประมาณรอบของการคํานวณซ้ํา เมื่อกําหนดเงื่อนไขคาเริ่มตน x0 = 0 และคาความ
ผิดพลาดไมเกิน 5 × 10-7
วิธีทํา ตรวจสอบวา f เปนการสงบนเซต [0 ,1] หรือไม
โดยพิจารณาจาก 0 ≤ cos1 ≤ cos x ≤ 1 ∀ x ∈ [0 ,1] ดังนั้น f เปนการสงบนเซตเดิม
ตอไปหาคาคงที่การดึงดูด จาก f ′(x ) = − sin x เพราะวา f ′( x ) ≤ sin 1 < 1 ∀ x ∈ [0 ,1]
ดังนั้น f เปนการสงแบบดึงดูด โดยเลือกคาคงที่การดึงดูด α = sin 1
จากสมการ (2) เมื่อ x0 = 0 และ ε = 5 × 10 −7 เราจะได x1 = f ( x0 ) = cos 0 = 1
ดังนั้น
⎡ ε (1 − α ) ⎤
ln ⎢ ⎥
n ≥ ⎣ d (x 0 − x1 ) ⎦
ln α
⎡ 5 × 10 − 7 (1 − sin 1)⎤
ln ⎢ ⎥
⎣ 1− 0 ⎦
≥
ln (sin 1)
≥ 94 .7
≈ 95 ครั้ง ■
ตัวอยาง 4 พิจารณาขั้นตอนการคํานวณซ้ําของ f (x ) = x3 + x −1 = 0
ก) จงแสดงใหเห็นวา (
x n = g ( x n −1 ) = 1 + x n −1
2
) และถากําหนดเงื่อนไขคาเริ่มตน x0 = 1
−1
จงคํานวณหาคําตอบออกมา 3 คา
ข) ประมาณคาความผิดพลาดจากคําตอบที่ไดจากขอ ก.
10. ค) ถากําหนดให f (x ) = 0 ในรูปของ x = 1 − x3 เราสามารถใชกระบวนการดังกลาวในการคํานวณซ้ํา
ไดหรือไม
วิธีทํา ก) จาก (
f (x ) = x x 2 +1 − 1 = 0 ) จะได x =
1
x +1
2
นั่นคือ x n (
= g ( x n −1 ) = 1 + x n −1
2
) เปนรูปแบบ (scheme) ของการคํานวณซ้ํา
−1
เมื่อกําหนดเงื่อนไขคาเริ่มตน x0 = 1
x1 = g ( x0 ) = 1 + 12 ( ) −1
= 0.5
จะได x 2 = g ( x 2 ) = (1 + 0.5)
−1
= 0.8
x3 = g (x3 ) = (1 + 0.8)
−1
= 0.609
ข) พิจารณา α = max g ′(x ) (หมายเหตุ : α พิจารณาจากคาสูงสุดของฟงกชั่น g ′ )
x∈ℜ
เมื่อ g ′( x ) =
d
(
1+ x 2 ) −1
= −
2x
และ g ′′( x ) =
(
− 2 1+ x2 )
2
( )
+ 2 x ⋅ 2 1+ x 2 ⋅ 2 x
dx (1+ x ) 2 2
(1 + x )
2 4
เนื่องจาก g ′( x ) max ⇔ g ′′( x ) = 0 จะได (
8x 2 = 2 1+ x 2 ) ∴ x = 1
3
ดังนั้น α = max g ′(x ) = g ′⎛ 1 ⎞ =
⎜ ⎟
2 3
= 0.64 < 0.65 < 1
x∈ℜ ⎝ 3⎠ 16
9
เราอาจเลือก α = 0.65 เปนคาคงที่การดึงดูด
สําหรับปญหานี้ เราทราบคาที่แทจริงของรากสมการ คือ x1 = 0.6823 , x 2,3 = − 0.34 ± i1.16
คาความผิดพลาดจริง
การคํานวณซ้ํารอบที่ 1 : eact = 0.5 − 0.6823 = 0.18
การคํานวณซ้ํารอบที่ 2 : eact = 0.8 − 0.6823 = 0.12
การคํานวณซ้ํารอบที่ 3 : eact = 0.609 − 0.6823 = 0.07
11. α
จาก การประมาณขั้นหลัง d (x n , x ) ≤ d ( x n −1 , x n ) = eest
1− α
α
การคํานวณซ้ํารอบที่ 1 : eest = x0 − x1 =
0.65
0.5 − 1 = 0.93
1−α 1 − 0.65
α
การคํานวณซ้ํารอบที่ 2 : eest = x1 − x 2 =
0.65
0.8 − 0.5 = 0.56
1−α 1 − 0.65
α
การคํานวณซ้ํารอบที่ 3 : eest = x 2 − x3 =
0.65
0.609 − 0.8 = 0.36
1−α 1 − 0.65
ค) จากรู ปแบบที่ กํ า หนด ส ม ม ติ ให h( x ) = 1 − x 3 พิ จารณาช ว งของ x ที่ ทํ า ให
α = max h′( x ) < 1 ( ซึ่งเกิดการดึงดูดเขาสูจุดตรึง )
x∈ℜ
เมื่อ h′( x ) =
d
dx
( )
1 − x 3 = − 3x 2 จะได − 3x 2 < 1 หรือ x∈ − ( 1
3
, 1
3
)
กลาวคือ เราสามารถหาจุดตรึงไดจากการคํานวณซ้ํา โดยใชคาเริ่มตนภายในชวง (− 1
3
, 1
3
) ■
ในบทความนี้เราไดเห็นการนําทฤษฎีบทจุดตรึงของบานาค (Banach fixed point theorem)
มาประยุกตใชในการประมาณจํานวนรอบการคํานวณซ้ํา ซึ่งจะพบไดบอยในการแกสมการคณิตศาสตร
โดยการกําหนดรูปแบบ (scheme) ของฟงกชันที่เหมาะสม ทําใหเปนการสงแบบดึงดูด สามารถประมาณ
จํานวนรอบการคํานวณซ้ําได โดยปกติจะใหจํานวนรอบที่มากกวาความเปนจริง ทั้งนี้ขึ้นอยูกับการเลือก
คาคงที่การดึงดูด และสามารถบอกคาความผิดพลาดไดสองแบบ อยางไรก็ตามเนื้อหาของบทความนี้ตอง
อาศัยความรูในเรื่องปริภูมิเมตริก (metric space) ซึ่งไมไดกลาวไว นอกจากนั้นยังมีทฤษฎีบทจุดตรึง (fixed
point theorem) ในเวอรชั่นอื่นอีก เชน Brouwer , Leray-Schauder and Kakutani Fixed Point Theorem
เปนตน ซึ่งขึ้นอยูกับการนําไปประยุกตใช โดยหัวเรื่องหลักที่มีการนําทฤษฎีบทจุดตรึงมาใช ไดแก
สมการพีชคณิตเชิงเสน (linear algebraic equations) สมการเชิงอนุพันธสามัญ (ordinary differential
equations) สมการอินทิกรัล (integral equations) และ Incremental Small Gain Theorem ในทฤษฎีระบบ
ควบคุมไมเชิงเสน (nonlinear control theory) เปนตน
สําหรับผูอานที่สนใจในรายละเอียดเรื่อง ทฤษฎีบทการสงแบบดึงดูด (contraction mapping theorem)
หาอานไดจากหนังสือของ D.R. Smart. ˝Fixed Point Theorems.˝Cambridge University Press, 1973
12. เอกสารอางอิง
1. E.Kreyszig. Introductory Functional Analysis with Applications. John Wiley, New York, 1978.
2. J.T.Oden. Applied Functional Analysis. A First Course for Students of Mechanics and Engineering
Science. Prentice Hall, Englewood Cliffs, NJ, 1979.
3. S.Sastry. Nonlinear Systems. Analysis, Stability, and Control. Springer-Verlag, New York, 1999.