Beruflich Dokumente
Kultur Dokumente
University of Pennsylvania
Base Controller
Goal control
Velocity controller
Will attempt to go through object at specified velocity
Need to switch to a controller that won’t go through the
object, but will hold onto it
○ Effort controller
Need to switch at impact with object (on both fingertips)
Can use fingertip sensors or change in current to motor
Closed Loop Grasping
Open loop
Initial goals:
Closed loop
Grasp delicate objects (like eggs)
Identify objects
Closed Loop Grasping
Classification Output (Weka)
Odwalla vs Naked vs Can vs
J48 pruned tree Water
------------------
|
|
first_contact_distance <= 0.059488
first_contact_distance <= 0.057874: naked (38.0)
first_contact_distance > 0.057874
93.8865 %
| | df/dt <= 17278.83919: naked (4.0)
| | df/dt > 17278.83919
| | | peak_force_distance <= 0.051701
| | | | first_contact_distance <= 0.058224: naked (4.0)
| | | | first_contact_distance > 0.058224: odwalla (19.0/2.0)
| | | peak_force_distance > 0.051701: odwalla (43.0)
first_contact_distance > 0.059488
| fingertip_peak_force_right <= 9437: water (70.0/1.0)
| fingertip_peak_force_right > 9437
| | dx/dt <= 0.008679: can (42.0)
| | dx/dt > 0.008679: water (9.0/1.0)
Number of Leaves :
Size of the tree : 15
8
a b c d <-- classified as
Time taken to build model: 0.01 seconds 58 1 0 1 | a = odwalla
8 40 0 0 | b = naked
=== Stratified cross-validation ===
=== Summary ===
Correctly Classified Instances 215 93.8865 %
Incorrectly Classified Instances 14 6.1135 %
Kappa statistic
Mean absolute error
Root mean squared error
Relative absolute error
0.9167
0.0378
0.1729
10.2468 %
0 0 41 3 | c = can
0 0 1 76 | d = water
Root relative squared error 40.2635 %
Total Number of Instances 229
=== Detailed Accuracy By Class ===
TP Rate FP Rate Precision Recall F-Measure ROC Area Class
0.967 0.047 0.879 0.967 0.921 0.963 odwalla
0.833 0.006 0.976 0.833 0.899 0.946 naked
0.932 0.005 0.976 0.932 0.953 0.962 can
0.987 0.026 0.95 0.987 0.968 0.972 water
Weighted Avg. 0.939 0.023 0.942 0.939 0.938 0.962
=== Confusion Matrix ===
a b c d <-- classified as
58 1 0 1 | a = odwalla
8 40 0 0 | b = naked
0 0 41 3 | c = can
0 0 1 76 | d = water
Closed Loop Grasping
Classification Output (Weka)
Odwalla vs Naked vs Can vs
Water and Open vs Closed and
Full vs Empty
J48 pruned tree
------------------
=== Stratified cross-validation ===
=== Summary ===
Correctly Classified Instances
Incorrectly Classified Instances
Kappa statistic
116
113
0.4702
50.655 %
49.345 % 50.655 %
Mean absolute error 0.0662
Root mean squared error 0.2367
Relative absolute error 53.3184 %
Root relative squared error 94.967 %
Total Number of Instances 229
=== Detailed Accuracy By Class ===
TP Rate FP Rate Precision Recall F-Measure ROC Area Class
1 0.005 0.938 1 0.968 0.998 odwallafullclosed
0.733 0.033 0.611 0.733 0.667 0.855 odwallafullopen
0.6 0.014 0.75 0.6 0.667 0.885 odwallaemptyopen
0.643 0.019 0.692 0.643 0.667 0.813 nakedfullclosed
0.286 0.023 0.444 0.286 0.348 0.689 nakedfullopen
0.7 0.037 0.467 0.7 0.56 0.925 nakedemptyclosed
0.6 0.018 0.6 0.6 0.6 0.791 nakedemptyopen
0.467 0.033 0.5 0.467 0.483 0.78 odwallaemptyclosed
1 0.005 0.933 1 0.966 0.998 canfullclosed
0.6 0.028 0.6 0.6 0.6 0.847 canfullopen
0.467 0.042 0.438 0.467 0.452 0.767 canemptyopen
0.278 0.062 0.278 0.278 0.278 0.641 waterfullclosed
0.158 0.086 0.143 0.158 0.15 0.709 waterfullopen
0.15 0.038 0.273 0.15 0.194 0.597 wateremptyopen
0.35 0.091 0.269 0.35 0.304 0.704 wateremptyclosed
Weighted Avg. 0.507 0.039 0.505 0.507 0.501 0.787
=== Confusion Matrix ===
a b c d e f g h i j k l m n o <-- classified as
15 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | a = odwallafullclosed
0 11 0 0 0 0 0 3 0 0 0 1 0 0 0 | b = odwallafullopen
0 0 9 0 0 3 1 2 0 0 0 0 0 0 0 | c = odwallaemptyopen
1 2 0 9 2 0 0 0 0 0 0 0 0 0 0 | d = nakedfullclosed
0 0 2 4 4 1 1 2 0 0 0 0 0 0 0 | e = nakedfullopen
0 0 0 0 1 7 2 0 0 0 0 0 0 0 0 | f = nakedemptyclosed
0 0 0 0 1 3 6 0 0 0 0 0 0 0 0 | g = nakedemptyopen 0 0 0 0 0 0 0 0 1 2 0 5 4 1 5| l = waterfullclosed
0 5 1 0 1 1 0 7 0 0 0 0 0 0 0 | h = odwallaemptyclosed
0 0 0 0 0 0 0 0 14 0 0 0 0 0 0 | i = canfullclosed
0 0 0 0 0 0 0 0 0 9 6 0 0 0 0 | j = canfullopen
0 0 0 0 0 0 0 0 0 0 1 5 3 4 6| m = waterfullopen
0 0 0 0 0 0 0 0 0 4 7 2 1 0 1 | k = canemptyopen
0 0 0 0 0 0 0 0 1 2 0 5 4 1 5 | l = waterfullclosed
0 0 0 0 0 0 0 0 0 0 0 1 9 3 7| n = wateremptyopen
0 0 0 0 0 0 0 0 0 0 1 5 3 4 6 | m = waterfullopen
0 0 0 0 0 0 0 0 0 0 0 1 9 3 7 | n = wateremptyopen 0 0 0 0 0 0 0 0 0 0 2 4 4 3 7| o = wateremptyclosed
0 0 0 0 0 0 0 0 0 0 2 4 4 3 7 | o = wateremptyclosed
Classification Output (Weka)
Odwalla vs Naked vs Can and
Open vs Closed and Full vs Empty
J48 pruned tree
------------------
=== Stratified cross-validation ===
=== Summary ===
Correctly Classified Instances
Incorrectly Classified Instances
Kappa statistic
99
53
0.6155
65.1316 %
34.8684 % 65.1316 %
Mean absolute error 0.067
Root mean squared error 0.2413
Relative absolute error 40.5616 %
Root relative squared error 83.9145 %
Total Number of Instances 152
=== Detailed Accuracy By Class ===
TP Rate FP Rate Precision Recall F-Measure ROC Area Class
0.933 0.022 0.824 0.933 0.875 0.958 odwallafullclosed
0.667 0.044 0.625 0.667 0.645 0.846 odwallafullopen
0.667 0.058 0.556 0.667 0.606 0.852 odwallaemptyopen
0.5 0.029 0.636 0.5 0.56 0.76 nakedfullclosed
0.429 0.036 0.545 0.429 0.48 0.705 nakedfullopen
0.6 0.028 0.6 0.6 0.6 0.925 nakedemptyclosed
0.7 0.014 0.778 0.7 0.737 0.842 nakedemptyopen
0.467 0.058 0.467 0.467 0.467 0.702 odwallaemptyclosed
0.929 0 1 0.929 0.963 0.964 canfullclosed
0.667 0.051 0.588 0.667 0.625 0.809 canfullopen
0.6 0.044 0.6 0.6 0.6 0.926 canemptyopen
Weighted Avg. 0.651 0.036 0.653 0.651 0.649 0.843
=== Confusion Matrix ===
a b c d e f g h i j k <-- classified as
14 1 0 0 0 0 0 0 0 0 0 | a = odwallafullclosed
0 10 0 0 0 0 0 4 0 0 1 | b = odwallafullopen
0 0 10 0 0 2 0 3 0 0 0 | c = odwallaemptyopen
3 0 0 7 3 0 0 1 0 0 0 | d = nakedfullclosed
0 1 4 3 6 0 0 0 0 0 0 | e = nakedfullopen
0 0 1 0 1 6 2 0 0 0 0 | f = nakedemptyclosed
0 0 0 0 1 2 7 0 0 0 0 | g = nakedemptyopen
0 4 3 1 0 0 0 7 0 0 0 | h = odwallaemptyclosed
0 0 0 0 0 0 0 0 13 1 0 | i = canfullclosed
0 0 0 0 0 0 0 0 0 10 5 | j = canfullopen
0 0 0 0 0 0 0 0 0 6 9 | k = canemptyopen
Without Water
Classification Output (Weka)
Open vs Closed and Full vs
J48 pruned tree Empty
------------------
=== Stratified cross-validation ===
=== Summary ===
Correctly Classified Instances
Incorrectly Classified Instances
Kappa statistic
115
37
0.7316
75.6579 %
24.3421 % 75.6579 %
Mean absolute error 0.0449
Root mean squared error 0.1978
Relative absolute error 27.152 %
Root relative squared error 68.7782 %
Total Number of Instances 152
=== Detailed Accuracy By Class ===
TP Rate FP Rate Precision Recall F-Measure ROC Area Class
1 0.015 0.882 1 0.938 0.993 odwallafullclosed
0.8 0.007 0.923 0.8 0.857 0.928 odwallafullopen
0.8 0.044 0.667 0.8 0.727 0.911 odwallaemptyopen
0.857 0.043 0.667 0.857 0.75 0.936 nakedfullclosed
0.714 0.014 0.833 0.714 0.769 0.915 nakedfullopen
0.7 0.007 0.875 0.7 0.778 0.946 nakedemptyclosed
0.8 0.014 0.8 0.8 0.8 0.946 nakedemptyopen
0.467 0.036 0.583 0.467 0.519 0.835 odwallaemptyclosed
0.929 0 1 0.929 0.963 0.964 canfullclosed
0.667 0.051 0.588 0.667 0.625 0.809 canfullopen
0.6 0.036 0.643 0.6 0.621 0.931 canemptyopen
Weighted Avg. 0.757 0.025 0.763 0.757 0.755 0.917
=== Confusion Matrix ===
a b c d e f g h i j k <-- classified as
15 0 0 0 0 0 0 0 0 0 0 | a = odwallafullclosed
0 12 0 0 0 0 0 3 0 0 0 | b = odwallafullopen
1 0 12 0 0 0 0 2 0 0 0 | c = odwallaemptyopen
0 0 0 12 2 0 0 0 0 0 0 | d = nakedfullclosed
0 0 0 4 10 0 0 0 0 0 0 | e = nakedfullopen
0 0 0 1 0 7 2 0 0 0 0 | f = nakedemptyclosed
0 0 0 1 0 1 8 0 0 0 0 | g = nakedemptyopen
1 1 6 0 0 0 0 7 0 0 0 | h = odwallaemptyclosed
0 0 0 0 0 0 0 0 13 1 0 | i = canfullclosed
0 0 0 0 0 0 0 0 0 10 5 | j = canfullopen
0 0 0 0 0 0 0 0 0 6 9 | k = canemptyopen
Odwalla Only
We Can Do Better
Modify the controller to:
Give time to velocity = 0
Repeat grasp with different forces
Give time to location of lowest force trial
velocity = 0 when using larger forces
Give time to spring back to first contact
distance
Classification Output (Weka)
Open vs Closed and Full vs
Empty
With Improved Algorithm
J48 pruned tree
------------------
time3 <= 0.542
| peak_force03 <= 14609
| | distance_steady3 <= 0.049578: emptyopen (19.0)
| | distance_steady3 > 0.049578
| | | steady_force03 <= 9386: emptyopen (4.0)
| | | steady_force03 > 9386: emptyclosed (25.0/1.0)
| peak_force03 > 14609: fullclosed (24.0)
time3 > 0.542: fullopen (24.0)
Number of Leaves : 5
Size of the tree : 9
Odwalla Only
Closed Loop Grasping