Inspiration

10 years. Before last summer, that’s how long I went without visiting my relatives. Walking through the door, I embraced my grandpa, the smell of his linen still the same as 10 years ago. But it felt off. His arms around my waist felt limp, almost fragile. I consulted my dad earlier. "After your grandmother passed, your grandfather has been skipping meals. Staying inside. Going back to smoking. He’s just sad, let him be." I winced. The strong man I once knew, walking me to the supermarket, taking me on hikes up the mountain, reduced to this. It hurt. It really did. LifeTwin is an extension of that pain. A bandage for the slices of sorrow. A drip from the fountain of youth, if you will.

What it does

We employ a death date prediction model not as some sort of scare or cope mechanism, but in order to provide actionable real feedback in face of an inevitable real event. By reverse engineering the effects of the model inputs, we determine what users need to change about their health in order to literally prolong their life. The main mechanism through which we encourage these changes is the implementation of a digital twin directly reflecting the overall health of the user. After uploading their initial health markers, users interact with their twin daily, updating it based on what the users did that day like exercise, sleep more, etc. The digital twin will then change physically to reflect the updated health state of the user to directly show them the live results of their life habits. Furthermore, the agent will constantly update plans and lessons for the users to follow with the goal of bettering their health. Users are also able to experiment with their digital twin, applying various healthy or unhealthy habits to see directly how it would affect themselves through their digital twin.

How we built it

The LifeTwin model was a combination of multiple research experiments. First, we trained a Cox model to identify a health score in the short-term survival interval. Afterwards, a separate neural network went on and supplied a hazard index output for the model handoff. We use the National Health and Nutrition Examination Survey dataset (NHANES), which contains around 50,000 features and records of a randomly selected cohort of the U.S. population. We combine this with a mortality follow-up taken through 2019, called the National Death Index, also provided by the CDC. People who were still alive at the end of the study were treated as right-censored rather than as deaths. Overall, the model had 11 inputs:

  • age
  • sex
  • BMI
  • sleep
  • vigorous and moderate recreation
  • sitting time
  • smoking
  • diagnosed diabetes
  • hypertension
  • self-rated health Overall, this dataset was somewhat reliable. CDC notes that some of the follow-up times were also replaced with synthetic values. During training, we restricted the run to ages 35 to 79 due to limited data. Our splits were:
  • 9,109 people for training
  • 2,570 people for validation
  • 3,826 people for testing

Our model was a 25-input, 48- and 24-unit dense neural network trained on Cox survival loss, with the best validation epoch being at 243. After training an initial model, we found that there was a slightly inverse association between its old high BMI turn and something that we had to refit for the Cox model. The current fit is flat by design from BMI 23 to 35, but afterwards it has a positive fitted hazard coefficient above 35, to combat this inverse association. The final model achieved a Cox C-index of 0.7914 and the 5-year IPCW Brier score of 0.04686.

Challenges we ran into

Our biggest challenges came from four places. Turning natural speech into exact health data was harder than expected. Spoken numbers like “five ten” or “quit ten years ago” had to convert correctly, and the voice agent had to follow people who answer out of order or change their minds without cutting them off. In Figma, keeping one bear consistent across dozens of poses and hats exposed bugs we didn’t anticipate, from hats sliding off heads to Mochi walking straight through the bed, until we anchored every sprite to a shared baseline. Hardware was new territory too: building our first wristband meant learning step counting from raw accelerometer data, and pairing it with the phone over Bluetooth meant fighting dropped connections. Finally, the model itself kept us second-guessing. We switched from a Cox survival model to a neural network and then back to Cox, because it was the one we could validate and explain honestly, and that back-and-forth pushed us to show uncertainty openly instead of a number we couldn’t stand behind.

Accomplishments that we're proud of

We’re proudest of building a full survival-model prototype that runs entirely on the phone and is woven into an app people can actually use. Instead of trusting our first results, we tested the model on later survey cycles it had never seen. On those it scored a C-index of 0.79, and its predicted five-year survival came within half a percentage point of what actually happened. That testing also caught results that were misleading, so we went back and fixed them rather than shipping something that only looked impressive. The model doesn’t predict anyone’s death date. What it does is turn real population data into an honest, private estimate that people can explore and act on. We think that kind of careful, transparent tool is where longevity research can really help people live longer, healthier lives.

What we learned

We learned that being honest about uncertainty matters more than showing an impressive number, so we label estimates clearly and never give a death date. We learned that people don’t talk like forms: they round, ramble and change their minds, so our voice agent confirms what it heard instead of guessing. Building the wristband taught us that hardware breaks in ways software doesn’t, and that something isn’t done until it works on a real phone. Keeping one character consistent across every pose and screen showed us that small, careful design rules are what make an app feel finished.

What's next for LifeTwin

We are currently working with the Wyss-Coray lab to develop a more comprehensive solution for consumer longevity through the analysis of proteomics within plasma to determine organ health and other related diseases from a single blood test. The ultimate goal is a consumer product that anyone can use, young or old, to actively evaluate and improve their health at a level that is only accessible in a professional setting currently.

Built With

  • apple-healthkit
  • apple-vision
  • arduino
  • bluetooth
  • cartesia
  • cdc-life-tables
  • claude-api-(anthropic)
  • claude-code
  • codex
  • cox-proportional-hazards-model
  • dart
  • esp32
  • fastapi
  • figma
  • figma-slides
  • flutter
  • github
  • ios
  • lottie
  • mpu6050-accelerometer
  • muse-by-meta
  • nhanes
  • python
  • supabase
  • xcode
Share this project:

Updates

Submission history