2023-Q1-AI 3. Inversā matemātika - parciāl-atvasinājumi

 

 

Saturs

  1. parādīt labāko darbu spēles

  2. Robot arm demo: https://www.youtube.com/watch?v=uMPW5KQBhPE

  3. Forward pass

  4. Implementēt MSE skaitlisko vērtību

  5. Piemērs atvasinājumiem 1D

  6. Piemērs optimizācijai hiperbola

  7. Piemērs SGD

  8. parādīt Derivative rotation http://share.yellowrobot.xyz/upic/a20450a73888683eef05ff21ac579157_1675092304.png

  9. Uzd Derivative loss

 

triganometriskie

image-20230130194322775

 

3.1 Video / Materials

Video 30.01.2023 18:00: https://youtube.com/live/tUCKoy8Vv8M?feature=share

Jamboard: https://jamboard.google.com/d/1Zo5amjXCU_gMCEk9MqBYXgzFJXMQANqYL1uvWOx6K0g/edit?usp=sharing

Backprop / partial derivatives: http://karpathy.github.io/neuralnets/

Calculus: https://www.youtube.com/playlist?list=PL0-GT3co4r2wlh6UHTUeQsrf3mlS2lk6x

 

 

3.2. Tiešā virziena kinemātikas uzdevums

Izmantojot sagatavi implementēt 2 segmentu robotu roku ar definētiem theta_1 un theta_2 leņķiem, izmantojot 2D rotāciju matricu. Izmantot 2D vektorus nevis 3D vektorus. Translāciju veikt ar vektoru saskaitīšanu.

2D rotāciju matrica:

http://share.yellowrobot.xyz/upic/cfef283dc8b6fbf7f40e138ceadfa97f_1675091854.jpg

Rezultātam jābūt šādam

http://share.yellowrobot.xyz/upic/0dd911f11da4041015b06bc4ad99fb14_1675091833.jpg

Sagatave:

http://share.yellowrobot.xyz/1630528570-intro-course-2021-q4/3_1_inverse_kinematics_numpy_template.py

Iesniegt pirmkodu un screenshot

 

f(θ,x,t)=R(θ)x+t

f(θ1,θ2,t)=R(θ1)t+R(θ1)(R(θ2)t)

 

 

3.4 Implementēt MSE/L2 kļūdas aprēķinu

Implementēt MSE/L2 kļūdas aprēķinu starp robota rokas gala punktu un mērķa punktu un attēlot ar plt.title(f'loss = {loss}')

Kļūdas aprēķins:

http://share.yellowrobot.xyz/upic/96667f3687dc7d9b05962959261e8b1e_1675092071.jpg

Iesniegt pirmkodu un screenshot

 

y=f(θ1,θ2,t)yGoalLMSE=1Ni=0N(yiyi)2

 

3.5. Implementēt atvasinājumu MSE/L2 kļūdas aprēķinam

Implementēt atvasinājumu MSE/L2 kļūdas aprēķinam http://share.yellowrobot.xyz/upic/d94ff0ba0cfc947672e25cb9595bcd9a_1675092460.png

Iesniegt pirmkodu un screenshot

 

 

LMSE=1Ni=0N(yiyi)2LMSEdy=?

 

3.6. Implementēt robota rokas inverso kinemātiku

Ar 2 segmentiem, izmantojot iepriekšējos uzdevumus

Iesniegt pirmkodu un screenshot

 

MSA , 3 segmenti, neļaut rokai iziet pa apakšu, papildus loss

3.7. Mājasdarbs - Implementēt robota roku ar 3 segmentiem

Izmanotot sagatavi no iepriekšējiem uzdevumiem

  1. Implementēt inverso kinemātiku, izmantojot MSE 3 segmentiem

  2. Novēršat to, ka roka pāriet sev pašai pāri vai aiziet zem 0 līmeņa (to var izdarīt pieliekot papildus kļūdu un papildus dTheta no dažādiem punktiem rokas vidējām daļām, var arī papildus veikt maksimizāciju. Nav jānodrošina ka risinājums strādā 100% gadījumu, bet jābūt implementētam bez IF statements)

Rezultātam jāizskatās šādi: http://share.yellowrobot.xyz/upic/a2adccaed0417e1ef18d86122ae2f582_1675096719.jpg Iesniegt pirmkodu un screenshot


 

Materials

image-20230130175737673

 

image-20230130172204386

image-20230130172254395

image-20230130172310416

image-20230130172336714