A system for managing assets in a railyard comprising: one or more powered wireless gateways disposed in a railyard; and one or more railcar-based communication management units; wherein said one or more powered wireless gateways and said communication management units form a railyard-based network; a computing device, having access to said railyard-based network, said computing device running software for performing the functions of: collecting data from said railcar-based communication management units regarding events occurring on or the status of their respective railcars; drawing inferences from said data regarding the state of said railcars; and reporting said inferences, wherein said software performs the function of logically building, and validating train consists, characterised in that said function of building of a train consist comprises the steps of: (a) determining multiple couplings of two or more railcars, said multiple couplings resulting in a link containing all railcars in said train consist; (b) determining uncouplings of railcars or links required to form said train consist; (c) determining the coupling of a locomotive to said link containing all railcars in said train consist; and (d) forming a train-based wireless network consisting of a manager and at least one node from each railcar; wherein said couplings are determined when data collected from each railcar having at least one node thereon supports a confidence level that exceeds a predetermined threshold; and wherein said step of determining couplings comprises drawing said inferences based on data provided by said two or more railcars being coupled. one or more powered wireless gateways disposed in a railyard; and one or more railcar-based communication management units; wherein said one or more powered wireless gateways and said communication management units form a railyard-based network; a computing device, having access to said railyard-based network, said computing device running software for performing the functions of: collecting data from said railcar-based communication management units regarding events occurring on or the status of their respective railcars; drawing inferences from said data regarding the state of said railcars; and reporting said inferences, collecting data from said railcar-based communication management units regarding events occurring on or the status of their respective railcars; drawing inferences from said data regarding the state of said railcars; and reporting said inferences, wherein said software performs the function of logically building, and validating train consists, characterised in that said function of building of a train consist comprises the steps of: (a) determining multiple couplings of two or more railcars, said multiple couplings resulting in a link containing all railcars in said train consist; (b) determining uncouplings of railcars or links required to form said train consist; (c) determining the coupling of a locomotive to said link containing all railcars in said train consist; and (d) forming a train-based wireless network consisting of a manager and at least one node from each railcar; (a) determining multiple couplings of two or more railcars, said multiple couplings resulting in a link containing all railcars in said train consist; (b) determining uncouplings of railcars or links required to form said train consist; (c) determining the coupling of a locomotive to said link containing all railcars in said train consist; and (d) forming a train-based wireless network consisting of a manager and at least one node from each railcar; wherein said couplings are determined when data collected from each railcar having at least one node thereon supports a confidence level that exceeds a predetermined threshold; and wherein said step of determining couplings comprises drawing said inferences based on data provided by said two or more railcars being coupled.