The ability of systems of molecular reactions to be simultaneously autocatalytic and sustained by some ambient `food source' of simple molecules may have been an essential step in the origin of life. In this talk I will describe a polynomial-time algorithm that determines whether any given set of molecules, reactions and catalyzations contains a subsystem that is both autocatalytic and able to be sustained from a given (small) subset of the molecules. I will then show results of using this algorithm to investigate random catalytic networks --- in particular a model described earlier by Kauffman. Using these simulation results together with some analytic results, several insightful conclusions about the rate of catalysis that is required for the emergence of autocatalytic and self-sustaining subsystems are obtained.