A gas engine comprising: a first valve and a second valve, the first valve having a responsiveness being lower and a fuel flow rate adjustment range being wider than the second valve, and the second valve having a responsiveness being higher and a fuel flow rate adjustment range being narrower than the first valve; and a control unit configured to perform perturbation using the second valve by moving the second valve from a predetermined opening degree to a lean side or a rich side while the first valve is being opened at a predetermined opening degree, wherein, during an actual operation in a period in which an operation condition of the engine is deemed to be stable, when an opening-degree average value of the second valve deviates from an opening-degree target value of the second valve, the opening-degree target value being set in the control unit under the operation condition, the control unit is configured to adjust the opening degree of the first valve so that the opening-degree average value equals the opening-degree target value, by calculating the opening-degree average value by extracting a maximum opening degree and a minimum opening degree according to opening degrees detected at positions where a signal from an oxygen sensor disposed on an upstream side of an exhaust passage relative to a catalyst passes through a set point in the perturbation control by the second valve during the actual operation, wherein a relationship is set in the control unit between an air-fuel ratio and respective opening degrees of the second valve and the first valve when the gas engine is operated stoichiometrically at a predetermined engine rotational speed with a predetermined load, and characterised in that the control unit stores, together with each opening-degree target value mapped in the control unit, a corresponding dead range so as to perform the control using the dead range, wherein the dead range is set so that the first valve is not too frequently opened and closed in response to the difference between the opening-degree target value and the opening-degree average value, and wherein the dead range is a range of values and the opening degree of the first valve is not changed unless the difference between the opening-degree target value and the opening-degree average value is beyond this range. a first valve and a second valve, the first valve having a responsiveness being lower and a fuel flow rate adjustment range being wider than the second valve, and the second valve having a responsiveness being higher and a fuel flow rate adjustment range being narrower than the first valve; and a control unit configured to perform perturbation using the second valve by moving the second valve from a predetermined opening degree to a lean side or a rich side while the first valve is being opened at a predetermined opening degree, wherein, during an actual operation in a period in which an operation condition of the engine is deemed to be stable, when an opening-degree average value of the second valve deviates from an opening-degree target value of the second valve, the opening-degree target value being set in the control unit under the operation condition, the control unit is configured to adjust the opening degree of the first valve so that the opening-degree average value equals the opening-degree target value, by calculating the opening-degree average value by extracting a maximum opening degree and a minimum opening degree according to opening degrees detected at positions where a signal from an oxygen sensor disposed on an upstream side of an exhaust passage relative to a catalyst passes through a set point in the perturbation control by the second valve during the actual operation, wherein a relationship is set in the control unit between an air-fuel ratio and respective opening degrees of the second valve and the first valve when the gas engine is operated stoichiometrically at a predetermined engine rotational speed with a predetermined load, and characterised in that the control unit stores, together with each opening-degree target value mapped in the control unit, a corresponding dead range so as to perform the control using the dead range, wherein the dead range is set so that the first valve is not too frequently opened and closed in response to the difference between the opening-degree target value and the opening-degree average value, and wherein the dead range is a range of values and the opening degree of the first valve is not changed unless the difference between the opening-degree target value and the opening-degree average value is beyond this range.