Hide Navigation

About Spartan Ideas

Spartan Ideas is a collection of thoughts, ideas, and opinions independently written by members of the MSU community and curated by MSU Libraries

Categories

Contributing Authors

Tags

Reversing Differences

Fellow blogger Håkan Kjellerstrand posted an interesting question on OR Stack Exchange recently. Starting from a list of integers, it is trivial to compute the list of all pairwise absolute differences, but what about going in the other direction? Given the pairwise (absolute) differences, with duplicates removed, can you recover the source list (or a …

More

Collections of CPLEX Variables

Recently, someone asked for help online regarding an optimization model they were building using the CPLEX Java API. The underlying problem had some sort of network structure with \(N\) nodes, and a dynamic aspect (something going on in each of \(T\) periods, relating to arc flows I think). Forget about solving the problem: the program …

More

Greedy Methods Can Be Exact

We generally sort optimization algorithms (as opposed to models) into two or three categories, based on how certain we are that solutions will be either optimal or at least “good”. An answer by Michael Feldmeier to a question I posted on OR Stack Exchange neatly summarizes the categories: exact methods eventually cough up provably optimal …

More

1-D Cutting Stock with Overlap

An interesting variation of the 1-D cutting stock problem was posed on OR Stack Exchange. Rather than having a specified demand for various size cut pieces, the requirement is to cut pieces to cover a specified number of units of fixed lengths. Moreover, you can use multiple pieces to cover one target unit, but if …

More

New Publication: Spam and Educators’ Twitter Use

Several months ago, I wrote about a presentation on spam in educational Twitter research that I prepared with my colleagues Jeff Carpenter, Matt Koehler, and Bret Staudt Willet. Since that presentation, we’ve been hard at work continuing this project, and I’m pleased to announce that Spam and educators’ Twitter use: Methodological challenges and considerations has is now available “online first” through TechTrends. At …

More

In the Age of AI (Frontline, PBS)

  Something to share with your normie (i.e., non-technical) friends :-) I can’t point to anything specific I learned from the documentary, but I was entertained and interested throughout. For a non-specialist, this is a very good introduction to the topic. See also Manifold Podcast #16 with John Schulman of OpenAI :-) John Schulman is …

More

The Peril and Promise of Historians as Data Creators: Perspective, Structure, and the Problem of Representation

[This is a working draft of a chapter in progress for an edited collection.] Data-Driven History Digital historians are well-familiar with notion that the larger community of historians generally has been skeptical of and cautious about data-driven scholarship. The controversies surrounding Robert Fogel and Stanley Engerman’s 1974 work, Time on the Cross: the Economics of American …

More

No Quality Without Equity

In October 2019, I attended a three-day workshop on Driving Institutional Change for Research Assessment Reform jointly convened by the Howard Hughes Medical Institute (HHMI) and the Declaration on Research Assessment (DORA) on the beautiful HHMI campus in Chevy Chase, Maryland. My time with the 60 or so participants in the workshop, which included researchers, librarians, administrators, funders, members of learned societies, and …

More

Beginnings and Endings

As I approach the conclusion of seven years of blogging under the moniker of Possibilitator, it is clear that my production has dropped precipitously. It has been clear since early this year that my ability to read and write at the earlier level is diminished. So as I looked back recently at some of those posts …

More

Self-Assessment

A writer whose work I admire enormously tweeted the other day about the new book they’re working on and the joy they’re taking in it. Reading this tweet left me simultaneously delighted and saddened — delighted because there will soon be more amazing work for me to learn from; saddened because… well, because me. Because …

More

Catalyst of Collaboration

On September 26, 2019, I had the opportunity to address the Michigan State University President’s Council, which includes the Deans Council and the Executive Leadership of the University, about the values-based strategic planning process we have undertaken in the College of Arts & Letters. In our ongoing effort to cultivate habits of openness, we have been consulting …

More

A Value-ordered Java Map

For a project I’m working on (in Java), I wanted to store pairs of items in a key-value map. The catch is that I need the items sorted according to the values, not the keys. Java provides an efficient, presorted mapping in the TreeMap class, but it sorts on the keys, not the values. Revering …

More

Freezer Burn

One of the more challenging aspects of running a microbiology lab, in my opinion, is freezer management.  There’s a lot to keep track of, both in terms of quantity and quality.  My lab team and I take great pride in the quality control of our work that has allowed us, for example, to keep the …

More

Half Life

Today marks a unique day for the LTEE and me. The LTEE started on February 17, 1988.  That was 11,517 days ago. I was born on August 13, 1956.  That was 23,034 days ago. That means that the LTEE is now half as old as I am. To put it another way, I’ve spent half …

More

Some Periodic Functions

Let’s start with a basic “calculus fact”. Theorem 1  If f is a non-constant, continuous periodic function on R, then there exists a smallest positive real number λ satisfying f(x+λ)=f(x) for all x. Proof: By definition of periodicity, there exists a subset Λ⊂R satisfying f(x+λ)=f(x) for every x∈R and λ∈Λ. Necessarily Λ is closed under …

More

Brainpower Matters: The French H-Bomb

Michel Carayol, father of the French H-Bomb. The article below illuminates several mysteries concerning the French development of thermonuclear weapons. Why did it take so long? Did the French really need help from the British? Who had the crucial idea of radiation compression? The original inventors were Ulam and Teller. In the USSR it was Sakharov. The …

More

Evaluating Expressions in CPLEX

There’s a feature in the Java API for CPLEX (and in the C++ and C APIs; I’m not sure about the others) that I don’t see mentioned very often, possibly because use cases may not arise all that frequently. It became relevant in a recent email exchange, though, so I thought I’d highlight it. As …

More

R v. Python

A couple of days ago, I was having a conversation with someone that touched on the curriculum for a masters program in analytics. One thing that struck me was requirement of one semester each of R and Python programming. On the one hand, I can see a couple of reasons for requiring both: some jobs …

More

A Java Container for Parameters

A few days ago, I posted about a Swing class (and supporting stuff) that I developed to facilitate my own computations research, and which I have now made open-source in a Bitbucket repository. I finally got around to cleaning up another Java utility class I wrote, and which I use regularly in experiments. I call …

More

Indicator Constraints v. Big M

Way, way back I did a couple of posts related to how to model “logical indicators” (true/false values that control enforcement of constraints): Logical Indicators in Mathematical Program Indicator Implies Relation The topic ties in to the general issue of “big M” model formulations. Somewhere around version 10, CPLEX introduced what they call indicator constraints, …

More

Naming CPLEX Objects

A CPLEX user recently asked the following question on a user forum: “Is there a way to print the constraints as interpreted by CPLEX immediately after adding these constraints using addEq, addLe etc.” The context for a question like this is often an attempt to debug either a model or the code creating the model. …

More

How to Crash CPLEX

A question elsewhere on the blog reminded me that some users of the CPLEX programming APIs are not conscious of a “technicality” that, when violated, might cause CPLEX to crash (or at least throw an exception). The bottom line can be stated easily enough: modifying a CPLEX model while solving it is a Bozo no-no. …

More

We Have Never Been Social

Last week, I had the pleasure of chatting with Bryan Alexander on his Future Trends Forum. We were primarily focused on Generous Thinking, but by way of having me introduce myself, Bryan asked what I’m working on this year. I mentioned that I’m in the early research phases of what might turn out to be a new …

More

Summer 2019

I’m titling this post “Summer 2019” in part as a way of reminding myself, as firmly as possible, that the summer has begun, in order to get myself focused on a new set of priorities as quickly as possible. The transition from spring into summer has always been a bit of a challenge for me. …

More

Randomness: Friend or Foe?

I spent a chunk of the weekend debugging some code (which involved solving an optimization problem). There was an R script to setup input files and a Java program to process them. The Java program included both a random heuristic to get things going and an integer program solved by CPLEX. Randomness in algorithms is …

More

Enough Already!!

This was originally published at The Sports Column. ‘Enough Already!’ With Big Sports Salaries The elephant in the room is increasing income inequality—the outlandish incomes and escalating growth at the top of the income chain. Perhaps nowhere is that situation more evident than in athletics. Last month we saw two record-breaking salaries. The Phillies’ Bryce Harper signed for …

More

MSU Research Update (video)

Remarks at a recent Michigan State University leadership meeting. MSU is currently #1 in the US in annual Department of Energy (DOE) and DOE + NSF (National Science Foundation) funding. There are ~30 institutions in the US with larger annual research expenditures than MSU, however in all but a few cases (e.g., MIT and UC …

More

Interview with Genetic Engineering & Biotechnology News

  Polygenic Risk Scores and Genomic Prediction: Q&A with Stephen Hsu In this exclusive interview, Stephen Hsu (Michigan State University and co-founder of Genomic Prediction) discusses the application of polygenic risk scores (PRS) for complex traits in pre-implantation genetic screening. Interview conducted by Julianna LeMieux (GEN). GEN: What motivated you to start Genomic Prediction? STEVE …

More

Pseudocode in LyX Revisited

This post is strictly for users of LyX. In a previous post I offered up a LyX module for typesetting pseudocode. Unfortunately, development of that module bumped up against some fundamental incompatibilities between the algorithmicx package and the way LyX layouts work. The repository for it remains open, but I decided to shift my efforts …

More

Failures to Listen

One year ago today, Rachael Denhollander addressed the Ingham County court in Michigan, her abuser, and the institutions that failed to protect her and her #SisterSurvivors. Listen again to part of what she said on January 24, 2018: This is what it looks like when institutions create a culture where a predator can flourish unafraid and …

More

Attitude of Possibility

Putting together a 1,000-piece jigsaw puzzle seems an appropriate metaphor for the challenges ahead of us as a human family. This one took my wife, Ellen, and me, about a week of coming and going. It was a good activity for some frigid, snowy days and evenings. We didn’t count the hours, we simply hovered …

More

Guessing Pareto Solutions: A Test

In yesterday’s post, I described a simple multiple-criterion decision problem (binary decisions, no constraints), and suggested a possible way to identify a portion of the Pareto frontier using what amounts to guesswork: randomly generate weights; use them to combine the multiple criteria into a single objective function; optimize that (trivial); repeat ad nauseam. I ran …

More

Guessing Pareto Solutions

One of the challenges of multiple-criteria decision-making (MCDM) is that, in the absence of a definitive weighting or prioritization of criteria, you cannot talk meaningfully about a “best” solution. (Optimization geeks such as myself tend to find that a major turn-off.) Instead, it is common to focus on Pareto efficient solutions. We can say that …

More

Binary / Integer Conversion in R

I’ve been poking around in R with an unconstrained optimization problem involving binary decision variables. (Trust me, it’s not as trivial as it sounds.) I wanted to explore the entire solution space. Assuming \(n\) binary decisions, this means looking at the set \(\{0,1\}^n\), which contains \(2^n\) 0-1 vectors of dimension \(n\). For reasons I won’t …

More