Can you write a function to optimize battery usage based on user data for American Battery Technology?
Treat each action as (action_id, battery_cost, utility). Repeatedly select the remaining action with the highest utility-to-cost ratio that fits within the remaining battery budget. Zero-cost actions with positive utility have the highest priority. Break equal-ratio ties by original input order, and return selected action IDs in selection order.
The function must return an empty list when no action fits.
def optimize_battery_usage(user_data, battery_budget):