The agent runs basic inventory every time it is started up.
But we send it on schedule _or_ if certain inventory data has changed (regardless of schedule). This is controlled by removing dataclasses that are always changing (anything that capture the time or current logged on user) and hashing the remaining inventory.
The hash is stored in the server profile, under "HKLM\Altiris\Altiris Agent\Servers\<server_name>\Basic Inventory Hash".
So generally speaking the basic inventory interval is the maximum amount of time that can elapse between poating of two such events.
Not quite what most people make of it so.