COOL: Curiosity-Driven Object Ownership Learning for Personalized Robotic Assistance
Organizations: Department of Computer Science, Kiel University, Germany
Abstract
Robots are increasingly expected to provide personalized services in everyday environments. To do so, they must ground natural-language commands such as "Where is my backpack?" or "Find my bottle" and execute them by reasoning about object instances, people, locations, and ownership. This is challenging because ownership is rarely labeled explicitly and must be inferred from long-term, behavioral evidence of human-object interactions. To address this, we present COOL, a novel robotic framework for autonomously learning object ownership from everyday observations and maintaining a long-term spatial memory of its environment. To keep its memory current, COOL uses an agent-based curiosity-driven data collection strategy that guides the robot toward the most promising locations to gain information and refresh stale observations. Offline experiments, ablation studies, and real-world evaluations show that COOL can infer ownership relations from real-world interactions and use this knowledge for ownership-conditioned navigation and task execution.
Figures & tables
| Variant | Accuracy (%) | Interaction (%) | Location (%) | Lookup (%) | Ownership (%) | Navigation (%) | Func. calls | Time (sec) |
| Plain LLM | ||||||||
| Heuristic | ||||||||
| No Interaction | ||||||||
| Rule-based | ||||||||
| COOL |
| Robustness Test | Accuracy (%) |
| Baseline | 84.33 2.75 |
| Detection Dropout (40%) | 81.48 5.30 |
| Detection Dropout (60%) | 61.12 5.78 |
| Detection Dropout (80%) | 47.78 5.77 |
| False-Positive Injection (10%) | 78.51 5.78 |
| False-Positive Injection (50%) | 66.67 5.99 |
| Task Type | Ownership | Person Distinction | Person ReID | Object ReID | Long-Term Tracking | Visual Ambiguity | Reachability Reasoning | Accuracy (%) |
| Room Navigation | 100 | |||||||
| Object Relocation | 90 | |||||||
| Owner-based Distinction | 100 | |||||||
| Visual Ambiguity | 90 | |||||||
| Ownership-Preserving Update | 90 |
| Strategy | F1 | Recall | Prec. | Yield | Moves | Observed | Best |
| Random | |||||||
| Round-Robin | |||||||
| Frequency | |||||||
| Staleness | |||||||
| Active Mapping | |||||||
| Greedy Hazard |
Appendix figures & tables32 assets
Supplementary material from the paper’s appendix.
Appendix
| Parameter | Symbol | Value | Description |
| Embedding similarity | |||
| Visual embedding threshold | 0.643 | Cosine similarity; runtime override (code default 0.85) | |
| Face embedding threshold | 0.60 | Cosine similarity; runtime override (code default 0.68) | |
| Similarity metric | – | Cosine | pgvector <=> cosine distance; |
| Centroid update | – | Arithmetic mean | SQL AVG(oo.embedding) over cluster observations |
| Attribute part embeddings | – | false | Part-level attribute embeddings are disabled |
| Tool | Input | Output | Purpose |
| Discovery and search | |||
| search_objects_by_class_id | class_id, name, min_obs, limit | object list | Find tracked objects or people by class or name |
| list_objects | class_name (opt.), limit | object list | Enumerate all tracked objects, optionally filtered |
| find_person_by_name | person_name | person entity | Resolve a named person to their latest location |
| Object inspection | |||
| get_object_observations | object_id, time filters, limit | observation history | Retrieve the location history of one entity |
| Tool | Input | Output | Purpose |
| get_room_visit_history | limit | per-room statistics | Retrieve visit counts, last-visit times, and event counts per room |
| get_room_event_density | hours, limit | event counts | Count recent interaction events per room over a time window |
| get_stale_rooms | threshold_min, limit | stale room list | Identify rooms that have not been visited recently |
| Evaluation Category | Questions |
| Interaction | 33 |
| Location | 22 |
| Navigation | 13 |
| Lookup | 6 |
| Ownership | 5 |
| Total | 79 |
| Failure Mode | Parameter | Perturbation |
| Detection Dropout | Randomly remove observation rows | |
| False-Positive Injection | Add observations with incorrect identities | |
| Embedding Noise | Add Gaussian noise to embeddings | |
| Track Fragmentation | Split tracks and remove identity names | |
| Face Occlusion | Remove face image information | |
| Temporal Jitter | s | Perturb observation timestamps |
| Aspect | 6-room floor plan | 24-room floor plan |
| Rooms | 6: kitchen, storage, office 1–3, meeting room | 24: 16 offices, 3 meeting rooms, kitchen, lounge, storage, printer room, server room |
| Room types | social, utility, office, meeting | social, utility, office, meeting |
| People | 8 employees, each with a home office and a role | 40 employees, each with a home office and a role |
| Objects | 12 personal objects with a fixed owner (laptop, red cup, backpack, water bottle, notebook, pen, headphones, coffee mug, tablet, jacket, yoga mat, camera), plus activity-spawned temporary items | 40 personal objects with a fixed owner, plus activity-spawned temporary items |
| Fixtures | per room, e.g. coffee machine, fridge, microwave (kitchen); projector, whiteboard, conference table (meeting room) | as left, plus printer, paper shelf, server rack |
| Geometry | pairwise room distances (adjacent offices , kitchen–office 3 ) | same distance model over the larger plan |
| Room Type | Activity | Duration |
| Office | Works at their desk | – min |
| Types on their laptop | – min | |
| Reads a document | – min | |
| Joins a video call | – min | |
| Writes notes | – min | |
| Checks their phone | min |
| World | R | P | O | Obs. | Maj. | I/D | Ep. | Prior / property | |
| 6-room worlds | |||||||||
| diffused | 6 | 8 | 21 | 1098 | 365 | – | – | – | hot; diffused activity |
| regime | 6 | 8 | 24 | 1098 | 140 | – | – | – | hot; daily regime shift, sparse changes |
| adversarial | 6 | 8 | 18 | 1098 | 296 | – | – | – | hot; moving hotspots |
| base | 6 | 8 | 9 | 1098 | 234 | 121/267 | – | – | hot; v1 parity under v2 generator |
| distractor | 6 | 8 | 10 | 1098 | 280 | 135/273 | – | – | hot; churn in kitchen/meeting, mostly distractor-class |
| World | Kitchen | Storage | Office 1 | Office 2 | Office 3 | Meeting | Gini |
| default | |||||||
| regime | |||||||
| adversarial | |||||||
| base_v2 | |||||||
| distractor | |||||||
| intent_cued |
| World | Changes | Gini | Three busiest rooms (share of major changes) |
| scaled_base_24room | kitchen , meeting room 1 , office 3 | ||
| scaled_24room | kitchen , meeting room 1 , meeting room 3 | ||
| scaled_distractor_24room | kitchen , meeting room 1 , meeting room 3 | ||
| scaled_heading_24room | kitchen , meeting room 1 , meeting room 2 | ||
| agent_cued_24room | meeting room 1 , meeting room 2 , kitchen | ||
| agent_cued_flat_24room | meeting room 1 , lounge , meeting room 3 |
| Strategy | Recall | F1 | Yield | TP | FP | FN | Moves | Changes | Cov. | Missed |
| Random | ||||||||||
| Round-Robin | ||||||||||
| Frequency | ||||||||||
| Staleness | ||||||||||
| Active Mapping | ||||||||||
| Greedy Hazard |
| Strategy | Recall | F1 | Yield | TP | FP | FN | Moves | Changes | Cov. | Missed |
| Random | ||||||||||
| Round-Robin | ||||||||||
| Frequency | ||||||||||
| Staleness | ||||||||||
| Active Mapping | ||||||||||
| Greedy Hazard |
| Strategy | Recall | F1 | Yield | TP | FP | FN | Moves | Changes | Cov. | Missed |
| Random | ||||||||||
| Round-Robin | ||||||||||
| Frequency | ||||||||||
| Staleness | ||||||||||
| Active Mapping | ||||||||||
| Greedy Hazard |
| Strategy | Recall | F1 | Yield | TP | FP | FN | Moves | Changes | Cov. | Missed |
| Random | ||||||||||
| Round-Robin | ||||||||||
| Frequency | ||||||||||
| Staleness | ||||||||||
| Active Mapping | ||||||||||
| Greedy Hazard |
| Strategy | Recall | F1 | Yield | TP | FP | FN | Moves | Changes | Cov. | Missed |
| Random | ||||||||||
| Round-Robin | ||||||||||
| Frequency | ||||||||||
| Staleness | ||||||||||
| Active Mapping | ||||||||||
| Greedy Hazard |
| Strategy | Recall | F1 | Yield | TP | FP | FN | Moves | Changes | Cov. | Missed |
| Random | ||||||||||
| Round-Robin | ||||||||||
| Frequency | ||||||||||
| Staleness | ||||||||||
| Active Mapping | ||||||||||
| Greedy Hazard |
| Strategy | Recall | F1 | Yield | TP | FP | FN | Moves | Changes | Cov. | Missed |
| Random | ||||||||||
| Round-Robin | ||||||||||
| Frequency | ||||||||||
| Staleness | ||||||||||
| Active Mapping | ||||||||||
| Greedy Hazard |
| Strategy | Recall | F1 | Yield | TP | FP | FN | Moves | Changes | Cov. | Missed |
| Random | ||||||||||
| Round-Robin | ||||||||||
| Frequency | ||||||||||
| Staleness | ||||||||||
| Active Mapping | ||||||||||
| Greedy Hazard |
| Strategy | Recall | F1 | Yield | TP | FP | FN | Moves | Changes | Cov. | Missed |
| Random | ||||||||||
| Round-Robin | ||||||||||
| Frequency | ||||||||||
| Staleness | ||||||||||
| Active Mapping | ||||||||||
| Greedy Hazard |
| Strategy | Recall | F1 | Yield | TP | FP | FN | Moves | Changes | Cov. | Missed |
| Random | ||||||||||
| Round-Robin | ||||||||||
| Frequency | ||||||||||
| Staleness | ||||||||||
| Active Mapping | ||||||||||
| Greedy Hazard |
| Strategy | Recall | F1 | Yield | TP | FP | FN | Moves | Changes | Cov. | Missed |
| Random | ||||||||||
| Round-Robin | ||||||||||
| Frequency | ||||||||||
| Staleness | ||||||||||
| Active Mapping | ||||||||||
| Greedy Hazard |
| Strategy | Recall | F1 | Yield | TP | FP | FN | Moves | Changes | Cov. | Missed |
| Random | ||||||||||
| Round-Robin | ||||||||||
| Frequency | ||||||||||
| Staleness | ||||||||||
| Active Mapping | ||||||||||
| Greedy Hazard |
| Strategy | Recall | F1 | Yield | TP | FP | FN | Moves | Changes | Cov. | Missed |
| Random | ||||||||||
| Round-Robin | ||||||||||
| Frequency | ||||||||||
| Staleness | ||||||||||
| Active Mapping | ||||||||||
| Greedy Hazard |
| Strategy | Recall | F1 | Yield | TP | FP | FN | Moves | Changes | Cov. | Missed |
| Random | ||||||||||
| Round-Robin | ||||||||||
| Frequency | ||||||||||
| Staleness | ||||||||||
| Active Mapping | ||||||||||
| Greedy Hazard |
| Strategy | Recall | F1 | Yield | TP | FP | FN | Moves | Changes | Cov. | Missed |
| Random | ||||||||||
| Round-Robin | ||||||||||
| Frequency | ||||||||||
| Staleness | ||||||||||
| Active Mapping | ||||||||||
| Greedy Hazard |
| World | COOL (full) | Score argmax | hotspots | expected change | staleness | all three |
| default | ( ) | ( ) | ( ) | ( ) | ( ) | ( ) |
| regime | ( ) | ( ) | ( ) | ( ) | ( ) | ( ) |
| adversarial | ( ) | ( ) | ( ) | ( ) | ( ) | ( ) |
| base_v2 | ( ) | ( ) | ( ) | ( ) | ( ) | ( ) |
| distractor | ( ) | ( ) | ( ) | ( ) | ( ) | ( ) |
| intent_cued | ( ) | ( ) | ( ) | ( ) | ( ) | ( ) |
| Destination rule | Recall | Prec. | F1 | Moves | Missed |
| Greedy Hazard | |||||
| COOL navigator | |||||
| Entropy | |||||
| Frequency | |||||
| Beta-Entropy (cost) | |||||
| Beta-Entropy |
| Model | Conf | TP | FP | FN | Precision | Recall | F 0.5 |
| GroundingDINO [ 29 ] | 0.55 | 11.0 | 2.0 | 147.0 | 0.846 | 0.070 | 0.262 |
| YOLO11m-seg | 0.55 | 88.0 | 2.3 | 70.0 | 0.975 | 0.557 | 0.848 |
| YOLO11l-seg | 0.55 | 88.0 | 3.0 | 70.0 | 0.967 | 0.557 | 0.843 |
| YOLO11s-seg | 0.40 | 87.0 | 3.0 | 71.0 | 0.967 | 0.551 | 0.840 |
| OWLv2 [ 39 ] | 0.40 | 19.3 | 0.3 | 138.7 | 0.974 | 0.122 | 0.402 |
| Model | Input | Threshold | Clusters | Pairwise F1 | Purity | Precision | Recall |
| ConvNeXt-Tiny [ 31 ] | Whole Image | 0.500 | 60 | 0.151 | 0.500 | 0.159 | 0.144 |
| ConvNeXt-Tiny [ 31 ] | Lanczos Upscaled | 0.500 | 60 | 0.147 | 0.496 | 0.154 | 0.141 |
| ConvNeXt-Tiny [ 31 ] | Whole Image + WB + Bright | 0.500 | 85 | 0.122 | 0.572 | 0.166 | 0.097 |
| ConvNeXt-Tiny [ 31 ] | Real-ESRGAN Upscaled | 0.500 | 93 | 0.105 | 0.572 | 0.129 | 0.089 |
| DINOv3 [ 47 ] | Lanczos Upscaled | 0.400 | 6 | 0.180 | 0.228 | 0.099 | 0.925 |
| DINOv3 [ 47 ] | Real-ESRGAN Upscaled | 0.450 | 6 | 0.177 | 0.228 | 0.098 | 0.893 |
| Class | Unique IDs | Labelled boxes | Identities |
| Chair | 6 | 59 | Chair-Kitchen (25), Chair-Alex (14), Chair-Blake (13), Chair-Casey (3), Chair-Dana (3), 3D-Printer (1) |
| Couch | 2 | 20 | Couch (19), Chair-Blake (1) |
| TV | 3 | 7 | Desktop-Alex (5), Desktop-Evan (1), Desktop-Casey (1) |
| Sports Ball | 1 | 8 | Volleyball (8) |
| Bed | 1 | 6 | Couch (6) |
| Oven | 2 | 4 | Chair-Kitchen (3), Rubbish (1) |
| Model | Version | F1 | Purity | Precision | Recall |
| CLIP [ 44 ] | Whole Image | ||||
| CLIP [ 44 ] | Whole Image + WB + Bright | ||||
| CLIP [ 44 ] | Lanczos Upscaled | ||||
| ConvNeXt-Tiny [ 31 ] | Whole Image | ||||
| ConvNeXt-Tiny [ 31 ] | Lanczos Upscaled | ||||
| ConvNeXt-Tiny [ 31 ] | Whole Image + WB + Bright |
| Parameter | Value |
| Base checkpoint | MSMT17-pretrained OSNet x1.0 |
| Camera source | Spot front fisheye camera |
| Input size | (W H) |
| Feature dimension | |
| Dataset size | labeled detections |
| Identities |