  Knotted ribbons form an important topic in knot theory. They have
applications in natural sciences, such as cyclic duplex DNA modeling. A flat
knotted ribbon can be obtained by gently pulling a knotted ribbon tight so that
it becomes flat and folded. An important problem in knot theory is to study the
minimal ratio of length to width of a flat knotted ribbon. This minimal ratio
is called the ribbonlength of the knot. It has been conjectured that the
ribbonlength has an upper bound and a lower bound which are both linear in the
crossing number of the knot.
  In the first part of the paper, we use grid diagrams to construct flat
knotted ribbons and prove an explicit quadratic upper bound on the ribbonlength
for all non-trivial knots. We then improve the quadratic upper bound to a
linear upper bound for all non-trivial torus knots and twist knots. Our
approach of using grid diagrams to study flat knotted ribbons is novel and can
likely be used to obtain a linear upper bound for more general families of
knots. In the second part of the paper, we obtain a sharper linear upper bound
on the ribbonlength for nontrivial twist knots by constructing a flat knotted
ribbon via folding the ribbon over itself multiple times to shorten the length.
